:root {
  color-scheme: dark;
  --navy: #07110c;
  --navy-2: #0b1b12;
  --red: #ff4b45;
  --red-dark: #b82f2b;
  --white: #eef5ee;
  --paper: #f2f4eb;
  --grass: #122d1b;
  --lime: #66ff91;
  --gold: #ffd166;
  --muted: #8aa08e;
  --ink: #050b07;
  --line: rgba(102, 255, 145, .18);
  --panel: rgba(9, 22, 14, .86);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-height: 100vh;
  overflow-x: hidden;
  background: var(--navy);
  color: var(--white);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

.pitch-bg {
  position: fixed;
  inset: 0;
  z-index: -5;
  background:
    linear-gradient(135deg, rgba(5, 11, 7, .98), rgba(8, 22, 14, .96) 50%, rgba(12, 36, 22, .92)),
    repeating-linear-gradient(90deg, rgba(102,255,145,.04) 0 1px, transparent 1px 7.5rem);
}

.pitch-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 82% 8%, rgba(102,255,145,.1), transparent 18rem),
    radial-gradient(ellipse at 10% 18%, rgba(255,255,255,.08), transparent 15rem),
    radial-gradient(circle at center, transparent 0 13rem, rgba(102,255,145,.055) 13.1rem 13.24rem, transparent 13.35rem),
    linear-gradient(transparent 68%, rgba(4, 22, 10, .75));
}

.pitch-bg::after {
  content: "";
  position: absolute;
  inset: auto -12vw -22vh -12vw;
  height: 48vh;
  border-top: .14rem solid rgba(255,255,255,.22);
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.08) 0 .12rem, transparent .12rem 6rem),
    linear-gradient(180deg, rgba(21, 128, 67, .5), rgba(8, 54, 28, .94));
  transform: skewY(-2deg);
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  max-width: 1200px;
  margin: 0 auto;
  padding: .75rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  background: rgba(5, 11, 7, .72);
  backdrop-filter: blur(18px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  min-width: 0;
}

.brand > img {
  width: 3.65rem;
  height: 3.65rem;
  object-fit: contain;
  filter: drop-shadow(0 .8rem 1rem rgba(0,0,0,.38));
}

.brand > span:not(.brand-keepy) {
  display: grid;
  grid-template-columns: auto auto;
  align-items: end;
  column-gap: .38rem;
  line-height: .86;
  text-transform: uppercase;
}

.brand b {
  font-size: 1.2rem;
  font-style: italic;
  letter-spacing: .03rem;
}

.brand strong {
  color: var(--lime);
  font-size: 3.2rem;
  letter-spacing: 0;
}

.brand em {
  grid-column: 1 / -1;
  padding-top: .22rem;
  border-top: .28rem solid var(--white);
  font-size: .76rem;
  font-style: normal;
  font-weight: 1000;
  letter-spacing: .32rem;
}

.brand-keepy {
  position: relative;
  display: block;
  width: 5.2rem;
  height: 5.2rem;
  flex: 0 0 5.2rem;
  filter: drop-shadow(0 .8rem 1rem rgba(0,0,0,.34));
  animation: player-bob 1.6s ease-in-out infinite;
}

.brand-keepy img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
  animation: keepy-one 1.6s steps(1, end) infinite;
}

.brand-keepy img:nth-child(2) {
  animation-name: keepy-two;
}

.brand-keepy img:nth-child(3) {
  animation-name: keepy-three;
}

.brand-keepy img:nth-child(4) {
  animation-name: keepy-four;
}

.topbar nav {
  display: flex;
  align-items: center;
  gap: .45rem;
  padding: .35rem;
  border: 1px solid rgba(102,255,145,.12);
  border-radius: .5rem;
  background: rgba(4, 12, 8, .54);
}

.topbar nav a {
  padding: .55rem .72rem;
  border-radius: .45rem;
  color: var(--muted);
  font-size: .86rem;
  font-weight: 950;
}

.topbar nav a:hover {
  background: rgba(255,255,255,.1);
  color: var(--white);
}

main {
  position: relative;
  z-index: 1;
}

.siggy-hero {
  position: relative;
  min-height: min(48rem, calc(100vh - 1rem));
  overflow: hidden;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(26rem, 1.06fr);
  align-items: center;
  gap: clamp(1.2rem, 3vw, 3.2rem);
  padding: clamp(2rem, 4vw, 4rem) max(1rem, calc((100vw - 1160px) / 2 + 1rem)) 3.6rem;
  border-bottom: 1px solid rgba(102,255,145,.2);
  background: #06100b;
}

.siggy-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  opacity: .42;
  background-image: repeating-linear-gradient(90deg, rgba(102,255,145,.045) 0 1px, transparent 1px 8rem);
}

.siggy-hero::after {
  content: "";
  position: absolute;
  z-index: -2;
  left: -10%;
  right: -10%;
  bottom: -21rem;
  height: 34rem;
  border: .13rem solid rgba(102,255,145,.2);
  border-radius: 50% 50% 0 0;
  background: #0b2818;
  transform: perspective(42rem) rotateX(63deg);
}

.hero-copy {
  position: relative;
  z-index: 4;
  align-self: center;
  max-width: 38rem;
  animation: hero-copy-in 1.2s both;
}

.hero-copy h1 {
  max-width: 8ch;
  font-size: clamp(3.8rem, 7.2vw, 6.6rem);
}

.hero-copy .sub {
  max-width: 30rem;
}

.siggy-hero-stage {
  position: relative;
  z-index: 2;
  min-height: min(41rem, 70vh);
  align-self: end;
}

