/*
 * Rediseño 2026 — Bloques de texto en columnas v1.0.16
 * Figma: node 406:1197.
 * Separador: export exacto del vector 406:1198.
 */

.r26-text-columns,
.r26-text-columns * {
    box-sizing: border-box;
}

.r26-text-columns {
    width: 100%;
}

.r26-text-columns__inner {
    width: min(1600px, 100%);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: var(--r26-text-columns-row-gap, 64px);
}

.r26-text-columns__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    column-gap: var(--r26-text-columns-col-gap, 24px);
    align-items: stretch;
    justify-content: center;
    width: 100%;
    min-height: 253px;
}

.r26-text-columns__row--count-1 {
    display: flex;
    justify-content: center;
}

.r26-text-columns__row--count-1 .r26-text-columns__item {
    width: min(520px, 100%);
}

.r26-text-columns__row--count-2 {
    grid-template-columns: minmax(0, 520px) auto minmax(0, 520px);
    justify-content: center;
}

.r26-text-columns__item {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-width: 0;
    padding: 0 30px;
    text-align: left;
}

.r26-text-columns__title {
    display: block !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 110px;
    margin: 0 !important;
    padding: 0 !important;
    font-family: "Autography", sans-serif !important;
    font-size: 100px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 110px !important;
    letter-spacing: 0 !important;
    color: #000 !important;
    text-align: center !important;
    text-transform: none !important;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: normal;
    word-break: normal;
}



.r26-text-columns__text {
    width: 100%;
    margin-top: 64px;
    font-family: "futura-pt", "Futura PT", "Futura_PT", Futura, sans-serif !important;
    font-size: 20px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: normal !important;
    letter-spacing: 0 !important;
    color: #000 !important;
    text-align: justify !important;
}


.r26-text-columns__text p,
.r26-text-columns__text ul,
.r26-text-columns__text ol {
    margin-top: 0 !important;
}

.r26-text-columns__text > :last-child {
    margin-bottom: 0 !important;
}

.r26-text-columns__text a {
    color: inherit;
}

.r26-text-columns__separator {
    display: flex;
    align-items: stretch;
    justify-content: center;
    width: 5px;
    min-height: 253px;
    pointer-events: none;
}

.r26-text-columns__separator img {
    display: block;
    width: 5px;
    height: 100%;
    min-height: 253px;
    max-width: none;
    object-fit: fill;
}

@media (max-width: 1239px) {
    .r26-text-columns__inner {
        width: 100%;
        padding-right: 32px;
        padding-left: 32px;
    }

    .r26-text-columns__row {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    }
}

@media (max-width: 991px) {
    .r26-text-columns__item {
        padding-right: 20px;
        padding-left: 20px;
    }

    .r26-text-columns__title {
        min-height: 88px;
        font-size: clamp(64px, 9vw, 86px) !important;
        line-height: 1.05 !important;
    }

    .r26-text-columns__text {
        margin-top: 44px;
    }
}

@media (max-width: 767px) {
    .r26-text-columns__inner {
        padding-right: 20px;
        padding-left: 20px;
    }

    .r26-text-columns__row,
    .r26-text-columns__row--count-1,
    .r26-text-columns__row--count-2,
    .r26-text-columns__row--count-3 {
        display: flex;
        flex-direction: column;
        gap: var(--r26-text-columns-row-gap, 64px);
        min-height: 0;
    }

    .r26-text-columns__separator {
        display: none;
    }

    .r26-text-columns__item,
    .r26-text-columns__row--count-1 .r26-text-columns__item,
    .r26-text-columns__row--count-2 .r26-text-columns__item,
    .r26-text-columns__row--count-3 .r26-text-columns__item {
        width: 100%;
        padding: 0;
    }

    .r26-text-columns__title {
        min-height: 0;
        font-size: clamp(56px, 18vw, 76px) !important;
        line-height: 1.08 !important;
    }

    .r26-text-columns__text {
        margin-top: 32px;
        font-size: 18px !important;
        line-height: 26px !important;
    }
}

/*
 * Tipografía de cada item según Figma:
 * - 1042:1717: título Autography Regular 100/110.
 * - 1042:1725: texto destacado Futura PT Demi 20, justificado.
 * - 1042:1722: cuerpo Futura PT Book 20, justificado.
 */
