/* Caratteri ospitati sul sito: nessun dato inviato a terzi */
@font-face { font-family: 'Newsreader'; font-style: normal; font-weight: 400; font-display: swap;
  src: url(fonts/newsreader-latin-400-normal.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: 'Newsreader'; font-style: normal; font-weight: 400; font-display: swap;
  src: url(fonts/newsreader-latin-ext-400-normal.woff2) format('woff2'); unicode-range: U+0100-02AF, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Newsreader'; font-style: italic; font-weight: 400; font-display: swap;
  src: url(fonts/newsreader-latin-400-italic.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: 'Newsreader'; font-style: italic; font-weight: 400; font-display: swap;
  src: url(fonts/newsreader-latin-ext-400-italic.woff2) format('woff2'); unicode-range: U+0100-02AF, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Newsreader'; font-style: normal; font-weight: 500; font-display: swap;
  src: url(fonts/newsreader-latin-500-normal.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: 'Newsreader'; font-style: normal; font-weight: 500; font-display: swap;
  src: url(fonts/newsreader-latin-ext-500-normal.woff2) format('woff2'); unicode-range: U+0100-02AF, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Figtree'; font-style: normal; font-weight: 400; font-display: swap;
  src: url(fonts/figtree-latin-400-normal.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: 'Figtree'; font-style: normal; font-weight: 400; font-display: swap;
  src: url(fonts/figtree-latin-ext-400-normal.woff2) format('woff2'); unicode-range: U+0100-02AF, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Figtree'; font-style: normal; font-weight: 500; font-display: swap;
  src: url(fonts/figtree-latin-500-normal.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: 'Figtree'; font-style: normal; font-weight: 500; font-display: swap;
  src: url(fonts/figtree-latin-ext-500-normal.woff2) format('woff2'); unicode-range: U+0100-02AF, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Figtree'; font-style: normal; font-weight: 600; font-display: swap;
  src: url(fonts/figtree-latin-600-normal.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: 'Figtree'; font-style: normal; font-weight: 600; font-display: swap;
  src: url(fonts/figtree-latin-ext-600-normal.woff2) format('woff2'); unicode-range: U+0100-02AF, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }


:root{
  --fondo:#f7f3ec; --carta:#fffdfa; --inchiostro:#1f1b18; --testo:#4b423b; --tenue:#6f645b;
  --terracotta:#b3512c; --terracotta-scura:#8e3f21; --salvia:#5f7361; --linea:#e8ded0;
  --ombra:0 18px 48px rgba(53,38,28,.10);
  --serif:'Newsreader', Georgia, serif;
  --sans:'Figtree', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--fondo);color:var(--testo);font:400 1.125rem/1.7 var(--sans);letter-spacing:-.005em;overflow-wrap:break-word}
img{max-width:100%;height:auto;display:block}
a{color:var(--terracotta-scura);text-underline-offset:3px}
:focus-visible{outline:3px solid var(--terracotta);outline-offset:3px;border-radius:8px}
h1,h2,h3{font-family:var(--serif);color:var(--inchiostro);font-weight:400;letter-spacing:-.025em;line-height:1.1;margin:0 0 .5em}
h1{font-size:clamp(2.5rem,5.6vw,4.2rem)}
h2{font-size:clamp(2.1rem,4vw,3.1rem);text-wrap:balance}
h3{font-size:1.35rem;font-weight:500}
p{margin:0 0 1.1em}
.salta{position:absolute;left:-999px}
.salta:focus{left:1rem;top:1rem;background:var(--inchiostro);color:#fff;padding:.7rem 1.1rem;z-index:100;border-radius:10px}
.wrap{max-width:1140px;margin:0 auto;padding:0 28px}
.stretto{max-width:780px}

/* Testata */
.testata{position:sticky;top:0;z-index:40;background:rgba(247,243,236,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.testata .wrap{display:flex;align-items:center;justify-content:space-between;height:82px}
.marchio{font:500 1.45rem/1 var(--serif);color:var(--inchiostro);text-decoration:none;letter-spacing:-.02em}
.marchio small{display:block;font:500 .68rem/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--salvia);margin-top:4px}
.nav{display:flex;align-items:center;gap:2rem}
.nav a{color:var(--testo);text-decoration:none;font-size:1rem}
.nav a:hover,.nav a[aria-current="page"]{color:var(--terracotta)}
.nav a.btn{color:#fff}
.apri-menu{display:none;background:none;border:1.5px solid var(--inchiostro);border-radius:12px;padding:.55rem 1.1rem;font:600 1rem var(--sans);color:var(--inchiostro);cursor:pointer}

/* Pulsanti */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:58px;padding:0 1.9rem;border-radius:16px;font:600 1.08rem/1 var(--sans);text-decoration:none;border:1.5px solid transparent;transition:transform .25s ease,background-color .3s,color .3s,box-shadow .3s}
.btn svg{width:21px;height:21px;flex:none}
.btn.pieno{background:var(--terracotta);color:#fff;box-shadow:0 10px 26px rgba(179,81,44,.26)}
.btn.pieno:hover{transform:translateY(-2px);background:var(--terracotta-scura);color:#fff}
.btn.chiaro{background:rgba(255,255,255,.94);color:var(--inchiostro)}
.btn.chiaro:hover{transform:translateY(-2px)}
.btn.bordo{border-color:var(--inchiostro);color:var(--inchiostro)}
.btn.bordo:hover{background:var(--inchiostro);color:#fff}
.btn.mini{min-height:46px;padding:0 1.25rem;font-size:.98rem;border-radius:12px}
.azioni{display:flex;flex-wrap:wrap;gap:12px}

/* Apertura con foto */
.hero{max-width:1140px;margin:14px auto 0;padding:0 28px}
.hero-box{position:relative;border-radius:34px;overflow:hidden;min-height:clamp(460px,72vh,660px);display:flex;align-items:flex-end;box-shadow:var(--ombra)}
.hero-box>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.velo{position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,27,24,.10) 0%,rgba(31,27,24,.42) 45%,rgba(31,27,24,.80) 100%)}
.hero-testo{position:relative;padding:44px;color:#fff;max-width:820px}
.hero-testo h1{color:#fff;line-height:1.04;margin-bottom:.35em;text-wrap:balance}
.hero-testo p{font-size:clamp(1.1rem,1.7vw,1.35rem);margin:0 0 1.8rem;color:rgba(255,255,255,.92)}
.nota-hero{margin-top:1.1rem;font-size:.98rem;color:rgba(255,255,255,.82)}
.segno{position:absolute;top:22px;right:22px;background:rgba(31,27,24,.6);color:#fff;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .7rem;border-radius:99px}

/* Apertura senza foto (pagine interne) */
.intro{padding:76px 0 24px}
.intro h1{max-width:18ch;text-wrap:balance}
.intro .grande{font-size:1.28rem;line-height:1.6;max-width:46ch}

/* Fascia fiducia */
.fiducia{display:flex;flex-wrap:wrap;gap:1.2rem 2.6rem;align-items:center;justify-content:center;padding:34px 28px;font-size:1rem}
.fiducia span{display:inline-flex;align-items:center;gap:.6rem}
.punto{width:7px;height:7px;border-radius:50%;background:var(--salvia);flex:none}

/* Sezioni */
.sez{padding:96px 0}
.sez.carta{background:var(--carta)}
.occhio{font:600 .78rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--salvia);margin:0 0 1.1rem}
.due{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:start}
.testo-grande{font-size:1.28rem;line-height:1.6}
.link{color:var(--terracotta-scura);font-weight:600;text-decoration:none}
.link::after{content:" \2192"}
.link:hover{text-decoration:underline}

/* Schede */
.schede{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.scheda{background:var(--carta);border:1px solid var(--linea);border-radius:24px;padding:32px 30px;transition:transform .35s ease,box-shadow .35s ease}
.scheda:hover{transform:translateY(-4px);box-shadow:var(--ombra)}
.sez.carta .scheda{background:var(--fondo)}
.scheda h3{margin-bottom:.5em}
.scheda p{font-size:1.02rem;margin-bottom:1.1rem}

/* Elenchi */
.elenco{list-style:none;margin:1.6rem 0 0;padding:0;display:grid;gap:14px}
.elenco li{background:var(--carta);border:1px solid var(--linea);border-radius:18px;padding:20px 24px;font-size:1.05rem}
.sez.carta .elenco li{background:var(--fondo)}
.elenco strong{color:var(--inchiostro)}
.fasi{counter-reset:f}
.fasi li{counter-increment:f;display:grid;grid-template-columns:2.6rem 1fr;gap:4px;align-items:start}
.fasi li::before{content:counter(f);font:400 1.7rem/1.15 var(--serif);color:var(--terracotta)}

/* Numeri */
.numeri{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.numero{border-top:2px solid var(--terracotta);padding-top:18px}
.numero strong{display:block;font:400 2.1rem/1.15 var(--serif);color:var(--inchiostro);margin-bottom:.2rem;letter-spacing:-.02em}
.numero span{font-size:1rem}

/* Ritratto e foto */
.ritratto img{width:100%;border-radius:28px;aspect-ratio:1/1;object-fit:cover;box-shadow:var(--ombra)}
.foto{margin:2.4rem 0 0}
.foto img{border-radius:28px;box-shadow:var(--ombra)}
.timbro{display:inline-flex;align-items:center;gap:.6rem;margin-top:16px;font-size:.98rem;color:var(--tenue)}

/* Domande frequenti */
.faq{margin-top:1.6rem;display:grid;gap:14px}
.faq details{background:var(--carta);border:1px solid var(--linea);border-radius:20px;padding:4px 26px}
.sez.carta .faq details{background:var(--fondo)}
.faq summary{cursor:pointer;list-style:none;padding:20px 0;font:500 1.2rem/1.35 var(--serif);color:var(--inchiostro);display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:400 1.6rem/1 var(--sans);color:var(--terracotta)}
.faq details[open] summary::after{content:"\2013"}
.faq p{margin:0 0 20px;font-size:1.05rem}

/* Chiusura */
.chiudi{background:var(--inchiostro);color:#f1e7db;border-radius:34px;max-width:1084px;margin:0 auto 80px;padding:80px 40px;text-align:center}
.chiudi h2{color:#fff}
.chiudi p{color:rgba(241,231,219,.86);font-size:1.15rem;max-width:36em;margin:0 auto 2rem}
.chiudi .azioni{justify-content:center}
.avviso{margin-top:2rem;font-size:.98rem;color:rgba(241,231,219,.72)}
.avviso a{color:#fff}
.emergenza{margin-top:2rem;font-size:1rem;color:var(--tenue)}

/* Piede */
.piede{padding:0 0 60px;font-size:1rem;color:var(--tenue)}
.piede .wrap{border-top:1px solid var(--linea);padding-top:28px;display:grid;grid-template-columns:1.4fr 1fr;gap:24px}
.piede a{color:var(--terracotta-scura)}
.piede nav{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin-top:.6rem}

/* Segni di bozza */
.provvisoria{background:#fff1bf;border-radius:6px;padding:.1rem .45rem;font-size:.85rem;color:#6b5a1f}

/* Dissolvenze */
.js .appare{opacity:0;transform:translateY(12px);transition:opacity 1.1s ease,transform 1.1s ease}
.js .appare.visto{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .appare{opacity:1;transform:none;transition:none}}

@media (max-width:900px){
  body{font-size:1.0625rem}
  .wrap{padding:0 22px}
  .testata{position:relative}
  .testata .wrap{height:74px}
  .apri-menu{display:block}
  .nav{display:none;position:absolute;left:0;right:0;top:74px;background:var(--fondo);border-bottom:1px solid var(--linea);flex-direction:column;align-items:stretch;gap:0;padding:6px 22px 20px;z-index:50}
  .nav.aperto{display:flex}
  .nav a{padding:1rem 0;border-top:1px solid var(--linea);font-size:1.15rem}
  .nav a.btn{margin-top:1rem;border-top:0}
  .hero{padding:0 16px}
  .hero-box{min-height:78vh;border-radius:28px}
  .hero-testo{padding:26px 22px 30px}
  .azioni .btn{width:100%}
  .due,.schede,.numeri{grid-template-columns:1fr;gap:34px}
  .sez{padding:64px 0}
  .intro{padding:48px 0 16px}
  .chiudi{margin:0 16px 56px;padding:56px 24px;border-radius:28px}
  .piede .wrap{grid-template-columns:1fr}
}

/* Apertura senza foto, in attesa di quelle vere */
.hero-box.senza-foto{background:linear-gradient(145deg,#2b231e 0%,#5e3a29 52%,#a4572f 100%);min-height:clamp(420px,62vh,560px)}
.hero-box.senza-foto .velo{background:radial-gradient(80% 120% at 80% 0%,rgba(255,255,255,.12),rgba(255,255,255,0) 60%)}
