/*
Theme Name: Corredig 1923
Theme URI: https://www.corredig1923.it/
Author: Superest S.r.l.
Author URI: https://www.superest.it/
Description: Tema su misura per Corredig Gino & C. Srl — segheria e commercio legnami dal 1923 a San Pietro al Natisone. Palette costruita sul verde ufficiale del marchio (#006633).
Version: 2.6.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: corredig1923
Tags: business, custom-logo, custom-menu, one-column, translation-ready
*/

/* ═══════════════════════════════════════════════════════════
   TOKEN DI MARCA — cambia qui per ritoccare tutto il tema
   Il verde è quello ufficiale del logo: #006633
   ═══════════════════════════════════════════════════════════ */
:root{
  --verde:      #006633;
  --verde-cupo: #00522A;
  --verde-luce: #79C39A;
  --verde-bosco:#0E3F24;   /* verde profondo per i blocchi pieni */
  --foresta:    #0C2318;
  --foresta2:   #143020;
  --segatura:   #EDE3D2;
  --carta:      #F8F4EA;
  --inchiostro: #16150F;
  --latte:      #E9E4D6;

  --tenue-scuro:  rgba(233,228,214,.62);
  --tenue-chiaro: rgba(22,21,15,.64);
  --filo-scuro:   rgba(233,228,214,.18);
  --filo-chiaro:  rgba(22,21,15,.15);

  --display:'Fraunces',Georgia,serif;
  --testo:'Archivo',system-ui,sans-serif;
  --dato:'IBM Plex Mono',ui-monospace,monospace;

  --gutter: clamp(20px,5vw,72px);
  --max: 1280px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{overflow-x:clip}
body{
  margin:0;background:var(--segatura);color:var(--inchiostro);
  font-family:var(--testo);font-size:clamp(15.5px,.55vw + 14px,17px);
  line-height:1.62;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{margin:0;font-family:var(--display);font-weight:400;
  font-variation-settings:'SOFT' 20,'WONK' 1,'opsz' 120;
  line-height:1.03;letter-spacing:-.018em;text-wrap:balance}
p{margin:0 0 1.05em;text-wrap:pretty}
:focus-visible{outline:2px solid var(--verde-luce);outline-offset:3px;border-radius:2px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;top:12px;left:12px;z-index:999;background:#fff;color:var(--verde);
  padding:12px 18px;width:auto;height:auto;clip:auto}

.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.eyebrow{
  font-family:var(--testo);font-variation-settings:'wdth' 78;font-weight:600;
  font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;
  display:flex;align-items:center;gap:.7em;margin:0 0 1.5rem;color:var(--verde)
}
.eyebrow::before{content:"";width:26px;height:1px;background:currentColor;opacity:.55;flex:none}
.eyebrow--chiaro{color:var(--verde-luce)}
.eyebrow--bianco{color:rgba(255,255,255,.85)}
.dato{font-family:var(--dato);font-size:.78rem;letter-spacing:.02em}

.marchio{display:inline-flex;align-items:center;flex:none;line-height:0;text-decoration:none}
.marchio svg,.marchio img{display:block;width:auto;max-width:none;height:var(--marchio-h,40px)}


/* ── HEADER ─────────────────────────────────────────────── */
.head{position:sticky;top:0;z-index:60;background:var(--foresta);color:var(--latte);
  border-bottom:1px solid var(--filo-scuro);transform:translateZ(0);will-change:transform}
.head-in{display:flex;align-items:center;gap:clamp(16px,3vw,40px);
  min-height:116px;padding-block:16px;position:relative}
.head .marchio{--marchio-h:78px;color:#fff}
.nav{display:flex;gap:clamp(12px,1.4vw,24px);margin-left:auto;flex-wrap:nowrap;list-style:none;margin-block:0;padding:0}
.nav li{position:relative}
.nav a{
  font-variation-settings:'wdth' 82;font-weight:600;font-size:.72rem;
  letter-spacing:.1em;text-transform:uppercase;text-decoration:none;white-space:nowrap;
  color:var(--tenue-scuro);padding-block:6px;border-bottom:1px solid transparent;
  display:inline-block;transition:color .2s,border-color .2s
}
.nav a:hover,.nav .current-menu-item>a{color:#fff;border-bottom-color:var(--verde-luce)}
.head-cta{display:flex;align-items:center;gap:18px}
.tel{text-decoration:none;color:var(--latte);white-space:nowrap}
.btn{
  display:inline-block;text-decoration:none;background:var(--verde);color:#fff;
  font-family:var(--testo);font-variation-settings:'wdth' 88;font-weight:600;font-size:.78rem;
  letter-spacing:.14em;text-transform:uppercase;
  padding:14px 26px;border:0;cursor:pointer;transition:background .2s,transform .2s
}
.btn:hover{background:var(--verde-cupo);transform:translateY(-1px);color:#fff}
.btn-ghost{background:transparent;color:var(--latte);box-shadow:inset 0 0 0 1px var(--filo-scuro)}
.btn-ghost:hover{background:rgba(233,228,214,.09);color:#fff}
.btn-luce{background:#fff;color:var(--verde-bosco);margin-top:.6rem}
.btn-luce:hover{background:var(--carta);color:var(--verde-bosco)}
.burger{display:none;margin-left:auto;background:none;border:0;color:var(--latte);
  font-family:var(--testo);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;padding:10px;cursor:pointer}

/* ── HERO ───────────────────────────────────────────────── */
.hero{position:relative;background:var(--foresta);color:var(--latte);overflow:hidden;
  min-height:clamp(560px,86vh,860px);display:flex;align-items:flex-end}
.hero-img{position:absolute;inset:0}
.hero-img img{width:100%;height:100%;object-fit:cover}
/* Velo neutro (nero, non verde) solo dove appoggia il testo. */
.hero-img::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 42%,rgba(0,0,0,.78) 100%)}
.hero-in{position:relative;z-index:2;width:100%;padding-block:clamp(60px,10vh,120px) clamp(36px,6vh,60px)}
.hero h1{font-size:clamp(2.7rem,7.4vw,6.1rem);max-width:15ch;
  font-variation-settings:'SOFT' 30,'WONK' 1,'opsz' 144;color:#fff}
.hero h1 em{font-style:italic;color:var(--verde-luce);font-variation-settings:'SOFT' 40,'WONK' 1,'opsz' 144}
.hero p.sub{max-width:46ch;margin-top:1.6rem;color:var(--tenue-scuro);font-size:1.06rem}
.hero-act{display:flex;gap:14px;flex-wrap:wrap;margin-top:2.2rem}

/* ── STRISCIA DATI ──────────────────────────────────────── */
.strip{background:var(--verde);color:#fff}
.strip-in{display:grid;grid-template-columns:repeat(4,1fr)}
.strip-c{padding:28px var(--gutter);border-left:1px solid rgba(255,255,255,.2)}
.strip-c:first-child{border-left:0}
.strip-c b{display:block;font-family:var(--display);font-size:1.7rem;font-weight:400;
  font-variation-settings:'WONK' 1,'opsz' 100;line-height:1;margin-bottom:.4rem}
.strip-c span{font-family:var(--dato);font-size:.7rem;letter-spacing:.13em;
  text-transform:uppercase;color:rgba(255,255,255,.75)}

/* ── SEZIONI ────────────────────────────────────────────── */
.sez{padding-block:clamp(64px,10vw,132px)}
.sez--carta{background:var(--carta)}
.lead{font-size:clamp(1.9rem,3.6vw,3.2rem);max-width:20ch}
.intro{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,80px);align-items:end}
.intro p{color:var(--tenue-chiaro);max-width:52ch}

/* listino prodotti */
.prod{border-top:1px solid var(--filo-chiaro);margin-top:clamp(40px,6vw,72px)}
.prod-r{display:grid;grid-template-columns:1.6fr 2fr auto;gap:clamp(14px,3vw,44px);
  align-items:baseline;padding-block:clamp(22px,3vw,34px);
  border-bottom:1px solid var(--filo-chiaro);transition:background .25s,padding-inline .25s}
.prod-r:hover{background:rgba(0,102,51,.07);padding-inline:14px}
.prod-r h3{font-size:clamp(1.3rem,2.3vw,1.85rem)}
.prod-r p{margin:0;color:var(--tenue-chiaro);font-size:.95rem}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:.7rem}
.tag{font-family:var(--dato);font-size:.68rem;letter-spacing:.05em;
  padding:3px 9px;border:1px solid var(--filo-chiaro);color:var(--tenue-chiaro)}
.prod-r .go{font-family:var(--dato);font-size:.75rem;color:var(--verde);
  white-space:nowrap;text-decoration:none;font-weight:500;
  background:none;border:0;padding:0;cursor:pointer;letter-spacing:.02em}
.prod-r .go:hover{color:var(--verde-cupo);text-decoration:underline}

/* ── FASCIA CITAZIONE A TUTTA LARGHEZZA ─────────────────── */
.fascia{position:relative;min-height:clamp(340px,46vw,520px);display:flex;align-items:center;
  background:var(--foresta);color:#fff;overflow:hidden}
.fascia img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.4}
.fascia::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,35,24,.94),rgba(12,35,24,.35))}
.fascia .wrap{position:relative;z-index:2}
.fascia blockquote{margin:0;max-width:22ch;font-family:var(--display);font-weight:400;
  font-size:clamp(1.7rem,3.6vw,3rem);line-height:1.08;font-variation-settings:'SOFT' 30,'WONK' 1,'opsz' 120}
.fascia cite{display:block;margin-top:1.4rem;font-family:var(--dato);font-style:normal;
  font-size:.74rem;letter-spacing:.13em;text-transform:uppercase;color:var(--verde-luce)}

/* ── ANELLI (elemento firma) ────────────────────────────── */
.rings-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,88px);align-items:center}
.rings-wrap{position:relative;aspect-ratio:1;max-width:560px;width:100%;margin-inline:auto}
#anelli{width:100%;height:100%;display:block}
#anelli .ring{fill:none;stroke:rgba(22,21,15,.22);stroke-width:1;
  transition:stroke .35s ease,stroke-width .35s ease}
