:root {
    --swiper-slide-img-height: 360px;

    @media screen and (min-width: 1280px) {
        --swiper-height: 850px;
        --swiper-height-gallery: 450px;
        --swiper-slide-active-img-height: 520px;
    }
}

.is-style-swiper:not(:has(.swiper-gallery)) {
    position: relative;
    min-height: var(--swiper-height);
    overflow: clip;
}

.is-style-swiper:has(.swiper-gallery) {
    min-height: var(--swiper-height-gallery);
    overflow: clip;
}

.is-style-swiper>.swiper-wrapper {
    display: flex !important;
}

.is-style-swiper>.swiper-wrapper.swiper-gallery>.swiper-slide,
.is-style-swiper>.swiper-wrapper>.swiper-slide figure,
.is-style-swiper>.swiper-wrapper>.swiper-slide .wp-block-cover {
    overflow: clip;
    transition: height 0.5s ease-in-out;
    height: var(--swiper-slide-img-height)!important;

    @media screen and (min-width: 1280px) {
        height: var(--swiper-slide-img-height) !important;
    }
}

.is-style-swiper>.swiper-wrapper>.swiper-slide figure img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.is-style-swiper>.swiper-wrapper.swiper-gallery>.swiper-slide.swiper-slide-active,
.is-style-swiper>.swiper-wrapper>.swiper-slide.swiper-slide-active figure,
.is-style-swiper>.swiper-wrapper>.swiper-slide.swiper-slide-active .wp-block-cover {
    overflow: clip;
    position: relative;
    z-index: 15;
    @media screen and (min-width: 1280px) {
        height: var(--swiper-slide-active-img-height) !important;
    }
}

.card-content {
    opacity: 0;
    transition: opacity 0.1s ease-in;
}

.swiper-slide-active .card-content {
    opacity: 1;
}

.swiper-nav {
    position: relative;
    z-index: 1;

    @media screen and (min-width: 1280px) {
        position: absolute;
        left: 0;
        right: 0;
        top: var(--swiper-slide-img-height);
    }
}

.is-style-swiper .swiper-nav>.wp-block-columns>.wp-block-column {
    @media screen and (min-width: 1280px) {
        min-height: 100vh;
    }
}

.swiper-button-disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

section:has(.wp-block-gallery.is-style-swiper) {
    position: relative;
    overflow: clip;
}

@media screen and (max-width: 768px) {
    .swiper-prev,
    .swiper-next {
        min-height: 60px !important;
        aspect-ratio: 1 / 1;

        figure {
            transform: scale(0.75);
        }
    }
}