.hero-floodlight {
  position: absolute;
  top: -8rem;
  z-index: -1;
  width: 11rem;
  height: 58rem;
  opacity: 0;
  background: rgba(238,245,238,.34);
  filter: blur(2.2rem);
  transform-origin: top center;
  animation: floodlights-on 2s .1s both, floodlight-sweep 10s 4s ease-in-out infinite alternate;
}

.hero-floodlight-left { left: 8%; transform: rotate(24deg); }
.hero-floodlight-right { right: 8%; transform: rotate(-24deg); animation-delay: .35s, 4.4s; }

.hero-particle-field {
  position: absolute;
  z-index: 3;
  inset: 0;
  pointer-events: none;
}

.hero-particle-field i {
  position: absolute;
  width: .34rem;
  height: .34rem;
  border-radius: 50%;
  background: var(--lime);
  opacity: 0;
  box-shadow: 0 0 1rem var(--lime);
  animation: data-particle 4.8s 4.8s ease-in-out infinite;
}

.hero-particle-field i:nth-child(1) { left: 57%; top: 22%; }
.hero-particle-field i:nth-child(2) { left: 68%; top: 17%; animation-delay: 5.1s; }
.hero-particle-field i:nth-child(3) { left: 77%; top: 31%; animation-delay: 5.3s; }
.hero-particle-field i:nth-child(4) { left: 84%; top: 45%; animation-delay: 5.6s; }
.hero-particle-field i:nth-child(5) { left: 59%; top: 48%; animation-delay: 5.9s; }
.hero-particle-field i:nth-child(6) { left: 74%; top: 61%; animation-delay: 6.1s; }
.hero-particle-field i:nth-child(7) { left: 88%; top: 65%; animation-delay: 6.4s; }
.hero-particle-field i:nth-child(8) { left: 50%; top: 64%; animation-delay: 6.7s; }
.hero-particle-field i:nth-child(9) { left: 67%; top: 74%; animation-delay: 6.9s; }
.hero-particle-field i:nth-child(10) { left: 81%; top: 78%; animation-delay: 7.1s; }
.hero-particle-field i:nth-child(11) { left: 55%; top: 35%; animation-delay: 7.4s; }
.hero-particle-field i:nth-child(12) { left: 92%; top: 23%; animation-delay: 7.6s; }

.hero-logo {
  position: absolute;
  z-index: 0;
  top: 6%;
  right: 8%;
  display: grid;
  grid-template-columns: auto auto;
  align-items: end;
  gap: .25rem .6rem;
  opacity: .32;
  color: rgba(238,245,238,.14);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-style: italic;
  line-height: .72;
  letter-spacing: 0;
  text-transform: uppercase;
  transform: translateY(0) scale(1);
}

.hero-logo span { font-size: clamp(3rem, 6vw, 5.3rem); }
.hero-logo strong { color: rgba(255,75,69,.5); font-size: clamp(6rem, 12vw, 10rem); }
.hero-logo em { grid-column: 1 / -1; border-top: .24rem solid rgba(238,245,238,.24); padding-top: .2rem; font-size: clamp(.8rem, 1.6vw, 1.25rem); font-style: normal; letter-spacing: .32rem; }

.hero-pitch-line {
  position: absolute;
  z-index: 1;
  right: 10%;
  bottom: 17%;
  left: 10%;
  height: .16rem;
  background: rgba(238,245,238,.32);
  opacity: .5;
}

.hero-siggy-base {
  position: absolute;
  z-index: 2;
  right: 10%;
  bottom: 11%;
  width: min(29rem, 70%);
  height: min(38rem, 83%);
}

.hero-siggy-base {
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(0 2rem 1.4rem rgba(0,0,0,.48));
  transform: translateX(0) rotate(0);
  animation: siggy-idle 3.8s ease-in-out infinite;
}

.hero-scoreboard {
  position: absolute;
  z-index: 5;
  right: 2%;
  bottom: 2rem;
  width: min(29rem, 84%);
  padding: 1rem 1.1rem;
  border: 1px solid rgba(102,255,145,.36);
  border-left: .34rem solid var(--lime);
  background: rgba(5, 13, 8, .91);
  box-shadow: 0 1.2rem 3rem rgba(0,0,0,.4), 0 0 2.6rem rgba(102,255,145,.12);
  transform: translateY(0) skewY(0);
  opacity: 1;
  animation: scoreboard-glow 3.5s ease-in-out infinite;
}

.hero-scoreboard span,
.hero-scoreboard small {
  display: block;
  color: var(--muted);
  font-size: .71rem;
  font-weight: 1000;
  letter-spacing: .16rem;
  text-transform: uppercase;
}

.hero-scoreboard strong,
.hero-scoreboard b {
  display: block;
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  letter-spacing: 0;
  text-transform: uppercase;
}

.hero-scoreboard strong { margin-top: .35rem; color: var(--white); font-size: clamp(2rem, 4vw, 3.4rem); line-height: .86; }
.hero-scoreboard b { margin: .38rem 0; color: var(--lime); font-size: clamp(1rem, 1.8vw, 1.35rem); }
.hero-scoreboard small { color: #b8c8ba; }

.hero-scoreboard.is-no-signal {
  border-left-color: var(--red);
  border-color: rgba(255,75,69,.38);
}

.hero-scoreboard.is-no-signal b { color: var(--red); }
.hero-scoreboard.is-signal { border-left-color: var(--lime); }

.hero-scroll {
  position: absolute;
  z-index: 5;
  bottom: 1.2rem;
  left: max(1rem, calc((100vw - 1160px) / 2 + 1rem));
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  color: var(--muted);
  font-size: .76rem;
  font-weight: 950;
  letter-spacing: .12rem;
  text-transform: uppercase;
}

.hero-scroll i { width: .55rem; height: .55rem; border-right: .15rem solid var(--lime); border-bottom: .15rem solid var(--lime); transform: rotate(45deg) translateY(-.16rem); animation: scroll-nudge 1.5s ease-in-out infinite; }

.matchboard {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1.4rem 1rem 1.1rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, .82fr);
  gap: 1rem;
  align-items: stretch;
}

