@font-face{font-family:"DM Serif Display";src:url("font/titoli.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DM Serif Display";src:url("font/titoli-corsivo.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"DM Sans";src:url("font/testo-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"DM Sans";src:url("font/testo-600.woff2") format("woff2");font-weight:600;font-display:swap}
:root{--crema:#faf6ef;--sabbia:#efe5d4;--sabbia2:#e4d6bf;--inchiostro:#2b2622;--grigio:#6a6158;--oliva:#56632b;--oliva-ch:#e5e9d3;--terra:#c4622d;--terra-sc:#9e4a1e;--terra-ch:#f6dfd0;--bianco:#fffcf6;--serif:"DM Serif Display",Georgia,serif;--sans:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:86px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--crema);color:var(--inchiostro);font:400 1.05rem/1.7 var(--sans)}
img,svg{display:block;max-width:100%}
a{color:var(--terra-sc)}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.06;margin:0 0 .5em;letter-spacing:-.005em;hyphens:auto;overflow-wrap:break-word}
h1{font-size:clamp(2.7rem,1.5rem + 5vw,5.6rem)}
h2{font-size:clamp(2rem,1.3rem + 2.6vw,3.4rem)}
h3{font-size:1.55rem}
h1 em,h2 em{color:var(--terra)}
p{margin:0 0 1em}
button,input,select,textarea{font:inherit;color:inherit}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--terra);outline-offset:3px}
.contenitore{width:min(100% - 32px,1180px);margin-inline:auto}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.salta{position:fixed;top:-200px;left:16px;z-index:400;background:var(--inchiostro);color:#fff;padding:.6rem 1rem;border-radius:8px}
.salta:focus{top:16px;color:#fff}
.occhiello{display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--oliva);margin-bottom:1rem}
.ic{width:22px;height:22px;flex:none}

/* Testata */
.testata{position:sticky;top:0;z-index:60;background:rgba(250,246,239,.93);backdrop-filter:blur(8px);border-bottom:1px solid var(--sabbia2)}
.testata-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:74px}
.logo{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--inchiostro);font-family:var(--serif);font-size:1.9rem;line-height:1}
.logo svg{width:36px;height:36px}
.menu ul{display:flex;align-items:center;gap:1.5rem;list-style:none;margin:0;padding:0}
.menu a{color:var(--inchiostro);text-decoration:none;font-weight:600;font-size:.95rem}
.menu a:hover,.menu a[aria-current="page"]{color:var(--terra)}
.menu .pulsante-menu{background:var(--terra);color:#fff;padding:.6rem 1.15rem;border-radius:999px}
.menu .pulsante-menu:hover{background:var(--terra-sc);color:#fff}
.apri{display:none;align-items:center;gap:.45rem;background:none;border:1.5px solid var(--inchiostro);border-radius:999px;padding:.45rem .95rem;font-weight:600;cursor:pointer}
@media (max-width:920px){
  .apri{display:inline-flex}
  .menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--crema);border-bottom:1px solid var(--sabbia2);padding:1rem 16px 1.4rem}
  .menu.ist-offen{display:block}
  .menu ul{flex-direction:column;align-items:flex-start;gap:1rem}
}

