/* ============================================================================
   STILE 7 — ALTA CUCINA · colori e caratteri
   Nero, un filo d'oro, un solo carattere con le grazie in pesi leggeri.
   Qui lo stile è tutto nelle proporzioni e nel vuoto: niente da guardare,
   molto da leggere.
   ========================================================================== */

:root{
  --bg:        #0a0a0a;
  --bg-2:      #0f0f0f;
  --bg-3:      #131313;
  --bg-4:      #1a1a1a;
  --ember:     #c9a227;   /* l'oro è l'unico colore */
  --ember-2:   #e0bd4e;
  --flame:     #c9a227;
  --brick:     #6b5415;
  --gold:      #c9a227;
  --gold-soft: #e5cf9a;
  --basil:     #c9a227;
  --cream:     #f5f2ec;
  --muted:     #8d8778;
  --line:      rgba(201,162,39,.22);
  --shadow:    0 34px 80px rgba(0,0,0,.75);

  --gold-rgb:  201,162,39;
  --ember-rgb: 201,162,39;
  --ink-rgb:   7,7,7;

  --overlay-bg: rgba(8,8,8,.99);
  --btn-bg:     rgba(201,162,39,.08);
  --dot-bg:     rgba(201,162,39,.28);

  --font-display: "Spectral", Georgia, serif;
  --font-head:    "Spectral", Georgia, serif;
  --font-body:    "Spectral", Georgia, serif;
}

body{ background:var(--bg); }
body::before{ display:none; }

/* moltissima aria in testa */
.hero{ padding-top:86px; padding-bottom:6px; }
.hero-name{ font-weight:300; font-size:clamp(2.8rem,13vw,4rem); letter-spacing:.2em; text-shadow:none; padding-left:.2em; }
.hero .kicker{ color:var(--gold); letter-spacing:.34em; font-size:.62rem; font-weight:400; }
.hero .sub{ color:var(--muted); letter-spacing:.34em; font-size:.66rem; font-weight:400; }
.hero .flame-rule{ width:1px; height:40px; background:var(--line); box-shadow:none; margin:30px auto 24px; }

/* l'elenco numerato */
.cat-btn{ border-bottom:1px solid rgba(201,162,39,.12) !important; }
.cat-btn:last-child{ border-bottom:0 !important; }
.cat-btn .label{ font-weight:300; letter-spacing:.1em; text-transform:none; font-size:1.3rem; }
.cat-btn .count{ letter-spacing:.14em; font-size:.62rem; text-transform:uppercase; color:var(--muted); }
.cat-btn:hover, .cat-btn:focus-visible{ box-shadow:none; }
.cat-btn:hover .label{ color:var(--gold-soft); }

/* la carta: solo parole, centrate, con molto margine */
.card{ border-color:rgba(201,162,39,.16); background:var(--bg-2); }
.card .body{ padding:26px 24px; text-align:center; gap:14px; }
.card .body .line{ flex-direction:column; align-items:center; gap:12px; }
.card .body h3{ font-weight:300; font-size:1.5rem; line-height:1.28; letter-spacing:.04em; }
.card .body p{ color:var(--muted); font-size:.98rem; line-height:1.6; font-style:italic; }
.card .body .kick{ color:var(--gold); letter-spacing:.3em; }
.card .price{ position:static; display:block; margin:0 auto; background:none; color:var(--gold); box-shadow:none; padding:0; font-size:1.05rem; letter-spacing:.1em; }
.card .seal{ display:none; }
.ov-title{ font-weight:300; letter-spacing:.14em; font-size:1.3rem; }
.ov-count{ letter-spacing:.14em; }

/* a schermo intero: il piatto è al centro del nero, il prezzo sotto il nome */
/* posizione e centratura le mette il motore (stile di sole parole): qui restano
   solo i margini e l'allineamento del testo */
.overlay.pages .card .body,
.overlay.pages .card.no-photo .body{ padding:40px 30px 110px; text-align:center; }
.overlay.pages .card .body h3{ font-weight:300; font-size:1.9rem; line-height:1.3; letter-spacing:.05em; text-shadow:none; }
.overlay.pages .card .body p{ font-size:1.02rem; -webkit-line-clamp:6; }
.overlay.pages .card .price-inline{ background:none; color:var(--gold); box-shadow:none; padding:0; font-weight:400; font-size:1.1rem; letter-spacing:.12em; }
.overlay.pages .card .body .line{ flex-direction:column; align-items:center; gap:14px; }
