/* Portale Apprendistato — stile comune (dal prototipo "Manifactura Apprendistato", 27/10/2026).
   Caratteri ospitati sul server (nessuna richiesta a Google Fonts). */
@font-face{font-family:"Archivo";src:url("font/archivo.woff2") format("woff2");font-weight:400 800;font-stretch:100% 125%;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("font/plex-mono-400.woff2") format("woff2");font-weight:400;font-display:swap}

:root{
  --navy:#1C365B;--navy-2:#24426E;--navy-3:#13284A;--steel:#497798;
  --sun:#F5B82E;--sun-ink:#8A5A00;--sun-soft:#FDF1D3;
  --aqua:#22B3A0;--aqua-ink:#0B7064;--aqua-soft:#DDF4F0;
  --lilac:#7C80EE;--lilac-ink:#4B4FC2;--lilac-soft:#E8E9FD;
  --steel-ink:#3A6584;--steel-soft:#E3ECF4;
  --bg:#EEF2F7;--surface:#FFFFFF;--fg:#14233B;--muted:#56677E;--line:#DAE1EB;--soft:#E8EEF5;
  --on-band:#FFFFFF;--on-band-2:rgba(255,255,255,.72);
  --ok:#1C7A4F;--ok-bg:#DFF3E8;--warn:#8F5E00;--warn-bg:#FCEFD2;--bad:#A33A2E;--bad-bg:#F8E3E0;
  --sh1:0 1px 2px rgba(16,32,58,.06),0 10px 28px -14px rgba(16,32,58,.22);
  --sh2:0 2px 6px rgba(16,32,58,.08),0 28px 60px -24px rgba(16,32,58,.38);
  --font:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;
  --r:14px;color-scheme:light
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --steel:#8FB3D4;--sun:#F7C552;--sun-ink:#F7C552;--sun-soft:#3A2E12;--aqua-ink:#5FDCCA;--aqua-soft:#103430;
  --lilac-ink:#B3B6FF;--lilac-soft:#24264F;--steel-ink:#9CC0E0;--steel-soft:#1A2B45;
  --bg:#0B1322;--surface:#142035;--fg:#E7EDF6;--muted:#9AABC2;--line:#25355A;--soft:#1A2A45;
  --ok:#7FD3A6;--ok-bg:#133126;--warn:#F0C26B;--warn-bg:#382B10;--bad:#F09A8E;--bad-bg:#3D1C18;
  --sh1:0 1px 2px rgba(0,0,0,.3),0 12px 30px -14px rgba(0,0,0,.6);--sh2:0 2px 6px rgba(0,0,0,.35),0 30px 60px -24px rgba(0,0,0,.75);
  color-scheme:dark}}