#anelli .ring.on{stroke:var(--verde);stroke-width:2.2}
#anelli .ring.dim{stroke:rgba(22,21,15,.11)}
.rings-core{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.rings-core b{font-family:var(--display);font-size:clamp(1.4rem,3vw,2rem);font-weight:400;
  font-variation-settings:'WONK' 1;color:var(--verde);background:var(--carta);
  padding:.15em .45em;line-height:1}
.gen{list-style:none;margin:0;padding:0}
.gen li{border-top:1px solid var(--filo-chiaro);transition:padding-left .25s,box-shadow .25s}
.gen button{
  width:100%;text-align:left;background:none;border:0;cursor:pointer;color:var(--inchiostro);
  font-family:var(--testo);padding:20px 0;display:grid;
  grid-template-columns:auto 1fr;gap:20px;align-items:baseline;transition:opacity .25s}
.gen button .n{font-family:var(--dato);font-size:.75rem;color:var(--verde);letter-spacing:.08em;font-weight:500}
.gen button strong{display:block;font-family:var(--display);font-size:1.22rem;font-weight:400;
  font-variation-settings:'WONK' 1,'opsz' 90;margin-bottom:.25rem}
.gen button span.d{color:var(--tenue-chiaro);font-size:.93rem;display:block}
.gen li:not([data-active]) button{opacity:.5}
.gen li[data-active] button{opacity:1}
.gen li[data-active]{box-shadow:inset 3px 0 0 var(--verde);padding-left:16px}

/* ── Storia: coppia di foto, stesso formato e stessa altezza ── */
.cento{margin-top:clamp(48px,7vw,88px);border-top:1px solid var(--filo-chiaro);
  padding-top:clamp(22px,3vw,34px)}
.cento-titolo{font-family:var(--dato);font-size:.75rem;letter-spacing:.22em;
  color:var(--verde);margin:0 0 clamp(18px,2.4vw,26px)}
.cento-griglia{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,24px);
  align-items:start}
