/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════
   mobile-premium — redesign SOLO telefoni (≤768 px): header con CTA «Preventivo gratuito», hamburger a 2 linee, menu a pannello,
   hero Home essenziale, barra «Chiama / WhatsApp», passaggio film → contenuto, spaziature e form.
   REGOLA: fuori dai telefoni nessuna regola di questo file è attiva (tutto in @media max-width:768px), salvo i default che NASCONDONO
   gli elementi nuovi (.nav-m-cta) e replicano lo stile inline preesistente (.mm-staff).  Film (engine, manifest, chunk, HTML .hx-*): intatto;
   le rese del film toccate qui sono solo CSS di contorno (card Agos, hint, ombra finale).
   ═══════════════════════════════════════════════════════════════════════════════════════════════════════ */

/* ── default fuori dai telefoni ──
   Gli elementi aggiunti dal markup mobile sono nascosti o «trasparenti» (display:contents): il menu a hamburger 769–1080 px resta come prima. */
.nav-m-cta{display:none}
.mm-staff{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;padding:13px;border-radius:10px;background:#2d8653;color:#fff;text-decoration:none;font-size:14px;font-weight:700}
.mm-head,.mm-scroll,.mm-foot,.mm-acc,.mm-acc-panel,.mm-acc-in{display:contents}
.mm-logo,.mm-all,.mm-chev,.mm-tag,.mcb-sep,.mm-x,.mm-ph{display:none}   /* .mm-x = voci prodotto che il menu di alcuni articoli non aveva: solo telefoni */
@media (min-width:769px){   /* ordine storico delle voci (nel markup «Prodotti» ora precede «Chi siamo» e «Staff» precede la CTA: valido sui telefoni) */
  .mobile-menu .mobile-nav-link{order:5}
  .mobile-menu .mm-home{order:1}.mobile-menu .mm-chi{order:2}.mobile-menu .mm-acc-toggle{order:3}.mobile-menu .mm-acc-in>*{order:4}
  .mobile-menu .mm-div-end{order:6}.mobile-menu .mm-cta{order:7;margin-top:12px}.mobile-menu .mm-staff{order:8}   /* margine della CTA come sul live (era style="margin-top:12px") */
}
@media (min-width:769px) and (max-width:1080px) and (max-height:500px){   /* telefono in orizzontale (844×390…): il menu scorre invece di uscire dallo schermo */
  .mobile-menu{overflow-y:auto;justify-content:flex-start;padding-top:64px;padding-bottom:36px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .mobile-menu-close{position:fixed;top:12px;right:16px}
}

@media (max-width:768px){
  :root{
    --mp-gut:20px;--mp-head:64px;--mp-bar-h:60px;--mp-bar-gap:10px;--mp-bar-side:clamp(12px,3.6vw,16px);
    --mp-bar-total:76px;   /* spazio riservato in basso: INVARIATO (era 56+2×10) → la geometria dei testi del film non si sposta */
    --mp-ink:#0b0e12;--mp-ink2:#11161b;--mp-paper:#f6f2ea;--mp-warm:#f3d9a8;--mp-green:#21703e;--mp-green-d:#174f2c;
    --mp-ease:cubic-bezier(.2,.7,.2,1);
    --pf-gut:var(--mp-gut);--qf-gut:var(--mp-gut)
  }
}
@media (min-width:431px) and (max-width:768px){:root{--mp-gut:24px}}

@media (max-width:768px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body{padding-bottom:calc(var(--mp-bar-total) + env(safe-area-inset-bottom))}
  :focus-visible{outline:2px solid var(--mp-warm);outline-offset:3px}
  .navbar.scrolled :focus-visible,.pf-paper :focus-visible,.pf-white :focus-visible,.pf-form-card :focus-visible,.qf-card :focus-visible,.pf-footer :focus-visible{outline-color:var(--mp-green-d)}
  .navbar.scrolled .nav-m-cta:focus-visible{outline-color:var(--mp-green-d);outline-offset:3px}

  /* ═════ 1 · HEADER ═════ logo · CTA · hamburger. 64 px (+ safe-area-top). */
  .navbar{padding-top:env(safe-area-inset-top)}
  .navbar .navbar-wrap{padding:0!important}
  .navbar .navbar-inner{display:flex!important;align-items:center;justify-content:space-between!important;flex-wrap:nowrap;gap:10px!important;
    min-height:var(--mp-head);padding:10px 8px 10px var(--mp-gut)!important}
  .navbar .nav-logo{position:static!important;flex:0 0 auto;display:block;line-height:0}
  .navbar .nav-logo img,body.hx-prod .navbar.transparent .nav-logo img,.navbar.scrolled .nav-logo img{height:40px;width:auto;border-radius:7px;box-shadow:0 6px 20px rgba(0,0,0,.26)}
  .navbar.scrolled .nav-logo img{box-shadow:none}
  .navbar .nav-links,.navbar .nav-cta{display:none!important}
  .navbar .nav-mobile-right{display:flex!important;align-items:center;gap:4px!important;position:static!important;right:auto!important;margin-left:auto;min-width:0}
  .navbar #adminTriggerNav{display:none!important}   /* l'accesso staff resta nel menu (stesso elemento, stesso id) */
  .nav-m-cta{display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;min-width:0;height:40px;padding:0 15px;border-radius:999px;
    background:var(--mp-paper);color:var(--mp-green-d);font:800 .68rem/1 'Inter',system-ui,sans-serif;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;
    text-decoration:none;box-shadow:0 8px 22px rgba(0,0,0,.3);transition:background .25s,color .25s,box-shadow .25s,transform .2s;-webkit-tap-highlight-color:transparent}
  .nav-m-cta{position:relative}
  .nav-m-cta::after{content:"";position:absolute;inset:-3px -4px}   /* area di tocco 46×… senza ingrandire la pillola */
  .nav-m-cta:active{transform:scale(.97)}
  .navbar.scrolled .nav-m-cta{background:var(--mp-green);color:#fff;box-shadow:0 6px 16px rgba(23,79,44,.3)}
  /* hamburger: 2 linee sottili, area di tocco 44×44 */
  .hamburger{display:flex!important;position:relative;flex:0 0 44px;width:44px;height:44px;padding:0;margin:0;border-radius:12px;background:none;border:0;
    align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}
  .hamburger span{position:absolute;left:12px;top:50%;display:block;width:20px;height:1.6px;margin:0;border-radius:2px;background:#fff;
    transition:transform .3s var(--mp-ease),opacity .2s,background .25s}
  .hamburger span:nth-child(1){transform:translateY(-4px)}
  .hamburger span:nth-child(2){opacity:0;transform:scaleX(.4)}
  .hamburger span:nth-child(3){transform:translateY(4px)}
  .navbar.scrolled .hamburger span{background:var(--text,#1a1d1f)}
  .hamburger.open span:nth-child(1){transform:rotate(45deg)}
  .hamburger.open span:nth-child(3){transform:rotate(-45deg)}
  @media (max-width:359px){.nav-m-cta{padding:0 11px;font-size:.62rem;letter-spacing:.05em}.navbar .navbar-inner{gap:6px!important}}

  /* ═════ 2 · MENU: schermo intero scuro in tre parti (testata logo+X · lista che scorre · CTA fissa in fondo). «Prodotti» è un accordion chiuso. ═════ */
  .mobile-menu,.mobile-menu.open{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:0;overflow:hidden;
    background:radial-gradient(130% 55% at 50% -6%,#17261d 0%,var(--mp-ink) 62%);color:var(--mp-paper)}
  .mobile-menu{opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,-10px,0);
    transition:opacity .26s ease,transform .3s var(--mp-ease),visibility 0s linear .3s}
  .mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
  .mm-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;height:calc(var(--mp-head) + env(safe-area-inset-top));
    padding:env(safe-area-inset-top) 8px 0 var(--mp-gut);border-bottom:1px solid rgba(246,242,234,.08)}
  .mm-logo{display:block;line-height:0;-webkit-tap-highlight-color:transparent}
  .mm-logo img{display:block;height:34px;width:auto;border-radius:6px}
  .mobile-menu-close{position:static;top:auto;right:auto;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:rgba(246,242,234,.08);
    color:var(--mp-paper);display:flex;align-items:center;justify-content:center;font-size:0;-webkit-tap-highlight-color:transparent}
  .mobile-menu-close span{position:relative;display:block;width:18px;height:18px;font-size:0}
  .mobile-menu-close span::before,.mobile-menu-close span::after{content:"";position:absolute;left:0;top:50%;width:18px;height:1.6px;border-radius:2px;background:currentColor}
  .mobile-menu-close span::before{transform:rotate(45deg)}.mobile-menu-close span::after{transform:rotate(-45deg)}
  .mm-scroll{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:4px var(--mp-gut) 20px}
  .mobile-nav-link{display:flex;align-items:center;justify-content:flex-start;gap:12px;flex:0 0 auto;width:auto;min-height:52px;padding:0 2px;border-radius:0;text-align:left;
    font-family:'Playfair Display',serif;font-size:clamp(28px,8.2vw,34px);line-height:1;letter-spacing:-.012em;color:var(--mp-paper);border-bottom:1px solid rgba(246,242,234,.1);
    background:none;-webkit-tap-highlight-color:transparent;transition:color .2s}
  .mobile-nav-link:hover{background:none;color:var(--mp-paper)}   /* annulla l'«hover» chiaro di style.css (sui telefoni resta appiccicato dopo il tocco) */
  .mobile-nav-link:active,.mobile-nav-link:focus-visible{background:none;color:var(--mp-warm)}
  @media (hover:hover){.mobile-nav-link:hover{color:var(--mp-warm)}}
  /* accordion «Prodotti» */
  .mm-acc{display:block;flex:0 0 auto}
  .mm-acc-toggle{width:100%;box-sizing:border-box;cursor:pointer}
  .mm-chev{display:block;flex:none;width:22px;height:22px;margin-left:auto;opacity:.65;transition:transform .3s var(--mp-ease),opacity .2s}
  .mm-acc.open .mm-chev{transform:rotate(180deg);opacity:1}
  .mm-acc.open .mm-acc-toggle,.mm-acc.open .mm-acc-toggle:hover{color:var(--mp-warm)}
  .mm-acc-panel{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .3s var(--mp-ease),visibility 0s linear .3s}
  .mm-acc.open .mm-acc-panel{grid-template-rows:1fr;visibility:visible;transition-delay:0s}
  .mm-acc-in{min-height:0;overflow:hidden;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));column-gap:16px;align-content:start}   /* 2 colonne da ≈ 375 px in su, 1 sotto */
  .mobile-nav-sub{display:flex;align-items:center;box-sizing:border-box;min-height:46px;padding:9px 2px;text-align:left;font:400 15.5px/1.25 'Inter',system-ui,sans-serif;color:rgba(246,242,234,.8);
    border-bottom:1px solid rgba(246,242,234,.07);-webkit-tap-highlight-color:transparent;transition:color .2s}
  .mobile-nav-sub:hover{color:rgba(246,242,234,.8)}
  .mobile-nav-sub:active,.mobile-nav-sub:focus-visible{color:var(--mp-warm)}
  @media (hover:hover){.mobile-nav-sub:hover{color:var(--mp-warm)}}
  .mm-all,.mm-all:hover{grid-column:1 / -1;display:flex;justify-content:space-between;font-weight:600;color:var(--mp-warm)}
  .mm-all::after{content:"→";margin-left:10px;font-weight:400}
  .mobile-divider,.mm-div-end{display:none}
  /* «Promozioni» · etichetta discreta */
  .mm-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 9px 5px 8px;border-radius:999px;background:rgba(243,217,168,.1);border:1px solid rgba(243,217,168,.26);
    color:var(--mp-warm);font:700 .56rem/1 'Inter',system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
  .mm-tag i{display:block;width:5px;height:5px;border-radius:50%;background:var(--mp-warm)}
  /* «Staff»: ultima voce, in secondo piano */
  .mm-pre{display:none}
  .mm-ph{display:inline}   /* «Richiedi » davanti a «Preventivo Gratuito» solo sui telefoni (sul live il pulsante dice «Preventivo Gratuito») */
  .mm-staff{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-start;gap:10px;box-sizing:border-box;min-height:48px;margin:6px 0 0;padding:0 2px;border:0;border-radius:0;background:none;
    font:400 1.3rem/1 'Playfair Display',serif;color:rgba(246,242,234,.6);-webkit-tap-highlight-color:transparent}
  .mm-staff svg{width:17px;height:17px;flex:none}
  .mm-staff:hover{background:none;color:rgba(246,242,234,.6)}
  .mm-staff:active,.mm-staff:focus-visible{color:var(--mp-warm)}
  /* CTA fissa in fondo al pannello (safe-area-bottom) */
  .mm-foot{display:block;position:relative;flex:0 0 auto;padding:12px var(--mp-gut) calc(14px + env(safe-area-inset-bottom));background:var(--mp-ink);border-top:1px solid rgba(246,242,234,.08)}
  .mm-foot::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:22px;pointer-events:none;background:linear-gradient(0deg,var(--mp-ink),rgba(11,14,18,0))}
  .mm-cta,.mobile-menu .btn.mm-cta{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:56px;margin:0;padding:0 22px;border:0;border-radius:999px;
    background:var(--mp-paper);color:var(--mp-green-d);font:800 .8rem/1 'Inter',sans-serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;box-shadow:none;transition:transform .2s,background .2s}
  .mobile-menu .btn.mm-cta:hover{background:var(--mp-paper);color:var(--mp-green-d);transform:none;box-shadow:none!important}   /* annulla l'hover verde/«solleva»/ombra di .btn-primary */
  .mobile-menu .btn.mm-cta:active{transform:scale(.985);background:#e9e3d6}
  html.mp-lock,html.mp-lock body{overflow:hidden}

  /* ═════ 3 · BARRA BASSA «Chiama | WhatsApp»: UNA capsula flottante scura; il WhatsApp tondo flottante sui telefoni non c'è ═════ */
  .wa-float{display:none!important}
  .mobile-cta-bar{display:flex;align-items:stretch;left:var(--mp-bar-side);right:var(--mp-bar-side);bottom:calc(var(--mp-bar-gap) + env(safe-area-inset-bottom));height:var(--mp-bar-h);
    padding:0;gap:0;overflow:hidden;border-radius:20px;background:rgba(13,16,19,.94);border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 26px rgba(0,0,0,.24);z-index:8000;
    transition:transform .26s var(--mp-ease),opacity .22s ease,visibility 0s linear 0s}
  .mobile-cta-bar.mp-hide{transform:translate3d(0,calc(100% + 24px),0);opacity:0;pointer-events:none;visibility:hidden;transition:transform .26s var(--mp-ease),opacity .22s ease,visibility 0s linear .26s}
  .mobile-cta-bar a{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:10px;height:auto;padding:0 8px;border-radius:0;
    font:600 .76rem/1 'Inter',system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;white-space:nowrap;color:#fff;
    -webkit-tap-highlight-color:transparent;transition:background .2s}
  .mobile-cta-bar .mcb-sep{display:block;flex:0 0 1px;width:1px;background:rgba(255,255,255,.16)}
  .mobile-cta-bar svg{width:20px;height:20px;flex:none}
  .mobile-cta-bar .mobile-cta-call{background:transparent;color:var(--mp-paper)}
  .mobile-cta-bar .mobile-cta-call:active{background:rgba(255,255,255,.08)}
  .mobile-cta-bar .mobile-cta-wa{background:#1f6a3a;color:#fff}   /* verde Valsusa scurito: testo bianco ≥ 6:1 */
  .mobile-cta-bar .mobile-cta-wa:active{background:#195a31}
  .mobile-cta-bar .mobile-cta-wa svg{fill:currentColor}

  /* ═════ 4 · ANCORE: #preventivo si ferma sotto l'header con aria (header 64 + safe + 16) ═════ */
  #preventivo,.qf,.qf-card,.pf-form-card,#preventivo-home,.qf-anchor{scroll-margin-top:calc(var(--mp-head) + env(safe-area-inset-top) + 16px)!important}
  body.hx-prod #preventivo-home,body.hx-prod #recensioni,body.hx-prod #faq,body.hx-prod #lavori{scroll-margin-top:calc(var(--mp-head) + env(safe-area-inset-top))}
  html{scroll-padding-bottom:calc(var(--mp-bar-total) + 16px)}
  .qf-form input,.qf-form select,.qf-form textarea,.qf-privacy,.qf-btn,.qf-msg{scroll-margin-bottom:calc(var(--mp-bar-total) + 24px)}
}

/* ═════ 5 · HOME — hero essenziale (solo telefoni). Il film non cambia: qui solo la cover sopra di esso ═════ */
@media (max-width:768px){
  .hero-cover::before{height:min(46vh,400px);background:radial-gradient(135% 100% at 4% 100%,rgba(4,6,9,.66) 0%,rgba(4,6,9,.38) 38%,rgba(4,6,9,.12) 64%,rgba(4,6,9,0) 82%)}
  .hero-cover .hc-in{left:var(--mp-gut);right:var(--mp-gut);max-width:none;bottom:calc(var(--mp-bar-total) + 40px + env(safe-area-inset-bottom));
    opacity:max(0,calc(1 - var(--t) * 2.6));transform:translate3d(0,calc(var(--t) * -34px),0)}
  .hero-cover.mp-off .hc-in{visibility:hidden;pointer-events:none}
  .hc-eyebrow{margin-bottom:10px;font-size:.64rem;letter-spacing:.26em}
  .hc-title{font-size:clamp(1.95rem,9.6vw,2.55rem);line-height:1.02}
  .hc-claim{margin-top:10px;font-size:clamp(1.05rem,4.7vw,1.25rem)}
  .hero-cta{flex-direction:column;align-items:stretch;gap:6px;margin:20px 0 0}
  .hc-btn{width:100%}
  .hc-btn-primary{height:56px;font-size:.78rem;letter-spacing:.15em;box-shadow:0 14px 34px rgba(0,0,0,.42)}
  .hc-btn-ghost{height:44px;padding:0 6px;border:0;background:none;box-shadow:none;border-radius:8px;color:rgba(255,255,255,.9);font-size:.7rem;letter-spacing:.17em}
  .hc-btn-ghost::after{content:"→";margin-left:10px;letter-spacing:0;color:var(--mp-warm);font-size:.9rem;transition:transform .25s var(--mp-ease)}
  .hc-btn-ghost:hover,.hc-btn-ghost:active{background:none;transform:none;border:0}
  .hc-btn-ghost:active::after{transform:translateX(4px)}
  /* «Scorri per entrare»: piccolo, centrato sopra la barra, sparisce presto (il motore lo dissolve già nei primi pixel) */
  body.hx-prod #hxStage .hx-hint{bottom:calc(var(--mp-bar-total) + 6px + env(safe-area-inset-bottom));font-size:.52rem;letter-spacing:.32em;color:rgba(255,255,255,.58)}
  /* area sicura dei testi del film: sopra la nuova barra (il motore usa --hx-safe-b se presente) */
  body.hx-prod #hxStage{--hx-safe-b:calc(var(--mp-bar-total) - 2px)}
  /* film: niente riquadro vetro attorno ad Agos (rumore sul film); resta testo + un solo CTA discreto, con velatura locale */
  .hx-agos.hx-agos-c{max-width:min(88vw,330px);padding:0;border:0;border-radius:0;background:radial-gradient(closest-side,rgba(6,9,13,.58),rgba(6,9,13,.34) 62%,transparent);-webkit-backdrop-filter:none;backdrop-filter:none}
  .hx-agos-c .hx-agos-logo{height:40px;margin-bottom:10px}
  .hx-agos-c .hx-agos-h{margin:0 0 14px;font-size:clamp(1.3rem,6vw,1.55rem)}
  .hx-agos-c .hx-btn{width:auto;min-height:44px;padding:0 22px;font-size:.82rem}
  .hx-final-micro{font-size:.78rem;line-height:1.45;max-width:30ch}
  .hx-final-cta{min-height:54px}
}

/* ═════ 6 · PASSAGGIO FILM → CONTENUTO: il film si abbassa di luce, scorre più piano e la prima sezione gli sale sopra con un velo dolce ═════ */
@media (max-width:768px){
  /* velatura del film negli ultimi ≈55 % di schermata (--mp-dim: JS, 0 → .46); sotto i testi (z-index 1 < cue 2) */
  html.mp-dimming body.hx-prod #hxStage::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
    background:linear-gradient(180deg,rgba(8,12,15,calc(var(--mp-dim,0) * .5)) 0%,rgba(8,12,15,var(--mp-dim,0)) 55%,rgba(8,12,15,calc(var(--mp-dim,0) * 1.95)) 100%)}
  /* uscita del film in parallasse: scorre al 60 % della velocità, la sezione successiva gli passa sopra (z-index 2) */
  html.mp-after body.hx-prod #hxStage{translate:0 var(--mp-par,0px)}
  /* testi e CTA finali del film: dopo la fine del film SFUMANO insieme alla velatura (prima restavano e diventavano grigi: sembravano disabilitati) */
  body.hx-prod .hx-cues{opacity:calc(1 - var(--mp-cue,0))}
  html.mp-cues-off body.hx-prod .hx-cues{visibility:hidden}
  /* ponte colore: dal tono dell'ultimo fotogramma (terrazza blu-grafite) all'antracite, con un filo di verde Valsusa; nessuna banda nera netta */
  body.hx-prod #concept::before{top:-36vh;height:36vh;opacity:var(--mp-hand,0);background:
    radial-gradient(120% 70% at 50% 100%,rgba(23,79,44,.2),rgba(23,79,44,0) 70%),
    linear-gradient(180deg,rgba(11,14,18,0) 0%,rgba(14,20,27,.34) 30%,rgba(12,16,21,.74) 62%,var(--pf-ink) 100%)}
  /* prima sezione: ingresso morbido (opacità + 22 px, 600 ms) */
  body.hx-prod #concept .pf-rv{transform:translateY(22px);transition:opacity .6s var(--mp-ease) var(--rv-d,0ms),transform .6s var(--mp-ease) var(--rv-d,0ms)}
  body.hx-prod #concept .pf-rv.in{transform:none}
}

/* ═════ 7 · HOME — ritmo e tipografia (un solo sistema: gutter 20/24, sezioni 72) ═════ */
@media (max-width:768px){
  .pf-sec{padding:72px 0}
  body.hx-prod .pf-h{text-wrap:balance;hyphens:manual}
  .pf-sub,.pf-lead,.pf-concept-note{text-wrap:pretty}
  .pf-sub{font-size:1rem;line-height:1.62;margin-top:16px}
  .pf-head{margin-bottom:34px}
  .pf-btn{min-height:54px}
  .pf-form-card{margin:0;padding:26px 20px 28px;border-radius:16px}
  /* il pulsante di invio nella Home usava --qf-green non definito fuori da .qf → era trasparente (testo bianco su crema) */
  .pf-form-card{--qf-green:var(--pf-green,#21703e);--qf-green-d:#174f2c;--qf-warm:#f3d9a8;--qf-text:#1d1f22;--qf-mute:#5d5f63}
  .pf-form-card .qf-btn{background:var(--mp-green);border-color:var(--mp-green);color:#fff;min-height:56px;box-shadow:0 10px 24px rgba(33,112,62,.22)}
  .pf-footer{padding-bottom:calc(28px + var(--mp-bar-total) + env(safe-area-inset-bottom));margin-bottom:calc(-1 * (var(--mp-bar-total) + env(safe-area-inset-bottom)))}
}

/* ═════ 8 · FORM (tutte le pagine): campi comodi, font ≥16 px (niente zoom iOS), feedback chiari ═════ */
@media (max-width:768px){
  .qf-card{margin:0;padding:26px 20px 28px;border-radius:16px}
  .qf-form input:not([type="checkbox"]),.qf-form select,.qf-form textarea,.qf-field input:not([type="checkbox"]),.qf-field select,.qf-field textarea{font-size:16px;min-height:52px;border-radius:10px}
  .qf-field label{font-size:.72rem}
  .qf-privacy{align-items:center;min-height:44px;font-size:.92rem}
  .qf-privacy input{width:22px;height:22px;margin-top:0}
  .qf-btn{min-height:56px;font-size:.98rem}
  .qf-msg{font-size:.93rem}
  .qf-field input:user-invalid,.qf-field select:user-invalid{border-color:#b42318;box-shadow:0 0 0 3px rgba(180,35,24,.12)}
}

/* ═════ 8b · overflow orizzontale preesistente a 360–375 px (card team di Chi siamo, CTA lunghe negli articoli) ═════ */
@media (max-width:768px){
  .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .team-card{min-width:0;max-width:100%}
  a.btn,button.btn{max-width:100%;white-space:normal;text-align:center;line-height:1.25}
}

/* ═════ 8c · footer delle pagine interne ═════ */
@media (max-width:768px){
  body:not(.hx-prod){padding-bottom:0}
  body:not(.hx-prod) .footer{padding-bottom:calc(32px + var(--mp-bar-total) + env(safe-area-inset-bottom))}
  /* articoli blog: footer con markup diverso (.footer-inner/.footer-brand/.footer-links) e senza CSS → logo a larghezza piena e link impilati senza stile */
  .footer .footer-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 20px;padding-bottom:28px;margin-bottom:26px;border-bottom:1px solid rgba(255,255,255,.1)}
  .footer .footer-brand{grid-column:1 / -1}
  .footer img.footer-logo{display:none}                  /* come le altre pagine: nessun logo nel footer */
  .footer .footer-brand p{margin:0;font-size:.92rem;line-height:1.65;color:rgba(255,255,255,.72)}
  .footer .footer-links h4,.footer .footer-contact h4{margin:0 0 12px;font:800 .72rem/1.2 'Inter',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--green-mid,#7fd29b)}
  .footer .footer-links ul{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}
  .footer .footer-links a,.footer .footer-contact a{display:inline-flex;align-items:center;min-height:38px;font-size:.92rem;color:rgba(255,255,255,.78)}
  .footer .footer-contact{grid-column:1 / -1}
  .footer .footer-contact p{margin:0 0 2px;font-size:.92rem;color:rgba(255,255,255,.78)}
  .footer .footer-bottom>.container{flex:1 1 100%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;font-size:.84rem;color:rgba(255,255,255,.55)}
  .footer .footer-bottom>.container a{display:inline-flex;align-items:center;min-height:36px;color:rgba(255,255,255,.78)}
}

/* ═════ 9 · movimento ridotto ═════ */
@media (max-width:768px) and (prefers-reduced-motion:reduce){
  .mobile-menu,.mobile-cta-bar,.nav-m-cta,.hamburger span,.mm-acc-panel,.mm-chev{transition:none}
  html.mp-after body.hx-prod #hxStage{translate:none}
}

/* ═════ 10 · telefono in ORIZZONTALE (≤768 px di larghezza, bassi): barra e menu più compatti; lo spazio riservato (--mp-bar-total) non cambia ═════ */
@media (max-width:768px) and (orientation:landscape) and (max-height:480px){
  :root{--mp-bar-h:48px}
  .mobile-cta-bar{left:max(var(--mp-bar-side),env(safe-area-inset-left));right:max(var(--mp-bar-side),env(safe-area-inset-right));border-radius:16px}
  .mm-head{height:calc(52px + env(safe-area-inset-top))}
  .mm-scroll{padding-left:max(var(--mp-gut),env(safe-area-inset-left));padding-right:max(var(--mp-gut),env(safe-area-inset-right))}
  .mobile-nav-link{min-height:44px;font-size:24px}
  .mobile-nav-sub{min-height:40px;padding:6px 2px}
  .mm-staff{min-height:42px}
  .mm-foot{padding-top:8px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
  .mm-cta,.mobile-menu .btn.mm-cta{min-height:48px}
}
