@font-face{font-family:"Gloock";src:url("../fonts/gloock-regular.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Work Sans";src:url("../fonts/work-sans-regular.woff") format("woff");font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:"Work Sans";src:url("../fonts/work-sans-bold.woff") format("woff");font-weight:600 700;font-style:normal;font-display:swap}
:root{--paper:#f5efe4;--paper2:#ece3d2;--ink:#1a2420;--mute:#53605a;--line:#d8cdb8;--pine:#14342b;--pine2:#1f4a3d;--terra:#b4452f;--gold:#e0a93b;--card:#fffaf0}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.7 "Work Sans",system-ui,sans-serif;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);font-synthesis:none}
h1,h2,h3{font-family:"Gloock",Georgia,serif;font-weight:400;line-height:1.1;margin:0 0 .5em;letter-spacing:-.005em}
h1{font-size:clamp(2.5rem,6.6vw,4.9rem)}h2{font-size:clamp(1.9rem,4vw,2.9rem)}h3{font-size:1.3rem;line-height:1.25}
h1 em,h2 em{font-style:normal;color:var(--terra)}
p{margin:0 0 1em;max-width:62ch}a{color:var(--terra)}
:focus-visible{outline:3px solid var(--terra);outline-offset:3px}
.w{max-width:1120px;margin:0 auto;padding:0 22px}
.eyebrow{font:700 .78rem "Work Sans",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--terra);margin:0 0 14px}
header{position:sticky;top:0;z-index:5;background:var(--paper);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;flex-wrap:wrap}
.logo{font:400 1.6rem "Gloock",Georgia,serif;color:var(--pine);text-decoration:none;display:flex;align-items:center;gap:9px}
.logo svg{width:26px;height:26px}
nav{display:flex;gap:4px;flex-wrap:wrap;align-items:center}
nav a{color:var(--ink);text-decoration:none;padding:8px 12px;font-weight:500;font-size:.93rem;border-bottom:2px solid transparent}
nav a:hover{border-bottom-color:var(--terra)}
nav a.cta{background:var(--pine);color:var(--paper);border-radius:4px;margin-left:8px;border-bottom:0}
nav a.cta:hover{background:var(--pine2)}
.btn{display:inline-block;background:var(--terra);color:#fff;padding:15px 28px;border-radius:4px;font:700 .98rem "Work Sans",sans-serif;text-decoration:none;border:0;cursor:pointer}
.btn:hover{background:#9a3925}
.btn.ghost{background:transparent;color:var(--pine);box-shadow:inset 0 0 0 2px var(--pine)}
.btn.ghost:hover{background:var(--pine);color:var(--paper)}
.btn.gold{background:var(--gold);color:var(--ink)}.btn.gold:hover{background:#cf9829}
.hero{padding:64px 0 56px}
.hero .w{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hero p.lead{font-size:1.18rem;color:var(--mute)}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.art{width:100%;max-width:420px;justify-self:center;display:block;height:auto}
.facts{background:var(--pine);color:var(--paper)}
.facts .w{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.facts div.f{padding:26px 24px;border-left:1px solid #34584c}
.facts div.f:first-child{border-left:0;padding-left:0}
.facts strong{display:block;font:400 1.35rem "Gloock",Georgia,serif;color:var(--gold);margin-bottom:2px}
.facts span{color:#cfdcd5;font-size:.95rem}
section{padding:80px 0}
.head{max-width:640px;margin-bottom:36px}
.grid4{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:30px 28px}
.card .n{font:400 2.6rem/1 "Gloock",Georgia,serif;color:var(--terra);display:block;margin-bottom:18px}
.card p{color:var(--mute);margin:0}
.dark{background:var(--pine);color:var(--paper)}
.dark h2{color:var(--paper)}.dark .eyebrow{color:var(--gold)}.dark p{color:#cfdcd5}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:s}
.steps li{counter-increment:s;border-top:2px solid var(--gold);padding-top:18px}
.steps li::before{content:counter(s,decimal-leading-zero);display:block;font:400 1.9rem "Gloock",Georgia,serif;color:var(--gold);margin-bottom:8px}
.steps h3{color:var(--paper);margin-bottom:.4em}.steps p{margin:0;font-size:.97rem}
.who{background:var(--paper2)}
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.cols>div{border-top:2px solid var(--pine);padding-top:18px}
.cols p{color:var(--mute);margin:0}
.price-note{color:var(--mute);margin-bottom:28px}
.prices{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pc{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:26px 22px;display:flex;flex-direction:column}
.pc.hl{background:var(--pine);color:var(--paper);border-color:var(--pine)}
.pc h3{margin-bottom:.2em}
.pc .price{font:400 2rem/1.1 "Gloock",Georgia,serif;color:var(--terra);margin:6px 0 14px}
.pc.hl .price{color:var(--gold)}
.pc p{font-size:.95rem;color:var(--mute);margin:0 0 10px}.pc.hl p{color:#cfdcd5}
.pc .for{margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:.88rem}
.pc.hl .for{border-color:#34584c}
.two{display:grid;grid-template-columns:1fr 1fr;gap:56px}
details{border-bottom:1px solid var(--line);padding:16px 0;max-width:640px}
summary{font-weight:700;cursor:pointer}details p{margin:10px 0 0;color:var(--mute)}
.box{background:var(--pine);color:var(--paper);border-radius:8px;padding:34px 30px}
.box h2{color:var(--paper)}.box p{color:#cfdcd5}.box a{color:var(--gold)}
form{display:grid;gap:14px;margin-top:18px}label{font-weight:700;font-size:.92rem;display:grid;gap:6px}
input,select,textarea{font:inherit;padding:12px;border:0;border-radius:4px;width:100%;background:var(--paper);color:var(--ink)}
.chk{display:flex;gap:10px;font-weight:400;align-items:flex-start;color:#cfdcd5}.chk input{width:auto;margin-top:6px}
.ok{display:none;background:var(--gold);color:var(--ink);padding:14px;border-radius:4px;font-weight:700}
.wave{display:block;width:100%;height:auto;line-height:0}
.tbl{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:480px}
th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line);vertical-align:top}
footer{background:var(--paper2);padding:30px 0 40px;font-size:.88rem;color:var(--mute)}footer p{max-width:none}
.flinks{display:flex;gap:6px 20px;flex-wrap:wrap;margin:0 0 14px}.flinks a{color:var(--pine);font-weight:600}
@media(max-width:900px){.prices{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){
.hero .w,.two,.grid4,.cols,.facts .w{grid-template-columns:1fr}
.facts div.f{border-left:0;border-top:1px solid #34584c;padding:18px 0}.facts div.f:first-child{border-top:0}
.hero{padding-top:36px}.art{max-width:300px}section{padding:56px 0}.two{gap:40px}
.prices,.steps{grid-template-columns:1fr}
nav a:not(.cta){display:none}.bar{flex-wrap:nowrap}}
/* pagine legali */
.legal{padding:48px 0 72px}
.legal .w{max-width:820px}
.legal h1{font-size:clamp(2rem,5vw,3.1rem);margin-bottom:.3em}
.legal h2{font-size:1.4rem;margin:1.8em 0 .5em;line-height:1.2}
.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;margin-bottom:1.5em}
.legal .note{background:var(--card);border-left:4px solid var(--gold);padding:14px 16px;border-radius:4px;margin:0 0 1.5em}
.legal table{min-width:0;margin:0 0 1.2em;background:var(--card)}
.legal th{font-weight:700;font-size:.95rem;width:34%}
mark.ph{background:var(--gold);color:var(--ink);padding:0 4px;border-radius:3px}