.cento figure{margin:0;display:flex;flex-direction:column;height:100%}
.cento img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;background:var(--segatura)}
.cento figcaption{margin-top:12px;padding-top:10px;border-top:1px solid var(--filo-chiaro);
  font-family:var(--dato);font-size:.71rem;line-height:1.5;
  letter-spacing:.07em;text-transform:uppercase;color:var(--tenue-chiaro)}

/* ── GALLERIA ───────────────────────────────────────────── */
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.6vw,20px);margin-top:clamp(36px,5vw,60px)}
.gal figure{margin:0;position:relative;overflow:hidden;background:var(--foresta2)}
.gal img{aspect-ratio:4/5;object-fit:cover;width:100%;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.gal figure:hover img{transform:scale(1.04)}
.gal figcaption{position:absolute;left:0;bottom:0;right:0;padding:16px;color:#fff;
  background:linear-gradient(transparent,rgba(12,35,24,.88));
  font-family:var(--dato);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}

/* ── INSEGNA / BANNER ───────────────────────────────────── */
.insegna{background:var(--segatura);padding-block:clamp(56px,8vw,104px)}
.insegna figure{margin:0}
.insegna-plate{background:#fff;padding:clamp(16px,3vw,34px);
  box-shadow:0 1px 0 var(--filo-chiaro),0 10px 24px -18px rgba(12,35,24,.45);
  max-width:960px;margin-inline:auto}
.insegna-plate img{width:100%}
.insegna figcaption{max-width:960px;margin:16px auto 0;font-family:var(--dato);
  font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--tenue-chiaro);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* ── HOBBISTI ───────────────────────────────────────────── */
.hobby{background:var(--verde-bosco);color:#fff}
.hobby-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:center}
.hobby h2{font-size:clamp(2rem,4vw,3.3rem);color:#fff}
.hobby p{color:rgba(255,255,255,.84)}
.card{background:rgba(255,255,255,.055);padding:clamp(22px,3vw,32px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.card + .card{margin-top:14px}
.card h3{font-size:1.25rem;color:#fff;margin-bottom:.5rem}
.card p{margin:0;font-size:.95rem}

/* ── CERTIFICAZIONI ─────────────────────────────────────── */
.docs{border-top:1px solid var(--filo-chiaro);margin-top:clamp(30px,4vw,48px)}
.doc{display:flex;align-items:center;gap:20px;padding:22px 0;
  border-bottom:1px solid var(--filo-chiaro);text-decoration:none;transition:padding-inline .25s,background .25s}
.doc:hover{padding-inline:12px;background:rgba(0,102,51,.07)}
.doc .kind{font-family:var(--dato);font-size:.68rem;letter-spacing:.1em;
  border:1px solid var(--filo-chiaro);padding:4px 8px;color:var(--tenue-chiaro)}
.doc strong{font-family:var(--display);font-weight:400;font-size:1.15rem;font-variation-settings:'WONK' 1}
.doc .arrow{margin-left:auto;color:var(--verde);font-family:var(--dato);font-size:.8rem;font-weight:500}

/* ── CONTATTI + FOOTER ──────────────────────────────────── */
.contact{background:var(--foresta);color:var(--latte)}
.contact h2{font-size:clamp(2.1rem,4.6vw,3.7rem);color:#fff;max-width:17ch}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,88px);align-items:start}
.contact-foto{margin:0 0 clamp(40px,6vw,72px)}
.contact-foto img{width:100%;aspect-ratio:16/7;object-fit:cover}
.info{display:grid;gap:26px;margin-top:8px}
.info h4{margin:0 0 .45rem;font-family:var(--dato);font-size:.7rem;letter-spacing:.15em;
  text-transform:uppercase;color:var(--verde-luce);font-weight:500}
.info p,.info a{margin:0;color:var(--latte);text-decoration:none;line-height:1.55}
.info a:hover{text-decoration:underline}
.foot{background:var(--foresta);color:var(--tenue-scuro);border-top:1px solid var(--filo-scuro);padding-block:30px}
.foot .marchio{--marchio-h:64px;color:var(--latte)}

/* ── PAGINE INTERNE / ARTICOLI ──────────────────────────── */
.page-hero{background:var(--foresta);color:#fff;padding-block:clamp(64px,10vw,120px) clamp(40px,6vw,64px)}
.page-hero h1{font-size:clamp(2.2rem,5vw,4rem)}
.contenuto{padding-block:clamp(48px,7vw,96px)}
.contenuto .wrap{max-width:min(760px,100%)}
.contenuto h2{font-size:clamp(1.6rem,3vw,2.4rem);margin:2.2em 0 .6em}
.contenuto h3{font-size:1.35rem;margin:1.8em 0 .5em}
.contenuto ul,.contenuto ol{padding-left:1.2em}
.contenuto li{margin-bottom:.4em}
.contenuto a{color:var(--verde);text-underline-offset:3px}
.contenuto blockquote{border-left:3px solid var(--verde);margin:2em 0;padding-left:1.4em;
  font-family:var(--display);font-size:1.25rem;font-variation-settings:'WONK' 1}
.contenuto img,.contenuto figure{margin-block:2em}
.contenuto figcaption{font-family:var(--dato);font-size:.74rem;color:var(--tenue-chiaro);margin-top:.6em}
.contenuto table{width:100%;border-collapse:collapse}
.contenuto td,.contenuto th{border-bottom:1px solid var(--filo-chiaro);padding:10px 8px;text-align:left}
.alignwide{max-width:min(1080px,92vw);margin-inline:auto}
.alignfull{max-width:none;width:100vw;margin-left:calc(50% - 50vw)}
.aligncenter{margin-inline:auto}
.paginazione{display:flex;gap:12px;flex-wrap:wrap;margin-top:2.5em;font-family:var(--dato);font-size:.8rem}
.paginazione .page-numbers{padding:8px 14px;border:1px solid var(--filo-chiaro);text-decoration:none}
.paginazione .current{background:var(--verde);color:#fff;border-color:var(--verde)}

/* ── reveal ─────────────────────────────────────────────── */
.rv{opacity:0;transform:translate3d(0,18px,0);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;transform:translate3d(0,0,0)}

/* ── responsive ─────────────────────────────────────────── */
@media(max-width:1500px){
  .head-cta .tel{display:none}
}
@media(max-width:1000px){
  .intro,.rings-grid,.hobby-grid,.contact-grid{grid-template-columns:1fr}
  .cento-griglia{grid-template-columns:1fr 1fr}
  .strip-in{grid-template-columns:repeat(2,1fr)}
  .strip-c:nth-child(3){border-left:0}
  .strip-c{border-top:1px solid rgba(255,255,255,.2)}
  .strip-c:nth-child(-n+2){border-top:0}
  .prod-r{grid-template-columns:1fr;gap:8px}
  .prod-r .go{display:none}
  .gal{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1250px){
  .burger{display:block}
  .nav{position:absolute;top:100%;left:0;right:0;background:var(--foresta);
    flex-direction:column;gap:0;padding:0 var(--gutter);max-height:0;overflow:hidden;
    border-bottom:1px solid transparent;transition:max-height .35s ease,border-color .35s;z-index:70}
  .nav.open{max-height:620px;border-bottom-color:var(--filo-scuro);padding-block:8px 20px}
  .nav a{padding-block:14px;border-bottom:1px solid var(--filo-scuro);font-size:.85rem;display:block}
  .head .marchio{--marchio-h:56px}
  .head-in{min-height:84px}
}
@media(max-width:820px){
  .cento-griglia{grid-template-columns:1fr}
  .gal{grid-template-columns:1fr}
  .gal img{aspect-ratio:16/10}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
  .rv{opacity:1;transform:none}
}


/* ═══════════════════════════════════════════════════════════
   NUOVI COMPONENTI — v2.0
   ═══════════════════════════════════════════════════════════ */

/* ── selettore di lingua ────────────────────────────────── */
.lingue{display:flex;align-items:center;gap:6px;font-family:var(--dato);font-size:.75rem;
  letter-spacing:.06em;color:var(--tenue-scuro)}
.lingue a{text-decoration:none;padding:4px 2px;border-bottom:1px solid transparent}
.lingue a:hover{color:#fff}
.lingue a.on{color:#fff;border-bottom-color:var(--verde-luce)}

/* ── testo tenue riutilizzabile ─────────────────────────── */
.testo-tenue{color:var(--tenue-chiaro);max-width:46ch}
.contact .testo-tenue{color:var(--tenue-scuro)}
.contact-intro{max-width:52ch;margin-top:1.2rem}

/* ── coppia di foto ─────────────────────────────────────── */
.coppia{background:var(--segatura);padding-block:clamp(48px,7vw,96px)}
.coppia-in{display:grid;grid-template-columns:1fr 1.35fr;gap:clamp(16px,3vw,32px);align-items:end}
.coppia figure{margin:0}
.coppia img{width:100%;display:block}
.coppia figcaption{margin-top:12px;font-family:var(--dato);font-size:.72rem;
  letter-spacing:.08em;text-transform:uppercase;color:var(--tenue-chiaro)}

/* ── vetrina hobbisti ───────────────────────────────────── */
.vetrina-titolo{margin-top:clamp(48px,7vw,88px);margin-bottom:1.2rem}
.vetrina{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,24px)}
.v-card{background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);
  display:flex;flex-direction:column;overflow:hidden}
.v-card img{width:100%;aspect-ratio:1;object-fit:cover;
  transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.v-card:hover img{transform:scale(1.04)}
.v-body{padding:clamp(18px,2.4vw,26px);display:flex;flex-direction:column;gap:.6rem;flex:1}
.v-body h3{font-size:1.15rem;color:#fff}
.v-body p{margin:0;font-size:.92rem;color:rgba(255,255,255,.82);flex:1}
.v-body .btn{align-self:flex-start;margin-top:.4rem}

.hobby-chiusura{margin-top:clamp(40px,6vw,72px);border-top:1px solid rgba(255,255,255,.2);
  padding-top:clamp(28px,4vw,44px);display:grid;grid-template-columns:1.2fr auto;
  gap:clamp(20px,4vw,48px);align-items:center}
.hobby-chiusura p{margin:0;color:rgba(255,255,255,.86);max-width:56ch}
.hobby-act{display:flex;gap:12px;flex-wrap:wrap}

/* ── pulsante WhatsApp ──────────────────────────────────── */
.btn-wa{display:inline-flex;align-items:center;gap:.6em;background:#25D366;color:#0B2016}
.btn-wa:hover{background:#1FBB59;color:#0B2016}
.btn-wa svg{width:1.15em;height:1.15em;flex:none}

/* ── certificazioni: voce non ancora collegata ──────────── */
.doc--vuoto{opacity:.55;cursor:default}
.doc--vuoto:hover{padding-inline:0;background:none}
.arrow--attesa{color:var(--tenue-chiaro);font-weight:400}

/* ── modulo ─────────────────────────────────────────────── */
.modulo{margin-top:1.8rem}
.campi{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.campi label{display:flex;flex-direction:column;gap:6px}
.campi .campo-largo{grid-column:1 / -1}
.campi span{font-family:var(--dato);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--verde-luce)}
.campi input,.campi select,.campi textarea{
  font-family:var(--testo);font-size:.95rem;color:#fff;background:rgba(255,255,255,.07);
  border:1px solid var(--filo-scuro);border-radius:0;padding:12px 14px;width:100%;
  appearance:none;-webkit-appearance:none}
.campi textarea{resize:vertical;min-height:96px}
.campi select{background-image:linear-gradient(45deg,transparent 50%,var(--verde-luce) 50%),
  linear-gradient(135deg,var(--verde-luce) 50%,transparent 50%);
  background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;
  background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:44px}
.campi select option{color:#16150F;background:#fff}
.campi input:focus,.campi select:focus,.campi textarea:focus{
  outline:none;border-color:var(--verde-luce);background:rgba(255,255,255,.12)}
.modulo>.btn{margin-top:18px}
.trappola{position:absolute;left:-9999px;height:0;overflow:hidden}

.avviso{font-family:var(--dato);font-size:.82rem;padding:14px 16px;margin-top:1.2rem}
.avviso--ok{background:rgba(121,195,154,.16);box-shadow:inset 0 0 0 1px var(--verde-luce);color:#fff}
.avviso--ko{background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px var(--filo-scuro)}

/* ── mappa ──────────────────────────────────────────────── */
.mappa iframe{width:100%;height:280px;border:0;display:block;
  box-shadow:inset 0 0 0 1px var(--filo-scuro);filter:grayscale(.25)}

/* ── finestra modale ────────────────────────────────────── */
.modale{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px}
.modale[hidden]{display:none}
.modale-fondo{position:absolute;inset:0;background:rgba(12,35,24,.82)}
.modale-box{position:relative;z-index:1;background:var(--foresta);color:var(--latte);
  width:min(640px,100%);max-height:92vh;overflow-y:auto;padding:clamp(26px,4vw,44px);
  box-shadow:0 30px 70px -40px rgba(0,0,0,.8)}
.modale-box h2{font-size:clamp(1.6rem,3vw,2.2rem);color:#fff;margin-bottom:.4rem}
.modale-prod{font-family:var(--dato);font-size:.8rem;color:var(--verde-luce);margin:0}
.modale-prod:empty{display:none}
.modale-x{position:absolute;top:10px;right:14px;background:none;border:0;color:var(--latte);
  font-size:1.9rem;line-height:1;cursor:pointer;padding:6px 10px}
.modale-x:hover{color:#fff}
.modale-act{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.modale-act .btn{margin-top:0}

/* ── footer ─────────────────────────────────────────────── */
.foot-top{display:flex;flex-wrap:wrap;gap:clamp(24px,5vw,72px);align-items:flex-start;
  justify-content:space-between;padding-bottom:26px}
.foot-sedi{display:grid;grid-template-columns:repeat(3,auto);gap:clamp(20px,4vw,56px);
  font-family:var(--testo);font-size:.86rem;line-height:1.55}
.foot-sedi p{margin:0}
.foot-sedi strong{display:block;font-family:var(--dato);font-size:.68rem;letter-spacing:.13em;
  text-transform:uppercase;color:var(--verde-luce);font-weight:500;margin-bottom:.35rem}
.foot-sedi a{text-decoration:none}
.foot-sedi a:hover{text-decoration:underline}
.foot-legale{border-top:1px solid var(--filo-scuro);padding-top:22px;
  display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between;
  font-family:var(--dato);font-size:.7rem;line-height:1.6}
.foot-legale p{margin:0}

@media(max-width:1000px){
  .vetrina{grid-template-columns:repeat(2,1fr)}
  .coppia-in{grid-template-columns:1fr}
  .hobby-chiusura{grid-template-columns:1fr}
  .foot-sedi{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
  .vetrina{grid-template-columns:1fr}
  .campi{grid-template-columns:1fr}
  .foot-sedi{grid-template-columns:1fr}
  .head-cta .lingue{order:-1}
}

/* ═══════════════════════════════════════════════════════════
   PRIVACY E COOKIE — v2.1
   ═══════════════════════════════════════════════════════════ */

/* ── mappa bloccata finche non c'e il consenso ──────────── */
.mappa-box{position:relative;width:100%;height:280px;background:var(--foresta2);
  box-shadow:inset 0 0 0 1px var(--filo-scuro);display:grid;place-items:center}
.mappa-box iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.25)}
.mappa-blocco{padding:24px;text-align:center;display:grid;gap:14px;justify-items:center;max-width:38ch}
.mappa-blocco p{margin:0;font-size:.88rem;color:var(--tenue-scuro);line-height:1.5}
.mappa-link{font-family:var(--dato);font-size:.74rem;color:var(--verde-luce);text-decoration:none}
.mappa-link:hover{text-decoration:underline}

/* ── consenso nei moduli ────────────────────────────────── */
.consenso{margin:18px 0 0}
.consenso label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.consenso input{margin-top:.25em;width:16px;height:16px;flex:none;accent-color:var(--verde-luce)}
.consenso span{font-size:.84rem;line-height:1.5;color:var(--tenue-scuro)}
.consenso a{color:var(--verde-luce)}

/* ── banner cookie ──────────────────────────────────────── */
.cookie{position:fixed;left:0;right:0;bottom:0;z-index:300;background:var(--foresta);
  color:var(--latte);border-top:1px solid var(--filo-scuro);
  box-shadow:0 -18px 44px -30px rgba(0,0,0,.8)}
.cookie[hidden]{display:none}
.cookie-in{max-width:var(--max);margin-inline:auto;padding:20px var(--gutter);
  display:flex;gap:clamp(16px,3vw,44px);align-items:center;justify-content:space-between;flex-wrap:wrap}
.cookie-in p{margin:0;font-size:.86rem;line-height:1.55;max-width:74ch}
.cookie-in a{color:var(--verde-luce)}
.cookie-act{display:flex;gap:10px;flex-wrap:wrap}
.cookie-act .btn{padding:12px 22px}

/* pulsante che sembra un link, per "Preferenze cookie" */
.linkish{background:none;border:0;padding:0;cursor:pointer;color:inherit;
  font:inherit;text-decoration:underline;text-underline-offset:2px}
.linkish:hover{color:var(--latte)}

@media(max-width:700px){
  .cookie-in{flex-direction:column;align-items:stretch}
  .cookie-act{justify-content:stretch}
  .cookie-act .btn{flex:1;text-align:center}
}

/* frase incisa: piu larga e senza attribuzione */
.fascia-frase{max-width:26ch;font-style:italic;
  font-variation-settings:'SOFT' 40,'WONK' 1,'opsz' 120}

/* ── Elenco delle essenze ───────────────────────────────── */
.essenze{margin-top:clamp(48px,7vw,80px);padding-top:clamp(30px,4vw,44px);
  border-top:1px solid var(--filo-chiaro)}
.essenze-testa{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(20px,4vw,60px);
  align-items:baseline;margin-bottom:clamp(24px,3vw,36px)}
.essenze-testa h3{font-size:clamp(1.5rem,2.6vw,2.1rem)}
.essenze-testa p{margin:0;color:var(--tenue-chiaro);font-size:.95rem;max-width:52ch}

.essenze-lista{list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:0 clamp(16px,2.4vw,32px)}
.essenze-lista li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  padding:11px 0;border-bottom:1px solid var(--filo-chiaro)}
.essenza-it{font-family:var(--display);font-size:1.06rem;font-weight:400;
  font-variation-settings:'WONK' 1,'opsz' 90;line-height:1.2}
.essenza-alt{font-family:var(--dato);font-size:.68rem;letter-spacing:.05em;
  text-transform:uppercase;color:var(--tenue-chiaro);text-align:right;white-space:nowrap}
.essenze .btn{margin-top:clamp(26px,3vw,36px)}

@media(max-width:820px){
  .essenze-testa{grid-template-columns:1fr}
  .essenze-lista{grid-template-columns:1fr}
}

/* ultima voce dell'elenco: "non c'e quella che cerchi?" */
.essenza-chiedi{border-bottom-color:var(--verde)}
.essenza-chiedi button{background:none;border:0;padding:0;cursor:pointer;text-align:left;
  font-family:var(--display);font-size:1.06rem;font-weight:400;line-height:1.2;
  font-variation-settings:'WONK' 1,'opsz' 90;font-style:italic;color:var(--verde)}
.essenza-chiedi button::after{content:" →";font-style:normal;font-family:var(--dato);font-size:.8em}
.essenza-chiedi button:hover{color:var(--verde-cupo);text-decoration:underline}

/* ── Attestati scansionati ──────────────────────────────── */
.attestati{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px);
  margin-top:clamp(36px,5vw,56px)}
.attestati figure{margin:0}
.attestati a{display:block;background:#fff;padding:clamp(10px,1.4vw,18px);
  box-shadow:0 1px 0 var(--filo-chiaro),0 12px 30px -22px rgba(12,35,24,.55);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.attestati a:hover{transform:translateY(-3px);
  box-shadow:0 1px 0 var(--filo-chiaro),0 20px 40px -24px rgba(12,35,24,.6)}
.attestati img{width:100%;display:block}
.attestati figcaption{margin-top:14px;font-size:.88rem;line-height:1.5;color:var(--tenue-chiaro)}
.attestati figcaption strong{display:block;font-family:var(--dato);font-size:.72rem;
  letter-spacing:.16em;color:var(--verde);font-weight:500;margin-bottom:.3rem}

@media(max-width:820px){ .attestati{grid-template-columns:1fr} }

/* riga di dettaglio sotto il titolo di un documento */
.doc-nota{display:block;margin-top:.3rem;font-family:var(--dato);font-size:.7rem;
  line-height:1.5;letter-spacing:.02em;color:var(--tenue-chiaro)}
.doc strong{display:block}

/* codice licenza FSC */
.licenza{margin-top:clamp(22px,3vw,32px);font-family:var(--dato);font-size:.72rem;
  letter-spacing:.06em;color:var(--tenue-chiaro)}

/* ── Collabora con noi ──────────────────────────────────── */
.collabora{background:var(--carta)}
.binari{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.6vw,32px);
  margin-top:clamp(40px,6vw,64px)}
.binario{background:#fff;padding:clamp(26px,3.4vw,44px);
  box-shadow:inset 0 0 0 1px var(--filo-chiaro);
  display:flex;flex-direction:column;gap:.4rem}
.binario h3{font-size:clamp(1.35rem,2.4vw,1.9rem);margin-bottom:.6rem}
.binario p{color:var(--tenue-chiaro);font-size:.96rem;margin-bottom:.9rem}
.binario-nota{font-family:var(--dato);font-size:.76rem;line-height:1.6;
  border-left:2px solid var(--verde);padding-left:14px;color:var(--tenue-chiaro)}
.binario .btn{align-self:flex-start;margin-top:auto}

@media(max-width:820px){ .binari{grid-template-columns:1fr} }
