/* domini/gestionalesindacato.it/assets/pagine.css — le disposizioni proprie delle pagine di gestionalesindacato.it (2026-10-20).
   Si carica DOPO assets/n6.css del tema (n6_asset_pacchetto) e aggiunge solo classi col prefisso sd-: nessuna regola del
   tema viene riscritta. Dove un pezzo del tema finisce DENTRO un blocco sd- (briciole e pulsanti nell'apertura, domande
   numerate) la regola parte sempre da una classe sd-, quindi non tocca le altre pagine.
   Il segno del sindacato: apertura blu notte col TAGLIO OBLIQUO (non l'arco del tema), etichetta a TIMBRO, giallo dei
   banner per evidenziare, pastiglie blu notte con l'icona gialla. Colori dalle variabili del tema (--marca, --notte,
   --titolo, --tenue, --linea, --giallo...). Regole della casa: niente testo barrato, niente riquadri col bordo colorato
   a sinistra, comparse con .rv del tema, sotto i 900px tutto in colonna.
   Pagine: funzione (sd-numerati, sd-zigzag, sd-rete) · tutela (sd-copertina, sd-fascicolo, sd-schede, sd-etichette,
   sd-attrezzi) · funzioni (sd-area-testa, sd-monitor, sd-funz, sd-filo) · tutele (sd-cartellina, sd-famiglie, sd-tappe)
   · prezzi (sd-piano, sd-sempre, sd-profili, sd-extra, sd-tabella) · prova (sd-tre, sd-compiti) · contatti (sd-canali,
   sd-prepara, sd-binario) · domande (sd-faq-*, sd-limiti) · approfondimenti (sd-quaderno, sd-manuale, sd-sommario,
   sd-articolo) · 404 (sd-vie). Blocchi comuni in pagine/_sindacato.php: sd-casi, sd-pd, sd-cambia, sd-capitoli,
   sd-domande, sd-invito. */
:root {
	--sd-ombra: 0 14px 30px -18px rgba(15, 42, 107, .32), 0 0 0 1px rgba(15, 42, 107, .05);
	--sd-ombra-su: 0 24px 50px -22px rgba(15, 42, 107, .42), 0 0 0 1px rgba(15, 42, 107, .06);
	--sd-raggio: 20px;
}

