:root {
  color-scheme: dark;
  --ink: #f4f8ed;
  --muted: #9daea5;
  --deep: #071612;
  --deep-2: #0b211a;
  --panel: #102a21;
  --panel-2: #15382b;
  --line: rgba(231, 244, 234, 0.15);
  --lime: #d9ff66;
  --mint: #72e5b4;
  --coral: #ff725e;
  --gold: #ffcc59;
  --white: #ffffff;
  --display: "Arial Narrow", "Avenir Next Condensed", "Helvetica Neue", sans-serif;
  --body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --max: 1180px;
  --radius: 22px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 116px; }
body {
  margin: 0;
  background: var(--deep);
  color: var(--ink);
  font-family: var(--body);
  font-size: 16px;
  line-height: 1.55;
  overflow-x: hidden;
}

a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }

.skip-link {
  position: fixed;
  z-index: 100;
  left: 1rem;
  top: 1rem;
  transform: translateY(-160%);
  background: var(--lime);
  color: var(--deep);
  padding: .75rem 1rem;
  border-radius: 999px;
  font-weight: 800;
}
.skip-link:focus { transform: none; }

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  height: 72px;
  display: flex;
  align-items: center;
  gap: 2rem;
  padding: 0 clamp(1rem, 3vw, 3rem);
  border-bottom: 1px solid var(--line);
  background: rgba(7, 22, 18, .9);
  backdrop-filter: blur(18px);
}

.brand { display: flex; align-items: center; gap: .75rem; text-decoration: none; min-width: max-content; }
.brand-mark {
  display: grid; place-items: center; width: 38px; height: 38px;
  background: var(--lime); color: var(--deep); border-radius: 10px;
  font-family: var(--display); font-size: 1.05rem; font-weight: 950; letter-spacing: -.04em;
}
.brand-copy { display: grid; line-height: 1.05; }
.brand-copy strong { font-size: .9rem; letter-spacing: .02em; }
.brand-copy small { color: var(--muted); font-size: .7rem; margin-top: .25rem; }

.season-nav { display: flex; align-items: center; gap: .45rem; overflow: auto; scrollbar-width: none; }
.season-pill {
  flex: 0 0 auto; padding: .48rem .75rem; border: 1px solid var(--line); border-radius: 999px;
  color: var(--muted); font-size: .73rem; font-weight: 750; letter-spacing: .04em;
}
.season-pill.active { border-color: rgba(217,255,102,.4); color: var(--lime); background: rgba(217,255,102,.07); }
.season-pill.planned { opacity: .65; }
.menu-toggle { display: none; margin-left: auto; border: 1px solid var(--line); border-radius: 999px; background: transparent; color: var(--ink); padding: .5rem .8rem; }

