/* FLECHAS LOOP CAROUSEL */

.elementor-widget-loop-carousel .elementor-swiper-button-prev {
    left: -45px !important;
}

.elementor-widget-loop-carousel .elementor-swiper-button-next {
    right: -45px !important;
}


/* FLECHAS NESTED CAROUSEL */

.elementor-widget-n-carousel .elementor-swiper-button-prev {
    left: -45px !important;
}

.elementor-widget-n-carousel .elementor-swiper-button-next {
    right: -45px !important;
}


/* ICONO IGUAL AL LOOP CAROUSEL - NESTED */

.elementor-widget-n-carousel .elementor-swiper-button-next svg,
.elementor-widget-n-carousel .elementor-swiper-button-prev svg {
    display: none !important;
}


.elementor-widget-n-carousel .elementor-swiper-button-next::after {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' class='e-font-icon-svg e-eicon-chevron-right' viewBox='0 0 1000 1000' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M696 533C708 521 713 504 713 487 713 471 708 454 696 446L400 146C388 133 375 125 354 125 338 125 325 129 313 142 300 154 292 171 292 187 292 204 296 221 308 233L563 492 304 771C292 783 288 800 288 817 288 833 296 850 308 863 321 871 338 875 354 875 371 875 388 867 400 854L696 533Z'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
}


.elementor-widget-n-carousel .elementor-swiper-button-prev::after {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' class='e-font-icon-svg e-eicon-chevron-right' viewBox='0 0 1000 1000' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M696 533C708 521 713 504 713 487 713 471 708 454 696 446L400 146C388 133 375 125 354 125 338 125 325 129 313 142 300 154 292 171 292 187 292 204 296 221 308 233L563 492 304 771C292 783 288 800 288 817 288 833 296 850 308 863 321 871 338 875 354 875 371 875 388 867 400 854L696 533Z'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(180deg);
}
/* TARJETAS DOCUMENTI */

.doc-card {
    width: 100%;
}

.doc-row {
    display: grid;
    grid-template-columns: 32% 1fr;
    column-gap: 1.2rem;
    border-left: 1px solid #1d1d1d;
    border-bottom: 1px solid #1d1d1d;
    padding: 0.65rem;
    margin-bottom: 1.2rem;
    max-width: 92%;
}

.doc-label {
    font-family: "IBM Plex Mono", monospace;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.35;
}

.doc-value,
.doc-value a {
    font-family: "IBM Plex Mono", monospace;
    font-size: 0.95rem;
    line-height: 1.45;
    color: #1d1d1d;
    text-decoration: none;
}

.doc-value a:hover {
    opacity: 0.7;
}


/* TARJETA DOCUMENTO CON DESCRIPCIÓN */

.doc-card-documento .doc-row {
    width: 97.5%;
    max-width: 97.5%;
    box-sizing: border-box;
}

.doc-card-documento .doc-label,
.doc-card-documento .doc-value {
    min-width: 0;
}

.doc-card-documento .doc-value {
    overflow-wrap: break-word;
    word-break: normal;
}

/* CONTRATTI */

.doc-card-contratti .doc-row {
    grid-template-columns: 44% 1fr;
}


/* MOBILE */

@media (max-width: 767px) {

    .doc-row,
    .doc-card-contratti .doc-row {
        grid-template-columns: 1fr !important;
        max-width: 100%;
        padding: 1rem;
        row-gap: 0.5rem;
    }

}


/* IMAGEN HOVER */

.img-hover {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
}

.img-hover img {
    display: block;
    width: 100%;
    height: auto;
    filter: grayscale(100%);
    transition: filter 0.45s ease;
}

.img-hover:hover img {
    filter: grayscale(0%);
}


/* BALANCE DE TEXTOS */

h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title {
    text-wrap: balance;
}

p,
.elementor-widget-text-editor .elementor-widget-container {
    text-wrap: balance;
}


/* ENLACES DE LAS TARJETAS */

.doc-card .doc-value a,
.doc-card .doc-value a:visited {
    color: #79764D;
    text-decoration: underline;
}

.doc-card .doc-value a:hover {
    color: #79764D;
    text-decoration: underline;
    opacity: 0.7;
}


/* MENSAJE CUANDO NO HAY DOCUMENTOS */