/* ================================================================= APERTURA (tutte le pagine) */
.sd-apertura { position: relative; padding: 44px 0 128px; color: #fff; background: linear-gradient(140deg, var(--notte) 0%, #163592 46%, var(--marca) 100%); }
.sd-apertura::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 86% 12%, rgba(47, 116, 255, .55) 0, rgba(47, 116, 255, 0) 420px), repeating-linear-gradient(115deg, rgba(255, 255, 255, .045) 0 2px, rgba(255, 255, 255, 0) 2px 24px); pointer-events: none; }
/* il taglio obliquo in fondo: un cuneo bianco, cosi' la schermata puo' scavalcare il bordo */
.sd-apertura::after { content: ""; position: absolute; z-index: 1; left: 0; right: 0; bottom: -1px; height: 76px; background: #fff; clip-path: polygon(0 100%, 100% 0, 100% 100%); pointer-events: none; }
.sd-apertura > .n6-wrap { position: relative; z-index: 2; }
.sd-apertura h1 { color: #fff; font-size: clamp(34px, 4.2vw, 54px); font-weight: 900; line-height: 1.08; letter-spacing: -.03em; }
.sd-apertura h1 span { color: var(--giallo); }
.sd-apertura .n6-briciole { color: rgba(255, 255, 255, .75); }
.sd-apertura .n6-briciole a, .sd-apertura .n6-briciole span { color: #fff; }
.sd-apertura .n6-briciole a:hover { color: var(--giallo); }
.sd-ap-sotto { margin-top: 20px; font-size: 19px; line-height: 1.6; color: rgba(255, 255, 255, .92); text-wrap: pretty; }
.sd-ap-sotto a { color: #fff; font-weight: 600; }
.sd-ap-giu { display: inline-flex; align-items: center; gap: 8px; margin-top: 22px; color: #fff; font-weight: 600; font-size: 15.5px; text-decoration: none; }
.sd-ap-giu i { font-size: .8em; transition: transform .2s var(--ease); }
.sd-ap-giu:hover i { transform: translateY(3px); }
/* l'etichetta a timbro, leggermente storta */
.sd-ap-timbro { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 18px; padding: 6px 14px; border: 2px dashed rgba(255, 255, 255, .6); border-radius: 8px; font: 800 12.5px/1.2 var(--titoli); letter-spacing: .09em; text-transform: uppercase; color: #fff; transform: rotate(-1.5deg); }
.sd-ap-timbro i { color: var(--giallo); }
.sd-ap-griglia { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 56px; align-items: center; }
.sd-ap-schermo { position: relative; margin-bottom: -96px; }
.sd-ap-funzione + .sd-dopo-apertura, .sd-ap-tutela + .sd-dopo-apertura { padding-top: 96px; }
.sd-ap-centro { text-align: center; }
.sd-ap-centro .sd-ap-sotto { max-width: 700px; margin-inline: auto; }

/* ================================================================= TITOLI DI SEZIONE */
.sd-testa-sez { max-width: 760px; margin-bottom: 40px; }
.sd-testa-sez.centro { margin-inline: auto; text-align: center; }
.sd-testa-sez h2 { font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; }
.sd-testa-sez h2 span, .sd-area-testa h2 span, .sd-fasc-lato h2 span, .sd-doc-testo h2 span, .sd-compiti-testo h2 span, .sd-cambia-testa h2 span, .sd-sempre-tit span { color: var(--marca); }
.sd-testa-sez p { margin-top: 16px; font-size: 18.5px; color: var(--tenue); }
.sd-occhio { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 14px; font: 800 13px/1.2 var(--titoli); letter-spacing: .1em; text-transform: uppercase; color: var(--marca); }
.sd-occhio::before { content: ""; width: 22px; height: 3px; border-radius: 2px; background: currentColor; }
.sd-vai { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; font-weight: 600; font-size: 15px; color: var(--marca); text-decoration: none; }
.sd-vai i { font-size: .8em; transition: transform .2s var(--ease); }
a:hover > .sd-vai i, .sd-vai:hover i { transform: translateX(3px); }
.sd-nota { margin-top: 24px; font-size: 15px; color: var(--tenue); }

/* pastiglie-icona: blu notte con l'icona gialla, oppure nel colore della voce */
.sd-caso-ico, .sd-scheda-ico, .sd-famiglia-ico, .sd-limite-ico, .sd-manuale-ico { display: grid; place-items: center; flex: none; width: 52px; height: 52px; border-radius: 14px; background: var(--notte); color: var(--giallo); font-size: 20px; }
.sd-rete-ico, .sd-attrezzi-ico, .sd-funz-ico, .sd-quaderno-ico, .sd-extra-ico, .sd-profilo-ico { display: grid; place-items: center; flex: none; width: 52px; height: 52px; border-radius: 14px; background: var(--c, var(--marca)); color: #fff; font-size: 20px; box-shadow: 0 10px 20px -10px rgba(15, 42, 107, .5); }

/* le pastiglie testuali (tutele che usano una funzione, modelli insieme, «e inoltre») */
.sd-chip-riga { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 30px; }
.sd-chip-tit { margin-right: 6px; font: 800 12.5px/1.2 var(--titoli); letter-spacing: .08em; text-transform: uppercase; color: var(--debole); }
.sd-chip-riga a, .sd-chip-riga > span:not(.sd-chip-tit) { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 10px; background: var(--grigio); color: var(--titolo); font-weight: 600; font-size: 14.5px; text-decoration: none; transition: background-color .2s; }
.sd-chip-riga i { color: var(--c, var(--marca)); }
.sd-chip-riga a:hover { background: var(--marca-chiaro); }
.n6-grigio .sd-chip-riga a, .n6-grigio .sd-chip-riga > span:not(.sd-chip-tit) { background: #fff; }

/* ================================================================= BLOCCHI COMUNI (_sindacato.php) */
/* casi ricorrenti */
.sd-casi { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.sd-caso { position: relative; display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 18px; padding: 28px 30px; border-radius: var(--sd-raggio); background: #fff; box-shadow: var(--sd-ombra); overflow: hidden; }
.sd-caso::after { content: "\201C"; position: absolute; right: 18px; top: -18px; font: 900 120px/1 var(--titoli); color: var(--marca-chiaro); pointer-events: none; }
.sd-caso > div { position: relative; z-index: 1; }
.sd-caso h3 { font-size: 19px; margin: 2px 0 8px; }
.sd-caso p { color: var(--tenue); font-size: 16px; }

/* prima e dopo */
.sd-pd { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.sd-pd-col { padding: 30px 32px; border-radius: 24px; }
.sd-pd-col h3 { display: flex; align-items: center; gap: 10px; font-size: 19px; margin-bottom: 10px; }
.sd-pd-col ol { list-style: none; margin: 0; padding: 0; }
.sd-pd-col li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 14px; align-items: start; padding: 14px 0; font-size: 16px; line-height: 1.55; }
.sd-pd-n { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; font: 800 13px/1 var(--titoli); }
.sd-pd-prima { background: #fff; color: var(--testo); box-shadow: var(--sd-ombra); }
.sd-pd-prima h3 i { color: var(--debole); }
.sd-pd-prima li + li { border-top: 1px dashed var(--linea2); }
.sd-pd-prima .sd-pd-n { background: var(--grigio2); color: var(--tenue); }
.sd-pd-dopo { background: linear-gradient(160deg, var(--marca), var(--notte)); color: #fff; box-shadow: var(--sd-ombra-su); }
.sd-pd-dopo h3 { color: #fff; }
.sd-pd-dopo h3 i { color: var(--giallo); }
.sd-pd-dopo li + li { border-top: 1px dashed rgba(255, 255, 255, .25); }
.sd-pd-dopo .sd-pd-n { background: var(--giallo); color: var(--notte); }

/* che cosa cambia */
.sd-cambia { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1fr) minmax(0, 1fr); gap: 40px; padding: 44px 46px; border-radius: 28px; background: var(--marca-chiaro); }
.sd-cambia-testa h2 { font-size: clamp(26px, 2.8vw, 36px); line-height: 1.12; }
.sd-cambia-col h3 { display: flex; align-items: center; gap: 10px; font-size: 18px; margin-bottom: 6px; }
.sd-cambia-col h3 i { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--notte); color: var(--giallo); font-size: 14px; }
.sd-cambia-col ul { list-style: none; margin: 0; padding: 0; }
.sd-cambia-col li { padding: 14px 0; border-top: 1px solid rgba(29, 78, 216, .16); }
.sd-cambia-col li b { display: block; color: var(--titolo); font-size: 16.5px; }
.sd-cambia-col li span { display: block; margin-top: 2px; color: var(--tenue); font-size: 15.5px; line-height: 1.55; }

/* capitoli numerati */
.sd-capitolo { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 32px; padding: 36px 0; border-top: 1px solid var(--linea); }
.sd-capitolo:last-child { border-bottom: 1px solid var(--linea); }
.sd-capitolo-n { font: 900 64px/.9 var(--titoli); color: var(--linea2); letter-spacing: -.04em; }
.sd-capitolo-testo { max-width: 800px; }
.sd-capitolo h3 { font-size: clamp(22px, 2vw, 28px); margin-bottom: 14px; }
.sd-capitolo p { font-size: 17.5px; line-height: 1.75; color: var(--testo); }
.sd-capitolo p + p { margin-top: 16px; }
.sd-capitolo ul, .sd-articolo ul { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 10px; }
.sd-capitolo li, .sd-articolo li { position: relative; padding-left: 28px; font-size: 17px; color: var(--testo); }
.sd-capitolo li::before, .sd-articolo li::before { content: ""; position: absolute; left: 5px; top: .62em; width: 9px; height: 9px; border-radius: 2px; background: var(--marca); transform: rotate(45deg); }

/* domande numerate in una colonna stretta */
.sd-domande { max-width: 880px; }
.sd-domande-lista .n6-faq { counter-reset: sdq; }
.sd-domande-lista .n6-faq summary::before { counter-increment: sdq; content: counter(sdq, decimal-leading-zero); flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--marca-chiaro); color: var(--marca); font: 800 14px/1 var(--titoli); }
.sd-domande-lista .n6-faq summary h3 { flex: 1; }
.sd-domande-altro { margin-top: 28px; text-align: center; color: var(--tenue); }
.sd-domande-altro a { color: var(--marca); font-weight: 600; }

/* la fascia d'invito blu notte */
.sd-invito { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: 22px; align-items: center; margin-top: 44px; padding: 24px 28px; border-radius: 22px; background: var(--notte); color: #fff; }
.sd-invito-ico { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--giallo); color: var(--notte); font-size: 21px; }
.sd-invito p { font-size: 19px; font-weight: 600; line-height: 1.4; letter-spacing: -.01em; }
.sd-invito-azioni { display: flex; flex-wrap: wrap; gap: 10px; }

/* ================================================================= FUNZIONE */
.sd-numerati { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 56px; }
.sd-numerati li { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 16px; align-items: start; padding: 26px 0; border-top: 1px solid var(--linea); }
.sd-numerati-n { font: 900 46px/1 var(--titoli); letter-spacing: -.04em; color: transparent; -webkit-text-stroke: 1.5px var(--c, var(--marca)); }
.sd-numerati h3 { display: flex; align-items: baseline; gap: 10px; font-size: 19px; margin: 4px 0 8px; }
.sd-numerati h3 i { color: var(--c, var(--marca)); font-size: .9em; }
.sd-numerati p { color: var(--tenue); font-size: 16px; }

/* come si usa a zig-zag, col filo al centro */
.sd-zigzag { position: relative; list-style: none; max-width: 980px; margin: 0 auto; padding: 0; }
.sd-zigzag::before { content: ""; position: absolute; left: 50%; top: 20px; bottom: 20px; width: 3px; margin-left: -1.5px; background: repeating-linear-gradient(180deg, var(--linea2) 0 10px, transparent 10px 18px); }
.sd-zigzag li { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 64px minmax(0, 1fr); align-items: center; }
.sd-zigzag li + li { margin-top: 10px; }
.sd-zigzag-n { grid-column: 2; grid-row: 1; justify-self: center; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--notte); color: var(--giallo); font: 800 21px/1 var(--titoli); box-shadow: 0 0 0 8px #fff; }
.sd-zigzag-box { grid-column: 1; grid-row: 1; margin-right: 22px; padding: 22px 26px; border-radius: 18px; background: #fff; box-shadow: var(--sd-ombra); }
.sd-zigzag li:nth-child(even) .sd-zigzag-box { grid-column: 3; margin: 0 0 0 22px; }
.sd-zigzag h3 { font-size: 18.5px; margin-bottom: 6px; }
.sd-zigzag p { color: var(--tenue); font-size: 15.5px; }

/* funzioni collegate, tenute insieme da un filo */
.sd-rete { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.sd-rete::before { content: ""; position: absolute; left: 8%; right: 8%; top: 52px; height: 2px; background: var(--linea2); }
.sd-rete-nodo { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 26px; border-radius: var(--sd-raggio); border-top: 5px solid var(--c, var(--marca)); background: #fff; box-shadow: var(--sd-ombra); text-decoration: none; transition: transform .25s var(--ease), box-shadow .25s; }
.sd-rete-nodo b { margin-top: 6px; color: var(--titolo); font: 800 19px/1.25 var(--titoli); }
.sd-rete-nodo small { flex: 1; color: var(--tenue); font-size: 15px; line-height: 1.5; }
.sd-rete-nodo .sd-vai { margin-top: 6px; }
.sd-rete-nodo:hover { transform: translateY(-3px); box-shadow: var(--sd-ombra-su); }

/* ================================================================= TUTELA */
/* la copertina del fascicolo nell'apertura (illustrazione, dati di fantasia) */
.sd-copertina { position: relative; margin-top: 34px; padding: 28px 28px 22px; border-radius: 6px 24px 24px 24px; background: #fff; color: var(--testo); box-shadow: 0 40px 80px -30px rgba(0, 10, 50, .65); }
.sd-copertina-linguetta { position: absolute; left: 0; top: -32px; padding: 8px 18px 6px; border-radius: 14px 14px 0 0; background: #fff; font: 700 12.5px/1.2 var(--mono); color: var(--titolo); letter-spacing: .02em; }
.sd-copertina-testa { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding-bottom: 18px; border-bottom: 1px solid var(--linea); }
.sd-copertina-ico { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: var(--c, var(--marca)); color: #fff; font-size: 20px; }
.sd-copertina-testa b { display: block; color: var(--titolo); font: 800 19px/1.25 var(--titoli); }
.sd-copertina-testa small { display: block; margin-top: 2px; color: var(--tenue); font-size: 13.5px; }
.sd-copertina-testa em { font-style: normal; padding: 4px 10px; border-radius: 8px; background: var(--giallo); color: var(--notte); font: 800 12px/1.2 var(--titoli); white-space: nowrap; }
.sd-copertina-passi { list-style: none; margin: 8px 0 0; padding: 0; }
.sd-copertina-passi li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 12px; align-items: center; padding: 11px 0; font-size: 15px; color: var(--tenue); }
.sd-copertina-passi li + li { border-top: 1px dashed var(--linea2); }
.sd-copertina-passi li > span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; border: 2px solid var(--linea2); color: var(--debole); font: 800 12.5px/1 var(--titoli); }
.sd-copertina-passi li.fatto > span { border-color: var(--verde); background: var(--verde); color: #fff; }
.sd-copertina-passi li.ora { color: var(--titolo); font-weight: 600; }
.sd-copertina-passi li.ora > span { border-color: var(--marca); background: var(--marca); color: #fff; box-shadow: 0 0 0 5px var(--marca-chiaro); }
.sd-copertina-piede { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--linea); }
.sd-copertina-piede span { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 8px; background: var(--grigio); color: var(--titolo); font-size: 12.5px; font-weight: 600; }
.sd-copertina-piede i { color: var(--marca); }

/* il fascicolo della vertenza: colonna ferma a sinistra, linea del tempo a destra */
.sd-fasc-griglia { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); gap: 64px; align-items: start; }
.sd-fasc-lato { position: sticky; top: 110px; }
.sd-fasc-lato h2 { font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; }
.sd-fasc-lato > p { margin-top: 16px; font-size: 18px; color: var(--tenue); }
.sd-fasc-conti { list-style: none; margin: 24px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.sd-fasc-conti li { padding: 10px 16px; border-radius: 12px; background: #fff; box-shadow: var(--sd-ombra); color: var(--tenue); font-size: 15px; }
.sd-fasc-conti b { margin-right: 4px; color: var(--marca); font: 900 22px/1 var(--titoli); }
.sd-fascicolo { position: relative; list-style: none; margin: 0; padding: 0; }
.sd-fascicolo::before { content: ""; position: absolute; left: 26px; top: 46px; bottom: 30px; width: 3px; border-radius: 3px; background: linear-gradient(var(--marca), var(--linea2)); }
.sd-fascicolo li { position: relative; display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 20px; align-items: start; }
.sd-fascicolo li + li { margin-top: 12px; }
.sd-fascicolo-punto { position: relative; z-index: 1; display: grid; place-items: center; width: 56px; height: 56px; margin-top: 18px; border-radius: 50%; border: 3px solid var(--c, var(--marca)); background: #fff; color: var(--titolo); font: 800 20px/1 var(--titoli); }
.sd-fascicolo-foglio { position: relative; margin-top: 28px; padding: 20px 24px; border-radius: 4px 18px 18px 18px; background: #fff; box-shadow: var(--sd-ombra); }
.sd-fascicolo-tab { position: absolute; left: 0; top: -26px; padding: 5px 14px 4px; border-radius: 10px 10px 0 0; background: #fff; color: var(--c, var(--marca)); font: 800 11.5px/1.3 var(--titoli); letter-spacing: .08em; text-transform: uppercase; }
.sd-fascicolo h3 { font-size: 18.5px; margin-bottom: 6px; }
.sd-fascicolo p { color: var(--tenue); font-size: 15.5px; }
.sd-fascicolo-fine .sd-fascicolo-punto { border-color: var(--verde); background: var(--verde); color: #fff; font-size: 18px; }
.sd-fascicolo-fine .sd-fascicolo-foglio { margin-top: 18px; border-radius: 18px; background: var(--marca-chiaro); box-shadow: none; }

/* i modelli pronti, in schede per famiglia */
.sd-schede { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; align-items: start; }
.sd-scheda { padding: 28px; border-radius: 22px; border: 1px solid var(--linea); background: #fff; }
.sd-scheda-testa { display: flex; align-items: center; gap: 14px; }
.sd-scheda-testa h3 { font-size: 19px; }
.sd-scheda-testa small { display: block; margin-top: 2px; color: var(--debole); font-size: 13.5px; font-weight: 600; }
.sd-scheda > p { margin-top: 14px; color: var(--tenue); font-size: 15.5px; }
.sd-scheda ul { list-style: none; margin: 14px 0 0; padding: 0; }
.sd-scheda li { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 10px; padding: 10px 0; border-top: 1px dashed var(--linea2); color: var(--titolo); font-size: 15.5px; line-height: 1.45; }
.sd-scheda li i { margin-top: 3px; color: var(--marca); font-size: 13px; }

/* i documenti da chiedere, come etichette */
.sd-doc-griglia { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 56px; align-items: center; }
.sd-doc-testo h2 { font-size: clamp(30px, 3.4vw, 44px); line-height: 1.08; }
.sd-doc-testo > p { margin-top: 16px; font-size: 18px; color: var(--tenue); }
.sd-link-col { display: grid; justify-items: start; gap: 10px; margin-top: 22px; }
.sd-etichette { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.sd-etichette li { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 12px; align-items: start; padding: 14px 16px; border-radius: 12px; background: #fff; box-shadow: var(--sd-ombra); color: var(--titolo); font-size: 15.5px; line-height: 1.45; }
.sd-etichette li i { margin-top: 3px; color: var(--marca); }

/* gli strumenti dell'ufficio */
.sd-attrezzi { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.sd-attrezzi li { display: grid; grid-template-columns: 36px 52px minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 22px 26px; border-radius: var(--sd-raggio); border: 1px solid var(--linea); background: #fff; }
.sd-attrezzi-n { font: 900 28px/1 var(--titoli); color: var(--linea2); }
.sd-attrezzi h3 { font-size: 18.5px; }
.sd-attrezzi h3 a { color: var(--titolo); text-decoration: none; }
.sd-attrezzi h3 a:hover { color: var(--marca); }
.sd-attrezzi p { margin-top: 4px; color: var(--tenue); font-size: 15.5px; line-height: 1.55; }
.sd-attrezzi .sd-vai { margin-top: 0; white-space: nowrap; }

/* le altre tutele */
.sd-tutele-fila { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 14px; }
.sd-tutela-mini { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 16px 18px; border-radius: 16px; background: #fff; box-shadow: var(--sd-ombra); text-decoration: none; transition: transform .25s var(--ease); }
.sd-tutela-mini > span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--c, var(--marca)); color: #fff; font-size: 17px; }
.sd-tutela-mini b { color: var(--titolo); font-size: 16px; }
.sd-tutela-mini > i { color: var(--debole); font-size: 13px; }
.sd-tutela-mini:hover { transform: translateY(-3px); }

/* ================================================================= FUNZIONI (panoramica) */
.sd-gettoni { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 30px; }
.sd-gettoni a { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 10px; border: 1px solid rgba(255, 255, 255, .32); background: rgba(255, 255, 255, .12); color: #fff; font-weight: 600; font-size: 15px; text-decoration: none; transition: background-color .2s; }
.sd-gettoni em { font-style: normal; padding: 2px 7px; border-radius: 6px; background: var(--giallo); color: var(--notte); font: 800 12px/1.2 var(--titoli); }
.sd-gettoni a:hover { background: rgba(255, 255, 255, .22); }
.sd-area-testa { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 56px; align-items: center; margin-bottom: 44px; }
.sd-area-n { display: block; margin-bottom: 10px; font: 800 13px/1.2 var(--titoli); letter-spacing: .12em; text-transform: uppercase; color: var(--marca); }
.sd-area-testa h2 { font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; }
.sd-area-testa p { margin-top: 14px; font-size: 18px; color: var(--tenue); }
.sd-area-indice { list-style: none; margin: 22px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.sd-area-indice a { display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border-radius: 10px; border: 1px solid var(--linea); background: #fff; color: var(--titolo); font-weight: 600; font-size: 14.5px; text-decoration: none; }
.sd-area-indice a i { color: var(--c, var(--marca)); }
.sd-area-indice a:hover { border-color: var(--marca); }
/* una schermata per area, dentro un monitor */
.sd-monitor { padding: 14px 14px 16px; border-radius: 22px; background: var(--notte); box-shadow: var(--ombra-grande); }
.sd-monitor-schermo { min-height: 240px; border-radius: 12px; background: #fff; overflow: hidden; }
.sd-monitor-piede { display: block; width: 120px; height: 8px; margin: 12px auto 0; border-radius: 6px; background: rgba(255, 255, 255, .25); }
.sd-funz-griglia { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.sd-funz { display: flex; flex-direction: column; align-items: flex-start; padding: 26px; border-radius: var(--sd-raggio); border: 1px solid var(--linea); background: #fff; }
.sd-funz h3 { margin-top: 16px; font-size: 19px; }
.sd-funz h3 a { color: var(--titolo); text-decoration: none; }
.sd-funz h3 a:hover { color: var(--marca); }
.sd-funz > p { margin-top: 8px; color: var(--tenue); font-size: 15.5px; line-height: 1.55; }
.sd-funz ul { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 6px; }
.sd-funz li { position: relative; padding-left: 20px; color: var(--testo); font-size: 14.5px; line-height: 1.45; }
.sd-funz li::before { content: ""; position: absolute; left: 2px; top: .5em; width: 8px; height: 8px; border-radius: 2px; background: var(--c, var(--marca)); }
.sd-funz .sd-vai { margin-top: auto; padding-top: 18px; }
/* il filo: tessera, vertenza, documenti, sede, numeri */
.sd-filo { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); gap: 16px; }
.sd-filo li { position: relative; }
.sd-filo li::after { content: ""; position: absolute; top: 31px; left: calc(50% + 40px); right: calc(-50% + 40px); height: 3px; border-radius: 3px; background: var(--linea2); }
.sd-filo li:last-child::after { display: none; }
.sd-filo a { display: flex; flex-direction: column; align-items: center; padding: 0 6px; text-align: center; text-decoration: none; }
.sd-filo-ico { position: relative; z-index: 1; display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; border: 3px solid var(--c, var(--marca)); background: #fff; color: var(--c, var(--marca)); font-size: 23px; transition: transform .25s var(--ease); }
.sd-filo b { margin-top: 14px; color: var(--titolo); font-size: 16.5px; line-height: 1.3; }
.sd-filo small { margin-top: 6px; color: var(--tenue); font-size: 14.5px; line-height: 1.45; }
.sd-filo em { margin-top: 10px; font-style: normal; font: 800 11.5px/1.3 var(--titoli); letter-spacing: .07em; text-transform: uppercase; color: var(--marca); }
.sd-filo a:hover .sd-filo-ico { transform: scale(1.06); }

/* ================================================================= TUTELE (elenco) */
.sd-cartelline { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px 28px; padding-top: 34px; }
.sd-cartellina { position: relative; display: flex; }
.sd-cartellina-tab { position: absolute; left: 0; top: -32px; display: inline-flex; align-items: center; gap: 8px; padding: 8px 18px 7px; border-radius: 14px 14px 0 0; background: var(--c, var(--marca)); color: #fff; font: 800 12.5px/1.2 var(--titoli); letter-spacing: .07em; text-transform: uppercase; }
.sd-cartellina-corpo { display: flex; flex-direction: column; align-items: flex-start; width: 100%; padding: 30px 32px; border-radius: 0 24px 24px 24px; border-top: 4px solid var(--c, var(--marca)); background: #fff; box-shadow: var(--sd-ombra-su); }
.sd-cartellina h2 { font-size: clamp(24px, 2.4vw, 30px); }
.sd-cartellina h2 a { color: var(--titolo); text-decoration: none; }
.sd-cartellina h2 a:hover { color: var(--marca); }
.sd-cartellina-corpo > p { margin-top: 10px; color: var(--tenue); font-size: 16px; }
.sd-cartellina-fam { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.sd-cartellina-fam span { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 8px; background: var(--grigio); color: var(--titolo); font-weight: 600; font-size: 13.5px; }
.sd-cartellina-fam i { color: var(--marca); }
.sd-cartellina-mod { list-style: none; width: 100%; margin: 16px 0 0; padding: 0; }
.sd-cartellina-mod li { padding: 9px 0; border-top: 1px dashed var(--linea2); color: var(--titolo); font-size: 15px; }
.sd-cartellina-altri { margin-top: 8px; color: var(--debole); font-size: 14px; }
.sd-cartellina .sd-vai { margin-top: auto; padding-top: 18px; }
.sd-famiglie { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.sd-famiglia { display: grid; grid-template-columns: 52px minmax(0, 1fr); column-gap: 16px; padding: 26px; border-radius: var(--sd-raggio); background: #fff; }
.sd-famiglia-ico { grid-row: 1 / span 3; }
.sd-famiglia b { color: var(--marca); font: 900 34px/1 var(--titoli); }
.sd-famiglia h3 { margin-top: 6px; font-size: 17.5px; }
.sd-famiglia p { margin-top: 6px; color: var(--tenue); font-size: 15px; }
.sd-tappe { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: 22px; }
.sd-tappe li { position: relative; display: flex; flex-direction: column; align-items: flex-start; padding: 28px 24px; border-radius: 22px; border: 1px solid var(--linea); background: #fff; }
.sd-tappe li:not(:last-child)::after { content: ""; position: absolute; right: -15px; top: 52px; width: 9px; height: 9px; border-top: 3px solid var(--linea2); border-right: 3px solid var(--linea2); transform: rotate(45deg); }
.sd-tappe-ico { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--marca-chiaro); color: var(--marca); font-size: 20px; }
.sd-tappe-n { display: block; margin-top: 16px; font-style: normal; font: 800 12.5px/1.2 var(--titoli); letter-spacing: .1em; text-transform: uppercase; color: var(--debole); }
.sd-tappe h3 { margin-top: 6px; font-size: 19px; }
.sd-tappe p { margin-top: 8px; color: var(--tenue); font-size: 15.5px; }
.sd-tappe .sd-vai { margin-top: auto; padding-top: 14px; }

/* ================================================================= PREZZI */
.sd-ap-prezzi { padding-bottom: 176px; }
.sd-piani-sez { position: relative; z-index: 3; margin-top: -132px; padding-bottom: 8px; }
.sd-piani { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; align-items: stretch; }
.sd-piano { display: flex; flex-direction: column; overflow: hidden; border-radius: 24px; border: 1px solid var(--linea); background: #fff; box-shadow: var(--ombra-grande); }
.sd-piano-testa { position: relative; padding: 26px 26px 4px; background: linear-gradient(180deg, var(--grigio), #fff); }
.sd-piano-testa h2 { font-size: 24px; font-weight: 800; }
.sd-piano-testa > p { min-height: 46px; margin-top: 6px; color: var(--tenue); font-size: 14.5px; line-height: 1.5; }
.sd-piano-nastro { position: absolute; top: 20px; right: 20px; padding: 4px 10px; border-radius: 6px; background: var(--giallo); color: var(--notte); font: 800 11.5px/1.2 var(--titoli); letter-spacing: .05em; text-transform: uppercase; }
.sd-piano ul { flex: 1; list-style: none; margin: 0; padding: 4px 26px 0; }
.sd-piano li { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-top: 1px dashed var(--linea2); font-size: 15px; }
.sd-piano li i { width: 18px; color: var(--marca); }
.sd-piano > .n6-btn { width: calc(100% - 52px); margin: 20px 26px 26px; }
.sd-piano.scelto { border: 2px solid var(--marca); }
.sd-piano.scelto .sd-piano-testa { background: linear-gradient(160deg, var(--marca), var(--notte)); }
.sd-piano.scelto .sd-piano-testa h2, .sd-piano.scelto .sd-piano-testa .n6-prezzo b { color: #fff; }
.sd-piano.scelto .sd-piano-testa > p, .sd-piano.scelto .sd-piano-testa .n6-prezzo small { color: rgba(255, 255, 255, .85); }
.sd-piano-infinity .sd-piano-testa { background: linear-gradient(180deg, var(--lilla), #fff); }
.sd-sempre-sez { padding-top: 56px; }
.sd-sempre-tit { text-align: center; font-size: clamp(24px, 2.4vw, 32px); }
.sd-sempre { list-style: none; margin: 26px 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 14px 28px; }
.sd-sempre li { display: inline-flex; align-items: center; gap: 10px; color: var(--titolo); font-weight: 600; font-size: 15.5px; }
.sd-sempre i { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--marca-chiaro); color: var(--marca); font-size: 14px; }
.sd-profili { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.sd-profilo { padding: 30px; border-radius: 22px; background: #fff; }
.sd-profilo h3 { margin: 18px 0 8px; font-size: 20px; }
.sd-profilo p { color: var(--tenue); font-size: 16px; }
.sd-extra { display: grid; gap: 14px; max-width: 1000px; margin: 0 auto; }
.sd-extra-voce { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: 22px; align-items: center; padding: 24px 28px; border-radius: var(--sd-raggio); border: 1px solid var(--linea); background: #fff; }
.sd-extra-voce.primo { border-color: transparent; background: var(--marca-chiaro); }
.sd-extra-ico { width: 56px; height: 56px; }
.sd-extra-testo h3 { font-size: 19px; }
.sd-extra-testo p { margin-top: 4px; color: var(--tenue); font-size: 15.5px; line-height: 1.55; }
.sd-extra-testo small { display: block; margin-top: 8px; color: var(--marca); font-weight: 600; font-size: 13.5px; }
.sd-extra-voce .n6-prezzo { margin: 0; white-space: nowrap; }
.sd-tabella { overflow-x: auto; border-radius: 20px; background: #fff; box-shadow: var(--sd-ombra); }
.sd-tabella table { width: 100%; min-width: 600px; border-collapse: collapse; }
.sd-tabella th, .sd-tabella td { padding: 15px 20px; border-bottom: 1px solid var(--linea); text-align: center; font-size: 15px; }
.sd-tabella thead th { background: var(--notte); color: #fff; font-weight: 700; }
.sd-tabella thead th.scelto { background: var(--marca); }
.sd-tabella thead th:first-child { text-align: left; }
.sd-tabella tbody th { text-align: left; font-weight: 500; color: var(--testo); }
.sd-tabella td.scelto { background: rgba(29, 78, 216, .05); }
.sd-tabella tbody tr:last-child th, .sd-tabella tbody tr:last-child td { border-bottom: 0; }
.sd-si { color: var(--verde); }
.sd-no { color: var(--debole); }

/* ================================================================= PROVA */
.sd-ap-modulo { padding-bottom: 116px; }
.sd-tre { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 12px; }
.sd-tre li { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; align-items: center; }
.sd-tre b { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--giallo); color: var(--notte); font: 800 15px/1 var(--titoli); }
.sd-tre span { color: #fff; font-weight: 500; font-size: 16px; }
.sd-incluso { margin-top: 28px; padding-top: 22px; border-top: 1px solid rgba(255, 255, 255, .25); }
.sd-incluso > span { display: block; margin-bottom: 12px; font: 800 12px/1.2 var(--titoli); letter-spacing: .1em; text-transform: uppercase; color: rgba(255, 255, 255, .78); }
.sd-incluso ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 20px; }
.sd-incluso li { color: #fff; font-size: 15px; }
.sd-incluso li i { margin-right: 6px; color: var(--giallo); }
.sd-aiuto { display: inline-flex; align-items: center; gap: 14px; margin-top: 28px; padding: 14px 18px; border-radius: 16px; border: 1px solid rgba(255, 255, 255, .28); background: rgba(255, 255, 255, .1); color: #fff; text-decoration: none; transition: background-color .2s; }
.sd-aiuto > i { display: grid; place-items: center; flex: none; width: 40px; height: 40px; border-radius: 50%; background: #fff; color: var(--marca); }
.sd-aiuto b { display: block; }
.sd-aiuto small { display: block; color: rgba(255, 255, 255, .82); font-size: 14px; }
.sd-aiuto:hover { background: rgba(255, 255, 255, .18); }
.sd-compiti-griglia { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 56px; align-items: start; }
.sd-compiti-testo { position: sticky; top: 110px; }
.sd-compiti-testo h2 { font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; }
.sd-compiti-testo > p { margin: 16px 0 26px; font-size: 18px; color: var(--tenue); }
.sd-compiti { list-style: none; margin: 0; padding: 8px 30px; border-radius: 26px; background: #fff; box-shadow: var(--sd-ombra-su); }
.sd-compiti li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 16px; padding: 20px 0; }
.sd-compiti li + li { border-top: 1px dashed var(--linea2); }
.sd-compiti-box { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; border: 2px solid var(--verde); background: var(--verde); color: #fff; font-size: 13px; transition: background-color .3s; transition-delay: calc(var(--k, 0) * .12s + .4s); }
.sd-compiti-box i { transition: opacity .35s var(--ease), transform .35s var(--ease); transition-delay: calc(var(--k, 0) * .12s + .4s); }
/* le spunte arrivano una dopo l'altra quando la lista entra a video (solo se il javascript c'e') */
.n6-js .sd-compiti:not(.in) .sd-compiti-box { background: #fff; }
.n6-js .sd-compiti:not(.in) .sd-compiti-box i { opacity: 0; transform: scale(.3); }
.sd-compiti h3 { font-size: 18px; }
.sd-compiti p { margin-top: 4px; color: var(--tenue); font-size: 15.5px; }
.sd-compiti .sd-vai { margin-top: 8px; }

/* ================================================================= CONTATTI */
.sd-canali { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 36px; }
.sd-canale { display: flex; align-items: center; gap: 14px; min-width: 0; padding: 16px 18px; border-radius: 16px; border: 1px solid rgba(255, 255, 255, .28); background: rgba(255, 255, 255, .1); color: #fff; text-align: left; text-decoration: none; transition: background-color .2s; }
.sd-canale > i { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 50%; background: #fff; color: var(--marca); font-size: 17px; }
.sd-canale > span { min-width: 0; }
.sd-canale b { display: block; }
.sd-canale small { display: block; color: rgba(255, 255, 255, .82); font-size: 13.5px; overflow-wrap: anywhere; }
.sd-canale:hover { background: rgba(255, 255, 255, .2); }
.sd-canale.primo { border-color: #fff; background: #fff; color: var(--titolo); }
.sd-canale.primo small { color: var(--tenue); }
.sd-canale.primo > i { background: var(--marca); color: #fff; }
.sd-contatto-griglia { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 48px; align-items: start; }
.sd-dopo-modulo { margin-top: 14px; color: var(--tenue); }
.sd-dopo-modulo a { color: var(--marca); font-weight: 600; }
.sd-prepara { position: sticky; top: 110px; padding: 34px; border-radius: 26px; background: var(--notte); color: #fff; }
.sd-prepara h2 { color: #fff; font-size: clamp(24px, 2.4vw, 30px); }
.sd-prepara h2 span { color: var(--giallo); }
.sd-prepara > p { margin-top: 10px; color: rgba(255, 255, 255, .84); font-size: 16px; }
.sd-prepara ul { list-style: none; margin: 22px 0 0; padding: 0; }
.sd-prepara li { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 14px; padding: 16px 0; border-top: 1px solid rgba(255, 255, 255, .16); }
.sd-prepara-ico { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: rgba(255, 255, 255, .12); color: var(--giallo); font-size: 17px; }
.sd-prepara h3 { color: #fff; font-size: 17px; }
.sd-prepara li p { margin-top: 4px; color: rgba(255, 255, 255, .8); font-size: 15px; }
/* dopo il contatto: un binario orizzontale */
.sd-binario { position: relative; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: 24px; }
.sd-binario::before { content: ""; position: absolute; left: 12%; right: 12%; top: 26px; height: 4px; background: repeating-linear-gradient(90deg, var(--titolo) 0 18px, transparent 18px 26px); opacity: .35; }
.sd-binario li { position: relative; text-align: center; }
.sd-binario-n { display: inline-grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--notte); color: var(--giallo); font: 800 20px/1 var(--titoli); box-shadow: 0 0 0 8px #f3f7fc; }
.sd-binario h3 { margin-top: 16px; font-size: 18px; }
.sd-binario p { margin-top: 6px; color: var(--tenue); font-size: 15.5px; }

/* ================================================================= DOMANDE */
.sd-faq-griglia { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 56px; align-items: start; }
.sd-faq-area + .sd-faq-area { margin-top: 60px; }
.sd-faq-aree > .sd-invito { margin: 52px 0; }
.sd-faq-aree > .sd-invito + .sd-faq-area { margin-top: 0; }
.sd-faq-area-testa { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 18px; align-items: center; padding-bottom: 16px; border-bottom: 3px solid var(--titolo); }
.sd-faq-area-n { font: 900 52px/1 var(--titoli); letter-spacing: -.04em; color: var(--marca); }
.sd-faq-area-testa h2 { font-size: clamp(22px, 2.2vw, 28px); }
.sd-faq-area-testa small { display: block; margin-top: 2px; color: var(--debole); font-size: 14px; }
.sd-faq-area-ico { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: var(--marca-chiaro); color: var(--marca); font-size: 18px; }
.sd-faq-indice { position: sticky; top: 100px; }
.sd-faq-indice-box { padding: 20px; border-radius: var(--sd-raggio); border: 1px solid var(--linea); background: #fff; box-shadow: var(--sd-ombra); }
.sd-faq-indice-tit { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; font: 800 13px/1.2 var(--titoli); letter-spacing: .08em; text-transform: uppercase; color: var(--titolo); }
.sd-faq-indice ol { list-style: none; margin: 0; padding: 0; }
.sd-faq-indice ol a { display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 10px 8px; border-radius: 10px; color: var(--testo); font-size: 15px; line-height: 1.35; text-decoration: none; transition: background-color .2s; }
.sd-faq-indice ol a i { color: var(--marca); }
.sd-faq-indice ol a em { font-style: normal; padding: 2px 8px; border-radius: 99px; background: var(--marca-chiaro); color: var(--marca); font: 700 12px/1.3 var(--titoli); }
.sd-faq-indice ol a:hover { background: var(--grigio); color: var(--titolo); }
.sd-faq-indice-cta { margin-top: 16px; padding: 22px; border-radius: var(--sd-raggio); background: var(--notte); color: #fff; }
.sd-faq-indice-cta b { display: block; font-size: 17px; }
.sd-faq-indice-cta p { margin: 4px 0 14px; color: rgba(255, 255, 255, .82); font-size: 14.5px; }
.sd-faq-indice-cta .sd-vai { color: #fff; }
.sd-limiti { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.sd-limite { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 16px; padding: 24px 26px; border-radius: var(--sd-raggio); background: #fff; }
.sd-limite h3 { font-size: 18px; }
.sd-limite p { margin-top: 4px; color: var(--tenue); font-size: 15.5px; }

/* ================================================================= APPROFONDIMENTI */
.sd-quaderni { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
.sd-quaderno { display: flex; flex-direction: column; align-items: flex-start; padding: 30px 28px 26px; border-radius: 24px; border-top: 8px solid var(--c, var(--marca)); background: #fff; box-shadow: var(--sd-ombra-su); }
.sd-quaderno-testa { display: flex; align-items: center; justify-content: space-between; width: 100%; }
.sd-quaderno-testa small { font: 800 13px/1.2 var(--titoli); letter-spacing: .06em; color: var(--debole); }
.sd-quaderno h2 { margin-top: 20px; font-size: clamp(21px, 1.9vw, 25px); line-height: 1.2; }
.sd-quaderno h2 a { color: var(--titolo); text-decoration: none; }
.sd-quaderno h2 a:hover { color: var(--marca); }
.sd-quaderno > p { margin-top: 10px; color: var(--tenue); font-size: 15.5px; }
.sd-quaderno-k { display: block; margin-top: 18px; font: 800 12px/1.2 var(--titoli); letter-spacing: .1em; text-transform: uppercase; color: var(--debole); }
.sd-quaderno ul { list-style: none; width: 100%; margin: 8px 0 0; padding: 0; }
.sd-quaderno li { padding: 7px 0; border-top: 1px dashed var(--linea2); color: var(--testo); font-size: 14.5px; line-height: 1.45; }
.sd-quaderno-piede { display: flex; align-items: center; gap: 12px; width: 100%; margin-top: auto; padding-top: 20px; color: var(--debole); font-size: 13.5px; white-space: nowrap; }
.sd-lettura { flex: 1; height: 6px; border-radius: 99px; background: var(--grigio2); overflow: hidden; }
.sd-lettura i { display: block; height: 100%; border-radius: 99px; background: var(--c, var(--marca)); }
.sd-quaderno .sd-vai { margin-top: 14px; }
.sd-manuale { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 24px; align-items: center; padding: 30px 34px; border-radius: 24px; background: #fff; }
.sd-manuale-ico { width: 64px; height: 64px; border-radius: 18px; font-size: 26px; }
.sd-manuale h2 { font-size: clamp(21px, 2vw, 26px); }
.sd-manuale p { margin-top: 6px; color: var(--tenue); font-size: 16px; }
.sd-meta { list-style: none; margin: 22px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.sd-meta li { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; border-radius: 8px; background: rgba(255, 255, 255, .12); color: #fff; font-weight: 600; font-size: 14.5px; }
.sd-meta li i { color: var(--giallo); }
.sd-ap-guida { padding-bottom: 112px; }
.sd-sommario { display: block; padding: 26px 30px; border-radius: 22px; background: var(--grigio); }
.sd-sommario-tit { display: flex; align-items: center; gap: 8px; font: 800 13px/1.2 var(--titoli); letter-spacing: .08em; text-transform: uppercase; color: var(--titolo); }
.sd-sommario ol { list-style: none; margin: 14px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 24px; }
.sd-sommario a { display: flex; align-items: flex-start; gap: 12px; padding: 8px 0; color: var(--titolo); font-weight: 600; font-size: 15.5px; line-height: 1.4; text-decoration: none; }
.sd-sommario a em { display: grid; place-items: center; flex: none; width: 26px; height: 26px; border-radius: 8px; background: #fff; color: var(--marca); font: 800 13px/1 var(--titoli); font-style: normal; }
.sd-sommario a:hover { color: var(--marca); }
.sd-articolo { max-width: 760px; margin: 0 auto; }
.sd-articolo > section + section, .sd-articolo > .sd-invito + section { margin-top: 56px; }
.sd-articolo > .sd-invito { margin: 52px 0 0; }
.sd-articolo-cap { display: inline-block; margin-bottom: 8px; font: 800 12.5px/1.2 var(--titoli); letter-spacing: .12em; text-transform: uppercase; color: var(--marca); }
.sd-articolo h2 { margin-bottom: 18px; font-size: clamp(24px, 2.3vw, 32px); }
.sd-articolo p { font-size: 18px; line-height: 1.78; color: var(--testo); }
.sd-articolo p + p { margin-top: 18px; }
.sd-altre-guide { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.sd-altra-guida { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 20px 22px; border-radius: 18px; border: 1px solid var(--linea); background: #fff; text-decoration: none; transition: border-color .2s; }
.sd-altra-guida b { display: block; color: var(--titolo); font-size: 16.5px; line-height: 1.35; }
.sd-altra-guida small { display: block; margin-top: 4px; color: var(--debole); font-size: 14px; }
.sd-altra-guida > i { color: var(--debole); font-size: 13px; }
.sd-altra-guida:hover { border-color: var(--marca); }

/* ================================================================= 404 */
.sd-404-n { display: block; margin-bottom: 8px; font: 900 clamp(90px, 14vw, 170px)/.9 var(--titoli); letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 2px rgba(255, 255, 255, .6); }
.sd-vie { display: grid; gap: 12px; }
.sd-via { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 20px 24px; border-radius: 18px; border: 1px solid var(--linea); background: #fff; text-decoration: none; transition: border-color .2s, transform .25s var(--ease); }
.sd-via-ico { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: var(--marca-chiaro); color: var(--marca); font-size: 20px; }
.sd-via-testo b { display: block; color: var(--titolo); font-size: 18px; }
.sd-via-testo small { display: block; color: var(--tenue); font-size: 15px; }
.sd-via-testo em { display: block; margin-top: 4px; font-style: normal; color: var(--debole); font-size: 13.5px; }
.sd-via > i { color: var(--marca); }
.sd-via:hover { border-color: var(--marca); transform: translateX(4px); }

/* ================================================================= TABLET */
@media (max-width: 1140px) {
	.sd-ap-griglia, .sd-fasc-griglia, .sd-doc-griglia, .sd-area-testa, .sd-compiti-griglia, .sd-contatto-griglia, .sd-faq-griglia { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.sd-ap-schermo { max-width: 640px; margin-bottom: -56px; }
	.sd-ap-funzione + .sd-dopo-apertura, .sd-ap-tutela + .sd-dopo-apertura { padding-top: 90px; }
	.sd-fasc-lato, .sd-compiti-testo, .sd-prepara, .sd-faq-indice { position: static; }
	.sd-faq-indice { order: -1; }
	.sd-faq-indice-cta { display: none; }
	.sd-cambia { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 36px 32px; }
	.sd-cambia-testa { grid-column: 1 / -1; }
	.sd-piani, .sd-funz-griglia, .sd-canali, .sd-tappe { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sd-tappe li::after { display: none; }
	.sd-monitor { max-width: 640px; }
	/* il filo diventa verticale */
	.sd-filo { grid-template-columns: minmax(0, 1fr); gap: 14px; max-width: 560px; margin: 0 auto; }
	.sd-filo li::after { top: 64px; bottom: -14px; left: 30px; right: auto; width: 3px; height: auto; }
	.sd-filo a { display: grid; grid-template-columns: 64px minmax(0, 1fr); column-gap: 18px; align-items: start; padding: 0; text-align: left; }
	.sd-filo-ico { grid-row: 1 / 4; }
	.sd-filo b { margin-top: 6px; }
	/* la prova: il modulo sale sotto il titolo, come nel tema (le classi del tema non conoscono timbro e sottotitolo) */
	.sd-apertura.n6-modulo-prima > .n6-due { gap: 0; }
	.sd-apertura.n6-modulo-prima .n6-due > div:first-child > .sd-ap-timbro, .sd-apertura.n6-modulo-prima .n6-due > div:first-child > .sd-ap-sotto { order: -2; }
	.sd-apertura.n6-modulo-prima .sd-ap-timbro { justify-self: start; }
}

/* ================================================================= TELEFONO */
@media (max-width: 900px) {
	.sd-apertura { padding: 32px 0 96px; }
	.sd-apertura::after { height: 42px; }
	.sd-ap-schermo { margin-bottom: -32px; }
	.sd-ap-funzione + .sd-dopo-apertura, .sd-ap-tutela + .sd-dopo-apertura { padding-top: 64px; }
	.sd-ap-prezzi { padding-bottom: 150px; }
	.sd-piani-sez { margin-top: -110px; }
	.sd-numerati, .sd-casi, .sd-pd, .sd-etichette, .sd-cartelline, .sd-famiglie, .sd-profili, .sd-altre-guide, .sd-limiti, .sd-rete, .sd-funz-griglia, .sd-piani, .sd-canali, .sd-tappe, .sd-sommario ol, .sd-cambia { grid-template-columns: minmax(0, 1fr); }
	.sd-numerati { gap: 0; }
	.sd-numerati li { grid-template-columns: 56px minmax(0, 1fr); }
	.sd-numerati-n { font-size: 36px; }
	.sd-rete::before { display: none; }
	.sd-caso { padding: 24px 22px; grid-template-columns: 44px minmax(0, 1fr); gap: 14px; }
	.sd-caso-ico, .sd-scheda-ico, .sd-famiglia-ico, .sd-limite-ico { width: 44px; height: 44px; font-size: 17px; border-radius: 12px; }
	.sd-pd-col { padding: 24px 22px; }
	.sd-invito { grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 22px 20px; }
	.sd-invito-ico { display: none; }
	.sd-invito-azioni, .sd-invito-azioni .n6-btn { width: 100%; }
	.sd-cambia { gap: 26px; padding: 28px 22px; border-radius: 22px; }
	.sd-capitolo { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 28px 0; }
	.sd-capitolo-n { font-size: 40px; }
	/* il zig-zag si mette tutto da un lato, col filo a sinistra */
	.sd-zigzag::before { left: 27px; margin-left: 0; }
	.sd-zigzag li { grid-template-columns: 56px minmax(0, 1fr); gap: 16px; }
	.sd-zigzag-n { grid-column: 1; }
	.sd-zigzag-box, .sd-zigzag li:nth-child(even) .sd-zigzag-box { grid-column: 2; margin: 0; padding: 18px 20px; }
	.sd-copertina { padding: 24px 20px 18px; }
	.sd-copertina-testa { grid-template-columns: 44px minmax(0, 1fr); }
	.sd-copertina-ico { width: 44px; height: 44px; font-size: 17px; }
	.sd-copertina-testa em { grid-column: 1 / -1; justify-self: start; }
	.sd-fascicolo li { grid-template-columns: 44px minmax(0, 1fr); gap: 14px; }
	.sd-fascicolo::before { left: 20px; }
	.sd-fascicolo-punto { width: 44px; height: 44px; font-size: 17px; }
	.sd-attrezzi li { grid-template-columns: 48px minmax(0, 1fr); gap: 14px; padding: 20px; }
	.sd-attrezzi-n { display: none; }
	.sd-attrezzi-ico { width: 48px; height: 48px; font-size: 18px; }
	.sd-attrezzi .sd-vai { grid-column: 2; }
	.sd-cartellina-corpo { padding: 26px 22px; }
	.sd-extra-voce { grid-template-columns: 48px minmax(0, 1fr); gap: 14px; padding: 22px 20px; }
	.sd-extra-ico { width: 48px; height: 48px; font-size: 18px; }
	.sd-extra-voce .n6-prezzo { grid-column: 2; }
	.sd-incluso ul { grid-template-columns: minmax(0, 1fr); }
	.sd-compiti { padding: 6px 20px; }
	.sd-prepara { padding: 28px 22px; }
	/* il binario diventa verticale, a sinistra */
	.sd-binario { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	.sd-binario::before { left: 26px; right: auto; top: 28px; bottom: 28px; width: 4px; height: auto; background: repeating-linear-gradient(180deg, var(--titolo) 0 18px, transparent 18px 26px); }
	.sd-binario li { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: 16px; text-align: left; }
	.sd-binario-n { grid-row: 1 / 3; }
	.sd-binario h3 { margin-top: 4px; }
	.sd-faq-area-testa { gap: 12px; }
	.sd-faq-area-n { font-size: 38px; }
	.sd-faq-area-ico { display: none; }
	.sd-manuale { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 26px 22px; }
	.sd-sommario { padding: 22px 20px; }
	.sd-via { grid-template-columns: 44px minmax(0, 1fr) auto; gap: 14px; padding: 18px; }
	.sd-via-ico { width: 44px; height: 44px; font-size: 17px; }
}
