/* =========================
   MODULO TESTO, IMG, CTA
========================= */

.modulo-testo-img {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 60px 55px;
}

/* COLORE SFONDO SEZIONE */
.modulo-testo-img.modulo-testo-img--white {
    background-color: var(--white);
}

.modulo-testo-img.modulo-testo-img--green {
    background-color: var(--primario-chiaro);
}

.modulo-testo-img .modulo-testo-img__inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    max-width: 970px;
}

.modulo-testo-img .modulo-testo-img__inner:has(.modulo-testo-img__images) {
    max-width: 1170px;
}

/* PILL (stile condiviso: assets/css/components/shared-blocks.css) */
.modulo-testo-img .cta-pill {
    margin-bottom: 24px;
}

/* TITLE / DESCRIPTION (stile condiviso: assets/css/components/shared-blocks.css) */

/* CTA (icona/bottone condivisi: assets/css/components/shared-blocks.css) */
.modulo-testo-img .modulo-testo-img__cta {
    margin: 0;
}

/* IMAGES ROW */
.modulo-testo-img .modulo-testo-img__images {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 24px;
    width: 100%;
}

.modulo-testo-img .modulo-testo-img__image {
    flex: 1 1 0;
    min-width: 0;
}

.modulo-testo-img .modulo-testo-img__image img {
    width: 100%;
    height: auto;
    max-height: 449px;
    object-fit: cover;
    object-position: center;
    display: block;
    border-radius: 24px;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 992px) {
    .modulo-testo-img {
        padding: 0px 20px;
    }

    .modulo-testo-img .modulo-testo-img__inner {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .modulo-testo-img .modulo-testo-img__images {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
    }

    .modulo-testo-img .modulo-testo-img__image {
        flex: none;
    }

    .modulo-testo-img .modulo-testo-img__image img {
        /* max-height: 240px; */
    }

    @media (max-width: 500px) {
        .modulo-testo-img .modulo-testo-img__image img {
            max-height: 240px;
        }
    }
}

/* Ridefinita in locale: nell'editor a blocchi (preview) viene caricato solo
   questo style.css, non il bootstrap.min.css completo del front-end — senza
   questa regola il testo "(si apre in una nuova scheda)" resterebbe visibile
   invece di essere solo per screen reader. */
.modulo-testo-img .visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}