.headline,
.today-card,
.how-card,
.panel,
.proof-strip,
footer {
  border: 1px solid var(--line);
  background: rgba(7, 18, 11, .82);
  box-shadow: 0 1.4rem 3.2rem rgba(0,0,0,.28);
  backdrop-filter: blur(18px);
}

.headline {
  min-height: 34rem;
  padding: clamp(1.4rem, 4vw, 2.4rem);
  border-radius: .5rem;
  background:
    radial-gradient(circle at 82% 48%, rgba(102,255,145,.07), transparent 10rem),
    linear-gradient(145deg, rgba(5, 11, 7, .92), rgba(13, 34, 19, .72));
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.eyebrow {
  margin: 0 0 .7rem;
  color: var(--lime);
  font-size: .72rem;
  font-weight: 1000;
  letter-spacing: .22rem;
  text-transform: uppercase;
}

h1 {
  max-width: 12ch;
  margin: 0;
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(4.4rem, 9vw, 7.7rem);
  line-height: .82;
  letter-spacing: 0;
  text-transform: uppercase;
}

h1 span {
  display: inline-block;
}

.green-word {
  color: var(--lime);
}

.red-word {
  color: var(--red);
}

.sub {
  max-width: 33rem;
  margin: 1.25rem 0 0;
  color: #b5c6b8;
  font-size: clamp(1.02rem, 2vw, 1.2rem);
  line-height: 1.45;
}

.cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1.35rem;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.8rem;
  padding: .75rem 1rem;
  border-radius: .42rem;
  font-weight: 1000;
  letter-spacing: .06rem;
  text-transform: uppercase;
}

.primary {
  background: var(--lime);
  color: var(--ink);
  box-shadow: 0 .7rem 1.6rem rgba(102, 255, 145, .16);
}

.secondary {
  border: 1px solid rgba(102,255,145,.18);
  background: rgba(102,255,145,.04);
}

.siggy-stage {
  position: relative;
  align-self: start;
  height: 34rem;
  min-height: 34rem;
  overflow: hidden;
  border: 1px solid rgba(102,255,145,.18);
  border-radius: .5rem;
  background:
    radial-gradient(circle at 50% 12%, rgba(102,255,145,.12), transparent 12rem),
    linear-gradient(180deg, rgba(8,22,14,.86), rgba(7, 26, 15, .74));
}

.siggy-stage::before {
  content: "";
  position: absolute;
  left: 12%;
  right: 12%;
  bottom: 6.5rem;
  height: .16rem;
  background: rgba(102,255,145,.26);
  box-shadow: 0 5.6rem 0 rgba(102,255,145,.1);
}

.siggy-callout {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  justify-items: center;
  align-items: end;
  padding-top: 1rem;
}

.siggy-callout img {
  position: relative;
  z-index: 1;
  align-self: end;
  width: min(34vw, 18.5rem);
  max-height: 25.5rem;
  object-fit: contain;
  filter: drop-shadow(0 1.8rem 1.7rem rgba(0,0,0,.48));
}

.siggy-callout p {
  position: relative;
  z-index: 2;
  width: 100%;
  margin: 0;
  padding: .9rem 1rem;
  background: linear-gradient(90deg, var(--red), var(--red-dark));
  color: var(--white);
  font-size: clamp(1.15rem, 2.45vw, 1.65rem);
  font-weight: 1000;
  line-height: 1.04;
  text-align: center;
  text-transform: uppercase;
}

.today-card {
  padding: 1.2rem;
  border-radius: .5rem;
}

#picklist-card {
  grid-column: 1 / -1;
}

.how-card {
  padding: 1.1rem;
  border-radius: .5rem;
}

.decision-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3.4rem 1rem 1rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.section-page {
  position: relative;
}

.section-intro {
  grid-column: 1 / -1;
  align-self: start;
  padding-top: .35rem;
}

.section-kicker {
  display: flex;
  align-items: center;
  gap: .8rem;
  margin: 0 0 1rem;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 1000;
  letter-spacing: .22rem;
  text-transform: uppercase;
}

.section-kicker b {
  color: var(--lime);
}

.section-kicker::after {
  content: "";
  flex: 1;
  height: .1rem;
  max-width: 4.2rem;
  background: rgba(102,255,145,.36);
}

.section-intro h2 {
  margin: 0;
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(2.6rem, 5.4vw, 4.8rem);
  line-height: .9;
  letter-spacing: 0;
  text-transform: uppercase;
}

.section-intro p:last-child {
  margin: 1rem 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.card-topline,
.section-heading span {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  color: var(--muted);
  font-size: .73rem;
  font-weight: 1000;
  letter-spacing: .22rem;
  text-transform: uppercase;
}

.section-heading.compact {
  margin-bottom: .7rem;
}

.section-heading.compact h2 {
  margin: .28rem 0 0;
  font-size: clamp(1.45rem, 2.4vw, 2rem);
}

.use-list {
  margin: 0;
  padding: 0;
  display: grid;
  gap: .55rem;
  list-style: none;
  counter-reset: use-step;
}

.use-list li {
  counter-increment: use-step;
  position: relative;
  min-width: 0;
  padding: .78rem .85rem .78rem 3.1rem;
  border: 1px solid rgba(102,255,145,.12);
  border-radius: .5rem;
  background: rgba(102,255,145,.045);
  transition: border-color .2s ease, transform .2s ease, background .2s ease;
}

.use-list li:hover,
.metric-grid div:hover,
.proof-stat:hover,
.health-row:hover,
.how-grid div:hover {
  border-color: rgba(102,255,145,.38);
  background: rgba(102,255,145,.075);
  transform: translateY(-.08rem);
}

.use-list li::before {
  content: counter(use-step, decimal-leading-zero);
  position: absolute;
  left: .75rem;
  top: .84rem;
  color: var(--lime);
  font-size: .9rem;
  font-weight: 1000;
}

.use-list b,
.use-list span {
  display: block;
}

.use-list b {
  color: var(--white);
  font-size: .95rem;
}

.use-list span {
  margin-top: .15rem;
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.35;
}

#statusBadge,
#watchlistStatus,
#picklistStatus {
  padding: .32rem .58rem;
  border-radius: .4rem;
  background: rgba(102,255,145,.12);
  color: var(--lime);
}

