.montserrat-title {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 100;
  font-style: normal;
}

@media (min-width: 768px) {
	.vc_row:has(.gp-wrap) + .vc_row-full-width.vc_clearfix + .vc_row.vc_custom_kmtD100 {
	margin-top: 0 !important;
}
}
body.page-id-34604 .mx-preview-page,
body.page-id-35725 .mx-preview-page,
body.page-id-35727 .mx-preview-page,
body.page-id-35729 .mx-preview-page {
	padding-top: 0 !important;
}

body.page-id-34604 .kt-preview-page,
body.page-id-35725 .kt-preview-page,
body.page-id-35727 .kt-preview-page,
body.page-id-35729 .kt-preview-page {
	padding-top: 0 !important;
}

/* ======= FIX: titolo hero Serie L (allineamento + dimensione) su mobile (page-id 33946) ======= */
@media (max-width: 767px) {
    body.page-id-33946 #post-33946 .title-h1 {
        text-align: center !important;
        font-size: 50px !important;
        line-height: 60px !important;
    }
}



body.page-id-34604 .ds-root,
body.page-id-34604 .dt-root,
body.page-id-34604 .wg-root,
body.page-id-35725 .ds-root,
body.page-id-35725 .dt-root,
body.page-id-35725 .wg-root,
body.page-id-35727 .ds-root,
body.page-id-35727 .dt-root,
body.page-id-35727 .wg-root,
body.page-id-35729 .ds-root,
body.page-id-35729 .dt-root,
body.page-id-35729 .wg-root {
	margin-top: 0 !important;
}

body.page-id-34604 .vc_custom_1786023658329 .thegem-te-heading ~ .wpb_text_column {
	margin-top: 0 !important;
}

body.page-id-34604 .vc_custom_1786023658329 .justify-text {
	padding-top: 0 !important;
}

@media (max-width: 767px) {
	.vc_row:has(.gp-wrap) + .vc_row-full-width.vc_clearfix + .vc_row.vc_custom_kmtD100 {
		margin-top: 90px !important;
		
	}
}

@media (max-width: 767px) {
	html body.page-id-34604 .vc_row.vc_row.vc_row:has(.vc_custom_1784817970132),
	html body.page-id-35725 .vc_row.vc_row.vc_row:has(.vc_custom_1784817970132),
	html body.page-id-35727 .vc_row.vc_row.vc_row:has(.vc_custom_1784817970132),
	html body.page-id-35729 .vc_row.vc_row.vc_row:has(.vc_custom_1784817970132) {
		margin-top: 16px !important;
	}
	body.page-id-34604 .vc_custom_1784817970132,
	body.page-id-35725 .vc_custom_1784817970132,
	body.page-id-35727 .vc_custom_1784817970132,
	body.page-id-35729 .vc_custom_1784817970132 {
		padding-top: 15px !important;
		padding-bottom: 15px !important;
	}
	html body.page-id-34604 .vc_row.vc_row.vc_row.vc_custom_1786023658329,
	html body.page-id-35725 .vc_row.vc_row.vc_row.vc_custom_1781797150525,
	html body.page-id-35727 .vc_row.vc_row.vc_row.vc_custom_1781797150525,
	html body.page-id-35729 .vc_row.vc_row.vc_row.vc_custom_1781797150525 {
		margin-top: 16px !important;
	}
}

