@font-face{font-family:"Young Serif";src:url(/font/young-serif.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Work Sans";src:url(/font/work-sans.woff2) format("woff2");font-weight:100 900;font-display:swap}

:root{
  --verde:#1E3A2B;--verde-2:#2C5340;--intonaco:#F2ECE1;--intonaco-2:#E8E0D1;
  --ottone:#D9A93A;--luce:#F3B544;--mattone:#B5462E;--testo:#22302A;--tenue:#4A5751;
  --serif:"Young Serif",Georgia,serif;--sans:"Work Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--intonaco);color:var(--testo);font:400 18px/1.6 var(--sans)}
img,svg{display:block;max-width:100%}
h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--verde);line-height:1.12;margin:0;letter-spacing:-.01em}
p{margin:0}
a{color:var(--verde)}
a:focus-visible,summary:focus-visible{outline:3px solid var(--mattone);outline-offset:3px;border-radius:4px}
.contenitore{max-width:1160px;margin:0 auto;padding:0 24px}

.salta{position:absolute;left:-9999px;top:8px;background:var(--verde);color:var(--intonaco);padding:10px 16px;border-radius:8px;z-index:10}
.salta:focus{left:16px}

/* testata */
.testata .contenitore{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;padding-bottom:20px}
.marchio{display:flex;align-items:center;gap:10px;font:24px var(--serif);color:var(--verde);text-decoration:none}
.marchio svg{width:40px;height:40px;flex:none}
.testata nav{display:flex;align-items:center;gap:24px}
.testata nav a{font-weight:500;text-decoration:none}
.testata nav a.sottolinea{border-bottom:2px solid var(--ottone)}

/* bottoni */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--verde);color:var(--intonaco);padding:16px 26px;border-radius:10px;font-weight:600;text-decoration:none;box-shadow:0 3px 0 var(--ottone);transition:transform .15s ease,box-shadow .15s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 4px 0 var(--ottone)}
.btn svg{width:20px;height:20px}
.btn-piccolo{padding:10px 16px;font-size:16px;white-space:nowrap}
.btn-chiaro{background:var(--intonaco);color:var(--verde)}
.link-sec{font-weight:600;text-decoration:none;border-bottom:2px solid var(--ottone)}

/* hero */
.hero .contenitore{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding-top:40px;padding-bottom:80px}
.hero h1{font-size:56px;line-height:1.08}
.hero h1 .riga2{display:block;color:var(--mattone);margin-top:10px}
.hero .sotto{margin-top:24px;max-width:34em;font-size:19px}
.azioni{margin-top:32px;display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center}
.nota{font-size:15px;color:var(--tenue)}