#statusBadge.status-no-signal,
#statusBadge.status-pass,
#picklistStatus.status-empty {
  background: rgba(255,75,69,.13);
  color: var(--red);
}

#statusBadge.status-signal,
#statusBadge.status-pick,
#watchlistStatus.status-active,
#picklistStatus.status-active {
  background: rgba(102,255,145,.13);
  color: var(--lime);
}

#statusBadge.status-watching,
#watchlistStatus.status-building,
#watchlistStatus.status-closed,
#watchlistStatus.status-stale {
  background: rgba(255,209,102,.13);
  color: var(--gold);
}

.has-no-signal .siggy-callout p {
  background: linear-gradient(90deg, var(--red), var(--red-dark));
}

.has-signal .siggy-callout p {
  background: linear-gradient(90deg, var(--lime), #24b85a);
  color: var(--ink);
}

.today-card h2 {
  margin: .8rem 0 .4rem;
  color: var(--white);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(2.3rem, 5vw, 3.8rem);
  line-height: .98;
  letter-spacing: 0;
  text-transform: uppercase;
}

#today-card h2 {
  font-size: clamp(2.15rem, 3.8vw, 3.35rem);
  line-height: .96;
}

#today-card .metric-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  margin: 1.1rem 0;
}

#today-card .metric-grid div {
  padding: .72rem;
}

#today-card .metric-grid dd {
  font-size: 1.08rem;
  line-height: 1.15;
}

.today-card p,
.muted {
  color: var(--muted);
  line-height: 1.5;
}

.metric-grid,
.proof-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: .75rem;
  margin: 1.5rem 0 1rem;
}

.metric-grid div,
.proof-stat,
.health-row,
.how-grid div {
  min-width: 0;
  padding: .78rem;
  border: 1px solid rgba(102,255,145,.12);
  border-radius: .5rem;
  background: rgba(102,255,145,.045);
  transition: border-color .2s ease, transform .2s ease, background .2s ease;
}

dt,
.proof-stat span {
  color: var(--muted);
  font-size: .7rem;
  font-weight: 900;
}

dd,
.proof-stat strong {
  display: block;
  margin: .18rem 0 0;
  overflow-wrap: anywhere;
  font-size: 1.05rem;
  font-weight: 1000;
  color: var(--white);
}

.proof-stat {
  min-height: 7rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.proof-stat strong {
  margin-top: .45rem;
  color: var(--lime);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(2rem, 3.8vw, 3.2rem);
  line-height: .9;
  letter-spacing: 0;
}

.explain-list {
  display: grid;
  gap: .42rem;
}

.explain-list p {
  margin: 0;
  padding-left: .72rem;
  border-left: .24rem solid var(--lime);
  color: #edf3f7;
}

.list-card {
  display: flex;
  flex-direction: column;
}

.list-card h2 {
  font-size: clamp(2rem, 4vw, 3rem);
}

.empty-list,
.picklist-rule {
  margin: .65rem 0 0;
  padding: .75rem;
  border: 1px solid rgba(102,255,145,.12);
  border-radius: .5rem;
  background: rgba(102,255,145,.045);
  color: var(--muted);
}

.picklist-rule {
  border-color: rgba(255,75,69,.22);
  background: rgba(255,75,69,.055);
  color: #d8ded8;
  font-weight: 900;
}

.decision-list {
  display: grid;
  gap: .65rem;
  margin-top: .8rem;
}

.decision-item {
  padding: .85rem;
  border: 1px solid rgba(102,255,145,.16);
  border-radius: .5rem;
  background: rgba(102,255,145,.055);
}

.decision-item strong,
.decision-item span,
.decision-item b {
  display: block;
}

.decision-item strong {
  color: var(--white);
  font-size: 1rem;
}

.decision-item span {
  margin-top: .25rem;
  color: var(--muted);
  font-size: .85rem;
}

.decision-item b {
  margin-top: .45rem;
  color: var(--lime);
  font-size: 1.05rem;
}

.watchlist-items {
  display: grid;
  gap: .65rem;
  margin-top: .8rem;
}

.watchlist-item {
  padding: .78rem;
  border: 1px solid rgba(255,209,102,.2);
  border-radius: .5rem;
  background: rgba(255,209,102,.045);
}

.watchlist-item-top {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: .7rem;
}

.watchlist-item strong {
  color: var(--white);
  font-size: 1rem;
  line-height: 1.2;
}

.watchlist-item-top span {
  flex: 0 0 auto;
  padding: .26rem .42rem;
  border-radius: .34rem;
  background: rgba(255,209,102,.13);
  color: var(--gold);
  font-size: .67rem;
  font-weight: 1000;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

.watchlist-item p,
.watchlist-item b {
  display: block;
  margin: .42rem 0 0;
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.36;
}

.watchlist-item b { color: var(--gold); }

.watchlist-item ul {
  margin: .62rem 0 0;
  padding: 0;
  display: grid;
  gap: .34rem;
  list-style: none;
}

.watchlist-item li {
  position: relative;
  padding-left: .8rem;
  color: #d9e0da;
  font-size: .84rem;
  line-height: 1.34;
}

.watchlist-item li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .52em;
  width: .3rem;
  height: .3rem;
  border-radius: 50%;
  background: var(--gold);
}

.signal-card-list {
  display: grid;
  gap: .85rem;
  margin-top: .8rem;
}

.signal-card {
  padding: .9rem;
  border: 1px solid rgba(102,255,145,.22);
  border-radius: .5rem;
  background:
    radial-gradient(circle at 90% 0, rgba(102,255,145,.12), transparent 8rem),
    rgba(102,255,145,.055);
}

.signal-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .7rem;
}

