﻿.carousel div > p {
    font-size: clamp(16px, calc(1rem + ((1vw - 7.68px) * 1.0417)), 28px);
    min-height: 0vw;
    font-weight: var(--waa-font-regular);
    margin-top: 20px;
}

.carousel-buttons {
    position: absolute;
    z-index: 999;
    bottom: 16px;
    left: 16px;
}

    .carousel-buttons button {
        border: none;
        background: white;
        height: 44px;
        width: 44px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

        .carousel-buttons button:focus-visible {
            border: 4px solid grey;
        }

.carousel-control-next, .carousel-control-prev {
    opacity: 1;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.carousel-control-pause {
    z-index: 2;
    display: flex;
    justify-content: center;
    padding: 0;
    margin-right: 15%;
    margin-bottom: 1rem;
    margin-left: 15%;
    width: 25px;
    height: 25px;
    background:none;
    border:none;
    opacity:1 !important;
}

.carousel-control-next-icon {
    padding: 20px;
    border: none;
    background: var(--waa-white) var(--waa-btn-arrow-green) no-repeat;
    background-size: 16px 20px;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 12rem;
}

.carousel-control-pause-icon {
    padding: 14px;
    border: none;
    background: var(--waa-green) var(--waa-btn-pause-yellow) no-repeat;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 12rem;
}

.carousel-control-play-icon {
    padding: 14px;
    border: none;
    background: var(--waa-green) var(--waa-btn-play-yellow) no-repeat;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 12rem;
}

.carousel-control-prev-icon {
    padding: 20px;
    border: none;
    background: var(--waa-white) var(--waa-btn-arrowleft-green) no-repeat;
    background-size: 16px 20px;
    background-position: center;
    border-radius: 12rem;
}

.carousel-control-next-icon.white-btn {
    background-color: var(--waa-white);
    background-image: var(--waa-btn-arrow-green);
    background-repeat: no-repeat;
}


.carousel-control-pause-icon.white-btn {
    background-color: var(--waa-white);
    background-image: var(--waa-btn-pause-green);
    background-repeat: no-repeat;
}

.carousel-control-play-icon.white-btn {
    background-color: var(--waa-white);
    background-image: var(--waa-btn-play-green);
    background-repeat: no-repeat;
}

.carousel-control-prev-icon.white-btn {
    background-color: var(--waa-white);
    background-image: var(--waa-btn-arrowleft-green);
    background-repeat: no-repeat;
}

.carousel-control-next-icon {
    padding: 15px;
    width: 40px;
    height: 40px;
    background-size: 1px;
}

.carousel-indicators button {
    width: 10px !important;
    height: 10px !important;
    border-radius: 20px;
    border: 0 !important;
}

.carousel-item .carousel-caption {
    justify-content: flex-end;
    top: unset;
    margin-bottom: 40px;
    margin-left: auto;
    margin-right: auto;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
}

    .carousel-item .carousel-caption .btn.btn-primary {
        max-width: 400px;
        font-size: clamp(14px, calc(0.875rem + ((1vw - 7.68px) * 0.3472)), 18px);
        min-height: 0vw;
        background: var(--waa-green);
        border-radius: 0;
        color: var(--bs-white);
        border: 0;
        padding: 15px 66px 15px 42px;
        border: 0.094rem solid #258736 !important;
    }

        .carousel-item .carousel-caption .btn.btn-primary::after {
            position: absolute;
            content: var(--waa-btn-arrow-white);
            height: 20px;
            width: 20px;
            margin-left: 5px;
            transition: all 0.2s ease-in-out;
        }

        .carousel-item .carousel-caption .btn.btn-primary:hover {
            background: var(--waa-white);
            color: var(--waa-green);
            border-color: var(--waa-white) !important;
        }

            .carousel-item .carousel-caption .btn.btn-primary:hover::after {
                content: var(--waa-btn-arrow-green);
            }

    .carousel-item .carousel-caption h1, .carousel-item .carousel-caption h2 {
        font-family: var(--waa-font);
        font-weight: var(--waa-font-extrabold);
        font-size: clamp(36px, calc(2.25rem + ((1vw - 7.68px) * 3.4722)), 76px);
        min-height: 0vw;
    }

.carousel-item .image {
    aspect-ratio: unset;
    height: calc(100vh - 15vh);
    min-height: 450px;
    max-height: 880px;
    height: calc(100vh - 20vh);
    min-height: 540px;
    max-height: 620px;
}

    .carousel-item .image img {
        height: 100% !important;
    }

    .carousel-item .image.vimeo, .carousel-item .image.video {
        height: calc(100vh - 20vh);
        min-height: 540px;
        max-height: 620px;
    }

        .carousel-item .image.vimeo .video {
            position: relative;
            display: block;
            object-fit: cover;
            height: 100%;
            width: 200vw;
            margin: 0 auto;
            background-size: cover;
        }

        .carousel-item .image.vimeo .video-player {
            display: block;
            object-fit: cover;
            position: relative;
            width: 160%;
            max-width: 160vh;
            left: 0;
            height: 200%;
            left: calc(100% - 280vw);
            margin: 0 auto;
            top: -50%;
        }

.carousel-item:before {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4));
}

.slick-active {
    button {
               background: white!important;
           }
}

