/* =====================================================================
   WEEEK 1.0 — sistema di stile
   Idea: una rivista di viaggio settimanale, aggiornata e leggera.
   Bodoni Moda solo per i nomi delle mete e i numeri importanti,
   Schibsted Grotesk per tutto il resto. Un solo colore forte: corallo.
   ===================================================================== */
@font-face{font-family:"Bodoni";src:url(../fonts/bodoni-moda.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Schibsted";src:url(../fonts/schibsted-grotesk.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Bodoni-fb";src:local("Didot"),local("Bodoni 72"),local("Georgia");size-adjust:96%}
@font-face{font-family:"Schibsted-fb";src:local("Helvetica Neue"),local("Arial");size-adjust:101%}

:root{
  --carta:#FAF7F2; --carta-2:#F1ECE3; --carta-3:#E6DFD3; --superficie:#FFFFFF;
  --inchiostro:#161514; --inchiostro-2:#45413C; --inchiostro-3:#6B645A;
  --corallo:#C2412A; --su-corallo:#FFFFFF; --corallo-tenue:rgba(194,65,42,.1);
  --verde-strada:#0B6B3A; --blu-strada:#1F4E8C; --ok:#1E6B45;
  --filo:rgba(22,21,20,.13); --punto:rgba(22,21,20,.2);
  --ombra:0 1px 0 var(--filo),0 14px 34px -16px rgba(22,21,20,.28);
  --serif:"Bodoni","Bodoni-fb",Georgia,serif;
  --sans:"Schibsted","Schibsted-fb",system-ui,-apple-system,sans-serif;
  --out:cubic-bezier(.23,1,.32,1); --inout:cubic-bezier(.77,0,.175,1);
  --gutter:20px; --raggio:18px; --raggio-s:12px;
  --safe-b:env(safe-area-inset-bottom,0px); --safe-t:env(safe-area-inset-top,0px);
  color-scheme:light;
}
:root[data-theme="dark"]{
  --carta:#121110; --carta-2:#1C1A18; --carta-3:#2A2724; --superficie:#1C1A18;
  --inchiostro:#F2EEE8; --inchiostro-2:#CEC8BE; --inchiostro-3:#A39C91;
  --corallo:#FF7A5C; --su-corallo:#1A0D08; --corallo-tenue:rgba(255,122,92,.14);
  --verde-strada:#0E7A43; --blu-strada:#2A5EA6; --ok:#7FD1A2;
  --filo:rgba(242,238,232,.14); --punto:rgba(242,238,232,.22);
  --ombra:0 0 0 1px var(--filo),0 16px 40px -16px rgba(0,0,0,.6);
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --carta:#121110; --carta-2:#1C1A18; --carta-3:#2A2724; --superficie:#1C1A18;
    --inchiostro:#F2EEE8; --inchiostro-2:#CEC8BE; --inchiostro-3:#A39C91;
    --corallo:#FF7A5C; --su-corallo:#1A0D08; --corallo-tenue:rgba(255,122,92,.14);
    --verde-strada:#0E7A43; --blu-strada:#2A5EA6; --ok:#7FD1A2;
    --filo:rgba(242,238,232,.14); --punto:rgba(242,238,232,.22);
    --ombra:0 0 0 1px var(--filo),0 16px 40px -16px rgba(0,0,0,.6);
    color-scheme:dark;
  }
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:80px;background:var(--carta)}
body{margin:0;min-height:100dvh;background:var(--carta);color:var(--inchiostro);font:400 16px/1.55 var(--sans);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-kerning:normal;-webkit-tap-highlight-color:transparent}
img{display:block;max-width:100%;color:transparent}
::selection{background:var(--corallo);color:var(--su-corallo)}
input{caret-color:var(--corallo)}
:root{accent-color:var(--corallo)}
img.attesa{visibility:hidden}
a{color:inherit}
button,input,select{font:inherit;color:inherit}
button{background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,p{margin:0}
svg.s{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:square;stroke-linejoin:miter}
:focus-visible{outline:2px solid var(--corallo);outline-offset:3px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:1180px;margin:0 auto;padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px))}
.num{font-variant-numeric:tabular-nums lining-nums}
[hidden]{display:none!important}
#vista{outline:none;min-height:70vh}
.salta{position:absolute;left:12px;top:-60px;z-index:100;background:var(--inchiostro);color:var(--carta);padding:10px 14px;border-radius:10px;font-weight:600}
.salta:focus{top:12px}