.r26-text-columns__text p {
    margin: 0 0 24px !important;
    padding: 0 !important;
    font: inherit !important;
    line-height: inherit !important;
    text-align: justify !important;
}

.r26-text-columns__text p:last-child {
    margin-bottom: 0 !important;
}

.r26-text-columns__text strong,
.r26-text-columns__text b {
    font-family: "futura-pt", "Futura PT", "Futura_PT", Futura, sans-serif !important;
    font-size: 20px !important;
    font-style: normal !important;
    font-weight: 600 !important;
    line-height: inherit !important;
    letter-spacing: 0 !important;
    color: inherit !important;
}

.r26-text-columns__text a {
    color: inherit !important;
    font: inherit !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.r26-text-columns__text ul,
.r26-text-columns__text ol {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 0 24px !important;
    padding-left: 1.35em !important;
    font: inherit !important;
    line-height: inherit !important;
    text-align: justify !important;
}

.r26-text-columns__text ul {
    list-style: disc outside !important;
}

.r26-text-columns__text ol {
    list-style: decimal outside !important;
}

.r26-text-columns__text li {
    margin: 0 0 8px !important;
    padding: 0 !important;
    font: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
    text-align: justify !important;
}

.r26-text-columns__text li:last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 767px) {
    .r26-text-columns__title {
        white-space: normal;
    }

    .r26-text-columns__text,
    .r26-text-columns__text p,
    .r26-text-columns__text ul,
    .r26-text-columns__text ol,
    .r26-text-columns__text li {
        text-align: left !important;
    }
}

/* ---------------------------------------------------------
 * Alineación opcional del cuerpo
 * El título permanece centrado en todos los casos.
 * --------------------------------------------------------- */
.r26-text-columns__item--text-center .r26-text-columns__text,
.r26-text-columns__item--text-center .r26-text-columns__text p {
    text-align: center !important;
}

/* Las listas mantienen sus marcadores y lectura natural, pero
 * el bloque de lista queda centrado dentro de la columna. */
.r26-text-columns__item--text-center .r26-text-columns__text ul,
.r26-text-columns__item--text-center .r26-text-columns__text ol {
    width: auto;
    max-width: 100%;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: left !important;
}

.r26-text-columns__item--text-center .r26-text-columns__text li {
    text-align: left !important;
}

@media (max-width: 767px) {
    .r26-text-columns__item--text-center .r26-text-columns__text,
    .r26-text-columns__item--text-center .r26-text-columns__text p {
        text-align: center !important;
    }
}


/* =========================================================
 * v1.0.4 — aislamiento tipográfico y de alineación
 * El tema no debe poder convertir el cuerpo en títulos grandes ni centrarlo.
 * El título del item sí permanece centrado siempre.
 * ========================================================= */