.section-nav {
  position: fixed; z-index: 40; top: 72px; left: 0; right: 0; min-height: 44px;
  display: flex; justify-content: center; align-items: center; gap: 1.5rem; padding: 0 1rem;
  border-bottom: 1px solid var(--line); background: rgba(7,22,18,.78); backdrop-filter: blur(12px);
}
.section-nav a { color: var(--muted); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.section-nav a:hover, .section-nav a.active { color: var(--lime); }

main { display: block; }
.hero, .section, .future-section, footer { width: min(calc(100% - 2rem), var(--max)); margin-inline: auto; }

.hero {
  position: relative; min-height: 780px; padding: 180px 0 54px;
  display: grid; grid-template-columns: minmax(0,1.08fr) minmax(360px,.92fr); grid-template-rows: 1fr auto; gap: 3rem 5rem;
}
.hero-grid {
  position: absolute; inset: 116px -25vw 0; pointer-events: none; opacity: .34;
  background-image: linear-gradient(rgba(114,229,180,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(114,229,180,.08) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: linear-gradient(to bottom, black, transparent 88%);
}
.hero-copy { position: relative; align-self: center; }
.eyebrow, .kicker { color: var(--mint); font-size: .76rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow { display: flex; align-items: center; gap: .6rem; }
.eyebrow span { width: 28px; height: 1px; background: var(--mint); }
.champion-label {
  display: inline-flex; margin: 2rem 0 .85rem; padding: .38rem .65rem; border: 1px solid rgba(217,255,102,.4); border-radius: 999px;
  background: rgba(217,255,102,.08); color: var(--lime); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase;
}
.hero h1, .section h2, .future-section h2 {
  margin: 0; font-family: var(--display); text-transform: uppercase; letter-spacing: -.055em; line-height: .89;
}
.hero h1 { font-size: clamp(4.6rem, 9vw, 8.4rem); }
.hero-dek { max-width: 630px; margin: 1.6rem 0 0; color: #c1cec6; font-size: clamp(1rem, 1.7vw, 1.25rem); line-height: 1.55; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: .65rem 1rem; border-radius: 999px; text-decoration: none; font-weight: 850; font-size: .82rem; }
.button.primary { background: var(--lime); color: var(--deep); }
.button.ghost { border: 1px solid var(--line); color: var(--ink); }
.button:hover { transform: translateY(-2px); }

.scoreboard {
  position: relative; align-self: center; border: 1px solid rgba(217,255,102,.24); border-radius: 26px; padding: 1rem;
  background: linear-gradient(150deg, rgba(21,56,43,.97), rgba(7,22,18,.98)); box-shadow: 0 30px 90px rgba(0,0,0,.32), inset 0 0 50px rgba(114,229,180,.035);
}
.scoreboard::before { content:""; position:absolute; inset:8px; border: 1px solid rgba(255,255,255,.05); border-radius: 19px; pointer-events:none; }
.scoreboard-topline, .scoreboard-footer { position: relative; display: flex; align-items: center; justify-content: space-between; padding: .4rem .55rem .9rem; color: var(--muted); font-size: .68rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.final-light { display: inline-flex; align-items: center; gap: .35rem; color: var(--mint); }
.final-light i { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 14px var(--mint); }
.score-row { position:relative; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.15rem .55rem; border-top:1px solid var(--line); color:#b9c6be; }
.score-row.winner { color: var(--white); }
.score-row > div { display:flex; align-items:center; gap:.7rem; }
.score-row strong { font-size: .95rem; line-height:1.2; }
.seed { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:rgba(255,255,255,.06); color:var(--muted); font-size:.67rem; font-weight:900; }
.winner .seed { background:var(--lime); color:var(--deep); }
.score { font-family: var(--display); font-size: clamp(2rem,4vw,3rem); font-weight:950; letter-spacing:-.05em; }
.winner .score { color:var(--lime); }
.scoreboard-footer { display:grid; grid-template-columns:auto 1fr auto auto; gap:.55rem; padding-top:1rem; }
.scoreboard-footer strong:first-of-type { color:var(--lime); }
.scoreboard-footer strong { color:var(--ink); text-align:left; }

.hero-metrics { position:relative; grid-column:1/-1; display:grid; grid-template-columns:repeat(4,1fr); margin:0; border-block:1px solid var(--line); }
.hero-metrics div { padding:1.2rem 1.35rem; border-right:1px solid var(--line); }
.hero-metrics div:last-child { border-right:0; }
.hero-metrics dt { color:var(--muted); font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.hero-metrics dd { margin:.2rem 0 0; font-family:var(--display); font-size:2rem; font-weight:900; letter-spacing:-.04em; }

.section { padding: clamp(5rem, 9vw, 8.5rem) 0; border-top:1px solid var(--line); }
.section-heading { max-width:760px; margin-bottom:3rem; }
.section-heading h2, .future-section h2 { font-size:clamp(3rem,7vw,6.4rem); }
.section-heading > p:last-child { max-width:680px; color:#b7c6bd; font-size:1.05rem; }
.split-heading { max-width:none; display:grid; grid-template-columns:1.15fr .85fr; gap:4rem; align-items:end; }
.split-heading > p { margin-bottom:.4rem; }

.grade-panel { display:grid; grid-template-columns:.9fr 1.1fr; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; }
.overall-grade { padding:2.2rem; background:var(--lime); color:var(--deep); }
.overall-grade span, .grade-grid span { font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.overall-grade strong { display:block; margin:.2rem 0; font-family:var(--display); font-size:7rem; line-height:.95; letter-spacing:-.08em; }
.overall-grade p { max-width:280px; margin:.8rem 0 0; font-weight:650; }
.grade-grid { display:grid; grid-template-columns:repeat(3,1fr); }
.grade-grid div { display:flex; flex-direction:column; justify-content:space-between; min-height:130px; padding:1.4rem; border-left:1px solid var(--line); border-bottom:1px solid var(--line); }
.grade-grid div:nth-child(n+4) { border-bottom:0; }
.grade-grid span { color:var(--muted); }
.grade-grid strong { font-family:var(--display); font-size:2.9rem; letter-spacing:-.05em; }
.grade-grid .accent { color:var(--lime); background:rgba(217,255,102,.05); }
.advantage-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:1rem; }
.advantage { position:relative; min-height:230px; padding:1.55rem; border:1px solid var(--line); border-radius:var(--radius); background:rgba(255,255,255,.015); }
.advantage .number { color:var(--lime); font-family:var(--display); font-size:1.2rem; font-weight:900; }
.advantage h3 { margin:3.2rem 0 .6rem; font-family:var(--display); font-size:2rem; text-transform:uppercase; letter-spacing:-.04em; }
.advantage p { margin:0; color:var(--muted); }

.chart-shell { border:1px solid var(--line); border-radius:var(--radius); background:rgba(255,255,255,.018); overflow:hidden; }
.chart-toolbar { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.3rem 1.5rem; border-bottom:1px solid var(--line); }
.chart-toolbar > div:first-child { display:grid; }
.chart-toolbar strong { font-size:.94rem; }
.chart-toolbar span { color:var(--muted); font-size:.72rem; }
.segmented { display:flex; padding:3px; background:rgba(255,255,255,.05); border-radius:999px; }
.segmented button { border:0; border-radius:999px; background:transparent; color:var(--muted); padding:.45rem .75rem; font-size:.72rem; font-weight:800; cursor:pointer; }
.segmented button.active { background:var(--lime); color:var(--deep); }
.chart-wrap { position:relative; padding:1rem; min-height:390px; }
.chart-wrap svg { display:block; width:100%; height:auto; overflow:visible; }
.chart-tooltip { position:absolute; z-index:3; display:none; min-width:170px; padding:.7rem .8rem; border:1px solid var(--line); border-radius:12px; background:#06110e; box-shadow:0 12px 30px rgba(0,0,0,.35); font-size:.74rem; pointer-events:none; }
.chart-tooltip.visible { display:block; }
.chart-footnotes { display:flex; gap:1.2rem; padding:0 1.5rem 1.2rem; color:var(--muted); font-size:.7rem; }
.chart-footnotes span { display:flex; align-items:center; gap:.35rem; }
.legend-dot { width:7px; height:7px; border-radius:50%; }
.legend-dot.lime { background:var(--lime); }.legend-dot.coral { background:var(--coral); }
.legend-line { width:14px; height:1px; border-top:1px dashed var(--muted); }
.stat-strip { display:grid; grid-template-columns:repeat(5,1fr); margin-top:1rem; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; }
.stat-strip div { padding:1.25rem; border-right:1px solid var(--line); }
.stat-strip div:last-child { border:0; }
.stat-strip span { display:block; color:var(--muted); font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.stat-strip strong { font-family:var(--display); font-size:1.9rem; letter-spacing:-.04em; }

.source-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:5rem; align-items:center; }
.source-visual { display:grid; place-items:center; }
.donut { width:min(360px,78vw); aspect-ratio:1; padding:32px; border-radius:50%; background:conic-gradient(var(--lime) 0 59.6%, var(--mint) 59.6% 100%); box-shadow:0 25px 70px rgba(0,0,0,.22); }
.donut > div { display:grid; place-items:center; align-content:center; width:100%; height:100%; border-radius:50%; background:var(--deep); text-align:center; }
.donut strong { font-family:var(--display); font-size:clamp(2.6rem,6vw,4.4rem); letter-spacing:-.06em; }
.donut span { max-width:110px; color:var(--muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; }
.source-copy h2 { margin:0; font-family:var(--display); font-size:clamp(2.8rem,5vw,5rem); text-transform:uppercase; line-height:.94; letter-spacing:-.05em; }
.source-bars { display:grid; gap:1.1rem; margin-top:2rem; }
.source-bars > div { display:grid; gap:.45rem; }
.source-bars span { display:flex; justify-content:space-between; gap:1rem; font-size:.78rem; }
.source-bars em { color:var(--muted); font-style:normal; }
.source-bars i { display:block; height:10px; border-radius:99px; background:rgba(255,255,255,.07); overflow:hidden; }
.source-bars u { display:block; height:100%; border-radius:inherit; background:var(--lime); text-decoration:none; }
.source-bars > div:nth-child(2) u { background:var(--mint); }
.source-note, .map-note { color:var(--muted); font-size:.78rem; }

.draft-board { display:grid; gap:.42rem; }
.draft-row { display:grid; grid-template-columns:52px minmax(150px,1fr) 1fr 76px 82px; gap:1rem; align-items:center; padding:.75rem 1rem; border:1px solid transparent; border-radius:12px; background:rgba(255,255,255,.025); }
.draft-row:hover { border-color:var(--line); background:rgba(255,255,255,.045); }
.draft-round { color:var(--muted); font-size:.7rem; font-weight:800; }
.draft-player { font-weight:780; }
.draft-bar { display:flex; align-items:center; gap:.8rem; }
.draft-bar i { flex:1; height:7px; border-radius:99px; background:rgba(255,255,255,.06); overflow:hidden; }
.draft-bar u { display:block; height:100%; border-radius:inherit; background:var(--mint); }
.draft-bar span { width:58px; text-align:right; color:var(--muted); font-size:.72rem; font-variant-numeric:tabular-nums; }
.grade-chip { justify-self:end; min-width:44px; padding:.28rem .5rem; border-radius:999px; background:rgba(114,229,180,.1); color:var(--mint); font-size:.68rem; font-weight:900; text-align:center; }
.grade-chip.low { background:rgba(255,114,94,.1); color:var(--coral); }
.callout-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:1.5rem; }
.callout { padding:1.35rem; border-left:3px solid var(--mint); background:rgba(255,255,255,.025); }
.callout.bad { border-color:var(--coral); }
.callout span { color:var(--muted); font-size:.68rem; font-weight:850; text-transform:uppercase; letter-spacing:.07em; }
.callout strong { display:block; margin:.35rem 0; font-family:var(--display); font-size:1.45rem; text-transform:uppercase; }
.callout p { margin:0; color:var(--muted); font-size:.82rem; }

.position-map { display:grid; gap:.65rem; max-width:900px; }
.position-row { display:grid; grid-template-columns:48px 1fr 80px; align-items:center; gap:1rem; }
.position-row > span { color:var(--mint); font-family:var(--display); font-size:1.2rem; font-weight:900; }
.position-row i { height:20px; background:rgba(255,255,255,.045); border-radius:5px; overflow:hidden; }
.position-row u { display:block; height:100%; background:linear-gradient(90deg,var(--mint),var(--lime)); text-decoration:none; }
.position-row strong { font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }
.position-row.weak > span, .position-row.weak strong { color:var(--coral); }
.position-row.weak u { background:var(--coral); }

.transaction-ledger { display:grid; grid-template-columns:.8fr 1fr 1fr; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; }
.ledger-total, .move-list { padding:1.6rem; }
.ledger-total { display:flex; flex-direction:column; justify-content:center; background:var(--lime); color:var(--deep); }
.ledger-total span, .list-label { font-size:.7rem; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.ledger-total strong { font-family:var(--display); font-size:4.4rem; line-height:1; letter-spacing:-.06em; }
.ledger-total small { margin-top:.5rem; font-weight:720; }
.move-list { border-left:1px solid var(--line); }
.list-label { margin:0 0 1rem; color:var(--muted); }
.move-list ol { margin:0; padding:0; list-style:none; counter-reset:moves; }
.move-list li { display:flex; justify-content:space-between; gap:1rem; padding:.62rem 0; border-top:1px solid var(--line); counter-increment:moves; }
.move-list li span::before { content:counter(moves, decimal-leading-zero); margin-right:.65rem; color:var(--muted); font-size:.68rem; }
.move-list li strong { color:var(--mint); font-variant-numeric:tabular-nums; }
.move-list.negative li strong { color:var(--coral); }

.foundry-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.foundry-card { min-height:150px; display:flex; flex-direction:column; justify-content:flex-end; padding:1.35rem; border:1px solid var(--line); border-radius:var(--radius); background:rgba(255,255,255,.025); }
.foundry-card.featured { background:var(--lime); color:var(--deep); }
.foundry-card span { margin-bottom:auto; color:var(--muted); font-size:.7rem; font-weight:850; text-transform:uppercase; letter-spacing:.07em; }
.foundry-card.featured span { color:rgba(7,22,18,.65); }
.foundry-card strong { font-family:var(--display); font-size:3.2rem; line-height:1; letter-spacing:-.05em; }
.foundry-card small { margin-top:.4rem; color:var(--muted); }
.foundry-card.featured small { color:rgba(7,22,18,.68); }
.signal-table { margin-top:1.5rem; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; }
.signal-row { display:grid; grid-template-columns:.7fr 1.35fr 1fr; gap:1rem; padding:1rem 1.2rem; border-top:1px solid var(--line); align-items:center; }
.signal-row:first-child { border:0; }
.signal-row.header { color:var(--muted); background:rgba(255,255,255,.03); font-size:.68rem; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.signal-row span, .signal-row em { color:var(--muted); font-size:.82rem; font-style:normal; }
.signal-row em { color:var(--mint); }

.final-section { width:100%; max-width:none; padding-inline:max(1rem,calc((100% - var(--max))/2)); background:var(--lime); color:var(--deep); }
.section-heading.light .kicker, .section-heading.light > p:last-child { color:rgba(7,22,18,.68); }
.cumulative-chart-shell { padding:1rem; border:1px solid rgba(7,22,18,.22); border-radius:var(--radius); background:rgba(255,255,255,.16); }
.cumulative-chart-shell svg { display:block; width:100%; }
.final-notes { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:1.5rem; background:rgba(7,22,18,.18); border:1px solid rgba(7,22,18,.18); border-radius:var(--radius); overflow:hidden; }
.final-notes article { padding:1.35rem; background:var(--lime); }
.final-notes span { font-size:.68rem; font-weight:850; letter-spacing:.07em; text-transform:uppercase; opacity:.65; }
.final-notes strong { display:block; margin:1.4rem 0 .5rem; font-family:var(--display); font-size:2rem; text-transform:uppercase; letter-spacing:-.04em; }
.final-notes p { margin:0; font-size:.82rem; opacity:.75; }
.day-strip { display:grid; grid-template-columns:repeat(7,1fr); gap:.55rem; margin-top:1.5rem; }
.day-card { padding:1rem; border:1px solid rgba(7,22,18,.2); border-radius:14px; }
.day-card span { display:block; font-size:.66rem; font-weight:850; text-transform:uppercase; letter-spacing:.07em; opacity:.65; }
.day-card strong { display:block; font-family:var(--display); font-size:1.75rem; }
.day-card small { font-size:.68rem; opacity:.67; }

.rules-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:var(--line); }
.rules-grid article { display:grid; grid-template-columns:54px 1fr; gap:1rem; align-items:start; min-height:110px; padding:1.25rem; background:var(--deep); }
.rules-grid span { color:var(--lime); font-family:var(--display); font-size:1.2rem; font-weight:900; }
.rules-grid p { margin:0; color:#c2cec7; }

.method-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.method-grid details { border:1px solid var(--line); border-radius:16px; padding:1rem 1.15rem; background:rgba(255,255,255,.02); }
.method-grid summary { cursor:pointer; font-weight:800; }
.method-grid p { margin:.85rem 0 0; color:var(--muted); font-size:.85rem; }
.document-links { display:grid; grid-template-columns:repeat(2,1fr); gap:.8rem; margin-top:2rem; }
.document-links a { display:grid; padding:1rem 1.1rem; border:1px solid var(--line); border-radius:14px; text-decoration:none; }
.document-links a:hover { border-color:rgba(217,255,102,.45); background:rgba(217,255,102,.035); }
.document-links span { color:var(--mint); font-size:.68rem; font-weight:850; text-transform:uppercase; letter-spacing:.07em; }
.document-links strong { margin-top:.25rem; }
.source-list { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.2rem; }
.source-list a { padding:.45rem .7rem; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:.72rem; text-decoration:none; }
.source-list a:hover { color:var(--lime); border-color:rgba(217,255,102,.35); }

.future-section { padding:7rem 0; display:grid; grid-template-columns:.85fr 1.15fr; gap:4rem; align-items:end; border-top:1px solid var(--line); }
.future-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:.7rem; }
.future-cards article { min-height:150px; display:flex; flex-direction:column; justify-content:space-between; padding:1rem; border:1px solid var(--line); border-radius:16px; color:var(--muted); }
.future-cards article.active { background:var(--lime); color:var(--deep); border-color:var(--lime); }
.future-cards span { font-size:.68rem; font-weight:850; text-transform:uppercase; letter-spacing:.07em; }
.future-cards strong { font-family:var(--display); font-size:1.8rem; text-transform:uppercase; }
.future-cards small { font-size:.68rem; }

footer { display:flex; justify-content:space-between; gap:1rem; padding:1.4rem 0 2rem; border-top:1px solid var(--line); color:var(--muted); font-size:.7rem; }
footer a { color:var(--lime); text-decoration:none; }

.svg-axis { fill:var(--muted); font-size:12px; font-family:var(--body); }
.svg-grid { stroke:rgba(231,244,234,.1); stroke-width:1; }
.svg-average { stroke:rgba(244,248,237,.45); stroke-width:1.2; stroke-dasharray:6 7; }
.svg-win { fill:var(--lime); }.svg-loss { fill:var(--coral); }
.svg-hit { fill:transparent; cursor:pointer; }
.svg-label { fill:var(--deep); font:800 12px var(--body); }

@media (max-width: 900px) {
  .season-nav .planned { display:none; }
  .hero { grid-template-columns:1fr; min-height:auto; gap:3rem; padding-top:160px; }
  .scoreboard { width:100%; max-width:620px; }
  .hero-metrics { grid-template-columns:repeat(2,1fr); }
  .hero-metrics div:nth-child(2) { border-right:0; }
  .hero-metrics div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .split-heading, .source-section, .future-section { grid-template-columns:1fr; gap:2rem; }
  .grade-panel { grid-template-columns:1fr; }
  .grade-grid div:nth-child(1), .grade-grid div:nth-child(4) { border-left:0; }
  .advantage-grid, .callout-grid, .foundry-grid { grid-template-columns:1fr 1fr; }
  .transaction-ledger { grid-template-columns:1fr 1fr; }
  .ledger-total { grid-column:1/-1; min-height:220px; }
  .move-list:first-of-type { border-left:0; }
  .final-notes { grid-template-columns:1fr 1fr; }
  .day-strip { grid-template-columns:repeat(4,1fr); }
  .future-cards { max-width:700px; }
}

@media (max-width: 680px) {
  html { scroll-padding-top:72px; }
  .site-header { height:64px; }
  .brand-copy, .season-nav { display:none; }
  .menu-toggle { display:block; }
  .section-nav { top:64px; display:none; justify-content:flex-start; overflow:auto; padding:1rem; background:#081b15; }
  .section-nav.open { display:flex; }
  .hero { padding-top:118px; }
  .hero h1 { font-size:clamp(4rem,20vw,6rem); }
  .scoreboard { padding:.75rem; }
  .score-row strong { font-size:.78rem; }
  .score { font-size:2rem; }
  .hero-metrics dd { font-size:1.55rem; }
  .section { padding-block:4.5rem; }
  .section-heading h2, .future-section h2 { font-size:clamp(2.8rem,14vw,4.2rem); }
  .grade-grid { grid-template-columns:repeat(2,1fr); }
  .grade-grid div:nth-child(odd) { border-left:0; }
  .grade-grid div:nth-child(n+4) { border-bottom:1px solid var(--line); }
  .grade-grid div:last-child { border-bottom:0; }
  .advantage-grid, .callout-grid, .foundry-grid, .transaction-ledger, .rules-grid, .method-grid, .document-links { grid-template-columns:1fr; }
  .move-list { border-left:0; border-top:1px solid var(--line); }
  .chart-toolbar { align-items:flex-start; flex-direction:column; }
  .chart-wrap { overflow-x:auto; min-height:330px; }
  .chart-wrap svg { width:760px; max-width:none; }
  .stat-strip { grid-template-columns:repeat(2,1fr); }
  .stat-strip div { border-bottom:1px solid var(--line); }
  .stat-strip div:nth-child(even) { border-right:0; }
  .stat-strip div:last-child { grid-column:1/-1; border-bottom:0; }
  .draft-row { grid-template-columns:42px 1fr 62px 58px; gap:.55rem; }
  .draft-bar { display:none; }
  .position-row { grid-template-columns:36px 1fr 66px; gap:.6rem; }
  .signal-row { grid-template-columns:1fr; gap:.3rem; }
  .signal-row.header { display:none; }
  .final-notes, .future-cards { grid-template-columns:1fr; }
  .day-strip { grid-template-columns:repeat(2,1fr); }
  .day-card:last-child { grid-column:1/-1; }
  .future-section { padding-block:5rem; }
  footer { flex-direction:column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { transition:none !important; animation:none !important; }
}

@media print {
  .site-header, .section-nav, .hero-grid, .hero-actions { display:none !important; }
  body { background:#fff; color:#111; }
  .hero, .section, .future-section { width:100%; color:#111; break-inside:avoid; }
  .hero { min-height:auto; padding-top:2rem; }
  .scoreboard, .advantage, .chart-shell, .foundry-card, .method-grid details { border-color:#ccc; background:#fff; color:#111; box-shadow:none; }
}
