/* Vetrina — stile classico da negozio online: testata bianca con ricerca, menu dei giochi, banner,
   griglia di prodotti. Un solo carattere (Public Sans); il colore del marchio viene dal gestionale. */
/* Carattere servito dal nostro server (niente richieste a Google: nessun dato dell'utente esce dal sito) */
@font-face{font-family:'Public Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/PublicSans-400.ttf) format('truetype')}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/PublicSans-600.ttf) format('truetype')}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/PublicSans-700.ttf) format('truetype')}
:root{
  --marchio:#0789c2;
  --ink:#1b1f24;--muted:#5b636b;
  --bg:#fff;--soft:#f3f5f7;--soft2:#e8ecf0;
  --on-marchio:#fff;
  --tinta:color-mix(in srgb,var(--marchio) 9%,#fff);
  --ok:#17653a;--ok-bg:#dff1e6;
  --ease:cubic-bezier(.16,1,.3,1);
  --f:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --small:.9375rem;--body:1.0625rem;--lead:1.25rem;--head:clamp(1.75rem,1.3rem + 1.4vw,2.5rem);
  --m:clamp(16px,3vw,48px);--max:100%;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:16px;color-scheme:light}
body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--body)/1.5 var(--f);-webkit-font-smoothing:antialiased}
::selection{background:var(--marchio);color:var(--on-marchio)}
:focus-visible{outline:3px solid var(--marchio);outline-offset:3px}
a{color:inherit}
button,input,select{font:inherit;color:inherit}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1,h2,h3{margin:0;line-height:1.15;text-wrap:balance}
.ico{width:1.15em;height:1.15em;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.2em}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--marchio);color:var(--on-marchio);text-decoration:none;font-weight:600;padding:15px 26px;border:0;border-radius:8px;cursor:pointer;transition:transform .2s var(--ease),background .2s}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}