.r26-text-columns .r26-text-columns__item .r26-text-columns__title {
    display: block !important;
    width: 100% !important;
    min-height: 110px;
    margin: 0 !important;
    padding: 0 !important;
    font-family: "Autography", sans-serif !important;
    font-size: 100px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 110px !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    text-transform: none !important;
    white-space: normal !important;
    overflow-wrap: break-word;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__text,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text p,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text ul,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text ol,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text li,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text a,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text span,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text em,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text i,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text strong,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text b {
    font-family: "futura-pt", "Futura PT", "Futura_PT", Futura, sans-serif !important;
    font-size: 20px !important;
    font-style: normal !important;
    line-height: normal !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #000 !important;
}

.r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text,
.r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text p,
.r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text ul,
.r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text ol,
.r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text li {
    text-align: justify !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__text strong,
.r26-text-columns .r26-text-columns__item .r26-text-columns__text b {
    font-weight: 600 !important;
}

.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text,
.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text p {
    text-align: center !important;
}

.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text ul,
.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text ol,
.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text li {
    text-align: left !important;
}

@media (max-width: 991px) {
    .r26-text-columns .r26-text-columns__item .r26-text-columns__title {
        min-height: 88px;
        font-size: clamp(64px, 9vw, 86px) !important;
        line-height: 1.05 !important;
        white-space: normal;
    }
}

@media (max-width: 767px) {
    .r26-text-columns .r26-text-columns__item .r26-text-columns__title {
        min-height: 0;
        font-size: clamp(56px, 18vw, 76px) !important;
        line-height: 1.08 !important;
    }

    .r26-text-columns .r26-text-columns__item .r26-text-columns__text,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text p,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text ul,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text ol,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text li,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text a,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text span,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text em,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text i,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text strong,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__text b {
        font-size: 18px !important;
        line-height: 26px !important;
    }

    .r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text,
    .r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text p,
    .r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text ul,
    .r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text ol,
    .r26-text-columns .r26-text-columns__item--text-default .r26-text-columns__text li {
        text-align: left !important;
    }
}


/* ---------------------------------------------------------
 * Imágenes insertadas desde el editor de cada columna
 * --------------------------------------------------------- */
.r26-text-columns__text img {
    position: static !important;
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    object-fit: contain;
}

.r26-text-columns__text figure,
.r26-text-columns__text picture {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
}

.r26-text-columns__text figure img,
.r26-text-columns__text picture img,
.r26-text-columns__text a > img {
    margin-bottom: 0 !important;
}

.r26-text-columns__text figcaption {
    margin-top: 8px !important;
    font-family: "futura-pt", "Futura PT", "Futura_PT", Futura, sans-serif !important;
    font-size: 16px !important;
    line-height: 22px !important;
    color: inherit !important;
}

.r26-text-columns__text .aligncenter {
    margin-right: auto !important;
    margin-left: auto !important;
}

.r26-text-columns__text .alignleft {
    margin-right: 24px !important;
}

.r26-text-columns__text .alignright {
    margin-left: auto !important;
}


/* =========================================================
 * v1.0.7 — alineación configurable del cuerpo
 * Opciones: justificado, izquierda, centro y derecha.
 * El título permanece siempre centrado.
 * ========================================================= */
.r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text,
.r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text p,
.r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text ul,
.r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text ol,
.r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text li {
    text-align: justify !important;
}

.r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text,
.r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text p,
.r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text ul,
.r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text ol,
.r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text li {
    text-align: left !important;
}

.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text,
.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text p {
    text-align: center !important;
}

/* Para listas centradas mantenemos el texto alineado a la izquierda para
 * conservar la lectura y la posición natural de los marcadores. */
.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text ul,
.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text ol,
.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text li {
    text-align: left !important;
}

.r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text,
.r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text p,
.r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text ul,
.r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text ol,
.r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text li {
    text-align: right !important;
}

@media (max-width: 767px) {
    /* La alineación elegida por el editor prevalece también en móvil. */
    .r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text,
    .r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text p,
    .r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text ul,
    .r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text ol,
    .r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__text li {
        text-align: justify !important;
    }

    .r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text,
    .r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text p,
    .r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text ul,
    .r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text ol,
    .r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__text li {
        text-align: left !important;
    }

    .r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text,
    .r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__text p {
        text-align: center !important;
    }

    .r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text,
    .r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text p,
    .r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text ul,
    .r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text ol,
    .r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__text li {
        text-align: right !important;
    }
}


/* =========================================================
 * v1.0.8 — tres columnas consecutivas en escritorio
 * ========================================================= */
@media (min-width: 992px) {
    .r26-text-columns__row--count-3 {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
        align-items: stretch;
        justify-content: stretch;
    }

    .r26-text-columns__row--count-2 {
        display: grid;
        grid-template-columns: minmax(0, 520px) auto minmax(0, 520px);
        justify-content: center;
    }
}

@media (max-width: 991px) {
    .r26-text-columns__row,
    .r26-text-columns__row--count-1,
    .r26-text-columns__row--count-2,
    .r26-text-columns__row--count-3 {
        display: flex;
        flex-direction: column;
        gap: var(--r26-text-columns-row-gap, 64px);
        min-height: 0;
    }

    .r26-text-columns__separator {
        display: none;
    }

    .r26-text-columns__item,
    .r26-text-columns__row--count-1 .r26-text-columns__item,
    .r26-text-columns__row--count-2 .r26-text-columns__item,
    .r26-text-columns__row--count-3 .r26-text-columns__item {
        width: 100%;
    }
}


/* =========================================================
 * v1.0.9 — imágenes visibles + grupos en fila
 * ========================================================= */
.r26-text-columns .r26-text-columns__item .r26-text-columns__text img {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    clip: auto !important;
    clip-path: none !important;
    filter: none !important;
    object-fit: contain !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    overflow: visible !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > img,
.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > a,
.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > picture,
.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > figure {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > img {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > a > img,
.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > picture > img,
.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > figure > img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__text > :last-child,
.r26-text-columns .r26-text-columns__item .r26-text-columns__images-row:last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 640px) {
    .r26-text-columns .r26-text-columns__item .r26-text-columns__images-row {
        flex-wrap: wrap !important;
        gap: 12px !important;
    }

    .r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > img,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > a,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > picture,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__images-row > figure {
        flex: 1 1 calc(50% - 6px) !important;
    }
}


/* =========================================================
 * v1.0.10 — imágenes con pie + composición Figma 1310:1332
 * ========================================================= */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid {
    --r26-media-columns: 3;
    display: grid !important;
    grid-template-columns: repeat(var(--r26-media-columns), minmax(0, 1fr)) !important;
    justify-content: center !important;
    align-items: start !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 508px !important;
    margin: 0 auto 24px !important;
    padding: 0 !important;
    overflow: visible !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="1"] {
    --r26-media-columns: 1;
    max-width: 156px !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="2"] {
    --r26-media-columns: 2;
    max-width: 332px !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="3"] {
    --r26-media-columns: 3;
    max-width: 508px !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="4"] {
    --r26-media-columns: 4;
    max-width: 684px !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="5"] {
    --r26-media-columns: 5;
    max-width: 860px !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="6"] {
    --r26-media-columns: 6;
    max-width: 1036px !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 156px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    justify-self: center !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card--single {
    max-width: 100% !important;
    margin: 0 0 24px !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card > img,
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid .r26-text-columns__media-card > img {
    position: static !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 156px !important;
    aspect-ratio: 156 / 157;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    clip: auto !important;
    clip-path: none !important;
    filter: none !important;
    object-fit: cover !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card--single > img {
    width: auto !important;
    max-width: 100% !important;
    aspect-ratio: auto;
    object-fit: contain !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card > figcaption {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: "futura-pt", "Futura PT", "Futura_PT", Futura, sans-serif !important;
    font-size: 20px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 28px !important;
    letter-spacing: 0 !important;
    color: #000 !important;
    text-align: center !important;
    text-transform: none !important;
    overflow-wrap: break-word;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card > figcaption:empty {
    min-height: 28px !important;
}

/* Las reglas de alineación del cuerpo no deben modificar los pies. */
.r26-text-columns .r26-text-columns__item--text-left .r26-text-columns__media-card > figcaption,
.r26-text-columns .r26-text-columns__item--text-right .r26-text-columns__media-card > figcaption,
.r26-text-columns .r26-text-columns__item--text-justify .r26-text-columns__media-card > figcaption,
.r26-text-columns .r26-text-columns__item--text-center .r26-text-columns__media-card > figcaption {
    text-align: center !important;
}

@media (max-width: 640px) {
    .r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
        max-width: 328px !important;
    }

    .r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="1"] {
        grid-template-columns: minmax(0, 1fr) !important;
        max-width: 156px !important;
    }

    .r26-text-columns .r26-text-columns__item .r26-text-columns__media-card > figcaption {
        font-size: 18px !important;
        line-height: 25px !important;
    }
}


/* =========================================================
 * v1.0.13 — composición horizontal Figma 1310:1332
 * Las figuras permanecen en una única fila. Cuando el bloque
 * es más estrecho que los 516 px de referencia, se reducen
 * proporcionalmente sin cambiar el orden ni apilarse.
 * ========================================================= */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 516px !important;
    min-width: 0 !important;
    margin-right: auto !important;
    margin-left: auto !important;
    overflow: visible !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid > .r26-text-columns__media-card {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: 156px !important;
    min-width: 0 !important;
    justify-self: auto !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid > .r26-text-columns__media-card > img {
    width: 100% !important;
    max-width: 156px !important;
    height: auto !important;
    aspect-ratio: 156 / 157 !important;
    object-fit: cover !important;
}

/* El pie pertenece siempre a su figura y se alinea como en Figma. */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid > .r26-text-columns__media-card > figcaption {
    width: 100% !important;
    margin-top: 0 !important;
    font-size: 20px !important;
    line-height: 28px !important;
    text-align: center !important;
}

/* Anchos máximos de referencia de Figma según número de figuras. */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="1"] {
    max-width: 156px !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="2"] {
    max-width: 332px !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="3"] {
    max-width: 516px !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="4"],
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="5"],
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="6"] {
    max-width: 100% !important;
}

/* En móvil siguen en una sola línea: se escalan en vez de apilarse. */
@media (max-width: 640px) {
    .r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid,
    .r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="1"],
    .r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="2"],
    .r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="3"] {
        display: flex !important;
        flex-flow: row nowrap !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid > .r26-text-columns__media-card > figcaption {
        font-size: 16px !important;
        line-height: 22px !important;
    }
}


/* =========================================================
 * v1.0.13 — proteccion contra HTML antiguo sin media-grid
 * ========================================================= */
.r26-text-columns .r26-text-columns__item .r26-text-columns__text > figure.r26-text-columns__media-card:not(.r26-text-columns__media-card--single) {
    display: inline-flex !important;
    vertical-align: top !important;
    width: min(156px, calc((100% - 40px) / 3)) !important;
    max-width: 156px !important;
    margin: 0 16px 24px 0 !important;
}
.r26-text-columns .r26-text-columns__item .r26-text-columns__text > figure.r26-text-columns__media-card:not(.r26-text-columns__media-card--single):nth-of-type(3n) {
    margin-right: 0 !important;
}


/* =========================================================
 * v1.0.14 — imágenes completas, sin recorte
 * La referencia Figma usa un ancho máximo de 156 px, pero el
 * archivo seleccionado puede tener otra proporción. Se respeta
 * siempre su relación de aspecto real y se evita object-fit:cover.
 * ========================================================= */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid,
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid > .r26-text-columns__media-card {
    overflow: visible !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid > .r26-text-columns__media-card {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid > .r26-text-columns__media-card > img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 156px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid > .r26-text-columns__media-card > figcaption {
    flex: 0 0 auto !important;
    margin-top: 0 !important;
}


/* =========================================================
 * v1.0.15 — una sola imagen: marco Figma 156x157 sin recorte
 * ========================================================= */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card--single {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 156px !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 auto 24px !important;
    padding: 0 !important;
    overflow: visible !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card--single > img {
    position: static !important;
    display: block !important;
    width: 156px !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 156 / 157 !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card--single > figcaption {
    width: 156px !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
}

/* Un media-grid de una sola figura debe usar exactamente la misma caja visual. */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="1"] {
    width: 156px !important;
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="1"] > .r26-text-columns__media-card {
    flex: 0 1 156px !important;
    width: 156px !important;
    max-width: 100% !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="1"] > .r26-text-columns__media-card > img {
    width: 156px !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 156 / 157 !important;
    object-fit: contain !important;
    object-position: center center !important;
}


/* =========================================================
 * v1.0.16 — marco interno real para evitar cualquier recorte
 * Figma 1310:1332: imagen 156x157 + pie debajo.
 * ========================================================= */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card {
    overflow: visible !important;
    max-height: none !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-image {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 156px !important;
    aspect-ratio: 156 / 157 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-image > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    filter: none !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card--single {
    width: min(156px, 100%) !important;
}

.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card--single > .r26-text-columns__media-image,
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-grid[data-r26-media-count="1"] > .r26-text-columns__media-card > .r26-text-columns__media-image {
    width: min(156px, 100%) !important;
    max-width: 156px !important;
    aspect-ratio: 156 / 157 !important;
}

/* Compatibilidad defensiva: si una figura antigua llega sin wrapper,
 * nunca la recortamos. El PHP la normaliza al renderizar, pero esta regla
 * evita problemas durante caches o HTML antiguo ya servido. */
.r26-text-columns .r26-text-columns__item .r26-text-columns__media-card > img {
    display: block !important;
    width: auto !important;
    max-width: 156px !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
}