@media (max-width: 767px) {
	body.page-id-34604 .vc_custom_kmtD000 {
		font-size: 34px !important;
		line-height: 1.3 !important;
		padding-left: 5% !important;
		padding-right: 5% !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 767px) {
	body.page-id-34604 .vc_custom_1786025820430 .thegem-te-heading {
		margin-top: 113px !important;
	}
}

@media (max-width: 767px) {
	body.page-id-35725 .vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952,
	body.page-id-35727 .vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952,
	body.page-id-35729 .vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952.vc_custom_1784820093952 {
		margin-top: 40px !important;
	}
}

@media (max-width: 767px) {
	body.page-id-35725 .vc_custom_1784819466600,
	body.page-id-35727 .vc_custom_1784819466600,
	body.page-id-35729 .vc_custom_1784819466600 {
		font-size: 34px !important;
		line-height: 1.3 !important;
		padding-left: 5% !important;
		padding-right: 5% !important;
		box-sizing: border-box !important;
	}
}

body.page-id-35725 .vc_custom_1781797150525 .thegem-te-heading ~ .wpb_text_column,
body.page-id-35727 .vc_custom_1781797150525 .thegem-te-heading ~ .wpb_text_column,
body.page-id-35729 .vc_custom_1781797150525 .thegem-te-heading ~ .wpb_text_column {
	margin-top: 0 !important;
}

body.page-id-35725 .title-h2,
body.page-id-35727 .title-h2,
body.page-id-35729 .title-h2 {
	padding-top: clamp(40px, 6vw, 90px) !important;
	padding-bottom: clamp(28px, 3vw, 45px) !important;
}

@media (min-width: 1024px) {
	body.page-id-35725 .vc_custom_1783582760279 .title-xlarge,
	body.page-id-35727 .vc_custom_1783582760279 .title-xlarge,
	body.page-id-35729 .vc_custom_1783582760279 .title-xlarge,
	body.page-id-35725 .vc_custom_1784817970132.title-xlarge,
	body.page-id-35727 .vc_custom_1784817970132.title-xlarge,
	body.page-id-35729 .vc_custom_1784817970132.title-xlarge {
		font-size: 100px !important;
		line-height: 108px !important;
	}
}
body.page-id-35725 .vc_custom_1783582760279 .title-xlarge span,
body.page-id-35727 .vc_custom_1783582760279 .title-xlarge span,
body.page-id-35729 .vc_custom_1783582760279 .title-xlarge span,
body.page-id-35725 .vc_custom_1784817970132.title-xlarge span,
body.page-id-35727 .vc_custom_1784817970132.title-xlarge span,
body.page-id-35729 .vc_custom_1784817970132.title-xlarge span {
	overflow-wrap: break-word !important;
}

@media (max-width: 767px) {
	body.page-id-35725 .vc_custom_1784820093952,
	body.page-id-35727 .vc_custom_1784820093952,
	body.page-id-35729 .vc_custom_1784820093952 {
		padding-top: 0 !important;
	}
}

@media (max-width: 767px) {
	body.page-id-35725 .vc_custom_1781796286877,
	body.page-id-35727 .vc_custom_1781796286877,
	body.page-id-35729 .vc_custom_1781796286877 {
		padding-top: 0 !important;
	}
}

@media (max-width: 767px) {
	body.page-id-35725 .vc_custom_1782584962946,
	body.page-id-35727 .vc_custom_1782584962946,
	body.page-id-35729 .vc_custom_1782584962946 {
		padding-top: 0 !important;
	}
}

/* Regola generale: nelle righe a 2 colonne con un titolo grande (title-xlarge)
   il contenuto della colonna affiancata deve essere centrato verticalmente
   rispetto all'altezza del titolo, su desktop */
@media (min-width: 1024px) {
	.vc_row:has(> .vc_column_container .title-xlarge) {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
	}
}

/* Serie G EN/ES/FR: titoli hero (title-xlarge) sforano il box su desktop
   con traduzioni più lunghe dell'italiano - riduzione font-size come fatto su Serie D */
@media (min-width: 1024px) {
	body.page-id-35679 .vc_row:has(> .vc_column_container .title-xlarge) .title-xlarge,
	body.page-id-35680 .vc_row:has(> .vc_column_container .title-xlarge) .title-xlarge,
	body.page-id-35681 .vc_row:has(> .vc_column_container .title-xlarge) .title-xlarge {
		font-size: 95px !important;
		line-height: 102px !important;
	}
}
body.page-id-35679 .vc_row:has(> .vc_column_container .title-xlarge) .title-xlarge span,
body.page-id-35680 .vc_row:has(> .vc_column_container .title-xlarge) .title-xlarge span,
body.page-id-35681 .vc_row:has(> .vc_column_container .title-xlarge) .title-xlarge span {
	overflow-wrap: break-word !important;
}

@media (max-width: 767px) {
	/* spazio tra il testo "La nostra rete internazionale..." e la mappa sottostante */
	html body.page-id-212 .vc_row.wpb_row.vc_custom_1779357223350 {
		margin-bottom: 24px !important;
	}
	/* spaziatura mancante nei titoli "Una presenza diretta..." e "Un network globale..." */
	body.page-id-212 .title-h2 {
		padding-top: 40px !important;
		padding-bottom: 36px !important;
	}
	/* meno margine superiore sul titolo "Un network globale...": la sua riga ha strati extra (wrapper heading + colonna) che il primo titolo non ha, quindi li azzeriamo per allinearlo allo stesso spazio totale del primo titolo */
	body.page-id-212 .vc_custom_1785942388005 .thegem-te-heading {
		margin-top: 0 !important;
	}
	body.page-id-212 .vc_custom_1785942388005 .vc_column-inner {
		padding-top: 0 !important;
	}
	/* sezione iniziale: nascondere il tag, centrare il titolo, giustificare i testi */
	body.page-id-212 .vc_custom_1779357223350 .title-h6 {
		display: none !important;
	}
	body.page-id-212 .vc_custom_1779357223350 .wpb_text_column {
		margin-bottom: 0 !important;
	}
	body.page-id-212 .vc_custom_1779357223350 .thegem-te-heading:has(.title-h1) {
		margin-top: 0 !important;
	}
	body.page-id-212 .vc_custom_1779357223350 .title-h1 {
		text-align: center !important;
	}
	body.page-id-212 .vc_custom_1779357223350 .title-h5 {
		text-align: justify !important;
	}
}

/* ======= RETE VENDITA MOBILE: replica fix IT su EN/ES/FR (page-id 35639/35640/35641) ======= */
@media (max-width: 767px) {
    /* spazio tra il testo "rete internazionale..." e la mappa sottostante */
    body.page-id-35639 .vc_row.wpb_row.vc_custom_1779357223350,
    body.page-id-35640 .vc_row.wpb_row.vc_custom_1779357223350,
    body.page-id-35641 .vc_row.wpb_row.vc_custom_1779357223350 {
        margin-bottom: 24px !important;
    }
    /* spaziatura titoli title-h2 */
    body.page-id-35639 .title-h2,
    body.page-id-35640 .title-h2,
    body.page-id-35641 .title-h2 {
        padding-top: 40px !important;
        padding-bottom: 36px !important;
    }
    /* azzeramento strati extra sul secondo titolo (stessa quirk di IT) */
    body.page-id-35639 .vc_custom_1779357703931 .thegem-te-heading,
    body.page-id-35640 .vc_custom_1779357703931 .thegem-te-heading,
    body.page-id-35641 .vc_custom_1779357703931 .thegem-te-heading {
        margin-top: 0 !important;
    }
    body.page-id-35639 .vc_custom_1779357703931 .vc_column-inner,
    body.page-id-35640 .vc_custom_1779357703931 .vc_column-inner,
    body.page-id-35641 .vc_custom_1779357703931 .vc_column-inner {
        padding-top: 0 !important;
    }
    /* sezione iniziale: nascondere il tag, centrare il titolo, giustificare i testi */
    body.page-id-35639 .vc_custom_1779357223350 .title-h6,
    body.page-id-35640 .vc_custom_1779357223350 .title-h6,
    body.page-id-35641 .vc_custom_1779357223350 .title-h6 {
        display: none !important;
    }
    body.page-id-35639 .vc_custom_1779357223350 .wpb_text_column,
    body.page-id-35640 .vc_custom_1779357223350 .wpb_text_column,
    body.page-id-35641 .vc_custom_1779357223350 .wpb_text_column {
        margin-bottom: 0 !important;
    }
    body.page-id-35639 .vc_custom_1779357223350 .thegem-te-heading:has(.title-h1),
    body.page-id-35640 .vc_custom_1779357223350 .thegem-te-heading:has(.title-h1),
    body.page-id-35641 .vc_custom_1779357223350 .thegem-te-heading:has(.title-h1) {
        margin-top: 0 !important;
    }
    body.page-id-35639 .vc_custom_1779357223350 .title-h1,
    body.page-id-35640 .vc_custom_1779357223350 .title-h1,
    body.page-id-35641 .vc_custom_1779357223350 .title-h1 {
        text-align: center !important;
    }
    body.page-id-35639 .vc_custom_1779357223350 .title-h5,
    body.page-id-35640 .vc_custom_1779357223350 .title-h5,
    body.page-id-35641 .vc_custom_1779357223350 .title-h5 {
        text-align: justify !important;
    }
}

/* ======= FIX: margine inferiore + colore titolo hero Serie L (page-id 33946); spazio superiore ridotto ~1/3 ======= */
@media (max-width: 767px) {
    body.page-id-33946 #post-33946 .vc_row.vc_row-o-equal-height.vc_row-flex {
        margin-top: 3px !important;
    }
    body.page-id-33946 #post-33946 .vc_row.vc_row-o-equal-height.vc_row-flex .vc_col-sm-6 > .vc_column-inner {
        margin-bottom: 30px !important;
    }
    body.page-id-33946 #post-33946 .title-h1 {
        color: #5C6569 !important;
    }
}



