/* A Fuocolento — tema scuro home (attivo solo su body.theme-dark) */

body.theme-dark{
  --bg:#1a1310;            /* fondo notte caldo */
  --bg-2:#211810;          /* sezione alternata, leggermente più chiara */
  --cream:#f3e9dd;         /* testo principale */
  --muted:#bfb1a4;         /* testo secondario */
  --line:#3a2c22;          /* bordi su scuro */
  --fire:#d8552b;          /* arancio brace, azioni primarie */
  --fire-deep:#b8480f;
  --blue:#9fcbe2;          /* blu ceramica schiarito per fondo scuro */
  background:var(--bg);
  color:var(--cream);
}

/* --- HERO immersivo --- */
body.theme-dark .hero{
  min-height:100vh;
  justify-content:center;      /* centrato verticalmente */
  align-items:center;
  text-align:center;
  padding:clamp(40px,8vw,90px) clamp(20px,5vw,56px);
}
/* velo radiale: scurito al centro così il logo risalta sempre */
body.theme-dark .hero::after{
  background:radial-gradient(125% 100% at 50% 40%, rgba(15,10,6,.66) 0%, rgba(15,10,6,.8) 52%, rgba(15,10,6,.97) 100%);
}
/* alone scuro morbido dietro il logo, indipendente dalla foto */
body.theme-dark .hero-inner::before{
  content:"";position:absolute;z-index:-1;
  left:50%;top:42%;transform:translate(-50%,-50%);
  width:140%;height:150%;
  background:radial-gradient(closest-side, rgba(10,6,3,.6), transparent 75%);
  pointer-events:none;
}
/* foto di sfondo statica: il movimento ora è sul logo (alone di brace) */
body.theme-dark .hero::before{transform:none}

body.theme-dark .hero-inner{
  max-width:680px;
  position:relative;
  display:flex;flex-direction:column;align-items:center;
}
body.theme-dark .hero-logo{
  width:clamp(290px,48vw,540px);
  height:auto;
  image-rendering:auto;
  margin-bottom:20px;
  animation:logoIn 1.1s ease-out both;
  will-change:opacity,transform;
}
/* ingresso del logo: dissolvenza + leggero zoom (niente filter → sicuro su iOS) */
@keyframes logoIn{
  from{opacity:0;transform:scale(1.05)}
  to{opacity:1;transform:scale(1)}
}
body.theme-dark .hero-sub{
  font-size:clamp(16px,2vw,21px);
  line-height:1.6;
  max-width:640px;
  color:#f0e6d8;
  text-shadow:0 2px 14px rgba(0,0,0,.65);
  margin-bottom:30px;
}
body.theme-dark .hero .cta{justify-content:center}
body.theme-dark .hero .cta .btn{font-size:16px;padding:15px 32px}
body.theme-dark .hero .rating{justify-content:center}

/* --- NAV: niente brand in alto a sx, solo il logo nell'hero --- */
body.theme-dark .nav{justify-content:flex-end}
body.theme-dark .nav .brand{display:none}

