.epb-asymmetric-grid-block {
    --_section-max-width: var(--wp--custom--width--default, 1440px);
    --_section-padding-inline: var(--wp--preset--spacing--md-plus, 20px);
    --_section-padding-block: var(--wp--preset--spacing--3-xl-plus, 110px);
    --_intro-gap: var(--wp--preset--spacing--3-xl-plus, 110px);
    --_row-gap: var(--wp--preset--spacing--3-xl-plus, 110px);
    --_card-gap: var(--wp--preset--spacing--lg, 26px);
    --_intro-max-width: var(--wp--custom--width--medium, 808px);
    --_intro-max-width-small: 490px;
    --_intro-max-width-narrow: var(--wp--custom--width--narrow, 600px);
    --_intro-max-width-wide: var(--wp--custom--width--wide, 1200px);
	--_cta-gap-offset: 6px;
    padding-block: var(--_section-padding-block);
    overflow: visible;
    max-width: var(--_section-max-width);
    margin: 0 auto;
    padding-inline: var(--_section-padding-inline);
    position: relative;
    z-index: 1;
}

.epb-asymmetric-grid-block__container {
    display: flex;
    flex-direction: column;
    gap: var(--_intro-gap);
    width: 100%;
}

.epb-asymmetric-grid-block__intro {
    display: flex;
    justify-content: center;
    align-items: center;
}

.epb-asymmetric-grid-block__intro-cta {
	margin-block: calc(-1 * var(--_cta-gap-offset));
	display: flex;
}

.epb-asymmetric-grid-block__intro-content {
    max-width: var(--_intro-max-width);
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--md-plus, 20px);
    text-align: center;
    align-items: center;
}

.epb-asymmetric-grid-block__intro-title {
    margin: 0;
    word-wrap: break-word;
    line-height: 1.1;
}

.epb-asymmetric-grid-block__intro-description {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--sm, 14px);
    max-width: 426px;
    margin: 0 auto;
}

.epb-asymmetric-grid-block__content {
    width: 100%;
    overflow: visible;
}

.epb-asymmetric-grid-block__mobile-carousel {
    display: none;
    overflow: visible;
}

.epb-asymmetric-grid-block__desktop-grid {
    display: flex;
    flex-direction: column;
    gap: var(--_row-gap);
}

.epb-asymmetric-grid-block__row {
    display: flex;
    gap: 10px;
}

.epb-asymmetric-grid-block__row--1 {
    justify-content: space-between;
}

.epb-asymmetric-grid-block__row--2 {
    justify-content: space-between;
}

.epb-asymmetric-grid-block__cards-group {
    display: flex;
    gap: 10px;
}

.epb-asymmetric-grid-block__card {
    display: flex;
    flex-direction: column;
    gap: var(--_card-gap);
}

.epb-asymmetric-grid-block__card-image {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.epb-asymmetric-grid-block__card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease-out;
    will-change: transform;
}

.epb-asymmetric-grid-block__card-image:hover img {
    transform: scale(1.05);
}

.epb-asymmetric-grid-block__card-content {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--md, 16px);
}

.epb-asymmetric-grid-block__card-title {
    margin: 0;
    line-height: 1.1;
}

.epb-asymmetric-grid-block__card-description {
    margin: 0;
	width: 97.5%;
}

.epb-asymmetric-grid-block__card-description p {
    margin: 0 0 var(--wp--preset--spacing--sm, 14px) 0;
}

.epb-asymmetric-grid-block__card-description p:last-child {
    margin-bottom: 0;
}

.epb-asymmetric-grid-block__card-cta {
    margin-top: auto;
	display: flex;
}

