/* multisito - tema comune a tutti i siti, sopra Bootstrap 5.3.8 (assets/vendor/bootstrap-5.3.8).
   I colori arrivano dalle variabili --c-* scritte da include/head.php (sites.settings.colors):
   primary = colore principale, accent = dettagli (ottone), ink = testo, bg = sfondo pagina, soft = sfondo tenue.
   Font serviti da noi (assets/fonts, licenza OFL): Fraunces per i titoli (variabile: peso e dimensione ottica, @fontsource-variable/fraunces 5.3.0,
   sottoinsieme latin "standard"; dal 17/10/2026 al posto di Bodoni Moda, troppo sottile), Hanken Grotesk per i testi. */

/* Fraunces ridotto ai pesi usati (400-500, corsivo solo 400) e dimensione ottica fissa 48: 46 KB invece di 146 (audit prestazioni 17/10/2026) */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 500;font-display:swap;src:url(/assets/fonts/fraunces-titoli.woff2) format('woff2-variations'),url(/assets/fonts/fraunces-titoli.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/fraunces-titoli-italic.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/hanken-grotesk.woff2) format('woff2')}

:root{
  --c-muted:color-mix(in srgb,var(--c-ink) 70%,#fff);
  --c-line:color-mix(in srgb,var(--c-ink) 13%,#fff);
  --c-surface:#fff;
  --c-dark:var(--c-ink);
  --c-dark-2:color-mix(in srgb,var(--c-ink) 88%,#fff);
  --c-dark-line:color-mix(in srgb,var(--c-ink) 75%,#fff);
  --c-ok:#1b6b3a;
  --c-wait:#8a5a12;
  --font-display:'Fraunces',Georgia,serif;
  --bs-body-font-family:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --bs-body-font-size:1.0625rem;
  --bs-body-line-height:1.6;
  --bs-body-color:var(--c-ink);
  --bs-body-bg:var(--c-bg);
  --bs-emphasis-color:var(--c-ink);
  --bs-secondary-color:var(--c-muted);
  --bs-border-color:var(--c-line);
  --bs-link-color:var(--c-primary);
  --bs-link-color-rgb:var(--c-primary-rgb);
  --bs-link-hover-color:color-mix(in srgb,var(--c-primary) 75%,#000);
  --bs-link-hover-color-rgb:var(--c-primary-rgb);
  --bs-primary:var(--c-primary);
  --bs-primary-rgb:var(--c-primary-rgb);
  --bs-dark-rgb:var(--c-ink-rgb);
  --bs-border-radius:.75rem;
  --bs-border-radius-lg:1.25rem;
  --bs-border-radius-xl:1.75rem;
  --bs-focus-ring-color:color-mix(in srgb,var(--c-primary) 30%,transparent);
}

body{-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{color:var(--c-ink)}
.font-display,.display-title{font-family:var(--font-display);font-weight:400;letter-spacing:-.015em}
.display-title{font-size:clamp(2.6rem,5.6vw,5rem);line-height:1}
.section-title{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,3.6vw,3.25rem);line-height:1.05;letter-spacing:-.015em;margin:0}
.eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--c-primary)}
.text-muted-ms{color:var(--c-muted)!important}
.text-ok{color:var(--c-ok)!important}
.text-wait{color:var(--c-wait)!important}
.bg-surface{background:var(--c-surface)}
.bg-soft{background:var(--c-soft)}
.border-ms{border:1px solid var(--c-line)!important}
.rounded-ms{border-radius:1.25rem!important}
.lead{font-size:1.2rem;color:color-mix(in srgb,var(--c-ink) 82%,#fff)}
.section{padding-block:clamp(3rem,7vw,5.5rem)}
.container{--bs-gutter-x:2rem;max-width:1272px}

/* pulsanti: a pillola, primary dal colore del sito */
.btn{--bs-btn-padding-x:1.5rem;--bs-btn-padding-y:.75rem;--bs-btn-font-weight:600;--bs-btn-border-radius:999px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}
.btn-sm{--bs-btn-padding-x:1rem;--bs-btn-padding-y:.4rem;min-height:40px}
.btn-primary{--bs-btn-bg:var(--c-primary);--bs-btn-border-color:var(--c-primary);--bs-btn-hover-bg:color-mix(in srgb,var(--c-primary) 82%,#000);--bs-btn-hover-border-color:color-mix(in srgb,var(--c-primary) 82%,#000);--bs-btn-active-bg:color-mix(in srgb,var(--c-primary) 70%,#000);--bs-btn-active-border-color:color-mix(in srgb,var(--c-primary) 70%,#000);--bs-btn-disabled-bg:var(--c-primary);--bs-btn-disabled-border-color:var(--c-primary)}
.btn-dark{--bs-btn-bg:var(--c-ink);--bs-btn-border-color:var(--c-ink);--bs-btn-hover-bg:color-mix(in srgb,var(--c-ink) 80%,#fff);--bs-btn-hover-border-color:color-mix(in srgb,var(--c-ink) 80%,#fff)}
.btn-outline-dark{--bs-btn-color:var(--c-ink);--bs-btn-border-color:var(--c-ink);--bs-btn-hover-bg:var(--c-ink);--bs-btn-hover-border-color:var(--c-ink)}
.btn-light{--bs-btn-bg:#fff;--bs-btn-border-color:#fff;--bs-btn-color:var(--c-ink)}
.btn-wa{--bs-btn-bg:#1a8d48;--bs-btn-border-color:#1a8d48;--bs-btn-color:#fff;--bs-btn-hover-bg:#14733a;--bs-btn-hover-border-color:#14733a;--bs-btn-hover-color:#fff}
.form-control,.form-select{--bs-border-radius:.75rem;min-height:48px;background-color:#fff;border-color:color-mix(in srgb,var(--c-ink) 22%,#fff)}
.form-control:focus,.form-select:focus{border-color:var(--c-primary);box-shadow:0 0 0 .2rem var(--bs-focus-ring-color)}
.form-check-input:checked{background-color:var(--c-ink);border-color:var(--c-ink)}
.form-floating>label{color:var(--c-muted)}
.badge-ms{display:inline-block;background:var(--c-ink);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .65rem;border-radius:999px}
.chip{display:inline-flex;align-items:center;min-height:44px;padding:0 1.1rem;border-radius:999px;border:1px solid var(--c-line);background:#fff;color:var(--c-ink);text-decoration:none;font-weight:600;font-size:.95rem}
.chip:hover{border-color:var(--c-ink);color:var(--c-ink)}
.chip[aria-current]{background:var(--c-ink);border-color:var(--c-ink);color:#fff}

/* testata */
.topbar{background:var(--c-ink);color:color-mix(in srgb,#fff 88%,var(--c-ink));font-size:.875rem}
.topbar a{color:inherit}
.site-header{background:#fff;border-bottom:1px solid var(--c-line)}
.site-header .navbar{--bs-navbar-padding-y:.85rem}
.brand{display:flex;align-items:center;gap:.75rem;color:var(--c-ink);text-decoration:none}
.brand:hover{color:var(--c-ink)}
.brand-mark{height:44px;width:auto}
.brand-logo{height:42px;width:auto}
.brand-name{font-family:var(--font-display);font-size:1.75rem;line-height:1.05;letter-spacing:-.01em;display:block}
.brand-payoff{display:block;font-size:.78rem;color:var(--c-muted);letter-spacing:.02em}
.site-header .nav-link{color:var(--c-ink);font-weight:500;font-size:.95rem;white-space:nowrap}
.brand-name,.brand-payoff{white-space:nowrap}
@media (max-width:1199.98px){.site-header .navbar-nav{padding-block:.75rem}}
/* menu su una seconda riga, sotto marchio e carrello */
.site-header .navbar>.container{flex-wrap:wrap}
@media (min-width:1200px){.site-header .navbar-collapse{border-top:1px solid var(--c-line);margin-top:.85rem;padding-top:.35rem}}
.site-header .nav-link:hover,.site-header .nav-link:focus{color:var(--c-primary)}
.site-header .nav-link[aria-current]{color:var(--c-primary);text-decoration:underline;text-underline-offset:.4em}
/* menu a tendina (settings.menu): voce attiva come nav-link[aria-current], titoli di gruppo, tendina con i colori del sito */
.site-header .menu-toggle{background:none;border:0;padding-inline:var(--bs-navbar-nav-link-padding-x,.5rem)}
.site-header .menu-toggle.attiva{color:var(--c-primary)}
.site-header .menu-tendina{border:1px solid var(--c-line);border-radius:1rem;padding:.5rem;min-width:15rem;box-shadow:0 12px 32px rgba(var(--c-ink-rgb,21,32,30),.12)}
.site-header .menu-tendina .dropdown-item{border-radius:.6rem;padding:.5rem .75rem;font-size:.95rem;color:var(--c-ink)}
.site-header .menu-tendina .dropdown-item:hover,.site-header .menu-tendina .dropdown-item:focus{background:var(--c-soft);color:var(--c-primary)}
.site-header .menu-tendina .dropdown-item[aria-current]{color:var(--c-primary);font-weight:600;background:none}
.menu-gruppo{display:block;padding:.65rem .75rem .25rem;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-muted)}
@media (max-width:1199.98px){.site-header .menu-toggle{padding-inline:0}.site-header .menu-tendina{border:0;box-shadow:none;padding:0 0 .5rem .75rem}}
/* ricerca live nella testata (include/header.php, assets/js/base.js): in linea da 992px, sotto la testata sul telefono (lente) */
.cerca{position:relative;display:none;order:5;flex:1 0 100%}
.cerca.aperta{display:block}
.cerca-campo{display:flex;align-items:center;gap:.5rem;height:44px;padding:0 1rem;border:1px solid var(--c-line);border-radius:999px;background:#fff;color:var(--c-muted)}
.cerca-campo:focus-within{border-color:var(--c-primary);box-shadow:0 0 0 3px rgba(var(--c-primary-rgb,15,91,92),.15)}
.cerca-campo input{flex:1;min-width:0;border:0;outline:0;background:none;color:var(--c-ink);font-size:1rem}
.cerca-campo input::-webkit-search-cancel-button{cursor:pointer}
.cerca-lista{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:1060;background:#fff;border:1px solid var(--c-line);border-radius:1rem;box-shadow:0 16px 40px rgba(var(--c-ink-rgb,21,32,30),.14);padding:.5rem;max-height:min(70vh,560px);overflow-y:auto}
.cerca-gruppo{display:block;padding:.5rem .75rem .25rem;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-muted)}
.cerca-voce{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:.75rem;color:var(--c-ink);text-decoration:none}
.cerca-voce[aria-selected="true"],.cerca-voce:hover{background:var(--c-soft);color:var(--c-ink)}
.cerca-foto{flex:none;width:48px;height:48px;border-radius:.5rem;background:var(--c-soft);object-fit:contain}
.cerca-nome{display:block;font-size:.95rem;line-height:1.3}
.cerca-info{display:block;font-size:.8rem;color:var(--c-muted)}
.cerca-prezzo{margin-left:auto;font-size:.85rem;font-weight:600;white-space:nowrap}
.cerca-tutti{justify-content:center;font-weight:600;color:var(--c-primary);border-top:1px solid var(--c-line);border-radius:0 0 .75rem .75rem;margin-top:.25rem}
.cerca-vuoto{padding:.75rem;font-size:.95rem;color:var(--c-muted);margin:0}
.cerca-vuoto mark,.cerca-nome mark{background:none;color:inherit;font-weight:700;padding:0}
@media (min-width:992px){.cerca{display:block;order:0;flex:1 1 auto;max-width:440px;margin-left:1.5rem}.site-header .cerca-apri{display:none}}
.btn-icon{width:44px;height:44px;padding:0;border-radius:999px;border:1px solid var(--c-line);display:inline-flex;align-items:center;justify-content:center;color:var(--c-ink);background:#fff}
.cart-count{min-width:1.4rem;height:1.4rem;padding:0 .35rem;border-radius:999px;background:#fff;color:var(--c-ink);font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.breadcrumb{--bs-breadcrumb-font-size:.875rem;--bs-breadcrumb-divider-color:var(--c-muted);--bs-breadcrumb-item-active-color:var(--c-muted);margin:0}
.breadcrumb a{color:var(--c-muted)}

/* home */
.hero-visual{position:relative;aspect-ratio:5/4;border-radius:1.75rem;background:color-mix(in srgb,var(--c-primary) 9%,#fff);overflow:hidden;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:.5rem;padding:2rem 1.5rem 1rem}
.hero-visual img{width:100%;height:auto;mix-blend-mode:multiply;object-fit:contain;aspect-ratio:1/2}
.hero-visual img:nth-child(2){transform:translateY(-6%)}
.promise{display:flex;gap:.9rem;align-items:flex-start}
.promise-icon{flex:0 0 44px;height:44px;border-radius:12px;background:var(--c-soft);color:var(--c-primary);display:flex;align-items:center;justify-content:center}
.step{background:#fff;border:1px solid var(--c-line);border-radius:1.25rem;padding:1.75rem;height:100%}
/* recensioni in home (layout/home/base.php): stesso riquadro dei passi, citazione in Fraunces corsivo */
.recensione{background:#fff;border:1px solid var(--c-line);border-radius:1.25rem;padding:1.75rem;height:100%;display:flex;flex-direction:column;gap:1.25rem}
.recensione blockquote p{font-family:var(--font-display);font-style:italic;font-size:1.15rem;line-height:1.45;color:var(--c-ink)}
.recensione-autore{margin-top:auto;font-weight:700;font-size:.95rem;color:var(--c-primary)}
.step-n{font-family:var(--font-display);font-size:3.25rem;line-height:1;color:var(--c-primary)}
.band-dark{background:var(--c-dark);color:color-mix(in srgb,#fff 82%,var(--c-ink))}
.band-dark h2,.band-dark h3,.band-dark .section-title{color:#fff}
.band-dark .eyebrow,.band-dark a{color:color-mix(in srgb,var(--c-accent) 70%,#fff)}
.panel-dark{background:var(--c-dark-2);border:1px solid var(--c-dark-line);border-radius:1.5rem;padding:1.75rem}
.band-dark .specifiche dt,.panel-dark dt{color:color-mix(in srgb,#fff 66%,var(--c-ink));font-weight:400}
.cta-soft{background:var(--c-soft);border-radius:1.75rem;padding:clamp(1.75rem,4vw,3rem)}

/* card prodotto e categoria */
.card-ms{display:flex;flex-direction:column;gap:.35rem;text-decoration:none;color:var(--c-ink);height:100%}
.card-ms:hover{color:var(--c-ink)}
.card-ms:hover .card-ms-img{box-shadow:0 0 0 1px var(--c-ink) inset}
.card-ms-img{position:relative;aspect-ratio:4/5;border-radius:1.25rem;background:#fff;border:1px solid var(--c-line);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:.6rem;transition:box-shadow .15s}
.card-ms-img img{width:82%;height:82%;object-fit:contain}
.card-ms-img .badge-ms{position:absolute;top:.85rem;left:.85rem}
.card-ms-title{font-family:var(--font-display);font-size:1.45rem;line-height:1.12;font-weight:500}
.card-cat .card-ms-img{aspect-ratio:1;background:color-mix(in srgb,var(--c-primary) 7%,#fff)}
.card-cat .card-ms-img img{mix-blend-mode:multiply}
.card-blog .card-ms-img{aspect-ratio:16/10;background:var(--c-soft)}
.card-blog .card-ms-img img{width:100%;height:100%;object-fit:cover}
.price-from{font-size:1.1rem;font-weight:700}
.sortbar{border-block:1px solid var(--c-line);padding-block:.85rem}

/* dati in elenco (scheda, home, ordine) */
.specifiche{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1.5rem;margin:0}
.specifiche dt{color:var(--c-muted);font-weight:400}
.specifiche dd{margin:0}
.hp{position:absolute!important;left:-9999px!important}

/* carrello e checkout */
.cart-line{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;padding-block:1.5rem;border-bottom:1px solid var(--c-line)}
.cart-thumb{flex:0 0 96px;height:116px;border-radius:1rem;background:#fff;border:1px solid var(--c-line);display:flex;align-items:center;justify-content:center;overflow:hidden}
.cart-thumb img{width:84%;height:84%;object-fit:contain}
.summary{background:#fff;border:1px solid var(--c-line);border-radius:1.5rem;padding:1.6rem}
.summary dl{display:grid;grid-template-columns:1fr auto;gap:.5rem 1rem;margin:0}
.summary dd{margin:0;text-align:right}
.total-big{font-family:var(--font-display);font-size:2.1rem;line-height:1}
.checkout-wrap{background:#fff}
.checkout-aside{background:var(--c-bg)}
@media (min-width:992px){.checkout-aside{min-height:100%;border-left:1px solid var(--c-line)}}
.checkout-thumb{position:relative;flex:0 0 64px;height:64px;border-radius:.75rem;background:#fff;border:1px solid var(--c-line);display:flex;align-items:center;justify-content:center}
.checkout-thumb img{width:80%;height:80%;object-fit:contain}
.checkout-thumb .qty{position:absolute;top:-.55rem;right:-.55rem;min-width:1.4rem;height:1.4rem;padding:0 .35rem;border-radius:999px;background:color-mix(in srgb,var(--c-ink) 80%,#fff);color:#fff;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center}
/* errori del checkout: campi in rosso con il messaggio sotto, promemoria sopra il pulsante */
.checkout-errore-bottone{color:#b3261e;font-weight:600;text-align:center}
#form-checkout .form-control.is-invalid{border-color:#b3261e;border-width:2px;background-color:#fffafa}
#form-checkout .form-control.is-invalid:focus{box-shadow:0 0 0 .2rem rgba(179,38,30,.18)}
#form-checkout .invalid-feedback{color:#b3261e;font-weight:600;font-size:.85rem}
#form-checkout .form-check-input.is-invalid{border-color:#b3261e;border-width:2px}
#form-checkout .form-check-input.is-invalid ~ .form-check-label{color:#b3261e}
#form-checkout .form-check .invalid-feedback{display:block;margin-left:0}
#form-checkout .form-check .invalid-feedback:empty{display:none}
#form-checkout .form-control{scroll-margin-top:7rem}
@media (prefers-reduced-motion:no-preference){#form-checkout .form-control.is-invalid{animation:ms-scuoti .3s ease-out}@keyframes ms-scuoti{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}}
.pay-option{border:1px solid color-mix(in srgb,var(--c-ink) 22%,#fff);border-radius:.75rem;overflow:hidden}
.pay-option label{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;cursor:pointer;margin:0}
.pay-option label+label,.pay-option .pay-detail+label{border-top:1px solid var(--c-line)}
.pay-option label:has(input:checked){background:var(--c-soft)}
.pay-detail{background:var(--c-soft);padding:0 1rem 1rem 5.15rem;font-size:.95rem;color:color-mix(in srgb,var(--c-ink) 80%,#fff)}
/* icone dei metodi di pagamento e marchi dei circuiti */
.pay-ico{flex:0 0 26px;color:var(--c-primary);margin-top:-.1rem}
.pay-option label .form-check-input{margin-top:.2rem!important}
.pay-brands{display:flex;flex-wrap:wrap;gap:.3rem}
.pay-brand{display:inline-flex;align-items:center;justify-content:center;height:24px;min-width:38px;padding:0 .35rem;border:1px solid var(--c-line);border-radius:4px;background:#fff;font-size:.7rem;font-weight:800;line-height:1;letter-spacing:.02em;white-space:nowrap}
.pay-visa{color:#1A1F71;font-style:italic;font-size:.78rem}
.pay-mc{padding:0 .25rem}
.pay-amex{background:#2E77BC;border-color:#2E77BC;color:#fff;font-size:.62rem}
.pay-paypal{color:#009CDE;font-style:italic;font-size:.74rem}
.pay-paypal b{color:#003087;font-weight:800}
.pay-klarna{background:#FFB3C7;border-color:#FFB3C7;color:#17120F;font-size:.72rem}
.pay-iban{color:var(--c-ink);font-size:.65rem;letter-spacing:.06em}
@media (max-width:575.98px){.pay-detail{padding-left:1rem}}

.avviso{background:#fff4d6;border-radius:.75rem;padding:.75rem 1rem}
.box-bonifico{border:2px solid var(--c-primary);border-radius:1.25rem;padding:1.25rem;background:#fff}

/* blog e articolo */
.articolo-body{font-size:1.125rem;line-height:1.75;max-width:720px}
.articolo-body h2{font-family:var(--font-display);font-weight:400;font-size:2.2rem;line-height:1.1;margin:2.5rem 0 .9rem;scroll-margin-top:1.5rem}
.articolo-body h3{font-size:1.25rem;font-weight:700;margin:1.75rem 0 .6rem}
.articolo-body img{max-width:100%;height:auto;border-radius:1rem}
.articolo-body figure figcaption{font-size:.9rem;color:var(--c-muted);margin-top:.4rem}
.articolo-body table{width:100%;font-size:.95rem;line-height:1.45}
.articolo-body .table-responsive{border:1px solid var(--c-line);border-radius:1rem;margin-block:1rem}
.articolo-body .table{margin:0}
.articolo-body .table th,.articolo-body .table td{padding:.75rem .9rem}
.articolo-body .table thead th{background:var(--c-bg)}
.in-breve{background:var(--c-soft);border-radius:1.25rem;padding:1.5rem 1.75rem;margin-bottom:1.5rem}
.articolo-body .in-breve h2{font-family:inherit;font-size:1.2rem;font-weight:700;margin:0 0 .5rem}
.in-breve ul{margin:0;padding-left:1.2rem}
.toc{border-top:2px solid var(--c-ink);padding-top:.9rem;font-size:.97rem;line-height:1.5}
.toc ol{padding-left:1.2rem;margin:0;display:grid;gap:.45rem}
.toc a{color:var(--c-ink)}
.author-avatar{flex:0 0 48px;height:48px;border-radius:999px;background:var(--c-line);display:flex;align-items:center;justify-content:center;font-weight:700}
.accordion{--bs-accordion-bg:transparent;--bs-accordion-border-color:var(--c-line);--bs-accordion-btn-focus-box-shadow:0 0 0 .2rem var(--bs-focus-ring-color);--bs-accordion-active-bg:transparent;--bs-accordion-active-color:var(--c-ink)}
.accordion-button{font-weight:600}

/* piede */
.site-footer{background:#fff;border-top:1px solid var(--c-line);font-size:.95rem}
.site-footer a{color:var(--c-ink);text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.site-footer h2{font-size:1rem;font-weight:700;margin-bottom:.6rem}
.site-footer .footer-social{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .9rem}
.site-footer .footer-social a{display:inline-block;padding:.2rem 0;min-height:24px;text-decoration:underline;text-underline-offset:3px}

/* banner cookie (solo se il sito ha GA4): in basso, sopra il contenuto, largo come un riquadro su desktop */
.cookie-banner{position:fixed;z-index:1080;left:16px;right:16px;bottom:16px;max-width:440px;margin-left:auto;padding:16px 18px;
  background:#fff;color:var(--c-ink);border:1px solid rgba(var(--c-ink-rgb),.12);border-radius:10px}
.cookie-banner[hidden]{display:none}

/* anteprima del carrello al passaggio sul pulsante (solo con mouse; su touch il pulsante porta al carrello) */
.mini-cart{position:relative}
.mini-cart-panel{display:none;position:absolute;right:0;top:100%;z-index:1050;padding-top:10px;width:min(380px,calc(100vw - 32px))}
@media (hover:hover){.mini-cart:hover .mini-cart-panel,.mini-cart:focus-within .mini-cart-panel{display:block}}
.mini-cart-box{background:#fff;color:var(--c-ink);border:1px solid var(--c-line);border-radius:14px;padding:18px;box-shadow:0 18px 40px rgba(var(--c-ink-rgb),.14)}
.mini-cart-title{font-weight:700;margin:0 0 6px}
.mini-cart-line{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--c-line)}
.mini-cart-thumb{flex:0 0 48px;height:48px;border-radius:10px;border:1px solid var(--c-line);background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}
.mini-cart-thumb img{width:86%;height:86%;object-fit:contain}
.mini-cart-name{display:block;color:var(--c-ink);text-decoration:none;font-size:.9rem;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mini-cart-name:hover{color:var(--c-primary)}
.min-w-0{min-width:0}
/* primo schermo sul telefono (audit 17/10/2026): barra in alto su una riga sola (solo WhatsApp), testata su una riga (marchio senza payoff,
   carrello con la sola icona), titoli piu' compatti. Da 576 px in su tutto come prima */
@media (max-width:575.98px){
  .topbar-testo{display:none}
  .topbar .container{justify-content:center;padding-block:.3rem!important;font-size:.8rem}
  .site-header .navbar{--bs-navbar-padding-y:.45rem}
  .site-header .navbar>.container{gap:.4rem!important;flex-wrap:wrap}
  .brand{gap:.45rem;min-width:0}
  .brand-mark{height:32px}
  .brand-name{font-size:1.15rem}
  .brand-payoff{display:none}
  .btn-icon{width:40px;height:40px}
  .site-header .ms-auto{gap:.35rem!important}
  .mini-cart .btn{height:40px;padding:0 .75rem;display:inline-flex;align-items:center;gap:.3rem}
  .cart-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .display-title{font-size:clamp(1.9rem,8.5vw,2.4rem)!important;line-height:1.05}
  .lead{font-size:1.05rem}
}
/* card: consegna stimata con il logo (Delivery::entroCard) */
.card-consegna{display:block;color:var(--c-ink);font-weight:500}
/* telefono: le righe .g-5 (gutter 3rem) uscivano di 8 px dallo schermo e la pagina scorreva di lato (home, scheda): gutter orizzontale ridotto */
@media (max-width:575.98px){.row.g-5{--bs-gutter-x:1.5rem}}