.documenti-empty {
    font-family: "IBM Plex Mono", monospace;
    font-size: 1.625rem;
    font-weight: 400;
    line-height: 1.35;
    letter-spacing: 0.01em;
    color: #1d1d1d;
}

/* MOVIMIENTO FLECHAS LINKS */

a:hover .arrow { transform: translateX(4px); transition: transform .18s ease-out; }

/* SUBMENÚS DESKTOP HACIA LA IZQUIERDA */

@media (min-width: 1025px) {

    /* PRIMER NIVEL */
    .gal-menu > .elementor-widget-container
    .elementor-nav-menu > .menu-item-has-children > .sub-menu {
        left: auto !important;
        right: calc(100% + 1rem) !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        width: max-content !important;
        min-width: max-content !important;
        max-width: none !important;
    }

    /* SEGUNDO NIVEL */
    .gal-menu .sub-menu .menu-item-has-children > .sub-menu {
        left: auto !important;
        right: calc(100% + 0.5rem) !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        width: max-content !important;
        min-width: max-content !important;
        max-width: none !important;
    }

    /* EVITAR QUE LOS TEXTOS SE PARTAN */
    .gal-menu .sub-menu > li > a {
        white-space: nowrap !important;
    }
}

/* REDES SOCIALES DENTRO DEL MENÚ */


/* MENÚ: PERMITE QUE LAS REDES COMPARTAN LA ÚLTIMA FILA */

.gal-menu .elementor-nav-menu {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
}


/* TODOS LOS ÍTEMS NORMALES OCUPAN UNA FILA COMPLETA */

.gal-menu .elementor-nav-menu > li:not(.menu-facebook):not(.menu-instagram) {
    width: 100% !important;
    flex: 0 0 100% !important;
}


/* FACEBOOK E INSTAGRAM */

.gal-menu .menu-facebook,
.gal-menu .menu-instagram {
    width: 20px !important;
    min-width: 20px !important;
    max-width: 20px !important;

    flex: 0 0 20px !important;

    margin: 0 !important;
    padding: 0 !important;

    margin-top: 0.3rem !important;
}


/* SEPARACIÓN ENTRE LOS DOS */

.gal-menu .menu-instagram {
    margin-left: 0.3rem !important;
}


/* ENLACES */

.gal-menu .menu-facebook > a,
.gal-menu .menu-instagram > a {
    font-size: 0 !important;

    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;

    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;

    display: block !important;

    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 20px 20px !important;
}


/* FACEBOOK - ICONO ORIGINAL DE ELEMENTOR */

.gal-menu .menu-facebook > a {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23402E1F' d='M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z'/%3E%3C/svg%3E") !important;
}


/* INSTAGRAM - ICONO ORIGINAL DE ELEMENTOR */

.gal-menu .menu-instagram > a {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23402E1F' d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'/%3E%3C/svg%3E") !important;
}


/* HEADER MÓVIL - ALINEAR DROPDOWN SOLO EN MÓVIL */

@media (max-width: 767px) {

    .header-mobile-gal .gal-menu nav.elementor-nav-menu--dropdown {
        margin-left: -3.75rem !important;
    }

}


/* HEADER TABLET — POSICIÓN DEL MENÚ DESPLEGADO */

