/* PAGINE PUBBLICHE di forgefootball.it (27 set 2026): guida, modalità, campionati, club, informative.
   Foglio a parte e leggero (il gioco ne ha uno da 480 KB): stessi colori e caratteri del Forge Design System v2. */
:root{
  --bg:#08080a; --s1:#131317; --s2:#1b1b21; --s3:#24242b; --line:rgba(255,255,255,.08); --line2:rgba(255,255,255,.14);
  --gold:#f5c542; --gold-hi:#ffe9a8; --on-gold:#1a1200; --t1:#f4efe4; --t2:#cfc7b8; --t3:#a39b90; --ok:#3ddc7a; --bad:#f0595d;
  --r-sm:8px; --r-md:12px; --r-lg:16px; --e1:inset 0 1px 0 rgba(255,255,255,.05), 0 6px 18px -12px rgba(0,0,0,.9);
  --display:"Russo One","Chakra Petch",system-ui,sans-serif;
}
*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{ margin:0; background:var(--bg); color:var(--t1); font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  background-image:radial-gradient(1100px 600px at 50% -10%, rgba(245,197,66,.09), transparent 62%); background-repeat:no-repeat; }
a{ color:var(--gold); text-decoration:none; }
a:hover{ text-decoration:underline; }
img{ max-width:100%; height:auto; }
h1, h2, h3{ font-family:var(--display); font-weight:400; line-height:1.2; letter-spacing:.01em; margin:0 0 .5em; }
h1{ font-size:clamp(1.6rem,1.2rem + 2vw,2.4rem); }
h2{ font-size:clamp(1.2rem,1.05rem + .8vw,1.55rem); margin-top:1.6em; }
h3{ font-size:1.08rem; margin-top:1.2em; }
p{ margin:0 0 1em; color:var(--t2); }
ul, ol{ color:var(--t2); padding-left:1.2em; }
li{ margin:.25em 0; }
strong, b{ color:var(--t1); }

/* testata e piede */
.pg-top{ position:sticky; top:0; z-index:5; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 16px;
  background:rgba(8,8,10,.86); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border-bottom:1px solid var(--line); }
.pg-brand{ display:flex; align-items:center; gap:8px; color:var(--t1); font-family:var(--display); font-size:1.05rem; }
.pg-brand:hover{ text-decoration:none; }
.pg-nav{ display:flex; align-items:center; gap:14px; font-size:.92rem; }
.pg-nav a:not(.pg-btn){ color:var(--t2); }
@media (max-width:520px){ .pg-nav a:not(.pg-btn){ display:none; } }
.pg-main{ max-width:62rem; margin:0 auto; padding:18px 16px 40px; }
.pg-bc{ display:flex; flex-wrap:wrap; gap:6px; font-size:.8rem; color:var(--t3); margin:4px 0 16px; }
.pg-bc a{ color:var(--t3); } .pg-bc b{ color:var(--t2); font-weight:600; }
.pg-foot{ border-top:1px solid var(--line); background:var(--s1); padding:28px 16px 34px; }
.pg-foot-cols{ max-width:62rem; margin:0 auto; display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:18px; }
.pg-foot h2{ font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; color:var(--gold); margin:0 0 8px; }
.pg-foot a{ display:block; color:var(--t2); font-size:.92rem; padding:3px 0; }
.pg-foot-end{ max-width:62rem; margin:22px auto 0; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px;
  font-size:.8rem; color:var(--t3); }

/* bottoni */
.pg-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:11px 18px; border-radius:var(--r-md);
  background:linear-gradient(180deg,#ffd96a,var(--gold) 55%,#e0a022); color:var(--on-gold); font-weight:800; letter-spacing:.01em;
  box-shadow:0 8px 22px -12px rgba(245,197,66,.7); }