/* ======= FIX: margine superiore eccessivo "Scopri la Serie L." + video, per allinearlo a Serie D (page-id 33946) ======= */
@media (max-width: 767px) {
    body.page-id-33946 #post-33946 .vc_row:has(.vc_custom_1784817988860) {
        margin-top: 5px !important;
    }
}

/* FIX: sezione "Il cuore tecnologico" (widget gt-root, page-id 34355) puo restare invisibile se l'animazione di comparsa (gtFade) si blocca (tab in background, risparmio energia, reduce motion, ecc.) - forziamo la visibilita a prescindere dallo stato dell'animazione */
body.page-id-34355 .gt-section.on {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}


/* FIX: paragrafo intro vuoto ".sla-intro" in "Infinite applicazioni." (page-id 33946) aggiunge ~39px di spazio extra (margin + gap flex) prima delle card, assente in "Accessori disponibili" - lo eliminiamo quando è vuoto */
body.page-id-33946 .sla-intro:empty {
    display: none !important;
}


/* FIX: ridurre leggermente il margine superiore del titolo 'Infinite applicazioni.' su mobile (page-id 33946) */
@media (max-width: 767px) {
    body.page-id-33946 .vc_custom_1786617863146 {
        margin-top: 10px !important;
    }
}


/* FIX: ridurre ulteriormente lo spazio tra titolo e video in 'Scopri la Serie L.' (page-id 33946) - il padding-top della colonna video era 20px, causa reale del gap (non il margine della riga); esteso fino a tablet (1024px) perche' il layout resta impilato oltre i 767px */
@media (max-width: 767px) {
    body.page-id-33946 #post-33946 .vc_row:has(.vc_custom_1784817988860) .vc_col-sm-6:last-child .vc_column-inner {
        padding-top: 6px !important;
    }
}


/* FIX: dopo la sostituzione del blocco 'Scopri la Serie L' (copiato da G), il margine superiore nativo della riga (40px) non era piu' coperto dalla vecchia regola (basata su .vc_custom_1784817988860, ora inesistente). Selettore stabile: unico .rounded-video nella pagina. Aumentato del 10% (40px -> 44px) su richiesta esplicita */
@media (max-width: 767px) {
    body.page-id-33946 #post-33946 .vc_row:has(.rounded-video) {
        margin-top: 53px !important;
    }
}


/* FIX: sezione 'Recupero calcestruzzo residuo / Lo scarto diventa profitto.' (widget slsc-root, page-id 33946) - su mobile: nascondere l'eyebrow, rimuovere gli <br> forzati e centrare il titolo su una sola riga */
@media (max-width: 767px) {
    body.page-id-33946 .slsc-eyebrow {
        display: none !important;
    }
    body.page-id-33946 .slsc-headline br {
        display: none !important;
    }
    body.page-id-33946 .slsc-headline {
        text-align: center !important;
        font-size: clamp(22px, 7.5vw, 32px) !important;
        white-space: normal !important;
    }
}


/* ========= REPLICA FIX Serie L (EN, page-id 35764) - stesse modifiche fatte su IT (page-id 33946) ========= */
@media (max-width: 767px) {
    body.page-id-35764 #post-35764 .title-h1 {
        text-align: center !important;
        font-size: 50px !important;
        line-height: 60px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35764 #post-35764 .vc_row.vc_row-o-equal-height.vc_row-flex {
        margin-top: 3px !important;
    }
    body.page-id-35764 #post-35764 .vc_row.vc_row-o-equal-height.vc_row-flex .vc_col-sm-6 > .vc_column-inner {
        margin-bottom: 30px !important;
    }
    body.page-id-35764 #post-35764 .title-h1 {
        color: #5C6569 !important;
    }
}

body.page-id-35764 .sla-intro:empty {
    display: none !important;
}

@media (max-width: 767px) {
    body.page-id-35764 .vc_custom_1786618086941 {
        margin-top: 10px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35764 #post-35764 .vc_row:has(.rounded-video) {
        margin-top: 53px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35764 .slsc-eyebrow {
        display: none !important;
    }
    body.page-id-35764 .slsc-headline br {
        display: none !important;
    }
    body.page-id-35764 .slsc-headline {
        text-align: center !important;
        font-size: clamp(22px, 7.5vw, 32px) !important;
        white-space: normal !important;
    }
}


/* ========= REPLICA FIX Serie L (ES, page-id 35766) - stesse modifiche fatte su IT (page-id 33946) ========= */
@media (max-width: 767px) {
    body.page-id-35766 #post-35766 .title-h1 {
        text-align: center !important;
        font-size: 50px !important;
        line-height: 60px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35766 #post-35766 .vc_row.vc_row-o-equal-height.vc_row-flex {
        margin-top: 3px !important;
    }
    body.page-id-35766 #post-35766 .vc_row.vc_row-o-equal-height.vc_row-flex .vc_col-sm-6 > .vc_column-inner {
        margin-bottom: 30px !important;
    }
    body.page-id-35766 #post-35766 .title-h1 {
        color: #5C6569 !important;
    }
}

body.page-id-35766 .sla-intro:empty {
    display: none !important;
}

