/* Privacy e Termini (server/views/legal.mjs): intestazione semplice, avviso «testo d'esempio», indice delle sezioni, testo lungo (.prose). */

.legal-head .stack { --stack: 1.1rem; }
.legal-head__title { font-size: clamp(2.6rem, 6.4vw, 5.2rem); }
.legal__alert { margin-bottom: clamp(28px, 4vw, 44px); }
.legal__toc { margin-bottom: clamp(36px, 5vw, 56px); padding: 18px 22px; border: 1px solid var(--line); border-radius: var(--r-card); background: var(--bg-2); }
.legal__toc-title { margin-bottom: 8px; font: 500 var(--fs-kicker)/1.4 var(--font-ui); letter-spacing: .16em; text-transform: uppercase; color: var(--muted); }
.legal__toc ol { display: grid; gap: 0 28px; counter-reset: legal; }
@media (min-width: 640px) { .legal__toc ol { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.legal__toc li { counter-increment: legal; }
.legal__toc a { display: flex; align-items: baseline; gap: 10px; min-height: 44px; padding: 10px 0; border-bottom: 1px solid var(--line); color: var(--text); font-size: var(--fs-small); transition: color .25s; }
.legal__toc a::before { content: counter(legal, decimal-leading-zero); font: 400 1rem/1 var(--font-display); color: var(--accent); font-variant-numeric: lining-nums; }
@media (hover: hover) { .legal__toc a:hover { color: var(--accent-2); } }
.legal__text h2 { scroll-margin-top: calc(var(--header-space) + 16px); }
.legal__text h2:first-child { margin-top: 0; }
.legal__text p, .legal__text li { color: var(--muted); }
.legal__text a { overflow-wrap: anywhere; }
.legal__updated { margin-top: 2.4em; padding-top: 18px; border-top: 1px solid var(--line); font-size: var(--fs-xs); }

/* etichette brevi in maiuscoletto: niente sillabazione automatica (tedesco, russo, francese), come .kicker e .label di site.css */
:is(.legal__toc-title) { hyphens: manual; -webkit-hyphens: manual; }
