/* WERICH.IT · Pagine legali pubbliche — leggere, accessibili, senza librerie */
:root{color-scheme:dark;--base:#090909;--surface:#141311;--ink:#f5f2eb;--sub:#c4bcb0;--gold:#ed9c20;--rule:#3a3026}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--base);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.72;-webkit-font-smoothing:antialiased}
body:before{content:"";position:fixed;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,#f4ae3c,transparent);z-index:10;pointer-events:none}
a{color:#ffbe62;text-underline-offset:4px}a:hover,a:focus-visible{color:#ffdc9e}a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.skip{position:absolute;top:-80px;left:1rem;padding:.6rem 1rem;background:var(--gold);color:#12100f;z-index:20}.skip:focus{top:1rem}
.shell{max-width:1080px;padding:0 26px;margin:auto}
.masthead{min-height:104px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);gap:24px}
.brand{font-weight:900;letter-spacing:-.09em;text-decoration:none;font-size:2rem;color:#eee;white-space:nowrap;line-height:1}
.brand .accent{color:#ff9c00;letter-spacing:-.06em}
.brand small{font-weight:650;letter-spacing:.04em;color:#dbd0ba;font-size:.57rem;display:block;margin-top:8px}
.header-nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.header-nav a{font-size:.75rem;letter-spacing:.11em;text-transform:uppercase;text-decoration:none;color:#d2c8b7}
.header-nav a[aria-current=page]{color:var(--gold)}
.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:750;font-size:.71rem}
.hero{padding:76px 0 36px;border-bottom:1px solid var(--rule)}
.hero h1{font-family:Georgia,serif;font-size:clamp(2.4rem,7vw,5.2rem);font-weight:500;line-height:1.08;letter-spacing:-.045em;margin:12px 0 22px}
.hero .intro{font-size:clamp(1.07rem,2.3vw,1.27rem);line-height:1.65;color:#d7d1c7;max-width:760px;margin:0 0 26px}
.updated{font-size:.81rem;color:var(--sub)}
.doc{padding:37px 0 94px;max-width:825px}
.doc h2{font-family:Georgia,serif;font-weight:500;font-size:clamp(1.45rem,3.6vw,2.05rem);margin:50px 0 12px;color:#fff}
.doc h3{font-size:1.04rem;margin:26px 0 7px;color:#fff}
.doc p,.doc li{color:#dad4ca;font-size:1.01rem}
.doc ul{padding-left:1.3rem}.doc li{padding-left:.3rem;margin:9px 0}
.doc strong{color:#fff}
.doc .callout{margin:32px 0;padding:20px 24px;background:linear-gradient(135deg,#1b1712,#11100e);border:1px solid #5b4426;border-left:3px solid var(--gold);border-radius:6px}
.doc .callout p{margin:.3rem 0}
.doc .index{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}
.doc .index a{text-decoration:none;border:1px solid #584026;border-radius:2px;padding:.5rem .8rem;font-size:.86rem}
.doc section{scroll-margin-top:24px}
.bottom{border-top:1px solid var(--rule);padding:31px 0 60px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.bottom small{color:#a9a092;font-size:.81rem}
.bottom nav{display:flex;gap:20px;flex-wrap:wrap}
.bottom a{font-size:.8rem;text-decoration:none;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:650px){.shell{padding:0 19px}.masthead{padding:18px 0;min-height:0;align-items:flex-start;flex-direction:column}.hero{padding:44px 0 26px}.doc{padding-bottom:60px}.doc h2{margin-top:33px}.bottom{padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