:root[data-theme="dark"]{
  --steel:#8FB3D4;--sun:#F7C552;--sun-ink:#F7C552;--sun-soft:#3A2E12;--aqua-ink:#5FDCCA;--aqua-soft:#103430;
  --lilac-ink:#B3B6FF;--lilac-soft:#24264F;--steel-ink:#9CC0E0;--steel-soft:#1A2B45;
  --bg:#0B1322;--surface:#142035;--fg:#E7EDF6;--muted:#9AABC2;--line:#25355A;--soft:#1A2A45;
  --ok:#7FD3A6;--ok-bg:#133126;--warn:#F0C26B;--warn-bg:#382B10;--bad:#F09A8E;--bad-bg:#3D1C18;color-scheme:dark}

*{box-sizing:border-box}
[hidden]{display:none!important}
html{overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:15px;line-height:1.55;overflow-x:clip}
a{color:inherit}
:focus-visible{outline:2px solid var(--sun);outline-offset:2px}
.wrap{max-width:1120px;margin:0 auto;padding-left:16px;padding-right:16px}
h1{font-stretch:118%;font-weight:800;font-size:clamp(26px,4vw,40px);line-height:1.08;letter-spacing:-.01em;margin:0 0 10px;text-wrap:balance}
h2{font-stretch:110%;font-weight:750;font-size:19px;margin:0 0 12px}
.lede{color:var(--muted);max-width:62ch;margin:0;font-size:16px}
.mono{font-family:var(--mono);font-size:13px}

/* testata delle pagine interne */
header.bar{position:sticky;top:0;z-index:20;background:var(--navy);color:#fff}
header.bar .wrap{display:flex;align-items:center;gap:18px;padding-block:12px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff}
.brand img{height:22px;width:auto;display:block}
.brand span{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--on-band-2);border-left:1px solid rgba(255,255,255,.25);padding-left:10px;line-height:1.2}
.hdr-r{margin-left:auto;display:flex;gap:8px;align-items:center}
.hdr-r a,.hdr-r button{color:#fff;text-decoration:none;font:inherit;font-size:14px;background:rgba(255,255,255,.08);border:0;border-radius:99px;padding:7px 14px;cursor:pointer}
.hdr-r a:hover,.hdr-r button:hover{background:rgba(255,255,255,.16)}
@media (max-width:560px){.brand span{display:none}}

.vh{position:relative;color:var(--on-band);padding-block:40px 92px;margin-bottom:-56px;isolation:isolate}
.vh::before{content:"";position:absolute;inset:0;left:50%;width:100vw;transform:translateX(-50%);z-index:-1;
  background:radial-gradient(560px 300px at 85% 0%,color-mix(in srgb,var(--sun) 50%,transparent),transparent 70%),
             radial-gradient(480px 280px at 8% 100%,color-mix(in srgb,var(--lilac) 45%,transparent),transparent 70%),
             radial-gradient(rgba(255,255,255,.13) 1.2px,transparent 1.3px) 0 0/22px 22px,
             linear-gradient(120deg,var(--navy-3) 0%,var(--navy) 45%,var(--navy-2) 100%);
  clip-path:polygon(0 0,100% 0,100% 82%,0 100%)}
.vh h1{color:#fff}.vh .lede{color:var(--on-band-2)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin-bottom:10px;color:#FBD88A}
.eyebrow::before{content:"";width:18px;height:3px;border-radius:2px;background:currentColor}
main .wrap{padding-bottom:64px}
.panel{position:relative;background:var(--surface);border-radius:var(--r);padding:22px;box-shadow:var(--sh1)}

/* pagine di accesso */
body.accesso{min-height:100vh;display:flex;flex-direction:column;background:var(--navy-3)}
body.accesso::before{content:"";position:fixed;inset:0;z-index:0;
  background:radial-gradient(600px 400px at 15% 20%,color-mix(in srgb,var(--lilac) 45%,transparent),transparent 70%),
             radial-gradient(520px 380px at 85% 85%,color-mix(in srgb,var(--aqua) 40%,transparent),transparent 70%),
             radial-gradient(rgba(255,255,255,.12) 1.2px,transparent 1.3px) 0 0/22px 22px,var(--navy-3)}
body.accesso>*{position:relative;z-index:1}
.login{width:min(440px,100%);margin:0 auto;display:grid;gap:22px;padding:48px 16px;flex:1;align-content:center}
.login.largo{width:min(640px,100%)}
.lhead{color:#fff;text-align:center;display:grid;gap:8px;justify-items:center}
.lhead img{width:180px;height:auto}
.lhead p{margin:0;color:var(--on-band-2);font-size:14px}
.form{background:var(--surface);border-radius:20px;padding:28px;box-shadow:var(--sh2)}
.form h1{font-size:24px;color:var(--fg)}
.tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--soft);border-radius:99px;padding:4px;margin-bottom:20px}
.tabs a{text-align:center;text-decoration:none;padding:8px 14px;color:var(--muted);border-radius:99px;font-weight:600}
.tabs a.on{color:var(--fg);background:var(--surface);box-shadow:var(--sh1)}
.piccolo{font-size:13px;color:var(--muted);text-align:center;margin:14px 0 0}
.piccolo a{color:var(--fg)}

/* moduli */
label{display:block;font-size:13px;font-weight:600;margin:0 0 6px}
.hint{font-size:12.5px;color:var(--muted);margin-top:4px}
input,select,textarea{width:100%;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--steel);box-shadow:0 0 0 3px color-mix(in srgb,var(--steel) 25%,transparent)}
input.mono{font-family:var(--mono)}
.field{margin-bottom:14px}
.fs{border:0;padding:0;margin:0 0 18px;min-width:0}
.fs legend{float:left;width:100%;font-stretch:112%;text-transform:uppercase;font-weight:800;font-size:20px;letter-spacing:.02em;padding:0;margin-bottom:10px}
.fs legend+*{clear:both}
.fs+.fs{border-top:2px dashed var(--line);padding-top:16px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.g3{display:grid;grid-template-columns:100px 1fr 90px;gap:0 12px}
.g2>*,.g3>*{min-width:0}
@media (max-width:520px){.g2,.g3{grid-template-columns:1fr}}
.opt{font-weight:400;color:var(--muted)}
label.chk{font-weight:400;display:flex;gap:10px;align-items:flex-start;font-size:13.5px}
label.chk input{width:auto;margin-top:3px;accent-color:var(--navy)}
.errato input,.errato select,input.errato{border-color:var(--bad);box-shadow:0 0 0 3px color-mix(in srgb,var(--bad) 20%,transparent)}
.errore-campo{color:var(--bad);font-size:12.5px;margin-top:4px}
.btn{display:inline-block;text-decoration:none;font:inherit;font-weight:700;border:1px solid transparent;border-radius:99px;padding:11px 22px;cursor:pointer;background:var(--sun);color:#13284A;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px -10px rgba(16,32,58,.5)}
.btn.pieno{width:100%}
.btn.ghost{background:transparent;color:var(--fg);border-color:var(--line)}

/* messaggi */
.msg{border-radius:12px;padding:12px 14px;font-size:13.5px;margin:0 0 14px}
.msg.ok{background:var(--ok-bg);color:var(--ok)}
.msg.warn{background:var(--warn-bg);color:var(--warn)}
.msg.bad{background:var(--bad-bg);color:var(--bad)}
.msg ul{margin:6px 0 0;padding-left:18px}

/* riepilogo dati */
.kv{display:grid;grid-template-columns:minmax(120px,190px) 1fr;gap:6px 14px;font-size:14px;margin:0}
.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:550;min-width:0;overflow-wrap:anywhere}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;align-items:start}

/* piè di pagina */
footer{color:var(--muted);font-size:12.5px}
footer .wrap{padding-block:22px;display:flex;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line)}
footer .credit{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
footer .credit img{display:block;height:27px;width:auto;background:#fff;padding:4px 8px;border-radius:6px;box-sizing:content-box}
body.accesso footer{color:var(--on-band-2)}
body.accesso footer .wrap{border-top-color:rgba(255,255,255,.15)}
footer a{color:inherit}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Pagine legali (privacy, condizioni) */
.legale{max-width:820px}
.legale h2{font-size:18px;margin:28px 0 8px;color:var(--fg)}
.legale p,.legale li{max-width:72ch}
.legale ul,.legale ol{padding-left:22px}
.legale li{margin:4px 0}
.legale a{color:var(--steel-ink)}
.legale code{font-family:var(--mono);font-size:13px;background:var(--soft);padding:1px 5px;border-radius:5px}
.tab-scroll{overflow-x:auto;margin:12px 0}
.tab-legale{border-collapse:collapse;width:100%;font-size:14px}
.tab-legale th,.tab-legale td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.tab-legale th{background:var(--soft)}
/* Pratiche */
.panel h3{font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:18px 0 8px}
.panel h3:first-of-type{margin-top:4px}
.stato{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.02em;padding:3px 10px;border-radius:99px;white-space:nowrap;vertical-align:middle}
.stato.ok{background:var(--ok-bg);color:var(--ok)}.stato.warn{background:var(--warn-bg);color:var(--warn)}
.stato.bad{background:var(--bad-bg);color:var(--bad)}.stato.info{background:var(--steel-soft);color:var(--steel-ink)}.stato.muted{background:var(--soft);color:var(--muted)}
.vh .stato{margin-left:6px}
.testa-lista{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.testa-lista h2{margin:0}
.pratiche{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.pratiche a{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;text-decoration:none;padding:12px 14px;border:1px solid var(--line);border-radius:12px}
.pratiche a:hover{border-color:var(--steel)}
.p-nome{font-weight:700;min-width:0;overflow-wrap:anywhere}.p-info{grid-column:1;font-size:13px;color:var(--muted);min-width:0;overflow-wrap:anywhere}
.pratiche .stato{grid-column:2;grid-row:1/3}
@media (max-width:480px){.pratiche a{grid-template-columns:1fr}.pratiche .stato{grid-column:1;grid-row:auto;justify-self:start;margin-top:4px}}
.passi{margin:0;padding-left:20px;display:grid;gap:10px;font-size:14px}
.riquadro-titolo{border:2px solid var(--line)!important;border-radius:14px;padding:14px!important}
.riquadro-titolo.mancante,.riquadro-titolo.da_confermare{border-color:var(--bad)!important}
.riquadro-titolo.indicato{border-color:var(--sun)!important}
.riquadro-titolo legend{float:none;width:auto;padding:0 6px;font-size:16px}
.fs+.riquadro-titolo,.riquadro-titolo+.fs{margin-top:18px}
textarea{resize:vertical;min-height:90px}
input[type=file]{padding:8px;background:var(--surface)}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}
.prossimo{margin-top:18px;padding:14px;border-radius:12px;background:var(--soft)}
.prossimo h3{margin-top:0}
details.annulla{margin-top:20px;font-size:13.5px;color:var(--muted)}
details.annulla summary{cursor:pointer}
details.annulla form{display:grid;gap:10px;margin-top:10px;justify-items:start}
/* Carrello e ordini */
.hdr-r .conta{display:inline-block;min-width:20px;padding:0 6px;margin-left:4px;border-radius:99px;background:var(--sun);color:#13284A;font-size:12px;text-align:center}
.righe{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:8px}
.righe li{display:grid;grid-template-columns:1fr auto auto;gap:4px 12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px}
.righe li>div:first-child{min-width:0;overflow-wrap:anywhere}.righe li .hint{display:block;margin-top:2px}
.righe li a{color:var(--steel-ink)}
.importo{font-weight:700;white-space:nowrap}
button.link{background:none;border:0;padding:0;font:inherit;font-size:13px;color:var(--bad);cursor:pointer;text-decoration:underline}
.btn.piccolo-btn{padding:7px 14px;font-size:14px}
@media (max-width:480px){.righe li{grid-template-columns:1fr auto}.righe li>form{grid-column:1/-1}}
.quantita{display:grid;gap:10px;justify-items:start}
.quantita label{display:grid;grid-template-columns:1fr 90px;gap:4px 12px;align-items:center;width:100%;font-weight:600}
.quantita label .opt{grid-column:1;grid-row:2;font-size:12.5px}.quantita input{grid-column:2;grid-row:1/3}
.totali{margin:0 0 6px}.totali .tot{font-size:20px;font-weight:800}
.scelta{margin-bottom:10px}
.voucher{display:grid;gap:8px;margin:0 0 10px 28px}.voucher label{font-weight:600}
.fs.errato{border-left:3px solid var(--bad)!important;padding-left:10px!important}
.in-linea{display:inline-block;margin:0 8px 8px 0}
.prossimo .btn{margin-bottom:8px}
.bonifico dd{font-size:15px}
hr.sep{border:0;border-top:2px dashed var(--line);margin:20px 0}
/* Pannello operatori */
body.pannello .wrap{max-width:1280px}
.pannello-wrap{padding-top:24px}
.titolo-pannello{color:var(--fg);font-size:clamp(24px,3vw,32px)}
nav.menu{display:flex;gap:4px;flex-wrap:wrap}
nav.menu a{color:var(--on-band-2);text-decoration:none;padding:7px 12px;border-radius:99px;font-size:14px}
nav.menu a:hover,nav.menu a[aria-current]{color:#fff;background:rgba(255,255,255,.12)}
.contatori{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 20px}
.contatori>*{background:var(--surface);border-radius:var(--r);box-shadow:var(--sh1);padding:14px 16px;text-decoration:none;color:var(--muted);font-size:13px}
.contatori b{display:block;font-size:28px;color:var(--fg);font-stretch:115%}
.schede{display:grid;gap:16px}
.accredito{display:grid;gap:10px;justify-items:start;margin-top:14px;padding-top:14px;border-top:2px dashed var(--line)}
.accredito label:not(.chk){display:grid;gap:4px;font-weight:600}
.filtri{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:0 0 16px}
.filtri label{display:grid;gap:4px;min-width:220px}
.note-rev{margin:0;padding-left:18px;font-size:13.5px;display:grid;gap:4px}
.messaggi{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px;font-size:14px}
.messaggi li{padding:10px 12px;border-radius:12px;background:var(--soft)}
.messaggi li.operatore{border-left:3px solid var(--steel)}.messaggi li.cliente{border-left:3px solid var(--sun)}
.messaggi li div{margin-top:4px}
.azioni{margin-top:18px}
pre.codici{background:var(--soft);padding:12px;border-radius:10px;font-family:var(--mono);font-size:14px;overflow:auto}

/* ---------- Produzione (pannello): proposta, revisione UC, sezione 8 ---------- */
.grid2.stretta{gap:0 18px;margin:0}
.grid2.stretta .field{margin-bottom:10px}
.anno-uc{border-top:1px solid rgba(0,0,0,.08);margin-top:18px;padding-top:4px}
.ore-prev{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:14px;margin:0 0 10px}
.ore-prev input{width:72px;padding:6px 8px}
.somma{font-size:13px;padding:3px 8px;border-radius:6px}
.somma.ok{background:#e6f4ea;color:#1e6b34}
.somma.bad{background:#fde8e8;color:#9b1c1c}
table.tab-uc{width:100%;border-collapse:collapse;font-size:14px}
table.tab-uc th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:6px;border-bottom:1px solid rgba(0,0,0,.12)}
table.tab-uc td{vertical-align:top;padding:6px;border-bottom:1px solid rgba(0,0,0,.06)}
table.tab-uc td:first-child{min-width:320px;width:55%}
table.tab-uc textarea{width:100%;min-height:64px;font:inherit;padding:6px 8px}
table.tab-uc input[type=number]{width:64px;padding:6px}
table.tab-uc input[type=text]{width:100%;min-width:120px;padding:6px}
#avanzato textarea{width:100%;font-size:12px;line-height:1.4}
.doc-consegnati{list-style:none;padding:0;margin:8px 0 0}
.msg.info{background:#e8f0fb;color:#1f3864}
.lavoro .stato-lavoro{display:block;margin-top:4px}

/* ---------- Percorso: registri firmati e attestato ---------- */
.percorso > li{display:block}
.stato-anno{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 4px}
.percorso details{margin-top:8px}
.esito-registro textarea{width:100%;margin-bottom:8px}
.stato.muted{background:#eef0f3;color:#5b6472}

/* ---------- Pagine pubbliche: home, normativa, FAQ, cookie ---------- */
body.pubblica header.bar .hdr-r a:not(.btn){color:var(--on-band-2);text-decoration:none;font-size:14px}
body.pubblica header.bar .hdr-r a:not(.btn):hover{color:#fff}
body.pubblica header.bar .hdr-r .btn{color:#13284A}
.menu-pub{flex:1}
.home-hero h1{max-width:20ch;font-size:clamp(28px,4.4vw,44px);line-height:1.1}
.home-hero .cta{margin:22px 0 0;display:flex;gap:10px;flex-wrap:wrap}
.btn.ghost.chiaro{color:#fff;border-color:rgba(255,255,255,.4)}
.hint.chiaro{color:var(--on-band-2);margin-top:12px}
.home-blocchi{margin-block:20px}
ol.passi{margin:0;padding-left:20px}
ol.passi li{margin:0 0 10px}
.prezzi{margin-block:20px}
ul.novita{list-style:none;margin:0;padding:0}
ul.novita li{padding:8px 0;border-bottom:1px solid var(--line)}
ul.novita li:last-child{border-bottom:0}
.novita-box{margin-bottom:20px}
nav.filtri{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
nav.filtri a{font-size:13px;text-decoration:none;color:var(--fg);border:1px solid var(--line);border-radius:99px;padding:5px 12px}
nav.filtri a[aria-current]{background:var(--navy);color:#fff;border-color:var(--navy)}
article.atto{border-top:1px solid var(--line);padding:14px 0 6px}
article.atto h3{text-transform:none;letter-spacing:0;color:var(--fg);font-size:16px;margin:0 0 4px}
h2.tema-faq{margin-top:26px;font-size:18px}
details.faq{border-top:1px solid var(--line);padding:10px 0}
details.faq summary{cursor:pointer;font-weight:700}
details.faq p{margin:8px 0 0}
details.faq .fonti{font-size:13px;color:var(--muted)}
footer .link-piede{display:inline-block;margin-top:6px}
@media (max-width:720px){.menu-pub{order:3;flex-basis:100%}}

/* ---------------- Parere di inquadramento (pacchetto 10) ---------------- */
.azioni-testa{display:flex;gap:8px;flex-wrap:wrap}
.etichetta-parere{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:1px 7px;border-radius:999px;background:#e8f0fb;color:#1f3864;vertical-align:middle}
.parere .esito-parere{margin:0 0 8px}
.parere .sintesi-parere{font-size:16px;line-height:1.5;margin:0 0 14px}
.parere h3{margin-top:18px}
.requisiti{list-style:none;padding:0;margin:0}
.requisiti li{padding:7px 0;border-bottom:1px solid rgba(0,0,0,.07);line-height:1.45}
.requisiti li .stato{margin-right:4px}
.fonti li{word-break:break-word}
pre.c2-testo{white-space:pre-wrap;word-break:break-word;max-height:360px;overflow:auto;font-size:12px;background:#f6f7f9;padding:10px;border-radius:8px}
.anteprima-parere{border:1px dashed rgba(0,0,0,.15);border-radius:10px;padding:12px 14px}
.editor-parere textarea{width:100%}

/* ---------------- Saluto e novità all'accesso (pacchetto 13) ---------------- */
.citazione{margin:14px 0 0;max-width:720px}
.citazione blockquote{margin:0;font-style:italic;font-size:19px;line-height:1.4;color:inherit;opacity:.95}
.citazione figcaption{font-size:13px;opacity:.75;margin-top:4px}
.citazione cite{font-style:italic}
.novita-accesso{margin-bottom:20px}
.novita-accesso.nuove{border-left:5px solid #e8a33d}
.novita-accesso h2{display:flex;align-items:center;gap:10px;font-size:18px}
.novita-accesso .punto{width:10px;height:10px;border-radius:50%;background:#e8a33d;box-shadow:0 0 0 4px rgba(232,163,61,.25);flex:none}

/* =====================================================================================================
   Allineamento al prototipo approvato "Manifactura Apprendistato" (v23, 28/10/2026, richiesta di Anna)
   Colore per area: PFI = zafferano (a-sun), Inquadramento = pervinca (a-lilac), Normativa e pratica = acqua
   (a-aqua), FAQ e pagine generali = acciaio (predefinito).
   ===================================================================================================== */
@font-face{font-family:"Caveat";src:url("font/caveat-500.woff2") format("woff2");font-weight:500;font-display:swap}
:root{--hand:"Caveat","Segoe Print","Bradley Hand",cursive}
body{--area:var(--steel);--area-ink:var(--steel-ink);--area-soft:var(--steel-soft)}
body.a-sun{--area:var(--sun);--area-ink:var(--sun-ink);--area-soft:var(--sun-soft)}
body.a-aqua{--area:var(--aqua);--area-ink:var(--aqua-ink);--area-soft:var(--aqua-soft)}
body.a-lilac{--area:var(--lilac);--area-ink:var(--lilac-ink);--area-soft:var(--lilac-soft)}
.vh::before{background:
  radial-gradient(560px 300px at var(--ax,85%) 0%,color-mix(in srgb,var(--area) 60%,transparent),transparent 70%),
  radial-gradient(480px 280px at 8% 100%,color-mix(in srgb,var(--lilac) 45%,transparent),transparent 70%),
  radial-gradient(rgba(255,255,255,.13) 1.2px,transparent 1.3px) 0 0/22px 22px,
  linear-gradient(120deg,var(--navy-3) 0%,var(--navy) 45%,var(--navy-2) 100%)}
@property --ax{syntax:"<percentage>";inherits:false;initial-value:85%}
@media (prefers-reduced-motion:no-preference){.vh::before{animation:aur 14s ease-in-out infinite alternate}@keyframes aur{to{--ax:55%}}}
.vh .eyebrow{color:color-mix(in srgb,var(--area) 55%,#fff)}
.vh>*{position:relative;max-width:760px}
input:focus,select:focus,textarea:focus{border-color:var(--area);box-shadow:0 0 0 3px color-mix(in srgb,var(--area) 25%,transparent)}

/* testata dell'area riservata */
header.bar.app .wrap{flex-wrap:nowrap}
nav.nav-app{display:flex;gap:2px;flex:1;justify-content:center;flex-wrap:wrap}
nav.nav-app a{color:#fff;text-decoration:none;padding:8px 13px;border-radius:99px;font-size:14px;opacity:.78;transition:opacity .15s,background .15s}
nav.nav-app a:hover{opacity:1;background:rgba(255,255,255,.08)}
nav.nav-app a[aria-current]{opacity:1;background:rgba(255,255,255,.14);font-weight:600}
.dot{display:inline-block;min-width:18px;height:18px;line-height:18px;padding:0 5px;border-radius:99px;background:var(--sun);color:var(--navy-3);font-size:11px;font-weight:750;text-align:center;margin-left:4px}
header.bar .hdr-r.app{margin-left:0;flex:none;position:relative}
header.bar .hdr-r a.btn-cta{display:inline-flex;align-items:center;gap:6px;background:var(--sun);color:#13284A;font-weight:700;font-size:14px;padding:8px 15px;border-radius:99px;box-shadow:0 6px 18px -8px rgba(245,184,46,.8);transition:transform .15s}
header.bar .hdr-r a.btn-cta:hover{transform:translateY(-1px);background:var(--sun)}
header.bar .hdr-r .icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:36px;min-width:36px;padding:0 10px;border-radius:99px;color:#fff;background:rgba(255,255,255,.08);font-size:13px}
.icon-btn svg{width:18px;height:18px;flex:none}
.icon-btn .n{background:var(--sun);color:#13284A;border-radius:99px;font-size:11px;font-weight:750;min-width:18px;height:18px;line-height:18px;padding:0 5px;text-align:center}
header.bar .hdr-r button.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--lilac),var(--aqua));color:#fff;font-weight:750;font-size:13px;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.35);padding:0}
.menu-utente{position:absolute;right:0;top:calc(100% + 10px);background:var(--surface);color:var(--fg);border-radius:12px;box-shadow:var(--sh2);min-width:240px;padding:8px;display:grid;gap:2px;z-index:40}
.menu-utente .mh{padding:8px 10px 10px;border-bottom:1px solid var(--line);margin-bottom:4px}
.menu-utente .mh b{display:block;overflow-wrap:anywhere}.menu-utente .mh span{font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}
header.bar .menu-utente a,header.bar .menu-utente button{font:inherit;text-align:left;background:none;border:0;color:var(--fg);padding:8px 10px;border-radius:8px;text-decoration:none;cursor:pointer;font-size:14px;width:100%;display:block}
header.bar .menu-utente a:hover,header.bar .menu-utente button:hover{background:var(--soft)}
.menu-utente form{margin:0}
header.bar .hdr-r .navtoggle{display:none}
@media (max-width:900px){
  header.bar.app .wrap{flex-wrap:wrap}
  header.bar .hdr-r .navtoggle{display:inline-flex}
  nav.nav-app{order:3;flex-basis:100%;justify-content:flex-start;display:none;padding-bottom:6px}
  nav.nav-app.open{display:flex}
  header.bar .hdr-r.app{margin-left:auto}
}
@media (max-width:440px){.cta-long{display:none}header.bar .hdr-r a.btn-cta{padding:8px 12px}}
body.pubblica header.bar .hdr-r a.btn{color:#13284A;background:var(--sun)}

/* benvenuto dopo l'accesso */
body.immersivo{background:var(--navy-3)}
.welcome{position:relative;min-height:100vh;min-height:100dvh;overflow:hidden;background:var(--navy-3);color:#fff;display:grid;grid-template-rows:auto 1fr auto;isolation:isolate;padding:28px 24px 32px}
.welcome::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(rgba(255,255,255,.12) 1.2px,transparent 1.3px) 0 0/22px 22px}
.blobs{position:absolute;inset:-20%;z-index:-2;filter:blur(70px);opacity:.9}
.blobs i{position:absolute;border-radius:50%;display:block}
.blobs i:nth-child(1){width:46vmax;height:46vmax;left:-6%;top:4%;background:#3B48C9}
.blobs i:nth-child(2){width:38vmax;height:38vmax;right:-4%;top:-8%;background:var(--sun);opacity:.55}
.blobs i:nth-child(3){width:42vmax;height:42vmax;right:6%;bottom:-14%;background:#169C8B}
.blobs i:nth-child(4){width:30vmax;height:30vmax;left:30%;bottom:6%;background:#7C80EE;opacity:.7}
@media (prefers-reduced-motion:no-preference){
  .blobs i:nth-child(1){animation:drift1 18s ease-in-out infinite alternate}
  .blobs i:nth-child(2){animation:drift2 22s ease-in-out infinite alternate}
  .blobs i:nth-child(3){animation:drift3 20s ease-in-out infinite alternate}
  .blobs i:nth-child(4){animation:drift1 26s ease-in-out infinite alternate-reverse}
  @keyframes drift1{to{transform:translate(12vw,8vh) scale(1.15)}}
  @keyframes drift2{to{transform:translate(-14vw,10vh) scale(.9)}}
  @keyframes drift3{to{transform:translate(-8vw,-12vh) scale(1.1)}}
  .welcome .w-main>*{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}.welcome .w-main>*:nth-child(2){animation-delay:.1s}.welcome .w-main>*:nth-child(3){animation-delay:.25s}
  @keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
  .go{animation:pulse 2.6s ease-in-out infinite}
  @keyframes pulse{0%,100%{box-shadow:0 18px 40px -14px rgba(245,184,46,.9),0 0 0 0 rgba(245,184,46,.45)}50%{box-shadow:0 18px 40px -14px rgba(245,184,46,.9),0 0 0 14px rgba(245,184,46,0)}}
}
.w-top{display:flex;align-items:center;gap:12px}
.w-top img{height:26px;width:auto}
.w-top span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--on-band-2);border-left:1px solid rgba(255,255,255,.3);padding-left:12px}
.w-main{align-self:center;max-width:980px;width:100%;margin:0 auto;display:grid;gap:18px;padding-block:40px}
.w-date{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--sun);font-weight:700}
.w-hello{font-stretch:118%;font-weight:800;font-size:clamp(26px,3.6vw,40px);line-height:1.1;margin:0;color:#fff}
.w-hello span{color:var(--sun)}
.welcome .quote{margin:8px 0 0}
.welcome .quote blockquote{margin:0;font-family:var(--hand);font-weight:500;font-size:clamp(34px,5.2vw,64px);line-height:1.12;color:#fff;letter-spacing:.005em;text-wrap:balance}
.welcome .quote blockquote::before{content:"\201C";color:var(--sun);margin-right:.08em}
.welcome .quote blockquote::after{content:"\201D";color:var(--sun);margin-left:.04em}
.welcome .quote figcaption{margin-top:18px;display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.q-by{display:flex;flex-direction:column;gap:2px;padding-left:14px;border-left:3px solid var(--aqua)}
.q-by b{font-size:15px;color:#fff}.q-by span{font-size:13px;color:var(--on-band-2)}
.again{font:inherit;font-size:12.5px;color:#fff;background:rgba(255,255,255,.12);border:0;border-radius:99px;padding:4px 12px;text-decoration:none}
.again:hover{background:rgba(255,255,255,.2)}
.go{position:absolute;right:24px;bottom:28px;display:inline-flex;align-items:center;gap:12px;background:var(--sun);color:#13284A;font-weight:800;font-size:20px;text-decoration:none;padding:16px 26px 16px 30px;border-radius:99px;box-shadow:0 18px 40px -14px rgba(245,184,46,.9);transition:transform .2s}
.go svg{width:24px;height:24px;transition:transform .2s}
.go:hover{transform:translateY(-2px)}.go:hover svg{transform:translateX(4px)}
@media (max-width:640px){.go{position:static;justify-self:end;margin-top:12px}}

/* scrivania */
.stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.stat{display:flex;align-items:baseline;gap:10px;text-decoration:none;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);border-radius:16px;padding:12px 18px;transition:transform .2s,background .2s}
.stat:hover{transform:translateY(-2px);background:rgba(255,255,255,.14)}
.stat b{font-stretch:118%;font-size:34px;font-weight:800;line-height:1}
.stat span{font-size:13px;color:var(--on-band-2)}
.s-aqua b{color:#5FE0CD}.s-sun b{color:var(--sun)}.s-lilac b{color:#B9BBFF}
.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}
.act{--c:var(--steel);position:relative;overflow:hidden;border-radius:20px;padding:24px 22px 22px;text-decoration:none;color:#13284A;background:var(--c);box-shadow:0 18px 40px -22px color-mix(in srgb,var(--c) 90%,#000);display:flex;flex-direction:column;gap:8px;min-height:190px;transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s}
.act:hover{transform:translateY(-4px)}
.act::after{content:"";position:absolute;right:-60px;top:-70px;width:200px;height:200px;border-radius:50%;background:#fff;opacity:.18;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.act:hover::after{transform:scale(1.25)}
.act::before{content:"";position:absolute;left:-30px;bottom:-60px;width:140px;height:140px;border-radius:50%;border:22px solid rgba(255,255,255,.14)}
.act .ic{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.28);display:flex;align-items:center;justify-content:center;margin-bottom:6px;position:relative}
.act .ic svg{width:24px;height:24px}
.act h3{font-stretch:112%;font-size:24px;font-weight:800;margin:0;color:inherit;text-transform:none;letter-spacing:0;position:relative}
.act p{margin:0;font-size:14px;flex:1;opacity:.85;position:relative}
.act .k{font-size:12.5px;font-weight:700;display:flex;justify-content:space-between;align-items:center;position:relative}
.act .k em{font-style:normal;font-size:20px;transition:transform .2s}
.act:hover .k em{transform:translateX(5px)}
.act.sun{--c:#F5B82E}.act.aqua{--c:#22B3A0;color:#06302B}.act.lilac{--c:#5A5ED4;color:#fff}
@media (max-width:860px){.actions{grid-template-columns:1fr}.act{min-height:0;padding:18px}.act .ic{width:40px;height:40px;margin-bottom:2px}}
.news{position:relative;overflow:hidden;border-radius:18px;background:var(--surface);padding:18px 20px 18px 24px;margin-bottom:22px;box-shadow:var(--sh1)}
.news::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--sun),var(--aqua))}
.news .riga-testa{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline}
.news h2{margin:0}
.news ul{list-style:none;padding:0;margin:10px 0 12px;display:grid;gap:10px}
.news li{display:grid;grid-template-columns:96px 1fr;gap:12px;font-size:14px}
.news li .d{font-family:var(--mono);font-size:12.5px;color:var(--muted)}
.news li a{color:var(--fg)}
@media (max-width:520px){.news li{grid-template-columns:1fr;gap:2px}}
.desk2{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;align-items:start;margin-bottom:22px}
@media (max-width:860px){.desk2{grid-template-columns:1fr}}
.desk2>*{min-width:0}
.quick{display:grid;gap:12px}
.quick a{display:grid;gap:2px;border-radius:16px;padding:16px 18px;position:relative;overflow:hidden;background:var(--surface);box-shadow:var(--sh1);text-decoration:none}
.quick a:hover{box-shadow:var(--sh2)}
.quick a b{font-size:15px}.quick a span{font-size:13px;color:var(--muted)}
.quick a::after{content:"";position:absolute;right:0;top:0;bottom:0;width:6px;background:var(--qc)}
.q-steel{--qc:var(--steel)}.q-sun{--qc:var(--sun)}.q-aqua{--qc:var(--aqua)}.q-lilac{--qc:var(--lilac)}
.more{font-size:13px;font-weight:700;color:var(--steel-ink);text-decoration:none}
.plist{display:grid;gap:8px}
.prow{display:grid;grid-template-columns:auto 1fr auto;gap:6px 14px;align-items:center;border-radius:14px;padding:12px;background:var(--bg);text-decoration:none;color:inherit;transition:transform .15s}
.prow:hover{transform:translateX(4px)}
.prow .pic{width:38px;height:38px;border-radius:12px;background:var(--pc,var(--soft));display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;color:#13284A;font-weight:700}
.prow>span:nth-child(2){min-width:0}
.prow b{display:block;font-size:14.5px;overflow-wrap:anywhere}.prow .sub{display:block;font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}
.prow .prog{grid-column:2/-1;height:5px;border-radius:5px;background:var(--line);overflow:hidden}
.prow .prog i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--aqua),var(--sun))}
@media (max-width:560px){.prow{grid-template-columns:auto 1fr}.prow>.stato{grid-column:2;justify-self:start;white-space:normal}}

/* passi della pratica */
.steps{display:flex;gap:8px;margin:0 0 20px;flex-wrap:wrap;list-style:none;padding:0;counter-reset:s;position:relative}
.steps li{flex:1;min-width:110px;font-size:13px;color:var(--muted);padding:10px 12px;border-radius:12px;background:var(--surface);box-shadow:var(--sh1);counter-increment:s;display:flex;align-items:center;gap:8px}
.steps li::before{content:counter(s);font-family:var(--mono);font-size:11px;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--soft);color:var(--muted);flex:none}
.steps li.done{color:var(--fg)}
.steps li.done::before{content:"\2713";background:var(--ok-bg);color:var(--ok)}
.steps li.cur{color:var(--fg);font-weight:700;box-shadow:0 0 0 2px var(--area),var(--sh1)}
.steps li.cur::before{background:var(--area);color:#13284A}
.drop{border:2px dashed color-mix(in srgb,var(--area) 60%,var(--line));border-radius:16px;padding:26px 20px;text-align:center;color:var(--muted);background:var(--area-soft);margin-bottom:14px}
.drop strong{display:block;color:var(--fg);margin-bottom:10px}
.drop input[type=file]{max-width:420px;margin:0 auto;display:block}
.drop .hint{margin-top:10px}
.drop.trascina{background:color-mix(in srgb,var(--area) 30%,var(--surface))}

/* linea del tempo delle annualità */
.tl{list-style:none;margin:0;padding:0;display:grid;gap:0}
.tl>li{display:grid;grid-template-columns:28px 1fr auto;gap:12px;align-items:start;padding:14px 0;border-bottom:1px solid var(--line)}
.tl>li:last-child{border-bottom:0}
.tl .dotx{width:16px;height:16px;border-radius:50%;margin-top:3px;border:2px solid var(--line);background:var(--surface)}
.tl .done .dotx,.tl li.done .dotx{background:var(--aqua);border-color:var(--aqua);box-shadow:0 0 0 4px var(--aqua-soft)}
.tl li.due .dotx{background:var(--sun);border-color:var(--sun);box-shadow:0 0 0 4px var(--sun-soft)}
.tl h4{margin:0 0 2px;font-size:15px}
.tl .azione{text-align:right}
@media (max-width:560px){.tl>li{grid-template-columns:22px 1fr}.tl>li>div:last-child{grid-column:2;text-align:left}}
.dati-pratica{margin-top:20px}
.dati-pratica>summary{cursor:pointer;font-weight:700;font-size:15px;padding:14px 18px;background:var(--surface);border-radius:var(--r);box-shadow:var(--sh1);list-style:none}
.dati-pratica>summary::-webkit-details-marker{display:none}
.dati-pratica>summary::after{content:"+";float:right;width:24px;height:24px;border-radius:50%;background:var(--area-soft);color:var(--area-ink);display:inline-flex;align-items:center;justify-content:center}
.dati-pratica[open]>summary{margin-bottom:16px}
.dati-pratica[open]>summary::after{content:"−"}

/* normativa e FAQ */
.search{display:flex;gap:8px}
.vh .search{max-width:760px;margin-top:22px}
.vh .search input{font-size:16px;padding:13px 16px;border-radius:99px;background:var(--surface);border:0;box-shadow:var(--sh2)}
.chips,nav.filtri{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 18px}
.chip,nav.filtri a{font:inherit;font-size:13px;border:0;background:var(--surface);color:var(--fg);padding:7px 14px;border-radius:99px;cursor:pointer;box-shadow:var(--sh1);font-weight:600;text-decoration:none}
.chip.on,nav.filtri a[aria-current]{background:var(--area);color:#13284A}
details.faq{border-top:0;border-bottom:1px solid var(--line);padding:0}
details.faq:last-of-type{border-bottom:0}
details.faq summary{cursor:pointer;list-style:none;padding:16px 4px;font-weight:650;display:flex;justify-content:space-between;gap:12px;align-items:center}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";flex:none;width:26px;height:26px;border-radius:50%;background:var(--area-soft);color:var(--area-ink);display:inline-flex;align-items:center;justify-content:center;font-size:17px;transition:transform .2s}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq>*:not(summary){padding:0 4px;max-width:72ch}
details.faq>*:last-child{padding-bottom:18px}
details.faq .fonti{background:var(--area-soft);border-radius:12px;padding:10px 14px}
.nessun-risultato{color:var(--muted);padding:14px 4px}
@media (prefers-reduced-motion:no-preference){main .wrap>*{animation:vin .35s cubic-bezier(.2,.7,.2,1)}@keyframes vin{from{transform:translateY(8px)}to{transform:none}}}
main .wrap>:not(.vh){position:relative;z-index:1}
body.pubblica header.bar .hdr-r a.btn-cta{color:#13284A}
body.pubblica header.bar .hdr-r a.icon-btn{color:#fff}
body.pubblica header.bar .hdr-r a.icon-btn:hover,header.bar .hdr-r a.icon-btn:hover{background:rgba(255,255,255,.16)}
.panel h2.tema-faq:first-of-type{margin-top:4px}

/* ---------- Guida al portale (guida.php) e guida interattiva della scrivania (vista.js) ---------- */
nav.g-indice a.g-tour{border-color:var(--sun);background:var(--sun-soft);color:var(--sun-ink);font-weight:700}
.g-sez{--gc:var(--steel);--gc-soft:var(--steel-soft);--gc-ink:var(--steel-ink);margin:0 0 34px;scroll-margin-top:84px}
.g-sun{--gc:var(--sun);--gc-soft:var(--sun-soft);--gc-ink:var(--sun-ink)}
.g-lilac{--gc:var(--lilac);--gc-soft:var(--lilac-soft);--gc-ink:var(--lilac-ink)}
.g-aqua{--gc:var(--aqua);--gc-soft:var(--aqua-soft);--gc-ink:var(--aqua-ink)}
.g-testa{border-left:5px solid var(--gc);padding:2px 0 2px 14px;margin:0 0 14px}
.g-testa h2{margin:0 0 4px;font-size:clamp(22px,3vw,28px)}
.g-testa p{margin:0;color:var(--muted);max-width:70ch}
.g-passi{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.g-passo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:22px;align-items:center;background:var(--surface);border-radius:16px;padding:20px;box-shadow:var(--sh1)}
.g-num{display:inline-block;font-family:var(--mono);font-size:12px;color:var(--gc-ink);background:var(--gc-soft);border-radius:99px;padding:2px 10px}
.g-txt h3{margin:8px 0 6px;font-size:19px;text-wrap:balance}
.g-txt p{margin:0 0 8px;color:var(--fg);line-height:1.55}
.g-txt p.g-nota{margin:0;color:var(--muted);font-size:14px;border-left:3px solid var(--gc);padding-left:10px}
.g-shot{display:block;border-radius:12px;overflow:hidden;box-shadow:var(--sh2);background:var(--soft);line-height:0}
.g-shot img{width:100%;height:auto;display:block}
.g-shot:hover img{opacity:.94}
.g-fine{margin-top:6px}
@media (max-width:780px){.g-passo{grid-template-columns:1fr;padding:16px;gap:14px}}

/* guida interattiva: riflettore sull'elemento e fumetto con Avanti/Indietro */
.tour-spot{position:fixed;z-index:900;border-radius:14px;border:3px solid var(--sun);box-shadow:0 0 0 9999px rgba(10,20,40,.62);pointer-events:none;transition:top .35s ease,left .35s ease,width .35s ease,height .35s ease}
.tour-spot.vuoto{border:0;width:0!important;height:0!important;left:50%!important;top:40%!important}
.tour-bolla{position:fixed;z-index:901;width:min(340px,calc(100vw - 32px));background:var(--surface);color:var(--fg);border-radius:14px;padding:16px 18px;box-shadow:var(--sh2)}
.tour-bolla small{font-family:var(--mono);font-size:12px;color:var(--sun-ink)}
.tour-bolla h2{font-size:17px;margin:2px 0 6px}
.tour-bolla p{margin:0 0 12px;font-size:14px;color:var(--muted);line-height:1.5}
.tour-bolla .r{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.tour-bolla button,.tour-bolla a.btn{font:inherit;font-weight:700;font-size:14px;border:1px solid var(--line);border-radius:99px;padding:6px 14px;cursor:pointer;background:transparent;color:var(--fg);text-decoration:none}
.tour-bolla button.av{background:var(--sun);border-color:var(--sun);color:#13284A}
.tour-bolla button:disabled{opacity:.4;cursor:default}
.tour-bolla .chiudi{position:absolute;top:8px;right:8px;border:0;padding:4px 8px;font-size:18px;line-height:1;color:var(--muted)}
@media (prefers-reduced-motion:reduce){.tour-spot{transition:none}}
nav.g-indice+.g-sez{margin-top:26px}