/* ---------- Testata ---------- */
.testata{position:sticky;top:0;z-index:30;background:var(--carta);padding-top:var(--safe-t);transition:box-shadow .2s var(--out)}
.testata.su{box-shadow:0 1px 0 var(--filo)}
.testata-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:60px}
.marchio{display:flex;align-items:baseline;gap:10px;min-height:44px;padding-top:8px;text-decoration:none;color:var(--inchiostro)}
.marchio-scritta{height:27px;width:auto;display:block;transform:translateY(3px)}
.marchio-num{font:600 13px/1 var(--sans);color:var(--inchiostro-3)}
.azioni{display:flex;gap:2px}
.tasto-ic{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;transition:background .15s var(--out),transform .12s var(--out)}
.tasto-ic:active{transform:scale(.94)}
.tasto-ic[aria-pressed="true"] svg{fill:var(--corallo);stroke:var(--corallo)}
@media (hover:hover) and (pointer:fine){.tasto-ic:hover{background:var(--carta-2)}}
.nav-desk{display:none}

/* ---------- Il tuo viaggio (profilo) ---------- */
.profilo{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:4px 0 14px;margin:0 calc(var(--gutter)*-1);padding-left:var(--gutter);padding-right:var(--gutter);scroll-padding:0 var(--gutter)}
.profilo::-webkit-scrollbar{display:none}
.gettone{display:inline-flex;align-items:center;gap:7px;flex:none;min-height:44px;padding:0 14px 0 11px;border-radius:999px;
  background:var(--superficie);box-shadow:0 0 0 1px var(--filo);font-size:14px;font-weight:600;white-space:nowrap;transition:box-shadow .15s var(--out),transform .12s var(--out)}
.gettone svg{width:18px;height:18px;color:var(--corallo)}
.gettone:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.gettone:hover{box-shadow:0 0 0 1.5px var(--inchiostro)}}
.profilo-titolo{font-size:13px;font-weight:600;color:var(--inchiostro-3);margin:6px 0 8px}

/* ---------- Bottoni e segnali ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;
  font:700 16px/1 var(--sans);text-decoration:none;transition:transform .12s var(--out),background .2s var(--out),box-shadow .2s var(--out);white-space:nowrap}
.btn:active{transform:scale(.97)}
.btn svg{transition:transform .2s var(--out)}
.btn-pieno{background:var(--corallo);color:var(--su-corallo)}
.btn-scuro{background:var(--inchiostro);color:var(--carta)}
.btn-filo{box-shadow:inset 0 0 0 1.5px var(--inchiostro)}
.btn-tondo{width:52px;padding:0}
.btn-tondo[aria-pressed="true"] svg{fill:var(--corallo);stroke:var(--corallo)}
.btn-piccolo{min-height:44px;padding:0 18px;font-size:15px}
@media (hover:hover) and (pointer:fine){.btn-pieno:hover svg,.btn-scuro:hover svg{transform:translateX(3px)}}
.segnali{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cartello{display:inline-flex;align-items:center;gap:7px;background:var(--verde-strada);color:#fff;font:700 14px/1 var(--sans);
  padding:8px 11px 8px 9px;border-radius:6px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.85),inset 0 0 0 3px var(--verde-strada)}
.cartello svg{width:17px;height:17px;stroke-width:1.8}
.cartello.blu{background:var(--blu-strada);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.85),inset 0 0 0 3px var(--blu-strada)}
.etichetta{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--inchiostro-2);padding:6px 2px}
.etichetta svg{width:18px;height:18px;color:var(--corallo)}

/* ---------- Copertina ---------- */
.riga-numero{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;justify-content:space-between;padding:12px 0 10px;
  border-top:1px solid var(--filo);font-size:14px;color:var(--inchiostro-2)}