.gallery-carousel {
    width: 82%;
    margin-right: auto !important;
    margin-left: auto !important;
}

.hero-carousel .carousel-indicators {
    display: none;
}


.image-carousel .image.slick-slide {
    height: 200px;
}

.image-carousel-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style-type: none;
    gap: 2rem;
}

    .image-carousel-dots li button {
        font-size: 0;
        border-radius: 100%;
        height: 16px;
        width: 16px;
        position: absolute;
        top: 95%;
        transform: translateY(-95%);
        filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
        border: solid;
        border-color: white;
        border-width: 2px;
        background: none;
        transition: .2s;
        animation-timing-function: ease-in-out;
    }

        .image-carousel-dots li button:hover, .image-carousel-dots li button[aria-selected="true"] {
            background: white;
            transition: .2s;
            animation-timing-function: ease-in-out;
        }


.images-carousel-dots li button:active {
    background: white;
    transition: .2s;
    animation-timing-function: ease-in-out;
}


/*.slick-next {
    background-image: var(--waa-btn-arrow-dark);
    background-size: 17px 17px;
    background-repeat: no-repeat;
    background-position: center;
}

    .slick-next:hover {
        background: var(--waa-green) var(--waa-btn-arrow-white) no-repeat !important;
        background-repeat: no-repeat;
        background-position: center !important;
        color: var(--waa-white);
        border-color: var(--waa-green) !important;
    }*/

/*.slick-prev {
    background-image: var(--waa-btn-arrowleft-dark);
    background-size: 17px 17px;
    background-repeat: no-repeat;
    background-position: center;
}*/

    .slick-prev .fa {
        display: none;
    }

.slick-next .fa {
    display: none;
}

/*.slick-prev:hover {
    background: var(--waa-green) var(--waa-btn-arrowleft-white) no-repeat !important;
    background-repeat: no-repeat;
    background-position: center !important;
    color: var(--waa-white);
    border-color: var(--waa-green) !important;
}*/

@media (min-width: 992px) {

    .carousel-item .carousel-caption {
        width: 960px;
        margin-bottom: 45px;
    }

    .carousel-item .image {
        height: calc(100vh - 200px);
        min-height: 80vh;
        max-height: 100vh;
    }

        .carousel-item .image.vimeo {
            height: calc(100vh - 200px);
            min-height: 80vh;
            max-height: 100vh;
        }
}

@media (min-width: 1400px) {
    .carousel-item .carousel-caption {
        width: 1320px;
    }

    .carousel-item .image {
        height: calc(100vh - 200px);
        min-height: 80vh;
        max-height: 100vh;
    }

        .carousel-item .image.vimeo {
            height: calc(100vh - 200px);
            min-height: 80vh;
            max-height: 100vh;
        }

            .carousel-item .image.vimeo .video {
                position: relative;
                display: block;
                object-fit: cover;
                height: 100%;
                width: 140vw;
                margin: 0 auto;
            }

            .carousel-item .image.vimeo .video-player {
                display: block;
                object-fit: cover;
                position: relative;
                width: 100%;
                max-width: 300vh;
                left: 0;
                height: 180%;
                left: calc(100% - 160vw);
                margin: 0 auto;
                top: -30%;
            }

}

@media (min-width: 1200px) {

    .carousel-control-prev-icon, .carousel-control-next-icon {
        padding: 20px;
        width: 60px;
        height: 60px;
        background-size: 12px;
        max-width: 40px;
        max-height: 40px;
    }

    .carousel-item .carousel-caption {
        width: 1140px;
    }
}

@media (min-width: 576px) {
    .carousel-item .carousel-caption {
        width: 540px;
    }

    .carousel-item .image {
        height: calc(100vh - 20vh);
        min-height: 540px;
        max-height: 620px;
    }

        .carousel-item .image.vimeo, .carousel-item .image.video {
            height: calc(100vh - 20vh);
            min-height: 540px;
            max-height: 620px;
        }

            .carousel-item .image.vimeo .video {
                position: relative;
                display: block;
                object-fit: cover;
                height: 100%;
                width: 200vw;
                margin: 0 auto;
            }

            .carousel-item .image.vimeo .video-player {
                display: block;
                object-fit: cover;
                position: relative;
                width: 230%;
                max-width: 250vh;
                left: 0;
                height: 200%;
                left: calc(100% - 250vw);
                margin: 0 auto;
                top: -50%;
            }
}

@media (min-width: 768px) {
    .carousel-item .carousel-caption {
        width: 720px;
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media (min-width: 1600px) {
    .carousel-item .carousel-caption {
        width: 1550px;
    }
}

@media (max-width: 991px) {

    .carousel-control-next-icon, .carousel-control-prev-icon {
        display: none !important;
    }

    .gallery-carousel {
        width: 100%;
    }

    .hero-carousel .carousel-indicators {
        display: block;
        text-align: center;
        margin-bottom: 30px;
    }
}

@media (max-width: 576px) {
    .carousel-item .image {
        aspect-ratio: unset;
        height: calc(100vh - 15vh);
        min-height: 450px;
        max-height: 600px;
    }
}

@media (min-width: 1399px) {
    .carousel-item .carousel-caption {
        margin-bottom: 45px;
    }
}