@media (min-width: 768px) and (max-width: 1024px) {

    .header-mobile-gal .gal-menu .elementor-nav-menu--dropdown {
        margin-top: 3rem !important;
        margin-left: -3.75rem !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

}

/* HEADER TABLET — SUBMENÚS HACIA ABAJO */

@media (min-width: 768px) and (max-width: 1024px) {

    .header-mobile-gal .gal-menu .sub-menu {
        position: static !important;
        left: auto !important;
        right: auto !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        transform: none !important;
        box-sizing: border-box !important;
    }

}

/* HEADER TABLET — ESPACIADO SUBMENÚ IGUAL AL MENÚ PRINCIPAL */

@media (min-width: 768px) and (max-width: 1024px) {

    .header-mobile-gal .gal-menu .sub-menu {
        margin-top: 0.3rem !important;
        padding: 0 !important;
    }

    .header-mobile-gal .gal-menu .sub-menu > li {
        margin: 0 !important;
        padding: 0 !important;
        min-height: 0 !important;
    }

    .header-mobile-gal .gal-menu .sub-menu > li > a {
        margin: 0 !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
        min-height: 0 !important;
        line-height: inherit !important;
    }

}

/* HEADER TABLET — ALINEAR REDES CON LOS ÍTEMS DEL MENÚ */

@media (min-width: 768px) and (max-width: 1024px) {

    .header-mobile-gal .gal-menu .menu-facebook {
        margin-left: 1.25rem !important;
    }

}

/* VIDEO HOME - ELIMINAR PADDING LATERAL EN TABLET */

@media (min-width: 768px) and (max-width: 1024px) {
    .video-senza-padding-tablet {
        --padding-inline-start: 0px !important;
        --padding-inline-end: 0px !important;
    }
}

/* ELIMINAR PADDING LATERAL DE CONTENEDORES EN TABLET */

@media (min-width: 768px) and (max-width: 1024px) {
    .e-con {
        --padding-inline-start: 0px !important;
        --padding-inline-end: 0px !important;
    }
}

/* COLOR TEXTOS Y LINKS · TARJETAS DOCUMENTI */

.doc-card,
.doc-card .doc-label,
.doc-card .doc-value {
    color: #402E1F !important;
}

.doc-card a,
.doc-card a:visited {
    color: #402E1F !important;
}

.doc-card a:hover,
.doc-card a:focus {
    color: #63320C !important;
}

/* =========================================================
   OCULTAR SHARE + RELATED SOLO EN AVVISI Y BANDI
   ========================================================= */

/* AVVISI */
.elementor-widget-theme-post-content.single-avvisi .sharedaddy,
.elementor-widget-theme-post-content.single-avvisi .sd-sharing-enabled,
.elementor-widget-theme-post-content.single-avvisi #jp-relatedposts,
.elementor-widget-theme-post-content.single-avvisi .jp-relatedposts,

/* BANDI */
.elementor-widget-theme-post-content.single-bandi .sharedaddy,
.elementor-widget-theme-post-content.single-bandi .sd-sharing-enabled,
.elementor-widget-theme-post-content.single-bandi #jp-relatedposts,
.elementor-widget-theme-post-content.single-bandi .jp-relatedposts {
    display: none !important;
}

/* =========================================================
   REDES SOCIALES · ICONOS
   Marrón por defecto + crema en HEADER BLANCO
   ========================================================= */

/* FACEBOOK - MARRÓN POR DEFECTO */

.gal-menu .menu-facebook > a {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23402E1F' d='M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z'/%3E%3C/svg%3E") !important;
}


/* INSTAGRAM - MARRÓN POR DEFECTO */

.gal-menu .menu-instagram > a {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23402E1F' d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'/%3E%3C/svg%3E") !important;
}


/* =========================================================
   HEADER BLANCO · ICONOS CREMA #FFFCF9
   ========================================================= */

/* FACEBOOK */

.header-blanco-gal .gal-menu .menu-facebook > a {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23FFFCF9' d='M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z'/%3E%3C/svg%3E") !important;
}


/* INSTAGRAM */

.header-blanco-gal .gal-menu .menu-instagram > a {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23FFFCF9' d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'/%3E%3C/svg%3E") !important;
}

/* =========================================================
   HEADER BLANCO · HOVER MENÚ Y SUBMENÚS
   Semibold + opacidad
   ========================================================= */

.header-blanco-gal .gal-menu .elementor-nav-menu > li:not(.menu-facebook):not(.menu-instagram) > a:hover,
.header-blanco-gal .gal-menu .sub-menu > li > a:hover,
.header-blanco-gal .gal-menu .sub-menu > li > a:focus {
    color: #FFFCF9 !important;
    text-decoration: none !important;
    opacity: 0.5;
    font-weight: 600 !important;
    transition: opacity 0.2s ease;
}

/* OCULTAR ICONO DE AUTOCOMPLETADO EN CAMPOS DEL FORMULARIO */

input::-webkit-contacts-auto-fill-button,
input::-webkit-credentials-auto-fill-button {
    visibility: hidden !important;
    display: none !important;
    pointer-events: none !important;
    position: absolute !important;
    right: 0 !important;
}

/* IMÁGENES 3:2 · BANDI / AVVISI / AGGIORNAMENTI */

.loop-img-3-2 img {
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    display: block;
}

