/* M-Pellet — pagine prodotto (POMPEI, FORGIA e schede compatte) e pagina gamma.
   Stesso sistema di FIAMMA/ETNA: fondo scuro, Archivo + JetBrains Mono, giallo del logo come unico accento.
   Classi documentate in docs/snippet-prodotto.html. Richiede experience.css (token, .btn, .kicker, .facts,
   .opts, .price, .link-arrow, .buybar...) e richiesta.css (modulo #richiesta). */

body.prodotto{--dim:#9a9a96;background:var(--void)}

/* ---------- 1. HERO ---------- */
.p-hero{position:relative;min-height:92vh;min-height:92svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center;padding:110px var(--gutter) 70px;overflow:hidden}
.p-hero__txt{display:grid;gap:22px;max-width:560px;position:relative;z-index:1}
.p-hero__cat{font:600 12px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--yellow)}
.p-hero__name{font-size:clamp(56px,7vw,124px)}
.p-hero__media{position:relative;display:grid;place-items:center;min-height:min(70vh,640px);background:radial-gradient(55% 50% at 50% 58%,#2a1a10 0%,transparent 72%)}
.p-hero__media img{max-height:min(72vh,660px);width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 40px 50px rgba(0,0,0,.6))}
.p-hero__ghost{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(110px,22vw,380px);color:transparent;-webkit-text-stroke:1px rgba(244,244,242,.08);white-space:nowrap;pointer-events:none;z-index:0}
.p-hero__media figcaption,.p-fig figcaption{position:absolute;left:0;bottom:0;font:500 11px var(--mono);color:var(--dim)}
@media (max-width:900px){
  .p-hero{grid-template-columns:1fr;padding-top:90px;min-height:0}
  .p-hero__media{order:-1;min-height:0}
  .p-hero__media img{max-height:46vh}
  .p-hero__ghost{display:none}
}

/* prezzo: sempre con l'indicazione IVA; "su richiesta" quando le fonti non danno un prezzo */
.p-price{display:grid;gap:4px}
.p-price__amount{font:700 clamp(30px,3vw,42px)/1.1 var(--mono);letter-spacing:-.01em}
.p-price__iva{font:500 11px/1.4 var(--mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.p-price--richiesta .p-price__amount{font-size:clamp(22px,2.2vw,28px);color:var(--ink)}
.p-price--richiesta .p-price__amount::before{content:"";display:inline-block;width:10px;height:10px;background:var(--yellow);margin-right:12px;vertical-align:.12em}
.p-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px}
@media (max-width:560px){.p-cta .btn{flex:1 1 100%;justify-content:center}}

/* ---------- 2. SEZIONI ---------- */
.p-sec{position:relative;padding:clamp(80px,10vw,130px) var(--gutter);display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(30px,4vw,52px);border-top:1px solid var(--line)} /* colonna esplicita minmax(0,…): i figli non allargano la pagina su mobile */
.p-sec--alt{background:#111112}
.p-sec--chiara{background:var(--ink);color:var(--void);border-top:0}
.p-sec--chiara .kicker{color:#555}
.p-sec--chiara .kicker::before{background:var(--void)}
.p-sec--chiara .lead,.p-sec--chiara p{color:#2b2b2d}
.p-sec--chiara .btn--solid{background:var(--void);color:var(--ink)}
.p-sec--chiara .btn--solid::before{background:var(--yellow)}
.p-sec--chiara .btn--solid:hover{color:var(--yellow-ink)}
.p-sec__head{display:grid;gap:16px;max-width:820px}
.p-sec__head .lead{max-width:56ch}
.p-nota{font:500 12px/1.5 var(--mono);color:#8a8a86;max-width:70ch} /* non --dim: a 12 px serve contrasto 4,5:1 sul nero */
.p-sec--chiara .p-nota{color:#5c5c5e}

/* presentazione: frase forte a sinistra, testo a destra */
.p-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:start}
.p-intro__txt{display:grid;gap:16px;font-size:clamp(16px,1.2vw,19px);color:#d6d6d2}
.p-intro__txt p{max-width:60ch}
@media (max-width:900px){.p-intro{grid-template-columns:1fr}}

/* figura (render di catalogo o foto reale) */
.p-fig{position:relative;margin:0;display:grid;place-items:center;padding:24px 0 30px;background:radial-gradient(55% 50% at 50% 55%,#231812 0%,transparent 72%)}
.p-fig img{max-height:70vh;width:auto;max-width:100%;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55))}

/* ---------- 3. CARATTERISTICHE (griglia) ---------- */
.p-feat{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.p-feat li{background:var(--void);padding:30px 26px 34px;display:grid;gap:12px;align-content:start;position:relative}
.p-sec--alt .p-feat li{background:#111112}
.p-feat__n{font:600 12px var(--mono);color:var(--yellow);letter-spacing:.1em}
.p-feat h3{font-size:clamp(20px,1.7vw,26px);font-weight:800;font-stretch:112%;letter-spacing:-.01em;line-height:1.1}
.p-feat p{color:#cfcfcb;font-size:15px}
.p-feat li::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}
.p-feat li:hover::after{transform:none}

/* ---------- 4. SCHEDA TECNICA (tabella responsive) ---------- */
.p-specs{width:100%;border-collapse:collapse;font:400 14px/1.5 var(--mono);border-top:1px solid var(--line)}
.p-specs caption{text-align:left;padding-bottom:14px;font:600 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.p-specs th,.p-specs td{text-align:left;vertical-align:top;padding:15px 16px 15px 0;border-bottom:1px solid var(--line)}
.p-specs th{width:min(34%,260px);font-weight:500;color:var(--muted)}
.p-specs td small{display:block;color:var(--dim);font-size:12px}
@media (max-width:560px){
  .p-specs,.p-specs tbody,.p-specs tr,.p-specs th,.p-specs td{display:block;width:auto}
  .p-specs tr{padding:12px 0;border-bottom:1px solid var(--line)}
  .p-specs th,.p-specs td{border:0;padding:0}
  .p-specs th{font-size:12px;margin-bottom:2px}
}

/* ---------- 5. COME SI USA (passaggi) ---------- */
.p-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:28px;counter-reset:passo}
.p-steps li{counter-increment:passo;display:grid;gap:10px;align-content:start;padding-top:18px;border-top:2px solid var(--line)}
.p-steps li::before{content:counter(passo,decimal-leading-zero);font:700 clamp(34px,3.4vw,52px)/1 var(--mono);color:var(--yellow)}
.p-steps h3{font-size:20px;font-weight:800}
.p-steps p{color:#cfcfcb;font-size:15px}

/* ---------- 6. PUNTI DI FORZA ---------- */
.p-plus{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px 40px;font-size:18px}
.p-plus li{position:relative;padding-left:24px}
.p-plus li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;background:var(--yellow)}
.p-sec--chiara .p-plus li::before{outline:1px solid var(--void)}
.p-plus b{font-weight:800}

/* ---------- 7. AMBIENTAZIONI ---------- */
.p-amb{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.p-amb li{font:600 13px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:14px 18px;border:1px solid rgba(244,244,242,.24)}
.p-sec--chiara .p-amb li{border-color:rgba(12,12,13,.3)}
.p-amb-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center}
@media (max-width:900px){.p-amb-grid{grid-template-columns:1fr}}

/* ---------- 8. OPTIONAL E ACCESSORI ---------- */
.p-opts{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);max-width:860px}
.p-opts li{display:grid;grid-template-columns:1fr auto;gap:4px 20px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--line)}
.p-opts__name{font-weight:600}
.p-opts__name small{display:block;font-weight:400;font-size:13px;color:var(--muted)}
.p-opts__price{font:500 14px var(--mono);color:var(--ink);white-space:nowrap}
.p-opts__price--richiesta{color:var(--muted)}
/* variante selezionabile: si usa .opts di experience.css dentro un contenitore con id,
   e il pulsante con data-richiesta-apri data-optional-da="#id" passa le voci spuntate al modulo */
.p-config{display:grid;gap:18px;max-width:860px}

/* ---------- 9. PREZZO E CTA (fascia di chiusura) ---------- */
.p-buy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 48px;align-items:center;padding:clamp(26px,4vw,48px);border:1px solid var(--line);background:linear-gradient(120deg,#151516,#0f0f10)}
.p-buy__txt{display:grid;gap:14px}
.p-buy .p-cta{justify-content:flex-end}
@media (max-width:900px){.p-buy{grid-template-columns:1fr}.p-buy .p-cta{justify-content:flex-start}}

/* ---------- 10. FAQ ---------- */
.p-faq{display:grid;border-top:1px solid var(--line);max-width:920px}
.p-faq details{border-bottom:1px solid var(--line)}
.p-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;cursor:pointer;font-weight:700;font-size:clamp(17px,1.4vw,20px)}
.p-faq summary::-webkit-details-marker{display:none}
.p-faq summary::after{content:"";flex:none;width:14px;height:14px;background:linear-gradient(var(--yellow),var(--yellow)) center/14px 2px no-repeat,linear-gradient(var(--yellow),var(--yellow)) center/2px 14px no-repeat;transition:transform .35s var(--ease)}
.p-faq details[open] summary::after{transform:rotate(45deg)}
.p-faq summary:hover{color:var(--yellow)}
.p-faq details>div{padding:0 0 22px;color:#d6d6d2;max-width:70ch;display:grid;gap:10px}

/* ---------- 11. CORRELATI / GAMMA (schede prodotto) ---------- */
.p-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.p-grid>li{background:var(--void);display:flex;min-width:0} /* auto-fit: nessuna traccia vuota (grigia) con poche schede */
.p-sec--alt .p-grid>li{background:#111112}
.p-card{position:relative;display:grid;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);min-width:0;gap:18px;padding:26px 24px 28px;width:100%;transition:background .4s}
.p-card:hover{background:#151516}
.p-card__img{position:relative;min-width:0;display:grid;place-items:center;aspect-ratio:4/5;background:radial-gradient(55% 50% at 50% 58%,#231812 0%,transparent 72%)}
/* immagine vincolata al riquadro: max-height:100% dentro aspect-ratio non si risolve e la misura naturale (fino a 1620 px) allargava la scheda */
.p-card__img img{position:absolute;inset:0;margin:auto;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;filter:drop-shadow(0 20px 26px rgba(0,0,0,.55));transition:transform .6s var(--ease)}
.p-card:hover .p-card__img img{transform:translateY(-8px)}
.p-card__txt{display:grid;gap:8px;align-content:start}
.p-card__cat{font:600 11px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.p-card__name{font-size:clamp(28px,2.6vw,40px)}
.p-card__price{font:500 13px var(--mono);color:var(--muted)}
.p-card__price b{font-size:18px;color:var(--ink)}
.p-card .link-arrow{margin-top:6px}
.p-card a::after{content:"";position:absolute;inset:0} /* tutta la scheda cliccabile, un solo link */

/* ---------- 12. PAGINA GAMMA: intestazione dei gruppi ---------- */
.p-gruppo{display:grid;gap:22px}
.p-gruppo__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 24px}

/* ---------- 13. VISUAL DEL PRODOTTO: pannello e provvisoria (28/10/2026) ----------
   Strategia in docs/strategia-immagini-2026-10-28.md; file e trattamento per prodotto in
   assets/img/prodotti/manifest.json. Regola: un'immagine non supera mai 1x i suoi pixel (1,3x fisico su HiDPI):
   --px = larghezza in pixel della variante piu' grande dello srcset (scritta nello style del contenitore).

   A) .p-visual--pannello   (gruppo B: FORGIA, POMPEI) immagine sul suo sfondo bianco originale, in un pannello
      chiaro. Niente scontorno, niente drop-shadow.
      <figure class="p-visual p-visual--pannello p-visual--hero" style="--px:1920">
        <img src="assets/img/prodotti/forgia/forgia-studio-1280.webp" srcset="... 640w, ... 1280w, ... 1920w"
             sizes="(max-width:900px) 92vw, 46vw" width="1920" height="2400" alt="...">
        <figcaption class="p-visual__nota">Foto da studio</figcaption>
      </figure>

   B) .p-visual--provvisoria.p-visual--tavola   (gruppo C con tavola pubblicabile: VULCANO, FUCINA)
      tavola del catalogo INTERA, con il suo sfondo, in un passe-partout; didascalia dichiarata.
      <figure class="p-visual p-visual--provvisoria p-visual--tavola p-visual--hero" style="--px:1311">
        <div class="p-visual__pp"><img src="assets/img/prodotti/vulcano/vulcano-tavola-catalogo-1311.webp"
             srcset="... 640w, ... 1311w" sizes="(max-width:900px) 92vw, 46vw" width="1311" height="1077" alt="..."></div>
        <figcaption class="p-visual__nota">Tavola dal catalogo 2026-27 <span>Immagine dettagliata in aggiornamento</span></figcaption>
      </figure>

   C) .p-visual--provvisoria.p-visual--tipo   (gruppo C senza immagine pubblicabile: ARDORE, BRACE, VESUVIO,
      STROMBOLI; e la card di VULCANO e FUCINA) solo tipografia: nome, categoria, stato. Nessuna silhouette.
      <div class="p-visual p-visual--provvisoria p-visual--tipo p-visual--card" role="img"
           aria-label="ARDORE, immagine del prodotto in aggiornamento">
        <span class="p-visual__cat">Fungo riscaldante a pellet</span>
        <span class="p-visual__nome" aria-hidden="true">ARDORE</span>
        <span class="p-visual__nota">Immagine dettagliata in aggiornamento</span>
      </div>

   Varianti di misura: --hero (dentro .p-hero__media o .p-fig) e --card (dentro .p-card__img, riempie il 4:5). */
.p-visual{position:relative;margin:0;display:grid;justify-items:center;align-content:center;gap:12px;width:100%;min-width:0}
.p-visual img{display:block;width:100%;height:auto;max-width:calc(var(--px,640) * .65px);filter:none;transform:none}
@media (max-resolution:1.4dppx){.p-visual img{max-width:calc(var(--px,640) * 1px)}}
.p-visual__nota{font:500 11px/1.45 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#5c5c5e;text-align:center}
.p-visual__nota span{display:block;color:#7a7a76}

/* A) pannello chiaro con lo sfondo originale */
.p-visual--pannello{background:#fff;padding:clamp(14px,2.4vw,34px);box-shadow:0 34px 60px -34px rgba(0,0,0,.7)}
.p-visual--pannello img{object-fit:contain}
.p-visual--pannello .p-visual__nota{position:static;color:#5c5c5e}

/* B) tavola di catalogo in passe-partout */
.p-visual--tavola{background:#f2f1ec;padding:clamp(14px,2.6vw,38px) clamp(14px,2.6vw,38px) clamp(12px,1.8vw,22px);box-shadow:0 34px 60px -34px rgba(0,0,0,.7)}
.p-visual__pp{width:100%;display:grid;place-items:center;background:#fff;outline:1px solid rgba(12,12,13,.10)}
.p-visual--tavola .p-visual__nota{position:static;color:#4f4f4c} /* su #f2f1ec: 7,4:1; la seconda riga 5,3:1 (11 px, AA) */
.p-visual--tavola .p-visual__nota span{color:#64645f}

/* C) provvisoria tipografica (nessuna immagine) */
.p-visual--tipo{container-type:inline-size;align-content:space-between;justify-items:start;text-align:left;padding:clamp(28px,2.8vw,40px);background:linear-gradient(160deg,#18181a 0%,#0f0f10 70%);border:1px solid var(--line);overflow:hidden}
.p-visual--tipo::before,.p-visual--tipo::after{content:"";position:absolute;width:14px;height:14px;border:0 solid rgba(244,244,242,.35)}
.p-visual--tipo::before{top:9px;left:9px;border-top-width:1px;border-left-width:1px}
.p-visual--tipo::after{right:9px;bottom:9px;border-right-width:1px;border-bottom-width:1px}
.p-visual__cat{font:600 11px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--yellow)}
.p-visual__nome{font-weight:800;font-stretch:112%;letter-spacing:-.02em;line-height:.9;color:#e9e9e5;max-width:100%;white-space:nowrap;font-size:min(14.5cqi,120px)} /* 14,5cqi: i nomi fino a 9 lettere (STROMBOLI) stanno su una riga; testo pieno (il contorno dei font variabili mostra le sovrapposizioni) */
.p-visual--tipo .p-visual__nota{color:#8a8a86;text-align:left;display:flex;align-items:center;gap:10px}
.p-visual--tipo .p-visual__nota::before{content:"";flex:none;width:8px;height:8px;background:var(--yellow)}

/* misure */
.p-visual--hero{max-width:min(100%,640px)}
.p-visual--hero.p-visual--tipo{aspect-ratio:4/5;max-height:min(72vh,660px);max-width:min(100%,640px,calc(min(72vh,660px) * .8))} /* larghezza legata al tetto d'altezza: il 4:5 resta 4:5 */
.p-visual--card{position:absolute;inset:0;height:100%}
/* pannello nella scheda: blocco (non grid), così height:100% dell'immagine si risolve e un'immagine 4:5 resta nel riquadro
   quadrato o 4:3; niente padding in basso e immagine appoggiata al fondo (le ombre dei render arrivano al bordo: nessuna giunta) */
.p-visual--card.p-visual--pannello,.p-visual--card.p-visual--tavola{padding:10px}
.p-visual--card.p-visual--pannello{display:block;padding-bottom:0}
.p-visual--card img{height:100%;width:100%;object-fit:contain}
.p-visual--card.p-visual--pannello img{object-position:50% 100%}
/* tipografica nella scheda: categoria e nome sono già nel testo della scheda, qui resta solo il nome (aria-hidden) */
.p-visual--card.p-visual--tipo{padding:28px 26px 22px;grid-template-rows:minmax(0,1fr) auto;align-content:stretch}
.p-visual--card .p-visual__cat{display:none}
.p-visual--card .p-visual__nome{align-self:center}
/* dentro le schede esistenti: annulla il posizionamento e l'ombra pensati per le immagini scontornate */
.p-card__img>.p-visual img{position:static;inset:auto;margin:0;max-height:none}
.p-card:hover .p-card__img .p-visual img{transform:none}
.p-card:hover .p-visual--tipo{border-color:rgba(242,210,10,.45)}
.p-hero__media .p-visual img,.p-fig .p-visual img{max-height:none;filter:none}
@media (max-width:900px){.p-hero__media .p-visual--hero{max-width:min(100%,460px)}}
@media (prefers-reduced-motion:reduce){.p-card:hover .p-visual--tipo{border-color:var(--line)}}

/* ---------- PREZZO CAMPAGNA 2026/27 (.p-prezzo) · regole 28/10/2026 · markup in docs/snippet-prezzo.html ----------
   Prezzo sempre IVA inclusa, consegna inclusa in Italia (isole escluse), vantaggio quantità -5% da 2 pezzi
   dello stesso prodotto (solo FIAMMA, POMPEI Drink Service, FORGIA, ETNA nero). Valori da assets/js/prezzi.js.
   Varianti: .p-prezzo--esteso (sezione prezzo, con CTA) · .p-prezzo--compatto (hero, card, barra)
             .p-prezzo--richiesta (prodotti senza prezzo pubblico: nessun -5%). Funziona anche su .p-sec--chiara. */
.p-prezzo{--pz-ink:var(--ink);--pz-muted:#b4b4b0;--pz-line:var(--line);--pz-box:rgba(244,244,242,.04);display:grid;gap:18px;color:var(--pz-ink);min-width:0}
.p-sec--chiara .p-prezzo{--pz-ink:var(--void);--pz-muted:#4a4a4c;--pz-line:rgba(12,12,13,.16);--pz-box:rgba(12,12,13,.04)}
.p-prezzo p{margin:0}
.p-prezzo__main{display:grid;gap:6px}
.p-prezzo__lbl{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font:600 12px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--pz-muted)}
.p-prezzo__importo{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;font:700 clamp(32px,3.4vw,48px)/1.08 var(--mono);letter-spacing:-.01em;color:var(--pz-ink)}
.p-prezzo__iva{font:600 13px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--pz-muted)}
.p-prezzo__consegna{font:500 15px/1.45 var(--display);color:var(--pz-ink)}
.p-prezzo__consegna small{font:500 12px/1.4 var(--mono);color:var(--pz-muted);margin-left:4px;white-space:nowrap}
.p-prezzo__qta{display:grid;gap:8px;padding:16px 18px;border:1px solid var(--pz-line);border-left:3px solid var(--yellow);background:var(--pz-box)}
.p-prezzo__qta-txt{font-size:15px;line-height:1.5;color:var(--pz-ink)}
.p-prezzo__qta-txt b{font:700 18px/1.3 var(--mono);white-space:nowrap}
/* badge: testo "−5%" (non solo colore) su giallo, contrasto > 12:1; per gli screen reader "sconto del 5 per cento" */
.p-prezzo__badge{display:inline-flex;align-items:center;padding:3px 8px;background:var(--yellow);color:var(--yellow-ink);font:700 13px/1.2 var(--mono);letter-spacing:.02em;text-transform:none;border:1px solid var(--yellow-ink)}
.p-prezzo__cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px}
.p-prezzo__multi{margin-left:4px}
.p-prezzo__isole{font:500 12px/1.5 var(--mono);color:var(--pz-muted);max-width:60ch}
.p-sec--chiara .p-prezzo .btn--ghost{border-color:rgba(12,12,13,.35);color:var(--void)}
.p-sec--chiara .p-prezzo .btn--ghost:hover{color:var(--ink)}
.p-sec--chiara .p-prezzo .btn--ghost::before{background:var(--void)}
@media (max-width:560px){.p-prezzo__cta .btn{flex:1 1 100%;justify-content:center}.p-prezzo__multi{margin-left:0}}

/* esteso: prezzo a sinistra, vantaggio quantità a destra su schermi larghi */
.p-prezzo--esteso{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px clamp(24px,4vw,56px);align-items:start;padding:clamp(20px,3vw,34px);border:1px solid var(--pz-line)}
.p-prezzo--esteso .p-prezzo__importo{font-size:clamp(38px,4.4vw,64px)}
.p-prezzo--esteso .p-prezzo__cta,.p-prezzo--esteso .p-prezzo__isole{grid-column:1/-1}
@media (max-width:900px){.p-prezzo--esteso{grid-template-columns:minmax(0,1fr)}}

/* compatto: hero, card della gamma, barra mobile */
.p-prezzo--compatto{gap:10px}
.p-prezzo--compatto .p-prezzo__importo{font-size:clamp(26px,2.6vw,36px)}
.p-prezzo--compatto .p-prezzo__consegna{font-size:14px}
.p-prezzo--compatto .p-prezzo__qta{padding:8px 0 0;border:0;border-top:1px solid var(--pz-line);background:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.p-prezzo--compatto .p-prezzo__qta-txt{font-size:14px}
.p-prezzo--compatto .p-prezzo__qta-txt b{font-size:15px}

/* su richiesta: nessun importo, nessun -5% */
.p-prezzo--richiesta .p-prezzo__importo{font-size:clamp(22px,2.2vw,30px);align-items:center}
.p-prezzo--richiesta .p-prezzo__importo::before{content:"";width:10px;height:10px;background:var(--yellow);flex:none}
@media (forced-colors:active){.p-prezzo__badge{border-color:CanvasText}.p-prezzo__qta{border-left-color:CanvasText}}

/* collaudo approvazione 28/10/2026: regole condivise (prima ripetute come rattoppi locali nelle pagine) */
[hidden]{display:none!important} /* display:grid/flex di .richiesta__config, .p-prezzo ecc. non deve annullare l'attributo hidden */
.buybar .btn{flex:none} /* sotto i 430 px il pulsante non si comprime e il testo non esce */
.buybar div{min-width:0}
