/* Vento Dorato — base */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:16.5px;line-height:1.74;color:#4e463c;background:#f6f1e7;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:#8a6510;text-decoration:none;transition:color .22s}
:root{
--gold:#b8860b;--gold-d:#8a6510;--gold-l:#d9ae3c;--gold-p:#f2e6c8;
--esp:#2b2118;--esp-2:#3d3025;
--sand:#f6f1e7;--paper:#fffdf8;--soft:#efe7d7;--line:#e2d7c2;--line-2:#c9b997;
--body:#4e463c;--mute:#857a6a;--faint:#a89a85;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif
}
h1,h2,h3,h4{font-family:var(--serif);color:var(--esp);font-weight:600;letter-spacing:-.016em;line-height:1.16}
h1{font-size:clamp(2rem,4.2vw,3.3rem);font-weight:500}
h2{font-size:clamp(1.48rem,2.6vw,2.1rem);font-weight:500;margin-bottom:14px}
h3{font-size:1.14rem;line-height:1.32}
p{color:var(--body)}
.wrap{max-width:1200px;margin:0 auto;padding:0 34px}
.narrow{max-width:900px;margin:0 auto;padding:0 34px}
.tag{display:inline-flex;align-items:center;gap:11px;font-size:.7rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-d)}
.tag::before{content:"";width:26px;height:1px;background:var(--gold)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.rv{opacity:0;transform:translateY(16px);transition:opacity .65s cubic-bezier(.2,.7,.3,1),transform .65s cubic-bezier(.2,.7,.3,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}
header{position:sticky;top:0;z-index:100;background:rgba(246,241,231,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:22px}
.brand{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-size:1.28rem;font-weight:600;color:var(--esp);letter-spacing:-.026em}
.brand svg{width:27px;height:27px;flex-shrink:0}
.nav ul{display:flex;gap:24px;list-style:none;align-items:center}
.nav ul a{font-size:.85rem;font-weight:500;color:var(--mute);position:relative;padding:5px 0}
.nav ul a:hover{color:var(--gold-d)}
.nav ul a::after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:1px;background:var(--gold);transition:right .3s cubic-bezier(.2,.7,.3,1)}
.nav ul a:hover::after{right:0}
.nav .cta{background:var(--esp);color:var(--sand);padding:10px 20px;border-radius:2px;font-weight:600}
.nav .cta:hover{background:var(--gold-d);color:#fff}
.nav .cta::after{display:none}
.burger{display:none;background:none;border:1px solid var(--line-2);padding:9px;border-radius:2px;cursor:pointer;color:var(--esp)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 28px;border-radius:2px;font-size:.87rem;font-weight:600;cursor:pointer;border:1px solid transparent;font-family:inherit;transition:all .24s;text-align:center}
.b-solid{background:var(--esp);color:var(--sand)}
.b-solid:hover{background:var(--gold-d);color:#fff;transform:translateY(-2px)}
.b-gold{background:var(--gold);color:#fff}
.b-gold:hover{background:var(--gold-d);color:#fff;transform:translateY(-2px)}
.b-ghost{border-color:var(--line-2);color:var(--esp);background:transparent}
.b-ghost:hover{border-color:var(--esp);background:var(--paper);transform:translateY(-2px)}
.acts{display:flex;gap:12px;flex-wrap:wrap}
section{border-bottom:1px solid var(--line)}
.sec-top{display:flex;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}
.sec-no{font-size:.71rem;font-weight:700;letter-spacing:.22em;color:var(--gold-d)}
.sec-nm{font-size:.71rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mute)}
.sec-in{padding:60px 0 68px}
footer{background:var(--esp);color:rgba(246,241,231,.62);padding:60px 0 26px}
.fnote{border-left:2px solid var(--gold-l);padding:4px 0 4px 24px;margin-bottom:26px;max-width:94ch}
.fnote b{display:block;font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-l);margin-bottom:10px}
.fnote p{color:rgba(246,241,231,.62);font-size:.87rem;line-height:1.76}
.f-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:48px;padding:34px 0 42px;border-top:1px solid rgba(246,241,231,.14);border-bottom:1px solid rgba(246,241,231,.14);margin-top:26px}
.f-brand .brand{color:var(--sand);margin-bottom:16px}
.f-brand p{color:rgba(246,241,231,.46);font-size:.87rem;line-height:1.76;max-width:38ch}
footer h4{font-family:inherit;font-size:.69rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-l);margin-bottom:18px}
footer ul{list-style:none}
footer li{margin-bottom:10px;font-size:.87rem;color:rgba(246,241,231,.46)}
footer a{color:rgba(246,241,231,.46);font-size:.87rem}
footer a:hover{color:var(--sand)}
.f-bot{padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;font-size:.78rem;color:rgba(246,241,231,.34)}
.ck{position:fixed;left:34px;bottom:34px;max-width:450px;background:var(--paper);border:1px solid var(--line-2);padding:24px 26px;border-radius:3px;z-index:200;display:none;box-shadow:0 22px 60px rgba(43,33,24,.18)}
.ck.on{display:block;animation:up .4s cubic-bezier(.2,.7,.3,1)}
@keyframes up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.ck b{display:block;font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);margin-bottom:9px}
.ck p{font-size:.86rem;line-height:1.66;color:var(--body);margin-bottom:16px}
.ck p a{color:var(--gold-d);border-bottom:1px solid var(--gold)}
.ck .btn{padding:11px 20px;font-size:.8rem}
/* documenti e schede */
.doc{padding:52px 0 84px}
.doc .eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:.7rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-d);margin-bottom:20px}
.doc .eyebrow::before{content:"";width:26px;height:1px;background:var(--gold)}
.doc h1{margin-bottom:18px}
.doc .lead{font-size:1.05rem;line-height:1.78;color:var(--body);margin-bottom:10px}
.doc .updated{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--faint);margin-bottom:42px;padding-bottom:22px;border-bottom:1px solid var(--line-2)}
.doc h2{font-size:1.3rem;margin:42px 0 14px;padding-top:20px;border-top:1px solid var(--line)}
.doc h3{font-size:1.02rem;color:var(--gold-d);margin:24px 0 8px;font-family:inherit;font-weight:700;letter-spacing:0}
.doc p{margin-bottom:15px}
.doc ul,.doc ol{margin:0 0 18px 22px}
.doc li{margin-bottom:9px}
.doc strong{color:var(--esp);font-weight:700}
.doc a{color:var(--gold-d);border-bottom:1px solid var(--gold)}
.doc a:hover{background:var(--gold-p)}
.box{border-left:2px solid var(--gold);background:var(--gold-p);padding:22px 26px;margin:24px 0}
.box.warn{border-left-color:var(--esp);background:var(--soft)}
table{width:100%;border-collapse:collapse;margin:22px 0;font-size:.92rem;background:var(--paper);border:1px solid var(--line)}
th{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line-2);font-size:.69rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-d)}
td{padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.62}
tbody tr:last-child td{border-bottom:none}
td:first-child{color:var(--esp);font-weight:600}
.back{font-size:.83rem;font-weight:500;color:var(--mute)}
.back:hover{color:var(--gold-d)}
.f-links{margin-bottom:16px;display:flex;gap:22px;justify-content:center;flex-wrap:wrap}
.f-simple{background:var(--esp);color:rgba(246,241,231,.42);padding:42px 0;text-align:center;font-size:.82rem}
.f-simple a{color:rgba(246,241,231,.6);font-size:.85rem}
.f-simple a:hover{color:var(--sand)}
@media (max-width:1080px){
.nav ul{display:none}
.burger{display:block}
.nav ul.open{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--paper);flex-direction:column;align-items:stretch;padding:12px 34px 20px;gap:0;border-bottom:1px solid var(--line);box-shadow:0 14px 34px rgba(43,33,24,.09)}
.nav ul.open li{border-top:1px solid var(--line)}
.nav ul.open li:first-child{border-top:none}
.nav ul.open a{padding:14px 0;display:block}
.nav ul.open .cta{margin-top:12px;text-align:center;justify-content:center}
header{position:relative}
.f-grid{grid-template-columns:1fr 1fr;gap:32px}
.sec-in{padding:46px 0 54px}
}
@media (max-width:700px){
.wrap,.narrow{padding:0 20px}
.f-grid{grid-template-columns:1fr}
.f-bot{flex-direction:column}
.ck{left:16px;right:16px;bottom:16px;max-width:none}
.acts{flex-direction:column;align-items:stretch}
table,tbody,tr,td{display:block;width:100%}
thead{display:none}
tr{border-bottom:1px solid var(--line-2);padding:14px 18px}
td{border:none;padding:5px 0}
td:first-child{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-d);margin-bottom:5px}
}
