/* Fumè – negozifume.it */
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/montserrat-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/montserrat-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/montserrat-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/montserrat-latin-700-normal.woff2) format("woff2")}

/* =====================================================================
   PALETTE FUMÈ – versione A (verde pieno), fonte: Palette-colori-Fume.md
   Unico punto da modificare. Ruoli:
   --c-bg            Verde Fumè 7494C   sfondo di tutte le pagine
   --c-ink           Antracite          testi, pulsante principale, piè di pagina
   --c-ink-soft      Antracite testo    testi secondari sul verde
   --c-accent        Verde bosco        seconda riga dei titoli, numeri in evidenza
   --c-surface       Bianco             schede, riquadri, pulsanti secondari
   --c-header        Lino               intestazione con il logo (mai logo su verde)
   --c-on-dark       Testo chiaro       testi secondari su antracite
   --c-brand         Verde 7494C        accenti su antracite e dettagli grafici su bianco
   --c-open/closed   Colori di servizio, solo su bianco
   ===================================================================== */
:root{
  --c-bg:#9CAF88;
  --c-ink:#28282D;
  --c-ink-soft:#2E2E34;
  --c-accent:#22301D;
  --c-surface:#FFFFFF;
  --c-header:#F7F4EE;
  --c-on-dark:#D9DCD4;
  --c-brand:#9CAF88;
  --c-open:#3F7A3A;
  --c-closed:#9A3B2E;

  /* alias usati dal resto del foglio */
  --c-brand-strong:var(--c-accent);
  --c-brand-soft:var(--c-header);
  --c-muted:var(--c-ink-soft);
  --c-bg-alt:var(--c-bg);
  --c-line:rgba(40,40,45,.22);
  --c-on-btn:#FFFFFF;

  /* ruoli */
  --btn-bg:var(--c-ink);
  --btn-bg-hover:#111114;
  --btn-fg:var(--c-on-btn);
  --btn-alt-bg:rgba(255,255,255,.75);
  --btn-alt-bg-hover:var(--c-surface);
  --btn-alt-fg:var(--c-ink);
  --accent-text:var(--c-accent);
  --overlay:rgba(40,40,45,.72);
  --shadow:rgba(40,40,45,.12);

  --radius:14px;
  --wrap:1160px;
  --gut:clamp(16px,4vw,32px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--c-bg);color:var(--c-ink);font-family:"Montserrat",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:17px;line-height:1.6;font-weight:400}
img{max-width:100%;height:auto;display:block}
a{color:var(--c-ink);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--c-brand-strong)}
:focus-visible{outline:3px solid var(--c-brand-strong);outline-offset:3px;border-radius:4px}
h1,h2,h3{line-height:1.12;letter-spacing:-.02em;margin:0 0 .5em;font-weight:700}
h1{font-size:clamp(2.1rem,5.4vw,3.9rem)}
h2{font-size:clamp(1.6rem,3.4vw,2.5rem)}
h3{font-size:1.2rem;letter-spacing:-.01em}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:-999px;top:8px;background:var(--btn-bg);color:var(--btn-fg);padding:10px 14px;z-index:100}
.skip:focus{left:8px}

/* etichetta con l'accento della È */
.label{display:inline-flex;align-items:center;gap:12px;font-size:.74rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--c-ink-soft);margin:0 0 18px}
.label::before{content:"";width:16px;height:12px;background:var(--c-brand);transform:skewX(32deg);flex:none}

/* header */
.site-header{position:sticky;top:0;z-index:40;background:var(--c-bg);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--c-line)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand img{height:34px;width:auto}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px}
.nav a{display:block;padding:10px 12px;font-size:.88rem;font-weight:600;text-decoration:none;border-radius:8px}
.nav a[aria-current="page"]{color:var(--c-brand-strong)}
.nav a:hover{background:var(--c-bg-alt);color:var(--c-ink)}
.menu-btn{display:none;background:none;border:0;padding:10px;margin-right:-10px;cursor:pointer;color:var(--c-ink)}
.menu-btn svg{display:block}
@media (max-width:880px){
  .menu-btn{display:block}
  .nav{position:fixed;inset:68px 0 auto 0;background:var(--c-bg);border-bottom:1px solid var(--c-line);display:none;padding:8px var(--gut) 20px;box-shadow:0 18px 30px var(--shadow)}
  .nav.open{display:block}
  .nav ul{flex-direction:column;gap:0}
  .nav a{padding:14px 4px;font-size:1.05rem;border-bottom:1px solid var(--c-line);border-radius:0}
}

/* bottoni */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:999px;font:inherit;font-size:.95rem;font-weight:600;text-decoration:none;border:1.5px solid var(--btn-bg);background:var(--btn-bg);color:var(--btn-fg);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn:hover{background:var(--btn-bg-hover);border-color:var(--btn-bg-hover);color:var(--btn-fg)}
.btn.ghost{background:transparent;color:var(--c-ink);border-color:var(--c-ink)}
.btn.ghost:hover{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}
.btn.sage{background:var(--btn-alt-bg);border-color:var(--btn-alt-bg);color:var(--btn-alt-fg)}
.btn.sage:hover{background:var(--btn-alt-bg-hover);border-color:var(--btn-alt-bg-hover);color:var(--btn-alt-fg)}
.btn.small{min-height:42px;padding:8px 16px;font-size:.86rem}
.btn svg{flex:none}
.btns{display:flex;flex-wrap:wrap;gap:10px}

/* sezioni */
.section{padding:clamp(56px,9vw,104px) 0}
.section.paper{background:var(--c-bg-alt)}
.section.soft{background:var(--c-brand-soft)}
.lead{font-size:clamp(1.05rem,1.6vw,1.22rem);color:var(--c-ink-soft);max-width:62ch}
.head{max-width:760px;margin-bottom:clamp(28px,5vw,48px)}

/* hero */
.hero{padding:clamp(48px,10vw,120px) 0 clamp(48px,8vw,96px);background:var(--c-bg-alt);position:relative;overflow:hidden}
.hero h1{max-width:14ch}
.hero .claim,.accent{color:var(--accent-text)}
.hero .lead{margin-bottom:28px}
.hero-mark{position:absolute;right:-60px;top:-40px;width:clamp(220px,34vw,460px);height:clamp(110px,16vw,220px);background:var(--c-brand);transform:skewX(32deg);opacity:.9;pointer-events:none}
.hero .wrap{position:relative}
.hero-logo{display:none}
@media (min-width:1020px){.hero-logo{display:block;position:absolute;right:var(--gut);top:50%;transform:translateY(-38%);width:min(38vw,440px);opacity:.95}.hero:not(.small) .lead,.hero:not(.small) h1{max-width:52%}}
.hero.small{padding:clamp(40px,7vw,80px) 0 clamp(36px,6vw,64px)}
.hero.small .hero-mark{width:clamp(160px,22vw,300px);height:clamp(80px,10vw,140px)}