.riga-numero b{font-weight:700;color:var(--inchiostro)}
.copertina{padding:6px 0 48px}
.cop-foto{display:block;position:relative;aspect-ratio:4/3;background:var(--carta-3);overflow:hidden;border-radius:24px}
.cop-foto img{position:relative;width:100%;height:100%;object-fit:cover}
.didascalia{font-size:12px;color:var(--inchiostro-3);margin-top:8px;text-align:right;min-height:18px}
.occhiello{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:18px 0 8px;font-size:14px;color:var(--inchiostro-2)}
.occhiello svg{width:18px;height:18px;color:var(--corallo)}
.occhiello em{font:700 15px/1 var(--sans);font-style:normal;color:var(--corallo)}
.titolone{font:600 clamp(3rem,14vw,7rem)/.92 var(--serif);letter-spacing:-.025em;margin:0 0 16px;text-wrap:balance}
.sottonome{display:block;font:600 max(.3em,1.05rem)/1.2 var(--sans);letter-spacing:-.015em;color:var(--inchiostro-2);margin-top:.35em}
.attacco{font-size:1.1rem;line-height:1.5;color:var(--inchiostro-2);margin:0 0 20px;max-width:40ch;text-wrap:pretty}
.cop-costo{display:flex;align-items:baseline;gap:10px;margin:20px 0 22px}
.cop-costo b{font:600 2.2rem/1 var(--serif)}
.cop-costo span{font-size:14px;color:var(--inchiostro-2)}
.cta{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* ---------- Sezioni ---------- */
.sez{padding-block:48px;border-top:1px solid var(--filo)}
.sez-testa{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px}
.sez-titolo{font:700 clamp(1.7rem,6.4vw,2.6rem)/1.05 var(--sans);letter-spacing:-.03em;text-wrap:balance}
.sez-nota{margin-top:8px;color:var(--inchiostro-2);font-size:15px;max-width:46ch}
.link-tutte{display:inline-flex;align-items:center;min-height:44px;font-weight:700;font-size:15px;white-space:nowrap;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px}
.nota-allarga{display:flex;gap:8px;align-items:flex-start;background:var(--corallo-tenue);border-radius:var(--raggio-s);padding:12px 14px;font-size:14px;margin-bottom:16px}
.nota-allarga svg{width:18px;height:18px;color:var(--corallo);margin-top:1px}

/* Elenco a indice (sommario) */
.sommario{list-style:none;margin:0;padding:0}
.voce{border-top:1px solid var(--filo)}
.sommario > .voce:last-child{border-bottom:1px solid var(--filo)}
.voce > a{display:grid;grid-template-columns:1.7rem minmax(0,1fr) 92px;gap:14px;align-items:center;padding:16px 0;text-decoration:none}
.voce.senza-num > a{grid-template-columns:minmax(0,1fr) 92px}
.voce-n{font:700 15px/1 var(--sans);color:var(--corallo);align-self:start;padding-top:7px}
.voce-zona{font-size:12.5px;font-weight:700;color:var(--inchiostro-3);margin-bottom:4px;display:flex;gap:6px;align-items:center}
.voce-nome{font:600 1.5rem/1.06 var(--serif);letter-spacing:-.01em;margin:0 0 7px;text-wrap:balance}
.voce-dati{display:flex;flex-wrap:wrap;gap:3px 12px;font-size:14px;color:var(--inchiostro-2)}
.voce-dati span{display:inline-flex;align-items:center;gap:5px}
.voce-dati svg{width:16px;height:16px}
.voce-dati b{color:var(--inchiostro);font-weight:700}
.voce-foto{position:relative;width:92px;aspect-ratio:1;background:var(--carta-3);overflow:hidden;border-radius:16px;transition:transform .15s var(--out)}
.voce-foto img{position:relative;width:100%;height:100%;object-fit:cover}
.voce > a:active .voce-foto{transform:scale(.97)}
.segnaposto{position:absolute;inset:0;display:grid;place-items:center;color:var(--inchiostro-3)}
.segnaposto svg{width:40%;height:40%;stroke-width:1.2}
@media (hover:hover) and (pointer:fine){.voce > a:hover .voce-nome{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}}

/* Rubriche e Oltre confine */
.binario{display:grid;grid-auto-flow:column;grid-auto-columns:72%;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
  margin:0 calc(var(--gutter)*-1);padding:0 var(--gutter) 6px;scroll-padding:0 var(--gutter);scrollbar-width:none}
.binario::-webkit-scrollbar{display:none}
.scheda{scroll-snap-align:start;text-decoration:none;display:block}
.scheda-foto{position:relative;aspect-ratio:4/5;background:var(--carta-3);overflow:hidden;border-radius:var(--raggio)}
.scheda-foto img{position:relative;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--out)}
@media (hover:hover) and (pointer:fine){.scheda:hover .scheda-foto img{transform:scale(1.03)}}
.scheda-titolo{display:flex;align-items:center;gap:8px;font:700 1.12rem/1.2 var(--sans);letter-spacing:-.02em;margin:12px 0 3px}
.scheda-titolo svg{width:20px;height:20px;color:var(--corallo)}
.scheda-titolo.serif{font:600 1.45rem/1.1 var(--serif);letter-spacing:-.01em}
.scheda-nota{font-size:14px;color:var(--inchiostro-2)}
.scheda-badge{position:absolute;left:10px;bottom:10px;display:inline-flex;gap:6px;align-items:center;background:var(--superficie);color:var(--inchiostro);
  font:700 13px/1 var(--sans);padding:8px 10px;border-radius:999px}
