
/* ── glossario ──────────────────────────────────────────────────────── */
.impaginato--voce{grid-template-columns:minmax(0,1fr)}
@media(min-width:1000px){.impaginato--voce{grid-template-columns:minmax(0,1fr) 280px}}
.voce h1{max-width:26ch}
.voce .corpo h2{font-size:1.35rem;margin:2rem 0 .7rem}
.anagrafe{display:grid;grid-template-columns:auto 1fr;gap:.3rem .9rem;margin:0 0 1.6rem;
  font-size:14px;padding:.8rem 1rem;background:var(--avorio);border:1px solid var(--filetto);
  border-radius:var(--raggio)}
.anagrafe dt{color:var(--lieve)}
.anagrafe dd{margin:0}
.fonti-brevi{list-style:none;margin:0;padding:0;display:grid;gap:.6rem;font-size:15.5px}
.fonti-brevi a{color:var(--accento)}
.correlati{list-style:none;margin:0;padding:0;display:grid;gap:.9rem}
.correlati a{font-family:var(--serif);font-size:1.02rem;text-decoration:none;display:block}
.correlati a:hover{text-decoration:underline;text-underline-offset:3px}
.correlati .def{display:block;font-size:12.5px;color:var(--lieve);line-height:1.35;margin-top:.15rem}

.glossario{padding:1.4rem 0 3rem;max-width:900px}
.glossario h1{font-family:var(--serif);font-size:clamp(2rem,4.4vw,2.8rem);margin:0 0 .8rem}
.glossario .sommario{max-width:62ch}
.cerca{display:block;margin:0 0 1.4rem}
.cerca span{display:block;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--lieve);margin-bottom:.4rem}
.cerca input{width:100%;max-width:520px;font:inherit;font-size:16px;padding:.6rem .8rem;
  border:1px solid var(--filetto);border-radius:var(--raggio);background:var(--carta);
  color:var(--inchiostro)}
.cerca input:focus-visible{outline:2px solid var(--accento);outline-offset:2px}

.lettere{border:0;padding:0;margin:0 0 1.8rem;display:flex;flex-wrap:wrap;gap:.35rem}
.lettere legend{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--lieve);padding:0;margin-bottom:.5rem;float:left;width:100%}
.lettere input{position:absolute;opacity:0;width:1px;height:1px}
.lettere label{display:grid;place-items:center;min-width:2.1rem;height:2.1rem;
  border:1px solid var(--filetto);border-radius:var(--raggio);cursor:pointer;
  font-weight:700;font-size:14px;font-family:var(--serif);transition:.12s}
.lettere label:hover{border-color:var(--tenue)}
.lettere input:focus-visible + label{outline:2px solid var(--accento);outline-offset:2px}
.lettere input:checked + label{background:var(--inchiostro);color:var(--carta);
  border-color:var(--inchiostro)}

.gruppo h2{font-family:var(--serif);font-size:2rem;color:var(--accento);
  margin:0 0 .9rem;padding-bottom:.4rem;border-bottom:2px solid var(--inchiostro)}
.voci{list-style:none;margin:0 0 2.4rem;padding:0;display:grid;gap:1.1rem}
@media(min-width:700px){.voci{grid-template-columns:1fr 1fr;gap:1.1rem 2rem}}
.voci li{border-bottom:1px solid var(--filetto);padding-bottom:.9rem}
.voci a{font-family:var(--serif);font-size:1.15rem;text-decoration:none;display:block}
.voci a:hover{color:var(--accento)}
.voci .cat{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--lieve);margin:.15rem 0}
.voci .def{display:block;font-size:14px;color:var(--tenue);line-height:1.4}
.nessuno{color:var(--lieve);font-style:italic}
