.ppro-y26-card-grid,
.wp-block.ppro-y26-card-grid {
    display: grid;
    gap: 1rem;
    align-items: stretch;
}

.ppro-y26-card-grid > .acf-innerblocks-container {
    display: contents;
}

@media (min-width: 768px) {
    .ppro-y26-card-grid--slider-on-mobile .ppro-y26-card-grid__viewport.swiper {
        overflow: visible;
    }
}

.ppro-y26-card-grid .ppro-y26-icon-card,
.ppro-y26-card-grid .ppro-y26-icon-card-color,
.ppro-y26-card-grid .ppro-y26-case-card,
.ppro-y26-card-grid .ppro-y26-promo-card,
.ppro-y26-card-grid .ppro-y26-link-card,
.ppro-y26-card-grid .ppro-y26-country-card,
.ppro-y26-card-grid .ppro-y26-testimonial-card,
.ppro-y26-card-grid > [data-block],
.ppro-y26-card-grid > .acf-innerblocks-container > [data-block] {
    height: 100%;
}

.ppro-y26-card-grid--cols-2 {
    grid-template-columns: repeat(2, 1fr);
}

.ppro-y26-card-grid--cols-3 {
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 1023px) {
    .ppro-y26-card-grid--cols-3 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .ppro-y26-card-grid--cols-2,
    .ppro-y26-card-grid--cols-3 {
        grid-template-columns: 1fr;
    }
}

.ppro-y26-card-grid--slider-on-mobile,
.wp-block.ppro-y26-card-grid--slider-on-mobile {
    display: block;
    gap: 0;
}

.ppro-y26-card-grid--slider-on-mobile .ppro-y26-card-grid__viewport {
    position: relative;
}

.ppro-y26-card-grid--slider-on-mobile .swiper-wrapper {
    display: grid;
    gap: 1rem;
}

.ppro-y26-card-grid--slider-on-mobile.ppro-y26-card-grid--cols-2
    .swiper-wrapper {
    grid-template-columns: repeat(2, 1fr);
}

.ppro-y26-card-grid--slider-on-mobile.ppro-y26-card-grid--cols-3
    .swiper-wrapper {
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 1023px) {
    .ppro-y26-card-grid--slider-on-mobile.ppro-y26-card-grid--cols-3
        .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }
}

.ppro-y26-card-grid--slider-on-mobile .swiper-wrapper > .acf-innerblocks-container {
    display: contents;
}

.ppro-y26-card-grid--slider-on-mobile .ppro-y26-card-grid__pagination {
    display: none;
}

@media (max-width: 767px) {
    .ppro-y26-card-grid--slider-on-mobile {
        gap: 0;
    }

    .ppro-y26-card-grid--slider-on-mobile .ppro-y26-card-grid__viewport {
        overflow-x: clip;
        overflow-y: visible;
        list-style: none;
        padding: 0;
        z-index: 1;
        margin-left: calc(
            -1 *
                (
                    max(
                        0px,
                        (100vw - var(--ppro-container-max-width, 90rem)) / 2
                    ) + var(--ppro-container-padding-x-mobile, 1rem)
                )
        );
        margin-right: calc(
            -1 *
                (
                    max(
                        0px,
                        (100vw - var(--ppro-container-max-width, 90rem)) / 2
                    ) + var(--ppro-container-padding-x-mobile, 1rem)
                )
        );
    }

    .ppro-y26-card-grid--slider-on-mobile .swiper-wrapper {
        position: relative;
        width: 100%;
        z-index: 1;
        display: flex;
        gap: 0;
        grid-template-columns: none;
        transition-property: transform;
        box-sizing: content-box;
    }

    .ppro-y26-card-grid--slider-on-mobile .swiper-slide {
        flex-shrink: 0;
        height: auto;
        position: relative;
        width: calc(
            min(100vw, var(--ppro-container-max-width, 90rem)) - 2 *
                var(--ppro-container-padding-x-mobile, 1rem)
        );
    }

    .ppro-y26-card-grid--slider-on-mobile .swiper-slide > * {
        height: 100%;
    }

    .ppro-y26-card-grid--slider-on-mobile .ppro-y26-card-grid__pagination {
        --swiper-pagination-bullet-horizontal-gap: 0px;
        position: static;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 0.5rem;
        justify-content: center;
        align-items: center;
        margin: 1.25rem 0 0;
        padding: 0;
        width: auto;
    }

    .ppro-y26-card-grid--slider-on-mobile
        .ppro-y26-card-grid__pagination
        > .swiper-pagination-bullet {
        flex: 0 0 0.5rem;
        width: 0.5rem;
        height: 0.5rem;
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: var(--ppro-color-midnight, #44385b);
        opacity: 0.2;
        cursor: pointer;
        transition: opacity 0.2s ease;
        display: block;
    }

    .ppro-y26-card-grid--slider-on-mobile
        .ppro-y26-card-grid__pagination
        > .swiper-pagination-bullet-active {
        opacity: 1;
    }

    .dark
        .ppro-y26-card-grid--slider-on-mobile
        .ppro-y26-card-grid__pagination
        > .swiper-pagination-bullet {
        background: var(--ppro-color-white, #ffffff);
    }
}