.scheda-badge svg{width:15px;height:15px;color:var(--corallo)}

/* Fin dove arrivi */
.raggio{display:grid;gap:22px}
.scelta{display:inline-grid;grid-auto-flow:column;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--inchiostro);padding:3px;position:relative;max-width:100%}
.scelta button{position:relative;z-index:1;min-height:44px;padding:0 16px;border-radius:999px;font-weight:700;font-size:15px;transition:color .2s var(--out);white-space:nowrap}
.scelta button[aria-checked="true"]{color:var(--carta)}
.scelta .cursore{position:absolute;z-index:0;top:3px;bottom:3px;border-radius:999px;background:var(--inchiostro);transition:left .3s var(--out),width .3s var(--out)}
.mappa-raggio{width:100%;max-width:560px;aspect-ratio:1;justify-self:center;overflow:hidden}
.mappa-raggio .p{fill:var(--punto);transition:fill .35s var(--out)}
.mappa-raggio .p.in{fill:var(--corallo)}
.mappa-raggio .p.eu{fill:none;stroke:var(--punto);stroke-width:1.4}
.mappa-raggio .p.eu.in{stroke:var(--corallo);fill:var(--corallo-tenue)}
.mappa-raggio .casa{fill:var(--inchiostro)}
.mappa-raggio .alone{fill:none;stroke:var(--inchiostro);stroke-width:1;opacity:.35}
.mappa-raggio text{font:700 12px var(--sans);fill:var(--inchiostro-2)}
.raggio-conto{font:600 clamp(2.4rem,10vw,3.8rem)/1 var(--serif);margin-top:22px}
.raggio-conto small{display:block;font:400 16px/1.5 var(--sans);color:var(--inchiostro-2);margin-top:8px}
.raggio-lista{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px}
.raggio-lista a{display:inline-flex;align-items:center;min-height:44px;font:600 1rem/1.3 var(--sans);text-decoration:underline;text-decoration-color:var(--filo);text-underline-offset:5px}
.legenda{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--inchiostro-2);margin-top:14px}
.legenda span{display:inline-flex;gap:6px;align-items:center}
.legenda i{width:10px;height:10px;border-radius:50%;background:var(--corallo);display:inline-block}
.legenda i.eu{background:var(--corallo-tenue);box-shadow:inset 0 0 0 1.4px var(--corallo)}

/* Invito al quiz */
.invito{background:var(--inchiostro);color:var(--carta);border-radius:26px;padding:36px 24px}
.invito h2{font:600 clamp(2.3rem,10vw,4.2rem)/.96 var(--serif);letter-spacing:-.02em;margin:0 0 14px;text-wrap:balance}
.invito p{margin:0 0 24px;opacity:.82;max-width:40ch}
.invito .btn-pieno{background:var(--carta);color:var(--inchiostro)}

.colofone{padding-top:40px;padding-bottom:calc(130px + var(--safe-b));border-top:1px solid var(--filo);font-size:14px;color:var(--inchiostro-2);display:grid;gap:8px}
.colofone svg.marchio-scritta{height:24px;color:var(--inchiostro);margin-bottom:6px}
.colofone a{font-weight:600}

/* ---------- Barra in basso ---------- */
.barra{position:fixed;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(10px + var(--safe-b));z-index:40;
  background:var(--superficie);border-radius:24px;box-shadow:var(--ombra);display:grid;grid-template-columns:repeat(4,1fr);padding:4px 6px;
  transition:transform .3s var(--out)}
.barra a{position:relative;display:grid;justify-items:center;gap:2px;padding:7px 0 6px;font-size:12px;font-weight:700;text-decoration:none;color:var(--inchiostro-2);border-radius:18px}
.barra a[aria-current="page"]{color:var(--corallo)}
.barra a[aria-current="page"] svg{stroke-width:1.9}
.barra svg{transition:transform .12s var(--out)}
.barra a:active svg{transform:scale(.88)}
.conta{position:absolute;top:3px;left:calc(50% + 6px);min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--corallo);color:var(--su-corallo);font:700 11px/18px var(--sans);text-align:center}
body.in-meta .barra{transform:translateY(140%)}

