@import url('https://fonts.googleapis.com/css2?family=Anton&family=Bebas+Neue&family=Inter:wght@400;600;700;800;900&display=swap');

@charset "utf-8";
* { margin: 0; padding: 0; box-sizing: border-box; }

:root {
  --red: #ff3131;
  --red2: #cc0a0a;
  --red3: #ff5555;
  --rg: rgba(255,49,49,.4);
  --bg: #080808;
  --c1: #111;
  --c2: #161616;
  --c3: #1e1e1e;
  --c4: #262626;
  --white: #ffffff;
  --grey: #e0e0e0;
  --dim: #aaaaaa;
  --faint: #666;
  --gold: #ffb300;
  --green: #00c853;
  --ember: #ff6500;
  /* legacy aliases */
  --bg-primary: #080808;
  --bg-card: #111;
  --bg-hover: #1e1e1e;
  --accent-green: #ff3131;
  --accent-gold: #ffb300;
  --accent-cyan: #06b6d4;
  --accent-pink: #ec4899;
  --text-primary: #f0f0f0;
  --text-muted: #aaaaaa;
  --border: #2e2e2e;
  --live-red: #ef4444;
}

html { scroll-behavior: smooth; }
body { background: #080808; color: #fff; font-family: Inter, sans-serif; overflow-x: hidden; }
body::before { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 0; background: radial-gradient(circle at 18% 18%, rgba(255,49,49,.08), transparent 25%), radial-gradient(circle at 82% 0%, rgba(255,49,49,.05), transparent 20%); }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #080808; }
::-webkit-scrollbar-thumb { background: #2e2e2e; border-radius: 3px; }

/* ── Animations ── */
@keyframes fadeUp { 0% { opacity:0; transform:translateY(22px); } 100% { opacity:1; transform:translateY(0); } }
@keyframes redGlow { 0%,100% { text-shadow: rgba(255,49,49,.4) 0 0 25px; } 50% { text-shadow: rgba(255,49,49,.7) 0 0 50px, rgba(255,49,49,.25) 0 0 80px; } }
@keyframes ticker { 0% { transform:translateX(0); } 100% { transform:translateX(-50%); } }
@keyframes float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-10px); } }
@keyframes scanLine { 0% { top:0%; opacity:.8; } 100% { top:100%; opacity:0; } }
@keyframes live-pulse { 0%,100% { opacity:1; } 50% { opacity:.5; } }
@keyframes searchPulse {
  0%,100% { box-shadow: rgba(255,49,49,.35) 0 0 32px; }
  50%      { box-shadow: rgba(255,49,49,.7) 0 0 54px, rgba(255,49,49,.3) 0 0 80px; }
}
@keyframes shimmer { 0%{background-position:-600px 0} 100%{background-position:600px 0} }
@keyframes modalIn { from{opacity:0;transform:translateY(18px) scale(.96)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes fireIn { from{opacity:0;transform:scale(.5) translateY(4px)} to{opacity:1;transform:scale(1) translateY(0)} }

/* ── Skeleton loader ── */
.skeleton { background:linear-gradient(90deg,#1e1e1e 25%,#2a2a2a 50%,#1e1e1e 75%); background-size:600px 100%; animation:shimmer 1.4s ease-in-out infinite; border-radius:6px; }

/* ── Nav ── */
.nav { position:fixed; top:0; left:0; right:0; z-index:200; padding:16px 5%; display:flex; justify-content:space-between; align-items:center; backdrop-filter:blur(14px); background:rgba(5,5,5,.95); border-bottom:1px solid rgba(255,255,255,.05); flex-direction:column; gap:0; }
.nav-top { width:100%; display:flex; justify-content:space-between; align-items:center; }
.nav-tabs { width:100%; display:flex; justify-content:flex-start; align-items:center; gap:0; border-top:1px solid rgba(255,255,255,.06); margin-top:12px; padding-top:10px; overflow-x:auto; -ms-overflow-style:none; scrollbar-width:none; }
.nav-tabs::-webkit-scrollbar { display:none; }
.nav-tabs a { font-size:11px; font-weight:800; color:#aaa; text-decoration:none; letter-spacing:1.5px; padding:6px 14px; white-space:nowrap; border-radius:6px; transition:.2s; text-transform:uppercase; }
.nav-tabs a:hover, .nav-tabs a.active { color:#fff; background:rgba(255,255,255,.07); }
.nav-tabs a.nav-sched { color:var(--gold); }
.nav-tabs a.nav-sched:hover { color:#ffd740; background:rgba(255,179,0,.08); }
.logo { font-family:Anton,sans-serif; font-size:32px; letter-spacing:2px; color:var(--red); text-decoration:none; cursor:pointer; display:flex; flex-direction:column; line-height:1; }
.logo-sub { font-size:8px; letter-spacing:3px; color:var(--dim); font-family:Inter,sans-serif; font-weight:700; margin-top:3px; }
.nav-join { background:var(--red); color:#fff; border:none; padding:10px 22px; border-radius:10px; font-weight:800; font-size:13px; cursor:pointer; box-shadow:rgba(255,49,49,.35) 0 0 20px; transition:.22s; letter-spacing:.3px; }
.nav-join:hover { transform:translateY(-1px); box-shadow:0 0 32px var(--rg); }
.nav-join:active { transform:scale(.96)!important; transition-duration:.08s; }
.nav-burger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:6px; background:none; border:1px solid rgba(255,255,255,.15); border-radius:8px; }
.nav-burger span { display:block; width:22px; height:2px; background:#fff; border-radius:2px; transition:.2s; }
.nav-drawer { display:flex; visibility:hidden; transform:translateX(100%); transition:transform .3s cubic-bezier(.4,0,.2,1),visibility .3s; pointer-events:none; position:fixed; top:0; left:0; right:0; bottom:0; background:rgba(5,5,5,.97); z-index:300; flex-direction:column; align-items:center; justify-content:center; gap:28px; }
.nav-drawer.open { visibility:visible; transform:translateX(0); pointer-events:auto; }
.nav-drawer a { font-family:Anton,sans-serif; font-size:clamp(28px,5vw,48px); color:#fff; text-decoration:none; letter-spacing:2px; transition:.2s; }
.nav-drawer a:hover { color:var(--red); }
.nav-drawer a.nav-sched { color:var(--gold); }
.nav-drawer .close-btn { position:absolute; top:24px; right:7%; font-size:32px; cursor:pointer; color:#aaa; background:none; border:none; }

/* ── Hero ── */
.hero { min-height:100vh; display:grid; grid-template-columns:1.05fr .95fr; align-items:center; padding:140px 7% 80px; gap:40px; position:relative; z-index:1; background:#080808; }
.hero-headline { font-family:Anton,sans-serif; font-size:clamp(64px,8.5vw,108px); line-height:.92; letter-spacing:1px; max-width:820px; animation:.6s ease both fadeUp; }
.red { color:var(--red); text-shadow:rgba(255,49,49,.4) 0 0 25px; }
.hero-sub { margin-top:26px; font-size:clamp(17px,1.9vw,22px); line-height:1.75; color:#fff; max-width:580px; animation:.6s ease .1s both fadeUp; }
.hero-sub strong { color:#fff; }
.hero-btns { display:flex; gap:16px; margin-top:36px; flex-wrap:wrap; animation:.6s ease .2s both fadeUp; }
.btn { padding:17px 32px; border-radius:14px; font-weight:900; font-size:14px; letter-spacing:.3px; cursor:pointer; transition:.22s; display:inline-flex; align-items:center; gap:8px; border:none; }
.btn-primary { background:var(--red); color:#fff; box-shadow:rgba(255,49,49,.35) 0 0 32px; }
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 0 48px var(--rg); }
.btn-primary.btn-searching { animation:searchPulse 1s ease infinite; }
.btn-primary:active,.btn-secondary:active { transform:scale(.96)!important; transition-duration:.08s; }
button:disabled { pointer-events:none; opacity:.65; }
.btn-secondary { background:transparent; border:1px solid rgba(255,255,255,.15); color:#fff; }
.btn-secondary:hover { border-color:rgba(255,49,49,.5); background:rgba(255,49,49,.06); }
.hero-checks { display:flex; gap:20px; flex-wrap:wrap; margin-top:22px; animation:.6s ease .28s both fadeUp; }
.hck { display:flex; align-items:center; gap:6px; font-size:13px; font-weight:700; color:#ccc; }
.hck::before { content:"✓"; color:var(--green); font-size:11px; }

/* ── Phone mockup ── */
.phone-wrap { display:flex; justify-content:center; position:relative; animation:.6s ease .15s both fadeUp; }
.phone-glow { position:absolute; width:400px; height:400px; background:radial-gradient(circle,rgba(255,49,49,.28),transparent 65%); filter:blur(28px); top:50%; left:50%; transform:translate(-50%,-50%); }
.phone { width:340px; background:var(--c1); border:1px solid rgba(255,255,255,.08); border-radius:40px; padding:24px; position:relative; z-index:1; box-shadow:rgba(255,49,49,.16) 0 0 60px,rgba(255,49,49,.07) 0 0 120px,rgba(0,0,0,.8) 0 40px 80px; animation:5s ease-in-out infinite float; overflow:hidden; }
.phone::before { content:""; position:absolute; left:0; right:0; height:2px; background:linear-gradient(to right,transparent,rgba(255,49,49,.6),transparent); animation:2.5s ease-in-out infinite scanLine; z-index:10; }
.phone-top { text-align:center; font-size:12px; color:#aaa; letter-spacing:2.5px; margin-bottom:18px; font-weight:800; }
.card { background:linear-gradient(#222,#191919); border:1px solid rgba(255,255,255,.12); border-radius:22px; padding:22px; margin-bottom:14px; position:relative; overflow:hidden; transition:border-color .2s; }
.card:hover { border-color:rgba(255,49,49,.4); }
.card::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--red),transparent); opacity:0; transition:opacity .2s; }
.card:hover::before { opacity:1; }
.combo { font-size:clamp(18px,2.5vw,24px); font-weight:900; margin-bottom:10px; }
.hit-num { font-size:60px; font-weight:900; color:var(--red); line-height:1; animation:2.5s ease infinite redGlow; }
.small-label { font-size:12px; color:var(--dim); margin-top:6px; font-weight:700; }
.dates { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.date-pill { background:#2e2e2e; border:1px solid rgba(255,255,255,.14); padding:7px 13px; border-radius:999px; font-size:13px; font-weight:700; color:#e0e0e0; transition:.2s; }
.date-pill.hot { background:rgba(255,49,49,.18); border-color:rgba(255,49,49,.5); color:#ff7070; }

/* ── Ticker (RED background) ── */
.ticker-wrap { background:var(--red); padding:9px 0; overflow:hidden; position:relative; z-index:1; }
.ticker-wrap::before,.ticker-wrap::after { content:""; position:absolute; top:0; bottom:0; width:60px; z-index:2; }
.ticker-wrap::before { left:0; background:linear-gradient(to right,var(--red),transparent); }
.ticker-wrap::after { right:0; background:linear-gradient(to left,var(--red),transparent); }
.ticker-track { display:flex; white-space:nowrap; animation:28s linear infinite ticker; width:max-content; }
.tick { font-size:13px; font-weight:800; letter-spacing:2px; color:#fff; padding:0 24px; display:flex; align-items:center; gap:8px; }

/* ── Stats bar (below ticker) ── */
.stats-grid { display:grid; grid-template-columns:repeat(4,1fr); background:var(--c1); border-bottom:1px solid rgba(255,255,255,.08); position:relative; z-index:1; }
.stat-item { padding:22px 16px; text-align:center; border-right:1px solid rgba(255,255,255,.08); }
.stat-item:last-child { border-right:none; }
.stat-n { font-family:Anton,sans-serif; font-size:clamp(22px,3vw,38px); line-height:1; }
.stat-l { font-size:11px; font-weight:800; letter-spacing:2px; color:#aaa; margin-top:5px; text-transform:uppercase; }

/* ── Sections ── */
.section { padding:60px 7%; position:relative; z-index:1; background:#080808; }
.section-title { font-family:Anton,sans-serif; font-size:clamp(32px,4.5vw,58px); margin-bottom:28px; letter-spacing:1px; line-height:.95; }
.section-title .rd { color:var(--red); }

/* ── Parlay checker / upload ── */
.checker-wrap { background:#0d0d0d; padding:140px 7% 50px; position:relative; z-index:1; }
.checker-inner { max-width:820px; margin:0 auto; }
.checker-eyebrow { font-size:11px; font-weight:800; letter-spacing:4px; color:var(--red); margin-bottom:10px; }
.checker-h { font-family:Anton,sans-serif; font-size:clamp(32px,4vw,54px); margin-bottom:8px; line-height:.95; }
.checker-sub { font-size:15px; color:#bbb; margin-bottom:28px; line-height:1.65; }
.upload-area { border:2px dashed rgba(255,49,49,.22); border-radius:18px; padding:28px; text-align:center; cursor:pointer; transition:.22s; margin-bottom:14px; background:rgba(255,49,49,.02); }
.upload-area:hover { border-color:var(--red); background:rgba(255,49,49,.06); box-shadow:rgba(255,49,49,.06) 0 0 30px; }
.upload-ic { font-size:28px; margin-bottom:6px; }
.upload-t { font-size:16px; font-weight:800; margin-bottom:4px; }
.upload-s { font-size:13px; color:#aaa; }

/* ── Search input ── */
.search-wrap { position:relative; margin-bottom:10px; }
.si { width:100%; background:var(--c2); border:1px solid rgba(255,255,255,.08); color:#fff; padding:16px 18px; font-family:Inter,sans-serif; font-size:15px; border-radius:12px; outline:none; transition:border-color .2s; }
.si:focus { border-color:rgba(255,49,49,.45); }
.si::placeholder { color:rgba(245,245,245,.2); }
input:focus, textarea:focus, select:focus { box-shadow:0 0 0 2.5px rgba(255,49,49,.18); transition:box-shadow .18s ease, border-color .18s ease; }
.sr { position:absolute; top:calc(100% + 4px); left:0; right:0; background:var(--c2); border:1px solid rgba(255,255,255,.08); border-radius:14px; z-index:50; max-height:280px; overflow-y:auto; box-shadow:rgba(0,0,0,.8) 0 16px 50px; }
.sr-item { display:flex; align-items:center; padding:11px 16px; cursor:pointer; border-bottom:1px solid rgba(255,255,255,.04); gap:9px; transition:background .12s; }
.sr-item:hover { background:var(--c3); }
.sr-item:last-child { border-bottom:none; }
.sr-name { flex:1; font-size:14px; font-weight:700; }
.sr-hrs { font-size:11px; color:var(--dim); }
.sel-chips { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:12px; min-height:4px; }
.sel-chip { display:flex; align-items:center; gap:7px; background:rgba(255,49,49,.1); border:1px solid rgba(255,49,49,.25); border-radius:999px; padding:6px 13px; cursor:pointer; transition:.15s; }
.sel-chip:hover { background:rgba(255,49,49,.18); }
.sc-name { font-size:13px; font-weight:700; }
.sc-x { color:rgba(255,49,49,.6); font-size:13px; font-weight:900; }

/* ── Result boxes ── */
.result { padding:16px 20px; border-radius:14px; margin-bottom:12px; }
.res-hit { background:rgba(0,200,83,.06); border:1.5px solid rgba(0,200,83,.2); }
.res-miss { background:rgba(255,49,49,.06); border:1.5px solid rgba(255,49,49,.18); }
.res-title { font-size:16px; font-weight:900; margin-bottom:9px; }
.date-pills { display:flex; flex-wrap:wrap; gap:6px; }
.dp { background:var(--c3); border:1px solid rgba(255,255,255,.07); padding:4px 10px; border-radius:999px; font-size:11px; font-weight:700; color:#666; }
.dp.hot { background:rgba(0,200,83,.08); border-color:rgba(0,200,83,.28); color:var(--green); }

/* ── Team color badge ── */
.tc { font-size: 11px; font-weight: 800; padding: 3px 8px; border-radius: 6px; background: #333; color: #fff; flex-shrink: 0; letter-spacing: 0.5px; }

/* ── Lotto combo cards ── */
.lotto-card { background:linear-gradient(135deg,#1a0a00,#161616); border:1.5px solid rgba(255,179,0,.3); border-radius:16px; padding:12px 16px; margin-bottom:8px; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:14px; cursor:pointer; transition:.25s; position:relative; overflow:hidden; }
.lotto-card::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--gold),var(--red),var(--gold)); }
.lotto-card:hover { border-color:rgba(255,179,0,.6); transform:translateY(-3px); box-shadow:rgba(255,179,0,.15) 0 10px 40px; }
.lotto-left { flex: 1; min-width: 0; }
.lotto-legs { display:inline-block; background:var(--gold); color:#000; font-family:Anton,sans-serif; font-size:11px; letter-spacing:2px; padding:3px 10px; border-radius:999px; margin-bottom:7px; }
.lotto-players { font-size:clamp(13px,1.6vw,16px); font-weight:900; color:#fff; line-height:1.45; margin-bottom:5px; }
.lotto-players .plus { color:rgba(255,255,255,.35); font-weight:400; margin:0 4px; }
.lotto-meta { font-size:12px; color:#aaa; font-weight:600; }
.lotto-meta .hot-tag { color:var(--green); font-weight:800; }
.lotto-right { text-align:center; flex-shrink:0; }
.lotto-count { font-family:Anton,sans-serif; font-size:clamp(36px,4.5vw,58px); color:var(--gold); line-height:1; text-shadow:rgba(255,179,0,.5) 0 0 20px; }
.lotto-count-label { font-size:10px; color:rgba(255,179,0,.6); letter-spacing:2px; font-weight:700; margin-top:2px; }
.lotto-tagline { width:100%; border-top:1px solid rgba(255,179,0,.1); margin-top:8px; padding-top:6px; font-family:'Bebas Neue',sans-serif; font-size:11px; letter-spacing:3px; color:rgba(255,179,0,.55); text-align:center; }

/* Rare (multi-leg) variant */
.lotto-card.rare { background:linear-gradient(135deg,#0a0a1a,#161616); border-color:rgba(129,140,248,.3); }
.lotto-card.rare::before { background:linear-gradient(to right,#818cf8,#a78bfa,#818cf8); }
.lotto-card.rare:hover { border-color:rgba(129,140,248,.6); box-shadow:rgba(129,140,248,.12) 0 10px 40px; }
.lotto-card.rare .lotto-legs { background:#818cf8; color:#fff; }
.lotto-card.rare .lotto-count { color:#a78bfa; text-shadow:rgba(167,139,250,.5) 0 0 30px; }
.lotto-card.rare .lotto-count-label { color:rgba(167,139,250,.6); }

/* ── Feature panels ── */
.feature-panel { background:linear-gradient(#1e1e1e,#161616); border:1px solid rgba(255,255,255,.1); border-radius:28px; padding:36px 44px; display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; gap:30px; cursor:pointer; transition:.22s; position:relative; overflow:hidden; }
.feature-panel::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--red),transparent); opacity:0; transition:opacity .22s; }
.feature-panel:hover { border-color:rgba(255,49,49,.4); transform:translateY(-2px); box-shadow:rgba(0,0,0,.5) 0 8px 40px; }
.feature-panel:hover::before { opacity:1; }
.fp-left h3 { font-family:Anton,sans-serif; font-size:clamp(26px,3vw,38px); margin-bottom:10px; }
.fp-left p { font-size:clamp(15px,1.5vw,18px); line-height:1.7; color:#d0d0d0; max-width:680px; }
.fp-right { font-family:Anton,sans-serif; font-size:clamp(48px,6vw,72px); font-weight:900; color:var(--red); animation:2.5s ease infinite redGlow; flex-shrink:0; }

/* ── Hot streaks grid ── */
.hot-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.hot-card { background:linear-gradient(#1e1e1e,#161616); border:1px solid rgba(255,255,255,.1); border-radius:14px; padding:12px 16px; display:flex; align-items:center; gap:16px; transition:.22s; cursor:pointer; }
.hot-card:hover { border-color:rgba(255,49,49,.38); transform:translateY(-2px); }
.hot-rank { font-family:Anton,sans-serif; font-size:28px; color:rgba(255,49,49,.25); min-width:36px; }
.hot-info { flex:1; }
.hot-name { font-size:17px; font-weight:900; margin-bottom:4px; }
.hot-fires { font-size:18px; letter-spacing:2px; }
.hot-fires span { display:inline-block; animation:fireIn .3s ease both; }
.hot-fires span:nth-child(1){animation-delay:0s}.hot-fires span:nth-child(2){animation-delay:.1s}.hot-fires span:nth-child(3){animation-delay:.2s}.hot-fires span:nth-child(4){animation-delay:.3s}.hot-fires span:nth-child(5){animation-delay:.4s}
.hot-label { font-size:12px; color:#aaa; margin-top:3px; font-weight:700; }

/* ── Stories grid ── */
.stories-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.story-card { background:linear-gradient(#1e1e1e,#161616); border:1px solid rgba(255,255,255,.1); border-radius:16px; padding:16px; transition:.22s; cursor:pointer; position:relative; overflow:hidden; }
.story-card::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--red),transparent); opacity:0; transition:opacity .2s; }
.story-card:hover { border-color:rgba(255,49,49,.38); transform:translateY(-3px); box-shadow:rgba(0,0,0,.5) 0 8px 32px; }
.story-card:hover::before { opacity:1; }
.sc-ic { font-size:28px; margin-bottom:10px; }
.sc-cat { font-family:Anton,sans-serif; font-size:16px; letter-spacing:1px; color:var(--red); margin-bottom:4px; }
.sc-names { font-size:13px; font-weight:700; color:#ccc; margin-bottom:6px; }
.sc-desc { font-size:12px; color:#999; line-height:1.65; }

/* ── Story card scroll stagger (set by IntersectionObserver; delay staggers cascade) ── */
.story-card:nth-child(1){--stagger:0s}.story-card:nth-child(2){--stagger:.06s}.story-card:nth-child(3){--stagger:.12s}.story-card:nth-child(4){--stagger:.18s}

/* ── Leaders grid ── */
.leaders-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.leader-row { display:flex; align-items:center; gap:10px; padding:10px 14px; background:linear-gradient(#1e1e1e,#161616); border:1px solid rgba(255,255,255,.1); border-radius:14px; transition:.2s; cursor:pointer; }
.leader-row:hover { border-color:rgba(255,49,49,.3); }
.l-rank { font-family:Anton,sans-serif; font-size:18px; min-width:22px; text-align:center; }
.l-name { flex:1; font-size:16px; font-weight:800; }
.l-team { font-size:11px; color:#aaa; font-weight:700; }
.l-bar-w { width:70px; height:3px; background:var(--c4); border-radius:2px; overflow:hidden; }
.l-bar { height:100%; background:linear-gradient(to right,var(--red2),var(--red)); border-radius:2px; }
.l-count { font-family:Anton,sans-serif; font-size:20px; min-width:26px; text-align:right; }

/* ── Tagline bar ── */
.tagline-bar { background:linear-gradient(135deg,var(--red2),var(--red),var(--red2)); padding:22px 7%; text-align:center; box-shadow:rgba(255,49,49,.4) 0 0 60px; position:relative; z-index:1; }
.tagline-text { font-family:Anton,sans-serif; font-size:clamp(18px,2.5vw,32px); letter-spacing:6px; color:#fff; text-shadow:rgba(255,255,255,.2) 0 0 20px; }

/* ── Join/membership section ── */
.join-section { padding:60px 7%; background:var(--c1); position:relative; z-index:1; }
.join-inner { max-width:680px; margin:0 auto; text-align:center; }
.join-h { font-family:Anton,sans-serif; font-size:clamp(36px,5vw,64px); margin-bottom:12px; line-height:.95; }
.join-sub { font-size:clamp(15px,1.6vw,18px); color:#ccc; line-height:1.7; margin-bottom:32px; }
.join-btn-big { background:var(--red); color:#fff; border:none; padding:18px 48px; border-radius:16px; font-weight:900; font-size:16px; cursor:pointer; box-shadow:rgba(255,49,49,.4) 0 0 40px; transition:.22s; margin-bottom:10px; display:block; width:100%; letter-spacing:.3px; }
.join-btn-big:hover { transform:translateY(-2px); box-shadow:0 0 60px var(--rg); }
.join-btn-big:active { transform:scale(.96)!important; transition-duration:.08s; }
.join-fine { font-size:11px; color:var(--faint); margin-bottom:22px; }
.email-row { display:flex; border-radius:14px; overflow:hidden; border:1px solid rgba(255,255,255,.08); }
.email-in { flex:1; background:var(--c2); border:none; color:#fff; padding:16px 18px; font-family:Inter,sans-serif; font-size:14px; outline:none; }
.email-in::placeholder { color:rgba(245,245,245,.2); }
.email-go { background:var(--red); color:#fff; border:none; padding:16px 22px; font-weight:800; font-size:13px; cursor:pointer; white-space:nowrap; letter-spacing:.3px; transition:background .2s; }
.email-go:hover { background:var(--red3); }

/* ── Pricing cards ── */
.pricing-grid { display:flex; gap:20px; justify-content:center; flex-wrap:wrap; max-width:760px; margin:32px auto 0; }
.pricing-card { flex:1; min-width:280px; max-width:340px; background:var(--c2); border:1px solid rgba(255,255,255,.1); border-radius:16px; padding:28px; }
.pricing-card.featured { border-color:var(--red); box-shadow:0 0 0 1px var(--red),0 8px 32px rgba(255,49,49,.15); }
.pricing-badge { display:inline-block; background:var(--red); color:#fff; font-size:10px; font-weight:800; letter-spacing:1px; text-transform:uppercase; padding:3px 10px; border-radius:20px; margin-bottom:16px; }
.pricing-label { font-size:13px; font-weight:700; color:#aaa; text-transform:uppercase; letter-spacing:1px; margin-bottom:8px; }
.pricing-price { font-family:Anton,sans-serif; font-size:44px; line-height:1; }
.pricing-price span { font-size:16px; font-weight:600; color:#aaa; font-family:Inter,sans-serif; }
.pricing-period { font-size:13px; color:#aaa; margin-top:4px; margin-bottom:24px; }
.pricing-features { list-style:none; margin:0 0 28px; }
.pricing-features li { font-size:14px; padding:7px 0; display:flex; align-items:center; gap:10px; border-bottom:1px solid rgba(255,255,255,.06); }
.pricing-features li:last-child { border-bottom:none; }
.pricing-features .check { color:var(--green); font-weight:900; }
.pricing-features .cross { color:#444; font-weight:900; }
.pricing-features .muted { color:#aaa; }
.btn-pricing { width:100%; padding:14px; border-radius:10px; font-size:14px; font-weight:800; letter-spacing:.3px; cursor:pointer; border:none; transition:opacity .15s; }
.btn-pricing-primary { background:var(--red); color:#fff; box-shadow:rgba(255,49,49,.3) 0 0 20px; }
.btn-pricing-primary:hover { opacity:.88; }
.btn-pricing-outline { background:transparent; color:#aaa; border:1px solid rgba(255,255,255,.1); }
.btn-pricing-outline:hover { border-color:var(--red); color:#fff; }

/* ── Modal ── */
.modal-overlay { position:fixed; inset:0; z-index:999; background:rgba(0,0,0,.85); display:flex; align-items:center; justify-content:center; padding:16px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); }
.modal-box { background:var(--c2); border:1px solid rgba(255,49,49,.4); border-radius:20px; padding:32px; max-width:440px; width:100%; position:relative; box-shadow:0 0 0 1px var(--red),0 16px 64px rgba(255,49,49,.2); }
/* Glassmorphism + entrance for inline modals */
#premiumModal, #authModal, #verifyModal { backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); }
#premiumModal > div, #authModal > div, #verifyModal > div { animation:modalIn .24s cubic-bezier(.4,0,.2,1) both; }
.modal-close { position:absolute; top:16px; right:16px; background:rgba(255,255,255,.06); border:none; color:#aaa; width:32px; height:32px; border-radius:50%; font-size:18px; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .15s; }
.modal-close:hover { background:rgba(255,255,255,.1); color:#fff; }

/* ── Live / badge helpers ── */
.live-badge { display:inline-flex; align-items:center; gap:5px; background:rgba(239,68,68,.15); color:#ef4444; border:1px solid rgba(239,68,68,.3); padding:2px 8px; border-radius:20px; font-size:11px; font-weight:700; animation:live-pulse 2s infinite; }
.live-dot { width:6px; height:6px; border-radius:50%; background:#ef4444; }
.final-badge { display:inline-flex; align-items:center; background:rgba(136,136,136,.15); color:#888; border:1px solid rgba(136,136,136,.2); padding:2px 8px; border-radius:20px; font-size:11px; font-weight:600; }
.tier-badge { display:inline-block; padding:2px 8px; border-radius:20px; font-size:10px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; }
.tier-elite  { background:linear-gradient(135deg,#fbbf24,#f97316); color:#000; }
.tier-leader { background:var(--red); color:#fff; }
.tier-hot    { background:#ef4444; color:#fff; }
.tier-solid  { background:#06b6d4; color:#000; }
.tier-watch  { background:rgba(136,136,136,.2); color:#888; }

/* ── Clickable player name ── */
.player-link { cursor:pointer; border-bottom:1px dotted rgba(255,49,49,.4); transition:color .15s, border-color .15s; }
.player-link:hover { color:var(--red); border-bottom-color:var(--red); }

/* ── Misc ── */
.player-chip { background:rgba(255,49,49,.1); border:1px solid rgba(255,49,49,.3); color:var(--red); padding:3px 10px; border-radius:20px; font-size:12px; font-weight:600; display:inline-flex; align-items:center; gap:4px; }
.drop-zone { border:2px dashed rgba(255,49,49,.22); border-radius:16px; transition:all .2s; }
.drop-zone.drag-over { border-color:var(--red); background:rgba(255,49,49,.05); }
.section-eyebrow { font-size:11px; font-weight:800; letter-spacing:4px; color:var(--red); margin-bottom:10px; }

/* ── BET NOW button ── */
.btn-bet-now { background:linear-gradient(135deg,#22c55e,#16a34a); color:#fff; border:none; padding:10px 20px; border-radius:10px; font-weight:900; font-size:13px; letter-spacing:.5px; cursor:pointer; transition:.2s; white-space:nowrap; box-shadow:rgba(34,197,94,.3) 0 0 20px; margin-top:8px; display:inline-block; }
.btn-bet-now:hover { transform:translateY(-1px); box-shadow:rgba(34,197,94,.5) 0 0 32px; }

/* ── Toast notification ── */
.dn-toast { position:fixed; bottom:32px; left:50%; transform:translateX(-50%) translateY(20px); background:#22c55e; color:#fff; padding:14px 24px; border-radius:14px; font-weight:800; font-size:14px; letter-spacing:.3px; z-index:9999; opacity:0; transition:opacity .3s,transform .3s; box-shadow:rgba(34,197,94,.4) 0 8px 32px; pointer-events:none; text-align:center; max-width:420px; width:calc(100% - 40px); }
.dn-toast.dn-toast-in { opacity:1; transform:translateX(-50%) translateY(0); }

/* ── Sportsbook referral bar ── */
.sb-bar { background:var(--c1); border-top:1px solid rgba(255,255,255,.07); border-bottom:1px solid rgba(255,255,255,.07); padding:12px 7%; position:relative; z-index:1; }
.sb-bar-inner { display:flex; align-items:center; gap:10px; overflow-x:auto; flex-wrap:wrap; justify-content:center; }
.sb-label { font-size:9px; font-weight:800; letter-spacing:3px; color:#555; white-space:nowrap; flex-shrink:0; text-transform:uppercase; }
.sb-link { display:inline-flex; align-items:center; gap:6px; background:var(--c2); border:1px solid rgba(255,255,255,.08); border-radius:10px; padding:8px 16px; font-size:12px; font-weight:800; color:#ccc; text-decoration:none; transition:.2s; white-space:nowrap; letter-spacing:.3px; }
.sb-link:hover { border-color:rgba(255,49,49,.4); color:#fff; background:var(--c3); }
.sb-bonus { font-size:10px; color:var(--green); font-weight:700; margin-left:2px; }
.sb-section { background:var(--c1); border-top:1px solid rgba(255,255,255,.07); border-bottom:1px solid rgba(255,255,255,.07); padding:28px 7%; text-align:center; position:relative; z-index:1; }
.sb-section-label { font-size:10px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:#555; margin-bottom:16px; }
.sb-section-books { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-bottom:14px; }
.sb-book { display:inline-flex; align-items:center; gap:6px; border-radius:10px; padding:10px 18px; font-size:13px; font-weight:800; letter-spacing:.5px; text-decoration:none; transition:.15s; white-space:nowrap; }
.sb-fanduel { background:#1053d4; color:#fff; }
.sb-draftkings { background:#53d337; color:#000; }
.sb-espnbet { background:#cc0000; color:#fff; }
.sb-caesars { background:#4b3f8c; color:#fff; }
.sb-pikkit { background:#f5c400; color:#000; }
.sb-book:hover { opacity:.85; transform:translateY(-1px); }
.sb-section-disclaimer { font-size:10px; color:#555; letter-spacing:.3px; }
.footer-legal { font-size:11px; color:#444; line-height:1.9; margin-top:16px; max-width:640px; margin-left:auto; margin-right:auto; }
.sb-disclaimer { width:100%; text-align:center; font-size:10px; color:#444; margin-top:8px; letter-spacing:.5px; }

/* ── Pricing card slogan ── */
.pricing-slogan { font-family:'Bebas Neue',sans-serif; font-size:11px; letter-spacing:3px; color:rgba(255,49,49,.45); text-align:center; margin-top:14px; padding-top:10px; border-top:1px solid rgba(255,255,255,.06); }

/* ── Founder Counter ── */
.founder-counter { background:rgba(255,49,49,.07); border:1px solid rgba(255,49,49,.2); border-radius:12px; padding:12px 14px; margin-bottom:18px; }
.founder-counter-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
.founder-spots-label { font-size:10px; font-weight:800; letter-spacing:2px; text-transform:uppercase; color:var(--red); }
.founder-spots-remaining { font-family:Anton,sans-serif; font-size:18px; color:#fff; letter-spacing:1px; }
.founder-bar-track { background:rgba(255,255,255,.08); border-radius:99px; height:6px; width:100%; overflow:hidden; margin-bottom:8px; }
.founder-bar-fill { height:100%; background:var(--red); border-radius:99px; width:0%; transition:width 1s ease; }
.founder-bar-note { font-size:10px; color:#888; text-align:center; letter-spacing:.3px; }

/* ── Footer ── */
footer.site-footer { padding:44px 7%; border-top:1px solid rgba(255,255,255,.07); font-size:11px; color:#666; line-height:2; text-align:center; background:var(--bg); position:relative; z-index:1; }
footer.site-footer a { color:#666; text-decoration:none; transition:color .2s; }
footer.site-footer a:hover { color:#aaa; }
.footer-links { display:flex; gap:22px; justify-content:center; margin-top:10px; flex-wrap:wrap; }
.footer-links a { font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; }

/* ── Responsive ── */
@media (max-width:980px) {
  .hero { grid-template-columns:1fr; padding-top:120px; }
  .phone { width:100%; max-width:360px; }
  .phone-wrap { margin-top:20px; }
  .hot-grid { grid-template-columns:1fr; }
  .stories-grid { grid-template-columns:1fr 1fr; }
  .leaders-grid { grid-template-columns:1fr; }
  .stats-grid { grid-template-columns:1fr 1fr; }
  .nav-burger { display:flex; }
  /* hide tab row on mobile — burger drawer covers navigation */
  .nav-tabs { display:none; }
  /* compact logo: hide sub-line but keep tagline visible */
  .logo-sub { display:none !important; }
  .logo-tagline { font-size:7px !important; letter-spacing:1.5px !important; white-space:normal !important; }
  /* hide username badge from nav on mobile — burger drawer has full menu */
  #navAuthArea a[href="/account"] { display:none !important; }
  /* reduce top clearance now that nav is ~65px instead of ~200px */
  .checker-wrap { padding-top:90px; }
  /* search page scanner banner */
  #search-scan-banner { padding-top:90px !important; }
}
@media (max-width:640px) {
  .nav { padding:18px 5%; }
  .hero, .section, .checker-wrap, .join-section, footer.site-footer { padding-left:5%; padding-right:5%; }
  .stories-grid { grid-template-columns:1fr; }
  .hero-btns { flex-direction:column; }
  .btn { justify-content:center; }
  .feature-panel { flex-direction:column; align-items:flex-start; padding:24px; }
  .fp-right { font-size:52px; }
  /* extra bottom breathing room for iOS safe area / browser chrome */
  .checker-wrap { padding-bottom:max(80px, calc(50px + env(safe-area-inset-bottom))); }
}
@media(max-width:768px) {
  .nav-tabs { display:none; }
}