/* Accesso */
.acc-pop{position:fixed;z-index:95;right:var(--m);top:70px;width:min(340px,calc(100vw - 32px));background:var(--bg);padding:22px;border-radius:12px;animation:apre .25s var(--ease) both;outline:2px solid var(--soft2)}
.acc-pop[hidden]{display:none}
#formLogin,#formDim,#formReset{display:grid;gap:14px}
#formLogin[hidden],#formDim[hidden],#formReset[hidden]{display:none}
#formLogin label,#formDim label,#formReset label{display:grid;gap:6px;font-weight:600;font-size:var(--small)}
#formLogin input,#formDim input,#formReset input{padding:12px 14px;border:0;border-radius:8px;background:var(--soft);font-size:var(--body)}
#formLogin input:focus,#formDim input:focus,#formReset input:focus{outline:3px solid var(--marchio);outline-offset:0}
#formLogin button,#formDim button,#formReset button{border:0;border-radius:8px;background:var(--marchio);color:var(--on-marchio);padding:10px 18px;font-size:var(--small);font-weight:600;cursor:pointer}
.reg-link{font-size:var(--small);text-align:center}
.reg-link[hidden]{display:none}
#formLogin .reg-link button,#formDim .reg-link button,#formReg .reg-link button{background:none;color:var(--marchio);padding:0;font-weight:700;text-decoration:underline;cursor:pointer;border:0}
#regPan{width:min(640px,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}
.pw-wrap{position:relative;display:block}
.pw-wrap input{width:100%;padding-right:44px!important}
#formReg .pw-occhio{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--marchio);font-weight:700;font-size:.75rem;padding:6px 8px;cursor:pointer;border-radius:6px}
#formReg .pw-occhio .ico{display:block;width:1.3em;height:1.3em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#formReg .pw-occhio:hover{background:var(--soft2)}
.pw-req{list-style:none;display:flex;flex-wrap:nowrap;white-space:nowrap;gap:4px 12px;margin:0;padding:0;font-size:.8125rem;color:var(--muted)}
@media(max-width:560px){.pw-req{font-size:.6875rem;gap:4px 7px}.pw-req .ex{display:none}}
.pw-req li::before{content:"○ ";}
.pw-req li.ok{color:#166534;font-weight:600}
.pw-req li.ok::before{content:"✓ "}
#regPan .cart-testa{padding:12px 18px}
#regPan .pre-corpo{padding:14px 18px 18px}
#formReg{display:grid;gap:10px}
#formReg .reg-grid{gap:8px}
#formReg input{padding:8px 10px}
#formReg label{font-size:.8125rem}
#formReg .reg-checks label{padding:6px 11px}
.reg-ok{display:grid;gap:18px;justify-items:start;font-weight:600;font-size:var(--lead)}
.reg-ok[hidden]{display:none}
#formReg[hidden]{display:none}
.reg-giochi[hidden]{display:none}
.reg-giochi{border:0;padding:0;margin:0;min-width:0;display:grid;gap:8px}
.reg-giochi legend{font-weight:600;font-size:var(--small);padding:0;margin-bottom:8px}
.reg-checks{display:flex;flex-wrap:wrap;gap:8px}
#formReg .reg-checks label{display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:var(--soft);cursor:pointer;font-weight:600}
#formReg .reg-checks label:has(input:checked){background:var(--marchio);color:var(--on-marchio)}
#formReg .reg-checks input{width:auto;accent-color:var(--marchio);padding:0}
.reg-nota{font-size:var(--small);color:var(--muted)}
.reg-grid{align-items:start;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.reg-grid>label{grid-column:span 3}
.reg-grid>.w4{grid-column:span 4}
.reg-grid>.w1{grid-column:span 1}
.reg-grid>.w2{grid-column:span 2}
.reg-grid>.w3{grid-column:span 3}
.reg-grid .pieno{grid-column:1/-1}
/* Telefono: tutto in due colonne, ogni campo sulla sua riga tranne i brevi (nome, cognome, civico, CAP, provincia) */
@media(max-width:560px){
  .reg-grid{grid-template-columns:1fr 1fr}
  .reg-grid>label{grid-column:1/-1}
  .reg-grid>.m1{grid-column:span 1}
}
#formReg label{display:grid;gap:5px;font-weight:600;font-size:var(--small);min-width:0}
#formReg input{padding:10px 12px;border:0;border-radius:8px;background:var(--soft);font-size:var(--body);min-width:0}
#formReg input:focus{outline:3px solid var(--marchio);outline-offset:0}
#formReg>button[type=submit]{border:0;border-radius:8px;background:var(--marchio);color:var(--on-marchio);padding:14px 18px;font-weight:600;cursor:pointer}
.login-msg.ok{color:#166534}
.login-msg{font-weight:600;font-size:var(--small);color:#9b1c1c}
.login-msg[hidden]{display:none}
.login-ok{display:grid;gap:12px;font-weight:600}
.login-ok[hidden]{display:none}
.login-ok button{justify-self:start;border:0;border-radius:8px;background:var(--soft);padding:10px 16px;cursor:pointer;font-weight:600}
@keyframes apre{from{opacity:0;transform:translateY(-8px)}}

/* ---------- Testata ---------- */
.avviso{background:var(--marchio);color:var(--on-marchio);text-align:center;padding:9px var(--m);font-size:var(--small);font-weight:600}
.testa{position:sticky;top:0;z-index:20;background:var(--bg)}
.testa-in{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;padding:16px var(--m)}
.marchio{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;font-size:var(--lead);color:var(--marchio)}
.logo{display:block;max-height:96px;max-width:340px;object-fit:contain}
@media(max-width:700px){.logo{max-height:76px;max-width:220px}}
.marchio.con-logo #credito{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cerca-top{display:block}
.cerca-top input{width:100%;max-width:560px;display:block;margin:0 auto;padding:13px 18px;border:0;border-radius:8px;background:var(--soft);font-size:var(--body)}
.cerca-top input:focus{outline:3px solid var(--marchio);outline-offset:0}
.cerca-top input::placeholder{color:var(--muted)}
.acc-btn{display:inline-flex;align-items:center;gap:8px;background:none;border:0;border-radius:8px;padding:10px 14px;font-weight:600;cursor:pointer;transition:background .2s}
.acc-btn:hover{background:var(--soft)}
.azioni{display:flex;align-items:center;gap:6px}
.cart-btn{position:relative;display:inline-flex;align-items:center;gap:8px;background:none;border:0;border-radius:8px;padding:10px 12px;font-weight:600;cursor:pointer;transition:background .2s}
.cart-btn:hover{background:var(--soft)}
.cart-btn .ico{width:1.4em;height:1.4em}
.cart-btn b{min-width:1.5em;padding:1px 6px;border-radius:999px;background:var(--soft2);font-size:var(--small);font-variant-numeric:tabular-nums;text-align:center;transition:background .2s,color .2s}
.cart-btn.pieno b{background:var(--marchio);color:var(--on-marchio)}
.menu{background:var(--soft)}
.menu-in{max-width:var(--max);margin:0 auto;padding:0 var(--m);display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.menu-in::-webkit-scrollbar{display:none}
.menu button{flex:none;border:0;background:none;padding:13px 16px;font-weight:600;font-size:var(--small);cursor:pointer;border-radius:0;transition:background .2s,color .2s}
.menu button:hover{background:var(--soft2)}
.menu button[aria-pressed=true]{background:var(--marchio);color:var(--on-marchio)}
.menu-tg{display:none!important}
@media (max-width:700px){
  .menu-tg{display:flex!important;align-items:center;justify-content:center;gap:12px;width:100%;padding:13px var(--m)!important}
  .menu-tg .ico{width:1.4em;height:1.4em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
  .menu-in{display:none;flex-direction:column;gap:0;overflow:visible;padding:0}
  .menu.aperto .menu-in{display:flex}
  .testa:has(.menu.aperto){position:static}
  .menu-in button{text-align:left;padding:13px var(--m)}
}

/* ---------- Banner ---------- */
.hero{background:var(--tinta);padding:clamp(20px,3.5vw,40px) var(--m)}
.hero[hidden]{display:none}
.hero-in{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:center}
.hero h1{font-size:clamp(2.25rem,1rem + 4.5vw,4.25rem);font-weight:700;letter-spacing:-.02em;margin-bottom:18px;color:var(--marchio)}
.frase{margin:0 0 28px;max-width:34ch;font-size:var(--lead);line-height:1.45}
.prossima[hidden]{display:none}
/* Con degli sblocchi in programma il banner ha una colonna in più, accanto ai preordini */
.hero-in.con-sb{grid-template-columns:minmax(0,1fr) minmax(0,500px) minmax(0,500px);gap:28px}
@media(max-width:1000px){.hero-in.con-sb{grid-template-columns:1fr}}
/* Schede del banner tutte della stessa altezza (anche fra le due sezioni) */
.prossima .pros-in{min-height:158px}
.prossima .pros-lista{align-content:start}
.pros-in{display:grid;grid-template-columns:140px minmax(0,1fr);gap:20px;align-items:center;background:var(--bg);border-radius:12px;padding:18px;text-decoration:none;transition:transform .3s var(--ease)}
.pros-in:hover{transform:translateY(-4px)}
.pros-im{aspect-ratio:1;background:var(--soft);border-radius:8px;display:grid;place-items:center;overflow:hidden}
.pros-im img{width:100%;height:100%;object-fit:contain;padding:8px}
.pros-im .scat{width:86%;height:auto}
.pros-tx{display:grid;gap:4px}
.pros-et{font-size:var(--small);font-weight:600;color:var(--marchio)}
.pros-tx b{font-size:var(--lead);line-height:1.25}
.pros-pr{font-size:var(--lead);font-weight:700;margin-top:6px}

/* ---------- Blocchi di prodotti ---------- */
main{max-width:var(--max);margin:0 auto;padding:0 var(--m)}
.blocco{padding:clamp(40px,6vw,72px) 0 0}
.blocco[hidden]{display:none}
#novita{padding-top:clamp(20px,3vw,32px)}
.blocco-testa{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.blocco-testa h2{font-size:var(--head);font-weight:700;letter-spacing:-.01em}
.blocco-testa p{margin:0;color:var(--muted)}
.barra{display:flex;align-items:center;justify-content:space-between;gap:14px 24px;flex-wrap:wrap;margin-bottom:24px}
.stati{display:flex;gap:8px;flex-wrap:wrap}
.stati button{border:0;border-radius:999px;background:var(--soft);padding:10px 16px;font-weight:600;font-size:var(--small);cursor:pointer;transition:background .2s,color .2s}
.stati button b{font-weight:600;opacity:.65;font-variant-numeric:tabular-nums}
.stati button:hover:not(:disabled):not([aria-pressed=true]){background:var(--soft2)}
.stati button[aria-pressed=true]{background:var(--marchio);color:var(--on-marchio)}
.stati button:disabled{opacity:.45;cursor:default}
.ord{display:flex;align-items:center;gap:10px;font-size:var(--small);color:var(--muted)}
.ord select{border:0;border-radius:8px;background:var(--soft);padding:10px 14px;color:var(--ink);font-weight:600}
.prodotti{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:22px}
.prod{display:flex;flex-direction:column;background:var(--bg);border-radius:12px;overflow:hidden;outline:2px solid var(--soft2);outline-offset:-2px;transition:transform .3s var(--ease),outline-color .2s}
.prod:hover{transform:translateY(-4px);outline-color:var(--marchio)}
.prod-l{display:flex;flex-direction:column;flex:1;color:inherit;text-decoration:none}
.prod-add{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 16px 16px;padding:12px 14px;border:0;border-radius:8px;background:var(--marchio);color:var(--on-marchio);font-weight:600;font-size:var(--small);cursor:pointer;transition:transform .2s var(--ease),background .2s}
.prod-add:hover{transform:translateY(-2px)}
.prod-add:active{transform:translateY(0)}
.prod .im{aspect-ratio:1;background:var(--soft);display:grid;place-items:center;overflow:hidden}
.prod .im img{width:100%;height:100%;object-fit:contain;padding:14px}
.prod .im .scat{width:76%;height:auto}
.prod .tx{display:grid;gap:5px;align-content:start;padding:16px 16px 14px;flex:1}
.pg{font-size:var(--small);color:var(--muted)}
.pn{font-size:12px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.prod .pg{font-size:11px;letter-spacing:.04em;text-transform:uppercase}
.prod .pn+.pg{text-transform:none;letter-spacing:0}
.pp{font-size:1.4rem;font-weight:700;margin-top:6px;font-variant-numeric:tabular-nums}
.prod .stato{justify-self:start;margin-top:4px}
.prod.no .im{opacity:.55}
.prod.no.usc .im{opacity:1}
.prod.no.usc .im img,.prod.no.usc .im .scat{opacity:.55}
.stato{display:inline-block;font-weight:600;font-size:var(--small);padding:4px 12px;border-radius:999px;background:var(--soft)}
.stato.si{background:var(--ok-bg);color:var(--ok)}
.stato.pre{background:var(--tinta);color:var(--marchio)}
.stato.no{background:var(--soft);color:var(--muted)}
.prod.usc .stato.no{background:var(--tinta);color:var(--marchio)}
.barra[hidden]{display:none}
.giochi-home{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.gioco-card{display:grid;gap:6px;align-content:end;min-height:150px;padding:22px;border-radius:12px;background:var(--tinta);text-decoration:none;transition:transform .3s var(--ease),background .2s,color .2s}
.gioco-card:hover{transform:translateY(-4px);background:var(--marchio);color:var(--on-marchio)}
.gioco-card{position:relative;overflow:hidden}
.gioco-card.con-img{background:#111;color:#fff;min-height:190px}
.gioco-card.con-img::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(0,0,0,.75),rgba(0,0,0,.05) 70%)}
.gioco-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.gioco-card:hover .gioco-img{transform:scale(1.05)}
.gioco-nome,.gioco-n{position:relative;z-index:2}
.gioco-nome{font-size:var(--lead);font-weight:700;line-height:1.2}
.gioco-n{font-size:var(--small);opacity:.8}
.vuoto{grid-column:1/-1;margin:0;padding:48px 4px;color:var(--muted)}
.sk{height:300px;border-radius:12px;background:var(--soft);animation:sk 1.2s ease-in-out infinite alternate}
@keyframes sk{to{opacity:.5}}
.scat .f{fill:#fff}.scat .s{fill:var(--soft2)}.scat .t{fill:var(--soft)}.scat .k{fill:var(--marchio)}
.scat .c{font-weight:700;fill:var(--marchio)}.scat .l{font-weight:700;fill:#fff}
.scat text{font-family:var(--f)}

/* ---------- Scheda prodotto ---------- */
.scheda-wrap{padding-top:28px}
.scheda-wrap[hidden]{display:none}
.briciole{margin:0 0 24px;color:var(--muted);font-size:var(--small)}
.briciole a{color:var(--marchio);font-weight:600}
.scheda{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:start}
.scheda-foto{aspect-ratio:1;background:var(--soft);border-radius:12px;display:grid;place-items:center;overflow:hidden;position:sticky;top:130px}
.scheda-foto img{width:100%;height:100%;object-fit:contain;padding:24px}
.scheda-foto .scat{width:80%;height:auto}
.scheda-info{display:flex;flex-direction:column;gap:18px;min-width:0}
.scheda-titolo{font-size:var(--head);font-weight:700;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;margin:0}
.prezzo{font-size:clamp(2rem,1.5rem + 2vw,2.75rem);font-weight:700;font-variant-numeric:tabular-nums}
.qta b{font-variant-numeric:tabular-nums}
.dati{margin:0;display:grid;gap:2px;background:var(--soft);border-radius:12px;padding:10px 18px}
.dati div{display:flex;justify-content:space-between;gap:16px;padding:9px 0}
.dati dt{color:var(--muted)}
.dati dd{margin:0;font-weight:600;text-align:right}
.desc{white-space:pre-line;margin:0;max-width:60ch}
.nota{margin:0;color:var(--muted)}
.nota-acc{margin:0;background:var(--tinta);border-radius:12px;padding:16px 18px;display:flex;gap:12px}
.nota-acc .ico{margin-top:4px}
.nota-acc a{color:var(--marchio);font-weight:700}
.btn-acq{align-self:flex-start;text-decoration:none}

/* ---------- Carrello ---------- */
.acq{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}
.qsel select{height:100%;min-height:52px;border:0;border-radius:8px;background:var(--soft);padding:0 14px;font-weight:600;font-size:var(--body)}
.cart-vel{position:fixed;inset:0;z-index:70;background:rgba(27,31,36,.5);animation:vel .25s var(--ease) both}
.cart-vel[hidden]{display:none}
@keyframes vel{from{opacity:0}}
.cart-pan{position:fixed;z-index:80;top:0;right:0;bottom:0;width:min(440px,100vw);background:var(--bg);display:flex;flex-direction:column;animation:entra .3s var(--ease) both}
.cart-pan[hidden]{display:none}
@keyframes entra{from{transform:translateX(24px);opacity:0}}
.cart-testa{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:var(--soft)}
.cart-testa h2{font-size:var(--lead)}
.cart-x{border:0;background:none;font-weight:600;cursor:pointer;padding:8px 10px;border-radius:8px}
.cart-x:hover{background:var(--soft2)}
.cart-righe{flex:1;overflow:auto;padding:8px 22px}
.cart-vuoto{color:var(--muted);margin:28px 0}
.cart-riga{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:14px;align-items:start;padding:16px 0}
.cart-riga+.cart-riga{border-top:2px solid var(--soft2)}
.cart-im{aspect-ratio:1;background:var(--soft);border-radius:8px;display:grid;place-items:center;overflow:hidden}
.cart-im img{width:100%;height:100%;object-fit:contain;padding:4px}
.cart-im .scat{width:90%;height:auto}
.cart-tx{display:grid;gap:4px;min-width:0}
.cart-nome{font-weight:600;line-height:1.3;text-decoration:none;overflow-wrap:anywhere}
.cart-nome:hover{text-decoration:underline}
.cart-q{display:flex;align-items:center;gap:8px;margin-top:6px}
.cart-q button{border:0;border-radius:8px;background:var(--soft);min-width:36px;height:36px;font-weight:700;cursor:pointer}
.cart-q button:hover:not(:disabled){background:var(--soft2)}
.cart-q button:disabled{opacity:.4;cursor:default}
.cart-q b{min-width:1.5em;text-align:center;font-variant-numeric:tabular-nums}
.cart-q .cart-togli{background:none;font-weight:600;font-size:var(--small);text-decoration:underline;text-underline-offset:3px;padding:0 6px;min-width:0;margin-left:6px}
.cart-sub{font-weight:700;font-variant-numeric:tabular-nums}
.cart-piede{padding:18px 22px 24px;background:var(--soft);display:grid;gap:12px}
.cart-piede:empty{display:none}
.cart-piede .pg{margin:0}
.cart-tot{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--lead)}
.cart-tot b{font-size:1.6rem;font-variant-numeric:tabular-nums}
.cart-err{margin:0;padding:12px 14px;border-radius:8px;background:#fde8e8;color:#8a1c1c;font-weight:600;font-size:var(--small)}
.cart-piede .btn{width:100%}
.cart-piede .btn:disabled{opacity:.6;cursor:default;transform:none}
.cart-ok{display:grid;gap:14px;padding:24px 0}
.cart-ok h3{font-size:var(--head);font-weight:700;letter-spacing:-.01em}
.cart-ok p{margin:0}
.cart-ok .btn{width:100%}
.cart-link{justify-self:start;color:var(--marchio);font-weight:600;font-size:var(--small);text-underline-offset:4px}
.toast{position:fixed;z-index:90;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:12px 20px;border-radius:8px;font-weight:600;opacity:0;pointer-events:none;transition:opacity .25s var(--ease),transform .25s var(--ease)}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* ---------- Come si ritira e fondo ---------- */
.come{background:var(--soft);margin-top:clamp(56px,8vw,104px);padding:clamp(40px,6vw,72px) var(--m)}
.come[hidden]{display:none}
.come-in{max-width:var(--max);margin:0 auto}
.come-in h2{font-size:var(--head);font-weight:700;margin-bottom:28px}
.passi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.passi div{background:var(--bg);border-radius:12px;padding:24px}
.passi h3{font-size:var(--lead);margin-bottom:8px}
.passi p{margin:0;color:var(--muted)}
.fine{background:var(--marchio);color:var(--on-marchio);padding:clamp(40px,6vw,72px) var(--m) 28px}
.fine-in{max-width:var(--max);margin:0 auto;display:grid;gap:36px}
.fine-nome h2{font-size:var(--head);font-weight:700}
.fine-nome p{margin:8px 0 0;opacity:.9}
.fine-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.fine-col div{display:grid;gap:6px;align-content:start}
.fine-col h3{font-size:var(--body);margin-bottom:4px}
.fine-col a,.fine-col span{opacity:.92;text-decoration:none}
.fine-col a:hover{text-decoration:underline;opacity:1}

@media(max-width:860px){
  .testa-in{grid-template-columns:minmax(0,1fr) auto;gap:12px 16px}
  .cerca-top{grid-column:1/-1;order:3}
  .hero-in{grid-template-columns:1fr}
  .pros-in{grid-template-columns:100px minmax(0,1fr)}
  .scheda{grid-template-columns:1fr}.scheda-foto{position:static}
  .passi,.fine-col{grid-template-columns:1fr}
  .prodotti{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .prod .tx{padding:12px 12px 12px}
  .prod-foot{padding:0 12px 12px}
}
@media(max-width:480px){.acc-btn span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* ---------- Dettagli del preordine ---------- */
.pre-box{display:flex;flex-direction:column;gap:14px}
.pre-tit{margin:0;font-size:var(--lead);font-weight:700}
.pre-std{color:var(--muted);font-weight:400;margin-left:6px}
.pre-sub{margin:6px 0 0;font-size:var(--small);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.pre-tab{display:grid;gap:8px}
.pre-liv{display:flex;flex-wrap:wrap;gap:4px 18px;background:var(--soft);border-radius:12px;padding:12px 16px;font-size:var(--small)}
.pre-liv>b:first-child{flex:1 0 100%}
.pre-liv.ok{background:var(--ok-bg);color:var(--ok)}
.pre-pt{font-weight:400;color:var(--muted)}
.pre-no{font-weight:600;color:var(--muted)}
.pre-avviso{background:var(--tinta);border-radius:12px;padding:14px 18px;font-size:var(--small)}
.pre-avviso p{margin:0 0 10px}.pre-avviso p:last-child{margin:0}

.pre-pan{position:fixed;z-index:80;top:50%;left:50%;transform:translate(-50%,-50%);width:min(640px,calc(100vw - 24px));max-height:calc(100vh - 24px);background:var(--bg);border-radius:14px;display:flex;flex-direction:column;overflow:hidden;animation:vel .25s var(--ease) both}
.pre-pan[hidden]{display:none}
.pre-corpo{overflow:auto;padding:20px 22px 26px}
.btn-acq:disabled{opacity:.55;cursor:not-allowed;transform:none;background:var(--muted)}

/* ---------- Il mio account (area clienti dentro il sito) ---------- */
.account-wrap{padding-top:28px}
.account-wrap[hidden]{display:none}
.account-frame{display:block;width:100%;height:calc(100vh - 170px);min-height:640px;border:0;border-radius:12px;background:var(--soft)}
.login-ok a{font-weight:700;color:var(--marchio);margin-right:12px}

.login-ok{gap:6px}
.login-ok #loginNome{margin-bottom:6px}
.acc-menu{display:grid;margin:0 -8px}
.acc-menu a{margin:0;padding:10px 12px;border-radius:8px;text-decoration:none;font-weight:600;color:var(--ink)}
.acc-menu a:hover{background:var(--tinta);color:var(--marchio)}
.login-ok #loginEsci{margin-top:8px;justify-self:stretch;text-align:center}

/* Pie di pagina sempre in basso, anche con poco contenuto (sezioni vuote) */
body{min-height:100vh;display:flex;flex-direction:column}
main{flex:1 0 auto;width:100%}
.fine{margin-top:auto}


/* Filtri fissi sulla sinistra (da PC); su telefono stanno sopra l'elenco */
.cat-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.filtri{position:sticky;top:130px;background:var(--soft);border-radius:14px;padding:20px;display:grid;gap:20px;max-height:calc(100vh - 150px);overflow:auto}
.filtri[hidden]{display:none}
.filtri-tit{font-size:var(--lead);font-weight:700}
.filtri-gr{display:grid;gap:10px}
.filtri-gr[hidden]{display:none}
.filtri-et{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.filtri .stati{flex-direction:column;gap:6px}
.filtri .stati button{width:100%;text-align:left;border-radius:10px;background:#fff;display:flex;justify-content:space-between;gap:10px}
.filtri .stati button:hover:not(:disabled):not([aria-pressed=true]){background:var(--soft2)}
.filtri select{width:100%;border:0;border-radius:10px;background:#fff;padding:11px 12px;font-weight:600}
.cat-main{min-width:0}
@media(max-width:900px){
  .cat-layout{grid-template-columns:1fr}
  .filtri{position:static;max-height:none;overflow:visible}
  .filtri .stati{flex-direction:row;flex-wrap:wrap}
  .filtri .stati button{width:auto}
  .filtri-tit{text-align:center;cursor:pointer;user-select:none}
  .filtri-tit::after{content:"▾";margin-left:10px;display:inline-block;transition:transform .2s}
  .filtri.aperto .filtri-tit::after{transform:rotate(180deg)}
  .filtri:not(.aperto){gap:0}
  .filtri:not(.aperto)>:not(.filtri-tit){display:none!important}
}
.cat-layout:has(.filtri[hidden]){grid-template-columns:1fr}
.filtri .stati button[aria-pressed=true]{background:var(--marchio);color:var(--on-marchio);box-shadow:0 0 0 2px var(--marchio)}
.filtri .stati button[aria-pressed=true] b{opacity:.9}
.filtri .stati button[aria-pressed=true]::before{content:"✓";margin-right:8px;font-weight:700}
.filtri .stati button[aria-pressed=true]{justify-content:flex-start}
.filtri .stati button[aria-pressed=true] b{margin-left:auto}
.filtri-azzera{border:0;background:none;color:var(--marchio);font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;justify-self:start;padding:0}
.filtri-azzera[hidden]{display:none}

.cat-ordina{display:flex;justify-content:flex-end;margin-bottom:16px}
.cat-ordina .ord{display:flex;align-items:center;gap:10px;font-weight:600;font-size:var(--small)}
.cat-ordina select{border:0;border-radius:10px;background:var(--soft);padding:10px 14px;font-weight:600}
.cat-ordina[hidden]{display:none}

/* Riquadri dei prodotti tutti della stessa altezza: righe uguali, nome su al massimo 3 righe, prezzo e stato in basso */
.prodotti{grid-auto-rows:1fr}
.prodotti.sezioni{display:block}
.slide-wrap{position:relative;--n:6;--gap:14px}
.slide{display:flex;gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
.slide::-webkit-scrollbar{display:none}
.slide>.prod{flex:0 0 calc((100% - (var(--n) - 1) * var(--gap)) / var(--n));scroll-snap-align:start;min-width:0}
.slide-b{position:absolute;top:38%;z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid var(--line,#ddd);background:var(--panel,#fff);color:inherit;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.25)}
.slide-b:disabled{opacity:.3;cursor:default}
.slide-b:not(:disabled):hover{background:var(--brand,#333);color:#fff}
.slide-bar{height:4px;border-radius:2px;background:rgba(127,127,127,.25);margin-top:10px;overflow:hidden}
.slide-bar i{display:block;height:100%;border-radius:2px;background:var(--brand,#333);transition:margin-left .15s}
.slide-n{margin:6px 0 0;font-size:12px;color:var(--muted,#777)}
.slide-b.prev{left:-18px}
.slide-b.next{right:-18px}
@media(max-width:820px){.slide-wrap{--n:3}}
@media(max-width:560px){.slide-wrap{--n:2;--gap:12px}}
.sez-t{margin:28px 0 14px;font-size:18px;font-weight:700;display:flex;align-items:baseline;gap:8px}
.sez-t:first-child{margin-top:0}
.sez-t b{font-size:13px;font-weight:500;color:var(--muted,#777)}
.prod .tx{display:flex;flex-direction:column}
.pn{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.prod .pp{margin-top:0;color:inherit;text-decoration:none}
.prod-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px 16px}
.prod .prod-add{flex:none;width:44px;height:44px;margin:0;padding:0;border-radius:50%}
.prod .prod-add svg{margin:0}
.prod .stato{align-self:flex-start}

.pn{-webkit-line-clamp:2}
.prod-esaurito,.prod-esaurito:hover{background:var(--soft2);color:var(--muted);cursor:not-allowed;transform:none}

.prod .im{position:relative}
.prod .im .stato{position:absolute;top:10px;left:10px;margin:0;box-shadow:0 1px 4px rgba(27,31,36,.18)}

/* Spazio fra l'ultimo contenuto e il pie di pagina */
main{padding-bottom:clamp(20px,3vw,40px)}
.cat-layout{margin-bottom:0}
.fine{margin-top:clamp(16px,2vw,28px)}

/* Pie di pagina: informazioni legali */
.fine-legale{display:grid;gap:14px;padding-top:24px;margin-top:8px;border-top:1px solid color-mix(in srgb,var(--on-marchio) 28%,transparent)}
.fine-link{display:flex;flex-wrap:wrap;gap:8px 24px}
.fine-link button{border:0;background:none;padding:0;color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.fine-marchi{margin:0;font-size:.8125rem;line-height:1.5;opacity:.8;max-width:110ch}
/* Finestre legali */
.leg h3{font-size:var(--body);margin:18px 0 6px}
.leg h3:first-child{margin-top:0}
.leg p{margin:0 0 8px}
.leg-form{display:grid;gap:14px}
.leg-form label{display:grid;gap:5px;font-weight:600;font-size:var(--small)}
.leg-form input,.leg-form textarea{border:0;background:var(--soft);border-radius:8px;padding:12px 14px;font:inherit;font-weight:400;width:100%}
.leg-fg{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.leg-trappola{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
@media(max-width:560px){.leg-fg{grid-template-columns:1fr}}
#legVel{z-index:99}#legPan{z-index:100}

.leg-guida{background:var(--tinta);border-radius:12px;padding:16px 18px;margin-bottom:18px}
.leg-guida h3{margin:0 0 8px;font-size:var(--body)}
.leg-guida p{margin:0 0 8px}
.leg-guida p:last-child{margin-bottom:0}
.leg-guida ol{margin:0 0 10px;padding-left:20px;display:grid;gap:8px}
.leg-guida a{color:var(--marchio);font-weight:700}

/* Informative legali e cookie */
.leg ul{margin:0 0 8px;padding-left:20px;display:grid;gap:6px}
.leg-agg{color:var(--muted);font-size:.8125rem;margin-top:16px!important}
.ck-riga{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--soft);border-radius:12px;padding:14px 16px;margin-bottom:8px;cursor:pointer}
.ck-riga span{display:grid;gap:2px}
.ck-riga small{color:var(--muted)}
.ck-riga input{width:22px;height:22px;flex:none;accent-color:var(--marchio)}
.ck-btns{margin-top:14px}
.ck-banner{position:fixed;z-index:90;left:var(--m);right:var(--m);bottom:16px;max-width:860px;margin:0 auto;background:var(--bg);border-radius:14px;padding:16px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;box-shadow:0 6px 28px rgba(27,31,36,.28);outline:2px solid var(--soft2)}
.ck-banner p{margin:0;flex:1 1 380px;font-size:var(--small)}
.ck-banner .btn{padding:10px 16px;font-size:var(--small)}
#regInvia:disabled,#formReg>button[type=submit]:disabled{opacity:.45;cursor:not-allowed}
.reg-grid>.reg-nota{margin:2px 0 -6px}

/* Sfondo del banner: carte sparse (sagome in colore del marchio, molto tenui) su un chiarore morbido */
.hero{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(70% 90% at 85% 10%,color-mix(in srgb,var(--marchio) 16%,#fff),transparent 70%),radial-gradient(60% 80% at 0% 100%,color-mix(in srgb,var(--marchio) 12%,#fff),transparent 70%),var(--tinta)}
.hero::before{content:"";position:absolute;inset:-20%;z-index:-1;background:var(--marchio);opacity:.09;transform:rotate(-8deg);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cg fill='none' stroke='%23000' stroke-width='3'%3E%3Crect x='14' y='18' width='42' height='60' rx='6' transform='rotate(-14 35 48)'/%3E%3Crect x='84' y='70' width='42' height='60' rx='6' transform='rotate(12 105 100)'/%3E%3C/g%3E%3Cpath d='M105 24l3 7 7 3-7 3-3 7-3-7-7-3 7-3z' fill='%23000'/%3E%3C/svg%3E") 0 0/140px 140px;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cg fill='none' stroke='%23000' stroke-width='3'%3E%3Crect x='14' y='18' width='42' height='60' rx='6' transform='rotate(-14 35 48)'/%3E%3Crect x='84' y='70' width='42' height='60' rx='6' transform='rotate(12 105 100)'/%3E%3C/g%3E%3Cpath d='M105 24l3 7 7 3-7 3-3 7-3-7-7-3 7-3z' fill='%23000'/%3E%3C/svg%3E") 0 0/140px 140px}
.hero-in{position:relative}

/* Sfondo del resto del sito: righe astratte ondulate nei colori del logo (rosso e azzurro), tenui e ferme mentre si scorre.
   Schede prodotto, filtri e pannelli hanno già il proprio fondo pieno, quindi il testo non ne risente. */
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.32;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 900' preserveAspectRatio='xMidYMid slice'%3E%3Cg fill='none' stroke-linecap='round'%3E%3Cpath d='M-60 150 C 280 20, 520 330, 920 190 S 1320 60, 1500 170' stroke='%230789c2' stroke-opacity='0.90' stroke-width='2.5'/%3E%3Cpath d='M-60 166 C 280 40.8, 520 346, 920 206 S 1320 72.8, 1500 186' stroke='%230789c2' stroke-opacity='0.79' stroke-width='1.5'/%3E%3Cpath d='M-60 182 C 280 61.6, 520 362, 920 222 S 1320 85.6, 1500 202' stroke='%230789c2' stroke-opacity='0.68' stroke-width='2.5'/%3E%3Cpath d='M-60 198 C 280 82.4, 520 378, 920 238 S 1320 98.4, 1500 218' stroke='%230789c2' stroke-opacity='0.56' stroke-width='1.5'/%3E%3Cpath d='M-60 214 C 280 103.2, 520 394, 920 254 S 1320 111.2, 1500 234' stroke='%230789c2' stroke-opacity='0.45' stroke-width='2.5'/%3E%3Cpath d='M-60 230 C 280 124, 520 410, 920 270 S 1320 124, 1500 250' stroke='%230789c2' stroke-opacity='0.34' stroke-width='1.5'/%3E%3Cpath d='M-60 246 C 280 144.8, 520 426, 920 286 S 1320 136.8, 1500 266' stroke='%230789c2' stroke-opacity='0.23' stroke-width='2.5'/%3E%3Cpath d='M-60 770 C 260 610, 620 900, 1000 730 S 1350 650, 1500 720' stroke='%23e3003e' stroke-opacity='0.90' stroke-width='2.5'/%3E%3Cpath d='M-60 754 C 260 590.8, 620 884, 1000 714 S 1350 638.8, 1500 704' stroke='%23e3003e' stroke-opacity='0.79' stroke-width='1.5'/%3E%3Cpath d='M-60 738 C 260 571.6, 620 868, 1000 698 S 1350 627.6, 1500 688' stroke='%23e3003e' stroke-opacity='0.68' stroke-width='2.5'/%3E%3Cpath d='M-60 722 C 260 552.4, 620 852, 1000 682 S 1350 616.4, 1500 672' stroke='%23e3003e' stroke-opacity='0.56' stroke-width='1.5'/%3E%3Cpath d='M-60 706 C 260 533.2, 620 836, 1000 666 S 1350 605.2, 1500 656' stroke='%23e3003e' stroke-opacity='0.45' stroke-width='2.5'/%3E%3Cpath d='M-60 690 C 260 514, 620 820, 1000 650 S 1350 594, 1500 640' stroke='%23e3003e' stroke-opacity='0.34' stroke-width='1.5'/%3E%3Cpath d='M-60 674 C 260 494.8, 620 804, 1000 634 S 1350 582.8, 1500 624' stroke='%23e3003e' stroke-opacity='0.23' stroke-width='2.5'/%3E%3Cpath d='M1500 470 C 1250 380, 1100 560, 820 470' stroke='%230789c2' stroke-opacity='0.60' stroke-width='2.5'/%3E%3Cpath d='M1500 488 C 1250 398, 1100 581.6, 820 488' stroke='%230789c2' stroke-opacity='0.45' stroke-width='1.5'/%3E%3Cpath d='M1500 506 C 1250 416, 1100 603.2, 820 506' stroke='%230789c2' stroke-opacity='0.30' stroke-width='2.5'/%3E%3C/g%3E%3C/svg%3E") center/cover no-repeat}
.come{background:radial-gradient(60% 120% at 100% 0%,color-mix(in srgb,var(--marchio) 8%,var(--soft)),transparent 70%),var(--soft)}

/* Card gioco con immagine: il nome non si scrive (resta per gli screen reader), si vede solo il numero di prodotti */
.gioco-card.con-img .gioco-nome{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Immagini dei prodotti con gli angoli arrotondati: nell'elenco la foto è un riquadro staccato dai bordi della scheda */
.prod .im{margin:10px 10px 0;border-radius:16px}
.prod .im img{border-radius:16px}
.scheda-foto{border-radius:22px}
.scheda-foto img{border-radius:22px}

/* L'arrotondamento deve toccare la foto stessa, non il riquadro attorno: lo spazio interno passa dall'immagine al contenitore */
.prod .im{padding:14px;box-sizing:border-box}
.prod .im img{padding:0;border-radius:14px}
.scheda-foto{padding:24px;box-sizing:border-box}
.scheda-foto img{padding:0;border-radius:18px}

/* La foto riempie tutto il riquadro (niente fondo grigio visibile attorno); se non è quadrata si ritaglia ai bordi */
.prod .im{padding:0}
.prod .im img{object-fit:cover;border-radius:0}
.scheda-foto{padding:0}
.scheda-foto img{object-fit:cover;border-radius:0}

/* Tipologia ed Espansione si chiudono a tendina toccando il titolo */
.filtri-tg{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:none;padding:0;cursor:pointer;text-align:left}
.filtri-tg::after{content:"▾";transition:transform .2s}
.filtri-gr.chiuso .filtri-tg::after{transform:rotate(-90deg)}
.filtri-gr.chiuso>.stati{display:none}
.pp-no{font-size:.8125rem;font-weight:600;color:var(--muted);white-space:nowrap}
@media(max-width:560px){.pp-no{font-size:.6875rem;letter-spacing:-.01em}}

/* Banner: elenco di tutti i prodotti in preordine, scorrevole se sono tanti */
.pros-tit{font-size:var(--lead);font-weight:700;margin:0 0 12px}
.pros-slide{overflow:hidden}
.pros-pista{display:flex;transition:transform .4s var(--ease)}
.pros-lista{display:grid;gap:12px;flex:0 0 100%;min-width:0;align-content:start;padding:2px}
.pros-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:12px}
.pros-fr{width:32px;height:32px;border-radius:50%;border:1px solid var(--marchio);background:transparent;color:var(--marchio);font-size:20px;line-height:1;cursor:pointer;padding:0}
.pros-pt{display:flex;gap:6px}
.pros-pt i{width:7px;height:7px;border-radius:50%;background:var(--marchio);opacity:.3}
.pros-pt i.on{opacity:1}
.pros-lista .pros-in{grid-template-columns:84px minmax(0,1fr);gap:14px;padding:12px}
.pros-lista .pros-tx b{font-size:1rem}
.pros-lista .pros-pr{font-size:1rem;margin-top:2px}

/* Countdown di apertura prenotazioni: riga nel banner e blocco nella scheda prodotto */
.pros-cd{display:block;margin-top:4px;font-size:.8125rem;font-weight:700;color:var(--marchio);font-variant-numeric:tabular-nums}
.pros-cd.on{color:#15803d}
.scheda-acq>.pros-cd{grid-column:1;text-align:center;margin:0}
.pros-sb{display:block;font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}
/* Prodotti in uscita: countdown alla data di uscita (card del catalogo e scheda prodotto) */
.usc-cd{display:block;margin-top:4px;font-size:.8125rem;font-weight:700;color:var(--marchio);font-variant-numeric:tabular-nums}
.usc-cd.on{color:#15803d}
/* Etichetta «Coming Soon» sotto il prezzo (card e scheda) */
.stato.stato-sotto{margin-top:6px;background:var(--marchio);color:var(--on-marchio)}
.scheda-pr .stato.stato-sotto{background:var(--marchio);color:var(--on-marchio)}
.pp-col{min-width:0}
/* Livelli con timer nella scheda: stessa grafica della tabella di «Info preorder» */
.cd-box{margin:14px 0}.cd-sub{margin:12px 0 4px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cd-tab{display:grid;gap:4px}
.cd-riga{display:grid;grid-template-columns:minmax(0,1.4fr) auto minmax(0,1.5fr) 110px;align-items:center;gap:4px 16px;min-height:38px;padding:6px 16px;border-radius:12px;font-size:.8125rem;background:color-mix(in srgb,var(--soft) 88%,transparent)}
.cd-riga.ok{background:var(--ok-bg);color:var(--ok)}
.cd-riga.cd-tit{min-height:0;padding:0 16px 2px;background:none;font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.cd-riga>span,.cd-riga>.cd-tempo{text-align:center;justify-self:center}
.cd-riga.cd-tit>span:first-child{text-align:left;justify-self:start}
.cd-nm{font-size:.9375rem;line-height:1.25;text-align:left}
.cd-mx{display:inline-block;min-width:44px;padding:3px 10px;border-radius:999px;background:rgba(27,31,36,.07);font-size:.8125rem;font-weight:700;white-space:nowrap}
.cd-riga.ok .cd-mx{background:rgba(255,255,255,.6)}
.cd-ora{font-weight:500;font-variant-numeric:tabular-nums;opacity:.9}
.cd-tempo{font-size:.75rem;font-weight:700;color:var(--marchio);font-variant-numeric:tabular-nums;white-space:nowrap}
.cd-tempo.on{color:inherit}
@media (max-width:620px){
  .cd-riga{grid-template-columns:1fr auto}
  .cd-riga.cd-tit{display:none}
  .cd-nm,.cd-ora{grid-column:1/-1;justify-self:start;text-align:left}
  .cd-riga>span,.cd-riga>.cd-tempo{justify-self:start}
  .cd-riga [data-et]::before{content:attr(data-et) ": ";font-weight:400;opacity:.75}
}

/* In arrivo: un gruppo per gioco */
.nov-gruppi{display:grid;gap:32px;grid-template-columns:minmax(0,1fr)}
.slide-blk{min-width:0}
.nov-gioco{font-size:var(--lead);font-weight:700;margin:0 0 14px;display:flex;align-items:center;gap:10px}
.nov-gioco small{font-size:var(--small);font-weight:600;color:var(--muted);background:var(--soft);border-radius:999px;padding:2px 10px}
.nov-menu{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 0 22px;padding-bottom:2px}
.nov-menu::-webkit-scrollbar{display:none}
.nov-menu button{flex:none;border:0;border-radius:999px;background:var(--soft);padding:10px 16px;font-weight:600;font-size:var(--small);cursor:pointer;transition:background .2s,color .2s}
.nov-menu button:hover:not([aria-pressed=true]){background:var(--soft2)}
.nov-menu button[aria-pressed=true]{background:var(--marchio);color:var(--on-marchio)}
.nov-menu b{opacity:.75;margin-left:4px}

/* Foto della scheda prodotto più contenuta */
.scheda{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}
.scheda-foto{max-width:420px;width:100%;margin-inline:auto}
@media(max-width:860px){.scheda{grid-template-columns:1fr}.scheda-foto{max-width:320px;margin:0 auto}}

/* ---------- Scheda prodotto ridisegnata: titolo grande, un solo blocco d'acquisto, dati a tessere piene ---------- */
.scheda-wrap{padding-top:20px}
.scheda{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px)}
.scheda-foto{max-width:440px;background:var(--soft)}
.scheda-info{gap:24px}
.scheda-titolo{font-size:clamp(1.5rem,1.1rem + 1.3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;font-weight:700;white-space:normal;text-wrap:balance}
.scheda-acq{background:var(--tinta);border-radius:12px;padding:clamp(18px,2.4vw,28px);display:flex;flex-direction:column;gap:16px}
.scheda-pr{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}
.scheda-pr .prezzo{font-size:clamp(1.75rem,1.4rem + 1.2vw,2.5rem);font-weight:700;line-height:1;letter-spacing:-.02em}
.scheda-pr .stato{font-size:var(--small);padding:6px 14px;border-radius:8px;background:var(--marchio);color:var(--on-marchio)}
.scheda-pr .stato.si{background:var(--ok);color:#fff}
.scheda-pr .stato.no{background:var(--soft2);color:var(--ink)}
.scheda-acq .nota,.scheda-acq .nota-acc{padding:0;background:none}
.scheda-acq .btn-acq{padding:14px 26px;font-size:var(--body)}
.dati{background:none;border-radius:0;padding:0;gap:8px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.dati div{flex-direction:column;justify-content:flex-start;gap:2px;background:var(--soft);border-radius:8px;padding:14px 16px}
.dati dt{font-size:var(--small)}
.dati dd{text-align:left;font-size:var(--lead);font-weight:700}
.desc{font-size:var(--lead);line-height:1.55}
@media(max-width:860px){.scheda-foto{max-width:320px}.scheda-acq .btn-acq{width:100%}}
.scheda-pr .stato.pre{background:#e8590c;color:#fff}

/* ---------- Dettagli del preordine ridisegnati: livelli su una riga, sigle in frase, avviso a blocco ---------- */
.pre-pan{width:min(720px,calc(100vw - 24px))}
.pre-box{gap:20px}
.pre-box .dati{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.pre-sub{margin:8px 0 0;font-size:var(--lead);font-weight:700;color:var(--ink);text-transform:none;letter-spacing:0}
.pre-tab{gap:6px}
.pre-liv{display:grid;grid-template-columns:minmax(0,1.5fr) auto auto minmax(0,1.6fr);align-items:center;gap:6px 20px;padding:12px 16px;font-size:var(--small)}
.pre-liv>b:first-child{flex:none;font-size:var(--body)}
.pre-pz{font-size:var(--lead);font-weight:700;font-variant-numeric:tabular-nums}
.pre-mx{font-weight:600}
.pre-qd{color:var(--muted);font-variant-numeric:tabular-nums}
.pre-liv.ok .pre-qd{color:inherit}
.pre-no{grid-column:2/-1;text-align:right}
.pre-avviso{padding:18px 20px;display:grid;gap:12px;font-size:var(--small);line-height:1.55}
.pre-avviso p{margin:0}
.pre-avviso p:nth-child(2){background:var(--bg);border-radius:8px;padding:12px 14px}
@media(max-width:620px){.pre-liv{grid-template-columns:1fr auto}.pre-nm{grid-column:1/-1}.pre-qd{grid-column:1/-1}.pre-no{grid-column:1/-1;text-align:left}}
.dati dd{font-size:var(--body);line-height:1.3}
.dati dt{font-size:.8125rem}
.pre-box .dati{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.pre-pan{width:min(960px,calc(100vw - 24px))}
.pre-box .dati div{align-items:center;text-align:center}
.pre-box .dati dd,.pre-box .dati dt{text-align:center}
.pre-pz,.pre-mx,.pre-qd,.pre-no{text-align:center}
.pre-sub{font-size:var(--body)}
.pre-liv{padding:9px 14px;font-size:.8125rem;gap:4px 16px}
.pre-liv>b:first-child{font-size:.875rem}
.pre-pz{font-size:.9375rem}

/* Livelli del cliente in testata: chip piene con il colore del livello */
.liv-testa{display:flex;align-items:center;gap:6px}
.liv-testa[hidden]{display:none}
.liv-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:color-mix(in srgb,var(--c) 16%,#fff);color:var(--ink);text-decoration:none;font-size:.875rem;font-weight:600;white-space:nowrap;transition:background .2s}
.liv-chip:hover{background:color-mix(in srgb,var(--c) 28%,#fff)}
@media(max-width:900px){.liv-chip b{display:none}.liv-chip{padding:6px 9px}}

/* Tasto Prenota sulla riga del livello che si applica al cliente */
.pre-liv.sua{grid-template-columns:minmax(0,1.4fr) auto auto minmax(0,1.5fr) auto;background:var(--ok);color:#fff}
.pre-liv.sua .pre-pt,.pre-liv.sua .pre-qd{color:rgba(255,255,255,.85)}
.pre-go{padding:9px 18px;font-size:var(--small);background:#fff;color:var(--ok)}
.pre-go:disabled{opacity:.6;cursor:default;transform:none}
.pre-esito{margin:0;padding:12px 16px;border-radius:8px;font-weight:600;font-size:var(--small)}
.pre-esito.ok{background:var(--ok-bg);color:var(--ok)}
.pre-esito.err{background:#fde8ea;color:#a3112a}
@media(max-width:620px){.pre-liv.sua{grid-template-columns:1fr auto}.pre-go{grid-column:1/-1;width:100%}}

/* Popup dei preordini compatto: tutto visibile senza scorrere sugli schermi normali */
#prePan .cart-testa{padding:12px 22px}
#prePan .pre-corpo{padding:14px 22px 16px}
#prePan .pre-box{gap:10px}
#prePan .dati div{padding:9px 14px}
#prePan .pre-sub{margin:2px 0 0;font-size:var(--small)}
#prePan .pre-tab{gap:4px}
#prePan .pre-liv{padding:6px 14px}
#prePan .pre-go{padding:6px 16px}
#prePan .pre-avviso{padding:12px 16px;gap:8px;font-size:.8125rem;line-height:1.45}
#prePan .pre-avviso p:nth-child(2){padding:8px 12px}
.pre-opz{width:100%;text-align:left}
.pre-dopo{align-self:center}
.pre-sped .ac-fg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pre-sped .ac-fg label{display:grid;gap:4px;font-size:var(--small);font-weight:600}
.pre-sped .ac-fg .w2{grid-column:1/-1}
.pre-sped .ac-fg input{padding:10px 12px;border:0;border-radius:8px;background:var(--soft);font-size:var(--body)}
.pre-sped .ac-btns{display:flex;gap:8px}
.pre-qta{display:flex;align-items:center;gap:10px;font-weight:600}
.pre-qta select{padding:8px 12px;border:0;border-radius:8px;background:var(--soft);font:inherit;font-weight:700}
.pre-qta small{font-weight:400;color:var(--muted)}
.pre-azione{display:flex;align-items:center;gap:8px}
.pre-liv.sua .pre-qta select{background:#fff;color:var(--ok);padding:6px 10px}
@media(max-width:620px){.pre-azione{grid-column:1/-1}.pre-azione .pre-go{flex:1}}

/* Colonne dei livelli con il loro nome */
#prePan .pre-liv,#prePan .pre-liv.sua{grid-template-columns:minmax(0,1.4fr) 96px 80px minmax(0,1.5fr) 150px}
#prePan .pre-liv.pre-tit{background:none;padding-top:0;padding-bottom:0;font-size:.75rem;font-weight:600;color:var(--muted)}
#prePan .pre-liv.pre-tit span{text-align:center}
#prePan .pre-liv.pre-tit span:first-child{text-align:left}
#prePan .pre-no{grid-column:2/-1}
#prePan .pre-azione{justify-content:flex-end}
@media(max-width:620px){
  #prePan .pre-liv,#prePan .pre-liv.sua{grid-template-columns:1fr auto}
  #prePan .pre-liv.pre-tit{display:none}
  #prePan .pre-liv [data-et]::before{content:attr(data-et) ": ";font-weight:400;opacity:.75}
}
#prePan .pre-liv:not(.sua) .pre-qd{grid-column:4/-1}
#prePan .pre-liv.pre-tit span:nth-child(4){grid-column:4/-1}
#prePan .pre-liv.pre-tit span:nth-child(5){display:none}
#prePan .pre-liv,#prePan .pre-liv.sua{grid-template-columns:minmax(0,1fr) 96px 76px 250px 190px;column-gap:14px}
#prePan .pre-qd{white-space:nowrap}
#prePan .pre-liv.sua .pre-qd{grid-column:4}
@media(max-width:900px){#prePan .pre-qd{white-space:normal}}
@media(max-width:620px){#prePan .pre-liv,#prePan .pre-liv.sua{grid-template-columns:1fr auto}#prePan .pre-liv.sua .pre-qd{grid-column:1/-1}}
.pre-totale{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 14px;background:var(--tinta);border-radius:8px;padding:10px 16px}
.pre-totale span{font-weight:600;font-size:var(--small)}
.pre-totale b{font-size:1.25rem;font-weight:800;font-variant-numeric:tabular-nums}
.pre-totale small{color:var(--muted);margin-left:auto}

/* Condizioni della prenotazione: riquadro ben delimitato */
#prePan .pre-avviso{background:var(--bg);border:2px solid var(--marchio);border-radius:10px;padding:14px 18px;gap:8px}
#prePan .pre-avviso h4{margin:0;font-size:var(--small);font-weight:800;color:var(--marchio)}
#prePan .pre-avviso p:nth-child(3){background:var(--tinta)}
#prePan .pre-avviso p{padding:0;background:none;border-radius:0;text-align:left}
#prePan .pre-avviso p:nth-child(3){background:var(--tinta);padding:8px 12px;border-radius:8px}
#prePan .pre-avviso,#prePan .pre-avviso h4,#prePan .pre-avviso p,#prePan .pre-avviso p:nth-child(3){text-align:left;padding-left:0;padding-right:0;margin-left:0;background:none;border-radius:0}
#prePan .pre-avviso{padding:14px 18px}
#prePan .pre-avviso p,#prePan .pre-avviso p:nth-child(3){padding-top:0;padding-bottom:0}

/* Modulo di spedizione: via + civico e CAP + città + provincia sulla stessa riga */
.pre-sped .ac-fg{grid-template-columns:repeat(12,minmax(0,1fr))}
.pre-sped .ac-fg label{grid-column:span 6}
.pre-sped .ac-fg label:has([name=sp_via]){grid-column:span 9}
.pre-sped .ac-fg label:has([name=sp_civico]){grid-column:span 3}
.pre-sped .ac-fg label:has([name=sp_cap]){grid-column:span 3}
.pre-sped .ac-fg label:has([name=sp_citta]){grid-column:span 6}
.pre-sped .ac-fg label:has([name=sp_provincia]){grid-column:span 3}
.pre-sped .ac-fg label:has([name=sp_telefono]){grid-column:span 12}
@media(max-width:520px){.pre-sped .ac-fg label,.pre-sped .ac-fg label:has([name=sp_citta]){grid-column:span 12}.pre-sped .ac-fg label:has([name=sp_civico]),.pre-sped .ac-fg label:has([name=sp_cap]),.pre-sped .ac-fg label:has([name=sp_provincia]){grid-column:span 6}}
.pre-sped>p.nota{font-size:.8125rem;white-space:normal;overflow-wrap:anywhere}
@media(max-width:900px){.pre-sped>p.nota{white-space:normal}}
.pre-sped .btn:disabled{opacity:.4;cursor:not-allowed;transform:none}
.pre-sped .ac-fg{column-gap:14px;row-gap:10px}
.pre-sped .ac-fg label{min-width:0}
.pre-sped .ac-fg input{width:100%;min-width:0;box-sizing:border-box}
.pre-sped .req{color:#d4183d;font-weight:800}
.pre-sped .pre-req{margin:0;font-size:.75rem;color:var(--muted)}

/* Popup ordini da pagare all'accesso */
.pop-ord{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--soft);border-radius:8px;padding:10px 14px}
.pop-ord b{display:block}
.pop-ord small{display:block;color:var(--muted);font-size:.8125rem}
.pop-imp{text-align:right;flex:none}
.pop-imp strong{font-size:1.125rem;font-variant-numeric:tabular-nums}
.pop-ord .btn{flex:none;padding:9px 16px;font-size:.8125rem}

/* Home: sezioni Preordini, In arrivo e Sfoglia per gioco più basse */
#preordini,#novita{padding-top:clamp(16px,2.5vw,24px)}
#preordini .blocco-testa,#novita .blocco-testa{margin-bottom:12px}
#preordini .slide-wrap,#novita .slide-wrap{--n:8;--gap:12px}
#novita .prodotti{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
#preordini .prod .im img,#novita .prod .im img{padding:8px}
#preordini .prod .tx,#novita .prod .tx{padding:10px 10px 8px}
.nov-menu{margin-bottom:12px}
.giochi-home{gap:12px}
.giochi-home .gioco-card{min-height:96px;padding:16px}
.giochi-home .gioco-card.con-img{min-height:120px}
@media(max-width:820px){#preordini .slide-wrap,#novita .slide-wrap{--n:4}}
@media(max-width:560px){#preordini .slide-wrap,#novita .slide-wrap{--n:2.5}}
/* In arrivo: slide con i primi 10 prodotti visibili */
#novita .slide-wrap{--n:10;--gap:10px}
@media(max-width:820px){#novita .slide-wrap{--n:4}}
@media(max-width:560px){#novita .slide-wrap{--n:2.5}}
/* Home (Preordini e In arrivo): riquadri larghi 200px da tablet in su */
@media(min-width:821px){#preordini .slide>.prod,#novita .slide>.prod{flex:0 0 200px}}

/* Pill di stato sulle schede: piccola, su una riga */
.prod .im .stato{top:8px;left:8px;max-width:calc(100% - 16px);padding:3px 9px;font-size:11px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:none}

/* Dettagli del preordine: modal più largo e colonna del livello più ampia (nome e punti su una riga) */
#prePan{width:min(1200px,calc(100vw - 24px))}
#prePan .pre-liv,#prePan .pre-liv.sua{grid-template-columns:minmax(0,240px) 96px 76px minmax(0,1fr) 170px}
@media(max-width:900px){#prePan .pre-liv,#prePan .pre-liv.sua{grid-template-columns:minmax(0,1fr) 90px 70px 220px 150px}}
@media(max-width:620px){#prePan .pre-liv,#prePan .pre-liv.sua{grid-template-columns:1fr auto}}

/* Livello non prenotabile: riga evidenziata in rosso, scritta centrata tra il prezzo e le date */
#prePan .pre-liv.non{background:var(--no-bg,#fdeaea);color:#b42318}
#prePan .pre-liv.non .pre-pz,#prePan .pre-liv.non .pre-pt{color:inherit}
#prePan .pre-liv .pre-no{grid-column:4/-1;text-align:center;font-weight:700;color:#b42318}
@media(max-width:620px){#prePan .pre-liv .pre-no{grid-column:1/-1;text-align:left}}

/* Dettagli del preordine: rifinitura grafica delle tabelle dei livelli */
#prePan .pre-sub{margin:22px 0 8px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
#prePan .pre-tab{display:grid;gap:6px}
#prePan .pre-liv{border-radius:12px;padding:10px 16px;min-height:46px;align-items:center}
#prePan .pre-liv.pre-tit{min-height:0;padding:0 16px 2px;font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
#prePan .pre-liv .pre-nm{font-size:.9375rem;line-height:1.25}
#prePan .pre-liv .pre-pt{font-weight:400;font-size:.75rem;opacity:.7}
#prePan .pre-liv .pre-pz{font-size:1.0625rem;font-weight:700;font-variant-numeric:tabular-nums}
#prePan .pre-liv .pre-mx,#prePan .pre-liv .pre-no{justify-self:center}
#prePan .pre-liv .pre-mx{display:inline-block;min-width:44px;padding:3px 10px;border-radius:999px;background:rgba(27,31,36,.07);font-size:.8125rem;font-weight:700;text-align:center}
#prePan .pre-liv.ok .pre-mx{background:rgba(255,255,255,.6)}
#prePan .pre-liv.sua .pre-mx{background:rgba(255,255,255,.2)}
#prePan .pre-liv .pre-qd{font-size:.8125rem;font-weight:500;letter-spacing:0;font-variant-numeric:tabular-nums;opacity:.9}
#prePan .pre-liv.non{box-shadow:inset 4px 0 0 #d92d20;background:#fdecea}
#prePan .pre-liv.non .pre-mx{background:rgba(217,45,32,.14)}
#prePan .pre-liv .pre-no{padding:3px 14px;border-radius:999px;background:rgba(217,45,32,.12);letter-spacing:.02em}
#prePan .pre-liv.sua{box-shadow:0 4px 14px rgba(22,101,52,.25)}
#prePan .pre-liv.sua .pre-go{padding:9px 20px;font-weight:700}
#prePan .pre-totale{margin-top:14px;border-radius:12px}

/* Dettagli del preordine: spaziature compatte, così il contenuto sta nella finestra senza scorrimento */
#prePan .pre-corpo{padding:12px 22px 14px}
#prePan .pre-box{gap:8px}
#prePan .dati div{padding:7px 14px}
#prePan .pre-sub{margin:12px 0 4px}
#prePan .pre-tab{gap:4px}
#prePan .pre-liv{min-height:38px;padding:6px 16px}
#prePan .pre-liv .pre-pz{font-size:1rem}
#prePan .pre-liv.sua .pre-go{padding:7px 18px}
#prePan .pre-liv.sua .pre-qta select{padding:4px 8px}
#prePan .pre-totale{margin-top:8px;padding:8px 16px}
#prePan .pre-avviso{padding:10px 16px;gap:5px;font-size:.75rem;line-height:1.4}
#prePan .pre-avviso h4{font-size:.8125rem}
@media(min-height:1000px){#prePan .pre-liv{min-height:44px;padding:9px 16px}}


/* Dettagli del preordine: stesso sfondo del sito (le onde della pagina) dentro il modal */
#prePan{background:var(--bg);isolation:isolate}
#prePan::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.32;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 900' preserveAspectRatio='xMidYMid slice'%3E%3Cg fill='none' stroke-linecap='round'%3E%3Cpath d='M-60 150 C 280 20, 520 330, 920 190 S 1320 60, 1500 170' stroke='%230789c2' stroke-opacity='0.90' stroke-width='2.5'/%3E%3Cpath d='M-60 166 C 280 40.8, 520 346, 920 206 S 1320 72.8, 1500 186' stroke='%230789c2' stroke-opacity='0.79' stroke-width='1.5'/%3E%3Cpath d='M-60 182 C 280 61.6, 520 362, 920 222 S 1320 85.6, 1500 202' stroke='%230789c2' stroke-opacity='0.68' stroke-width='2.5'/%3E%3Cpath d='M-60 198 C 280 82.4, 520 378, 920 238 S 1320 98.4, 1500 218' stroke='%230789c2' stroke-opacity='0.56' stroke-width='1.5'/%3E%3Cpath d='M-60 214 C 280 103.2, 520 394, 920 254 S 1320 111.2, 1500 234' stroke='%230789c2' stroke-opacity='0.45' stroke-width='2.5'/%3E%3Cpath d='M-60 230 C 280 124, 520 410, 920 270 S 1320 124, 1500 250' stroke='%230789c2' stroke-opacity='0.34' stroke-width='1.5'/%3E%3Cpath d='M-60 246 C 280 144.8, 520 426, 920 286 S 1320 136.8, 1500 266' stroke='%230789c2' stroke-opacity='0.23' stroke-width='2.5'/%3E%3Cpath d='M-60 770 C 260 610, 620 900, 1000 730 S 1350 650, 1500 720' stroke='%23e3003e' stroke-opacity='0.90' stroke-width='2.5'/%3E%3Cpath d='M-60 754 C 260 590.8, 620 884, 1000 714 S 1350 638.8, 1500 704' stroke='%23e3003e' stroke-opacity='0.79' stroke-width='1.5'/%3E%3Cpath d='M-60 738 C 260 571.6, 620 868, 1000 698 S 1350 627.6, 1500 688' stroke='%23e3003e' stroke-opacity='0.68' stroke-width='2.5'/%3E%3Cpath d='M-60 722 C 260 552.4, 620 852, 1000 682 S 1350 616.4, 1500 672' stroke='%23e3003e' stroke-opacity='0.56' stroke-width='1.5'/%3E%3Cpath d='M-60 706 C 260 533.2, 620 836, 1000 666 S 1350 605.2, 1500 656' stroke='%23e3003e' stroke-opacity='0.45' stroke-width='2.5'/%3E%3Cpath d='M-60 690 C 260 514, 620 820, 1000 650 S 1350 594, 1500 640' stroke='%23e3003e' stroke-opacity='0.34' stroke-width='1.5'/%3E%3Cpath d='M-60 674 C 260 494.8, 620 804, 1000 634 S 1350 582.8, 1500 624' stroke='%23e3003e' stroke-opacity='0.23' stroke-width='2.5'/%3E%3Cpath d='M1500 470 C 1250 380, 1100 560, 820 470' stroke='%230789c2' stroke-opacity='0.60' stroke-width='2.5'/%3E%3Cpath d='M1500 488 C 1250 398, 1100 581.6, 820 488' stroke='%230789c2' stroke-opacity='0.45' stroke-width='1.5'/%3E%3Cpath d='M1500 506 C 1250 416, 1100 603.2, 820 506' stroke='%230789c2' stroke-opacity='0.30' stroke-width='2.5'/%3E%3C/g%3E%3C/svg%3E") center/cover no-repeat}
#prePan .cart-testa,#prePan .pre-corpo{position:relative;z-index:1}
#prePan .cart-testa{background:color-mix(in srgb,var(--bg) 70%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#prePan .pre-liv:not(.ok):not(.sua):not(.non),#prePan .dati div{background:color-mix(in srgb,var(--soft) 88%,transparent)}
/* Scheda prodotto: «Altri prodotti» più bassi (schede più piccole, meno spazio sopra e sotto) */
.altri-t{margin:28px 0 10px}
.altri-t h2{font-size:var(--lead)}
.prodotti.altri{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.prodotti.altri .prod .im img{padding:8px}
.prodotti.altri .prod .tx{padding:10px 10px 8px}
.prodotti.altri .prod-foot{padding-top:0}

/* Scheda prodotto: prezzo, pezzi disponibili e pulsante (Prenota / Aggiungi al carrello) sulla stessa riga */
.scheda-acq{flex-direction:row;flex-wrap:wrap;align-items:center;gap:14px 28px}
.scheda-acq>.scheda-pr,.scheda-acq>.qta{flex:0 0 auto}
.scheda-acq>.acq,.scheda-acq>.btn-acq{margin-left:auto}
.scheda-acq>.nota,.scheda-acq>.nota-acc{flex:1 1 260px}
.scheda-acq .acq .btn-acq{align-self:stretch}
@media(max-width:560px){.scheda-acq>.acq,.scheda-acq>.btn-acq{margin-left:0;width:100%}.scheda-acq>.acq{flex-wrap:nowrap}.scheda-acq>.acq .btn-acq{flex:1}}

/* Scheda prodotto: «Pezzi disponibili» sotto il prezzo, pulsante a destra su entrambe le righe */
.scheda-acq{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 28px}
.scheda-acq>.scheda-pr{grid-column:1;grid-row:1}
.scheda-acq>.qta{grid-column:1;grid-row:2;margin:0}
.scheda-acq>.acq,.scheda-acq>.btn-acq,.scheda-acq>.nota,.scheda-acq>.nota-acc{grid-column:2;grid-row:1/span 2;justify-self:end;margin-left:0}
.scheda-acq>.nota,.scheda-acq>.nota-acc{justify-self:stretch}
@media(max-width:560px){.scheda-acq{grid-template-columns:1fr}.scheda-acq>.scheda-pr,.scheda-acq>.qta{grid-column:1}.scheda-acq>.acq,.scheda-acq>.btn-acq,.scheda-acq>.nota,.scheda-acq>.nota-acc{grid-column:1;grid-row:auto;justify-self:stretch;margin-top:8px}}

/* Modal «Come vuoi ricevere l'ordine?»: sopra il carrello */
.ord-vel{z-index:90}
.ord-pan{z-index:91;width:min(1200px,calc(100vw - 24px))}
.ord-pan .pre-corpo{padding:12px 22px 14px}
.ord-pan .cart-testa{padding:12px 22px}

/* Scheda prodotto da cellulare */
@media(max-width:560px){
  .scheda-wrap{padding-top:10px;overflow-x:clip}
  .briciole{font-size:.8125rem;margin-bottom:8px}
  .scheda{gap:16px}
  .scheda-foto{max-width:260px;border-radius:16px}
  .scheda-info{gap:16px}
  .scheda-titolo{font-size:1.375rem;line-height:1.2;overflow-wrap:anywhere}
  .scheda-acq{padding:16px;gap:8px;border-radius:12px}
  .scheda-pr{gap:8px 12px}
  .scheda-pr .prezzo{font-size:1.75rem}
  .scheda-pr .stato{font-size:.8125rem;padding:5px 10px}
  .scheda-acq>.qta{font-size:.875rem}
  .scheda-acq>.acq,.scheda-acq>.btn-acq{width:100%;margin-top:6px}
  .scheda-acq .acq{display:flex;flex-wrap:nowrap;gap:8px}
  .scheda-acq .acq .qsel select{min-height:48px;padding:0 10px}
  .scheda-acq .btn-acq{width:100%;justify-content:center;padding:13px 16px;font-size:1rem}
  .scheda-acq .acq .btn-acq{flex:1;width:auto}
  .nota-acc{padding:12px 14px;font-size:.9375rem}
  .dati{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .dati div{padding:10px 12px}
  .dati dt{font-size:.75rem}
  .dati dd{font-size:1rem;overflow-wrap:anywhere}
  .desc{font-size:.9375rem;max-width:none}
  .altri-t{margin:22px 0 8px}
  .prodotti.altri{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}

/* Prenotazioni chiuse: il livello del cliente è in evidenza */
#prePan .pre-liv.tuo{box-shadow:inset 0 0 0 2px var(--marchio);background:var(--tinta);color:var(--ink)}
#prePan .pre-liv.tuo.ok{background:var(--tinta);color:var(--ink)}
#prePan .pre-liv.tuo.non{box-shadow:inset 0 0 0 2px var(--marchio),inset 6px 0 0 #d92d20}
.pre-tuo{display:inline-block;margin-left:6px;padding:2px 9px;border-radius:999px;background:var(--marchio);color:var(--on-marchio);font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;vertical-align:middle}

/* Prezzi riservati ai livelli fedeltà, sotto il prezzo del prodotto */
.nota-liv{margin:10px 0 0;padding:8px 12px;border-radius:10px;background:var(--tinta);color:var(--ink);font-size:var(--small)}
.nota-liv b{color:var(--ok)}

/* Prezzo del livello mostrato come sconto sulla scheda prodotto (prenotazione aperta) */
.prezzo .pre-std{font-size:.55em;margin:0 8px 0 0;text-decoration:line-through}
.pre-sconto{display:inline-block;margin-left:8px;padding:3px 10px;border-radius:999px;background:var(--ok-bg);color:var(--ok);font-size:.75rem;font-weight:700;vertical-align:middle;white-space:nowrap}
.scheda-acq>.pre-qta{margin-right:10px}

/* Quantità prima del pulsante Prenota, con il massimo prenotabile */
.scheda-acq>.pre-qrow{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin:12px 0 8px}
.pre-qrow .pre-qta span{font-size:var(--small);font-weight:600}
.pre-qrow .pre-max{margin:0;font-size:var(--small);color:var(--muted)}
.pre-qrow .pre-max b{color:var(--ink)}
.pre-sconto-riga{margin:8px 0 0}
.pre-sconto-riga .pre-sconto{margin-left:0}

/* Scheda prodotto a griglia: a sinistra prezzo, badge sconto, disponibili; a destra quantità e pulsante */
.scheda-acq>.pre-sconto-riga{grid-column:1;grid-row:2;margin:0}
.scheda-acq>.pre-sconto-riga~.qta{grid-row:3}
.scheda-acq>.pre-qrow{grid-column:2;grid-row:1;justify-self:end;margin:0}
.scheda-acq>.pre-qrow+.btn-acq{grid-row:2/span 2;align-self:start}
@media(max-width:560px){
  .scheda-acq>.pre-sconto-riga,.scheda-acq>.pre-sconto-riga~.qta,.scheda-acq>.pre-qrow,.scheda-acq>.pre-qrow+.btn-acq{grid-column:1;grid-row:auto;justify-self:stretch}
}
.scheda-acq>.pre-sconto-riga{text-align:center;justify-self:stretch}
.scheda-pr{flex-direction:column;align-items:flex-start;gap:8px}
.scheda-acq>.pre-qrow{flex-direction:column;align-items:flex-start;gap:6px}
.pre-qrow{grid-column:2;grid-row:1/span 2;justify-self:end}
.pre-qrow .pre-qline{display:flex;align-items:center;gap:12px}
.pre-qrow .pre-qline .btn-acq{margin:0;width:auto;flex:0 0 auto}
@media(max-width:560px){.pre-qrow{grid-column:1;grid-row:auto;justify-self:stretch}.pre-qrow .pre-qline .btn-acq{flex:1}}
/* Quantità + Prenota e testo del massimo: al centro del riquadro, sotto prezzo e disponibili */
.scheda-acq>.pre-qrow{grid-column:1/-1;grid-row:auto;justify-self:center;align-items:center;text-align:center;margin:6px 0 0}
.scheda-acq>.pre-qrow .pre-qline{justify-content:center}
/* Quantità, Prenota e massimo prenotabile sulla stessa riga del prezzo (colonna di destra) */
.scheda-acq>.pre-qrow{grid-column:2;grid-row:1/span 3;justify-self:end;align-self:center;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 18px;text-align:left;margin:0}
.scheda-acq>.pre-qrow .pre-qline{justify-content:flex-start}
@media(max-width:700px){.scheda-acq>.pre-qrow{grid-column:1;grid-row:auto;justify-self:stretch;flex-direction:column;align-items:stretch}.scheda-acq>.pre-qrow .pre-qline{justify-content:stretch}}
/* Il massimo prenotabile va sotto quantità e pulsante, non di fianco */
.scheda-acq>.pre-qrow{flex-direction:column;align-items:flex-start;flex-wrap:nowrap;gap:8px}
@media(max-width:700px){.scheda-acq>.pre-qrow{align-items:stretch}}
/* Riquadro d'acquisto in due colonne uguali: a sinistra prezzo e disponibilità, a destra quantità e prenotazione */
.scheda-acq:has(>.pre-qrow){grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:0}
.scheda-acq:has(>.pre-qrow)>.scheda-pr,.scheda-acq:has(>.pre-qrow)>.pre-sconto-riga,.scheda-acq:has(>.pre-qrow)>.qta{padding-right:24px}
.scheda-acq>.pre-qrow{justify-self:stretch;align-self:stretch;justify-content:center;align-items:center;padding-left:24px;border-left:1px solid color-mix(in srgb,var(--marchio) 25%,transparent)}
.scheda-acq>.pre-qrow .pre-qline{justify-content:center}
.scheda-acq>.pre-qrow .pre-max{text-align:center}
@media(max-width:700px){
  .scheda-acq:has(>.pre-qrow){grid-template-columns:1fr}
  .scheda-acq:has(>.pre-qrow)>.scheda-pr,.scheda-acq:has(>.pre-qrow)>.pre-sconto-riga,.scheda-acq:has(>.pre-qrow)>.qta{padding-right:0}
  .scheda-acq>.pre-qrow{padding-left:0;border-left:0;border-top:1px solid color-mix(in srgb,var(--marchio) 25%,transparent);padding-top:14px;align-items:stretch}
}
/* Colonna sinistra centrata: chip, prezzo, badge sconto e disponibilità */
.scheda-acq:has(>.pre-qrow)>.scheda-pr{align-items:center;justify-content:center;text-align:center}
.scheda-acq:has(>.pre-qrow)>.pre-sconto-riga,.scheda-acq:has(>.pre-qrow)>.qta{text-align:center;justify-self:stretch}

/* Prenotazione dalla scheda: cassetto laterale stile carrello */
:is(#prePan,#ordPan).pre-cart{top:0;right:0;left:auto;bottom:0;transform:none;width:min(440px,100vw);max-height:none;border-radius:0;animation:entra .3s var(--ease) both}
:is(#prePan,#ordPan).pre-cart .pre-corpo{padding:0;display:flex;flex-direction:column;flex:1;min-height:0}
:is(#prePan,#ordPan).pre-cart .pre-corpo>.pre-box{padding:18px 22px 24px}
.pre-cartwrap{display:flex;flex-direction:column;flex:1;min-height:0}
.pre-cartwrap .cart-righe{flex:1;overflow:auto}
.pre-cartwrap .cart-piede .ac-opz{width:100%}
.pre-cartwrap .cart-piede .pre-dopo{justify-self:center}
:is(#prePan,#ordPan).pre-cart .cart-testa{background:var(--soft);backdrop-filter:none;padding:18px 22px}

/* Avviso «torna disponibile» sulla scheda di un prodotto esaurito */
.avv-mail{display:grid;gap:10px;margin:0}
.avv-riga{display:flex;gap:8px;flex-wrap:wrap}
.avv-riga input[type=email]{flex:1 1 200px;min-width:0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--marchio) 25%,transparent);border-radius:10px;background:#fff;color:var(--ink);font:inherit}
.avv-riga input[type=email]:focus{outline:2px solid var(--marchio);outline-offset:1px}
.avv-riga .btn-acq{align-self:stretch}
.avv-trappola{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.avv-esito{color:var(--ink);font-weight:600}
.scheda-acq>.avv-mail{grid-column:2;grid-row:1/span 2;justify-self:stretch}
@media(max-width:560px){.scheda-acq>.avv-mail{grid-column:1;grid-row:auto;margin-top:8px}.avv-riga .btn-acq{width:100%}}
.avv-mail>.nota{color:var(--ink);font-weight:600;font-size:var(--body)}
.avv-cons{display:flex;gap:10px;align-items:center;font-size:.75rem;color:var(--ink);line-height:1.4;cursor:pointer}
.avv-cons input{margin:0;flex:0 0 auto;width:18px;height:18px;accent-color:var(--marchio)}
.avv-cons .ac-lnk{color:var(--marchio);text-decoration:underline;background:none;border:0;padding:0;font:inherit;cursor:pointer}
/* Scheda: pill dello stato ben visibile e centrata sopra il prezzo */
.scheda-pr{align-items:center}
.scheda-pr .stato.no{background:var(--ink);color:#fff}
/* Registrazione: pill dei giochi tutte uguali, 4 per riga */
#formReg .reg-checks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
#formReg .reg-checks label{justify-content:flex-start;gap:6px;padding:9px 10px;font-size:.75rem;min-width:0;white-space:nowrap}
#formReg .reg-checks label span{overflow:hidden;text-overflow:ellipsis;min-width:0}
#formReg .reg-checks input{flex:0 0 auto;margin:0}
@media(max-width:420px){#formReg .reg-checks{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Modal «Crea il tuo account»: carattere ridotto in tutto il pannello */
#regPan{font-size:.8125rem}
#regPan .cart-testa h2,#regPan .cart-testa h3{font-size:1rem}
#regPan .cart-testa button{font-size:.8125rem}
#regPan .reg-nota,#regPan .pre-corpo>p{font-size:.75rem}
#formReg label,#formReg .reg-giochi legend{font-size:.75rem}
#formReg input,#formReg select{font-size:.8125rem}
#formReg input::placeholder{font-size:.8125rem}
#formReg .pw-req{font-size:.6875rem}
#formReg .reg-checks label{font-size:.6875rem}
#formReg .btn,#formReg button[type=submit]{font-size:.875rem;padding-top:10px;padding-bottom:10px}
#formReg .reg-link,#regPan .reg-ok{font-size:.8125rem}
#formReg .login-msg{font-size:.6875rem;line-height:1.35}
/* Registrazione: consensi facoltativi per le email */
#formReg .reg-cons{display:grid;gap:6px}
#formReg .reg-cons label{display:flex;align-items:flex-start;gap:8px;font-size:.6875rem;line-height:1.4;cursor:pointer}
#formReg .reg-cons input{flex:0 0 auto;width:16px;height:16px;margin:1px 0 0;padding:0;accent-color:var(--marchio)}
.scheda-acq>.qta{text-align:center;justify-self:stretch}
/* Preorder per chi non ha fatto l'accesso: due colonne come per il cliente che può prenotare */
.scheda-acq:has(>.pre-ospite){grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:0}
.scheda-acq:has(>.pre-ospite)>.scheda-pr,.scheda-acq:has(>.pre-ospite)>.qta{padding-right:24px}
.scheda-acq>.pre-ospite{grid-column:2;grid-row:1/span 2;align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;text-align:center;padding-left:24px;border-left:1px solid color-mix(in srgb,var(--marchio) 25%,transparent)}
.pre-ospite .nota-acc{justify-content:center;align-items:center;text-align:left}
.pre-ospite .nota-liv{margin:0}
@media(max-width:700px){
  .scheda-acq:has(>.pre-ospite){grid-template-columns:1fr}
  .scheda-acq:has(>.pre-ospite)>.scheda-pr,.scheda-acq:has(>.pre-ospite)>.qta{padding-right:0}
  .scheda-acq>.pre-ospite{grid-column:1;grid-row:auto;padding-left:0;border-left:0;border-top:1px solid color-mix(in srgb,var(--marchio) 25%,transparent);padding-top:14px;margin-top:8px}
}
.scheda-acq>.liv-nota{grid-column:1;grid-row:3;margin:0;padding-right:24px;text-align:center;font-size:.75rem;color:var(--muted)}
.scheda-acq>.pre-ospite{grid-row:1/span 3}
@media(max-width:700px){.scheda-acq>.liv-nota{grid-row:auto;padding-right:0}.scheda-acq>.pre-ospite{grid-row:auto}}
/* Icona «i»: condizioni di prenotazione per livello, accanto al prezzo */
.scheda-pr .prezzo-riga{display:flex;align-items:center;justify-content:center;gap:10px}
.pre-info-liv{flex:0 0 auto;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--marchio);background:transparent;color:var(--marchio);font:700 .8125rem/1 Georgia,serif;font-style:italic;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s}
.pre-info-liv:hover,.pre-info-liv:focus-visible{background:var(--marchio);color:var(--on-marchio)}
.pre-accedi{margin:14px 0;text-align:center;color:var(--marchio);font-weight:600}
.pre-accedi a{color:inherit;text-decoration:underline}
/* Tabella dei livelli nelle condizioni di prenotazione: livello a sinistra, il resto centrato, colonne ben distribuite */
#prePan .pre-liv .pre-nm,#prePan .pre-liv.pre-tit span:first-child{text-align:left}
#prePan .pre-liv.pre-tit span,#prePan .pre-liv .pre-pz,#prePan .pre-liv .pre-qd,#prePan .pre-liv .pre-no{text-align:center}
#prePan .pre-liv .pre-pz,#prePan .pre-liv .pre-qd,#prePan .pre-liv .pre-no,#prePan .pre-liv .pre-mx{justify-self:center}
@media(min-width:621px){
  #prePan .pre-sola .pre-liv,#prePan .pre-sola .pre-liv.sua{grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr) minmax(0,.7fr) minmax(0,1.6fr);column-gap:16px}
  #prePan .pre-sola .pre-liv.pre-tit span:nth-child(5){display:none}
}
.pre-verde{color:var(--ok)}
.pre-rosso{color:#b42318}
/* «Accedi» e «registrati»: link azzurri */
.pre-accedi{color:var(--ink);font-weight:500}
.pre-accedi a,.pre-ospite .nota-liv a{color:var(--marchio);font-weight:700;text-decoration:underline}
/* «La tua prenotazione»: carattere ridotto */
:is(#prePan,#ordPan).pre-cart .cart-testa h2{font-size:1rem}
:is(#prePan,#ordPan).pre-cart .cart-testa button{font-size:.8125rem}
:is(#prePan,#ordPan).pre-cart .cart-riga{gap:12px;padding:12px 0}
:is(#prePan,#ordPan).pre-cart .cart-nome{font-size:.8125rem;line-height:1.3}
:is(#prePan,#ordPan).pre-cart .cart-riga small,:is(#prePan,#ordPan).pre-cart .cart-riga .cart-pu{font-size:.75rem}
:is(#prePan,#ordPan).pre-cart .cart-sub{font-size:.8125rem}
:is(#prePan,#ordPan).pre-cart .cart-piede{padding:14px 18px 18px;gap:8px;font-size:.75rem}
:is(#prePan,#ordPan).pre-cart .cart-tot{font-size:.9375rem}
:is(#prePan,#ordPan).pre-cart .cart-tot b{font-size:1.25rem}
:is(#prePan,#ordPan).pre-cart .cart-piede .pg,:is(#prePan,#ordPan).pre-cart .cart-piede p{font-size:.75rem}
:is(#prePan,#ordPan).pre-cart .ac-opz b{font-size:.875rem}
:is(#prePan,#ordPan).pre-cart .ac-opz small{font-size:.6875rem;line-height:1.35}
:is(#prePan,#ordPan).pre-cart .cart-piede .pre-dopo{font-size:.75rem}
/* «La tua prenotazione»: la quantità sta sotto il prezzo, a destra */
:is(#prePan,#ordPan).pre-cart .cart-dx{display:grid;justify-items:end;gap:8px}
:is(#prePan,#ordPan).pre-cart .cart-dx .cart-q{margin-top:0}
:is(#prePan,#ordPan).pre-cart .cart-dx .cart-q button{min-width:30px;height:30px}
:is(#prePan,#ordPan).pre-cart .cart-dx .cart-q{border:1.5px solid color-mix(in srgb,var(--marchio) 35%,transparent);border-radius:10px;padding:2px;gap:4px;background:#fff}
:is(#prePan,#ordPan).pre-cart .cart-dx .cart-q button{background:transparent}
:is(#prePan,#ordPan).pre-cart .cart-dx .cart-q button:hover:not(:disabled){background:var(--soft)}
:is(#prePan,#ordPan).pre-cart .cart-sub{font-size:1rem}
/* Spunta di accettazione delle condizioni di prenotazione */
.pre-accetta{display:flex;align-items:center;gap:10px;margin:12px 0;font-size:.8125rem;font-weight:600;cursor:pointer}
.pre-accetta input{flex:0 0 auto;width:18px;height:18px;margin:0;accent-color:var(--marchio)}
/* Carrello: selettore della quantità sotto il prezzo, a destra, come nella prenotazione */
.cart-dx{display:grid;justify-items:end;gap:8px}
.cart-dx .cart-q{margin-top:0;border:1.5px solid color-mix(in srgb,var(--marchio) 35%,transparent);border-radius:10px;padding:2px;gap:4px;background:#fff}
.cart-dx .cart-q button{background:transparent;min-width:30px;height:30px}
.cart-dx .cart-q button:hover:not(:disabled){background:var(--soft)}
.cart-q-rim{margin-top:2px}
.cart-q-rim .cart-togli{margin-left:0;padding:0}
/* Carrello: carattere ridotto come in «La tua prenotazione» */
#cartPan .cart-testa h2{font-size:1rem}
#cartPan .cart-testa button{font-size:.8125rem}
#cartPan .cart-riga{gap:12px;padding:12px 0}
#cartPan .cart-nome{font-size:.8125rem;line-height:1.3}
#cartPan .cart-riga small,#cartPan .cart-riga .pg{font-size:.75rem}
#cartPan .cart-sub{font-size:1rem}
#cartPan .cart-togli{font-size:.75rem}
#cartPan .cart-piede{padding:14px 18px 18px;gap:8px;font-size:.75rem}
#cartPan .cart-tot{font-size:.9375rem}
#cartPan .cart-tot b{font-size:1.25rem}
#cartPan .cart-piede .pg,#cartPan .cart-piede p{font-size:.75rem}
#cartPan .cart-piede .btn{font-size:.875rem}
/* Condizioni nel carrello (ordine): stessa resa compatta della prenotazione */
#ordPan .pre-box{gap:8px}
#ordPan .pre-avviso{background:var(--bg);border:2px solid var(--marchio);border-radius:10px;padding:10px 16px;gap:5px;font-size:.75rem;line-height:1.4;text-align:left}
#ordPan .pre-avviso h4{margin:0;font-size:.8125rem;font-weight:800;color:var(--marchio)}
#ordPan .pre-avviso p,#ordPan .pre-avviso p:nth-child(2),#ordPan .pre-avviso p:nth-child(3){margin:0;padding:0;background:none;border-radius:0;text-align:left}

/* Carrello: «Ordine inviato» con carattere ridotto */
#cartPan .cart-ok{gap:10px;padding:18px 0}
#cartPan .cart-ok h3{font-size:1.25rem}
#cartPan .cart-ok p{font-size:.8125rem;line-height:1.45}
#cartPan .cart-ok .btn{font-size:.875rem;padding:11px 18px}
#cartPan .cart-link{font-size:.75rem}

/* Dati di spedizione (prenotazione e ordine): carattere ridotto in etichette, campi e note */
.pre-sped .ac-fg label{font-size:.75rem}
.pre-sped .ac-fg input{font-size:.8125rem;padding:8px 10px}
.pre-sped>p.nota{font-size:.75rem;line-height:1.4}
.pre-sped .pre-req{font-size:.6875rem}
.no-acq #cartBtn,.no-acq #cartPan{display:none!important}

/* Prodotti disponibili: stesso riquadro dei prodotti in prenotazione — due colonne uguali, a sinistra prezzo e
   disponibilità al centro, a destra quantità e «Aggiungi al carrello» separati da una linea */
.scheda-acq:has(>.acq){grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:0}
.scheda-acq:has(>.acq)>.scheda-pr,.scheda-acq:has(>.acq)>.qta{padding-right:24px}
.scheda-acq:has(>.acq)>.scheda-pr{align-items:center;justify-content:center;text-align:center}
.scheda-acq:has(>.acq)>.qta{text-align:center;justify-self:stretch}
.scheda-acq>.acq{grid-column:2;grid-row:1/span 3;justify-self:stretch;align-self:stretch;margin:0;display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:10px;padding-left:24px;border-left:1px solid color-mix(in srgb,var(--marchio) 25%,transparent)}
.scheda-acq>.acq .btn-acq{width:auto;flex:0 0 auto;align-self:center;margin:0}
@media(max-width:700px){
  .scheda-acq:has(>.acq){grid-template-columns:1fr}
  .scheda-acq:has(>.acq)>.scheda-pr,.scheda-acq:has(>.acq)>.qta{padding-right:0}
  .scheda-acq>.acq{grid-column:1;grid-row:auto;padding-left:0;border-left:0;border-top:1px solid color-mix(in srgb,var(--marchio) 25%,transparent);padding-top:14px;margin-top:8px}
  .scheda-acq>.acq .btn-acq{flex:1}
}
.cd-sotto{text-align:center}

/* Esaurito con modulo avviso: due colonne come i preordini (prezzo e stato a sinistra, email a destra) */
.scheda-acq:has(>.avv-mail){grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:0}
.scheda-acq:has(>.avv-mail)>.scheda-pr{padding-right:24px;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.scheda-acq>.avv-mail{grid-column:2;grid-row:1;align-self:stretch;justify-content:center;padding-left:24px;border-left:1px solid color-mix(in srgb,var(--marchio) 25%,transparent)}
@media(max-width:700px){
  .scheda-acq:has(>.avv-mail){grid-template-columns:1fr}
  .scheda-acq:has(>.avv-mail)>.scheda-pr{padding-right:0}
  .scheda-acq>.avv-mail{grid-column:1;grid-row:auto;padding-left:0;border-left:0;border-top:1px solid color-mix(in srgb,var(--marchio) 25%,transparent);padding-top:14px;margin-top:8px}
}
.pros-sb.tuo{color:var(--ink);font-weight:600;background:color-mix(in srgb,var(--marchio) 12%,transparent);border-radius:6px;padding:2px 6px;margin-left:-6px}
.pros-sb.tuo b{color:var(--marchio)}
/* Tutti i timer in verde */
.pros-cd,.pros-cd.on,.usc-cd,.usc-cd.on,.cd-tempo,.cd-tempo.on{color:var(--ok)}

#formLogin .dim-link{margin:-6px 0 0;text-align:right;font-size:var(--small)}
#formLogin .dim-link button,#formDim .reg-link button{background:none;color:var(--marchio);padding:0;font-weight:600;text-decoration:underline;cursor:pointer;border:0}
#formDim .reg-nota,#formReset .reg-nota{margin:0;font-size:var(--small);color:var(--ink-2,inherit)}

/* Card dei giochi: da telefono sempre due per riga */
@media(max-width:560px){
  .giochi-home{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .giochi-home .gioco-card{padding:12px;min-height:84px}
  .giochi-home .gioco-card.con-img{min-height:104px}
}

/* Scheda prodotto da telefono e tablet stretto: foto sopra e riquadro sotto, a tutta larghezza (le regole a due colonne più sopra non devono vincere) */
@media(max-width:860px){
  .scheda{grid-template-columns:minmax(0,1fr)}
  .scheda-foto{max-width:320px;margin-inline:auto;position:static}
  .scheda-info{min-width:0}
}

/* Timer «Esce tra…» centrato nel riquadro della scheda prodotto */
.scheda-acq .usc-cd{display:block;text-align:center;justify-self:stretch;margin-left:0;margin-right:0}

/* «Lascia la tua email e ti avvisiamo…»: tutto su una riga, il carattere si adatta alla larghezza */
.avv-mail>.nota{white-space:nowrap;font-size:clamp(.6875rem,3.4vw,1rem);text-align:center}
@media(min-width:861px){.avv-mail>.nota{white-space:normal;font-size:var(--body);text-align:left}}

/* «Gli acquisti online sono temporaneamente sospesi.»: prima frase su una riga, il carattere si adatta alla larghezza */
.nota-sosp{text-align:center}
.nota-sosp span{display:block;white-space:nowrap}
.nota-sosp span:first-child{font-size:clamp(.6875rem,3.4vw,1rem)}
@media(min-width:861px){.nota-sosp{text-align:left}.nota-sosp span{white-space:normal}.nota-sosp span:first-child{font-size:inherit}}

/* Disponibilità a parole: rosso (ultimi pezzi), giallo (limitata), verde (ampia) */
.q-ult{color:#c62828}
.q-lim{color:#b7791f}
.q-amp{color:#15803d}
.qta b{font-weight:700}

/* Pulsante «Filtri» da telefono: più basso e con carattere più piccolo */
@media(max-width:900px){
  .filtri{padding:10px 14px;gap:12px;border-radius:12px}
  .filtri-tit{font-size:.9375rem;line-height:1.2}
}
