/* Keep the existing homepage usable at narrow widths and in landscape. */
#slider.swiper_wrapper,
#slider.swiper_wrapper .swiper-slide {
    min-height: 600px;
}

#section-contact iframe {
    display: block;
    width: 100%;
    max-width: 100%;
    height: clamp(280px, 50vw, 450px);
    margin: 0 auto;
}

#section-contact > .heading-block {
    padding-right: 20px;
    padding-left: 20px;
}

#section-contact a,
#footer a {
    overflow-wrap: anywhere;
}

@media (max-width: 479px) {
    .container,
    #header.full-header .container,
    .container-fullwidth {
        width: 100% !important;
        max-width: 310px;
    }
}

@media (min-width: 992px) {
    #header.transparent-header:not(.sticky-header) #header-wrap {
        background: linear-gradient(rgba(0, 0, 0, 0.62), rgba(0, 0, 0, 0.12));
    }

    #header.transparent-header:not(.sticky-header) #primary-menu > ul > li > a {
        color: #fff;
        text-shadow: 0 1px 3px rgba(0, 0, 0, 0.7);
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    body.stretched #header.full-header .container {
        padding-right: 20px;
        padding-left: 20px;
    }

    #header.full-header #logo {
        padding-right: 16px;
        margin-right: 16px;
    }

    #header.full-header #primary-menu > ul {
        padding-right: 0;
        margin-right: 0;
        border-right: 0;
    }

    #primary-menu > ul > li > a {
        letter-spacing: 0.5px;
    }
}

@media (max-width: 991px) {
    #slider.swiper_wrapper,
    #slider.swiper_wrapper .swiper-slide {
        min-height: 420px;
    }

    #slider .swiper-slide > .container {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100% !important;
        max-width: 850px;
        height: 100%;
        min-height: inherit;
        padding: 24px 24px 86px;
    }

    #slider .slider-caption {
        top: auto !important;
        margin: 0 auto;
    }

    #slider .slider-caption h2 {
        margin-bottom: 18px !important;
        font-size: clamp(24px, 4vw, 36px);
        line-height: 1.15;
        letter-spacing: 1px;
    }

    #slider .slider-caption p {
        display: block !important;
        margin-bottom: 0;
        font-size: 16px;
        line-height: 1.5;
    }

    #slider-arrow-left,
    #slider-arrow-right {
        top: auto;
        bottom: 20px;
        width: 44px;
        height: 44px;
        margin: 0;
        border-radius: 3px;
    }

    #slider-arrow-left {
        left: calc(50% - 50px);
    }

    #slider-arrow-right {
        right: calc(50% - 50px);
    }

    #slider-arrow-left i,
    #slider-arrow-right i {
        display: block;
        width: 44px;
        height: 44px;
        margin: 0;
        line-height: 44px;
    }
}