/* Pulsanti */
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:1rem 1.5rem;border-radius:999px;background:var(--terra);color:#fff;border:2px solid var(--terra);font-weight:600;text-decoration:none;cursor:pointer;line-height:1.2}
.btn:hover{background:var(--terra-sc);border-color:var(--terra-sc);color:#fff}
.btn.vuoto{background:transparent;color:var(--inchiostro);border-color:var(--inchiostro)}
.btn.vuoto:hover{background:var(--inchiostro);color:#fff}
.btn.oliva{background:var(--oliva);border-color:var(--oliva)}
.btn:disabled{opacity:.6;cursor:wait}

/* Apertura */
.apertura{padding:clamp(2.8rem,6vw,5rem) 0 clamp(3rem,6vw,5rem)}
.apertura-griglia{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.apertura .sotto{font-size:1.2rem;color:var(--grigio);max-width:36rem}
.apertura .azioni{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
.piastrelle{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.9rem}
.piastrella{min-width:0;overflow-wrap:break-word;hyphens:auto}
.piastrella{border-radius:22px;padding:1.3rem;min-height:150px;display:flex;flex-direction:column;justify-content:space-between}
.piastrella small{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.piastrella b{font-family:var(--serif);font-weight:400;font-size:1.45rem;line-height:1.1}
.piastrella.t1{background:var(--terra);color:#fff;grid-row:span 2;min-height:320px;background-image:radial-gradient(circle at 80% 20%,rgba(255,255,255,.22) 0 22%,transparent 23%)}
.piastrella.t2{background:var(--oliva-ch);color:var(--oliva)}
.piastrella.t3{background:var(--sabbia);color:var(--inchiostro);border:1px solid var(--sabbia2)}
.piastrella p{margin:0;font-size:.95rem}
@media (max-width:880px){.apertura-griglia{grid-template-columns:1fr}}
@media (max-width:400px){.piastrella{padding:1rem}.piastrella b{font-size:1.2rem}}

/* Fascia */
.fascia{background:var(--inchiostro);color:#e9e1d3}
.fascia ul{list-style:none;margin:0;padding:1.3rem 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.fascia li{display:flex;gap:.8rem;align-items:flex-start}
.fascia svg{color:#e7a07a;margin-top:.2rem}
.fascia b{display:block;color:#fff}
.fascia span{font-size:.92rem;color:#c8bfb1}
@media (max-width:800px){.fascia ul{grid-template-columns:1fr}}

/* Sezioni */
.sezione{padding:clamp(3.5rem,8vw,6.5rem) 0}
.sezione.sabbia{background:var(--sabbia)}
.sezione.oliva{background:var(--oliva);color:#eef0e2}
.sezione.oliva h2,.sezione.oliva h3{color:#fff}
.sezione.oliva .occhiello{color:#f2c5a8}
.titolo-sez{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;margin-bottom:2.6rem}
.titolo-sez p{color:var(--grigio);margin:0;max-width:32rem}
.sezione.oliva .titolo-sez p{color:#d9dfc4}
@media (max-width:820px){.titolo-sez{grid-template-columns:1fr}}

/* Soluzioni */
.filtri{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.filtri button{border:1.5px solid var(--sabbia2);background:var(--bianco);border-radius:999px;padding:.5rem 1rem;font-weight:600;font-size:.9rem;cursor:pointer}
.filtri button[aria-pressed="true"]{background:var(--oliva);border-color:var(--oliva);color:#fff}
.soluzioni{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.soluzione{position:relative;background:var(--bianco);border-radius:22px;padding:1.6rem;border-top:6px solid var(--terra);box-shadow:0 1px 0 var(--sabbia2);display:flex;flex-direction:column;min-height:290px}
.soluzione:nth-child(even){border-top-color:var(--oliva)}
.soluzione:hover{box-shadow:0 22px 40px -28px rgba(43,38,34,.5)}
.soluzione .area{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--grigio)}
.soluzione h3{margin:.4rem 0 .5rem}
.soluzione h3 a{color:var(--inchiostro);text-decoration:none}
.soluzione h3 a::after{content:"";position:absolute;inset:0;border-radius:22px}
.soluzione p{color:var(--grigio);font-size:.97rem}
.soluzione .vai{margin-top:auto;font-weight:600;color:var(--terra-sc);display:flex;align-items:center;gap:.4rem}
@media (max-width:980px){.soluzioni{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.soluzioni{grid-template-columns:1fr}}

/* Demo posta */
.posta{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.casella{list-style:none;margin:1.6rem 0;padding:0;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.25)}
.casella li+li{border-top:1px solid rgba(255,255,255,.18)}
.casella button{width:100%;text-align:left;background:transparent;border:0;color:#fff;padding:1rem 1.1rem;cursor:pointer;display:grid;gap:.15rem}
.casella button span{font-size:.85rem;color:#d9dfc4}
.casella button[aria-pressed="true"]{background:var(--crema);color:var(--inchiostro)}
.casella button[aria-pressed="true"] span{color:var(--grigio)}
.anteprima{background:var(--bianco);color:var(--inchiostro);border-radius:22px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}
.anteprima-parte{padding:1.3rem 1.4rem}
.anteprima-parte+.anteprima-parte{background:var(--terra-ch);border-top:1px solid var(--sabbia2)}
.anteprima h3{font-family:var(--sans);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grigio);font-weight:600;margin-bottom:.6rem}
.anteprima-parte+.anteprima-parte h3{color:var(--terra-sc)}
.anteprima pre{margin:0;white-space:pre-wrap;font:inherit;font-size:.97rem}
.anteprima-piede{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.8rem 1.4rem;border-top:1px solid var(--sabbia2);font-size:.86rem;color:var(--grigio)}
.anteprima-piede button{background:var(--inchiostro);color:#fff;border:0;border-radius:999px;padding:.45rem .95rem;cursor:pointer}
@media (max-width:860px){.posta{grid-template-columns:1fr}}

/* Metodo */
.passi{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:p}
.passi li{counter-increment:p;position:relative;padding-top:4.2rem}
.passi li::before{content:counter(p);position:absolute;top:0;left:0;width:3.2rem;height:3.2rem;border-radius:50%;background:var(--terra-ch);color:var(--terra-sc);font-family:var(--serif);font-size:1.6rem;display:grid;place-items:center}
.passi li:not(:last-child)::after{content:"";position:absolute;top:1.6rem;left:3.8rem;right:-.6rem;height:1px;background:var(--sabbia2)}
.passi p{color:var(--grigio);margin:0;font-size:.97rem}
@media (max-width:900px){.passi{grid-template-columns:1fr 1fr}.passi li::after{display:none}}
@media (max-width:540px){.passi{grid-template-columns:1fr}}

/* Limiti */
.limiti{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.limiti>div{border-radius:22px;padding:1.6rem;background:var(--bianco)}
.limiti>div+div{background:var(--terra-ch)}
.limiti ul{margin:0;padding-left:1.2rem}
.limiti li{margin-bottom:.45rem}
@media (max-width:760px){.limiti{grid-template-columns:1fr}}

/* Guide */
.guide{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.guida{display:grid;grid-template-columns:140px 1fr;gap:1.2rem;text-decoration:none;color:var(--inchiostro);background:var(--bianco);border-radius:22px;padding:1.3rem;align-items:start}
.guida:hover{box-shadow:0 22px 40px -28px rgba(43,38,34,.5)}
.guida .copertina{aspect-ratio:3/4;border-radius:14px;display:flex;align-items:flex-end;padding:.7rem;color:#fff;font-family:var(--serif);font-size:1.2rem;line-height:1.1}
.guida .copertina.a{background:linear-gradient(160deg,var(--terra),#8e3f16)}
.guida .copertina.b{background:linear-gradient(160deg,var(--oliva),#363f18)}
.guida small{color:var(--grigio);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.guida h3{margin:.4rem 0}
.guida p{margin:0;color:var(--grigio);font-size:.95rem}
@media (max-width:820px){.guide{grid-template-columns:1fr}}
@media (max-width:440px){.guida{grid-template-columns:1fr}.guida .copertina{aspect-ratio:auto;height:110px}}

/* Domande */
.domande-griglia{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,5vw,4rem)}
.domande details{border-top:1px solid var(--sabbia2)}
.domande details:last-child{border-bottom:1px solid var(--sabbia2)}
.domande summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:1rem;padding:1.15rem 0;font-weight:600;font-size:1.07rem}
.domande summary::-webkit-details-marker{display:none}
.domande summary::after{content:"+";font-family:var(--serif);font-size:1.6rem;line-height:1;color:var(--terra)}
.domande details[open] summary::after{content:"–"}
.domande details p{color:var(--grigio);padding-bottom:1.2rem;margin:0}
@media (max-width:820px){.domande-griglia{grid-template-columns:1fr}}

/* Contatto */
.contatto{background:var(--sabbia);padding:clamp(3.5rem,8vw,6rem) 0}
.contatto-griglia{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.canali{list-style:none;margin:1.6rem 0 0;padding:0;display:grid;gap:.6rem}
.canali a,.canali .riga{display:flex;gap:.8rem;align-items:center;background:var(--bianco);border-radius:16px;padding:.85rem 1rem;color:var(--inchiostro);text-decoration:none}
.canali svg{color:var(--terra)}
.canali small{display:block;color:var(--grigio);font-size:.76rem;text-transform:uppercase;letter-spacing:.1em}
@media (max-width:860px){.contatto-griglia{grid-template-columns:1fr}}
.modulo{background:var(--bianco);border-radius:26px;padding:clamp(1.3rem,3vw,2.2rem);box-shadow:0 30px 60px -40px rgba(43,38,34,.6)}
.modulo h3{font-size:1.8rem}
.campo{margin-bottom:1rem}
.campo label{display:block;font-weight:600;font-size:.92rem;margin-bottom:.3rem}
.campo label span{font-weight:400;color:var(--grigio)}
.campo input,.campo select,.campo textarea{width:100%;padding:.8rem 1rem;border:1.5px solid var(--sabbia2);border-radius:14px;background:var(--crema)}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:3px solid var(--terra-ch);border-color:var(--terra);background:#fff}
.campo textarea{min-height:120px;resize:vertical}
.campo small{display:block;font-size:.8rem;color:var(--grigio);margin-top:.3rem}
.campo [aria-invalid="true"]{border-color:#b42318}
.coppia{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
@media (max-width:540px){.coppia{grid-template-columns:1fr}}
.spunta{display:flex;gap:.6rem;align-items:flex-start;font-size:.88rem;margin:.3rem 0 1rem}
.spunta input{width:20px;height:20px;flex:none;margin-top:.15rem;accent-color:var(--terra)}
.trappola{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.f-status{min-height:1.4em;margin:.8rem 0 0;font-weight:600;font-size:.9rem;color:#b42318}
.f-status.ok{color:var(--oliva)}
.piccolo{font-size:.78rem;color:var(--grigio);line-height:1.5;margin:1rem 0 0}

/* Pagine interne */
.intestazione{padding:clamp(2.6rem,6vw,4.5rem) 0 clamp(2rem,4vw,3rem);background:var(--sabbia)}
.intestazione h1{font-size:clamp(2.3rem,1.4rem + 3.6vw,4.4rem);max-width:20ch}
.intestazione p{font-size:1.15rem;color:var(--grigio);max-width:42rem;margin:0}
.briciole{font-size:.88rem;color:var(--grigio);margin-bottom:1rem}
.briciole a{color:var(--inchiostro)}
.testo{max-width:46rem}
.testo h2{font-size:2rem;margin-top:2.4rem}
.testo h2:first-child{margin-top:0}
.testo ul,.testo ol{padding-left:1.25rem}
.testo li{margin-bottom:.45rem}
.due{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.due>*,.posta>*,.contatto-griglia>*,.apertura-griglia>*,.domande-griglia>*{min-width:0}
.laterale{position:sticky;top:96px;background:var(--bianco);border-radius:22px;padding:1.4rem}
.laterale h2{font-size:1.6rem;margin-top:0}
.laterale ul{padding-left:1.1rem;color:var(--grigio)}
@media (max-width:900px){.due{grid-template-columns:1fr}.laterale{position:static}}
.nota{background:var(--oliva-ch);border-radius:18px;padding:1.1rem 1.3rem;margin:1.6rem 0}
.nota.calda{background:var(--terra-ch)}
.nota p:last-child{margin:0}
.confronto{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}
.confronto>div{border-radius:18px;padding:1.2rem;background:var(--bianco)}
.confronto>div+div{background:var(--inchiostro);color:#fff}
.confronto h3{font-family:var(--sans);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grigio);font-weight:600}
.confronto>div+div h3{color:#e7a07a}
.confronto pre{margin:0;white-space:pre-wrap;font:inherit;font-size:.96rem}
@media (max-width:640px){.confronto{grid-template-columns:1fr}}
.tabella-wrap{overflow-x:auto;border-radius:16px;background:var(--bianco);margin:1rem 0 1.4rem}
.tabella-wrap table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:600px}
.tabella-wrap th,.tabella-wrap td{text-align:left;vertical-align:top;padding:.7rem .85rem;border-bottom:1px solid var(--sabbia)}
.tabella-wrap thead th{background:var(--oliva-ch)}
.centro{text-align:center;max-width:40rem;margin-inline:auto}
.enorme{font-family:var(--serif);font-style:italic;font-size:clamp(5rem,14vw,9rem);line-height:1;color:var(--terra);margin:0 0 .3rem}
.fila{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.centro .fila{justify-content:center}

/* Piede */
.piede{background:var(--inchiostro);color:#c8bfb1;padding:3.4rem 0 1.5rem;font-size:.94rem}
.piede a{color:#fff}
.piede .logo{color:#fff}
.piede-griglia{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}
.piede h2{font-family:var(--sans);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:#9a9083;margin-bottom:.9rem}
.piede ul{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.piede .bt{background:none;border:0;padding:0;color:#fff;text-decoration:underline;cursor:pointer}
.piede-fondo{margin-top:2.4rem;padding-top:1.1rem;border-top:1px solid #4a423b;font-size:.82rem;color:#9a9083}
@media (max-width:900px){.piede-griglia{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.piede-griglia{grid-template-columns:1fr}}

/* Banner cookie */
.cb{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;max-width:640px;margin-inline:auto;background:var(--bianco);border-radius:24px;box-shadow:0 30px 60px -25px rgba(43,38,34,.55);padding:1.3rem 1.4rem;border:1px solid var(--sabbia2)}
.cb h2{font-size:1.5rem;margin:0 2.4rem .3rem 0}
.cb p{font-size:.9rem;color:var(--grigio);margin:0}
.cb-x{position:absolute;top:.8rem;right:.8rem;width:36px;height:36px;border-radius:50%;border:1.5px solid var(--sabbia2);background:var(--bianco);cursor:pointer;font-size:1.2rem;line-height:1}
.cb-knoepfe{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:1rem}
.cb-knoepfe button{border:1.5px solid var(--inchiostro);background:var(--bianco);color:var(--inchiostro);border-radius:999px;padding:.6rem .5rem;font-weight:600;font-size:.9rem;cursor:pointer}
.cb-knoepfe button:hover{background:var(--inchiostro);color:#fff}
@media (max-width:480px){.cb-knoepfe{grid-template-columns:1fr}}
.cb-dialog{border:0;border-radius:24px;padding:0;width:calc(100% - 32px);max-width:540px;background:var(--bianco)}
.cb-dialog::backdrop{background:rgba(43,38,34,.55)}
.cb-dialog-in{padding:1.5rem}
.cb-zeile{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-top:1px solid var(--sabbia)}
.cb-zeile h3{font-family:var(--sans);font-size:1rem;font-weight:600;margin:0 0 .2rem}
.cb-zeile p{font-size:.86rem;color:var(--grigio);margin:0}
.cb-zeile input{width:22px;height:22px;flex:none;accent-color:var(--terra)}
.cb-zu{float:right;border:0;background:var(--sabbia);width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1.2rem}
.cb-info{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:210;background:var(--inchiostro);color:#fff;padding:.75rem 1.1rem;border-radius:999px;font-size:.9rem;max-width:calc(100% - 32px)}