@media (max-width: 767px) {
    body.page-id-35766 .vc_custom_1786618268473 {
        margin-top: 10px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35766 #post-35766 .vc_row:has(.rounded-video) {
        margin-top: 53px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35766 .slsc-eyebrow {
        display: none !important;
    }
    body.page-id-35766 .slsc-headline br {
        display: none !important;
    }
    body.page-id-35766 .slsc-headline {
        text-align: center !important;
        font-size: clamp(22px, 7.5vw, 32px) !important;
        white-space: normal !important;
    }
}


/* ========= REPLICA FIX Serie L (FR, page-id 35768) - stesse modifiche fatte su IT (page-id 33946) ========= */
@media (max-width: 767px) {
    body.page-id-35768 #post-35768 .title-h1 {
        text-align: center !important;
        font-size: 50px !important;
        line-height: 60px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35768 #post-35768 .vc_row.vc_row-o-equal-height.vc_row-flex {
        margin-top: 3px !important;
    }
    body.page-id-35768 #post-35768 .vc_row.vc_row-o-equal-height.vc_row-flex .vc_col-sm-6 > .vc_column-inner {
        margin-bottom: 30px !important;
    }
    body.page-id-35768 #post-35768 .title-h1 {
        color: #5C6569 !important;
    }
}

body.page-id-35768 .sla-intro:empty {
    display: none !important;
}

@media (max-width: 767px) {
    body.page-id-35768 .vc_custom_1786618912578 {
        margin-top: 10px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35768 #post-35768 .vc_row:has(.rounded-video) {
        margin-top: 53px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-35768 .slsc-eyebrow {
        display: none !important;
    }
    body.page-id-35768 .slsc-headline br {
        display: none !important;
    }
    body.page-id-35768 .slsc-headline {
        text-align: center !important;
        font-size: clamp(22px, 7.5vw, 32px) !important;
        white-space: normal !important;
    }
}



/* Chi siamo EN/ES/FR: titoli attaccati al contenuto sottostante, gap mancante (stesso fix di IT page-id-171) */
body.page-id-35628 #post-35628 .wpb-content-wrapper > div:nth-child(4) .title-h2,
body.page-id-35628 #post-35628 .wpb-content-wrapper > div:nth-child(7) .title-h2,
body.page-id-35628 #post-35628 .wpb-content-wrapper > div:nth-child(10) .title-h2,
body.page-id-35628 #post-35628 .wpb-content-wrapper > div:nth-child(17) .title-h2 {
  margin-bottom: 24px !important;
}

body.page-id-35629 #post-35629 .wpb-content-wrapper > div:nth-child(4) .title-h2,
body.page-id-35629 #post-35629 .wpb-content-wrapper > div:nth-child(7) .title-h2,
body.page-id-35629 #post-35629 .wpb-content-wrapper > div:nth-child(10) .title-h2,
body.page-id-35629 #post-35629 .wpb-content-wrapper > div:nth-child(17) .title-h2 {
  margin-bottom: 24px !important;
}

body.page-id-35630 #post-35630 .wpb-content-wrapper > div:nth-child(4) .title-h2,
body.page-id-35630 #post-35630 .wpb-content-wrapper > div:nth-child(7) .title-h2,
body.page-id-35630 #post-35630 .wpb-content-wrapper > div:nth-child(10) .title-h2,
body.page-id-35630 #post-35630 .wpb-content-wrapper > div:nth-child(17) .title-h2 {
  margin-bottom: 24px !important;
}


/* Chi Siamo IT: spaziatura uniforme tra le sezioni.
   Margini rimossi dalle righe, la spaziatura verticale e' gestita interamente dai titoli (.title-h2) */
body.page-id-171 #post-171 .wpb-content-wrapper > div.vc_row {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body.page-id-171 #post-171 .title-h2 {
  margin-top: 60px !important;
  margin-bottom: 24px !important;
}
body.page-id-171 #post-171 .wpb-content-wrapper > :first-child .title-h2 {
  margin-top: 0 !important;
}


