.cards-blocks-carousel {
    position: relative;
    overflow: hidden;
}

.cards-blocks-carousel .swiper {
    overflow: visible; /* para mostrar parcialmente una card al final */
    padding-bottom: 40px;
}

.cards-blocks-carousel .swiper-slide {
    width: 364px !important; /* igual al inner */
    flex-shrink: 0;
}
.cards-blocks-container {
    display: flex;
    flex-direction: column;
    gap: 20px; /* este valor lo sobrescribe Elementor si usás control de gap */
}

.cards-blocks-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    overflow-x: hidden;
}

.cards-blocks-item {
    flex: 0 0 auto;
    box-sizing: border-box;
}
.cards-blocks-row.no-wrap-row {
    display: flex;
    flex-wrap: nowrap; /* No saltar a otra fila */
    overflow-x: auto; /* Scroll horizontal si excede ancho */
    gap: 20px;
}

.cards-blocks-item {
    flex: 0 0 auto; /* No encoger ni crecer */
}

.cards-blocks-item-inner {
    width: 364px;
    height: 290px;
    padding: 48px 48px 40px 48px;
    border-radius: 24px;
    background-color: #161616;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 36px;
    text-align: center;
    box-sizing: border-box;
}

.cards-blocks-row.cards-cols-1 .cards-blocks-item {
    width: 100%;
}
.cards-blocks-row.cards-cols-2 .cards-blocks-item {
    width: calc(50% - 10px);
}
.cards-blocks-row.cards-cols-3 .cards-blocks-item {
    width: calc(33.333% - 13.33px);
}