.signal-card-head span,
.signal-card-head b {
  padding: .32rem .52rem;
  border-radius: .38rem;
  font-size: .72rem;
  font-weight: 1000;
  letter-spacing: .11rem;
  text-transform: uppercase;
}

.signal-card-head span {
  background: rgba(102,255,145,.14);
  color: var(--lime);
}

.signal-card-head b {
  background: rgba(255,209,102,.13);
  color: var(--gold);
}

.signal-card h3 {
  margin: .9rem 0 .45rem;
  color: var(--white);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(2rem, 5vw, 3.4rem);
  line-height: .92;
  letter-spacing: 0;
  text-transform: uppercase;
}

.fixture-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .75rem;
  color: var(--muted);
  font-size: .84rem;
  font-weight: 900;
  letter-spacing: .08rem;
  text-transform: uppercase;
}

.bet-callout {
  margin-top: .9rem;
  padding: .8rem;
  border-radius: .5rem;
  background: rgba(5, 11, 7, .54);
  border: 1px solid rgba(102,255,145,.12);
}

.bet-callout span,
.score-block span,
.signal-meta-grid dt {
  display: block;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 1000;
  letter-spacing: .14rem;
  text-transform: uppercase;
}

.bet-callout strong {
  display: block;
  margin-top: .34rem;
  color: var(--lime);
  font-size: 1.16rem;
  line-height: 1.22;
}

.signal-meta-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .55rem;
  margin: .75rem 0;
}

.signal-meta-grid div {
  min-width: 0;
  padding: .65rem;
  border-radius: .45rem;
  background: rgba(255,255,255,.045);
}

.signal-meta-grid dd {
  font-size: .95rem;
}

.score-block {
  margin-top: .8rem;
  overflow: hidden;
  border-radius: .5rem;
  border: 1px solid rgba(102,255,145,.14);
  background: rgba(5, 11, 7, .48);
}

.score-block div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .72rem .78rem .46rem;
}

.score-block strong {
  color: var(--white);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: 2rem;
  line-height: .9;
}

.score-block i {
  display: block;
  height: .42rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--lime), var(--gold));
  transition: width .6s ease;
}

.signal-explanation {
  display: grid;
  gap: .42rem;
  margin-top: .85rem;
}

.signal-explanation p,
.market-note {
  margin: 0;
  padding-left: .72rem;
  border-left: .24rem solid var(--lime);
  color: #edf3f7;
  line-height: 1.42;
}

.market-note {
  margin-top: .8rem;
  border-left-color: var(--gold);
}

.pattern-panel {
  margin-top: .85rem;
  padding: .85rem;
  border: 1px solid rgba(102,255,145,.16);
  border-radius: .5rem;
  background: rgba(5, 11, 7, .5);
}

.pattern-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .7rem;
}

.pattern-head span,
.pattern-head b {
  color: var(--muted);
  font-size: .72rem;
  font-weight: 1000;
  letter-spacing: .14rem;
  text-transform: uppercase;
}

.pattern-head b {
  color: var(--lime);
}

.pattern-panel p {
  margin: .65rem 0 0;
  color: #edf3f7;
  line-height: 1.42;
}

.pattern-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  margin: .75rem 0 0;
}

.pattern-grid div {
  min-width: 0;
  padding: .6rem;
  border-radius: .45rem;
  background: rgba(102,255,145,.045);
}

.pattern-grid dd {
  font-size: .95rem;
}

.pattern-panel small {
  display: block;
  margin-top: .72rem;
  color: var(--muted);
  line-height: 1.35;
}

.signal-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
  margin-top: .85rem;
}

.signal-detail-panel {
  min-width: 0;
  padding: .78rem;
  border: 1px solid rgba(102,255,145,.16);
  border-radius: .5rem;
  background: rgba(5, 11, 7, .5);
}

.signal-detail-panel > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .7rem;
}

.signal-detail-panel span,
.signal-detail-panel dt {
  color: var(--muted);
  font-size: .7rem;
  font-weight: 1000;
  letter-spacing: .13rem;
  text-transform: uppercase;
}

.signal-detail-panel b {
  color: var(--white);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: 1.5rem;
  line-height: .9;
  text-transform: uppercase;
}

.signal-detail-panel dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem;
  margin: .7rem 0 0;
}

.signal-detail-panel dl div {
  min-width: 0;
  padding: .5rem;
  border-radius: .38rem;
  background: rgba(255,255,255,.045);
}

.signal-detail-panel dd {
  font-size: .95rem;
}

.signal-detail-panel p {
  margin: .7rem 0 0;
  color: var(--muted);
  font-size: .88rem;
  line-height: 1.38;
}

.signal-detail-panel.is-ready { border-color: rgba(102,255,145,.28); }
.signal-detail-panel.is-ready b { color: var(--lime); }
.signal-detail-panel.is-caution { border-color: rgba(255,209,102,.3); }
.signal-detail-panel.is-caution b { color: var(--gold); }
.signal-detail-panel.is-pending { border-color: rgba(255,255,255,.12); }