/* ===== KIMERA - Contact form (kf-form) - GLOBAL, applies to every page (popup is shared site-wide) - v6 compact ===== */
.vc_custom_1784300427875{ background-color:#ffffff !important; }
.ctw-form-card{
  background-color:#ffffff !important;
  box-shadow:0 20px 50px rgba(20,20,20,0.10);
  border:1px solid #ececec;
}
[id^="thegem-popup-"] .kf-form,
[id^="thegem-popup-"] .kf-form *,
.ctw-form-card .kf-form,
.ctw-form-card .kf-form *{
  color:#161616;
}
.thegem-heading.title-h1,
.thegem-heading.title-h1 *{ color:#161616 !important; font-weight:700 !important; }
.thegem-heading.text-body,
.thegem-heading.text-body *{ color:#6b7075 !important; }

.kf-form{ display:block; margin-top:4px; }
.kf-section{ margin-bottom:18px; }
.kf-section:last-of-type{ margin-bottom:0; }
.kf-kicker{
  display:block; font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase;
  color:#a4aab0 !important; margin-bottom:8px;
}
.kf-row{ display:grid; gap:10px; }
.kf-row-2{ grid-template-columns:1fr 1fr; }
.kf-field{ margin-top:10px; }
.kf-row .kf-field{ margin-top:0; }
.kf-label{
  display:block; font-size:12px; font-weight:600; color:#3a3f44 !important; margin-bottom:4px;
}

.kf-input,
.kf-select,
.kf-textarea{
  width:100%; box-sizing:border-box; font-size:14px; font-family:inherit; line-height:1.3;
  background:#f6f7f8 !important; border:1px solid #e3e5e8 !important; color:#161616 !important;
  border-radius:10px; padding:10px 14px; transition:border-color .15s ease, background .15s ease;
}
.kf-input::placeholder,
.kf-textarea::placeholder{ color:#a3a8ad !important; opacity:1 !important; }
.kf-input:focus,
.kf-select:focus,
.kf-textarea:focus{ outline:none; border-color:#E2001A !important; background:#ffffff !important; }
.kf-textarea{ min-height:70px; resize:vertical; }

span[data-name="your-country"]{ position:relative; display:block; }
.kf-select{ appearance:none; -webkit-appearance:none; -moz-appearance:none; padding-right:36px; cursor:pointer; }
span[data-name="your-country"]::after{
  content:""; position:absolute; right:16px; top:50%; width:8px; height:8px;
  border-right:2px solid #6b7075; border-bottom:2px solid #6b7075;
  transform:translateY(-65%) rotate(45deg); pointer-events:none;
}

.kf-chips{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.kf-chips .kf-chip{
  display:flex; align-items:center; justify-content:center; text-align:center;
  min-height:40px; padding:9px 14px; border-radius:10px;
  background:#f6f7f8; border:1px solid #e3e5e8; color:#3a3f44;
  cursor:pointer; font-size:13px; user-select:none;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
.kf-chips .kf-chip:hover{ border-color:#d7dade; }
.kf-chips .kf-chip.active{
  background:#E2001A !important; border-color:#E2001A !important; color:#ffffff !important;
}

.kf-acceptance{ margin-top:16px; font-size:12px; }
.kf-acceptance,
.kf-acceptance *{ color:#6b7075 !important; }
.kf-acceptance a{ color:#E2001A !important; text-decoration:underline; }
.kf-acceptance input[type="checkbox"]{ margin-right:7px; accent-color:#E2001A; }

.wpcf7-not-valid-tip{ color:#E2001A !important; font-size:11px; margin-top:4px; }
.wpcf7-response-output{ border-radius:10px !important; }

.kf-form input.wpcf7-submit{
  display:block; width:100%; margin-top:18px;
  background:#E2001A !important; color:#ffffff !important; border:1px solid #E2001A !important;
  font-weight:600 !important; font-size:14px; padding:12px 20px; border-radius:10px;
  letter-spacing:.02em; cursor:pointer; transition:background .15s ease;
}
.kf-form input.wpcf7-submit:hover{ background:#b80014 !important; border-color:#b80014 !important; }

@media (max-width:600px){
  .kf-row-2{ grid-template-columns:1fr; }
  .kf-chips{ grid-template-columns:1fr; }
}


/* ===== KIMERA - Contact form (kf-form) - v7 patch: fix ctw-title/ctw-desc white-on-white + compact sizing (GLOBAL) ===== */
.ctw-form-card{ padding:30px 32px !important; }
.ctw-head{ margin-bottom:16px !important; }
.ctw-title{
  color:#161616 !important;
  font-size:24px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
}
.ctw-desc{
  color:#6b7075 !important;
  font-size:13px !important;
  line-height:1.4 !important;
}
.kf-form{ margin-top:2px !important; font-size:13px !important; }
.kf-section{ margin-bottom:14px !important; }
.kf-kicker{ margin-bottom:6px !important; font-size:10px !important; }
.kf-row{ gap:8px !important; }
.kf-field{ margin-top:8px !important; }
.kf-label{ margin-bottom:3px !important; font-size:11px !important; }
.kf-input, .kf-select, .kf-textarea{ padding:8px 12px !important; font-size:13px !important; border-radius:9px !important; }
.kf-textarea{ min-height:52px !important; }
.kf-chips{ gap:6px !important; }
.kf-chips .kf-chip{ min-height:34px !important; padding:7px 12px !important; font-size:12px !important; border-radius:9px !important; }
.kf-acceptance{ margin-top:12px !important; font-size:11px !important; }
.kf-form input.wpcf7-submit{ margin-top:14px !important; padding:10px 18px !important; font-size:13px !important; border-radius:9px !important; }


/* ===== KIMERA - Contact form - v8 patch: force popup row background white with higher specificity (WPBakery's own inline !important rule for this row loads AFTER customizer CSS in <head>, so a same-specificity rule loses the cascade tie; using a compound selector here to win regardless of source order) ===== */
.gem-popup .vc_custom_1784300427875{ background-color:#ffffff !important; background-image:none !important; }


/* ===== KIMERA - Contact form - v9 patch: bigger title + icon badge, fix invisible privacy checkbox, further compact fields to compensate ===== */
.ctw-title{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  font-size:30px !important;
}
.ctw-title::before{
  content:"";
  display:inline-block;
  flex:0 0 38px;
  width:38px; height:38px;
  border-radius:50%;
  background-color:#E2001A;
  background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size:18px 18px;
}
.ctw-head{ margin-bottom:14px !important; }
.ctw-desc{ font-size:12px !important; }

/* Compact further to offset bigger title */
.ctw-form-card{ padding:26px 28px !important; }
.kf-section{ margin-bottom:11px !important; }
.kf-field{ margin-top:6px !important; }
.kf-input, .kf-select, .kf-textarea{ padding:7px 11px !important; }
.kf-textarea{ min-height:42px !important; }
.kf-chips{ gap:5px !important; }
.kf-chips .kf-chip{ min-height:30px !important; padding:6px 10px !important; }
.kf-acceptance{ margin-top:10px !important; }
.kf-form input.wpcf7-submit{ margin-top:12px !important; padding:9px 18px !important; }

/* Fix invisible privacy checkbox (a site-wide reset sets appearance:none with a transparent-ish fill and no border, making it disappear on white) */
.kf-acceptance input[type="checkbox"]{
  -webkit-appearance:none !important;
  appearance:none !important;
  width:17px !important;
  height:17px !important;
  min-width:17px !important;
  border:1.5px solid #c7cbd0 !important;
  border-radius:4px !important;
  background-color:#ffffff !important;
  position:relative !important;
  cursor:pointer;
  vertical-align:middle;
  margin-right:2px;
}
.kf-acceptance input[type="checkbox"]:hover{ border-color:#E2001A !important; }
.kf-acceptance input[type="checkbox"]:checked{
  background-color:#E2001A !important;
  border-color:#E2001A !important;
}
.kf-acceptance input[type="checkbox"]:checked::after{
  content:"";
  position:absolute;
  left:5px; top:1px;
  width:4px; height:8px;
  border:solid #ffffff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}

@media (max-width:600px){
  .ctw-title{ font-size:24px !important; }
  .ctw-title::before{ flex-basis:30px; width:30px; height:30px; background-size:14px 14px; }
}


/* ===== KIMERA - Contact form - v10 patch: icon on the REAL popup heading (thegem-heading.title-h1 is a reused theme class, also used by the unrelated phone-number popup, so scoped strictly to this popup's ID), keep titles big, trim surrounding space to compensate, bigger static-section title too ===== */
#thegem-popup-1272438082329 .thegem-heading.title-h1{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  margin-bottom:12px !important;
}
#thegem-popup-1272438082329 .thegem-heading.title-h1::before{
  content:"";
  display:inline-block;
  flex:0 0 46px;
  width:46px; height:46px;
  border-radius:50%;
  background-color:#E2001A;
  background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size:22px 22px;
}
#thegem-popup-1272438082329 .thegem-heading.text-body{
  font-size:14px !important;
  margin-top:0 !important;
  margin-bottom:18px !important;
}
.gem-popup .vc_custom_1784300427875{ padding:32px 36px !important; }

/* Static in-page section: keep the title big too, trim the rest a bit more */
.ctw-title{ font-size:34px !important; gap:14px !important; }
.ctw-title::before{ flex-basis:44px; width:44px; height:44px; background-size:20px 20px; }
.ctw-head{ margin-bottom:12px !important; }

@media (max-width:600px){
  #thegem-popup-1272438082329 .thegem-heading.title-h1{ gap:10px !important; }
  #thegem-popup-1272438082329 .thegem-heading.title-h1::before{ flex-basis:34px; width:34px; height:34px; background-size:16px 16px; }
  .ctw-title{ font-size:26px !important; gap:10px !important; }
  .ctw-title::before{ flex-basis:32px; width:32px; height:32px; background-size:15px 15px; }
}


/* ===== KIMERA - Contact form - v11 patch: bigger subtitle text (was too small) on both popup and static section ===== */
#thegem-popup-1272438082329 .thegem-heading.text-body{ font-size:16px !important; line-height:1.5 !important; }
.ctw-desc{ font-size:15px !important; line-height:1.5 !important; }

@media (max-width:600px){
  #thegem-popup-1272438082329 .thegem-heading.text-body{ font-size:14px !important; }
  .ctw-desc{ font-size:13px !important; }
}


/* ===== KIMERA - Contact form - v12 patch: popup subtitle was centered in a fixed 500px box (theme default), misaligned with the left-aligned icon+title above; force full-width left align. Also bump title size slightly. ===== */
#thegem-popup-1272438082329 .thegem-heading.text-body{
  text-align:left !important;
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  font-size:17px !important;
}
#thegem-popup-1272438082329 .thegem-heading.title-h1{ font-size:64px !important; }
.ctw-title{ font-size:36px !important; }

@media (max-width:600px){
  #thegem-popup-1272438082329 .thegem-heading.title-h1{ font-size:32px !important; }
  .ctw-title{ font-size:28px !important; }
}


/* ===== KIMERA - Contact form - v13 patch: fix privacy checkbox stretched/misshapen. Root cause: a generic rule ".wpcf7-form input:not(.gem-button-wpcf-custom)" adds padding-right:40px (meant for text-field validation icons) which also matches the checkbox and was never zeroed out, forcing the border-box to stretch sideways to fit the padding, making it a wide rectangle instead of a square with an off-center checkmark. ===== */
.kf-acceptance input[type="checkbox"]{
  padding:0 !important;
  min-width:17px !important;
  max-width:17px !important;
  flex-shrink:0 !important;
}


/* ===== KIMERA - Contact form - v14 patch: privacy checkbox still invisible on the STATIC in-page section (e.g. /contatti/, G440 in-page). Root cause: a separate, pre-existing stylesheet has "body .ctw-wrap .wpcf7-acceptance input[type=checkbox]" with higher specificity (3 classes+attr) than my ".kf-acceptance input[type=checkbox]" (2 classes+attr) AND it loads after my customizer CSS, so it always won there (this selector doesn't exist inside the popup, which is why the popup version looked fine). Re-declaring with higher specificity (adds .ctw-form-card + .ctw-wrap ancestors) to beat it everywhere. ===== */
.ctw-form-card .ctw-wrap .kf-acceptance input[type="checkbox"],
body .ctw-wrap .kf-acceptance input[type="checkbox"]{
  -webkit-appearance:none !important;
  appearance:none !important;
  width:17px !important;
  height:17px !important;
  min-width:17px !important;
  max-width:17px !important;
  padding:0 !important;
  flex-shrink:0 !important;
  border:1.5px solid #c7cbd0 !important;
  border-radius:4px !important;
  background-color:#ffffff !important;
  position:relative !important;
  cursor:pointer;
  vertical-align:middle;
  margin-right:2px;
}
.ctw-form-card .ctw-wrap .kf-acceptance input[type="checkbox"]:hover,
body .ctw-wrap .kf-acceptance input[type="checkbox"]:hover{ border-color:#E2001A !important; }
.ctw-form-card .ctw-wrap .kf-acceptance input[type="checkbox"]:checked,
body .ctw-wrap .kf-acceptance input[type="checkbox"]:checked{
  background-color:#E2001A !important;
  border-color:#E2001A !important;
}
.ctw-form-card .ctw-wrap .kf-acceptance input[type="checkbox"]:checked::after,
body .ctw-wrap .kf-acceptance input[type="checkbox"]:checked::after{
  content:"";
  position:absolute;
  left:5px; top:1px;
  width:4px; height:8px;
  border:solid #ffffff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}


/* ===== KIMERA - Contact form - v15 patch: v14 selector tied specificity with the competing rule (both 3 classes+attr) and lost since the competing stylesheet loads even later (likely footer-injected). Deliberately exceeding specificity this time (repeating .ctw-wrap) so it wins on specificity alone, regardless of load order. ===== */
body .ctw-wrap.ctw-wrap .kf-acceptance input[type="checkbox"]{
  -webkit-appearance:none !important;
  appearance:none !important;
  width:17px !important;
  height:17px !important;
  min-width:17px !important;
  max-width:17px !important;
  padding:0 !important;
  flex-shrink:0 !important;
  border:1.5px solid #c7cbd0 !important;
  border-radius:4px !important;
  background-color:#ffffff !important;
  position:relative !important;
  cursor:pointer;
  vertical-align:middle;
  margin-right:2px;
}
body .ctw-wrap.ctw-wrap .kf-acceptance input[type="checkbox"]:hover{ border-color:#E2001A !important; }
body .ctw-wrap.ctw-wrap .kf-acceptance input[type="checkbox"]:checked{
  background-color:#E2001A !important;
  border-color:#E2001A !important;
}
body .ctw-wrap.ctw-wrap .kf-acceptance input[type="checkbox"]:checked::after{
  content:"";
  position:absolute;
  left:5px; top:1px;
  width:4px; height:8px;
  border:solid #ffffff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}


/* Fix pulsante invio form contatti: era bianco su sfondo bianco (v2, specificita aumentata) */
body .ctw-wrap .wpcf7 form input[type="submit"].wpcf7-submit {
  background-color: #e2001a !important;
  border-color: #e2001a !important;
  color: #fff !important;
}
body .ctw-wrap .wpcf7 form input[type="submit"].wpcf7-submit:hover,
body .ctw-wrap .wpcf7 form input[type="submit"].wpcf7-submit:active,
body .ctw-wrap .wpcf7 form input[type="submit"].wpcf7-submit:focus {
  background-color: #b50015 !important;
  border-color: #b50015 !important;
  color: #fff !important;
}


/* Nascondi popup "Vuoi piu' informazioni?" sulle pagine macchina Serie G (G440/G740/G950/G980, IT/EN/ES/FR) */
body.page-id-33778 #kinfoRoot,
body.page-id-35688 #kinfoRoot,
body.page-id-35690 #kinfoRoot,
body.page-id-35692 #kinfoRoot,
body.page-id-35225 #kinfoRoot,
body.page-id-35698 #kinfoRoot,
body.page-id-35700 #kinfoRoot,
body.page-id-35702 #kinfoRoot,
body.page-id-35076 #kinfoRoot,
body.page-id-35707 #kinfoRoot,
body.page-id-35709 #kinfoRoot,
body.page-id-35711 #kinfoRoot,
body.page-id-35080 #kinfoRoot,
body.page-id-35716 #kinfoRoot,
body.page-id-35718 #kinfoRoot,
body.page-id-35720 #kinfoRoot {
  display: none !important;
}
/* Nascondi popup "Vuoi piu' informazioni?" sulle pagine macchina Serie D (D420/D720/D930, IT/EN/ES/FR) */
body.page-id-35095 #kinfoRoot,
body.page-id-35734 #kinfoRoot,
body.page-id-35736 #kinfoRoot,
body.page-id-35738 #kinfoRoot,
body.page-id-35104 #kinfoRoot,
body.page-id-35746 #kinfoRoot,
body.page-id-35748 #kinfoRoot,
body.page-id-35750 #kinfoRoot,
body.page-id-35106 #kinfoRoot,
body.page-id-35755 #kinfoRoot,
body.page-id-35757 #kinfoRoot,
body.page-id-35759 #kinfoRoot
{
  display: none !important;
}

/* Nascondi popup "Vuoi piu' informazioni?" su K24150 (IT/EN/ES/FR) */
body.page-id-35138 #kinfoRoot,
body.page-id-35666 #kinfoRoot,
body.page-id-35667 #kinfoRoot,
body.page-id-35668 #kinfoRoot
{
  display: none !important;
}


/* Nascondi popup "Vuoi piu' informazioni?" su Serie B (IT/EN/ES/FR) */
body.page-id-35118 #kinfoRoot,
body.page-id-35656 #kinfoRoot,
body.page-id-35657 #kinfoRoot,
body.page-id-35658 #kinfoRoot
{
  display: none !important;
}

/* Cookie banner: strisciolina sottile in basso, stile Kimera */
#hu-outer-wrapper{
  position:relative!important;
}
#hu.hu-position-bottom{
  left:50%!important;
  right:auto!important;
  bottom:14px!important;
  transform:translateX(-50%)!important;
  width:auto!important;
  max-width:96vw!important;
}
#hu .hu-inner{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding:8px 38px 8px 14px!important;
  background:#fff!important;
  border:1px solid #e4e4e4!important;
  border-radius:12px!important;
  box-shadow:0 4px 16px rgba(0,0,0,.12)!important;
  font-family:"Funnel Display",sans-serif!important;
  position:relative!important;
}

/* svuotiamo i wrapper intermedi per portare tutto su un'unica riga */
#hu-cookies,
#hu-cookies-head,
#hu-cookies-notice,
#hu-cookies-notice-message,
#hu-cookies-notice-consent,
#hu-cookies-footer,
.hu-footer-content{
  display:contents!important;
}
#hu-cookies-content{
  flex:1 1 100%!important;
  order:99!important;
}

.hu-site-url{display:none!important}
#hu-cookies-notice-message-body{display:none!important}
.hu-cookies-notice-about{display:none!important}

#hu-cookies-notice-message-heading{
  font-size:11px!important;
  line-height:1.3!important;
  margin:0!important;
  color:#232323!important;
  font-weight:600!important;
  flex:0 1 220px!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

#hu-cookies-notice-consent-choices{
  display:flex!important;
  gap:5px!important;
  margin:0!important;
  flex:0 0 auto!important;
}
.hu-radio-toggle{
  flex:0 0 auto!important;
  padding:5px 9px!important;
  font-size:10px!important;
  border-radius:7px!important;
  border:1px solid #d8d8d8!important;
  text-align:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
}
.hu-radio-toggle input:checked + *,
.hu-radio-toggle.hu-active,
.hu-radio-toggle[aria-checked="true"]{
  border-color:#e2001a!important;
  color:#e2001a!important;
}
.hu-toggle-switch,.hu-toggle-slider{display:none!important}
.hu-toggle-label{font-size:10px!important;margin:0!important}

#hu-cookies-save{
  background:#e2001a!important;
  border-color:#e2001a!important;
  color:#fff!important;
  font-size:10.5px!important;
  padding:6px 14px!important;
  border-radius:7px!important;
  width:auto!important;
  white-space:nowrap!important;
  box-shadow:none!important;
  flex:0 0 auto!important;
}
.hu-footer-actions{flex:0 0 auto!important;margin:0!important}

.hu-footer-links{
  position:static!important;
  display:flex!important;
  gap:8px!important;
  flex:0 0 auto!important;
  margin:0!important;
}
#hu-legal-links,#hu-policy-links{margin:0!important;display:flex!important;gap:8px!important}
.hu-footer-links .hu-btn-link{
  font-size:9px!important;
  color:#8a8a8a!important;
  padding:0!important;
  white-space:nowrap!important;
}
.hu-footer-links .hu-btn-link:hover{color:#e2001a!important}

/* icona chiusura: unica visibile, integrata a destra della strisciolina */
#hu-top{
  position:absolute!important;
  top:50%!important;
  right:12px!important;
  left:auto!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
  width:auto!important;
  height:auto!important;
  z-index:2!important;
}
.hu-notice-maximize,.hu-notice-download,.hu-notice-protection{display:none!important}
.hu-notice-close{
  position:static!important;
  width:14px!important;
  height:14px!important;
  padding:0!important;
  margin:0!important;
  opacity:.5!important;
}
.hu-notice-close:hover{opacity:1!important}
.hu-notice-close svg,.hu-notice-close i{width:10px!important;height:10px!important}

@media (max-width:900px){
  #hu .hu-inner{
    flex-wrap:wrap!important;
  }
  #hu-cookies-notice-message-heading{
    flex:1 1 100%!important;
    white-space:normal!important;
    text-overflow:clip!important;
  }
}
@media (max-width:640px){
  #hu.hu-position-bottom{
    left:8px!important;
    right:8px!important;
    transform:none!important;
    bottom:8px!important;
    max-width:calc(100% - 16px)!important;
  }
  #hu .hu-inner{
    border-radius:12px!important;
    padding:12px 34px 12px 14px!important;
  }
}

/* Fix larghezza footer-links (il plugin imposta width fisso che rompe il nowrap) */
.hu-footer-links{
  width:auto!important;
  max-width:none!important;
  justify-content:flex-start!important;
}
#hu-cookies-notice-message-heading{
  min-width:110px!important;
}

/* Nascondi icona decorativa del link "Personalizza" (sovrapposta al testo dopo il restyle) */
.hu-footer-links .hu-icon-container{
  display:none!important;
}
.hu-footer-links .hu-btn-link{
  padding-left:0!important;
}

/* Rimuovi l'effetto "scatola dentro la scatola": le scelte diventano testo semplice, non piu pillole bordate */
.hu-radio-toggle{
  border:none!important;
  background:transparent!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
}
.hu-toggle-label{
  color:#8a8a8a!important;
  font-weight:500!important;
}
.hu-radio-toggle input:checked + *,
.hu-radio-toggle.hu-active .hu-toggle-label,
.hu-radio-toggle[aria-checked="true"] .hu-toggle-label{
  color:#e2001a!important;
  font-weight:700!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}
#hu-cookies-notice-consent-choices{
  gap:12px!important;
}
#hu-cookies-notice-consent-choices::before{
  content:none!important;
}

/* Rimuovi lo sfondo/pillola residua dello span heading interno (causava il box grigio dentro la barra) */
.hu-toggle-heading{
  background:transparent!important;
  border-radius:0!important;
  padding:0!important;
  display:inline-flex!important;
}

/* Pannello "Personalizza" espanso: diventa una card centrata indipendente, non piu incastrata nella barra sottile */
#hu.hu-expanded{
  left:50%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  width:min(560px,92vw)!important;
  max-width:92vw!important;
  max-height:82vh!important;
}
#hu.hu-expanded .hu-inner{
  flex-direction:column!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  max-height:82vh!important;
  overflow-y:auto!important;
  padding:20px 22px 18px 22px!important;
  border-radius:14px!important;
}
#hu.hu-expanded #hu-cookies-notice-message-heading{
  white-space:normal!important;
  flex:1 1 100%!important;
  font-size:13.5px!important;
  line-height:1.4!important;
  padding-right:24px!important;
  min-width:0!important;
}
#hu.hu-expanded #hu-cookies-notice-consent-choices{
  flex:1 1 100%!important;
  order:1!important;
}
#hu.hu-expanded .hu-footer-actions{
  order:2!important;
}
#hu.hu-expanded .hu-footer-links{
  order:3!important;
}
#hu.hu-expanded #hu-cookies-content{
  flex:1 1 100%!important;
  width:100%!important;
  order:4!important;
  margin-top:16px!important;
  padding-top:14px!important;
  border-top:1px solid #eee!important;
}