/* schede negozio */
.shop-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:22px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:42px;padding:8px 16px;border-radius:999px;border:1.5px solid var(--c-line);background:var(--c-bg);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;color:var(--c-ink)}
.chip[aria-pressed="true"]{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}
.geo-msg{font-size:.9rem;color:var(--c-muted);margin:0 0 18px;min-height:1.2em}
.shops{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.shop{background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:14px;position:relative}
.shop.nearest{border-color:var(--c-brand-strong);box-shadow:0 0 0 2px var(--c-brand) inset}
.shop .city{font-size:.72rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--c-muted);margin:0}
.shop h3{margin:0;font-size:1.3rem}
.shop h3 a{text-decoration:none}
.shop address{font-style:normal;color:var(--c-ink-soft);font-size:.95rem}
.shop .tag{position:absolute;top:20px;right:20px;font-size:.7rem;font-weight:700;letter-spacing:.06em;background:var(--c-brand-soft);color:var(--c-brand-strong);padding:5px 10px;border-radius:999px}
.shop .dist{font-size:.85rem;color:var(--c-brand-strong);font-weight:600}
.shop .actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px}
.status{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600}
.status::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c-muted)}
.status.is-open{color:var(--c-open)}.status.is-open::before{background:var(--c-open)}
.status.is-closed{color:var(--c-closed)}.status.is-closed::before{background:var(--c-closed)}
.meta-24{font-size:.82rem;font-weight:700;display:inline-flex;align-items:center;gap:6px;background:var(--c-brand-soft);color:var(--c-brand-strong);padding:5px 12px;border-radius:999px;align-self:flex-start}

/* come lavoriamo */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.steps li{background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--radius);padding:30px 26px}
.steps .n{display:block;font-size:2.6rem;font-weight:700;color:var(--c-brand);line-height:1;margin-bottom:18px;letter-spacing:-.03em}
.steps p{color:var(--c-ink-soft);margin:0;font-size:.97rem}

/* numeri */
.numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line)}
.numbers div{padding:30px 18px;border-left:1px solid var(--c-line)}
.numbers div:first-child{border-left:0}
.numbers b{display:block;font-size:clamp(2rem,4.4vw,3.2rem);font-weight:700;letter-spacing:-.03em;line-height:1}
.numbers span{display:block;margin-top:10px;font-size:.9rem;color:var(--c-muted)}
@media (max-width:760px){.numbers{grid-template-columns:repeat(2,1fr)}.numbers div:nth-child(3){border-left:0}.numbers div:nth-child(n+3){border-top:1px solid var(--c-line)}}

/* recensioni */
.reviews{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center}
.stars{display:flex;gap:4px;color:var(--c-brand-strong);margin-bottom:14px}
.review-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.review-links a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border:1px solid var(--c-line);border-radius:10px;background:var(--c-bg);text-decoration:none;font-weight:600;font-size:.9rem}
.review-links a:hover{border-color:var(--c-ink);color:var(--c-ink)}
@media (max-width:820px){.reviews{grid-template-columns:1fr}}
@media (max-width:420px){.review-links{grid-template-columns:1fr}}

/* novità */
.news{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.news a{display:block;padding:28px;border-radius:var(--radius);background:var(--c-brand-soft);text-decoration:none}
.news a:hover{background:var(--c-bg-alt);color:var(--c-ink)}
.news small{display:block;font-size:.74rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--c-brand-strong);margin-bottom:10px}
.news strong{display:block;font-size:1.35rem;letter-spacing:-.01em;margin-bottom:6px}

/* storia */
.story{display:grid;grid-template-columns:auto 1fr;gap:clamp(24px,6vw,80px);align-items:start}
.timeline{list-style:none;margin:0;padding:0;border-left:2px solid var(--c-brand);min-width:200px}
.timeline li{padding:0 0 22px 22px;position:relative}
.timeline li::before{content:"";position:absolute;left:-7px;top:7px;width:12px;height:12px;border-radius:50%;background:var(--c-bg);border:2px solid var(--c-brand-strong)}
.timeline b{display:block;font-size:1.4rem;letter-spacing:-.02em}
.timeline span{color:var(--c-muted);font-size:.92rem}
@media (max-width:760px){.story{grid-template-columns:1fr}}

/* FAQ */
.faq{max-width:820px}
.faq details{border-bottom:1px solid var(--c-line)}
.faq summary{list-style:none;cursor:pointer;padding:22px 44px 22px 0;font-weight:600;font-size:1.05rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;border-right:2px solid var(--c-ink);border-bottom:2px solid var(--c-ink);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{color:var(--c-ink-soft);padding-right:40px}

/* pagina negozio */
.shop-hero .status{margin-bottom:22px}
.info-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:16px}
.card{background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--radius);padding:26px}
.card h2{font-size:1rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--c-muted);margin-bottom:14px}
.card address{font-style:normal;font-size:1.08rem;margin-bottom:16px}
.hours{width:100%;border-collapse:collapse;font-size:.95rem}
.hours th{text-align:left;font-weight:500;padding:7px 0;color:var(--c-ink-soft)}
.hours td{text-align:right;padding:7px 0;font-variant-numeric:tabular-nums}
.hours tr{border-bottom:1px solid var(--c-line)}
.hours tr:last-child{border-bottom:0}
.hours tr.today th,.hours tr.today td{font-weight:700;color:var(--c-ink)}
.hours tr.today th::after{content:" · oggi";font-weight:500;color:var(--c-brand-strong)}
.note{font-size:.84rem;color:var(--c-muted);margin:14px 0 0}
.contact-list{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px}
.contact-list a{font-weight:600}
@media (max-width:980px){.info-grid{grid-template-columns:1fr 1fr}.info-grid .card:nth-child(2){grid-row:span 2}}
@media (max-width:640px){.info-grid{grid-template-columns:1fr}.info-grid .card:nth-child(2){grid-row:auto}}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px)}
@media (max-width:760px){.two-col{grid-template-columns:1fr}}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.ticks li{padding-left:34px;position:relative}
.ticks li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:10px;border-left:2.5px solid var(--c-brand-strong);border-bottom:2.5px solid var(--c-brand-strong);transform:rotate(-45deg)}
.ticks b{display:block}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.gallery img{border-radius:var(--radius);aspect-ratio:4/3;object-fit:cover;width:100%}
.photo-wait{border:1.5px dashed var(--c-line);border-radius:var(--radius);padding:28px;color:var(--c-muted);text-align:center;font-size:.92rem}

