/* QuidTime – La locanda per ogni domanda */
@font-face{font-family:Anton;src:url(../font/anton.woff2) format("woff2");font-display:swap}
@font-face{font-family:Nunito;src:url(../font/nunito.woff2) format("woff2");font-weight:200 1000;font-display:swap}
:root{
  --rosso:#ee120e; --rosso-scuro:#c20d0a; --giallo:#ffe800; --oro:#ffbc0d;
  --inchiostro:#27201a; --testo:#3a322b; --carta:#faf8f4; --bianco:#fff; --legno:#2b1b10;
  --blu:#0aa6e0; --menta:#a9dccf; --largo:1600px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Nunito,system-ui,"Segoe UI",sans-serif;color:var(--testo);background:var(--carta);font-size:17px;line-height:1.5}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{color:var(--inchiostro);line-height:1.15;margin:0;text-wrap:balance}
[hidden]{display:none!important}
.salta{position:absolute;left:-999px}.salta:focus{left:8px;top:8px;background:#fff;padding:8px 12px;z-index:50}
:focus-visible{outline:3px solid #1466d6;outline-offset:3px}

/* testata */
.testata{background:var(--bianco);position:sticky;top:0;z-index:20;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.testata-in{max-width:var(--largo);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:40px;align-items:end;min-height:96px}
.logo{grid-row:1/3;align-self:center}
.logo img{width:76px;height:76px;border-radius:6px}
.servizio{display:flex;justify-content:flex-end;align-items:center;gap:36px;font-size:13px}
.servizio a{text-decoration:none;color:#6f6a64}
.servizio a:hover{color:var(--inchiostro)}
.servizio .bottone-prof{background:var(--oro);color:var(--inchiostro);font-weight:800;padding:8px 20px 9px;border-radius:0 0 5px 5px;border-bottom:4px solid var(--rosso)}
.menu{display:flex;gap:clamp(20px,4vw,56px);align-items:center;padding:18px 0 14px}
.menu a{text-decoration:none;color:var(--inchiostro);font-size:16px;font-weight:600;padding:4px 0;border-bottom:3px solid transparent}
.menu a:hover{border-color:var(--oro)}
.menu-destra{margin-left:auto;display:inline-flex;gap:8px;align-items:center}
.solo-telefono,.apri-menu{display:none}

/* bottoni */
.bottone{display:inline-block;background:var(--oro);color:var(--inchiostro);font-weight:800;text-decoration:none;padding:13px 28px;border-radius:5px;transition:transform .15s,box-shadow .15s}
.bottone:hover{transform:translateY(-2px);box-shadow:0 6px 0 rgba(0,0,0,.18)}
.bottone.chiaro{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px #fff}
.bottone.bianco{background:#fff}

/* copertina */
.copertina{position:relative;background:#1c1009;color:#fff;overflow:hidden;min-height:min(46vw,820px);display:flex;align-items:center}
.copertina-foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:78% 50%}
.copertina::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,10,4,.62) 0,rgba(20,10,4,.25) 45%,transparent 62%)}
.copertina-testo{position:relative;z-index:1;width:100%;max-width:var(--largo);margin:0 auto;padding:56px 24px}
.copertina h1{font-family:Anton,Impact,sans-serif;font-weight:400;color:var(--oro);text-transform:uppercase;font-size:clamp(56px,10.4vw,196px);line-height:.92;letter-spacing:-.02em;margin-left:-.03em}
.etichetta{display:inline-block;margin:26px 0 0;font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:clamp(20px,2.4vw,40px);line-height:1;color:var(--oro);border:3px solid #fff;border-radius:12px 6px 14px 6px;padding:10px 18px;transform:rotate(-3deg)}
.etichetta b{color:#fff;font-weight:400}
.etichetta.scura{color:var(--rosso);border-color:var(--inchiostro);font-size:22px;margin:0 0 18px}
.etichetta.scura b{color:var(--inchiostro)}
.sotto{max-width:34ch;font-size:clamp(17px,1.3vw,21px);margin:26px 0 0;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.azioni{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}

/* blocchi */
.blocco{max-width:var(--largo);margin:0 auto;padding:72px 24px 8px}
.titolo{text-align:center;font-size:clamp(28px,2.6vw,40px);font-weight:900;margin-bottom:48px}
.tris{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
.carta{text-decoration:none;display:block}
.carta-figura{position:relative;aspect-ratio:1/1.15;border-radius:4px;overflow:hidden;display:grid;place-items:center;text-align:center;transition:transform .2s}
.carta.grande .carta-figura{aspect-ratio:auto;height:100%;min-height:340px}
.carta.grande{display:grid;grid-template-rows:1fr auto auto}
.carta:hover .carta-figura{transform:scale(1.015)}
.rossa .carta-figura{background:var(--rosso);background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 26px,transparent 26px 52px)}
.blu .carta-figura{background:var(--blu);background-image:radial-gradient(rgba(255,255,255,.22) 2.5px,transparent 3px);background-size:22px 22px}
.menta .carta-figura{background:var(--menta);background-image:radial-gradient(circle at 80% 15%,rgba(255,255,255,.55) 0 60px,transparent 61px)}
.parola{font-family:Anton,Impact,sans-serif;font-size:clamp(64px,8.4vw,150px);line-height:.95;color:var(--oro);text-shadow:0 5px 0 #f29100,0 12px 18px rgba(0,0,0,.25)}
.parola.piccola{font-size:clamp(40px,3.6vw,66px);color:#fff;text-shadow:0 4px 0 rgba(0,0,0,.18)}
.parola.scura{color:var(--rosso);text-shadow:0 3px 0 rgba(255,255,255,.6)}
.novita{position:absolute;left:5%;top:9%;color:#fff;font-weight:900;font-size:clamp(18px,1.7vw,28px)}
.carta h3{font-size:clamp(20px,1.5vw,24px);font-weight:600;margin:22px 0 8px}
.carta p{margin:0;font-size:15px}

/* menù dei panini e piatti storici */
.menu-panini{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 30px}
.panino{text-decoration:none;display:block;position:relative}
.panino img,.piatto img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;transition:transform .2s}
.panino:hover img,.piatto:hover img{transform:scale(1.015)}
.materia{position:absolute;left:14px;top:14px;font-size:13px;font-weight:800;color:#fff;padding:4px 12px;border-radius:99px}
.m-sto{background:#8a5a12}.m-ita{background:var(--rosso)}.m-geo{background:#1c8a4e}
.panino h3{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(26px,2.2vw,36px);margin:16px 0 2px;letter-spacing:.01em}
.panino p{margin:0;font-size:15px}
.piatti{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.piatto{position:relative;text-decoration:none;display:block;overflow:hidden;border-radius:4px}
.piatto div{position:absolute;inset:auto 0 0 0;padding:60px 20px 16px;background:linear-gradient(transparent,rgba(20,10,4,.85));color:#fff}
.piatto h3{color:var(--oro);font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(22px,1.9vw,30px)}
.piatto p{margin:2px 0 0;font-size:14px}
.centro{text-align:center;margin:36px 0 0}

.schemi{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.schema{background:#fff;border-radius:6px;padding:30px 28px;text-decoration:none;display:grid;gap:8px;justify-items:start;box-shadow:0 1px 0 rgba(0,0,0,.08);transition:transform .15s,box-shadow .15s}
.schema:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(40,20,5,.12)}
.schema h3{font-size:26px;font-weight:900}
.schema p{margin:0}
.bollo{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;font-family:Anton,Impact,sans-serif;font-size:30px;color:#fff;margin-bottom:6px}
.b-ita{background:var(--rosso)}.b-sto{background:#8a5a12}.b-geo{background:#1c8a4e}
.stato{font-size:13px;font-weight:800;padding:4px 12px;border-radius:99px;margin-top:6px}
.stato.pronto{background:var(--oro);color:var(--inchiostro)}
.stato.attesa{background:#eee9e1;color:#5d554c}

/* area prof */
.prof{max-width:var(--largo);margin:80px auto 0;padding:0 24px 80px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(28px,5vw,80px);align-items:center}
.prof-figura{background:radial-gradient(circle at 50% 35%,#6b4320 0,var(--legno) 70%);border-radius:4px;display:grid;place-items:end center;padding:28px 20px 0;min-height:340px}
.prof-figura img{width:min(360px,80%)}
.prof-testo h2{font-size:clamp(30px,2.8vw,42px);font-weight:900;margin-bottom:14px}
.prof-testo p{max-width:60ch;margin:0 0 24px}

/* fascia premi */
.fascia-premi{background:var(--oro);position:relative;margin-bottom:60px}
.fascia-in{max-width:1380px;margin:0 auto;padding:26px 24px;display:grid;grid-template-columns:auto 1fr auto;gap:36px;align-items:center}
.fascia-in img{width:96px;height:96px;border-radius:22px;box-shadow:0 6px 14px rgba(0,0,0,.18)}
.fascia-in h2{font-size:clamp(22px,2vw,30px);font-weight:900}
.fascia-in p{margin:4px 0 0;font-size:15px;color:var(--inchiostro)}
.goccia{position:absolute;left:0;top:100%;width:100%;height:46px;fill:var(--oro);margin-top:-1px}

/* piede */
.piede{max-width:1100px;margin:0 auto;padding:20px 24px 60px;text-align:center}
.citazione{margin:0 auto 40px;max-width:52ch;font-size:clamp(20px,1.8vw,26px);font-style:italic;color:var(--inchiostro);font-weight:600;line-height:1.35}
.citazione cite{display:block;margin-top:14px;font-size:15px;font-style:normal;font-weight:400;color:#6f6a64}
.piede-link{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;margin-bottom:28px}
.piede-link a{font-weight:700;text-decoration:none;font-size:15px}
.piede-link a:hover{text-decoration:underline}
.piccolo{font-size:12.5px;color:#6f6a64;margin:0}

/* pagine in preparazione */
.attesa-pagina{max-width:1100px;margin:0 auto;padding:80px 24px 100px;display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:center}
.attesa-pagina img{width:300px}
.attesa-pagina h1{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(44px,6vw,84px);color:var(--rosso);margin-bottom:16px}
.attesa-pagina p{max-width:52ch;margin:0 0 26px}

@media (max-width:900px){
  .testata-in{grid-template-columns:auto 1fr auto;grid-template-rows:auto;min-height:68px;align-items:center;column-gap:16px}
  .logo{grid-row:auto}.logo img{width:52px;height:52px}
  .servizio{display:none}
  .apri-menu{display:grid;gap:5px;background:none;border:0;padding:12px 6px;grid-column:3;cursor:pointer}
  .apri-menu span{display:block;width:26px;height:3px;background:var(--inchiostro);border-radius:2px}
  .menu{display:none;grid-column:1/-1;flex-direction:column;align-items:stretch;gap:0;padding:0 0 12px}
  .menu.aperto{display:flex}
  .menu a{padding:13px 4px;border-bottom:1px solid #eee9e1;font-size:17px}
  .menu-destra{margin-left:0}
  .solo-telefono{display:block}
  .copertina{display:block;min-height:0}
  .copertina-foto{position:relative;height:auto;aspect-ratio:4/3;object-position:82% 50%}
  .copertina::after{display:none}
  .copertina-testo{padding:26px 16px 36px}
  .copertina h1{font-size:clamp(52px,17vw,110px)}
  .blocco{padding:52px 16px 0}
  .titolo{margin-bottom:28px}
  .tris,.schemi,.menu-panini,.piatti{grid-template-columns:1fr;gap:26px}
  .carta-figura,.carta.grande .carta-figura{aspect-ratio:16/10;min-height:0;height:auto}
  .parola{font-size:clamp(54px,17vw,110px)}
  .parola.piccola{font-size:clamp(40px,12vw,70px)}
  .prof{grid-template-columns:1fr;margin-top:56px;padding:0 16px 56px}
  .prof-figura{min-height:0}
  .fascia-in{grid-template-columns:auto 1fr;gap:16px;padding:22px 16px}
  .fascia-in img{width:64px;height:64px;border-radius:14px}
  .fascia-in .bottone{grid-column:1/-1;text-align:center}
  .attesa-pagina{grid-template-columns:1fr;gap:20px;padding:40px 16px 70px}
  .attesa-pagina img{width:180px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ---------- quiz ---------- */
.testa-pagina{max-width:var(--largo);margin:0 auto;padding:56px 24px 8px}
.testa-pagina h1{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(44px,6vw,88px);color:var(--rosso)}
.testa-pagina p{max-width:64ch;margin:14px 0 0}
.quiz-app{max-width:var(--largo);margin:0 auto;padding:24px 24px 90px;min-height:50vh}
.quiz-carica,.quiz-errore{padding:40px 0;font-weight:700}
.quiz-errore{max-width:var(--largo);margin:0 auto;padding:24px}
.quiz-periodo{margin-top:44px}
.quiz-periodo-testa{border-bottom:3px solid var(--oro);padding-bottom:10px;margin-bottom:22px}
.quiz-periodo-testa h2{font-size:clamp(24px,2.3vw,34px);font-weight:900}
.quiz-periodo-testa small{display:inline-block;margin-left:14px;font-size:.6em;font-weight:700;color:#6f6a64}
.quiz-piatto{margin:4px 0 0;font-size:15px}
.quiz-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}
.quiz-carta{background:#fff;border-radius:6px;text-decoration:none;padding:0 18px 18px;display:grid;gap:4px;align-content:start;overflow:hidden;box-shadow:0 1px 0 rgba(0,0,0,.08);transition:transform .15s,box-shadow .15s}
.quiz-carta:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(40,20,5,.14)}
.quiz-anni{margin:0 -18px 12px;padding:16px 18px;font-family:Anton,Impact,sans-serif;font-size:24px;color:#fff;background:var(--rosso)}
.p2 .quiz-anni{background:#8a5a12}.p3 .quiz-anni{background:#0a7fb0}.p4 .quiz-anni{background:#1c6b45}.p5 .quiz-anni{background:#b3410c}.p6 .quiz-anni{background:#3d3a8c}
.quiz-num{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#6f6a64}
.quiz-carta h3{font-size:19px;font-weight:800}
.quiz-info{font-size:14px;color:#5d554c}
.quiz-best{justify-self:start;margin-top:6px;font-size:13px;font-weight:800;background:var(--oro);color:var(--inchiostro);padding:3px 10px;border-radius:99px}

.gioco{max-width:820px;margin:0 auto}
.gioco-testa{margin-bottom:18px}
.indietro{display:inline-block;margin-bottom:14px;font-weight:700;font-size:15px}
.gioco-periodo{margin:0;font-weight:800;color:var(--rosso);font-size:14px;text-transform:uppercase;letter-spacing:.05em}
.gioco-testa h2{font-size:clamp(26px,3vw,38px);font-weight:900}
.gioco-barra{height:10px;background:#e9e3d9;border-radius:99px;overflow:hidden}
.gioco-barra span{display:block;height:100%;background:var(--oro);transition:width .3s}
.gioco-conta{margin:16px 0 4px;font-weight:800;font-size:14px;color:#5d554c}
.gioco-domanda{font-size:clamp(22px,2.4vw,30px);font-weight:800;margin-bottom:22px}
.gioco-opzioni{display:grid;gap:12px}
.opzione{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;text-align:left;font:inherit;font-size:18px;font-weight:600;color:var(--inchiostro);background:#fff;border:2px solid #d9d2c6;border-radius:8px;padding:14px 16px;cursor:pointer;min-height:60px}
.opzione:hover:not(:disabled){border-color:var(--inchiostro)}
.opzione:disabled{cursor:default;color:var(--inchiostro)}
.lettera{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--inchiostro);color:#fff;font-weight:800;font-size:15px}
.opzione.giusta{border-color:#17803f;background:#e7f6ec}.opzione.giusta .lettera{background:#17803f}
.opzione.sbagliata{border-color:var(--rosso-scuro);background:#fdeceb}.opzione.sbagliata .lettera{background:var(--rosso-scuro)}
.opzione.giusta .lettera::after{content:" ✔";font-size:0}
.gioco-spiega{margin:18px 0 0;padding:14px 16px;border-radius:8px;font-weight:600;border-left:6px solid}
.gioco-spiega.ok{background:#e7f6ec;border-color:#17803f}.gioco-spiega.no{background:#fdeceb;border-color:var(--rosso-scuro)}
.gioco-azioni{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
button.bottone{border:0;font:inherit;font-weight:800;cursor:pointer}
.bottone.scuro{background:var(--inchiostro);color:#fff}
.bottone.contorno{background:transparent;box-shadow:inset 0 0 0 2px var(--inchiostro)}
.esito{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center;background:var(--legno);color:#fff;border-radius:8px;padding:26px 28px;margin-top:8px}
.esito h3{color:var(--oro);font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(28px,3.4vw,44px)}
.esito p{margin:6px 0 0}
.esito-punti{font-family:Anton,Impact,sans-serif;font-size:26px;white-space:nowrap;margin:0!important}
.esito-punti b{font-size:88px;color:var(--oro);font-weight:400;line-height:1}
.esito-voto{font-weight:800}
.premi,.ripasso-box{margin-top:28px}
.premi h3,.ripasso-box h3{font-size:22px;font-weight:900;margin-bottom:6px}
.premi p{margin:0 0 14px}
.premi-lista{display:flex;flex-wrap:wrap;gap:14px}
.premio{width:150px;background:#fff;border-radius:6px;padding:12px;text-decoration:none;font-size:13.5px;font-weight:700;display:grid;gap:8px;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.premio img{width:100%;height:120px;object-fit:contain}
.ripasso{margin:10px 0 0;padding-left:22px;display:grid;gap:12px}
.ripasso li{padding-left:6px}
.ripasso li b{display:block}
.ripasso li.ok::marker{color:#17803f;font-weight:800}.ripasso li.no::marker{color:var(--rosso-scuro);font-weight:800}
.ripasso li.no span{color:var(--rosso-scuro)}
.approfondisci{margin:26px 0 0;display:flex;flex-wrap:wrap;gap:6px 18px}
.approfondisci a{font-weight:700}
#stampa{display:none}
@media (max-width:900px){
  .testa-pagina{padding:34px 16px 0}.quiz-app{padding:16px 16px 70px}
  .esito{grid-template-columns:1fr;gap:10px;padding:22px 20px}
  .gioco-azioni .bottone{flex:1 1 100%;text-align:center}
}
@media print{
  body>*:not(#stampa){display:none!important}
  body{background:#fff;font-size:12pt}
  #stampa{display:block;color:#000;font-family:Verdana,Arial,sans-serif;line-height:1.5}
  #stampa h1{font-size:19pt;margin:2pt 0;color:#000}
  .st-marca{font-size:9pt;margin:0;color:#444}.st-periodo{margin:0 0 12pt;font-weight:bold}
  .st-nome{margin:0 0 14pt}
  #stampa ol{padding-left:18pt;margin:0}
  #stampa ol>li{margin-bottom:12pt;break-inside:avoid}
  .st-dom{font-weight:bold;margin:0 0 4pt}
  #stampa ul{list-style:none;padding:0;margin:0}
  #stampa ul li{margin:3pt 0}
  .st-box{display:inline-block;width:11pt;height:11pt;border:1pt solid #000;margin-right:6pt;text-align:center;line-height:10pt;font-size:9pt;vertical-align:-1pt}
  .st-ok{font-weight:bold}.st-spiega{margin:3pt 0 0;font-style:italic}
  .st-punti{margin-top:16pt;font-weight:bold}
}

/* ---------- schemi di ripasso ---------- */
.materie{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.materia-scheda{display:grid;gap:2px;padding:12px 20px;border-radius:6px;background:#fff;text-decoration:none;color:#5d554c;box-shadow:0 1px 0 rgba(0,0,0,.08);font-size:14px}
.materia-scheda b{font-size:18px;color:var(--inchiostro)}
.materia-scheda.attiva{box-shadow:inset 0 -4px 0 var(--oro),0 1px 0 rgba(0,0,0,.08)}
.scarica{margin-top:20px}
.schema-carta .quiz-anni{display:flex;gap:10px;align-items:center}
.bandiera{display:inline-block;width:1.25em;height:.85em;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.25);vertical-align:-.05em}
.scheda{max-width:1000px;margin:0 auto;--tinta:var(--rosso)}
.scheda.p2{--tinta:#8a5a12}.scheda.p3{--tinta:#0a7fb0}.scheda.p4{--tinta:#1c6b45}.scheda.p5{--tinta:#b3410c}.scheda.p6{--tinta:#3d3a8c}
.sc-testa{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;margin-bottom:22px}
.sc-ico{width:76px;height:76px;border-radius:50%;background:var(--tinta);display:grid;place-items:center;font-size:36px}
.sc-testa h2{font-size:clamp(28px,3.4vw,44px);font-weight:900}
.scheda .gioco-periodo{color:var(--tinta)}
.sc-per{margin:4px 0 0;font-weight:700;color:#5d554c}
.scheda h3{font-size:18px;font-weight:900;margin-bottom:8px}
.scheda ul{margin:0;padding-left:20px;display:grid;gap:6px}
.sc-date{background:#fff;border-radius:8px;padding:18px 20px;border-top:5px solid var(--tinta)}
.sc-date ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
.sc-date li{display:grid;gap:2px;border-left:3px solid var(--oro);padding-left:12px}
.sc-date li b{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:22px;color:var(--tinta)}
.sc-cfc{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.sc-col,.sc-banda,.sc-blocco,.sc-basso section{background:#fff;border-radius:8px;padding:18px 20px}
.sc-cause{border-top:5px solid #e2a100}.sc-fatti{border-top:5px solid var(--tinta)}.sc-cons{border-top:5px solid #17803f}
.sc-banda{margin-top:16px}
.sc-blocchi{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:16px}
.sc-blocco{border-top:5px solid var(--tinta)}
.sc-sotto{margin:-4px 0 8px;font-size:14px;font-weight:700;color:#5d554c}
.sc-basso{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.sc-pers{list-style:none;padding:0!important}
.sc-pers li{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start}
.sc-parole{margin:0;display:grid;gap:6px}
.sc-parole dt{font-weight:800;color:var(--tinta)}
.sc-parole dd{margin:0 0 4px}
.sc-sapevi{margin:16px 0 0;background:#fff6c9;border-left:6px solid var(--oro);border-radius:8px;padding:14px 18px}
@media (max-width:900px){.sc-cfc,.sc-basso{grid-template-columns:1fr}.sc-ico{width:58px;height:58px;font-size:28px}}

/* ---------- area prof ---------- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.prof-porta{max-width:1100px;margin:0 auto;padding:64px 24px 90px;display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:center}
.prof-porta img{width:320px}
.prof-form h1{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(44px,6vw,84px);color:var(--rosso);margin-bottom:12px}
.prof-form p{max-width:52ch;margin:0 0 18px}
.prof-form label{display:block;font-weight:800;margin-bottom:6px}
.prof-riga{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.prof-riga input,.prof-strumenti input{font:inherit;font-size:18px;padding:12px 14px;border:2px solid #b9b0a2;border-radius:5px;background:#fff;color:var(--inchiostro);min-width:0;flex:1 1 220px}
.prof-errore{color:var(--rosso-scuro);font-weight:800}
.prof-sala{max-width:var(--largo);margin:0 auto;padding:48px 24px 90px}
.prof-barra{display:flex;flex-wrap:wrap;gap:16px;align-items:end;justify-content:space-between}
.prof-barra h1{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(40px,5vw,72px);color:var(--rosso)}
.prof-strumenti{display:flex;flex-wrap:wrap;gap:12px;flex:1 1 420px;justify-content:flex-end}
.prof-strumenti input{max-width:360px}
.prof-nota{margin:14px 0 0;font-size:15px;color:#5d554c}
.prof-materia h2{font-size:clamp(26px,2.6vw,36px);font-weight:900;margin:40px 0 0}
.prof-argomento{margin-top:26px}
.prof-argomento h3{font-size:22px;font-weight:900}
.prove-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.prova{background:#fff;border-radius:6px;padding:18px;display:grid;gap:6px;align-content:start;box-shadow:0 1px 0 rgba(0,0,0,.08);border-top:5px solid var(--oro)}
.prova.sintesi{border-top-color:var(--rosso)}
.prova-testa{display:flex;justify-content:space-between;align-items:center}
.prova-testa .stato{margin:0}
.prova h4{margin:0;font-size:19px;font-weight:800;color:var(--inchiostro)}
.prova-azioni{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.prova-azioni .bottone{padding:9px 14px;font-size:14.5px}
.bottone.spento{background:#e3ddd3;color:#5d554c}
button.bottone:disabled{opacity:.5;cursor:not-allowed}
.prof-vuoto{padding:30px 0;font-style:italic}
.prof-dialogo{border:0;border-radius:10px;padding:26px;max-width:min(92vw,460px);color:var(--testo);box-shadow:0 24px 60px rgba(0,0,0,.4)}
.prof-dialogo.largo{max-width:min(92vw,680px)}
.prof-dialogo::backdrop{background:rgba(20,10,4,.6)}
.prof-dialogo h2{font-size:22px;font-weight:900;margin-bottom:14px}
.prof-dialogo form{margin-top:16px;text-align:right}
.qr-box{background:#fff;padding:6px}
.qr-box svg{width:100%;height:auto;display:block}
.rip-testo h3{font-size:17px;font-weight:900;margin:14px 0 6px}
.rip-testo ul{margin:0;padding-left:20px;display:grid;gap:6px}
.rip-linea{list-style:none;padding-left:0!important}
@media (max-width:900px){.prof-porta{grid-template-columns:1fr;gap:18px;padding:36px 16px 70px}.prof-porta img{width:180px}.prof-sala{padding:32px 16px 70px}.prof-strumenti{justify-content:stretch}.prof-strumenti input{max-width:none}}

/* ---------- percorso della taverna ---------- */
.percorso-conto{background:#fff;border-radius:8px;padding:18px 20px;margin:10px 0 34px;display:grid;gap:10px}
.percorso-conto p{margin:0}
.tappe{list-style:none;margin:0;padding:0;display:grid;gap:26px;position:relative}
.tappa{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(18px,3vw,40px);background:#fff;border-radius:8px;overflow:hidden;align-items:stretch;border-left:8px solid #d9d2c6}
.tappa.servita{border-left-color:#17803f}
.tappa-foto{background:var(--legno);min-height:240px}
.tappa-foto img{width:100%;height:100%;object-fit:cover}
.tappa-testo{padding:22px 24px 22px 0}
.tappa-periodo{margin:0 0 4px;font-weight:800;font-size:13.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--rosso)}
.tappa-testo h2{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(28px,3vw,42px)}
.tappa-testo>p{margin:8px 0 0;max-width:62ch}
.tappa-conto .stato{margin:0}
.tappa-quiz{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}
.tappa-quiz a{display:grid;grid-template-columns:26px 1fr;column-gap:8px;text-decoration:none;padding:8px 10px;border:2px solid #e3ddd3;border-radius:6px;font-weight:700;font-size:15px;align-items:start}
.tappa-quiz a:hover{border-color:var(--inchiostro)}
.tappa-quiz small{grid-column:2;font-weight:600;color:#5d554c}
.spunta{width:24px;height:24px;border-radius:50%;border:2px solid #b9b0a2;display:grid;place-items:center;font-size:13px;grid-row:1/3}
.tappa-quiz .fatto a{border-color:#17803f;background:#e7f6ec}
.tappa-quiz .fatto .spunta{background:#17803f;border-color:#17803f;color:#fff}
.attesa-tappa{opacity:.85}
.attesa-tappa .tappa-foto img{filter:grayscale(.6)}
@media (max-width:900px){.tappa{grid-template-columns:1fr}.tappa-foto{min-height:0;aspect-ratio:16/10}.tappa-testo{padding:4px 18px 20px}}

/* ---------- pagine di solo testo ---------- */
.testo-pagina{max-width:820px;margin:0 auto;padding:10px 24px 90px}
.testo-pagina h2{font-size:22px;font-weight:900;margin:30px 0 8px}
.testo-pagina p{margin:0 0 12px}
