/* ==== La Stella Alpina – testata (sa-testata.php) ===========================
   Modello: testata dei siti Fisiotop, che riprende quella del sito Clever (docs/MENU-TESTATA.md nel repo OmniX).
   Adattata alla grafica del sito: ANGOLI VIVI ovunque (i pulsanti del sito non hanno smussi), Antic Didone per
   titoli e voci, Montserrat per il resto, grigio ardesia e oro del logo.
   Stati: body.fh-compact (scesi oltre 100px: resta il tasto «Menu»), body.fh-expanded (testata richiamata),
   .fh-site.fh-aperta (pannello aperto: fondo pieno). .fh-mbtn, .fh-mega-bg e .fh-sheet stanno FUORI da .fh-site. */
:root{
 --sa-ink:#54595F;--sa-ink-dk:#3E4247;--sa-muted:#6B7178;--sa-gold:#B6952E;--sa-gold-lt:#DFC04B;--sa-olive:#55602F;--sa-verde:#55602F;--sa-verde-dk:#454E25;
 --sa-bg:#FFFFFF;--sa-soft:#F6F6F6;--sa-line:#E2E2E2;
 --sa-display:"Antic Didone",Georgia,serif;--sa-body:Montserrat,Arial,sans-serif;
 --fh-hdr:112px;--fh-strip:34px;--fh-pad:40px;--fh-t:.42s;--fh-th:.18s;--fh-ease:cubic-bezier(.2,.7,.2,1)}