/* mappa schematica */
.map-wrap{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(24px,5vw,56px);align-items:center;margin-bottom:clamp(36px,6vw,64px)}
.map-svg{width:100%;height:auto;background:var(--c-bg);border-radius:var(--radius);border:1px solid var(--c-line)}
@media (max-width:820px){.map-wrap{grid-template-columns:1fr}}

/* contenuti testuali */
.prose{max-width:760px}
.prose h2{margin-top:1.6em;font-size:clamp(1.35rem,2.6vw,1.8rem)}
.prose h2:first-child{margin-top:0}
.prose ul{padding-left:1.2em}
.prose li{margin-bottom:.5em}
.callout{border-left:0;background:var(--c-brand-soft);border-radius:var(--radius);padding:22px 24px;margin:28px 0;font-size:.97rem}
.callout strong{display:block;margin-bottom:4px}
.devices{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:22px 0}
.devices div{border:1px solid var(--c-line);border-radius:var(--radius);padding:22px;background:var(--c-bg)}
.devices h3{font-size:1.05rem}
.devices p{margin:0;font-size:.95rem;color:var(--c-ink-soft)}

/* CTA finale */
.cta{text-align:left}
.cta h2{max-width:18ch}

/* footer */
.site-footer{background:var(--c-bg-alt);color:var(--c-ink-soft);border-top:1px solid var(--c-line);padding:64px 0 120px;font-size:.92rem}
.site-footer a{color:var(--c-ink);text-decoration:none}
.site-footer a:hover{text-decoration:underline;color:var(--c-ink)}
.f-grid{display:grid;grid-template-columns:1.3fr 2fr 1fr;gap:40px}
.f-logo img{width:150px;margin-bottom:18px}
.f-shops{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}
.f-shops small{display:block;color:var(--c-muted)}
.f-title{font-size:.72rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--accent-text);margin:0 0 16px}
.f-links{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.social{display:flex;gap:10px;margin-top:14px}
.social a{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--c-line);border-radius:50%;background:var(--c-bg)}
.social a:hover{background:var(--btn-bg);color:var(--btn-fg)}
.legal{border-top:1px solid var(--c-line);margin-top:44px;padding-top:24px;display:grid;gap:10px;font-size:.84rem;color:var(--c-muted)}
.legal strong{color:var(--c-ink);font-weight:600}
@media (max-width:900px){.f-grid{grid-template-columns:1fr}}
@media (max-width:480px){.f-shops{grid-template-columns:1fr}}

/* barra fissa mobile */
.quickbar{position:fixed;left:0;right:0;bottom:0;z-index:45;display:none;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--c-bg);border-top:1px solid var(--c-line);box-shadow:0 -10px 24px var(--shadow)}
.quickbar a{flex:1;min-height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:12px;background:var(--c-bg-alt);text-decoration:none;font-size:.74rem;font-weight:600}
.quickbar a.primary{background:var(--btn-bg);color:var(--btn-fg)}
@media (max-width:880px){.quickbar{display:flex}.site-footer{padding-bottom:140px}}

/* verifica età */
.age{position:fixed;inset:0;z-index:100;background:var(--overlay);display:none;align-items:center;justify-content:center;padding:var(--gut)}
.age.show{display:flex}
.age-box{background:var(--c-bg);border-radius:20px;max-width:440px;width:100%;padding:36px 30px;text-align:center}
.age-box img{width:150px;margin:0 auto 24px}
.age-box h2{font-size:1.45rem}
.age-box p{color:var(--c-ink-soft);font-size:.95rem}
.age-box .btns{justify-content:center;margin-top:22px}
.age-box small{display:block;margin-top:8px;color:var(--c-muted);font-size:.78rem;line-height:1.45}
.age-box .age-warn{margin-top:22px;padding-top:16px;border-top:1px solid var(--c-line)}
.age-no{display:none}
.age.denied .age-yes{display:none}.age.denied .age-no{display:block}
body.locked{overflow:hidden}

.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* ---------- persone ---------- */
.avatar{--s:120px;width:var(--s);height:var(--s);border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:calc(var(--s) * .4);letter-spacing:-.02em;object-fit:cover;flex:none;max-width:100%}
.avatar.sm{--s:56px;border:3px solid var(--c-bg-alt)}
.avatar.lg{--s:180px}
.avatar.t1{background:var(--c-brand-strong);color:var(--c-on-btn)}
.avatar.t2{background:var(--c-brand);color:var(--c-ink)}
.avatar.t3{background:var(--c-brand-soft);color:var(--c-brand-strong)}
.faces{display:flex;flex-wrap:wrap;margin:6px 0 28px;padding-left:12px}
.faces .avatar{margin-left:-12px}
.section:not(.paper) .faces .avatar.sm{border-color:var(--c-bg)}
.team-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:28px 18px}
.team-grid.leaders{grid-template-columns:repeat(auto-fill,minmax(200px,240px))}
.person{text-align:center}
.person a{display:flex;flex-direction:column;align-items:center;text-decoration:none;border-radius:16px;padding:10px 6px}
.person a:hover{background:var(--c-bg);color:var(--c-ink)}
.person .avatar{margin:0 auto 14px}
.person b{display:block;font-size:1.05rem}
.person small{display:block;color:var(--c-muted);font-size:.84rem;margin-top:2px}
.person.big b{font-size:1.3rem}
.people-home{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(28px,6vw,72px);align-items:center}
.numbers.three{grid-template-columns:1fr;border:0}
.numbers.three div{border-left:0;border-top:1px solid var(--c-line);padding:22px 0}
.numbers.three div:first-child{border-top:0}
@media (max-width:820px){.people-home{grid-template-columns:1fr}.numbers.three{grid-template-columns:repeat(3,1fr)}.numbers.three div{border-top:0;padding:10px 8px 10px 0}}

/* distributore 24h in evidenza */
.d24-band{display:flex;align-items:center;gap:14px;margin-top:26px;padding:16px 20px;border-radius:var(--radius);background:var(--c-brand-soft);color:var(--c-ink);text-decoration:none;max-width:560px;border:1px solid var(--c-brand)}
.d24-band svg{width:28px;height:28px;color:var(--c-brand-strong);flex:none}
.d24-band b{display:block;font-size:.98rem}
.d24-band span{font-size:.88rem;color:var(--c-ink-soft)}
.d24-band:hover{background:var(--c-bg);color:var(--c-ink)}
.big-phone a{font-size:1.5rem;font-weight:700;letter-spacing:-.01em;text-decoration:none;font-variant-numeric:tabular-nums}
.shop address a{font-weight:600;text-decoration:none}

