/* FP3NEWS — tema a due superfici. Include in ogni pagina PRIMA di altri CSS.
   Scuro = default (home, TGNEWS, TV, radio, mappa, reti).
   Chiaro = <body class="doc"> (Registro, Dossier, Outlook, Metodo, Access, Forensic, Desk Note, Accrediti, edicola). */
:root{
  --bg:#0a0a0c; --surface:#101217; --ink:#f2efe6; --ink-2:#a9a496;
  --gold:#c9a227; --line:#2a2a2f; --ok:#5fb17a; --ko:#c25b4d;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --measure:46rem;
}
body.doc{
  --bg:#faf8f3; --surface:#ffffff; --ink:#14161a; --ink-2:#5a5f6a;
  --gold:#8a6d1f; --line:#e2ddd2; --ok:#2e7d4f; --ko:#a3392c;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:1.04rem;line-height:1.6}
a{color:var(--gold);text-decoration:none;border-bottom:1px solid transparent}
a:hover,a:focus-visible{border-bottom-color:currentColor;outline:none}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
h1,h2,h3{line-height:1.15;margin:0 0 .6em;font-weight:600;letter-spacing:-.01em}
h1{font-size:clamp(2rem,5vw,3.2rem)}
h2{font-size:clamp(1.4rem,3vw,2rem);margin-top:2.6em}
h3{font-size:1.15rem;margin-top:1.6em}
p,li{max-width:var(--measure)}
p{margin:0 0 1em}
.en{color:var(--ink-2);font-size:.95rem;max-width:var(--measure)}
.wrap{max-width:64rem;margin:0 auto;padding:0 1.25rem}
/* Striscia scura: resta scura anche nelle pagine chiare (cerniera) */
.strap{background:#0a0a0c;color:#f2efe6;border-bottom:1px solid #2a2a2f}
.strap .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:.9rem;padding-bottom:.9rem}
.strap .brand{font-family:var(--mono);letter-spacing:.14em;font-size:.85rem;color:#f2efe6}
.strap nav a{color:#a9a496;margin-left:1.1rem;font-family:var(--mono);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.strap nav a:hover{color:#c9a227}
.counters{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;color:#a9a496}
.counters b{color:#c9a227;font-weight:500}
/* Kicker: filetto oro a sinistra, maiuscoletto spaziato */
.kicker{font-family:var(--mono);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);border-left:2px solid var(--gold);padding-left:.8rem;margin:2.5rem 0 .8rem;line-height:1.7}
.kicker b{color:var(--ink);font-weight:500;display:block}
main{padding:1.5rem 0 4rem}
/* Card e listino */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:1.4rem 0}
.grid>div{background:var(--surface);padding:1.4rem 1.3rem}
.grid h3{margin-top:0}
.price{font-family:var(--mono);font-size:1.5rem;color:var(--gold);display:block;margin:.3rem 0 .7rem}
.grid p{font-size:.95rem;color:var(--ink-2);margin-bottom:.5rem}
.note{font-size:.9rem;color:var(--ink-2);border-top:1px solid var(--line);padding-top:.8rem;margin-top:2rem}
.rules{list-style:none;padding:0;margin:1rem 0}
.rules li{border-top:1px solid var(--line);padding:.8rem 0;display:grid;grid-template-columns:2.2rem 1fr;gap:.5rem}
.rules li:last-child{border-bottom:1px solid var(--line)}
.rules b{font-family:var(--mono);color:var(--gold);font-weight:500}
.cta{display:inline-block;margin-top:1.2rem;padding:.7rem 1.2rem;border:1px solid var(--gold);color:var(--ink);border-radius:2px;font-family:var(--mono);font-size:.85rem;letter-spacing:.06em}
.cta:hover{background:var(--gold);color:var(--bg);border-bottom-color:var(--gold)}
.chip{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;padding:.15rem .5rem;border:1px solid var(--line);border-radius:2px;color:var(--ink-2)}
.chip.ok{color:var(--ok);border-color:var(--ok)}
.chip.ko{color:var(--ko);border-color:var(--ko)}
table{border-collapse:collapse;width:100%;font-size:.95rem;margin:1rem 0}
th,td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--line);vertical-align:top}
th{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);font-weight:500}
footer{border-top:1px solid var(--line);padding:1.5rem 0 3rem;font-size:.85rem;color:var(--ink-2)}
footer p{max-width:none}
@media (max-width:760px){.strap nav a{margin-left:.7rem}.grid{grid-template-columns:1fr}}