/* --- AVVISO prenotazioni (striscia sotto l'hero) --- */
body.theme-dark .notice{
  text-align:center;
  padding:clamp(15px,2.4vw,22px) clamp(20px,5vw,40px);
  background:linear-gradient(180deg, rgba(216,85,43,.15), rgba(216,85,43,.06));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
body.theme-dark .notice p{font-size:clamp(14px,1.7vw,16.5px);color:#f1e4d4;letter-spacing:.2px}
body.theme-dark .notice b{color:#f4c79a;font-weight:700}
body.theme-dark .notice a{color:#f0a85f;font-weight:700;white-space:nowrap;text-decoration:underline;text-underline-offset:2px}
body.theme-dark .notice a:hover{color:#ffc98a}

/* --- STRIP --- */
body.theme-dark .strip .cell{border-left-color:var(--fire)}
body.theme-dark .strip h3{color:var(--cream)}
body.theme-dark .strip p{color:var(--muted)}

/* --- SHOWCASE carne/pizza su pagina scura --- */
/* la card .show.dark ha già il suo fondo; aggiungiamo un bordo caldo per staccarla dal fondo pagina */
body.theme-dark .show.dark,
body.theme-dark .show.blue{
  border:1px solid var(--line);
}
/* assicura contrasto del bottone secondario nella sezione carne */
body.theme-dark .show.dark .btn-blue-ghost{border-color:var(--blue);color:var(--blue)}
body.theme-dark .show.dark .btn-blue-ghost:hover{background:var(--blue);color:#16344f}

/* sezione pizza: via il blu, tono terracotta/arancio che richiama il logo */
body.theme-dark .show.blue{
  background:radial-gradient(85% 120% at 18% 0%, rgba(216,85,43,.32), transparent 56%), linear-gradient(160deg,#3a2114,#231208);
  box-shadow:0 26px 60px rgba(20,14,9,.30);
}
body.theme-dark .show.blue .tag{color:#f0c89a}
body.theme-dark .show.blue h2{color:#fff}
body.theme-dark .show.blue p{color:#e9d6c2}
body.theme-dark .show.blue .btn-blue-ghost{border-color:#e8a24a;color:#f0c89a}
body.theme-dark .show.blue .btn-blue-ghost:hover{background:#e8a24a;color:#2a1708}

/* riquadri carne/pizza: foto a filo (niente scatola-dentro-scatola) */
body.theme-dark .show.dark,
body.theme-dark .show.blue{
  padding:0;
  gap:0;
  overflow:hidden;
  align-items:stretch;
}
body.theme-dark .show .ph{
  aspect-ratio:auto;
  height:auto;
  min-height:360px;
  border-radius:0;
  box-shadow:none;
}
body.theme-dark .show .ph img{height:100%}
/* la metà testo recupera il suo respiro interno */
body.theme-dark .show > div:not(.ph){
  padding:clamp(28px,4vw,52px);
  display:flex;flex-direction:column;justify-content:center;
}
/* sezione pizza: foto verticale dei titolari → riquadro più alto, così si vedono facce + pizza */
body.theme-dark .show.blue .ph{min-height:520px}
@media(max-width:760px){
  body.theme-dark .show .ph{min-height:240px}
  body.theme-dark .show.blue .ph{min-height:420px}
  /* hero più arioso su telefono: logo un filo più piccolo, più respiro */
  body.theme-dark .hero-logo{width:clamp(230px,64vw,320px);margin-bottom:16px}
  body.theme-dark .hero-sub{font-size:15px;line-height:1.55;margin-bottom:22px}
  body.theme-dark .hero .cta{gap:10px}
  body.theme-dark .hero .cta .btn{font-size:15px;padding:13px 24px}
}

/* --- GALLERY --- */
body.theme-dark .gallery{
  background:var(--bg-2);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
body.theme-dark .sec-head .eyebrow{color:var(--blue)}
body.theme-dark .sec-head h2{color:var(--cream)}

/* --- REVIEWS --- */
body.theme-dark .reviews{
  background:var(--bg-2);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
body.theme-dark .reviews-score .big{color:var(--cream)}
body.theme-dark .reviews-score .stars{color:var(--fire)}
body.theme-dark .reviews-score .sub{color:var(--muted)}
body.theme-dark .quote{
  background:#241a13;
  border:1px solid var(--line);
}
body.theme-dark .quote p{color:#e7dccd}
body.theme-dark .quote .who{color:var(--muted)}
body.theme-dark .quote .stars{color:var(--fire)}
/* placeholder citazioni (restano finché non arrivano le recensioni vere) */
body.theme-dark .quote.q-ph{border-style:dashed;border-color:#5a4636;background:#221913}
body.theme-dark .quote.q-ph p{color:#9a8a79}
/* bottone "Leggi le recensioni" */
body.theme-dark .reviews .btn-blue-ghost{border-color:var(--blue);color:var(--blue)}
body.theme-dark .reviews .btn-blue-ghost:hover{background:var(--blue);color:#16344f}

/* --- INFO + MAPPA --- */
body.theme-dark .info{
  background:var(--bg-2);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
body.theme-dark .info h2{color:var(--cream)}
body.theme-dark .info .row{color:#e0d3c3}
body.theme-dark .info .row b{color:var(--fire)}
body.theme-dark .info .note{color:var(--muted)}
body.theme-dark .info .btn-blue-ghost{border-color:var(--blue);color:var(--blue)}
body.theme-dark .info .btn-blue-ghost:hover{background:var(--blue);color:#16344f}

/* --- CALL BAR mobile --- */
body.theme-dark .callbar{
  background:rgba(26,19,16,.96);
  border-top:1px solid var(--line);
}
body.theme-dark .callbar .btn-blue-ghost{border-color:var(--blue);color:var(--blue)}

/* --- FOOTER --- */
body.theme-dark footer{
  background:var(--bg);
  color:var(--muted);
  border-top:1px solid var(--line);
}
body.theme-dark footer .soc a{color:var(--blue)}

/* --- reduced motion: niente zoom hero --- */
@media (prefers-reduced-motion: reduce){
  body.theme-dark .hero::before{animation:none;transform:none}
  body.theme-dark .hero-logo{animation:none}
}