.signal-safety {
  margin-top: .85rem;
  padding: .8rem;
  border: 1px solid rgba(255,75,69,.25);
  border-radius: .5rem;
  background: rgba(255,75,69,.055);
}

.signal-safety strong {
  color: var(--white);
  font-size: .82rem;
  letter-spacing: .08rem;
  text-transform: uppercase;
}

.signal-safety p {
  margin: .55rem 0 0;
  color: #d6dfd8;
  font-size: .88rem;
  line-height: 1.4;
}

.signal-safety .weekend-warning {
  color: var(--gold);
  font-weight: 900;
}

.signal-safety .bookmaker-disclosure { color: var(--muted); }

.signal-safety a {
  display: inline-block;
  margin-top: .65rem;
  color: var(--lime);
  font-size: .88rem;
  font-weight: 950;
}

.risk-list {
  margin: .8rem 0 0;
  padding: 0;
  display: grid;
  gap: .34rem;
  list-style: none;
}

.risk-list li {
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.35;
}

.list-rules {
  margin: .8rem 0 0;
  padding: 0;
  display: grid;
  gap: .4rem;
  list-style: none;
}

.list-rules li {
  position: relative;
  padding-left: .9rem;
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.35;
}

.list-rules li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: .35rem;
  height: .35rem;
  border-radius: 50%;
  background: var(--lime);
}

.proof-strip {
  max-width: 1200px;
  margin: 1rem auto 0;
  padding: .9rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  border-radius: .5rem;
  background: rgba(7, 18, 11, .82);
  color: var(--white);
}

.proof-strip strong {
  color: var(--lime);
  font-weight: 1000;
}

.proof-strip span {
  color: var(--muted);
  font-weight: 800;
}

.dashboard {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem 1rem 3rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1rem;
}

.panel {
  padding: clamp(1.1rem, 3vw, 1.6rem);
  border-radius: .5rem;
}

.panel-wide {
  grid-column: 1 / -1;
}

#health,
#leagues {
  grid-column: 1 / -1;
}

#today,
#proof,
#health,
#leagues {
  scroll-margin-top: 7rem;
}

.section-heading {
  margin-bottom: 1.2rem;
}

.section-heading span {
  color: var(--lime);
}

.section-heading h2 {
  margin: .28rem 0 0;
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: .92;
  letter-spacing: 0;
  text-transform: uppercase;
}

.section-heading h2 em {
  color: var(--lime);
  font-style: normal;
}

.section-heading p {
  max-width: 42rem;
  margin: .75rem 0 0;
  color: var(--muted);
  font-size: clamp(1rem, 2vw, 1.18rem);
  line-height: 1.45;
}

.health-list,
.league-list {
  display: grid;
  gap: .58rem;
}

.public-health {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .75rem;
}

.health-row strong {
  display: block;
  margin-bottom: .18rem;
}

.health-row {
  min-height: 10rem;
}

.health-row span {
  display: flex;
  align-items: center;
  gap: .45rem;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 1000;
  letter-spacing: .16rem;
  text-transform: uppercase;
}

.health-row span::before {
  content: "";
  width: .55rem;
  height: .55rem;
  border-radius: 50%;
  background: var(--lime);
  box-shadow: 0 0 1rem rgba(102,255,145,.55);
}

.health-row.health-caution span::before {
  background: var(--gold);
  box-shadow: 0 0 1rem rgba(255,209,102,.4);
}

.health-row.health-stop span::before {
  background: var(--red);
  box-shadow: 0 0 1rem rgba(255,75,69,.38);
}

.health-row strong {
  margin: 1.1rem 0 .55rem;
  color: var(--white);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: .9;
  letter-spacing: 0;
  text-transform: uppercase;
}

.health-row p {
  margin: 0;
  color: var(--muted);
  line-height: 1.4;
}

.league-row {
  display: grid;
  grid-template-columns: 1.4fr .5fr .7fr .86fr;
  align-items: center;
  gap: .6rem;
  padding: .75rem 0;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.league-row:last-child {
  border-bottom: 0;
}

.league-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem;
}

.league-card {
  min-width: 0;
  padding: 1.1rem;
  border: 1px solid rgba(102,255,145,.12);
  border-radius: .5rem;
  background: rgba(102,255,145,.045);
  transition: border-color .2s ease, transform .2s ease, background .2s ease;
}

.league-card:hover {
  border-color: rgba(102,255,145,.38);
  background: rgba(102,255,145,.075);
  transform: translateY(-.08rem);
}

.league-card-top {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 1rem;
}

.league-card-top strong {
  color: var(--white);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(1.45rem, 3vw, 2rem);
  line-height: 1;
  letter-spacing: 0;
}

.league-card-top span {
  flex: 0 0 auto;
  padding: .32rem .5rem;
  border: 1px solid rgba(102,255,145,.13);
  border-radius: .45rem;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 1000;
  letter-spacing: .08rem;
  text-transform: uppercase;
}

.league-card p {
  margin: .75rem 0 1rem;
  color: var(--muted);
  font-size: .88rem;
  font-weight: 850;
  letter-spacing: .08rem;
  line-height: 1.35;
  text-transform: uppercase;
}

.league-bar {
  height: .46rem;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(102,255,145,.09);
}

.league-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--lime);
}

.league-meta {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: .55rem;
  color: var(--muted);
  font-size: .88rem;
  font-weight: 850;
}

.league-meta b {
  color: var(--white);
}

.trust {
  justify-self: start;
  padding: .24rem .5rem;
  border-radius: .38rem;
  background: rgba(102,255,145,.12);
  color: var(--lime);
  font-weight: 1000;
  font-size: .76rem;
}

