:root {
  --blu: #1f4e79;
  --blu-scuro: #163a5a;
  --verde: #1f7a5c;
  --verde-chiaro: #e6f3ee;
  --sfondo: #fbfaf7;
  --carta: #ffffff;
  --testo: #1e2530;
  --tenue: #5a6472;
  --bordo: #e2e0da;
  --ambra: #fff5dc;
  --raggio: 12px;
  --ombra: 0 1px 2px rgba(20, 30, 50, .06), 0 4px 16px rgba(20, 30, 50, .05);
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: var(--sfondo); color: var(--testo);
  font: 17px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
a { color: var(--blu); text-underline-offset: 2px; }
a:hover { color: var(--blu-scuro); }
h1, h2, h3, .h3 { line-height: 1.25; color: var(--blu-scuro); }
h1 { font-size: clamp(1.7rem, 4vw, 2.4rem); margin: .3em 0 .4em; }
h2 { font-size: 1.35rem; margin: 1.6em 0 .6em; }
h3, .h3 { font-size: 1.1rem; margin: 0 0 .3em; }
.contenitore { max-width: 1080px; margin: 0 auto; padding: 0 16px; }
.contenitore-stretto { max-width: 760px; }
.sezione { padding: 24px 16px 40px; }
.piccolo { font-size: .88rem; color: var(--tenue); }
.sottotitolo { font-size: 1.1rem; color: var(--tenue); max-width: 60ch; }
@media (min-width: 768px) { .sottotitolo-largo { max-width: none; } }

.anteprima { background: var(--ambra); text-align: center; font-size: .85rem; padding: 6px 12px; }
.testata { background: var(--carta); border-bottom: 1px solid var(--bordo); }
.testata-riga { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 60px; flex-wrap: wrap; }
.testata-riga { padding-top: 12px; padding-bottom: 4px; }
.logo { font-weight: 700; font-size: 1.15rem; color: var(--blu-scuro); text-decoration: none; display: flex; align-items: center; gap: 8px; }
.logo { gap: 10px; }
.logo img { display: block; height: 56px; width: auto; }
.logo-testo { font-size: 1.7rem; font-weight: 800; letter-spacing: .01em; line-height: 1; color: var(--blu-scuro); }
.logo-dsa { color: var(--verde); }
@media (max-width: 600px) { .logo img { height: 42px; } .logo-testo { font-size: 1.3rem; } }
@media (max-width: 380px) { .logo img { height: 34px; } .logo-testo { font-size: 1.1rem; } }
.testata nav { display: flex; gap: 18px; }
.testata nav a { text-decoration: none; font-weight: 500; }

.eroe { background: linear-gradient(180deg, #eef4f9 0%, var(--sfondo) 100%); padding: 40px 0 24px; }
.ricerca { background: var(--carta); border: 1px solid var(--bordo); border-radius: var(--raggio); padding: 16px; box-shadow: var(--ombra); max-width: 640px; margin-top: 20px; position: relative; }
.ricerca label { display: block; font-weight: 600; margin-bottom: 8px; }
.ricerca input { width: 100%; font-size: 1.05rem; padding: 12px 14px; border: 1px solid #c9cdd3; border-radius: 10px; }
.ricerca input:focus { outline: 3px solid #b9d3ea; border-color: var(--blu); }
.risultati { list-style: none; margin: 8px 0 0; padding: 0; }
.risultati li a { display: block; padding: 8px 10px; border-radius: 8px; text-decoration: none; }
.risultati li a:hover, .risultati li a:focus { background: #eef4f9; }
.risultati li.nessun-risultato { padding: 8px 10px; line-height: 1.8; }
.risultati li.nessun-risultato a { display: inline; padding: 0; text-decoration: underline; }
.risultati small { color: var(--tenue); }
.fiducia { font-size: .9rem; color: var(--verde); font-weight: 500; margin-top: 14px; }

.griglia-province { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
.provincia { display: block; background: var(--carta); border: 1px solid var(--bordo); border-radius: var(--raggio); padding: 16px; text-decoration: none; box-shadow: var(--ombra); transition: border-color .15s; }
.provincia:hover { border-color: var(--blu); }
.provincia-nome { display: block; font-weight: 700; font-size: 1.1rem; color: var(--blu-scuro); }
.provincia-conto { font-size: .9rem; color: var(--tenue); }

.griglia-schede { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 14px; }
.griglia-4 { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
@media (min-width: 900px) { .griglia-equipe { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); } }
.scheda { background: var(--carta); border: 1px solid var(--bordo); border-radius: var(--raggio); padding: 16px 18px; box-shadow: var(--ombra); }
.scheda p { margin: .35em 0; }
.scheda-luogo { color: var(--tenue); font-size: .95rem; }
.scheda-tel a { font-weight: 600; text-decoration: none; }
.scheda-pubblica { border-left: 4px solid var(--blu); }
.etichette { display: flex; flex-wrap: wrap; gap: 6px; margin: .5em 0; }
.etichetta { font-size: .875rem; background: #eef1f5; color: #34404f; border-radius: 999px; padding: 2px 10px; }
.etichetta-ok { background: var(--verde-chiaro); color: var(--verde); font-weight: 600; }
.etichetta-attenzione { background: var(--ambra); color: #5c4400; }
.etichetta-verifica { background: #e8f0f8; color: var(--blu, #1f4e79); font-weight: 600; }
.etichetta-verifica::before { content: none; } /* la spunta resta solo per «Dati confermati dal centro» (.etichetta-confermata) */
.link-freccia { font-weight: 600; text-decoration: none; }
.link-freccia::after { content: " →"; }

.riquadro { background: var(--carta); border: 1px solid var(--bordo); border-radius: var(--raggio); padding: 18px 20px; margin: 20px 0; box-shadow: var(--ombra); }
.riquadro h2 { margin-top: 0; }
.riquadro-evidenza { background: var(--ambra); border-color: #efd9a0; }
.due-colonne { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; }
.due-colonne .riquadro { margin: 0; }
.sezione.due-colonne { margin-top: 0; }
.spunte { padding-left: 0; list-style: none; }
.spunte li { padding-left: 1.6em; position: relative; margin: .3em 0; }
.spunte li::before { content: "✓"; position: absolute; left: 0; color: var(--verde); font-weight: 700; }
.avviso-piccolo { font-size: .88rem; background: var(--ambra); border-radius: 8px; padding: 8px 10px; }
.filtri a { white-space: nowrap; }

.dati { display: grid; grid-template-columns: max-content 1fr; gap: 6px 14px; margin: 0; }
.dati dt { font-weight: 600; color: var(--tenue); }
.dati dd { margin: 0; overflow-wrap: anywhere; }
.sede-nominata + .sede-nominata { margin-top: 10px; }
.sede-nominata .link-indicazioni { display: table; margin: .3rem 0 0; }
br.a-capo + .link-indicazioni { margin-left: 0; }
@media (max-width: 520px) { .dati { grid-template-columns: 1fr; } .dati dd { margin-bottom: 8px; } }

.briciole ol { list-style: none; padding: 0; margin: 0 0 6px; display: flex; flex-wrap: wrap; gap: 4px; font-size: .88rem; color: var(--tenue); }
.briciole li:not(:last-child)::after { content: "›"; margin-left: 6px; }

.testo { max-width: 70ch; }
.testo table { border-collapse: collapse; width: 100%; margin: 1em 0; font-size: .95rem; display: block; overflow-x: auto; }
.testo th, .testo td { border: 1px solid var(--bordo); padding: 8px 10px; text-align: left; vertical-align: top; }
.testo th { background: #eef4f9; }
.testo blockquote { margin: 1.2em 0; background: var(--verde-chiaro); border-left: 4px solid var(--verde); border-radius: 8px; padding: 10px 18px; }
.testo hr { border: 0; border-top: 1px solid var(--bordo); margin: 2em 0; }

.piede { background: #f1efe9; border-top: 1px solid var(--bordo); padding: 28px 0; margin-top: 40px; font-size: .95rem; }
.piede-link { margin-top: 10px; }
.riquadro-email { background: var(--carta); border: 1px solid var(--bordo); border-radius: var(--raggio); padding: 18px 20px; box-shadow: var(--ombra); margin: 1.2em 0; }
.riquadro-email p { margin: .4em 0; }
.email-grande { font-size: 1.4rem; font-weight: 700; color: var(--blu-scuro); user-select: all; overflow-wrap: anywhere; }
.pulsante { display: inline-block; font: inherit; font-weight: 600; background: var(--verde); color: #fff; border: 0; border-radius: 10px; padding: 10px 16px; margin: 4px 8px 4px 0; cursor: pointer; text-decoration: none; }
.pulsante:hover { color: #fff; filter: brightness(.95); }
.pulsante-secondario { background: #eef1f5; color: var(--blu-scuro); }
.pulsante-secondario:hover { color: var(--blu-scuro); }

/* Mappa del percorso: verticale su telefono, orizzontale su schermi larghi */
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mappa-intro { color: var(--tenue); max-width: 60ch; }
.tappe { list-style: none; margin: 18px 0 0; padding: 0; position: relative; }
.tappa { position: relative; display: flex; gap: 14px; padding: 0 0 20px; }
.tappa::before { content: ""; position: absolute; left: 21px; top: 44px; bottom: 0; width: 2px; background: var(--bordo); }
.tappa:last-child::before { display: none; }
.tappa-num { flex: 0 0 44px; width: 44px; height: 44px; align-self: flex-start; border-radius: 50%; background: var(--verde-chiaro); color: var(--verde); font-weight: 700; display: flex; align-items: center; justify-content: center; border: 2px solid var(--carta); box-shadow: 0 0 0 1px var(--bordo); position: relative; z-index: 1; }
.tappa-corpo p { margin: 0; }
.tappa-nome { font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--verde); }
.tappa-frase { font-weight: 700; color: var(--blu-scuro); margin-top: 2px !important; }
.tappa-testo { font-size: .95rem; color: var(--tenue); margin: 4px 0 6px !important; }
.tappa-link { font-size: .92rem; font-weight: 600; text-decoration: none; }
.tappa-link::after { content: " →"; }
@media (min-width: 960px) {
  .tappe { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
  .tappa { flex-direction: column; padding: 0; }
  .tappa::before { left: 44px; right: -14px; top: 21px; bottom: auto; width: auto; height: 2px; }
}

.dettagli { margin-top: 12px; }
.dettagli summary { cursor: pointer; font-weight: 600; color: var(--blu-scuro); }
.dettagli ul { margin: 8px 0 0; padding-left: 1.2em; }
.membri { columns: 2 220px; column-gap: 20px; }
.membri li { break-inside: avoid; margin: 2px 0; }

abbr[title] { text-decoration: underline dotted; text-underline-offset: 2px; cursor: help; }
abbr[title]:focus { outline: none; }
abbr[title]:focus::after { content: " (" attr(title) ")"; font-size: .9em; }

/* Cartina e scelta della regione */
.duo-cartina{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start;margin:8px 0 24px}
.cartina{width:100%;height:auto;display:block;max-width:520px}
.cartina path{stroke:#fff;stroke-width:1.2;stroke-linejoin:round;transition:fill .15s}
.cartina path.cop{fill:var(--verde)}
.cartina a:hover path.cop,.cartina a:focus path.cop{fill:#145640}
.cartina a:focus-visible path{stroke:#163a5a;stroke-width:3}
.cartina path.no{fill:#e9e7e1}
.cartina path.pub{fill:#9ec0dc}
.cartina a:hover path.pub,.cartina a:focus path.pub{fill:var(--blu)}
.legenda{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.85rem;color:var(--tenue);margin-top:10px}
.legenda i{display:inline-block;width:14px;height:14px;border-radius:3px;vertical-align:-2px;margin-right:6px}
.leg-cop{background:var(--verde)}.leg-no{background:#e9e7e1}.leg-pub{background:#9ec0dc}
.elenco-macro h2{font-size:1.05rem;margin:14px 0 8px}
.chip-regioni{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.chip-regioni li{display:inline-block;border-radius:999px;font-size:.95rem}
.chip-regioni li > a:only-child{display:inline-block;padding:6px 12px;border-radius:999px;background:var(--verde-chiaro);color:var(--blu-scuro);text-decoration:none}
.chip-regioni li > a:only-child:hover{background:var(--verde);color:#fff}
.chip-regioni .chip-doppio{padding:6px 12px;background:var(--verde-chiaro);color:var(--blu-scuro)}
.chip-regioni .chip-grigio{padding:0;background:#f1efea;color:#4f5763}
.chip-regioni li.chip-grigio > a{background:#f1efea;color:#4f5763;border:1px dashed #b9b5ab}
.chip-regioni li.chip-grigio > a:hover{background:#e2dfd7;color:#1c2733}
.chip-grigio span{font-size:.82rem}
.cartina a:hover path.no,.cartina a:focus path.no{fill:#cfccc4}
.titolo-regione{margin:22px 0 10px;font-size:1.15rem}
.titolo-regione a{text-decoration:none}
@media (max-width:760px){.duo-cartina{grid-template-columns:1fr}}

.titolo-gruppo{margin:22px 0 10px;font-size:1.1rem}
.sedi-pubbliche { margin: 0 0 .8rem; padding: 0; list-style: none; font-size: .95rem; }
.sedi-pubbliche li { margin: 0; padding: .45rem 0; border-top: 1px solid var(--bordo); }
.sedi-pubbliche li:first-child { border-top: 0; padding-top: .1rem; }
.sede-nome { display: block; color: var(--blu-scuro); }
.sede-resto { display: block; color: var(--testo); }

.chip-regioni li.chip-pub > a{display:inline-block;padding:5px 11px;border-radius:999px;background:#e3edf7;border:1px solid #9ec0dc;color:var(--blu-scuro);text-decoration:none}
.chip-regioni li.chip-pub > a:hover{background:var(--blu);color:#fff}
.chip-tag{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;opacity:.9;margin-left:4px}

.link-indicazioni{display:inline-block;margin:.35rem 0 .1rem .5rem;padding:.15rem .6rem;border:1px solid currentColor;border-radius:999px;font-size:.85rem;white-space:nowrap;text-decoration:none}
.link-indicazioni::before{content:"\2197\00a0"}
.link-indicazioni:hover,.link-indicazioni:focus{text-decoration:underline}

/* v038: gli indirizzi email lunghi vanno a capo sui telefoni (evita lo scorrimento orizzontale) */
.scheda-pubblica p, .scheda-pubblica li, .sedi-pubbliche li, .scheda dd { overflow-wrap: anywhere; }
.riquadro li, .riquadro p, .contenitore li { overflow-wrap: anywhere; }

/* Home: spazi regolari */
.eroe { padding: 44px 0 36px; }
.eroe-regioni { margin: 14px 0 0; }
.bottone { display: inline-block; padding: 10px 18px; border-radius: 999px; background: var(--verde); color: #fff; font-weight: 600; text-decoration: none; }
.bottone::after { content: " →"; }
.bottone:hover, .bottone:focus { background: #145640; color: #fff; }
.numeri { list-style: none; padding: 0; margin: 26px 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.numeri li { background: var(--carta); border: 1px solid var(--bordo); border-radius: var(--raggio); padding: 12px 16px; font-size: .92rem; color: var(--tenue); }
.numeri strong { display: block; font-size: 1.35rem; color: var(--verde); line-height: 1.2; }
.sezione-home { padding-top: 32px; padding-bottom: 32px; }
.sezione-home > h2:first-child, .sezione-home > *:first-child > h2:first-child { margin-top: 0; }
.sezione-home .riquadro { margin: 0; }

/* Salta al contenuto (visibile solo con la tastiera) */
.salta{position:absolute;left:8px;top:-60px;z-index:100;background:var(--blu-scuro);color:#fff;padding:10px 14px;border-radius:8px;text-decoration:none}
.salta:focus{top:8px;color:#fff}
/* Aree cliccabili più grandi (WCAG 2.5.8) */
.scheda .link-freccia{display:inline-block;padding:10px 0;min-height:44px;box-sizing:border-box}
.briciole a{display:inline-block;padding:3px 0}
/* Indice in cima alle pagine */
.indice-pagina{margin:14px 0 6px;padding:10px 14px;background:#fff;border:1px solid var(--bordo);border-radius:10px;font-size:.95rem;line-height:1.9}
.indice-pagina a{white-space:nowrap}
.elenco-pubblico li{margin-bottom:6px}
/* Filtro nelle liste lunghe */
.filtro{background:#fff;border:1px solid var(--bordo);border-radius:12px;padding:12px 14px;margin:10px 0 14px}
.filtro label{display:block;font-weight:600;margin-bottom:6px}
.filtro input{width:100%;box-sizing:border-box;font:inherit;padding:10px 12px;border:1px solid #c9ced6;border-radius:8px}
.filtro input:focus{outline:3px solid #b9d3ea;border-color:var(--blu)}
.filtro-conto{margin:6px 0 0;font-size:.9rem;color:var(--tenue)}
.filtro-su{margin:10px 0 24px}
[hidden]{display:none !important}
/* Ingressi rapidi in home */
.ingressi{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:8px;margin-bottom:8px}
.ingresso{display:block;background:#fff;border:1px solid var(--bordo);border-radius:12px;padding:14px 16px;text-decoration:none;color:var(--testo)}
.ingresso strong{display:block;color:var(--blu-scuro);margin-bottom:4px}
.ingresso span{font-size:.95rem;color:var(--tenue)}
.ingresso:hover,.ingresso:focus{border-color:var(--verde);background:var(--verde-chiaro)}
.riquadro-avviso{background:var(--ambra);border-color:#e0c46c}
/* v059 guide: riquadri, indice, studi citati */
.indice-guida { margin: 14px 0 18px; padding: 10px 14px; background: #fff; border: 1px solid var(--bordo); border-radius: 10px; }
.indice-guida summary { cursor: pointer; font-weight: 600; color: var(--blu-scuro); }
.indice-guida ol { margin: 8px 0 2px; padding-left: 1.3em; line-height: 1.6; }
.indice-guida li { margin: 3px 0; }
.studi-citati { margin: .6em 0 1em; font-size: .9rem; }
.studi-citati summary { cursor: pointer; font-weight: 600; color: var(--blu-scuro); font-size: 1rem; }
.studi-citati ul { margin-top: 8px; }
.studi-citati li { overflow-wrap: anywhere; }
.testo li[id] { scroll-margin-top: 12px; }
/* v066: riquadro "Avete già una diagnosi privata?" e tabella regioni */
.riquadro-diagnosi { margin: 14px 0 6px; padding: 10px 14px; background: #fff; border: 1px solid var(--bordo); border-left: 4px solid var(--blu); border-radius: 10px; font-size: .95rem; }
.riquadro-diagnosi p { margin: 0; }
.tabella-scorre { overflow-x: auto; }
.tabella-regioni th[scope="row"] { white-space: nowrap; }
@media (max-width: 600px) { .tabella-regioni th[scope="row"] { white-space: normal; } .tabella-regioni { font-size: .92rem; } }
/* v068: liste da stampare e stampa in generale */
.riga-stampa { margin: -4px 0 10px; }
.bottone-stampa { font: inherit; font-size: .9rem; padding: 6px 12px; border: 1px solid var(--bordo); border-radius: 8px; background: #fff; color: var(--blu-scuro); cursor: pointer; }

.piede-stampa { display: none; }
@media print {
  .testata, .piede, .salta, .riga-stampa, .indice-guida, .briciole, .filtro, .ricerca, nav { display: none !important; }
  body { background: #fff; color: #000; font-size: 12pt; }
  a { color: #000; text-decoration: none; }
  .stampa-sezione .no-stampa { display: none !important; }
  .stampa-sezione .piede-stampa { display: block; margin-top: 18pt; font-size: 9pt; color: #333; border-top: 1px solid #999; padding-top: 6pt; }
  .stampa-sezione h1 { font-size: 16pt; }
  .stampa-sezione ol li, .stampa-sezione ul li { margin-bottom: 10pt; }
}
/* Pagine città (brief 01/10/2026) */
.in-breve{background:var(--carta);border:1px solid var(--bordo);border-left:4px solid var(--blu);border-radius:var(--raggio);padding:14px 16px;margin:14px 0 18px;box-shadow:var(--ombra)}
.in-breve-titolo{font-size:1.05rem;margin:0 0 8px}
.in-breve dl{margin:0}
.in-breve-riga{padding:7px 0;border-top:1px solid var(--bordo)}
.in-breve-riga:first-child{border-top:0;padding-top:0}
.in-breve dt{font-weight:700;font-size:.9rem;color:var(--blu)}
.in-breve dd{margin:2px 0 0;font-size:.95rem;line-height:1.45}
@media(min-width:760px){.in-breve-riga{display:grid;grid-template-columns:170px 1fr;gap:12px}.in-breve dd{margin:0}}
.zone{margin:6px 0 18px}
.zone-titolo{font-weight:700;margin:0 0 6px}
.zone ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.zone a{display:inline-block;padding:6px 12px;border:1px solid var(--bordo);border-radius:999px;background:#fff;text-decoration:none;font-size:.92rem}
.zone a span{color:var(--tenue);font-size:.85rem;margin-left:2px}
.titolo-gruppo{margin:26px 0 8px;scroll-margin-top:12px}
.gruppo-quartieri{display:block;font-weight:400;font-size:.88rem;color:var(--tenue)}
.chip-riga{display:flex;gap:8px;overflow-x:auto;padding:2px 0 8px;margin:4px 0 2px;-webkit-overflow-scrolling:touch}
.chip{flex:0 0 auto;font:inherit;font-size:.9rem;padding:6px 12px;border:1px solid #c9ced6;border-radius:999px;background:#fff;color:inherit;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--blu);border-color:var(--blu);color:#fff}
.scheda-confermata{border-color:#b9d3ea}
.faq-citta h3{font-size:1.02rem;margin:18px 0 4px}
.faq-citta p{margin:0 0 6px}
.link-citta ul{padding-left:1.1em}
.citta-link{margin:14px 0 6px}
.citta-link-titolo{font-size:1rem;margin:0 0 6px}
.citta-link ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.citta-link a{display:inline-block;padding:6px 12px;border:1px solid var(--bordo);border-radius:999px;background:#fff;text-decoration:none;font-size:.92rem}
.citta-link a span{color:var(--tenue);font-size:.85rem;margin-left:2px}
.scheda-altre-sedi{margin:-2px 0 6px;font-size:.9rem;color:var(--tenue)}

/* Card dei disturbi (home e guide): le righe interne si allineano tra le card della stessa fila
   (es. i link della Discalculia, che ha la descrizione più corta). Spaziature identiche a prima. (02/10/2026) */
@supports (grid-template-rows: subgrid){
  .griglia-4 > .scheda{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0;align-content:start}
  .griglia-4 > .scheda > h3{margin-bottom:0}
  .griglia-4 > .scheda > p{margin:.35em 0 0}
  .griglia-4 > .scheda > p:last-child{margin-bottom:.35em}
}

/* Pagina del badge: esempi delle diciture */
.esempi-badge{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.esempi-badge img{display:block;max-width:100%;height:auto}

/* Spunta «Dati confermati dal centro»: spunta bianca in un cerchietto blu (approvata da Nicolò il 03/10/2026) */
.etichetta-confermata::before { content: ""; display: inline-block; width: 1.05em; height: 1.05em; margin-right: .35em; vertical-align: -.18em;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='10' fill='%231f4e79'/%3E%3Cpath d='M5.6 10.4l3 3 5.8-6.4' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain; }

/* v133: link «in su» in fondo alle schede (provincia e guida regionale) */
.link-su{list-style:none;margin:28px 0 8px;padding:0}
.link-su li{margin:0 0 6px}
.link-su .link-freccia{display:inline-block;padding:6px 0;min-height:44px;box-sizing:border-box}

.riquadro-centro{background:var(--verde-chiaro);border-color:#bfe0d2;border-left:4px solid var(--verde);margin:20px 0}
.riquadro-centro h2{color:var(--verde)}

/* Finestrella del glossario – proposta della Biblioteca. Da aggiungere a static/style.css.
   Usa i colori del sito (--verde, --verde-chiaro, --blu, --blu-scuro, --carta, --testo, --tenue, --bordo).
   --velo e --ombra-finestra sono nuove. */
:root{--velo:rgba(20,30,50,.28);--ombra-finestra:0 2px 6px rgba(20,30,50,.10),0 12px 32px rgba(20,30,50,.14);--font-finestra:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}

a.parola{
  font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer;
  text-decoration:underline dotted;text-decoration-color:var(--verde);text-decoration-thickness:2px;text-underline-offset:4px;
  border-radius:3px;
}
a.parola[data-attiva]::after{content:"";display:inline-block;width:.42em;height:.42em;margin-left:.18em;vertical-align:.38em;
  border-radius:50%;background:var(--verde);opacity:.75}
a.parola[data-attiva]:hover{background:var(--verde-chiaro)}
a.parola:focus-visible{outline:2px solid var(--blu);outline-offset:2px}
a.parola[aria-expanded="true"]{background:var(--verde-chiaro)}

/* La finestrella */
.velo{position:fixed;inset:0;background:var(--velo);z-index:9}
.finestra{position:fixed;z-index:10;background:var(--carta);color:var(--testo);border:1px solid var(--bordo);
  box-shadow:var(--ombra-finestra);font-size:.97rem;line-height:1.55}
.finestra h3{margin:0 2.2rem .35em 0;font-size:1.02rem;color:var(--blu-scuro);line-height:1.3}
.finestra p{margin:0 0 .6em}
.finestra .vai{font-size:.88rem}
.finestra .vai a{color:var(--blu)}
.chiudi{position:absolute;top:8px;right:8px;width:36px;height:36px;border:0;border-radius:50%;background:transparent;
  color:var(--tenue);font:600 1.3rem/1 var(--font-finestra);cursor:pointer}
.chiudi:hover,.chiudi:focus-visible{background:var(--verde-chiaro);color:var(--testo);outline:none}
/* telefono: pannello dal basso */
.finestra.pannello{left:0;right:0;bottom:0;border-radius:16px 16px 0 0;
  padding:22px 20px calc(18px + env(safe-area-inset-bottom,0px));max-height:70vh;overflow:auto;
  animation:sale .18s ease-out}
.finestra.pannello::before{content:"";position:absolute;top:8px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:2px;background:var(--bordo)}
/* computer: bolla vicino alla parola */
.finestra.bolla{width:min(360px,calc(100vw - 32px));border-radius:12px;padding:16px 18px 12px;animation:appare .12s ease-out}
@keyframes sale{from{transform:translateY(24px);opacity:.4}to{transform:none;opacity:1}}
@keyframes appare{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.finestra{animation:none!important}}

@media print{a.parola{text-decoration:none}a.parola[data-attiva]::after{display:none}.finestra,.velo{display:none!important}}
.nowrap{white-space:nowrap}