@media (min-width: 1100px) {
    .epb-asymmetric-grid-block--layout-1 .epb-asymmetric-grid-block__row--1 .epb-asymmetric-grid-block__card--small {
        width: 447px;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block--layout-1 .epb-asymmetric-grid-block__row--1 .epb-asymmetric-grid-block__card--small .epb-asymmetric-grid-block__card-image {
        aspect-ratio: 447/620;
    }
    .epb-asymmetric-grid-block--layout-1 .epb-asymmetric-grid-block__row--1 .epb-asymmetric-grid-block__card--large {
        width: 675px;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block--layout-1 .epb-asymmetric-grid-block__row--1 .epb-asymmetric-grid-block__card--large .epb-asymmetric-grid-block__card-image {
        aspect-ratio: 675/760;
    }
    .epb-asymmetric-grid-block--layout-1 .epb-asymmetric-grid-block__row--2 .epb-asymmetric-grid-block__card--extra-small {
        width: 333px;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block--layout-1 .epb-asymmetric-grid-block__row--2 .epb-asymmetric-grid-block__card--extra-small .epb-asymmetric-grid-block__card-image {
        aspect-ratio: 333/462;
    }
    .epb-asymmetric-grid-block--layout-1 .epb-asymmetric-grid-block__row--2 .epb-asymmetric-grid-block__card--small {
        width: 447px;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block--layout-1 .epb-asymmetric-grid-block__row--2 .epb-asymmetric-grid-block__card--small .epb-asymmetric-grid-block__card-image {
        aspect-ratio: 447/620;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--1 {
        align-items: center;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--1 .epb-asymmetric-grid-block__card--large {
        width: 675px;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--1 .epb-asymmetric-grid-block__card--large .epb-asymmetric-grid-block__card-image {
        aspect-ratio: 675/760;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--1 .epb-asymmetric-grid-block__card--small {
        width: 447px;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--1 .epb-asymmetric-grid-block__card--small .epb-asymmetric-grid-block__card-image {
        aspect-ratio: 447/620;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--2 {
        align-items: center;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--2 .epb-asymmetric-grid-block__card--extra-small {
        width: 333px;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--2 .epb-asymmetric-grid-block__card--extra-small .epb-asymmetric-grid-block__card-image {
        aspect-ratio: 333/462;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--2 .epb-asymmetric-grid-block__card--small {
        width: 447px;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block--layout-2 .epb-asymmetric-grid-block__row--2 .epb-asymmetric-grid-block__card--small .epb-asymmetric-grid-block__card-image {
        aspect-ratio: 447/620;
    }
}

@media (max-width: 1099px) {
    .epb-asymmetric-grid-block {
        --_intro-gap: var(--wp--preset--spacing--lg-plus, 60px);
    }
    .epb-asymmetric-grid-block__intro-content {
        max-width: 335px;
        gap: var(--wp--preset--spacing--md-plus, 20px);
    }
    .epb-asymmetric-grid-block--carousel-mobile .epb-asymmetric-grid-block__mobile-carousel {
        display: block;
    }
    .epb-asymmetric-grid-block--carousel-mobile .epb-asymmetric-grid-block__desktop-grid {
        display: none;
    }
    .epb-asymmetric-grid-block__mobile-carousel {
        width: 100%;
    }
    .epb-asymmetric-grid-block__swiper {
        width: 100%;
        overflow: hidden;
        margin-bottom: 0;
    }
    .epb-asymmetric-grid-block__swiper .swiper-wrapper {
        align-items: stretch;
    }
    .epb-asymmetric-grid-block__swiper .swiper-slide {
        width: 335px;
        flex-shrink: 0;
        height: auto;
        display: flex;
        flex-direction: column;
    }
    .epb-asymmetric-grid-block__card {
        width: 100%;
    }
    .epb-asymmetric-grid-block__card-image img {
        aspect-ratio: 335/464;
    }
    .epb-asymmetric-grid-block__pagination-wrapper {
        margin-top: var(--wp--preset--spacing--xl, 40px);
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: var(--wp--preset--spacing--md-plus, 20px);
        border-top: 1px dashed var(--wp--preset--color--marine-blue);
        border-bottom: 1px dashed var(--wp--preset--color--marine-blue);
        width: 100vw;
        margin-left: calc(50% - 50vw);
        padding: var(--wp--preset--spacing--md-plus, 20px) var(--_section-padding-inline);
    }
    .epb-asymmetric-grid-block__pagination {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: var(--wp--preset--spacing--md, 16px);
    }
    .epb-asymmetric-grid-block__arrow {
        width: 13px;
        height: 16px;
        padding: 0;
        background: none;
        border: none;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: opacity 0.2s ease;
        flex-shrink: 0;
    }
    .epb-asymmetric-grid-block__arrow:hover:not(:disabled) {
        opacity: 0.8;
    }
    .epb-asymmetric-grid-block__arrow:disabled {
        cursor: not-allowed;
    }
    .epb-asymmetric-grid-block__arrow svg {
        width: 100%;
        height: 100%;
    }
    .epb-asymmetric-grid-block__arrow svg path {
        transition: fill-opacity 0.2s ease;
    }
    .epb-asymmetric-grid-block__arrow--prev svg path {
        fill: var(--wp--preset--color--marine-blue);
        fill-opacity: 1;
    }
    .epb-asymmetric-grid-block__arrow--next svg path {
        fill: var(--wp--preset--color--marine-blue);
        fill-opacity: 1;
    }
    .epb-asymmetric-grid-block__arrow:disabled svg path {
        fill-opacity: 0.3;
    }
    .epb-asymmetric-grid-block__swiper .swiper-pagination {
        display: none !important;
    }
    .epb-asymmetric-grid-block__pagination .swiper-pagination {
        position: static !important;
        display: block !important;
    }
    .epb-asymmetric-grid-block__pagination .swiper-pagination-bullet {
        display: none;
    }
    .epb-asymmetric-grid-block__pagination .swiper-pagination-custom {
        line-height: normal;
        white-space: nowrap;
    }
    .epb-asymmetric-grid-block__pagination .swiper-pagination-custom .current {
        color: var(--wp--preset--color--marine-blue, #15356E);
    }
    .epb-asymmetric-grid-block__pagination .swiper-pagination-custom .separator,
    .epb-asymmetric-grid-block__pagination .swiper-pagination-custom .total {
        color: rgba(21, 53, 110, 0.5);
    }
}

.epb-asymmetric-grid-block--intro-width-small .epb-asymmetric-grid-block__intro-description {
    max-width: var(--_intro-max-width-small);
}

.epb-asymmetric-grid-block--intro-width-narrow .epb-asymmetric-grid-block__intro-description {
    max-width: var(--_intro-max-width-narrow);
}

.epb-asymmetric-grid-block--intro-width-wide .epb-asymmetric-grid-block__intro-description {
    max-width: var(--_intro-max-width-wide);
}

.epb-asymmetric-grid-block--intro-width-full .epb-asymmetric-grid-block__intro-description {
    max-width: none;
}

@media print {
    .epb-asymmetric-grid-block__mobile-carousel {
        display: none;
    }
    .epb-asymmetric-grid-block__desktop-grid {
        display: flex;
    }
}

@media (prefers-reduced-motion: reduce) {
    .epb-asymmetric-grid-block__card-image img {
        transition: none;
    }
    .epb-asymmetric-grid-block .swiper {
        --swiper-navigation-size: 0;
    }
}