.how-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
}

.how-grid b {
  display: block;
  color: var(--lime);
  font-size: 1.15rem;
}

.how-grid span {
  display: block;
  margin-top: .32rem;
  color: #edf3f7;
  font-weight: 850;
}

.content-page {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3.5rem 1rem 4rem;
}

.content-hero,
.content-panel {
  border: 1px solid var(--line);
  border-radius: .5rem;
  background: rgba(7, 18, 11, .82);
  box-shadow: 0 1.4rem 3.2rem rgba(0,0,0,.28);
  backdrop-filter: blur(18px);
}

.content-hero {
  min-height: 22rem;
  padding: clamp(1.4rem, 4vw, 2.4rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.content-hero h1 {
  max-width: 14ch;
}

.content-hero p:last-child {
  max-width: 48rem;
  margin: 1.1rem 0 0;
  color: var(--muted);
  font-size: clamp(1.05rem, 2vw, 1.28rem);
  line-height: 1.45;
}

.content-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

.content-panel {
  padding: clamp(1.1rem, 3vw, 1.5rem);
}

.content-wide {
  margin-top: 1rem;
}

.content-panel h2 {
  margin: 0 0 .75rem;
  color: var(--white);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: .92;
  letter-spacing: 0;
  text-transform: uppercase;
}

.content-panel p {
  margin: 0;
  color: var(--muted);
  font-size: 1.02rem;
  line-height: 1.5;
}

.link-row {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1rem;
}

.link-row a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.5rem;
  padding: .68rem .9rem;
  border: 1px solid rgba(102,255,145,.2);
  border-radius: .42rem;
  background: rgba(102,255,145,.06);
  color: var(--lime);
  font-weight: 950;
}

.intelligence-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .72rem;
}

.intelligence-card {
  min-width: 0;
  min-height: 8.6rem;
  padding: .9rem;
  border: 1px solid rgba(102,255,145,.12);
  border-radius: .5rem;
  background: rgba(102,255,145,.045);
}

.intelligence-card span {
  display: block;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 1000;
  letter-spacing: .14rem;
  text-transform: uppercase;
}