.pg-btn:hover{ text-decoration:none; filter:brightness(1.06); }
.pg-btn-sm{ padding:7px 12px; font-size:.86rem; }
.pg-btn-lg{ padding:14px 26px; font-size:1.05rem; }
.pg-btn-ghost{ background:var(--s2); color:var(--t1); border:1px solid var(--line2); box-shadow:none; }

/* blocchi di contenuto */
.pg-lead{ font-size:1.08rem; color:var(--t2); max-width:44rem; }
.pg-hero{ display:grid; gap:18px; align-items:center; margin-bottom:8px; }
@media (min-width:760px){ .pg-hero{ grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); } }
.pg-hero-cta{ display:flex; flex-wrap:wrap; gap:10px; margin-top:6px; }
.pg-card{ background:var(--s2); border:1px solid var(--line); border-radius:var(--r-lg); box-shadow:var(--e1); padding:16px; }
.pg-card h2, .pg-card h3{ margin-top:0; }
.pg-grid{ display:grid; gap:12px; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); margin:12px 0 8px; }
.pg-grid-sm{ grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); }
a.pg-card{ display:block; color:var(--t1); transition:border-color .14s, transform .14s; }
a.pg-card:hover{ text-decoration:none; border-color:rgba(245,197,66,.34); transform:translateY(-1px); }
a.pg-card small{ display:block; color:var(--t3); font-size:.82rem; margin-top:2px; }
.pg-club{ display:flex; align-items:center; gap:10px; }
.pg-crest{ width:36px; height:36px; object-fit:contain; flex:0 0 auto; }
.pg-crest-lg{ width:84px; height:84px; }
.pg-facts{ display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:8px; margin:12px 0; }
.pg-fact{ background:var(--s1); border:1px solid var(--line); border-radius:var(--r-md); padding:10px 12px; }
.pg-fact span{ display:block; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--t3); }
.pg-fact b{ font-family:var(--display); font-weight:400; font-size:1.15rem; font-variant-numeric:tabular-nums; }
.pg-tag{ display:inline-block; padding:2px 8px; border-radius:999px; background:rgba(245,197,66,.12); color:var(--gold); font-size:.75rem; font-weight:700; }

/* tabelle (rose) */
.pg-table-wrap{ overflow-x:auto; border:1px solid var(--line); border-radius:var(--r-md); margin:10px 0 16px; }
.pg-table{ width:100%; border-collapse:collapse; font-size:.92rem; font-variant-numeric:tabular-nums; }
.pg-table th{ text-align:left; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--t3); font-weight:700; background:var(--s1); }
.pg-table th, .pg-table td{ padding:8px 10px; border-bottom:1px solid var(--line); white-space:nowrap; }
.pg-table tr:last-child td{ border-bottom:0; }
.pg-table td.n{ text-align:right; } .pg-table th.n{ text-align:right; }
.pg-ovr{ display:inline-block; min-width:2.1em; text-align:center; padding:1px 6px; border-radius:6px; background:var(--s3); font-weight:800; color:var(--t1); }
.pg-ovr.hi{ background:rgba(245,197,66,.18); color:var(--gold-hi); }

/* domande frequenti */
.pg-faq details{ background:var(--s2); border:1px solid var(--line); border-radius:var(--r-md); padding:12px 14px; margin:8px 0; }
.pg-faq summary{ cursor:pointer; font-weight:700; color:var(--t1); }
.pg-faq details[open] summary{ margin-bottom:6px; }

/* invito finale e testi legali */
.pg-invito{ margin:34px 0 0; padding:24px 18px; text-align:center; border-radius:var(--r-lg); border:1px solid rgba(245,197,66,.28);
  background:linear-gradient(180deg,rgba(245,197,66,.10),rgba(245,197,66,.02)); }
.pg-invito h2{ margin-top:0; }
.pg-legal h2{ font-size:1.1rem; }
.pg-legal p, .pg-legal li{ font-size:.95rem; }
.pg-small{ font-size:.72rem; color:var(--t3); line-height:1.5; margin-top:28px; }
.pg-404{ text-align:center; padding:40px 0 10px; }