/* Ripristina gli interruttori (switch) dentro il pannello dettagliato delle preferenze: la regola generale li aveva nascosti anche qui */
#hu-cookies-preferences-categories .hu-toggle-switch{
  display:inline-flex!important;
}
#hu-cookies-preferences-categories .hu-toggle-slider{
  display:block!important;
}

/* Sfondo scurito dietro al pannello espanso, per non farlo sembrare sovrapposto ad altri elementi della pagina */
#hu-outer-wrapper:has(#hu.hu-expanded)::before{
  content:"";
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  z-index:999998;
}

/* Fix: flex-wrap:wrap + flex-direction:column creava una seconda colonna fuori dalla card quando il contenuto era alto */
#hu.hu-expanded .hu-inner{
  flex-wrap:nowrap!important;
}
/* Fix: la griglia interna delle preferenze aveva colonne a larghezza fissa che sfondavano la card */
#hu-cookies-preferences,
#hu-cookies-preferences-text,
#hu-cookies-preferences-categories,
#hu-cookies-preferences-categories > *{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
#hu-cookies-preferences-categories{
  display:block!important;
}
#hu-cookies-preferences-categories .hu-checkbox-toggle,
#hu-cookies-preferences-categories [class*="hu-checkbox"]{
  display:block!important;
  width:100%!important;
  margin-bottom:14px!important;
}

/* Banner cookie disattivato temporaneamente su richiesta - da riprendere in seguito */
#hu-outer-wrapper{
  display:none!important;
}
/* Nota temporanea footer: sito in costruzione - rimuovere quando pronto */
.kf-root::after{
  content:"Sito attualmente in costruzione";
  display:block;
  width:100%;
  box-sizing:border-box;
  text-align:center;
  background:#f4f4f4;
  color:#8a8a8a;
  font-family:"Funnel Display",sans-serif;
  font-size:12px;
  font-weight:400;
  letter-spacing:.2px;
  padding:8px 16px;
  margin-top:18px;
  border-top:1px solid #e6e6e6;
}
