.elementor-871 .elementor-element.elementor-element-a338681.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper .elementor-carousel-image{aspect-ratio:1 / 1;}.elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button{font-size:20px;}.elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper) .elementor-carousel-image{background-size:contain;}.elementor-871 .elementor-element.elementor-element-bcf6a08.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper .elementor-carousel-image{aspect-ratio:1 / 1;}.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button{font-size:20px;}.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper) .elementor-carousel-image{background-size:contain;}.elementor-871 .elementor-element.elementor-element-0b8df3b.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper .elementor-carousel-image{aspect-ratio:1 / 1;}.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button{font-size:20px;}.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper) .elementor-carousel-image{background-size:contain;}.elementor-871 .elementor-element.elementor-element-fb3e73a.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper .elementor-carousel-image{aspect-ratio:1 / 1;}.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button{font-size:20px;}.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper) .elementor-carousel-image{background-size:contain;}.elementor-871 .elementor-element.elementor-element-b95ce09.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper .elementor-carousel-image{aspect-ratio:1 / 1;}.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button{font-size:20px;}.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper) .elementor-carousel-image{background-size:contain;}.elementor-871 .elementor-element.elementor-element-d9a37a7{--display:flex;}.elementor-871 .elementor-element.elementor-element-b9cc28c{--display:flex;}.elementor-871 .elementor-element.elementor-element-198d092{--display:flex;}.elementor-871 .elementor-element.elementor-element-be32d85{--display:flex;}.elementor-871 .elementor-element.elementor-element-8463cab{--display:flex;}.elementor-871 .elementor-element.elementor-element-9cea00f{--n-accordion-title-font-size:2rem;--n-accordion-title-justify-content:space-between;--n-accordion-title-flex-grow:1;--n-accordion-title-icon-order:initial;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-border-radius:0px 0px 0px 0px;--n-accordion-title-normal-color:var( --e-global-color-text );--n-accordion-icon-size:15px;}.elementor-871 .elementor-element.elementor-element-9cea00f > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title{border-style:none;}.elementor-871 .elementor-element.elementor-element-9cea00f {--n-accordion-padding:1.625rem 0rem 01.625rem 0rem;}:where( .elementor-871 .elementor-element.elementor-element-9cea00f > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-weight:400;}:where( .elementor-871 .elementor-element.elementor-element-9cea00f > .e-n-accordion > .e-n-accordion-item ) > .e-con{border-style:none;--padding-top:0rem;--padding-right:0rem;--padding-bottom:1.625rem;--padding-left:0rem;}.elementor-871 .elementor-element.elementor-element-8754d8d .elementor-repeater-item-4604eae .swiper-slide-bg{background-color:#833ca3;background-image:url(https://prizmdeck.com/wp-content/uploads/2026/09/Summit-1.jpg);background-size:cover;}.elementor-871 .elementor-element.elementor-element-8754d8d .elementor-repeater-item-50d9ff5 .swiper-slide-bg{background-color:#833ca3;background-image:url(https://prizmdeck.com/wp-content/uploads/2026/09/Prairie-3.jpg);background-size:cover;}.elementor-871 .elementor-element.elementor-element-8754d8d .elementor-repeater-item-24cd5cf .swiper-slide-bg{background-color:#833ca3;background-image:url(https://prizmdeck.com/wp-content/uploads/2026/09/slate-evening-deck.jpg);background-size:cover;}.elementor-871 .elementor-element.elementor-element-8754d8d .swiper-slide{transition-duration:calc(5000ms*1.2);height:720px;}.elementor-871 .elementor-element.elementor-element-8754d8d .swiper-slide-contents{max-width:66%;}.elementor-871 .elementor-element.elementor-element-8754d8d .swiper-slide-inner{text-align:center;}@media(max-width:1024px){.elementor-871 .elementor-element.elementor-element-a338681.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-bcf6a08.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-0b8df3b.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-fb3e73a.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-b95ce09.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-8754d8d .swiper-slide{height:440px;}}@media(max-width:767px){.elementor-871 .elementor-element.elementor-element-a338681.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-bcf6a08.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-0b8df3b.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-fb3e73a.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-b95ce09.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-871 .elementor-element.elementor-element-8754d8d .swiper-slide{height:330px;}}/* Start custom CSS for media-carousel, class: .elementor-element-a338681 *//* ==================================================
   BASE / DESKTOP + TABLET
   ================================================== */

.elementor-871 .elementor-element.elementor-element-a338681 {
    position: relative;
    padding-left: 115px;
}


/* ==================================================
   MAIN IMAGE CAROUSEL
   ================================================== */

.elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
    width: 100% !important;
    margin: 0 !important;

    position: relative !important;

    z-index: 1;

    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main slides */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.swiper-slide {
    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main image */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.elementor-carousel-image {
    border-radius: 6px !important;
}



/* ==================================================
   THUMBNAIL STRIP
   ================================================== */

.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper {
    position: absolute !important;

    left: 0;
    top: 0;

    width: 90px !important;
    height: 100% !important;

    margin: 0 !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    z-index: 10 !important;

    pointer-events: auto !important;

    scrollbar-width: thin;
}


/* Thumbnail track */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-wrapper {
    height: auto !important;

    gap: 10px;

    transform: none !important;
}


/* Individual thumbnails */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide {
    width: 90px !important;
    height: 90px !important;

    margin: 0 !important;

    flex: 0 0 90px !important;

    cursor: pointer;

    pointer-events: auto !important;

    border-radius: 6px !important;

    overflow: hidden !important;

    position: relative !important;

    /*
     * Keep every thumbnail visually neutral.
     * Our prizm-active-thumb class controls
     * the selected appearance.
     */
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Thumbnail images */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.elementor-carousel-image {
    border-radius: 6px !important;

    opacity: 1 !important;
    filter: none !important;
}



/* ==================================================
   DISABLE ELEMENTOR / SWIPER THUMBNAIL STATES
   ================================================== */

/*
 * Elementor / Swiper can briefly assign:
 *
 * .swiper-slide-active
 * .swiper-slide-thumb-active
 *
 * to the wrong thumbnail while changing slides.
 *
 * Those classes must NOT create any visible
 * selection state. Only .prizm-active-thumb
 * is allowed to show the green/white stroke.
 */


/* Neutralize Swiper thumb-active state */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Neutralize Swiper slide-active state */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/*
 * Kill Elementor's built-in thumbnail overlay
 * regardless of which internal Swiper state
 * the thumbnail currently has.
 */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide::after {
    background: transparent !important;
    background-color: transparent !important;

    opacity: 0 !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;

    pointer-events: none !important;
}


/*
 * Also prevent Swiper's active classes from
 * creating their own ::before visual.
 *
 * prizm-active-thumb below will override this
 * with our intentional active border.
 */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active:not(.prizm-active-thumb)::before,

.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active:not(.prizm-active-thumb)::before {
    content: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}



/* ==================================================
   THUMBNAIL SCROLL FADES
   ================================================== */

/* Bottom fade */
.elementor-871 .elementor-element.elementor-element-a338681::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-a338681.prizm-thumbs-more::after {
    opacity: 1;
}


/* Top fade */
.elementor-871 .elementor-element.elementor-element-a338681::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to top,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-a338681.prizm-thumbs-before::before {
    opacity: 1;
}



/* ==================================================
   DESKTOP + TABLET MAIN IMAGE
   ================================================== */

@media (min-width: 768px) {

    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }


    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;
    }
}



/* ==================================================
   MAIN IMAGE ARROWS
   ================================================== */

/*
 * Force both arrows to stay centered vertically
 * inside the main carousel.
 *
 * JavaScript no longer calculates their position.
 */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button {
    position: absolute !important;

    top: 50% !important;
    bottom: auto !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;

    transform:
        translateY(-50%) !important;

    font-size: 36px !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: auto !important;

    z-index: 30 !important;
}


/* Previous arrow */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button-prev {
    left: 16px !important;
    right: auto !important;
}


/* Next arrow */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button-next {
    right: 16px !important;
    left: auto !important;
}


/*
 * Elementor / Swiper normally disables
 * arrows at the first and last slide.
 *
 * Rewind is enabled, so neither arrow
 * should ever appear disabled.
 */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button.swiper-button-disabled,
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button.swiper-button-lock {
    opacity: 1 !important;

    visibility: visible !important;

    pointer-events: auto !important;
}



/* ==================================================
   MOBILE
   ================================================== */

@media (max-width: 767px) {

    .elementor-871 .elementor-element.elementor-element-a338681 {
        padding-left: 0;
    }



    /* ==================================================
       MOBILE MAIN IMAGE
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;

        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }



    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;

        border-radius: 6px !important;
    }



    /* ==================================================
       MOBILE ARROWS
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button {
        top: 50% !important;

        transform:
            translateY(-50%) !important;

        font-size: 32px !important;
    }


    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button-prev {
        left: 12px !important;
        right: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-swiper-button-next {
        right: 12px !important;
        left: auto !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL STRIP
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper {
        position: relative !important;

        left: auto !important;
        top: auto !important;

        width: 100% !important;
        height: auto !important;

        margin-top: 10px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling:
            touch;

        touch-action: pan-x;
    }



    /* Horizontal thumbnail track */
    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
    .swiper-wrapper {
        display: flex !important;

        flex-direction: row !important;
        flex-wrap: nowrap !important;

        width: max-content !important;
        height: auto !important;

        gap: 8px;

        transform: none !important;
    }



    /* Individual mobile thumbnails */
    .elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
    .swiper-slide {
        width: 64px !important;
        height: 64px !important;

        flex: 0 0 64px !important;

        margin: 0 !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL FADES
       ================================================== */

    /* Right fade */
    .elementor-871 .elementor-element.elementor-element-a338681::after {
        left: auto;
        right: 0;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to right,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }



    /* Left fade */
    .elementor-871 .elementor-element.elementor-element-a338681::before {
        left: 0;
        right: auto;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to left,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }
}



/* ==================================================
   ACTIVE THUMBNAIL
   Green → White → Image
   ================================================== */

/*
 * This is now the ONLY visual active-thumbnail state.
 */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "";

    position: absolute;

    inset: 0;

    border-radius: 6px;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none;

    z-index: 50;
}

/* ==================================================
   HARD BLOCK FALSE ACTIVE THUMBNAIL OUTLINE
   ================================================== */

/*
 * No thumbnail is allowed to display any ::before
 * selection effect unless OUR JavaScript has given
 * it .prizm-active-thumb.
 */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide:not(.prizm-active-thumb)::before {
    content: none !important;
    display: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/*
 * Only the actual Prizm-selected thumbnail
 * may display the green / white outline.
 */
.elementor-871 .elementor-element.elementor-element-a338681 .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    inset: 0 !important;

    border: 0 !important;
    outline: 0 !important;

    border-radius: 6px !important;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none !important;

    z-index: 50 !important;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-bcf6a08 *//* ==================================================
   BASE / DESKTOP + TABLET
   ================================================== */

.elementor-871 .elementor-element.elementor-element-bcf6a08 {
    position: relative;
    padding-left: 115px;
}


/* ==================================================
   MAIN IMAGE CAROUSEL
   ================================================== */

.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
    width: 100% !important;
    margin: 0 !important;

    position: relative !important;

    z-index: 1;

    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main slides */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.swiper-slide {
    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main image */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.elementor-carousel-image {
    border-radius: 6px !important;
}



/* ==================================================
   THUMBNAIL STRIP
   ================================================== */

.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper {
    position: absolute !important;

    left: 0;
    top: 0;

    width: 90px !important;
    height: 100% !important;

    margin: 0 !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    z-index: 10 !important;

    pointer-events: auto !important;

    scrollbar-width: thin;
}


/* Thumbnail track */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-wrapper {
    height: auto !important;

    gap: 10px;

    transform: none !important;
}


/* Individual thumbnails */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide {
    width: 90px !important;
    height: 90px !important;

    margin: 0 !important;

    flex: 0 0 90px !important;

    cursor: pointer;

    pointer-events: auto !important;

    border-radius: 6px !important;

    overflow: hidden !important;

    position: relative !important;

    /*
     * Keep every thumbnail visually neutral.
     * Our prizm-active-thumb class controls
     * the selected appearance.
     */
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Thumbnail images */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.elementor-carousel-image {
    border-radius: 6px !important;

    opacity: 1 !important;
    filter: none !important;
}



/* ==================================================
   DISABLE ELEMENTOR / SWIPER THUMBNAIL STATES
   ================================================== */

/*
 * Elementor / Swiper can briefly assign:
 *
 * .swiper-slide-active
 * .swiper-slide-thumb-active
 *
 * to the wrong thumbnail while changing slides.
 *
 * Those classes must NOT create any visible
 * selection state. Only .prizm-active-thumb
 * is allowed to show the green/white stroke.
 */


/* Neutralize Swiper thumb-active state */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Neutralize Swiper slide-active state */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/*
 * Kill Elementor's built-in thumbnail overlay
 * regardless of which internal Swiper state
 * the thumbnail currently has.
 */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide::after {
    background: transparent !important;
    background-color: transparent !important;

    opacity: 0 !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;

    pointer-events: none !important;
}


/*
 * Also prevent Swiper's active classes from
 * creating their own ::before visual.
 *
 * prizm-active-thumb below will override this
 * with our intentional active border.
 */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active:not(.prizm-active-thumb)::before,

.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active:not(.prizm-active-thumb)::before {
    content: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}



/* ==================================================
   THUMBNAIL SCROLL FADES
   ================================================== */

/* Bottom fade */
.elementor-871 .elementor-element.elementor-element-bcf6a08::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-bcf6a08.prizm-thumbs-more::after {
    opacity: 1;
}


/* Top fade */
.elementor-871 .elementor-element.elementor-element-bcf6a08::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to top,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-bcf6a08.prizm-thumbs-before::before {
    opacity: 1;
}



/* ==================================================
   DESKTOP + TABLET MAIN IMAGE
   ================================================== */

@media (min-width: 768px) {

    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }


    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;
    }
}



/* ==================================================
   MAIN IMAGE ARROWS
   ================================================== */

/*
 * Force both arrows to stay centered vertically
 * inside the main carousel.
 *
 * JavaScript no longer calculates their position.
 */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button {
    position: absolute !important;

    top: 50% !important;
    bottom: auto !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;

    transform:
        translateY(-50%) !important;

    font-size: 36px !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: auto !important;

    z-index: 30 !important;
}


/* Previous arrow */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button-prev {
    left: 16px !important;
    right: auto !important;
}


/* Next arrow */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button-next {
    right: 16px !important;
    left: auto !important;
}


/*
 * Elementor / Swiper normally disables
 * arrows at the first and last slide.
 *
 * Rewind is enabled, so neither arrow
 * should ever appear disabled.
 */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button.swiper-button-disabled,
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button.swiper-button-lock {
    opacity: 1 !important;

    visibility: visible !important;

    pointer-events: auto !important;
}



/* ==================================================
   MOBILE
   ================================================== */

@media (max-width: 767px) {

    .elementor-871 .elementor-element.elementor-element-bcf6a08 {
        padding-left: 0;
    }



    /* ==================================================
       MOBILE MAIN IMAGE
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;

        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }



    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;

        border-radius: 6px !important;
    }



    /* ==================================================
       MOBILE ARROWS
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button {
        top: 50% !important;

        transform:
            translateY(-50%) !important;

        font-size: 32px !important;
    }


    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button-prev {
        left: 12px !important;
        right: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-swiper-button-next {
        right: 12px !important;
        left: auto !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL STRIP
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper {
        position: relative !important;

        left: auto !important;
        top: auto !important;

        width: 100% !important;
        height: auto !important;

        margin-top: 10px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling:
            touch;

        touch-action: pan-x;
    }



    /* Horizontal thumbnail track */
    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
    .swiper-wrapper {
        display: flex !important;

        flex-direction: row !important;
        flex-wrap: nowrap !important;

        width: max-content !important;
        height: auto !important;

        gap: 8px;

        transform: none !important;
    }



    /* Individual mobile thumbnails */
    .elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
    .swiper-slide {
        width: 64px !important;
        height: 64px !important;

        flex: 0 0 64px !important;

        margin: 0 !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL FADES
       ================================================== */

    /* Right fade */
    .elementor-871 .elementor-element.elementor-element-bcf6a08::after {
        left: auto;
        right: 0;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to right,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }



    /* Left fade */
    .elementor-871 .elementor-element.elementor-element-bcf6a08::before {
        left: 0;
        right: auto;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to left,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }
}



/* ==================================================
   ACTIVE THUMBNAIL
   Green → White → Image
   ================================================== */

/*
 * This is now the ONLY visual active-thumbnail state.
 */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "";

    position: absolute;

    inset: 0;

    border-radius: 6px;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none;

    z-index: 50;
}

/* ==================================================
   HARD BLOCK FALSE ACTIVE THUMBNAIL OUTLINE
   ================================================== */

/*
 * No thumbnail is allowed to display any ::before
 * selection effect unless OUR JavaScript has given
 * it .prizm-active-thumb.
 */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide:not(.prizm-active-thumb)::before {
    content: none !important;
    display: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/*
 * Only the actual Prizm-selected thumbnail
 * may display the green / white outline.
 */
.elementor-871 .elementor-element.elementor-element-bcf6a08 .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    inset: 0 !important;

    border: 0 !important;
    outline: 0 !important;

    border-radius: 6px !important;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none !important;

    z-index: 50 !important;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-0b8df3b *//* ==================================================
   BASE / DESKTOP + TABLET
   ================================================== */

.elementor-871 .elementor-element.elementor-element-0b8df3b {
    position: relative;
    padding-left: 115px;
}


/* ==================================================
   MAIN IMAGE CAROUSEL
   ================================================== */

.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
    width: 100% !important;
    margin: 0 !important;

    position: relative !important;

    z-index: 1;

    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main slides */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.swiper-slide {
    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main image */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.elementor-carousel-image {
    border-radius: 6px !important;
}



/* ==================================================
   THUMBNAIL STRIP
   ================================================== */

.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper {
    position: absolute !important;

    left: 0;
    top: 0;

    width: 90px !important;
    height: 100% !important;

    margin: 0 !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    z-index: 10 !important;

    pointer-events: auto !important;

    scrollbar-width: thin;
}


/* Thumbnail track */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-wrapper {
    height: auto !important;

    gap: 10px;

    transform: none !important;
}


/* Individual thumbnails */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide {
    width: 90px !important;
    height: 90px !important;

    margin: 0 !important;

    flex: 0 0 90px !important;

    cursor: pointer;

    pointer-events: auto !important;

    border-radius: 6px !important;

    overflow: hidden !important;

    position: relative !important;

    /*
     * Keep every thumbnail visually neutral.
     * Our prizm-active-thumb class controls
     * the selected appearance.
     */
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Thumbnail images */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.elementor-carousel-image {
    border-radius: 6px !important;

    opacity: 1 !important;
    filter: none !important;
}



/* ==================================================
   DISABLE ELEMENTOR / SWIPER THUMBNAIL STATES
   ================================================== */

/*
 * Elementor / Swiper can briefly assign:
 *
 * .swiper-slide-active
 * .swiper-slide-thumb-active
 *
 * to the wrong thumbnail while changing slides.
 *
 * Those classes must NOT create any visible
 * selection state. Only .prizm-active-thumb
 * is allowed to show the green/white stroke.
 */


/* Neutralize Swiper thumb-active state */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Neutralize Swiper slide-active state */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/*
 * Kill Elementor's built-in thumbnail overlay
 * regardless of which internal Swiper state
 * the thumbnail currently has.
 */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide::after {
    background: transparent !important;
    background-color: transparent !important;

    opacity: 0 !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;

    pointer-events: none !important;
}


/*
 * Also prevent Swiper's active classes from
 * creating their own ::before visual.
 *
 * prizm-active-thumb below will override this
 * with our intentional active border.
 */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active:not(.prizm-active-thumb)::before,

.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active:not(.prizm-active-thumb)::before {
    content: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}



/* ==================================================
   THUMBNAIL SCROLL FADES
   ================================================== */

/* Bottom fade */
.elementor-871 .elementor-element.elementor-element-0b8df3b::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-0b8df3b.prizm-thumbs-more::after {
    opacity: 1;
}


/* Top fade */
.elementor-871 .elementor-element.elementor-element-0b8df3b::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to top,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-0b8df3b.prizm-thumbs-before::before {
    opacity: 1;
}



/* ==================================================
   DESKTOP + TABLET MAIN IMAGE
   ================================================== */

@media (min-width: 768px) {

    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }


    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;
    }
}



/* ==================================================
   MAIN IMAGE ARROWS
   ================================================== */

/*
 * Force both arrows to stay centered vertically
 * inside the main carousel.
 *
 * JavaScript no longer calculates their position.
 */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button {
    position: absolute !important;

    top: 50% !important;
    bottom: auto !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;

    transform:
        translateY(-50%) !important;

    font-size: 36px !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: auto !important;

    z-index: 30 !important;
}


/* Previous arrow */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button-prev {
    left: 16px !important;
    right: auto !important;
}


/* Next arrow */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button-next {
    right: 16px !important;
    left: auto !important;
}


/*
 * Elementor / Swiper normally disables
 * arrows at the first and last slide.
 *
 * Rewind is enabled, so neither arrow
 * should ever appear disabled.
 */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button.swiper-button-disabled,
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button.swiper-button-lock {
    opacity: 1 !important;

    visibility: visible !important;

    pointer-events: auto !important;
}



/* ==================================================
   MOBILE
   ================================================== */

@media (max-width: 767px) {

    .elementor-871 .elementor-element.elementor-element-0b8df3b {
        padding-left: 0;
    }



    /* ==================================================
       MOBILE MAIN IMAGE
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;

        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }



    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;

        border-radius: 6px !important;
    }



    /* ==================================================
       MOBILE ARROWS
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button {
        top: 50% !important;

        transform:
            translateY(-50%) !important;

        font-size: 32px !important;
    }


    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button-prev {
        left: 12px !important;
        right: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-swiper-button-next {
        right: 12px !important;
        left: auto !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL STRIP
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper {
        position: relative !important;

        left: auto !important;
        top: auto !important;

        width: 100% !important;
        height: auto !important;

        margin-top: 10px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling:
            touch;

        touch-action: pan-x;
    }



    /* Horizontal thumbnail track */
    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
    .swiper-wrapper {
        display: flex !important;

        flex-direction: row !important;
        flex-wrap: nowrap !important;

        width: max-content !important;
        height: auto !important;

        gap: 8px;

        transform: none !important;
    }



    /* Individual mobile thumbnails */
    .elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
    .swiper-slide {
        width: 64px !important;
        height: 64px !important;

        flex: 0 0 64px !important;

        margin: 0 !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL FADES
       ================================================== */

    /* Right fade */
    .elementor-871 .elementor-element.elementor-element-0b8df3b::after {
        left: auto;
        right: 0;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to right,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }



    /* Left fade */
    .elementor-871 .elementor-element.elementor-element-0b8df3b::before {
        left: 0;
        right: auto;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to left,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }
}



/* ==================================================
   ACTIVE THUMBNAIL
   Green → White → Image
   ================================================== */

/*
 * This is now the ONLY visual active-thumbnail state.
 */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "";

    position: absolute;

    inset: 0;

    border-radius: 6px;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none;

    z-index: 50;
}

/* ==================================================
   HARD BLOCK FALSE ACTIVE THUMBNAIL OUTLINE
   ================================================== */

/*
 * No thumbnail is allowed to display any ::before
 * selection effect unless OUR JavaScript has given
 * it .prizm-active-thumb.
 */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide:not(.prizm-active-thumb)::before {
    content: none !important;
    display: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/*
 * Only the actual Prizm-selected thumbnail
 * may display the green / white outline.
 */
.elementor-871 .elementor-element.elementor-element-0b8df3b .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    inset: 0 !important;

    border: 0 !important;
    outline: 0 !important;

    border-radius: 6px !important;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none !important;

    z-index: 50 !important;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-fb3e73a *//* ==================================================
   BASE / DESKTOP + TABLET
   ================================================== */

.elementor-871 .elementor-element.elementor-element-fb3e73a {
    position: relative;
    padding-left: 115px;
}


/* ==================================================
   MAIN IMAGE CAROUSEL
   ================================================== */

.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
    width: 100% !important;
    margin: 0 !important;

    position: relative !important;

    z-index: 1;

    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main slides */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.swiper-slide {
    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main image */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.elementor-carousel-image {
    border-radius: 6px !important;
}



/* ==================================================
   THUMBNAIL STRIP
   ================================================== */

.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper {
    position: absolute !important;

    left: 0;
    top: 0;

    width: 90px !important;
    height: 100% !important;

    margin: 0 !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    z-index: 10 !important;

    pointer-events: auto !important;

    scrollbar-width: thin;
}


/* Thumbnail track */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-wrapper {
    height: auto !important;

    gap: 10px;

    transform: none !important;
}


/* Individual thumbnails */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide {
    width: 90px !important;
    height: 90px !important;

    margin: 0 !important;

    flex: 0 0 90px !important;

    cursor: pointer;

    pointer-events: auto !important;

    border-radius: 6px !important;

    overflow: hidden !important;

    position: relative !important;

    /*
     * Keep every thumbnail visually neutral.
     * Our prizm-active-thumb class controls
     * the selected appearance.
     */
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Thumbnail images */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.elementor-carousel-image {
    border-radius: 6px !important;

    opacity: 1 !important;
    filter: none !important;
}



/* ==================================================
   DISABLE ELEMENTOR / SWIPER THUMBNAIL STATES
   ================================================== */

/*
 * Elementor / Swiper can briefly assign:
 *
 * .swiper-slide-active
 * .swiper-slide-thumb-active
 *
 * to the wrong thumbnail while changing slides.
 *
 * Those classes must NOT create any visible
 * selection state. Only .prizm-active-thumb
 * is allowed to show the green/white stroke.
 */


/* Neutralize Swiper thumb-active state */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Neutralize Swiper slide-active state */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/*
 * Kill Elementor's built-in thumbnail overlay
 * regardless of which internal Swiper state
 * the thumbnail currently has.
 */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide::after {
    background: transparent !important;
    background-color: transparent !important;

    opacity: 0 !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;

    pointer-events: none !important;
}


/*
 * Also prevent Swiper's active classes from
 * creating their own ::before visual.
 *
 * prizm-active-thumb below will override this
 * with our intentional active border.
 */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active:not(.prizm-active-thumb)::before,

.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active:not(.prizm-active-thumb)::before {
    content: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}



/* ==================================================
   THUMBNAIL SCROLL FADES
   ================================================== */

/* Bottom fade */
.elementor-871 .elementor-element.elementor-element-fb3e73a::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-fb3e73a.prizm-thumbs-more::after {
    opacity: 1;
}


/* Top fade */
.elementor-871 .elementor-element.elementor-element-fb3e73a::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to top,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-fb3e73a.prizm-thumbs-before::before {
    opacity: 1;
}



/* ==================================================
   DESKTOP + TABLET MAIN IMAGE
   ================================================== */

@media (min-width: 768px) {

    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }


    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;
    }
}



/* ==================================================
   MAIN IMAGE ARROWS
   ================================================== */

/*
 * Force both arrows to stay centered vertically
 * inside the main carousel.
 *
 * JavaScript no longer calculates their position.
 */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button {
    position: absolute !important;

    top: 50% !important;
    bottom: auto !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;

    transform:
        translateY(-50%) !important;

    font-size: 36px !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: auto !important;

    z-index: 30 !important;
}


/* Previous arrow */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button-prev {
    left: 16px !important;
    right: auto !important;
}


/* Next arrow */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button-next {
    right: 16px !important;
    left: auto !important;
}


/*
 * Elementor / Swiper normally disables
 * arrows at the first and last slide.
 *
 * Rewind is enabled, so neither arrow
 * should ever appear disabled.
 */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button.swiper-button-disabled,
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button.swiper-button-lock {
    opacity: 1 !important;

    visibility: visible !important;

    pointer-events: auto !important;
}



/* ==================================================
   MOBILE
   ================================================== */

@media (max-width: 767px) {

    .elementor-871 .elementor-element.elementor-element-fb3e73a {
        padding-left: 0;
    }



    /* ==================================================
       MOBILE MAIN IMAGE
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;

        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }



    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;

        border-radius: 6px !important;
    }



    /* ==================================================
       MOBILE ARROWS
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button {
        top: 50% !important;

        transform:
            translateY(-50%) !important;

        font-size: 32px !important;
    }


    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button-prev {
        left: 12px !important;
        right: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-swiper-button-next {
        right: 12px !important;
        left: auto !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL STRIP
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper {
        position: relative !important;

        left: auto !important;
        top: auto !important;

        width: 100% !important;
        height: auto !important;

        margin-top: 10px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling:
            touch;

        touch-action: pan-x;
    }



    /* Horizontal thumbnail track */
    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
    .swiper-wrapper {
        display: flex !important;

        flex-direction: row !important;
        flex-wrap: nowrap !important;

        width: max-content !important;
        height: auto !important;

        gap: 8px;

        transform: none !important;
    }



    /* Individual mobile thumbnails */
    .elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
    .swiper-slide {
        width: 64px !important;
        height: 64px !important;

        flex: 0 0 64px !important;

        margin: 0 !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL FADES
       ================================================== */

    /* Right fade */
    .elementor-871 .elementor-element.elementor-element-fb3e73a::after {
        left: auto;
        right: 0;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to right,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }



    /* Left fade */
    .elementor-871 .elementor-element.elementor-element-fb3e73a::before {
        left: 0;
        right: auto;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to left,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }
}



/* ==================================================
   ACTIVE THUMBNAIL
   Green → White → Image
   ================================================== */

/*
 * This is now the ONLY visual active-thumbnail state.
 */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "";

    position: absolute;

    inset: 0;

    border-radius: 6px;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none;

    z-index: 50;
}

/* ==================================================
   HARD BLOCK FALSE ACTIVE THUMBNAIL OUTLINE
   ================================================== */

/*
 * No thumbnail is allowed to display any ::before
 * selection effect unless OUR JavaScript has given
 * it .prizm-active-thumb.
 */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide:not(.prizm-active-thumb)::before {
    content: none !important;
    display: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/*
 * Only the actual Prizm-selected thumbnail
 * may display the green / white outline.
 */
.elementor-871 .elementor-element.elementor-element-fb3e73a .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    inset: 0 !important;

    border: 0 !important;
    outline: 0 !important;

    border-radius: 6px !important;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none !important;

    z-index: 50 !important;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-b95ce09 *//* ==================================================
   BASE / DESKTOP + TABLET
   ================================================== */

.elementor-871 .elementor-element.elementor-element-b95ce09 {
    position: relative;
    padding-left: 115px;
}


/* ==================================================
   MAIN IMAGE CAROUSEL
   ================================================== */

.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
    width: 100% !important;
    margin: 0 !important;

    position: relative !important;

    z-index: 1;

    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main slides */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.swiper-slide {
    border-radius: 6px !important;
    overflow: hidden !important;
}


/* Main image */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
.elementor-carousel-image {
    border-radius: 6px !important;
}



/* ==================================================
   THUMBNAIL STRIP
   ================================================== */

.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper {
    position: absolute !important;

    left: 0;
    top: 0;

    width: 90px !important;
    height: 100% !important;

    margin: 0 !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    z-index: 10 !important;

    pointer-events: auto !important;

    scrollbar-width: thin;
}


/* Thumbnail track */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-wrapper {
    height: auto !important;

    gap: 10px;

    transform: none !important;
}


/* Individual thumbnails */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide {
    width: 90px !important;
    height: 90px !important;

    margin: 0 !important;

    flex: 0 0 90px !important;

    cursor: pointer;

    pointer-events: auto !important;

    border-radius: 6px !important;

    overflow: hidden !important;

    position: relative !important;

    /*
     * Keep every thumbnail visually neutral.
     * Our prizm-active-thumb class controls
     * the selected appearance.
     */
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Thumbnail images */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.elementor-carousel-image {
    border-radius: 6px !important;

    opacity: 1 !important;
    filter: none !important;
}



/* ==================================================
   DISABLE ELEMENTOR / SWIPER THUMBNAIL STATES
   ================================================== */

/*
 * Elementor / Swiper can briefly assign:
 *
 * .swiper-slide-active
 * .swiper-slide-thumb-active
 *
 * to the wrong thumbnail while changing slides.
 *
 * Those classes must NOT create any visible
 * selection state. Only .prizm-active-thumb
 * is allowed to show the green/white stroke.
 */


/* Neutralize Swiper thumb-active state */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Neutralize Swiper slide-active state */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active {
    opacity: 1 !important;
    filter: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/*
 * Kill Elementor's built-in thumbnail overlay
 * regardless of which internal Swiper state
 * the thumbnail currently has.
 */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide::after {
    background: transparent !important;
    background-color: transparent !important;

    opacity: 0 !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;

    pointer-events: none !important;
}


/*
 * Also prevent Swiper's active classes from
 * creating their own ::before visual.
 *
 * prizm-active-thumb below will override this
 * with our intentional active border.
 */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-thumb-active:not(.prizm-active-thumb)::before,

.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide.swiper-slide-active:not(.prizm-active-thumb)::before {
    content: none !important;

    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}



/* ==================================================
   THUMBNAIL SCROLL FADES
   ================================================== */

/* Bottom fade */
.elementor-871 .elementor-element.elementor-element-b95ce09::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-b95ce09.prizm-thumbs-more::after {
    opacity: 1;
}


/* Top fade */
.elementor-871 .elementor-element.elementor-element-b95ce09::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 90px;
    height: 55px;

    background: linear-gradient(
        to top,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.95)
    );

    z-index: 20;

    pointer-events: none;

    opacity: 0;

    transition:
        opacity 0.2s ease;
}


.elementor-871 .elementor-element.elementor-element-b95ce09.prizm-thumbs-before::before {
    opacity: 1;
}



/* ==================================================
   DESKTOP + TABLET MAIN IMAGE
   ================================================== */

@media (min-width: 768px) {

    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }


    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;
    }
}



/* ==================================================
   MAIN IMAGE ARROWS
   ================================================== */

/*
 * Force both arrows to stay centered vertically
 * inside the main carousel.
 *
 * JavaScript no longer calculates their position.
 */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button {
    position: absolute !important;

    top: 50% !important;
    bottom: auto !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;

    transform:
        translateY(-50%) !important;

    font-size: 36px !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: auto !important;

    z-index: 30 !important;
}


/* Previous arrow */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button-prev {
    left: 16px !important;
    right: auto !important;
}


/* Next arrow */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button-next {
    right: 16px !important;
    left: auto !important;
}


/*
 * Elementor / Swiper normally disables
 * arrows at the first and last slide.
 *
 * Rewind is enabled, so neither arrow
 * should ever appear disabled.
 */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button.swiper-button-disabled,
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button.swiper-button-lock {
    opacity: 1 !important;

    visibility: visible !important;

    pointer-events: auto !important;
}



/* ==================================================
   MOBILE
   ================================================== */

@media (max-width: 767px) {

    .elementor-871 .elementor-element.elementor-element-b95ce09 {
        padding-left: 0;
    }



    /* ==================================================
       MOBILE MAIN IMAGE
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper) {
        aspect-ratio: 1 / 1 !important;

        height: auto !important;

        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-wrapper,

    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        height: 100% !important;
    }



    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .swiper-slide {
        border-radius: 6px !important;

        overflow: hidden !important;
    }



    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-main-swiper:not(.elementor-thumbnails-swiper)
    .elementor-carousel-image {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;

        background-position:
            center center !important;

        border-radius: 6px !important;
    }



    /* ==================================================
       MOBILE ARROWS
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button {
        top: 50% !important;

        transform:
            translateY(-50%) !important;

        font-size: 32px !important;
    }


    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button-prev {
        left: 12px !important;
        right: auto !important;
    }


    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-swiper-button-next {
        right: 12px !important;
        left: auto !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL STRIP
       ================================================== */

    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper {
        position: relative !important;

        left: auto !important;
        top: auto !important;

        width: 100% !important;
        height: auto !important;

        margin-top: 10px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling:
            touch;

        touch-action: pan-x;
    }



    /* Horizontal thumbnail track */
    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
    .swiper-wrapper {
        display: flex !important;

        flex-direction: row !important;
        flex-wrap: nowrap !important;

        width: max-content !important;
        height: auto !important;

        gap: 8px;

        transform: none !important;
    }



    /* Individual mobile thumbnails */
    .elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
    .swiper-slide {
        width: 64px !important;
        height: 64px !important;

        flex: 0 0 64px !important;

        margin: 0 !important;
    }



    /* ==================================================
       MOBILE THUMBNAIL FADES
       ================================================== */

    /* Right fade */
    .elementor-871 .elementor-element.elementor-element-b95ce09::after {
        left: auto;
        right: 0;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to right,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }



    /* Left fade */
    .elementor-871 .elementor-element.elementor-element-b95ce09::before {
        left: 0;
        right: auto;

        top: auto;
        bottom: 0;

        width: 45px;
        height: 64px;

        background: linear-gradient(
            to left,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 0.95)
        );
    }
}



/* ==================================================
   ACTIVE THUMBNAIL
   Green → White → Image
   ================================================== */

/*
 * This is now the ONLY visual active-thumbnail state.
 */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "";

    position: absolute;

    inset: 0;

    border-radius: 6px;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none;

    z-index: 50;
}

/* ==================================================
   HARD BLOCK FALSE ACTIVE THUMBNAIL OUTLINE
   ================================================== */

/*
 * No thumbnail is allowed to display any ::before
 * selection effect unless OUR JavaScript has given
 * it .prizm-active-thumb.
 */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide:not(.prizm-active-thumb)::before {
    content: none !important;
    display: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/*
 * Only the actual Prizm-selected thumbnail
 * may display the green / white outline.
 */
.elementor-871 .elementor-element.elementor-element-b95ce09 .elementor-thumbnails-swiper
.swiper-slide.prizm-active-thumb::before {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    inset: 0 !important;

    border: 0 !important;
    outline: 0 !important;

    border-radius: 6px !important;

    box-shadow:
        inset 0 0 0 3px #007440,
        inset 0 0 0 6px #ffffff !important;

    pointer-events: none !important;

    z-index: 50 !important;
}/* End custom CSS */
/* Start custom CSS for nested-accordion, class: .elementor-element-9cea00f */.elementor-871 .elementor-element.elementor-element-9cea00f .e-n-accordion-item {
    border-bottom: 1px solid #d5d5d5;
}/* End custom CSS */