@font-face{font-family:"Instrument Sans";src:url("../fonts/instrument-sans-regular.woff") format("woff");font-weight:400 500;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url("../fonts/instrument-sans-bold.woff") format("woff");font-weight:600 700;font-display:swap}
:root{--bg:#f6f2ea;--ink:#0b1b2b;--mute:#566274;--line:#e0d8c8;--gold:#c8962e;--gold2:#e6c27a;--navy:#0b1b2b;--card:#fff;--serif:"Iowan Old Style","Palatino Linotype",Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px;-webkit-text-size-adjust:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 "Instrument Sans",system-ui,sans-serif;padding-bottom:env(safe-area-inset-bottom,0)}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.12;margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,6vw,4rem)}h2{font-size:clamp(1.7rem,3.6vw,2.6rem)}h3{font-size:1.2rem}
p{margin:0 0 1em;max-width:62ch}a{color:#8a5f0c}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.w{max-width:1080px;margin:0 auto;padding:0 20px}
.eyebrow{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--gold);margin:0 0 12px}
header{position:sticky;top:0;z-index:5;background:var(--navy);padding-top:env(safe-area-inset-top,0)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:62px}
.logo{font:700 1.35rem var(--serif);color:#fff;text-decoration:none;letter-spacing:.01em}
.logo b{color:var(--gold2)}
nav{display:flex;gap:2px;align-items:center}
nav a{color:#cdd6e2;text-decoration:none;padding:8px 11px;border-radius:6px;font-weight:500;font-size:.95rem}
nav a:hover{color:#fff}
nav a.cta{background:var(--gold);color:var(--navy);font-weight:600;margin-left:6px}
.btn{display:inline-block;background:var(--navy);color:#fff;padding:14px 26px;border-radius:8px;font:600 1rem "Instrument Sans",sans-serif;text-decoration:none;border:0;cursor:pointer}
.btn.gold{background:var(--gold);color:var(--navy)}.btn.out{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.4)}
.hero{background:var(--navy);color:#fff;padding:64px 0 72px}
.hero .w{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero p.lead{font-size:1.15rem;color:#b8c4d4}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.frame{position:relative}
.frame::before{content:"";position:absolute;inset:18px -14px -14px 18px;border:2px solid var(--gold);border-radius:12px}
img{max-width:100%}
.frame img,.pic{position:relative;width:100%;height:auto;display:block;border-radius:12px}
.stats{background:var(--card);border-bottom:1px solid var(--line)}
.stats .w{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding-top:26px;padding-bottom:26px}
.stats b{display:block;font:700 1.9rem var(--serif);color:var(--gold)}.stats span{font-size:.92rem;color:var(--mute)}
section{padding:68px 0}
.head{max-width:640px;margin-bottom:34px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:24px}
.card .n{font:700 1.6rem var(--serif);color:var(--gold);display:block;margin-bottom:6px}
.card p{margin:0;color:var(--mute);font-size:.98rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.steps{list-style:none;margin:0;padding:0;counter-reset:s}
.steps li{counter-increment:s;position:relative;padding:0 0 22px 56px}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:38px;height:38px;border-radius:50%;background:var(--navy);color:var(--gold2);font:700 1.05rem var(--serif);display:grid;place-items:center}
.steps h3{margin:0 0 2px}.steps p{margin:0;color:var(--mute)}
.alt{background:var(--card);border-block:1px solid var(--line)}
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tbl{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:540px}
th,td{text-align:left;padding:16px 14px;border-bottom:1px solid var(--line);vertical-align:top}
th{font:700 1.1rem var(--serif)}td.p{font:700 1.25rem var(--serif);color:var(--gold);white-space:nowrap}
td span{display:block;color:var(--mute);font-size:.93rem}
.dark{background:var(--navy);color:#fff}
.dark p,.dark details p{color:#b8c4d4}.dark a{color:var(--gold2)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px}
details{border-bottom:1px solid #2a3c52;padding:14px 0}
summary{font-weight:600;cursor:pointer}details p{margin:10px 0 0}
form{display:grid;gap:14px}label{font-weight:600;font-size:.95rem;display:grid;gap:6px}
input,select,textarea{font:inherit;padding:12px;border:0;border-radius:8px;width:100%;background:#fff;color:var(--ink)}
.chk{display:flex;gap:10px;font-weight:400;align-items:flex-start;color:#b8c4d4}.chk input{width:auto;margin-top:6px}
.ok{display:none;background:var(--gold2);color:var(--navy);padding:14px;border-radius:8px;font-weight:600}
.cinfo{list-style:none;margin:18px 0 0;padding:0;color:#b8c4d4}.cinfo li{margin-bottom:6px}
footer{background:#07121e;color:#8e9db0;padding:30px 0 40px;font-size:.88rem}footer p{max-width:none}footer a{color:#e6c27a}
.flinks{display:flex;gap:6px 18px;flex-wrap:wrap;margin:0 0 14px}
@media(max-width:860px){.grid4{grid-template-columns:1fr 1fr}.stats .w{grid-template-columns:1fr 1fr}.cols{grid-template-columns:1fr}}
@media(max-width:760px){.hero{padding:40px 0 56px}.hero .w,.split,.two{grid-template-columns:1fr;gap:34px}.frame::before{inset:12px -8px -8px 12px}section{padding:48px 0}nav a:not(.cta){display:none}.btn{width:100%;text-align:center}}
@media(max-width:480px){.grid4{grid-template-columns:1fr}body{font-size:16px}}
/* pagine legali */
.legal{padding:48px 0 64px}.legal .w{max-width:820px}
.legal h1{font-size:clamp(1.9rem,5vw,2.8rem)}.legal h2{font-size:1.4rem;margin:1.8em 0 .5em}
.legal p,.legal li{max-width:70ch}.legal ul{padding-left:1.3em;margin:0 0 1em}.legal li{margin-bottom:.4em}
.legal .upd{color:var(--mute);font-size:.95rem}
.legal table{min-width:0;margin:0 0 1.2em;background:#fff}.legal th{font:600 .95rem "Instrument Sans",sans-serif;width:34%}
