/**
* Swiper Options CSS
*/
@media all {

    .swiper {
        --swiper-speed: 1000;
        position: relative;
        margin-left: calc(var(--swiper-gap) / -2);
        margin-right: calc(var(--swiper-gap) / -2);
        width: calc(100% + var(--swiper-gap));
    }

    .swiper-slider {
        --swiper-slides-view: 1;
        --swiper-effect: fade;
        --swiper-autoplay: true;
        --swiper-autoplay-delay: 5000;
        --swiper-loop: true;
        overflow: visible;
    }

    .swiper-carousel {
        --swiper-slides-view: 1;
        --swiper-effect: slide;
        --swiper-autoplay: false;
        --swiper-loop: false;
        --swiper-gap: var(--base-size);
        overflow: visible;
    }

    .swiper-dots {
        --swiper-pagination-bullet-size: var(--gap-2);
        --swiper-pagination-bullet-horizontal-gap: 0;
        position: relative;
        display: flex;
        justify-content: end;
    }

    .swiper-grid-slider .swiper-dots {
        background: var(--gradient-overlay);
    }

    .swiper-pagination {
        --swiper-pagination-top: unset;
        --swiper-pagination-bottom: 0;
        flex-shrink: 1;
        flex-grow: 0;
        position: relative;
        padding: var(--gap-3);
        display: flex;
        width: auto !important;
    }

    .swiper-playback {
        position: relative;
        bottom: 0;
        left: 0;
        z-index: 10;
        padding: var(--gap-3);
        background: transparent;
        border: transparent;
        color: var(--color-text-light);
        margin-right: auto;
        display: none;
        cursor: pointer;
    }

    .swiper-playback.is-active {
        display: grid;
    }

    .swiper-playback:focus-visible {
        box-shadow: var(--shadow-focus);
        outline: none;
    }

    .swiper-playback span {
        grid-column: 1;
        grid-row: 1;
    }

    .swiper-playback .swiper-play,
    .swiper-playback.is-paused .swiper-pause {
        visibility: hidden;
    }

    .swiper-playback.is-paused .swiper-play {
        visibility: visible;
    }

    .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet  {
        margin: var(--gap);
        position: relative;
    }

    .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:focus-visible  {
        box-shadow: var(--shadow-focus);
        outline: none;
    }

    .swiper-pagination .swiper-pagination-bullet::after {
        content: "";
        position: absolute;
        inset: calc(var(--gap) * -4) calc(var(--gap) * -1);
    }

    .swiper-carousel ~ .swiper-dots .swiper-pagination {
        position: relative;
        padding: 0;
        justify-content: end;
        align-items: end;
        padding-bottom: calc(var(--dynamic-size-scaler) * .375);
    }

    .swiper-grid-carousel.header-set {
        display: grid;
        grid-template-columns: repeat(23, minmax(0, 1fr));
        grid-template-rows: repeat(2, auto);
    }

    .swiper-grid-carousel.header-set .ce-header {
        grid-column: 1 / -8;
        grid-row: 1 / -2;
    }

    .swiper-grid-carousel.header-set .swiper {
        grid-column: 1 / -1;
        grid-row: 2 / -1;
    }

    .swiper-grid-carousel.header-set .swiper-dots {
        grid-column: 17 / -1;
        grid-row: 1 / -2;
        display: grid;
    }

    .swiper-pagination-bullet {
        left: unset !important;
        border-radius: 0;
        width: var(--gap-2) !important;
        height: var(--gap-2) !important;
        background-color: var(--color-bg-light);
        opacity: 1;
    }

    .swiper-pagination-bullet.swiper-pagination-bullet-active {
        background-color: var(--color-primary);
    }

    .swiper-slider + .swiper-dots .swiper-pagination-bullet {
        background-color: var(--color-text-light);
        opacity: .5;
        box-shadow: var(--shadow-a11y);
    }

    .swiper-slider + .swiper-dots .swiper-pagination-bullet.swiper-pagination-bullet-active {
        opacity: 1;
    }    

    .swiper-pagination-bullet:focus ,
    .swiper-pagination-bullet:hover {
        background-color: var(--color-accent-hover);
        opacity: 1;
    }    

    .swiper-slider + .swiper-dots .swiper-pagination-bullet:focus ,
    .swiper-slider + .swiper-dots .swiper-pagination-bullet:hover {
        background-color: var(--color-text-light);
        opacity: 1;
    }

    .swiper-slide {
        box-sizing: border-box;
        padding: 0 calc(var(--swiper-gap) / 2);
        width: calc(100% / var(--swiper-slides-view)) !important;
    }

}

/* effects new */

@media all {

    .swiper-carousel .ce-header ,
    .swiper-carousel .ce-header > * ,
    .ce-text-on-image .ce-textmedia-inner::before ,
    .swiper-carousel .ce-bodytext ,
    .swiper-carousel .ce-gallery .ce-media-image {
        transition: all calc(var(--swiper-speed) / 1000 * 1s) ease-in-out;
    }

    .swiper-carousel .ce-bodytext {
        transition-property: opacity;
    }    
    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-bodytext {
        opacity: .25;
    }

    .swiper-carousel .ce-header {
        transition-property: opacity;
    }
    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-header {
        opacity: .25;
    }

    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-text-on-image .ce-header ,
    .swiper-carousel .swiper-slide .ce-text-on-image .ce-header {
        opacity: 1;
    }

    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-text-on-image .ce-textmedia-inner::before {
        top: 50%;
        opacity: .25;
    }

    .swiper-carousel .ce-header > * {
        transition-property: color;
    }
    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-header > * {
        color: var(--color-text-dark);
    }
    .swiper-carousel .swiper-slide .ce-text-on-image .ce-header > * {
        color: var(--color-text-light);
    }

    .swiper-carousel .ce-gallery {
        /*! overflow: hidden; */
    }

    .swiper-carousel .ce-gallery .ce-media-image {
        transition-property: filter, opacity;
        transition-property: all;
    }
    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-gallery .ce-media-image {
        filter: grayscale(1) blur(.125rem);
        opacity: .25;
    }

}

/* effects old */

@media all {

    /*


    .swiper-carousel .swiper-slide ,
    .swiper-carousel .ce-header ,
    .swiper-carousel .ce-gallery .ce-media-image {
    transition: all calc(var(--swiper-speed) / 1000 * 1s) ease-in-out;
}

    .swiper-carousel .swiper-slide {
    transition-property: opacity;
}    
    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) {
    opacity: .25;
}

    .swiper-carousel .ce-header {
    transition-property: color;
}
    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-header > * {
    color: var(--color-text-dark)
}
    .swiper-carousel .swiper-slide .ce-text-on-image .ce-header > * {
    color: var(--color-text-light)
}

    .swiper-carousel .ce-gallery {
    overflow: hidden;
    transition-property: background-color;
}
    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-gallery {
    background-color: var(--color-bg-light);
}

    .swiper-carousel .ce-gallery .ce-media-image {
    transition-property: filter;
}
    .swiper-carousel .swiper-slide:not(.swiper-slide-visible) .ce-gallery .ce-media-image {
    filter: grayscale(1) blur(.125rem);
}

    */

}


@media(min-width: 36rem) {

    .swiper-carousel {
        --swiper-slides-view: 2;
    }

}

@media(min-width: 48rem) {

    .swiper-carousel {
        --swiper-slides-view: 3;
    }

}

@media(min-width: 62rem) {

}

@media(min-width: 120rem) {

}