.vetrina{position:relative;aspect-ratio:4/5;background:var(--verde);border-radius:18px 18px 6px 6px;padding:22px;margin:0}
.insegna{background:var(--ottone);color:var(--verde);font:22px var(--serif);text-align:center;padding:10px;border-radius:6px}
.vano{position:relative;margin-top:16px;height:calc(100% - 64px);background:linear-gradient(#F3B544,#E89A35);border-radius:4px;overflow:hidden}
.serranda{position:absolute;inset:0 0 auto 0;height:72%;background:repeating-linear-gradient(var(--intonaco) 0 22px,#d9d1c2 22px 25px);border-bottom:8px solid #16291f}
.cartello{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%) rotate(-3deg);background:#fff;border:2px solid var(--verde);padding:10px 16px;font-weight:600;font-size:16px;color:var(--verde);white-space:nowrap}
.bolla{position:absolute;background:#fff;border-radius:14px;padding:12px 14px;font-size:15px;line-height:1.35;box-shadow:0 10px 24px rgba(20,40,30,.25);width:260px}
.bolla small{display:block;color:#5f6a64;font-size:13px;margin-top:6px}
.b1{left:-34px;bottom:110px}
.b2{right:-26px;bottom:22px;background:#FFF4DC}
.b2 b{color:var(--mattone)}

/* sezioni */
.sezione{padding:88px 0}
.tinta{background:var(--intonaco-2)}
.intro{max-width:40em;margin-bottom:44px}
.intro h2,.sezione h2{font-size:40px}
.intro p{margin-top:14px;font-size:19px;color:var(--tenue)}

.problemi{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;list-style:none;margin:0;padding:0}
.problemi li{background:#fff;border-radius:14px;padding:26px;border-top:5px solid var(--mattone)}
.problemi h3{font-size:22px;margin-bottom:10px}
.problemi p{color:var(--tenue);font-size:17px}

.passi{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;list-style:none;margin:0;padding:0;counter-reset:p}
.passi li{counter-increment:p;position:relative;padding-top:64px}
.passi li::before{content:counter(p);position:absolute;top:0;left:0;width:46px;height:46px;border-radius:50%;background:var(--ottone);color:var(--verde);font:22px/46px var(--serif);text-align:center}
.passi h3{font-size:24px;margin-bottom:10px}
.passi p{color:var(--tenue)}

/* prezzo */
.prezzo{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.cifra{font:72px/1 var(--serif);color:var(--verde);margin-top:20px}
.cifra small{font:500 20px var(--sans);color:var(--tenue);margin-left:8px}
.piccolo{margin-top:16px;color:var(--tenue);font-size:16px;max-width:28em}
.incluso{list-style:none;margin:0;padding:0;background:#fff;border-radius:16px;padding:8px 28px;box-shadow:0 2px 0 var(--intonaco-2)}
.incluso li{display:flex;gap:16px;padding:20px 0;border-bottom:1px dashed #cfc6b5}
.incluso li:last-child{border-bottom:0}
.incluso svg{width:22px;height:22px;flex:none;color:var(--verde);margin-top:4px}
.incluso b{display:block;color:var(--verde);font-weight:600}
.incluso span{color:var(--tenue);font-size:16px}

/* faq */
.faq{max-width:46em}
.faq details{border-bottom:1px solid #cfc6b5;padding:18px 0}
.faq summary{cursor:pointer;font-weight:600;color:var(--verde);list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:24px/1 var(--serif);color:var(--mattone)}
.faq details[open] summary::after{content:"–"}
.faq p{margin-top:10px;color:var(--tenue)}

/* chi */
.chi{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px}
.chi p+p{margin-top:16px}
.firma-chi{margin-top:12px;color:var(--mattone);font-weight:500}

/* finale */
.finale{background:var(--verde);color:var(--intonaco);padding:88px 0;text-align:center}
.finale h2{color:var(--intonaco);font-size:40px}
.finale p{margin:16px auto 32px;max-width:32em;font-size:19px}
.finale .btn{background:var(--luce);color:var(--verde);box-shadow:0 3px 0 #9c7522}
.finale .alt{margin-top:20px;font-size:16px}
.finale .alt a{color:var(--intonaco)}

/* pagine di testo */
.testo .contenitore{max-width:760px;padding-top:32px;padding-bottom:88px}
.testo h1{font-size:44px}
.testo h2{font-size:26px;margin:40px 0 12px}
.testo p,.testo li{color:var(--testo)}
.testo p+p{margin-top:14px}
.testo ul{padding-left:22px}
.testo li+li{margin-top:8px}
.aggiornato{margin-top:10px !important;color:var(--tenue);font-size:15px}
.contatti{display:grid;gap:20px;margin-top:32px}
.contatti .scheda{background:#fff;border-radius:14px;padding:26px}
.contatti h2{margin:0 0 8px}
.contatti .btn{margin-top:16px}

/* piede */
.piede{background:#16291f;color:#d9d2c4;padding:40px 0;font-size:15px}
.piede .contenitore{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px}
.piede nav{display:flex;flex-wrap:wrap;gap:8px 20px}
.piede a{color:#F2ECE1}
.piede p{max-width:36em}

@media (max-width:900px){
  .hero .contenitore,.prezzo,.chi{grid-template-columns:1fr;gap:40px}
  .problemi,.passi{grid-template-columns:1fr}
}
@media (max-width:760px){
  body{font-size:17px}
  .contenitore{padding:0 16px}
  .testata .contenitore{padding-top:14px;padding-bottom:14px}
  .solo-largo{display:none}
  .hero .contenitore{padding-top:16px;padding-bottom:56px;gap:36px}
  .hero h1{font-size:36px}
  .hero .sotto{font-size:17px}
  .vetrina{aspect-ratio:auto;height:470px;margin:0 8px}
  .b1{left:-8px;bottom:170px;width:232px}
  .b2{right:-8px;bottom:18px;width:240px}
  .sezione,.finale{padding:60px 0}
  .intro h2,.sezione h2,.finale h2{font-size:30px}
  .cifra{font-size:56px}
  .incluso{padding:4px 18px}
  .testo h1{font-size:34px}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important}}