/* foto negozio */
.gallery figure{margin:0}
.gallery figcaption{font-size:.84rem;color:var(--c-muted);margin-top:8px}
.photo-wait{aspect-ratio:4/3;display:grid;place-content:center;gap:4px;background:var(--c-bg-alt)}

/* header: pulsante Trova il negozio sempre visibile */
.head-right{display:flex;align-items:center;gap:6px}
.head-cta{white-space:nowrap}
@media (max-width:880px){.nav{order:3}.head-cta{min-height:40px;padding:6px 14px;font-size:.82rem}}
@media (max-width:360px){.head-cta span{display:none}}

/* apertura home con foto */
.hero-photo{position:relative;margin:0;background:var(--c-bg-alt)}
.hero-photo img{width:100%;height:clamp(300px,50vw,660px);object-fit:cover;object-position:center 55%}
.hero-photo figcaption{position:absolute;right:max(16px,var(--gut));bottom:14px;font-size:.74rem;font-weight:600;background:var(--c-bg);color:var(--c-ink);padding:5px 12px;border-radius:999px}
.hero-text{padding:clamp(36px,6vw,64px) 0 clamp(28px,4vw,40px)}
.hero-text h1{max-width:16ch}
.hero-text .lead{margin-bottom:28px}
@media (min-width:900px){.hero-text .wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:end}.hero-text .lead{margin:0 0 6px}}

/* tre numeri grandi */
.bignums{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line)}
.bignums li{padding:28px 18px 26px;border-left:1px solid var(--c-line)}
.bignums li:first-child{border-left:0;padding-left:0}
.bignums b{display:block;font-size:clamp(2.4rem,6vw,4.2rem);font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--c-ink)}
.bignums b span{color:var(--accent-text)}
.bignums small{display:block;margin-top:10px;font-size:.92rem;color:var(--c-muted);font-weight:500}
@media (max-width:600px){.bignums{grid-template-columns:1fr}.bignums li{border-left:0;border-top:1px solid var(--c-line);padding:18px 0;display:flex;align-items:baseline;gap:14px}.bignums li:first-child{border-top:0}.bignums small{margin:0}}

/* mappa schematica */
.map-route{fill:none;stroke:var(--c-brand);stroke-width:5;stroke-linecap:round}
.map-dot{fill:var(--c-ink);stroke:var(--c-bg);stroke-width:2.5}
.map-label{font-family:"Montserrat",sans-serif;font-size:17px;font-weight:700;fill:var(--c-ink)}
.map-note{font-family:"Montserrat",sans-serif;font-size:11px;fill:var(--c-muted)}
.site-header .wrap{gap:12px}
.nav{margin-left:auto}
@media (max-width:880px){.nav{margin-left:0}}
.numbers-band{padding:0 0 clamp(40px,6vw,64px)}

/* pagina negozio con foto principale */
.shop-main-photo{margin:0 0 28px}
.shop-main-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius)}
@media (min-width:900px){
  .shop-hero.has-photo .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
  .shop-hero.has-photo .shop-main-photo{order:2;margin:0}
  .shop-hero.has-photo .shop-main-photo img{aspect-ratio:auto;max-height:620px}
  .shop-hero.has-photo .hero-mark{display:none}
}