/* ---------- Esplora ---------- */
.cerca{display:flex;align-items:center;gap:10px;background:var(--superficie);box-shadow:0 0 0 1px var(--filo);border-radius:16px;padding:0 14px;min-height:52px;margin-bottom:14px}
.cerca:focus-within{box-shadow:0 0 0 2px var(--inchiostro)}
.cerca input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:16px;padding:12px 0}
.cerca svg{color:var(--inchiostro-3)}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--gutter)*-1) 14px;padding:2px var(--gutter)}
.chips::-webkit-scrollbar{display:none}
.chip{display:inline-flex;align-items:center;gap:6px;flex:none;min-height:44px;padding:0 14px;border-radius:999px;font-size:14px;font-weight:600;
  box-shadow:inset 0 0 0 1px var(--filo);background:var(--superficie);transition:background .15s var(--out),color .15s var(--out)}
.chip svg{width:18px;height:18px;color:var(--corallo)}
.chip[aria-pressed="true"]{background:var(--inchiostro);color:var(--carta);box-shadow:none}
.chip[aria-pressed="true"] svg{color:inherit}
.barra-filtri{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px}
.selettore{position:relative;display:inline-flex;align-items:center;min-height:44px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--filo);background:var(--superficie);padding:0 36px 0 14px;font-size:14px;font-weight:600}
.selettore select{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:16px}
.selettore svg{position:absolute;right:12px;width:16px;height:16px}
.conteggio{margin-left:auto;font-size:14px;color:var(--inchiostro-2)}
.vuoto{text-align:center;padding:48px 16px;color:var(--inchiostro-2);display:grid;gap:10px;justify-items:center}
.vuoto svg{width:44px;height:44px;color:var(--corallo);stroke-width:1.2}
.vuoto b{font:600 1.5rem/1.2 var(--serif);color:var(--inchiostro)}

/* ---------- Pagina meta ---------- */
.meta-testa{position:sticky;top:var(--safe-t);z-index:30;background:var(--carta);display:flex;align-items:center;justify-content:space-between;gap:8px;height:60px;
  margin:0 calc(var(--gutter)*-1);padding:0 calc(var(--gutter) - 10px)}