.intelligence-card strong {
  display: block;
  margin: .7rem 0 .45rem;
  color: var(--white);
  font-family: "Arial Narrow", Impact, Haettenschweiler, "Segoe UI", sans-serif;
  font-size: clamp(1.6rem, 3vw, 2.5rem);
  line-height: .9;
  letter-spacing: 0;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.intelligence-card p {
  margin: 0;
  color: var(--muted);
  font-size: .88rem;
  line-height: 1.36;
}

.intelligence-card.is-ready strong { color: var(--lime); }
.intelligence-card.is-caution strong { color: var(--gold); }
.intelligence-card.is-pending strong { color: #d7ded8; }

@keyframes hero-copy-in {
  from { opacity: 0; transform: translateY(1.4rem); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes floodlights-on {
  from { opacity: 0; }
  to { opacity: .8; }
}

@keyframes floodlight-sweep {
  from { transform: rotate(19deg) translateX(-2rem); }
  to { transform: rotate(30deg) translateX(3rem); }
}

@keyframes data-particle {
  0%, 28% { opacity: 0; transform: translate3d(0, 1rem, 0) scale(.4); }
  45% { opacity: .96; transform: translate3d(1.5rem, -1rem, 0) scale(1); }
  100% { opacity: 0; transform: translate3d(-1rem, -4rem, 0) scale(.5); }
}

@keyframes logo-reveal {
  from { opacity: 0; transform: translateY(2rem) scale(.94); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes siggy-arrival {
  0% { opacity: 0; transform: translateX(24vw) rotate(5deg); }
  70% { opacity: 1; transform: translateX(-.6rem) rotate(-1deg); }
  100% { opacity: 1; transform: translateX(0) rotate(0); }
}

@keyframes siggy-idle {
  0%, 100% { transform: translateY(0) rotate(0); }
  50% { transform: translateY(-.36rem) rotate(.4deg); }
}

@keyframes hero-frame-one {
  0%, 14% { opacity: 0; }
  15%, 29% { opacity: 1; }
  30%, 100% { opacity: 0; }
}

@keyframes hero-frame-two {
  0%, 29% { opacity: 0; }
  30%, 44% { opacity: 1; }
  45%, 100% { opacity: 0; }
}

@keyframes hero-frame-three {
  0%, 44% { opacity: 0; }
  45%, 59% { opacity: 1; }
  60%, 100% { opacity: 0; }
}

@keyframes hero-frame-four {
  0%, 59% { opacity: 0; }
  60%, 74% { opacity: 1; }
  75%, 100% { opacity: 0; }
}

@keyframes ball-story {
  0% { opacity: 0; transform: translate3d(0, 12rem, 0) rotate(0); }
  13% { opacity: 1; transform: translate3d(0, 0, 0) rotate(120deg); }
  25% { transform: translate3d(-4rem, -10rem, 0) rotate(300deg); }
  37% { transform: translate3d(2.4rem, -16rem, 0) rotate(460deg); }
  50% { transform: translate3d(-1rem, -23rem, 0) rotate(620deg); }
  62% { transform: translate3d(3rem, -13rem, 0) rotate(790deg); }
  75% { transform: translate3d(-1rem, -3rem, 0) rotate(950deg); }
  100% { opacity: 1; transform: translate3d(0, 0, 0) rotate(1080deg); }
}

@keyframes ball-idle {
  from { transform: translate3d(0, 0, 0) rotate(0); }
  to { transform: translate3d(0, 0, 0) rotate(360deg); }
}

@keyframes scoreboard-slam {
  0% { opacity: 0; transform: translateY(8rem) skewY(2deg) scale(1.08); }
  78% { opacity: 1; transform: translateY(-.38rem) skewY(0) scale(.99); }
  100% { opacity: 1; transform: translateY(0) skewY(0) scale(1); }
}

@keyframes scoreboard-glow {
  0%, 100% { box-shadow: 0 1.2rem 3rem rgba(0,0,0,.4), 0 0 1.4rem rgba(102,255,145,.08); }
  50% { box-shadow: 0 1.2rem 3rem rgba(0,0,0,.4), 0 0 3rem rgba(102,255,145,.24); }
}

@keyframes scroll-nudge {
  0%, 100% { transform: rotate(45deg) translateY(-.16rem); }
  50% { transform: rotate(45deg) translate(.16rem, -.16rem); }
}

footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  padding: 1.4rem max(1rem, calc((100vw - 1180px) / 2 + 1rem));
  border-width: 1px 0 0;
  border-radius: 0;
  color: var(--muted);
  line-height: 1.5;
}

footer nav {
  display: flex;
  gap: .85rem;
  align-items: center;
  color: var(--lime);
  font-weight: 850;
}

@keyframes player-bob {
  0%, 100% { transform: translateY(0) rotate(-1deg); }
  50% { transform: translateY(-.55rem) rotate(1deg); }
}

@keyframes keepy-one {
  0%, 24.9% { opacity: 1; }
  25%, 100% { opacity: 0; }
}

@keyframes keepy-two {
  0%, 24.9% { opacity: 0; }
  25%, 49.9% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

@keyframes keepy-three {
  0%, 49.9% { opacity: 0; }
  50%, 74.9% { opacity: 1; }
  75%, 100% { opacity: 0; }
}

@keyframes keepy-four {
  0%, 74.9% { opacity: 0; }
  75%, 99.9% { opacity: 1; }
  100% { opacity: 0; }
}

@media (max-width: 900px) {
  .topbar {
    position: relative;
    align-items: flex-start;
    flex-direction: column;
  }

  .topbar nav {
    width: 100%;
    overflow-x: auto;
    justify-content: space-between;
  }

  .matchboard {
    grid-template-columns: 1fr;
  }

  .siggy-hero {
    min-height: 49rem;
    grid-template-columns: 1fr;
    gap: 0;
    padding-top: 2.6rem;
  }

  .hero-copy {
    max-width: 36rem;
    align-self: start;
  }

  .siggy-hero-stage {
    min-height: 31rem;
    margin-top: -1.5rem;
  }

  .hero-siggy-base {
    right: 11%;
    width: min(25rem, 70%);
    height: 29rem;
  }

  .hero-scoreboard { right: 4%; bottom: 1rem; }

  .headline {
    min-height: auto;
  }

  .decision-section {
    grid-template-columns: 1fr;
    padding-top: 2.2rem;
  }

  #picklist-card {
    grid-column: auto;
  }

  .siggy-stage {
    height: 20rem;
    min-height: 20rem;
  }

  .siggy-callout img {
    width: min(52vw, 13rem);
    max-height: 14rem;
  }

  .metric-grid,
  .proof-grid,
  .signal-meta-grid,
  .pattern-grid,
  .signal-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard,
  .how-grid,
  .content-grid {
    grid-template-columns: 1fr;
  }

  .public-health {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .intelligence-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .league-list {
    grid-template-columns: 1fr;
  }

  .proof-strip,
  footer {
    grid-template-columns: 1fr;
  }

  .proof-strip {
    display: grid;
  }

  .league-row {
    grid-template-columns: 1fr .55fr;
  }
}

@media (max-width: 520px) {
  .topbar {
    padding: .65rem;
  }

  .brand > img {
    width: 3.6rem;
    height: 3.6rem;
    flex-basis: 3.6rem;
  }

  .brand strong {
    font-size: 2.7rem;
  }

  .brand em {
    letter-spacing: .23rem;
  }

  .topbar nav a {
    padding: .5rem .58rem;
    font-size: .8rem;
  }

  .matchboard,
  .dashboard {
    padding-left: .65rem;
    padding-right: .65rem;
  }

  .siggy-hero {
    min-height: 47rem;
    padding: 1.8rem .8rem 4rem;
  }

  .hero-copy h1 { font-size: clamp(3.35rem, 15vw, 4.7rem); }
  .hero-copy .sub { font-size: 1rem; }
  .siggy-hero-stage { min-height: 27rem; margin-top: -.4rem; }
  .hero-siggy-base { right: 4%; width: 16.8rem; height: 25rem; }
  .hero-logo { top: 9%; right: 1%; }
  .hero-scoreboard { right: 0; bottom: .8rem; width: 100%; padding: .8rem; }
  .hero-scoreboard strong { font-size: 2rem; }
  .hero-scroll { left: .8rem; bottom: 1.1rem; }

  h1 {
    font-size: clamp(3.2rem, 16vw, 4.65rem);
  }

  .section-intro h2,
  .section-heading h2 {
    font-size: clamp(2.3rem, 13vw, 3.5rem);
  }

  .siggy-stage {
    height: 18rem;
    min-height: 18rem;
  }

  .siggy-callout img {
    display: block;
    width: 10.8rem;
    max-height: 12.6rem;
  }

  .siggy-callout p {
    padding: .86rem .75rem;
    font-size: 1.02rem;
  }

  .metric-grid,
  .proof-grid,
  .signal-meta-grid,
  .pattern-grid,
  .signal-detail-grid,
  .signal-detail-panel dl {
    grid-template-columns: 1fr;
  }

  .public-health {
    grid-template-columns: 1fr;
  }

  .intelligence-grid {
    grid-template-columns: 1fr;
  }

  footer nav {
    flex-wrap: wrap;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}