/* apertura home: testo + foto intera del negozio */
.hero-home2{padding:clamp(28px,5vw,64px) 0 clamp(32px,5vw,56px)}
.hero-home2 .wrap{display:grid;gap:28px}
.hero-home2 h1{max-width:12ch}
.hero-home2 .lead{margin-bottom:26px}
.hero-home2 .hero-photo{margin:0;position:relative;background:none}
.hero-home2 .hero-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:24px;box-shadow:0 24px 48px -24px var(--shadow-strong, rgba(40,40,45,.35))}
.hero-home2 .hero-photo figcaption{position:absolute;left:16px;bottom:16px;right:auto}
@media (min-width:900px){
  .hero-home2 .wrap{grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
  .hero-home2 .hero-photo img{aspect-ratio:auto;height:min(78vh,680px)}
}

/* logo più grande nell'intestazione */
.site-header .wrap{height:88px}
.brand img{height:52px;width:auto}
@media (max-width:880px){
  .site-header .wrap{height:72px}
  .brand img{height:42px}
  .nav{inset:72px 0 auto 0}
}
.hero-mark{display:none}


/* =====================================================================
   APPLICAZIONE PALETTE A
   ===================================================================== */
.site-header{background:var(--c-header);border-bottom:0;box-shadow:0 1px 0 var(--c-line)}
@media (max-width:880px){.nav{background:var(--c-header)}}
.nav a:hover{background:var(--c-surface)}
.label::before{background:var(--c-ink)}
.btn.ghost{background:rgba(255,255,255,.75);border-color:var(--c-ink);color:var(--c-ink)}
.btn.sage{border-color:var(--c-ink)}
.chip{background:var(--c-surface);border-color:var(--c-line)}
/* schede e riquadri bianchi */
.shop,.card,.steps li,.devices div,.review-links a,.news a,.callout,.map-svg,.d24-band,.photo-wait{background:var(--c-surface);border-color:transparent}
.news a:hover,.review-links a:hover{background:var(--c-header)}
.steps .n{color:var(--c-accent)}
.shop.nearest{box-shadow:0 0 0 3px var(--c-ink) inset}
.d24-band{border:0}
.d24-band:hover{background:var(--c-header)}
/* stato aperto/chiuso: solo su bianco */
.shop-hero .status{background:var(--c-surface);padding:6px 14px;border-radius:999px}
/* titoli: seconda riga in verde bosco */
h1 .accent,.hero .claim{color:var(--c-accent)}
.bignums b{color:var(--c-accent)}
.bignums b span{color:var(--c-ink)}
.numbers b{color:var(--c-accent)}
/* storia */
.timeline{border-left-color:var(--c-ink)}
.timeline li::before{background:var(--c-surface);border-color:var(--c-ink)}
/* persone */
.avatar.t1{background:var(--c-ink);color:var(--c-brand)}
.avatar.t2{background:var(--c-surface);color:var(--c-ink)}
.avatar.t3{background:var(--c-accent);color:#FFFFFF}
.avatar.sm,.section:not(.paper) .faces .avatar.sm{border-color:var(--c-bg)}
.person a:hover{background:rgba(255,255,255,.55)}
/* piè di pagina antracite */
.site-footer{background:var(--c-ink);color:var(--c-on-dark);border-top:0}
.site-footer a{color:#FFFFFF}
.site-footer a:hover{color:#FFFFFF}
.f-shops small{color:var(--c-on-dark)}
.f-title{color:var(--c-brand)}
.social a{background:transparent;border-color:rgba(255,255,255,.3);color:#FFFFFF}
.social a:hover{background:#FFFFFF;color:var(--c-ink)}
.legal{border-top-color:rgba(255,255,255,.18);color:var(--c-on-dark)}
.legal strong{color:#FFFFFF}
/* barra fissa mobile su lino */
.quickbar{background:var(--c-header)}
.quickbar a{background:var(--c-surface)}
/* foto: nessuna forma decorativa */
.hero-mark{display:none}
.near-links{font-size:.92rem;color:var(--c-ink-soft);margin-top:-6px}.near-links a{font-weight:600}

/* intestazione: logo ufficiale + "Sigarette elettroniche" in testo vero */
.site-header .wrap{height:80px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex:none}
.brand img{height:44px;width:auto}
.brand-tag{display:block;border-left:1.5px solid var(--c-line);padding-left:12px;font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;line-height:1.4;color:var(--c-accent);white-space:nowrap}
@media (max-width:880px){
  .site-header .wrap{height:68px}
  .nav{inset:68px 0 auto 0}
  .brand{gap:9px}
  .brand img{height:34px}
  .brand-tag{font-size:.6rem;letter-spacing:.14em;padding-left:9px}
  .head-cta{padding:6px 12px;gap:6px}
}
@media (max-width:420px){.head-cta span{display:none}.head-cta{width:42px;padding:0}}
.cta-short{display:none}
@media (max-width:420px){.head-cta{width:auto;padding:6px 12px}.head-cta span.cta-long{display:none}.head-cta span.cta-short{display:inline}.head-right{gap:2px}}
@media (max-width:350px){.brand-tag{display:none}}

/* ===== intestazione: logo ufficiale con scritta sotto ===== */
.brand-tag{display:none}
.site-header .wrap{height:96px}
.brand picture{display:block}
.brand img{height:68px;width:auto}
@media (max-width:880px){
  .site-header .wrap{height:64px}
  .nav{inset:64px 0 auto 0}
  .brand img{height:34px}
  .head-cta{display:none}
}

/* ===== apertura home: foto larga della vetrina di Orte ===== */
.hero-home3{padding:clamp(20px,3vw,36px) 0 clamp(28px,4vw,48px)}
.hero-home3 .hero-photo{margin:0 0 clamp(24px,4vw,44px);position:relative;background:none}
.hero-home3 .hero-photo img{width:100%;height:auto;aspect-ratio:1450/667;object-fit:cover;border-radius:22px;box-shadow:0 22px 44px -24px rgba(40,40,45,.45)}
.hero-home3 .hero-photo figcaption{position:absolute;left:16px;bottom:16px;right:auto}
.hero-home3 .hero-copy{display:grid;gap:18px}
.hero-home3 h1{max-width:12ch}
.hero-home3 .lead{margin-bottom:24px}
@media (min-width:900px){.hero-home3 .hero-copy{grid-template-columns:1.1fr 1fr;gap:56px;align-items:end}.hero-home3 .lead{margin-top:0}}
@media (max-width:640px){.hero-home3 .hero-photo img{aspect-ratio:4/3}.hero-home3 .label{letter-spacing:.2em;font-size:.68rem}}
@media (min-width:900px){.hero-home3 .label{letter-spacing:.22em;white-space:nowrap}}

/* ===== HOME: apertura testo a sinistra, foto a destra (telefono: foto sopra) ===== */
.hero-home4{padding:clamp(20px,3vw,40px) 0 clamp(28px,4vw,48px)}
.hero-home4 .wrap{display:grid;gap:24px}
.hero-home4 .hero-photo{margin:0;position:relative;background:none}
.hero-home4 .hero-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:22px;box-shadow:0 22px 44px -24px rgba(40,40,45,.45)}
.hero-home4 .hero-photo figcaption{position:absolute;left:16px;bottom:16px;right:auto}
.hero-home4 h1{max-width:12ch}
.hero-home4 .lead{margin-bottom:24px}
.hero-home4 .label{white-space:nowrap}
.hero-home4 .lbl-long{display:none}
@media (max-width:640px){.hero-home4 .label{letter-spacing:.14em;font-size:.68rem}}
@media (min-width:900px){
  .hero-home4 .wrap{grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
  .hero-home4 .hero-copy{order:1}
  .hero-home4 .hero-photo{order:2}
  .hero-home4 .hero-photo img{aspect-ratio:auto;height:min(calc(100vh - 160px),620px)}
  .hero-home4 .lbl-long{display:inline}
  .hero-home4 .label{letter-spacing:.16em}
}

/* ===== LOGO INTESTAZIONE: versione A (come l'insegna) / versione B (solo logo) ===== */
.site-header .wrap{transition:height .25s ease}
.brand img{transition:height .25s ease,opacity .2s ease}
.brand .logo-word,.brand .logo-full{display:block;width:auto}
.f-tag{font-size:.7rem!important;font-weight:600;letter-spacing:.24em;text-transform:uppercase;margin:10px 0 14px!important;opacity:.85}
/* A – computer: logo completo con scritta, intestazione alta; scorrendo resta solo FUMÈ */
.logo-a .site-header .wrap{height:110px}
.logo-a .brand .logo-full{height:88px}
.logo-a .brand .logo-word{display:none;height:44px}
.logo-a.scrolled .site-header .wrap{height:76px}
.logo-a.scrolled .brand .logo-full{display:none}
.logo-a.scrolled .brand .logo-word{display:block}
/* B – solo logo */
.logo-b .site-header .wrap{height:84px}
.logo-b .brand .logo-word{height:50px}
/* telefono: solo il logo, alto 40 px */
@media (max-width:880px){
  .logo-a .site-header .wrap,.logo-a.scrolled .site-header .wrap,.logo-b .site-header .wrap{height:68px}
  .logo-a .brand .logo-full{display:none}
  .logo-a .brand .logo-word,.logo-b .brand .logo-word{display:block;height:40px}
}

/* =====================================================================
   PALETTE B (bianco caldo con fasce verdi) – attiva solo con <body class="pal-b">
   Fonte: "Palette colori Fumè B – istruzioni per il web designer"
   ===================================================================== */
.pal-b{
  --b-bianco-caldo:#F7F6EF; --b-carta:#EFEDE3; --b-verde:#9CAF88; --b-verde-scuro:#2F4129;
  --b-salvia:#4F6442; --b-rovere:#C9A57B; --b-rovere-scuro:#7A5534;
  --b-chiaro:#DCE3D3; --b-chiaro-2:#C6D0BC;
  --c-bg:var(--b-bianco-caldo); --c-bg-alt:var(--b-carta); --c-header:var(--b-bianco-caldo);
  --c-accent:var(--b-salvia); --c-brand-strong:var(--b-salvia); --c-on-dark:var(--b-chiaro);
  background:var(--b-bianco-caldo);color:var(--c-ink)
}
/* testi su chiaro: etichette salvia con quadratino rovere, seconda riga titoli salvia */
.pal-b .label{color:var(--b-salvia)}
.pal-b .label::before{background:var(--b-rovere)}
.pal-b .btn.ghost{background:transparent;border:1.5px solid var(--c-ink);color:var(--c-ink)}
.pal-b .stars{color:var(--b-rovere)}
.pal-b .news small{color:var(--b-rovere-scuro)}
.pal-b .timeline li::before{border-color:var(--b-rovere)}
.pal-b .timeline{border-left-color:var(--b-rovere)}
.pal-b .section.paper{background:var(--b-carta)}
.pal-b .avatar.t1{background:var(--c-ink);color:var(--b-verde)}
.pal-b .avatar.t3{background:var(--b-verde-scuro);color:#FFFFFF}
/* home: sequenza delle fasce */
.pal-b .tone-verde-a,
.pal-b .tone-verde-b,
.pal-b .numbers-band{background:var(--b-verde)}
.pal-b .tone-carta,
.pal-b .tone-carta{background:var(--b-carta)}
.pal-b .tone-chiaro,
.pal-b .tone-chiaro,
.pal-b .tone-chiaro{background:var(--b-bianco-caldo)}
.pal-b .numbers-band{padding-top:clamp(36px,5vw,56px)}
/* fasce verde 7494C: testi antracite, numeri grandi verde scuro, riquadri bianchi al 42% */
.pal-b .numbers-band,.pal-b .tone-verde-a,.pal-b .tone-verde-b{--c-accent:var(--c-ink);--c-bg:var(--b-verde);color:var(--c-ink)}
.pal-b .numbers-band .label,.pal-b .tone-verde-a .label,.pal-b .tone-verde-b .label{color:var(--c-ink)}
.pal-b .numbers-band .label::before,.pal-b .tone-verde-a .label::before,.pal-b .tone-verde-b .label::before{background:var(--c-ink)}
.pal-b .bignums b,.pal-b .numbers b{color:var(--b-verde-scuro)}
.pal-b .tone-verde-a .steps li,
.pal-b .tone-verde-b .person a{background:rgba(255,255,255,.42)}
.pal-b .tone-verde-a .steps .n{color:var(--b-verde-scuro)}
.pal-b .tone-verde-a p,.pal-b .tone-verde-b p{color:var(--c-ink-soft)}
/* fascia verde scuro: invito finale */
.pal-b .section.soft.cta{background:var(--b-verde-scuro);color:var(--b-chiaro)}
.pal-b .section.soft.cta h2{color:#FFFFFF}
.pal-b .section.soft.cta .lead,.pal-b .section.soft.cta p{color:var(--b-chiaro)}
.pal-b .section.soft.cta .label{color:var(--b-rovere)}
.pal-b .section.soft.cta .label::before{background:var(--b-rovere)}
.pal-b .section.soft.cta .btn{background:var(--b-rovere);border-color:var(--b-rovere);color:var(--c-ink)}
.pal-b .section.soft.cta .btn:hover{background:#D6B790}
.pal-b .section.soft.cta :focus-visible{outline:3px solid #FFFFFF;outline-offset:3px}
/* piè di pagina verde scuro con bordo rovere */
.pal-b .site-footer{background:var(--b-verde-scuro);color:var(--b-chiaro);border-top:6px solid var(--b-rovere)}
.pal-b .f-title{color:var(--b-rovere)}
.pal-b .f-shops small{color:var(--b-chiaro)}
.pal-b .legal{color:var(--b-chiaro-2)}
.pal-b .social a:hover{color:var(--b-verde-scuro)}
.pal-b .site-footer :focus-visible{outline:3px solid #FFFFFF;outline-offset:3px}
/* palette B – correzione: niente verde scuro; invito finale in verde 7494C, piè di pagina antracite */
.pal-b .section.soft.cta{background:var(--b-verde);color:var(--c-ink)}
.pal-b .section.soft.cta h2{color:var(--c-ink)}
.pal-b .section.soft.cta .lead,.pal-b .section.soft.cta p{color:var(--c-ink-soft)}
.pal-b .section.soft.cta .label{color:var(--c-ink)}
.pal-b .section.soft.cta .label::before{background:var(--c-ink)}
.pal-b .section.soft.cta .btn{background:var(--c-ink);border-color:var(--c-ink);color:#FFFFFF}
.pal-b .section.soft.cta .btn:hover{background:#111114}
.pal-b .section.soft.cta :focus-visible{outline-color:var(--c-ink)}
.pal-b .site-footer{background:var(--c-ink);color:#D9DCD4}
.pal-b .f-shops small,.pal-b .legal{color:#D9DCD4}
.pal-b .social a:hover{color:var(--c-ink)}
.pal-b .bignums b,.pal-b .numbers b{color:var(--c-ink)}
.hero .lead .sub{display:block;font-size:1.25em;font-weight:600;color:var(--c-ink);margin-bottom:10px;line-height:1.35}
/* palette B – niente verde scuro nemmeno in avatar e numeri dei passi */
.pal-b .avatar.t3{background:var(--b-verde);color:var(--c-ink)}
.pal-b .tone-verde-a .steps .n{color:var(--c-ink)}
/* palette B – seconda riga dei titoli ed etichette in antracite (niente salvia scuro) */
.pal-b{--c-accent:var(--c-ink);--c-brand-strong:var(--c-ink)}
.pal-b .label{color:var(--c-ink)}

/* ===== INTESTAZIONE v3: logo ufficiale più grande, linea verde 7494C, riduzione allo scorrimento ===== */
.site-header{border-bottom:4px solid #9CAF88;box-shadow:none}
/* computer */
.logo-a .site-header .wrap{height:128px}
.logo-a .brand .logo-full{display:block;height:106px}
.logo-a .brand .logo-word{display:none;height:46px}
.logo-a.scrolled .site-header .wrap{height:76px}
.logo-a.scrolled .brand .logo-full{display:none}
.logo-a.scrolled .brand .logo-word{display:block}
/* telefono: logo completo; scritta ≥ 11 px */
@media (max-width:880px){
  .logo-a .site-header .wrap{height:104px}
  .logo-a .brand .logo-full{display:block;height:86px}
  .logo-a .brand .logo-word{display:none;height:38px}
  .logo-a.scrolled .site-header .wrap{height:64px}
  .logo-a.scrolled .brand .logo-full{display:none}
  .logo-a.scrolled .brand .logo-word{display:block}
  .nav{inset:calc(100% + 4px) 0 auto 0}
}

/* ===== HOME: due versioni dell'apertura con la fascia dei numeri nella prima schermata ===== */
.hero-home4 h1 .accent{color:#2F4129}
.numbers-band .bignums li{padding-top:22px;padding-bottom:20px}
.pal-b .numbers-band{padding-top:28px;padding-bottom:40px}
/* versione B: titolo a sinistra, foto a destra più bassa */
@media (min-width:900px){
  .hero-vb{padding:28px 0 32px}
  .hero-vb .hero-photo img{height:clamp(300px,calc(100vh - 430px),560px)}
  .hero-vb .lead{margin-bottom:20px}
}

/* ===== PAGINA NEGOZIO: galleria a 4 spazi che si adatta (4, 3 o 2 foto) ===== */
.shop-gallery{display:grid;gap:12px}
.shop-gallery figure{margin:0;position:relative;overflow:hidden;border-radius:var(--radius)}
.shop-gallery img,.shop-gallery .photo-slot{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.shop-gallery .g-esterno img,.shop-gallery .g-esterno .photo-slot{aspect-ratio:3/2}
.shop-gallery .g-interno img,.shop-gallery .g-interno .photo-slot{aspect-ratio:4/3}
.shop-gallery .g-dettaglio1 img,.shop-gallery .g-dettaglio1 .photo-slot,
.shop-gallery .g-dettaglio2 img,.shop-gallery .g-dettaglio2 .photo-slot{aspect-ratio:1/1}
.shop-gallery.n4{grid-template-columns:1fr 1fr;grid-template-areas:"est est" "int int" "d1 d2"}
.shop-gallery.n3{grid-template-columns:1fr;grid-template-areas:"est" "int" "d1"}
.shop-gallery.n3 .g-dettaglio1 img,.shop-gallery.n3 .g-dettaglio1 .photo-slot{aspect-ratio:4/3}
.shop-gallery.n2{grid-template-columns:1fr;grid-template-areas:"est" "int"}
.g-esterno{grid-area:est}.g-interno{grid-area:int}.g-dettaglio1{grid-area:d1}.g-dettaglio2{grid-area:d2}
@media (min-width:900px){
  /* esterno grande a sinistra; a destra interno sopra e due dettagli sotto */
  .shop-gallery.n4{grid-template-columns:3fr 2fr 2fr;grid-template-areas:"est int int" "est d1 d2"}
  .shop-gallery.n3{grid-template-columns:3fr 2fr;grid-template-areas:"est int" "est d1"}
  .shop-gallery.n2{grid-template-columns:1fr 1fr;grid-template-areas:"est int"}
  .shop-gallery .g-esterno img,.shop-gallery .g-esterno .photo-slot{aspect-ratio:auto;position:absolute;inset:0}
  .shop-gallery.n2 .g-esterno img,.shop-gallery.n2 .g-esterno .photo-slot{position:static;aspect-ratio:4/3}
  .shop-gallery.n3 .g-dettaglio1 img,.shop-gallery.n3 .g-dettaglio1 .photo-slot{aspect-ratio:4/3}
}
/* segnaposto neutri, nessuna immagine */
.photo-slot{display:grid!important;place-content:center;justify-items:center;gap:6px;background:var(--b-carta,#EFEDE3);color:var(--c-ink-soft);text-align:center;padding:16px;border:1px solid rgba(40,40,45,.08)}
.photo-slot svg{opacity:.55}
.photo-slot span{font-weight:600;font-size:.95rem;color:var(--c-ink)}
.photo-slot small{font-size:.78rem}
/* distributore 24h */
.d24-photo{display:grid;gap:20px;margin-top:28px;align-items:center}
.d24-photo figure{margin:0}
.d24-photo img,.d24-photo .photo-slot{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius)}
.d24-photo h3{font-size:1.4rem;margin:0 0 8px}
@media (min-width:700px){.d24-photo{grid-template-columns:minmax(220px,300px) 1fr;gap:40px}}
@media (max-width:699px){.d24-photo figure{max-width:240px}}
@media (min-width:900px){
  .shop-gallery.n4{grid-template-columns:3.4fr 1fr 1fr}
  .shop-gallery.n3{grid-template-columns:2fr 1fr}
}
.shop-gallery .g-esterno img,.shop-gallery .g-esterno .photo-slot{aspect-ratio:4/3}@media (min-width:900px){.shop-gallery .g-esterno img,.shop-gallery .g-esterno .photo-slot{aspect-ratio:auto}}
/* home: titolo tutto antracite; fascia numeri senza linee orizzontali */
.hero-home4 h1 .accent{color:#28282D}
.numbers-band .bignums{border-top:0;border-bottom:0}
.pal-b .numbers-band{padding-top:30px;padding-bottom:30px}
@media (max-width:600px){.numbers-band .bignums li{border-top:0}}
/* home: su computer la fascia verde arriva fino al fondo della prima schermata (niente striscia chiara sotto) */
@media (min-width:900px){
  .hero-home4{min-height:calc(100vh - 132px - 203px);display:flex;flex-direction:column;justify-content:center}
  .hero-home4>.wrap{width:100%}
}

/* ===== COSA TROVI DA FUMÈ ===== */
.cats{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:1fr}
@media (min-width:640px){.cats{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.cats{grid-template-columns:repeat(4,1fr)}}
.cat{background:#FFFFFF;border-radius:var(--radius);padding:24px 22px 22px;display:flex;flex-direction:column}
.cat-ico{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--b-carta,#EFEDE3);color:var(--c-ink);margin-bottom:16px;flex:none}
.tone-carta .cat-ico,.paper .cat-ico{background:var(--b-bianco-caldo,#F7F6EF)}
.cat h3{font-size:1.12rem;margin:0 0 8px;line-height:1.25}
.cat p{margin:0;color:var(--c-ink-soft);font-size:.96rem;line-height:1.55}
.cat .cat-note{margin-top:14px;padding-top:12px;border-top:1px solid var(--c-line);font-size:.9rem;font-weight:600}
.cat .cat-note a{color:var(--c-ink)}
.cats.full .cat{padding:30px 26px}
/* gusti */
.tastes{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:1fr 1fr}
@media (min-width:1000px){.tastes{grid-template-columns:repeat(4,1fr)}}
.taste{background:#FFFFFF;border-radius:var(--radius);padding:22px 20px;border-top:5px solid var(--b-rovere,#C9A57B)}
.taste.t-fruttati{border-top-color:#9CAF88}
.taste.t-cremosi{border-top-color:#E6D3B3}
.taste.t-freschi{border-top-color:#C6D0BC}
.taste h3{font-size:1.1rem;margin:0 0 6px}
.taste p{margin:0;font-size:.94rem;color:var(--c-ink-soft);line-height:1.5}
@media (max-width:420px){.tastes{grid-template-columns:1fr}}
/* marche */
.brands{list-style:none;margin:0;padding:28px 0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:22px 40px;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line)}
.brands img{height:34px;width:auto;max-width:150px;object-fit:contain;filter:brightness(0) saturate(100%) invert(13%) sepia(6%) saturate(642%) hue-rotate(201deg) brightness(95%)}
.brand-txt{font-weight:700;font-size:1.02rem;letter-spacing:.02em;color:#28282D;white-space:nowrap}
.brands-note{text-align:center;margin-top:14px}
/* Kiwi */
.kiwi-sec{padding-top:0!important;padding-bottom:0!important}
.kiwi-box{display:flex;gap:22px;align-items:flex-start;background:#FFFFFF;border-radius:var(--radius);padding:26px 28px;border-left:6px solid #9CAF88;margin-top:clamp(20px,3vw,36px)}
.kiwi-box h2{font-size:clamp(1.3rem,2.4vw,1.7rem);margin:0 0 8px}
.kiwi-box p:last-child{margin:0}
.kiwi-box .label{margin-bottom:8px}
@media (max-width:600px){.kiwi-box{flex-direction:column;gap:6px;padding:22px}}
@media (min-width:881px){
  .nav ul{gap:0}
  .nav a{white-space:nowrap;padding:10px 9px;font-size:.86rem}
}
@media (min-width:881px) and (max-width:1199px){
  .nav a{padding:10px 6px;font-size:.84rem}
  .head-cta span.cta-long{display:none}.head-cta span.cta-short{display:inline}
  .logo-a .brand .logo-full{height:90px}
}
.brands img{filter:none;height:38px;width:auto;max-width:150px;object-fit:contain;display:block}
.brands li{display:flex;align-items:center;min-height:44px}
@media (max-width:600px){.brands{gap:18px 28px}.brands img{height:30px;max-width:120px}}
/* fascia marche: altezza ottica per logo */
.brands{gap:26px 44px;padding:32px 0 26px;border-bottom:0}
.brands img{height:var(--h,34px);max-width:none;width:auto}
.brands li{min-height:62px}
.brands-txt{text-align:center;margin:0;padding:0 0 26px;border-bottom:1px solid var(--c-line);font-weight:700;font-size:.98rem;color:#28282D;line-height:1.9}
.brands-txt span{display:block;font-size:.72rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--c-ink-soft);margin-bottom:4px}
@media (max-width:600px){.brands{gap:18px 26px}.brands img{height:calc(var(--h,34px) * .78)}.brands li{min-height:48px}.brands-txt{font-size:.92rem}}
.d24-photo.no-photo{grid-template-columns:1fr;max-width:720px}
.brands{display:grid;grid-template-columns:repeat(5,1fr);justify-items:center;gap:30px 24px}
@media (max-width:899px){.brands{grid-template-columns:repeat(3,1fr);gap:22px 14px}}
@media (max-width:600px){.brands img{max-width:100%}}
@media (min-width:900px){.brands{grid-template-columns:repeat(6,1fr)}}
/* griglia loghi con ultima riga centrata */
.brands{display:flex;flex-wrap:wrap;justify-content:center;gap:30px 0}
.brands li{flex:0 0 calc(100% / 6);display:flex;justify-content:center;align-items:center;padding:0 10px}
@media (max-width:899px){.brands li{flex-basis:calc(100% / 3)}.brands{gap:22px 0}}
.brands.solo-loghi{border-bottom:1px solid var(--c-line);padding-bottom:30px}
.brands li{box-sizing:border-box;min-width:0}.brands img{max-width:100%;object-fit:contain}
/* marche divise per gruppo */
.brand-group+.brand-group{margin-top:8px}
.brand-group-t{font-size:.74rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--c-ink-soft);text-align:center;margin:0;padding-top:26px}
.brand-group .brands{border-top:0}
.brand-group:first-child{border-top:1px solid var(--c-line)}
.brand-group:first-of-type{border-top:1px solid var(--c-line)}
@media (min-width:900px){.brand-group:first-of-type .brands li{flex-basis:calc(100% / 7)}}
.brand-group.g1{border-top:1px solid var(--c-line)}
@media (min-width:900px){.brand-group.g1 .brands li{flex-basis:calc(100% / 7)}}
@media (min-width:900px){.brand-group.g1 .brands li{flex-basis:calc(100% / 8)}.brand-group.g1 .brands img{max-width:128px}}
@media (min-width:900px){.brand-group.g2 .brands li{flex-basis:calc(100% / 7)}}
/* mappa Google con consenso */
.gmap{width:100%}
.map-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.map-tab{font:inherit;font-size:.84rem;font-weight:600;padding:7px 14px;border-radius:999px;border:1.5px solid var(--c-ink);background:transparent;color:var(--c-ink);cursor:pointer}
.map-tab[aria-pressed="true"]{background:var(--c-ink);color:#FFFFFF}
.gmap-frame{position:relative;width:100%;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;background:var(--b-carta,#EFEDE3)}
.gmap-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.gmap-consent{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:12px;padding:24px;text-align:center}
.gmap-consent p{max-width:40ch;margin:0;font-size:.92rem;color:var(--c-ink-soft)}
.gmap-consent p b{display:block;color:var(--c-ink);font-size:1.05rem;margin-bottom:6px}
.map-img{margin:0;width:100%}
.map-img img{display:block;width:100%;height:auto;border-radius:var(--radius);box-shadow:0 14px 30px -18px rgba(40,40,45,.4)}
.map-img figcaption{font-size:.72rem;color:var(--c-ink-soft);margin-top:6px;text-align:right}
/* telefono: numeri in una fascia verde compatta subito sotto la foto */
.hero-nums{display:none}
@media (max-width:899px){
  .hero-vb{padding-top:14px}
  .hero-vb .wrap{gap:0}
  .hero-vb .hero-photo img{aspect-ratio:16/10}
  .hero-nums{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;margin:12px calc(-1 * var(--gut)) 22px;padding:14px var(--gut);background:#9CAF88;color:#28282D;text-align:center}
  .hero-nums li+li{border-left:1px solid rgba(40,40,45,.25)}
  .hero-nums b{display:block;font-size:1.9rem;font-weight:700;letter-spacing:-.03em;line-height:1}
  .hero-nums span{display:block;font-size:.72rem;font-weight:600;margin-top:4px;line-height:1.25}
  .numbers-band{display:none}
}