.meta-testa .piccolo{font:600 19px/1 var(--serif);opacity:0;transform:translateY(6px);transition:opacity .2s var(--out),transform .2s var(--out);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1;text-align:center}
.meta-testa.titolo-su .piccolo{opacity:1;transform:none}
.meta-testa.titolo-su{box-shadow:0 1px 0 var(--filo)}
.indietro{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;font-weight:700;font-size:15px;text-decoration:none;white-space:nowrap}
body.in-meta .testata{display:none}
.m-foto{position:relative;aspect-ratio:4/5;background:var(--carta-3);overflow:hidden;border-radius:24px}
.m-foto img{position:relative;width:100%;height:100%;object-fit:cover}
.m-temi{display:flex;flex-wrap:wrap;gap:4px 14px;margin:20px 0 8px;font-size:14px;font-weight:600;color:var(--inchiostro-2)}
.m-temi span{display:inline-flex;align-items:center;gap:5px}
.m-temi svg{width:18px;height:18px;color:var(--corallo)}
.m-regione{font-size:1.05rem;font-weight:500;color:var(--inchiostro-2);margin:0 0 18px}
.avvisi{list-style:none;margin:18px 0 0;padding:14px 16px;border-radius:var(--raggio-s);background:var(--carta-2);display:grid;gap:6px;font-size:14px}
.avvisi li{display:flex;gap:8px;align-items:flex-start}
.avvisi svg{width:18px;height:18px;color:var(--corallo);margin-top:1px}
.capitolo{padding:32px 0 0;margin-top:32px;border-top:1px solid var(--filo)}
.capitolo h2{font:700 1.45rem/1.1 var(--sans);letter-spacing:-.025em;margin:0 0 6px}
.capitolo .sotto{color:var(--inchiostro-2);font-size:15px;margin-bottom:18px}
.capitolo h2 + :not(.sotto){margin-top:16px}
.corpo{font-size:17.5px;line-height:1.6;max-width:62ch}
.tre{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.tre li{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px}
.segno{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:var(--carta-2);color:var(--corallo)}
.segno svg{width:24px;height:24px}
.tre b{display:block;font:700 1.08rem/1.25 var(--sans);letter-spacing:-.01em;margin:2px 0 3px}
.tre span{color:var(--inchiostro-2)}
/* come arrivi */
.mezzi{display:grid;gap:10px}
.mezzo{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border-radius:var(--raggio);background:var(--superficie);box-shadow:0 0 0 1px var(--filo)}
.mezzo.top{box-shadow:0 0 0 2px var(--inchiostro)}
.mezzo-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--carta-2)}
.mezzo b{display:block;font-weight:700}
.mezzo span{font-size:14px;color:var(--inchiostro-2)}
.mezzo .ore{font:600 1.35rem/1 var(--serif);text-align:right;white-space:nowrap}
.mezzo .ore small{display:block;font:500 13px/1.4 var(--sans);color:var(--inchiostro-2)}
.migliore-tag{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--corallo);margin-bottom:2px}
.orario{display:grid;gap:26px}
.giorno h3{font:700 1.1rem/1 var(--sans);margin:0 0 10px;display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.giorno h3 small{font:400 14px var(--sans);color:var(--inchiostro-3)}
.tappa{display:grid;grid-template-columns:62px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid var(--filo)}
.tappa time{font:700 15px/1.5 var(--sans);color:var(--corallo)}
.tappa b{display:block;font-weight:700}
.tappa span{color:var(--inchiostro-2);font-size:15px}
.conto{max-width:480px}
.conto-riga{display:flex;align-items:baseline;gap:8px;padding:6px 0;font-size:17px}
.conto-riga::before{content:"";order:2;flex:1;border-bottom:1.5px dotted var(--inchiostro-3);transform:translateY(-4px)}
.conto-riga span:last-child{order:3;font-variant-numeric:tabular-nums lining-nums;font-weight:600}
.conto-riga.tot{margin-top:6px;padding-top:12px;border-top:1px solid var(--inchiostro);font:600 1.6rem/1 var(--serif)}
.conto-riga.tot::before{border:0}
.conto-riga.tot span:last-child{font-weight:600}
.budget-ok{display:inline-flex;gap:6px;align-items:center;font-size:14px;font-weight:700;margin-top:10px;color:var(--ok)}
.budget-ok.no{color:var(--corallo)}
.budget-ok svg{width:16px;height:16px}
.nota{font-size:14px;color:var(--inchiostro-2);margin-top:12px;max-width:56ch}
.nota a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.bollettino{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:520px}
.bol-giorno{background:var(--superficie);padding:14px;border-radius:16px;box-shadow:0 0 0 1px var(--filo)}
.bol-giorno small{display:block;font-size:13.5px;font-weight:600;color:var(--inchiostro-2);text-transform:capitalize}
.bol-giorno svg{width:42px;height:42px;margin:8px 0;stroke-width:1.3}
.bol-giorno b{font:600 1.7rem/1 var(--serif)}
.bol-giorno span{color:var(--inchiostro-3);margin-left:5px;font-size:14px}
.bol-giorno em{display:block;font-style:normal;font-size:12.5px;color:var(--inchiostro-2);margin-top:4px}
.bol-vuoto{grid-column:1/-1;color:var(--inchiostro-2);font-size:15px}
.prenota{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.prenota a{display:grid;grid-template-columns:44px minmax(0,1fr) 22px;gap:12px;align-items:center;padding:14px;border-radius:var(--raggio);text-decoration:none;
  background:var(--superficie);box-shadow:0 0 0 1px var(--filo);transition:box-shadow .15s var(--out),transform .12s var(--out)}
.prenota a:active{transform:scale(.985)}
@media (hover:hover) and (pointer:fine){.prenota a:hover{box-shadow:0 0 0 1.5px var(--inchiostro)}}
.prenota .p-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--corallo-tenue);color:var(--corallo)}
.prenota b{display:block;font-weight:700}
.prenota span{font-size:14px;color:var(--inchiostro-2)}
.filtri-passati{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.filtri-passati span{font-size:13px;font-weight:600;padding:6px 10px;border-radius:999px;background:var(--carta-2)}
.gyg{min-height:320px;border-radius:var(--raggio);overflow:hidden}
.mappa-mini{aspect-ratio:16/10;background:var(--carta-2);border-radius:var(--raggio);overflow:hidden}
.mappa-mini iframe{width:100%;height:100%;border:0;filter:grayscale(.6) contrast(1.05)}
.legale{font-size:13px;color:var(--inchiostro-3);margin-top:28px;max-width:62ch}
.fondo-meta{height:calc(130px + var(--safe-b))}
.azione-meta{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--superficie);box-shadow:0 -1px 0 var(--filo);
  padding:10px max(var(--gutter),calc((100vw - 1180px)/2 + var(--gutter))) calc(10px + var(--safe-b));display:flex;gap:10px;align-items:center;
  transform:translateY(110%);transition:transform .3s var(--out)}
