/* Quizzopoli — tema "cartone animato fantasy" per la vetrina (index.html, crediti.php, privacy.php).
   Font: Barlow / Barlow Condensed (fonts/fonts.css). Nessuna risorsa esterna. */
:root{
  --navy:#0f1b4c; --navy-2:#16246a; --navy-3:#1d2f86; --night:#0a1236; --abyss:#070d29;
  --blue:#415bdf; --gold:#f5a623; --gold-2:#ffd36e; --gold-d:#b46f00;
  --red:#e84a4f; --green:#2eb280; --cream:#fff4d6;
  --ink:#f6f8ff; --ink-2:#c3cbf3; --line:rgba(255,255,255,.14);
  --stroke:#0a1236; --radius:26px;
  --font:'Barlow',system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --font-d:'Barlow Condensed','Barlow',system-ui,"Arial Narrow",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body{margin:0;color:var(--ink);font:500 18px/1.6 var(--font);-webkit-font-smoothing:antialiased;
  background:
    radial-gradient(2px 2px at 12% 18%,#fff8 50%,transparent 52%),
    radial-gradient(2px 2px at 78% 9%,#ffd36ecc 50%,transparent 52%),
    radial-gradient(1.5px 1.5px at 44% 63%,#fff7 50%,transparent 52%),
    radial-gradient(2px 2px at 90% 71%,#fff8 50%,transparent 52%),
    radial-gradient(1.5px 1.5px at 26% 88%,#ffd36eaa 50%,transparent 52%),
    linear-gradient(180deg,var(--navy) 0,var(--night) 100%);
  background-size:340px 340px,420px 420px,300px 300px,380px 380px,460px 460px,100% 100%;
  background-attachment:scroll}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold-2)}
.wrap{width:min(1140px,100% - 32px);margin-inline:auto}
:focus-visible{outline:4px solid var(--gold-2);outline-offset:3px;border-radius:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* titoli "adesivo" */
.title,h1,h2{font-family:var(--font-d);font-weight:800;text-transform:uppercase;letter-spacing:.02em;line-height:1.02;margin:0 0 14px;color:var(--gold-2);
  text-shadow:0 4px 0 var(--stroke),0 0 18px rgba(245,166,35,.35)}
@supports (paint-order:stroke){
  .title,h1,h2{-webkit-text-stroke:7px var(--stroke);paint-order:stroke fill;text-shadow:0 5px 0 var(--stroke)}
}
h1{font-size:clamp(2.3rem,5vw,3.9rem)}
h1 em{font-style:normal;color:#fff;display:block}
h2{font-size:clamp(2rem,4.6vw,3.2rem)}
h3{font-family:var(--font-d);font-weight:800;text-transform:uppercase;letter-spacing:.03em;margin:0 0 6px;font-size:1.45rem;line-height:1.1;color:#fff}
.sub{color:var(--ink-2);max-width:40em;margin:0 0 38px;font-size:1.1rem}
.eyebrow{display:inline-block;font:800 1rem/1 var(--font-d);letter-spacing:.14em;text-transform:uppercase;color:var(--stroke);
  background:var(--gold-2);border:3px solid var(--stroke);border-radius:999px;padding:8px 16px 6px;margin-bottom:18px;box-shadow:0 4px 0 var(--stroke);transform:rotate(-2deg)}

/* pulsanti */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px 11px;border-radius:999px;font:800 1.2rem/1.1 var(--font-d);letter-spacing:.06em;text-transform:uppercase;
  text-decoration:none;border:4px solid var(--stroke);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;box-shadow:0 6px 0 var(--stroke)}
.btn:hover{transform:translateY(-3px);box-shadow:0 9px 0 var(--stroke)}
.btn:active{transform:translateY(4px);box-shadow:0 2px 0 var(--stroke)}
.btn-gold{background:linear-gradient(180deg,#ffe08a 0,var(--gold) 100%);color:var(--stroke)}
.btn-blue{background:linear-gradient(180deg,#6f86f2 0,var(--blue) 100%);color:#fff}
.btn-line{background:var(--navy-2);color:#fff}
.btn-wa{background:#25D366;color:#0a1236}
.btn-sm{padding:9px 20px 7px;font-size:1.05rem;box-shadow:0 4px 0 var(--stroke);white-space:nowrap}
.cta{display:flex;flex-wrap:wrap;gap:16px}

/* intestazione */
.top{position:sticky;top:0;z-index:30;background:rgba(10,18,54,.94);backdrop-filter:blur(8px);border-bottom:4px solid var(--stroke);box-shadow:0 4px 0 var(--gold)}
.top .wrap{display:flex;align-items:center;gap:22px;min-height:68px}
.brand{display:inline-flex;align-items:center;font:800 2rem/1 var(--font-d);letter-spacing:.04em;text-transform:uppercase;color:#fff;text-decoration:none;margin-right:auto;text-shadow:0 3px 0 var(--stroke)}
.brand b{color:var(--gold)}
.brand-badge{width:60px;height:60px;margin:-2px 12px -10px 0;flex:none;filter:drop-shadow(0 4px 0 rgba(0,0,0,.45));transition:transform .2s ease}
.brand:hover .brand-badge{transform:rotate(-8deg) scale(1.06)}
.nav{display:flex;gap:24px}
.nav a{font:700 1.15rem/1 var(--font-d);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);text-decoration:none}
.nav a:hover{color:var(--gold-2)}
@media (max-width:760px){.nav{display:none}}
@media (max-width:420px){.top .wrap{gap:10px}.brand{font-size:1.5rem}.brand-badge{width:48px;height:48px;margin-right:8px}.btn-sm{padding:8px 14px 6px;font-size:.95rem}}

/* onde di separazione */
.wave{height:34px;background:var(--wave,var(--navy-2));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 34' preserveAspectRatio='none'%3E%3Cpath d='M0 34V16C15 0 30 0 45 12s30 14 45 2 20-12 30-6v26z'/%3E%3C/svg%3E") 0 0/120px 100% repeat-x;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 34' preserveAspectRatio='none'%3E%3Cpath d='M0 34V16C15 0 30 0 45 12s30 14 45 2 20-12 30-6v26z'/%3E%3C/svg%3E") 0 0/120px 100% repeat-x;margin-top:-33px;position:relative}

/* hero */
.hero{position:relative;padding:64px 0 74px;overflow:hidden;border-bottom:4px solid var(--stroke);
  background:
    linear-gradient(90deg,rgba(10,18,54,.97) 0,rgba(10,18,54,.88) 42%,rgba(10,18,54,.35) 100%),
    url(images/home/c-sipario.jpg) center/cover no-repeat,var(--night)}
.hero .wrap{display:grid;grid-template-columns:1.02fr 1fr;gap:46px;align-items:center;position:relative}
.hero .lockup{display:none;align-items:center;gap:16px;margin-bottom:20px}
.hero .lockup .nl{width:170px;filter:drop-shadow(0 4px 0 rgba(0,0,0,.35))}
.hero .lockup i{width:3px;height:70px;background:var(--gold);border-radius:3px;box-shadow:0 0 0 2px var(--stroke)}
.hero .lockup .badge{width:104px;height:104px;filter:drop-shadow(0 5px 0 rgba(0,0,0,.4))}
.lead{font-size:1.28rem;color:var(--cream);margin:0 0 28px;max-width:32em;font-weight:500}
.answers{display:flex;gap:10px;margin:0 0 30px}
.answers i{font:800 1.5rem/1 var(--font-d);font-style:normal;width:48px;height:48px;display:grid;place-items:center;border-radius:14px;border:4px solid var(--stroke);color:#fff;box-shadow:0 5px 0 var(--stroke);text-shadow:0 2px 0 rgba(0,0,0,.35)}
.answers i:nth-child(1){background:var(--red);transform:rotate(-5deg)}
.answers i:nth-child(2){background:var(--blue);transform:rotate(3deg)}
.answers i:nth-child(3){background:var(--gold);color:var(--stroke);text-shadow:none;transform:rotate(-3deg)}
.answers i:nth-child(4){background:var(--green);transform:rotate(5deg)}
.poster{margin:0;border:6px solid var(--stroke);border-radius:30px;overflow:hidden;box-shadow:0 0 0 4px var(--gold),0 14px 0 4px var(--stroke),0 30px 60px rgba(0,0,0,.5);transform:rotate(2deg)}
@media (prefers-reduced-motion:no-preference){.poster{animation:bob 6s ease-in-out infinite}@keyframes bob{50%{transform:rotate(1deg) translateY(-8px)}}}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr}.hero{padding-top:36px}.poster{max-width:560px}.hero .lockup{display:flex}}

/* numeri */
.stats{background:linear-gradient(180deg,var(--navy-3),var(--navy-2));border-block:4px solid var(--stroke)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-block:26px;text-align:center}
.stats strong{display:block;font:800 clamp(2.2rem,5vw,3.4rem)/1 var(--font-d);color:var(--gold-2);text-shadow:0 4px 0 var(--stroke)}
.stats span{font:700 1.1rem/1.2 var(--font-d);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
@media (max-width:640px){.stats .wrap{grid-template-columns:repeat(2,1fr);row-gap:22px}}

section{padding:84px 0}
.alt{background:linear-gradient(180deg,var(--navy-2),#101c58);border-block:4px solid var(--stroke)}

/* carte generiche */
.card{background:linear-gradient(170deg,var(--navy-3),var(--navy-2));border:4px solid var(--stroke);border-radius:var(--radius);box-shadow:0 8px 0 var(--stroke),inset 0 0 0 2px rgba(255,255,255,.10)}

/* come funziona */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.step{padding:24px;display:flex;flex-direction:column;gap:12px}
.step:nth-child(1){transform:rotate(-1deg)}.step:nth-child(3){transform:rotate(1deg)}
.num{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font:800 1.9rem/1 var(--font-d);color:var(--stroke);background:var(--gold);border:4px solid var(--stroke);box-shadow:0 4px 0 var(--stroke);margin-top:-46px}
.step:nth-child(2) .num{background:var(--blue);color:#fff}
.step:nth-child(3) .num{background:var(--green);color:#fff}
.step p{margin:0;color:var(--ink-2)}
.stage{margin:6px -24px -24px;height:410px;overflow:hidden;display:flex;justify-content:center;align-items:flex-end;border-top:4px solid var(--stroke);border-radius:0 0 22px 22px;background:var(--night) center/cover no-repeat;margin-top:auto}
.stage.s1{background-image:linear-gradient(rgba(10,18,54,.25),rgba(10,18,54,.55)),url(images/home/c-sipario.jpg)}
.stage.s2{background-image:linear-gradient(rgba(10,18,54,.25),rgba(10,18,54,.55)),url(images/home/c-suspense.jpg)}
.stage.s3{background-image:url(images/mascotte/scena-podio.jpg);background-position:50% center}
.stage{position:relative}
.stage .pose{position:absolute;bottom:6px;height:150px;width:auto;z-index:3;pointer-events:none;filter:drop-shadow(0 5px 0 rgba(0,0,0,.35))}
.stage.s1 .pose{left:6px}
.stage.s2 .pose{right:6px}
.stage.s1 .phone{margin-left:auto;margin-right:14px}
.stage.s2 .phone{margin-right:auto;margin-left:14px}
@media (max-width:900px){.stage .pose{height:170px}.stage.s1 .phone,.stage.s2 .phone{margin-inline:auto}.stage.s1 .pose{left:calc(50% - 250px)}.stage.s2 .pose{right:calc(50% - 250px)}}
@media (max-width:560px){.stage.s1 .phone{margin-left:auto;margin-right:10px}.stage.s2 .phone{margin-right:auto;margin-left:10px}.stage .pose{height:130px}.stage.s1 .pose{left:2px}.stage.s2 .pose{right:2px}}
.phone{width:226px;flex:none;margin-bottom:-70px;border:6px solid var(--stroke);border-radius:34px 34px 0 0;box-shadow:0 0 0 3px var(--gold);overflow:hidden;background:var(--night)}
@media (max-width:900px){.steps{grid-template-columns:1fr;gap:46px}.step:nth-child(n){transform:none}}

/* giochi */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.game{overflow:hidden;display:flex;flex-direction:column;transition:transform .18s ease}
.game:nth-child(3n+1){transform:rotate(-1deg)}.game:nth-child(3n){transform:rotate(1deg)}
.game:hover{transform:rotate(0) translateY(-6px)}
.game img{aspect-ratio:16/9;object-fit:cover;width:100%;border-bottom:4px solid var(--stroke);background:var(--night)}
.game div{padding:16px 20px 22px}
.game p{margin:0;color:var(--ink-2);font-size:1rem;line-height:1.5}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:38px}
.chips span{font:700 1.1rem/1 var(--font-d);letter-spacing:.06em;text-transform:uppercase;background:var(--navy-3);border:3px solid var(--stroke);border-radius:999px;padding:9px 16px 7px;color:var(--gold-2);box-shadow:0 3px 0 var(--stroke)}
.chips span:nth-child(4n+2){color:#9fb1ff}.chips span:nth-child(4n+3){color:#ff9a9e}.chips span:nth-child(4n){color:#7fe0b8}
@media (max-width:980px){.grid{grid-template-columns:repeat(2,1fr)}.game:nth-child(n){transform:none}}
@media (max-width:620px){.grid{grid-template-columns:1fr}}

/* caratteristiche */
.feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px}
.f{padding:24px 22px 22px}
.f .ic{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;font-size:2rem;line-height:1;margin-bottom:12px;border:4px solid var(--stroke);box-shadow:0 4px 0 var(--stroke);background:var(--gold)}
.f:nth-child(2) .ic{background:var(--blue)}.f:nth-child(3) .ic{background:var(--green)}.f:nth-child(4) .ic{background:var(--red)}
.f p{margin:0;color:var(--ink-2);font-size:1rem;line-height:1.5}

/* locali */
.locali{background:linear-gradient(rgba(10,18,54,.9),rgba(10,18,54,.94)),url(images/home/c-platea.jpg) center/cover no-repeat;border-block:4px solid var(--stroke)}
.who{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}
.who ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.who li{display:flex;gap:14px;align-items:flex-start}
.who li::before{content:"★";flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:3px solid var(--stroke);background:var(--gold);color:var(--stroke);font-size:.95rem;margin-top:2px;box-shadow:0 3px 0 var(--stroke)}
.who li:nth-child(2)::before{background:var(--blue);color:#fff}.who li:nth-child(3)::before{background:var(--green);color:#fff}.who li:nth-child(4)::before{background:var(--red);color:#fff}
.who strong{color:#fff}
.who span{color:var(--ink-2)}
.box{padding:34px 30px 30px;position:relative}
.box .mascot{position:absolute;right:-6px;top:-118px;height:170px;width:auto;filter:drop-shadow(0 6px 0 rgba(0,0,0,.4));transform:rotate(3deg)}
.box p{margin:0 0 18px;color:var(--ink-2)}
.tel{display:block;font:800 2.6rem/1 var(--font-d);letter-spacing:.04em;color:var(--gold-2);text-decoration:none;margin:4px 0 22px;text-shadow:0 3px 0 var(--stroke)}
.nl-box{display:flex;align-items:center;gap:16px;margin-top:22px;padding-top:18px;border-top:3px dashed rgba(255,255,255,.18);font-size:.95rem;color:var(--ink-2)}
.nl-box img{width:110px;flex:none}
@media (max-width:900px){.who{grid-template-columns:1fr;gap:80px}.box .mascot{height:130px;top:-92px}}

/* piè di pagina */
footer{background:var(--abyss);border-top:4px solid var(--gold);padding:38px 0 46px;color:var(--ink-2);font-size:.98rem}
footer .wrap{display:flex;flex-wrap:wrap;gap:18px 30px;justify-content:space-between;align-items:center}
footer .fl{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
footer .fb,footer .fb+a{flex:none}
footer .fl img{flex:none}
footer .fb img{width:84px;height:84px;filter:drop-shadow(0 4px 0 rgba(0,0,0,.45))}
footer .fnl{width:120px;max-width:none}
footer .fb+a{padding-left:18px;border-left:3px solid var(--gold)}
footer a{color:var(--gold-2)}

/* pagine di testo (crediti, privacy) */
.page{padding:48px 0 76px}
.page .card{padding:32px 30px;margin-bottom:28px}
.page p,.page li{color:var(--ink-2)}
.page li{margin:.3em 0}
.page h3{color:var(--gold-2);margin-top:1.2em;font-size:1.5rem}
.page a{color:var(--gold-2)}