.fh-on .elementor-location-header{display:none!important}
.fh-site{position:fixed;top:0;left:0;right:0;z-index:50;background:rgb(255 255 255 / .96);backdrop-filter:blur(10px);border-bottom:1px solid var(--sa-line);transition:background var(--fh-t) var(--fh-ease),box-shadow var(--fh-t) var(--fh-ease)}
.admin-bar .fh-site{top:32px}
.fh-site.fh-aperta{background:var(--sa-verde-dk);border-bottom-color:transparent}
.fh-site *,.fh-sheet *,.fh-mega-bg{border-radius:0!important}
/* fascia di servizio */
.fh-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;height:var(--fh-strip);padding:0 var(--fh-pad);background:var(--sa-verde);color:#fff;font-family:var(--sa-body);font-size:12px;letter-spacing:.04em}
.sa-avviso{margin:0;color:#fff;font-weight:500}
.fh-svc{display:flex;align-items:center;gap:22px}
.fh-svc a{color:#E9EAEB!important;text-decoration:none!important;transition:color var(--fh-th) var(--fh-ease)}
.fh-svc a:hover{color:var(--sa-gold-lt)!important}
/* riga principale */
.fh-in{box-sizing:border-box;display:flex;align-items:center;gap:28px;padding:0 var(--fh-pad);height:calc(var(--fh-hdr) - var(--fh-strip));position:relative;z-index:1}
.fh-brand{display:flex;align-items:center;flex-shrink:0;transition:opacity var(--fh-t) var(--fh-ease),transform var(--fh-t) var(--fh-ease)}
.fh-lg{height:30px!important;width:auto!important;max-width:none!important;display:block}
.fh-right{margin-left:auto;display:flex;align-items:center;gap:22px;transition:opacity var(--fh-t) var(--fh-ease),transform var(--fh-t) var(--fh-ease)}
.fh-main{display:flex;align-items:center;gap:2px}
.fh-navbtn{color:var(--sa-ink)!important;font-family:var(--sa-display);font-weight:400;font-size:21px;padding:8px 13px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;text-decoration:none!important;position:relative;transition:color var(--fh-th) var(--fh-ease)}
.fh-navbtn:hover,.fh-navbtn[aria-expanded="true"]{color:var(--sa-gold)!important}
.fh-chev{font-size:10px;font-family:var(--sa-body);transition:transform var(--fh-t) var(--fh-ease)}
.fh-navbtn[aria-expanded="true"] .fh-chev{transform:rotate(180deg)}
.fh-navbtn[aria-current="page"]::after{content:"";position:absolute;left:13px;right:13px;bottom:2px;height:1px;background:var(--sa-gold)}
.fh-site.fh-aperta .fh-navbtn{color:#fff!important}
.fh-site.fh-aperta .fh-navbtn:hover,.fh-site.fh-aperta .fh-navbtn[aria-expanded="true"]{color:var(--sa-gold-lt)!important}
.sa-azioni{display:flex;align-items:center;gap:6px}
.sa-ico{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0!important;background:transparent!important;border:0!important;color:var(--sa-ink)!important;cursor:pointer;box-shadow:none!important;min-height:0}
.sa-ico svg,.sa-cart svg,.sa-mcart svg{width:22px;height:22px}
.sa-ico:hover,.sa-ico[aria-expanded="true"]{color:var(--sa-gold)!important}
.fh-site.fh-aperta .sa-ico{color:#fff!important}
.fh-cta{display:inline-flex;align-items:center;gap:9px;background:var(--sa-verde);color:#fff!important;font-family:var(--sa-body);font-weight:600;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;padding:12px 18px;white-space:nowrap;text-decoration:none!important;transition:background var(--fh-th) var(--fh-ease)}
.fh-cta:hover{background:var(--sa-gold)}
.fh-site.fh-aperta .fh-cta{background:var(--sa-gold)}
.sa-cart-n{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;background:var(--sa-gold);color:#fff;font-size:11px;font-weight:700;letter-spacing:0}
.fh-cta:hover .sa-cart-n,.fh-site.fh-aperta .sa-cart-n{background:var(--sa-verde-dk)}
/* il carrello della testata: solo bordo, più leggero del pieno (il pieno resta al tasto del menu di telefono) */
.fh-cta.sa-cart{background:transparent;color:var(--sa-verde)!important;border:1px solid var(--sa-verde);padding:11px 17px;transition:color var(--fh-th) var(--fh-ease),border-color var(--fh-th) var(--fh-ease)}
.fh-cta.sa-cart:hover{background:transparent;color:var(--sa-gold)!important;border-color:var(--sa-gold)}
.fh-site.fh-aperta .fh-cta.sa-cart{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.55)}
.fh-site.fh-aperta .fh-cta.sa-cart:hover{color:var(--sa-gold-lt)!important;border-color:var(--sa-gold-lt)}
.fh-cta.sa-cart:hover .sa-cart-n,.fh-site.fh-aperta .sa-cart .sa-cart-n{background:var(--sa-gold)}

/* Il fondo bianco del pannello e' UNO SOLO e vive fuori dai pannelli: cambiando voce non se ne va, cambia altezza */
.fh-mega-bg{position:fixed;top:var(--fh-hdr);left:var(--fh-pad);right:var(--fh-pad);z-index:48;height:0;background:#fff;box-shadow:0 18px 44px rgb(30 34 38 / .18);opacity:0;visibility:hidden;transform:translateY(-12px);pointer-events:none;transition:opacity var(--fh-t) var(--fh-ease),transform var(--fh-t) var(--fh-ease),height 420ms var(--fh-ease),visibility var(--fh-t)}
.admin-bar .fh-mega-bg,.admin-bar .fh-mega{margin-top:32px}
.fh-mega-bg.open{opacity:1;visibility:visible;transform:none}
/* Chi esce parte subito, chi entra aspetta due decimi: si sovrappongono per un decimo (invertirli riporta il lampeggio) */
.fh-mega{position:fixed;top:var(--fh-hdr);left:0;right:0;z-index:49;padding:0 var(--fh-pad) 32px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 300ms var(--fh-ease),visibility 300ms}
.fh-mega.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity 300ms 200ms var(--fh-ease),visibility 0s}
.fh-mega-in{padding:32px 36px;max-height:calc(100vh - var(--fh-hdr) - 44px);overflow-y:auto;display:grid;grid-template-columns:280px 1fr;gap:48px}
.fh-mega-t{font-family:var(--sa-display);font-weight:400;font-size:34px;line-height:1.05;color:var(--sa-ink);margin:0}
.fh-mega-x{font-family:var(--sa-body);font-size:14px;line-height:1.65;color:var(--sa-muted);margin:12px 0 0;max-width:34ch}
.fh-btn-dark{display:inline-flex;align-items:center;gap:8px;background:var(--sa-verde);color:#fff!important;padding:13px 22px;font-family:var(--sa-body);font-weight:600;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;margin-top:20px;text-decoration:none!important;border:0;cursor:pointer;transition:background var(--fh-th) var(--fh-ease)}
.fh-btn-dark:hover{background:var(--sa-gold)}
/* schede prodotto con la miniatura: le bottiglie sono verticali, la foto sta in un riquadro alto e chiaro */
.sa-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:14px;align-content:start}
.sa-prod{display:flex;flex-direction:column;gap:6px;text-decoration:none!important;color:var(--sa-ink);transition:transform var(--fh-th) var(--fh-ease)}
.sa-prod-img{display:block;background:var(--sa-soft);aspect-ratio:3/4;overflow:hidden;border:1px solid transparent;transition:border-color var(--fh-th) var(--fh-ease)}
.sa-prod-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .5s var(--fh-ease)}
.sa-prod:hover .sa-prod-img{border-color:var(--sa-gold)}
.sa-prod:hover .sa-prod-img img{transform:scale(1.04)}
.sa-prod b{font-family:var(--sa-body);font-size:12.5px;font-weight:600;line-height:1.35;color:var(--sa-ink)}
.sa-prod .fh-d{font-family:var(--sa-body);font-size:12px;color:var(--sa-olive);font-weight:600}
/* «sa-cat» la usa già il tema del sito (titoli a 26px): qui sa-categoria */
.sa-griglia:has(.sa-categoria){grid-template-columns:repeat(3,minmax(0,230px))}
.sa-categoria .sa-prod-img{aspect-ratio:4/3}
.sa-categoria b{font-family:var(--sa-display);font-size:19px;font-weight:400}
.sa-testo{display:grid;grid-template-columns:repeat(2,1fr);gap:0;align-content:start;border-top:1px solid var(--sa-line)}
.sa-voce{display:block;padding:16px 18px;border-bottom:1px solid var(--sa-line);text-decoration:none!important;transition:background var(--fh-th) var(--fh-ease)}
.sa-voce:nth-child(odd){border-right:1px solid var(--sa-line)}
.sa-voce:hover{background:var(--sa-soft)}
.sa-voce b{display:block;font-family:var(--sa-display);font-size:22px;font-weight:400;color:var(--sa-ink);margin-bottom:3px}
.sa-voce .fh-d{font-family:var(--sa-body);font-size:13px;color:var(--sa-muted)}
/* ricerca */
.sa-cerca{display:flex;gap:0;align-items:stretch;max-width:760px}
.sa-cerca input[type=search]{flex:1;border:1px solid var(--sa-verde)!important;border-right:0!important;padding:14px 16px!important;font-family:var(--sa-body);font-size:15px;color:var(--sa-ink);background:#fff;min-width:0;outline:0;box-shadow:none}
.sa-cerca input[type=search]:focus{border-color:var(--sa-gold)!important}
.sa-cerca .fh-btn-dark{margin:0}
.sa-mega-cerca .fh-mega-in{grid-template-columns:280px 1fr;align-items:center}

.fh-spazio{height:var(--fh-hdr)}
/* il tasto «Menu» che resta scendendo: fuori dal flusso, alla stessa distanza dal bordo sopra e a destra */
.fh-pill{position:absolute;right:var(--fh-pad);top:18px;display:inline-flex;align-items:center;gap:9px;border:0;cursor:pointer;font-family:var(--sa-body)!important;font-weight:600!important;font-size:12px!important;letter-spacing:1.5px;text-transform:uppercase;padding:12px 18px!important;color:#fff!important;background:var(--sa-verde)!important;box-shadow:0 6px 18px -10px rgb(0 0 0 / .5)!important;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity var(--fh-t) var(--fh-ease),transform var(--fh-t) var(--fh-ease),background var(--fh-th) var(--fh-ease)}
.fh-pill:focus-visible,.fh-mbtn:focus-visible,.sa-ico:focus-visible{outline:2px solid var(--sa-gold);outline-offset:3px}
.fh-bars{display:inline-flex;flex-direction:column;align-items:flex-end;gap:3px}
.fh-bars i{display:block;width:15px;height:1.5px;background:currentColor;transition:width var(--fh-th) var(--fh-ease)}
.fh-bars i:last-child{width:9px}
body.fh-compact .fh-strip{display:none}
body.fh-compact .fh-right{opacity:0;transform:translateY(-8px);pointer-events:none;position:absolute;right:var(--fh-pad)}
body.fh-compact .fh-pill{opacity:1;transform:none;pointer-events:auto}
body.fh-compact .fh-pill:hover{background:var(--sa-gold)!important}
body.fh-compact .fh-pill:hover .fh-bars i:last-child{width:15px}
body.fh-compact .fh-in{height:auto;min-height:0;padding:12px var(--fh-pad)}
body.fh-compact .fh-site{background:transparent!important;border-bottom-color:transparent;backdrop-filter:none;box-shadow:none;pointer-events:none}
body.fh-compact .fh-site .fh-pill{pointer-events:auto}
body.fh-compact .fh-brand{opacity:0;transform:translateY(-6px);pointer-events:none}
body.fh-compact.fh-expanded .fh-site{pointer-events:auto;background:rgb(255 255 255 / .97)!important;border-bottom-color:var(--sa-line);backdrop-filter:blur(14px)}
body.fh-compact.fh-expanded .fh-site.fh-aperta{background:var(--sa-verde-dk)!important}
body.fh-compact.fh-expanded .fh-brand{opacity:1;transform:none;pointer-events:auto}
body.fh-compact.fh-expanded .fh-in{height:calc(var(--fh-hdr) - var(--fh-strip));padding:0 var(--fh-pad)}
body.fh-compact.fh-expanded .fh-right{opacity:1;transform:none;pointer-events:auto;position:static}
body.fh-compact.fh-expanded .fh-pill{opacity:0;transform:translateY(-8px);pointer-events:none}
body.fh-compact .fh-mega,body.fh-compact .fh-mega-bg{top:calc(var(--fh-hdr) - var(--fh-strip))}

/* Telefono e tablet: niente testata da scrivania, un tasto che apre il pannello a schermo pieno */
.fh-mbtn,.sa-mcart{display:none}
.fh-mbtn{position:fixed;top:calc(var(--fh-strip) + (var(--fh-hdr) - var(--fh-strip) - 44px) / 2);right:var(--fh-pad);z-index:53;height:44px;background:transparent!important;border:0;cursor:pointer;font-family:var(--sa-body)!important;font-weight:600!important;font-size:12px!important;letter-spacing:1.5px;text-transform:uppercase;line-height:1;align-items:center;gap:10px;padding:0 2px!important;color:var(--sa-ink)!important;box-shadow:none!important;min-height:0;transition:background var(--fh-t) var(--fh-ease)}
.admin-bar .fh-mbtn,.admin-bar .sa-mcart{margin-top:46px}
.fh-mbtn .fh-bars{gap:6px}.fh-mbtn .fh-bars i{height:2px;width:26px}.fh-mbtn .fh-bars i:last-child{width:18px}
.fh-mbtn[aria-expanded="true"] .fh-bars i:last-child{width:26px}
body.fh-compact .fh-mbtn,body.fh-sheet-open .fh-mbtn{top:12px;background:var(--sa-verde)!important;color:#fff!important;width:44px;padding:0!important;justify-content:center}
body.fh-compact .fh-mb-t,body.fh-sheet-open .fh-mb-t{display:none}
body.fh-compact .fh-mbtn .fh-bars i:last-child{width:26px}
.sa-mcart{position:fixed;top:calc(var(--fh-strip) + (var(--fh-hdr) - var(--fh-strip) - 44px) / 2);right:calc(var(--fh-pad) + 96px);z-index:51;width:44px;height:44px;align-items:center;justify-content:center;color:var(--sa-ink)!important;text-decoration:none!important}
.sa-mcart .sa-cart-n{position:absolute;top:2px;right:0;min-width:17px;height:17px;font-size:10px}
body.fh-compact .sa-mcart{top:12px;right:calc(var(--fh-pad) + 52px);background:var(--sa-verde);color:#fff!important}
body.fh-sheet-open .sa-mcart{display:none!important}
.fh-sheet{position:fixed;inset:0;z-index:52;display:flex;flex-direction:column;padding:16px 16px 22px;background:rgb(62 66 71 / .82);backdrop-filter:blur(16px);opacity:0;visibility:hidden;transition:opacity var(--fh-t) var(--fh-ease),visibility var(--fh-t)}
.fh-sheet.open{opacity:1;visibility:visible}
.fh-top{display:flex;align-items:center;gap:12px;padding:6px 8px 18px}
.fh-top .fh-lg{height:22px;filter:brightness(0) invert(1)}
button.fh-close{margin-left:auto;background:none!important;border:0;color:#fff!important;font-family:var(--sa-body)!important;font-weight:600!important;font-size:12px!important;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0!important;box-shadow:none!important}
.fh-close i{display:block;width:16px;height:1.5px;background:#fff}
.fh-sheet-card{background:#fff;padding:20px 20px 24px;overflow-y:auto;transform:translateY(16px);opacity:.6;transition:transform var(--fh-t) var(--fh-ease),opacity var(--fh-t) var(--fh-ease);box-shadow:0 24px 60px rgb(0 0 0 / .32)}
.fh-sheet.open .fh-sheet-card{transform:none;opacity:1}
.fh-sheet-card .sa-cerca{margin-bottom:10px}
.fh-sheet-card .sa-cerca .fh-btn-dark{padding:12px 14px}
.fh-sheet-card ul{list-style:none;margin:0;padding:0}
.fh-lvl1,button.fh-lvl1{width:100%;background:none!important;border:0;border-bottom:1px solid var(--sa-line)!important;text-align:left;cursor:pointer;display:flex;align-items:center;gap:13px;font-family:var(--sa-display)!important;font-size:24px!important;font-weight:400!important;text-transform:none!important;letter-spacing:normal;color:var(--sa-ink)!important;min-height:56px;padding:0!important;text-decoration:none!important;box-shadow:none!important}
.fh-lvl1 .fh-chev{margin-left:auto;color:var(--sa-gold);font-size:22px;transition:transform var(--fh-t) var(--fh-ease)}
.fh-lvl1[aria-expanded="true"]{color:var(--sa-gold)!important}
.fh-lvl1[aria-expanded="true"] .fh-chev{transform:rotate(90deg)}
.fh-sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--fh-t) var(--fh-ease)}
.fh-lvl1[aria-expanded="true"]+.fh-sub{grid-template-rows:1fr}
.fh-sub>div{overflow:hidden}
.fh-sub a{display:flex;gap:12px;align-items:center;min-height:48px;font-family:var(--sa-body);font-size:14px;color:var(--sa-ink)!important;text-decoration:none!important;border-bottom:1px solid var(--sa-soft)}
.fh-sub a img{width:28px;height:42px;object-fit:contain;background:var(--sa-soft);flex:none}
.fh-sub a.sa-tutti{font-weight:600;color:var(--sa-olive)!important;text-transform:uppercase;letter-spacing:1px;font-size:12px}
.fh-sheet-svc{margin-top:18px;padding-top:6px;display:flex;flex-direction:column}
.fh-sheet-svc a{font-family:var(--sa-body);font-size:14px;color:var(--sa-muted)!important;min-height:44px;display:flex;align-items:center;text-decoration:none!important}
.fh-cta--full{display:flex;justify-content:center;width:100%;margin:18px 0 0;padding:15px 16px}

@media (max-width:1366px){:root{--fh-pad:28px}.fh-navbtn{font-size:19px;padding:8px 10px}}
@media (max-width:1200px){:root{--fh-pad:24px}.fh-navbtn{font-size:18px;padding:8px 8px}.fh-right{gap:12px}.sa-cart-t{display:none}.fh-mega-in{grid-template-columns:1fr;gap:22px}.fh-lg{height:26px}}
@media (max-width:1024px){
 .fh-right,.fh-mega,.fh-mega-bg,.fh-pill{display:none!important}
 .fh-mbtn,.sa-mcart{display:flex}
 .fh-svc{display:none}
 .fh-strip{justify-content:center}
}
@media (min-width:1025px){.fh-sheet{display:none}}
@media (max-width:767px){:root{--fh-pad:16px;--fh-hdr:96px;--fh-strip:30px}.fh-lg{height:22px}.sa-avviso{font-size:11px;text-align:center}.sa-mcart{right:calc(var(--fh-pad) + 88px)}}
@media (prefers-reduced-motion:reduce){.fh-right,.fh-pill,.fh-mega,.fh-mega-bg,.fh-sheet,.fh-sheet-card,.sa-prod-img img{transition:none!important}}
/* a pannello aperto chiude «Chiudi»: il tasto Menu, fisso, ci finirebbe sopra */
body.fh-sheet-open .fh-mbtn{display:none!important}