body.in-meta .azione-meta{transform:none}
.azione-meta .prezzo{margin-right:auto;line-height:1.15;min-width:0}
.azione-meta .prezzo small{display:block;font-size:13px;color:var(--inchiostro-2)}
.azione-meta .prezzo b{font:600 1.5rem/1 var(--serif)}

/* ---------- Foglio (quiz e profilo) ---------- */
.foglio{border:0;padding:0;margin:0;max-width:none;max-height:none;width:100%;height:100%;background:var(--carta);color:var(--inchiostro)}
.foglio::backdrop{background:rgba(10,9,8,.45)}
.foglio[open]{animation:sale .38s var(--out)}
@keyframes sale{from{transform:translateY(24px);opacity:0}}
.foglio-in{min-height:100%;display:flex;flex-direction:column;padding:calc(12px + var(--safe-t)) max(var(--gutter),env(safe-area-inset-right,0px)) calc(20px + var(--safe-b)) max(var(--gutter),env(safe-area-inset-left,0px));max-width:640px;margin:0 auto}
.foglio-testa{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px}
.passo{font-size:14px;font-weight:700;color:var(--inchiostro-3)}
.avanzamento{height:4px;border-radius:2px;background:var(--carta-3);overflow:hidden;margin:8px 0 28px}
.avanzamento i{display:block;height:100%;background:var(--corallo);border-radius:2px;transition:width .4s var(--out)}
.domanda{font:600 clamp(2.3rem,10vw,3.4rem)/1 var(--serif);letter-spacing:-.02em;margin:0 0 8px;text-wrap:balance}
.domanda-nota{color:var(--inchiostro-2);margin-bottom:24px}
.opzioni{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.opzione{display:grid;gap:10px;align-content:start;text-align:left;padding:16px;border-radius:var(--raggio);background:var(--superficie);box-shadow:0 0 0 1px var(--filo);
  min-height:120px;transition:box-shadow .15s var(--out),transform .12s var(--out)}
.opzione:active{transform:scale(.97)}
.opzione svg{width:30px;height:30px;color:var(--corallo);stroke-width:1.4}
.opzione b{display:block;font-weight:700;font-size:16.5px;line-height:1.2}
.opzione span{font-size:13.5px;color:var(--inchiostro-2);line-height:1.35}
.opzione[aria-pressed="true"],.opzione[aria-checked="true"]{box-shadow:0 0 0 2px var(--inchiostro);background:var(--carta-2)}
@media (hover:hover) and (pointer:fine){.opzione:hover{box-shadow:0 0 0 1.5px var(--inchiostro)}}
.blocco{margin-top:24px}
.blocco h3{font-size:15px;font-weight:700;margin:0 0 10px}
.contatore{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:var(--raggio-s);background:var(--superficie);box-shadow:0 0 0 1px var(--filo);margin-bottom:8px}
.contatore b{font-weight:700}
.contatore span.n{font:600 1.4rem/1 var(--serif);min-width:1.6ch;text-align:center}
.contatore .tasti{display:flex;align-items:center;gap:10px}
.contatore button{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px var(--inchiostro)}
.contatore button:disabled{opacity:.3;cursor:default}
.eta{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.eta label{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;padding:6px 6px 6px 12px;border-radius:999px;background:var(--carta-2)}
.eta select{border:0;background:var(--superficie);border-radius:999px;min-height:36px;padding:0 8px}
.foglio-piede{margin-top:auto;padding-top:24px;display:flex;gap:10px;justify-content:space-between;align-items:center}
.foglio .chips{margin:0;padding:2px 0;flex-wrap:wrap;overflow:visible}
.campo{display:grid;gap:6px;margin-bottom:14px}
.campo label{font-size:14px;font-weight:700}
.campo select{min-height:48px;border-radius:var(--raggio-s);border:0;box-shadow:inset 0 0 0 1px var(--filo);background:var(--superficie);padding:0 12px;font-size:16px}

/* ---------- Foglietto (installazione e uscita verso i siti) ---------- */
.foglietto{border:0;padding:0;margin:auto auto 0;width:100%;max-width:none;max-height:calc(100% - 24px);background:var(--carta);color:var(--inchiostro);
  border-radius:24px 24px 0 0;box-shadow:var(--ombra)}
.foglietto::backdrop{background:rgba(10,9,8,.45)}
.foglietto[open]{animation:sale .32s var(--out)}
.foglietto-in{padding:8px max(var(--gutter),env(safe-area-inset-right,0px)) calc(20px + var(--safe-b)) max(var(--gutter),env(safe-area-inset-left,0px));max-width:560px;margin:0 auto}
.foglietto-testa{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px}
.foglietto-testa h2{font-weight:700;font-size:19px;line-height:1.25;letter-spacing:-.01em;text-wrap:balance}
.foglietto-nota{color:var(--inchiostro-2);font-size:15px;margin:0 0 12px;max-width:52ch}
.foglietto-nota b{color:var(--inchiostro)}
.foglietto-piede{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}
.foglietto-piede .btn-pieno{flex:1 1 auto;justify-content:center}
.passi{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.passi li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:start;padding:12px 14px;border-radius:var(--raggio-s);background:var(--superficie);box-shadow:0 0 0 1px var(--filo);font-size:15px}
.passo-n{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--corallo-tenue);color:var(--corallo);font-weight:700}
.s.in-riga{display:inline-block;width:18px;height:18px;vertical-align:-3px;color:var(--corallo)}
.spunta{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14.5px;color:var(--inchiostro-2)}
.spunta input{width:20px;height:20px;margin:0}
.link{display:inline;font-weight:700;text-decoration:underline;text-underline-offset:3px;padding:12px 2px;color:var(--inchiostro)}   /* area di tocco ampia senza alzare la riga */
@media (min-width:760px){.foglietto{margin:auto;width:min(560px,100% - 48px);border-radius:24px}}

/* ---------- Avviso ---------- */
.avviso{position:fixed;left:50%;bottom:calc(96px + var(--safe-b));z-index:60;transform:translate(-50%,16px);opacity:0;pointer-events:none;
  background:var(--inchiostro);color:var(--carta);padding:12px 18px;border-radius:999px;font-size:15px;font-weight:600;transition:opacity .2s var(--out),transform .3s var(--out);max-width:calc(100% - 32px);text-align:center}
.avviso.su{opacity:1;transform:translate(-50%,0)}

/* ---------- Movimento ---------- */
.entra{animation:entra .5s var(--out) both}
@keyframes entra{from{opacity:0;transform:translateY(10px)}}
::view-transition-old(root),::view-transition-new(root){animation-duration:.26s;animation-timing-function:var(--out)}
::view-transition-group(foto),::view-transition-group(titolo){animation-duration:.44s;animation-timing-function:var(--inout)}
::view-transition-image-pair(foto){isolation:auto}
::view-transition-old(foto),::view-transition-new(foto){animation:none;mix-blend-mode:normal;height:100%;object-fit:cover;overflow:clip}

/* ---------- Schermi larghi ---------- */
@media (min-width:760px){
  :root{--gutter:32px}
  .binario{grid-auto-columns:calc((100% - 48px)/3.3)}
  .cop-foto{aspect-ratio:3/2}
  .m-foto{aspect-ratio:2/1}
  .raggio{grid-template-columns:1.1fr 1fr;align-items:center}
  .sommario.due{columns:2;column-gap:44px}
  .sommario.due > .voce{break-inside:avoid}
  .opzioni{grid-template-columns:repeat(2,1fr)}
  .foglio{width:min(680px,100% - 48px);height:auto;max-height:calc(100% - 48px);margin:auto;border-radius:28px;box-shadow:var(--ombra)}
  .foglio-in{min-height:0}
  .invito{padding:56px}
  .bollettino{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:1000px){
  .nav-desk{display:flex;gap:4px}
  .nav-desk a{padding:10px 14px;font-weight:700;font-size:15px;text-decoration:none;border-radius:999px;transition:background .15s var(--out)}
  .nav-desk a[aria-current="page"]{background:var(--inchiostro);color:var(--carta)}
  @media (hover:hover){.nav-desk a:not([aria-current="page"]):hover{background:var(--carta-2)}}
  .barra{display:none}
  .colofone{padding-bottom:48px}
  .copertina-in{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:end}
  .cop-foto{aspect-ratio:auto;height:min(76vh,700px)}
  .titolone{font-size:clamp(3.6rem,5.6vw,6rem)}
  .meta-corpo{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:60px}
  .avviso{bottom:32px}
  body.in-meta .testata{display:block}
  .meta-testa{top:calc(60px + var(--safe-t))}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.12s!important;animation-duration:.12s!important;animation-delay:0s!important}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}
