html{scroll-behavior:smooth}

/* ── Shared section layout ─────────────────────────────────── */
.ls{max-width:1200px;margin:0 auto;padding:5.5rem 2rem;position:relative;z-index:1}
.ls-header{margin-bottom:3rem}
.ls-tag{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--primary);background:rgba(56,200,255,0.08);border:1px solid rgba(56,200,255,0.22);padding:.2rem .6rem;border-radius:2px;margin-bottom:.85rem}
.ls-title{font-family:'Orbitron',sans-serif;font-size:clamp(1.4rem,3vw,2.2rem);font-weight:900;letter-spacing:.08em;text-transform:uppercase;line-height:1.15}
.ls-sub{color:var(--muted);font-size:.9rem;margin-top:.75rem;max-width:520px;font-family:'Rajdhani',sans-serif}

/* ── Hero ─────────────────────────────────────────────────── */
.hero-split{min-height:calc(100dvh - 76px);display:flex;align-items:center;position:relative;overflow:hidden}

.hs-inner{max-width:1200px;margin:0 auto;width:100%;padding:4rem 2rem;display:grid;grid-template-columns:1.15fr 0.85fr;gap:3.5rem;align-items:center;z-index:1;position:relative}

/* Hero left */
.hs-left{display:flex;flex-direction:column;align-items:flex-start;gap:1.75rem}
.hs-statement{display:flex;flex-direction:column;gap:.45rem}
.hs-line{font-family:'Orbitron',sans-serif;font-weight:900;font-size:clamp(2.2rem,5vw,4.8rem);letter-spacing:.05em;text-transform:uppercase;line-height:1;color:var(--text)}
.hs-line.accent{color:var(--primary)}
.hs-desc{font-family:'Rajdhani',sans-serif;font-size:1rem;color:var(--muted);line-height:1.7;max-width:440px}
.hs-btns{display:flex;gap:.85rem;flex-wrap:wrap}
.btn-lg{padding:.65rem 2rem;font-size:.85rem;letter-spacing:.12em;min-height:44px}

/* Hero sub-link (login / leaderboard) */
.hs-sub-link{color:var(--muted);font-family:'Rajdhani',sans-serif;font-size:.88rem;font-weight:600;letter-spacing:.06em;text-decoration:none;transition:color .15s}
.hs-sub-link:hover{color:var(--text)}
.hs-sub-links{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}

/* Board anchor shortcut — logged-in users only */
.hs-board-link{font-family:'JetBrains Mono',monospace;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(56,200,255,.45);text-decoration:none;margin-top:-.75rem;display:block;width:fit-content;transition:color .15s}
.hs-board-link:hover{color:var(--primary)}

/* Hero trust strip */
.hs-trust{display:flex;align-items:center;gap:.55rem;font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.hs-trust .hs-trust-sep{opacity:.35}

/* Mobile inline live summary (hidden on desktop) */
.hs-live-inline{display:none}

/* Hero right: live panel */
.hs-right{opacity:0;animation:fadeUp .7s cubic-bezier(.16,1,.3,1) .4s forwards}
.live-panel{background:var(--bg1);border:1px solid var(--border2);border-radius:4px;overflow:hidden;box-shadow:0 12px 48px rgba(0,0,0,.55),0 0 0 1px rgba(56,200,255,.05);position:relative}

/* Scan-line shimmer across live panel top */
.live-panel::before{content:'';position:absolute;top:0;left:0;width:60%;height:1px;background:linear-gradient(90deg,transparent,rgba(56,200,255,.35),transparent);animation:scanLine 6s linear 1.5s infinite;pointer-events:none;z-index:2;transform:translateX(-100%)}
@keyframes scanLine{0%{transform:translateX(-100%)}100%{transform:translateX(167%)}}

.lp-header{display:flex;align-items:center;gap:.6rem;padding:.7rem 1.25rem;background:var(--bg2);border-bottom:1px solid var(--border);font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.lp-header--quiet{color:var(--muted)}
.lp-header-tag{margin-left:auto;font-size:.58rem;letter-spacing:.18em;color:rgba(56,200,255,.42)}
.lp-header:not(.lp-header--quiet) .lp-header-tag{color:rgba(56,200,255,.88);text-shadow:0 0 8px rgba(56,200,255,.28)}

.live-dot{width:7px;height:7px;border-radius:50%;background:var(--green);flex-shrink:0;animation:livePulse 2s ease-in-out infinite;box-shadow:0 0 6px var(--green)}
@keyframes livePulse{0%,100%{opacity:1}50%{opacity:.3}}

/* Activity feed */
/* Ticker */
.lp-ticker-wrap{height:240px;overflow:hidden;position:relative;border-bottom:1px solid var(--border)}
.lp-ticker-wrap::before,.lp-ticker-wrap::after{content:'';position:absolute;left:0;right:0;height:2.5rem;z-index:2;pointer-events:none}
.lp-ticker-wrap::before{top:0;background:linear-gradient(180deg,var(--bg1) 0%,transparent 100%)}
.lp-ticker-wrap::after{bottom:0;background:linear-gradient(0deg,var(--bg1) 0%,transparent 100%)}
.lp-ticker{animation:tickerScroll linear infinite}
.lp-ticker:hover{animation-play-state:paused}
@keyframes tickerScroll{from{transform:translateY(0)}to{transform:translateY(-50%)}}
.lp-match-row{padding:.75rem 1.25rem;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:.3rem}
.lp-match-row:last-child{border-bottom:none}
.lp-match-players{display:flex;align-items:center;gap:.35rem;font-family:'Rajdhani',sans-serif;font-size:.88rem;font-weight:600;overflow:hidden}
.lp-match-players img{flex-shrink:0;opacity:.85}
.lp-match-w{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:5.5rem}
.lp-match-sep{color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;flex-shrink:0}
.lp-match-l{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:5.5rem}
.lp-match-foot{display:flex;align-items:center;justify-content:space-between}
.lp-match-amt{font-family:'Orbitron',sans-serif;font-size:.7rem;font-weight:700;color:var(--gold)}
.lp-match-time{font-family:'JetBrains Mono',monospace;font-size:.58rem;color:var(--muted);letter-spacing:.08em}
.lp-no-activity{padding:2.5rem 1.25rem;font-family:'JetBrains Mono',monospace;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:center}
.lp-footer{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1.25rem;background:var(--bg2);border-top:1px solid var(--border);font-family:'JetBrains Mono',monospace;font-size:.7rem;color:var(--muted);letter-spacing:.08em}
.lp-footer a{color:var(--primary);text-decoration:none;transition:opacity .15s}
.lp-footer a:hover{opacity:.75}

/* ── The Board ─────────────────────────────────────────────── */
.board-section{background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);position:relative}
.board-section .ls-title{font-size:clamp(2rem,4vw,3rem);letter-spacing:.06em;line-height:1}
.board-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2.5rem;gap:1rem;flex-wrap:wrap}
.board-list{border:none;border-radius:0;box-shadow:none;border-top:1px solid var(--border);overflow:hidden}
.board-row{display:grid;grid-template-columns:3rem 1fr 110px 72px 80px 1.5rem;align-items:center;gap:1.5rem;padding:1.1rem 1.5rem;background:transparent;border-bottom:1px solid var(--border);text-decoration:none;color:var(--text);transition:background .18s;position:relative;overflow:hidden}
.board-row:last-child{border-bottom:none}
.board-row::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary),transparent);transform:scaleX(0);transition:transform .22s cubic-bezier(.22,1,.36,1)}
@media(hover:hover) and (pointer:fine){
  .board-row:hover{background:rgba(56,200,255,.055)}
  .board-row:hover::after{transform:scaleX(1)}
  .board-row:hover .board-pos{color:rgba(56,200,255,.18)}
  .board-row:hover .board-arrow{opacity:1;transform:translateX(5px)}
}
.board-pos{font-family:'Orbitron',sans-serif;font-size:1.75rem;font-weight:900;color:rgba(255,255,255,.18);line-height:1;transition:color .25s;user-select:none}
.board-pos.pos-1{color:rgba(240,192,64,.65);text-shadow:0 0 32px rgba(240,192,64,.5)}
.board-player{display:flex;align-items:center;gap:.75rem;min-width:0}
.board-avatar{width:36px;height:36px;border-radius:50%;border:1px solid var(--border2);flex-shrink:0;object-fit:cover}
.board-name{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.board-rank{display:flex;align-items:center;gap:.4rem;flex-shrink:0}
.board-rank img{width:16px;height:16px;object-fit:contain}
.board-rank-name{font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.06em;font-weight:600;white-space:nowrap}
.board-record{font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.06em;white-space:nowrap;color:var(--muted);flex-shrink:0}
.board-record .bw{color:var(--green)}
.board-record .bl{color:var(--red)}
.board-vol{font-family:'Orbitron',sans-serif;font-size:.72rem;font-weight:700;color:var(--gold);flex-shrink:0;white-space:nowrap}
.board-arrow{color:var(--muted);font-size:.75rem;opacity:.35;transition:opacity .2s,transform .2s;flex-shrink:0}
.board-stats{display:contents}
.board-rank--unverified{color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:.58rem;letter-spacing:.1em}
.board-empty{padding:3rem 1.5rem;text-align:center;color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.12em;border:1px solid var(--border2);border-radius:4px}
.board-row.board-row-1{background:rgba(240,192,64,.025)}
.board-col-heads{display:grid;grid-template-columns:3rem 1fr 110px 72px 80px 1.5rem;gap:1.5rem;padding:.4rem 1.5rem;border-bottom:1px solid var(--border)}
.board-col-heads span{font-family:'JetBrains Mono',monospace;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

/* ── How It Works ──────────────────────────────────────────── */
.hiw-outer{background:var(--bg1)}
.steps-cols{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border2);border-radius:4px;overflow:hidden}
.step-col{padding:2.5rem 1.75rem;border-right:1px solid var(--border);position:relative;overflow:hidden;transition:background .22s cubic-bezier(.22,1,.36,1)}
.step-col:last-child{border-right:none}
.step-col::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary),transparent);transform:scaleX(0);transition:transform .4s cubic-bezier(.22,1,.36,1)}
@media(hover:hover) and (pointer:fine){
  .step-col:hover{background:rgba(56,200,255,.025)}
  .step-col:hover::after{transform:scaleX(1)}
  .step-col:hover .step-n{color:rgba(56,200,255,.09)}
}
.step-n{font-family:'Orbitron',sans-serif;font-size:clamp(4.5rem,9vw,7rem);font-weight:900;color:rgba(255,255,255,.08);line-height:.95;letter-spacing:.05em;margin-bottom:.75rem;transition:color .3s cubic-bezier(.22,1,.36,1);user-select:none}
@keyframes stepGlow{from{color:rgba(56,200,255,.22)}50%{color:rgba(56,200,255,.1)}to{color:rgba(255,255,255,.08)}}
.step-col.on .step-n{animation:stepGlow 1.3s cubic-bezier(.22,1,.36,1) forwards}
.step-col.reveal-d1.on .step-n{animation-delay:.05s}
.step-col.reveal-d2.on .step-n{animation-delay:.2s}
.step-col.reveal-d3.on .step-n{animation-delay:.35s}
.step-content{position:relative}
.step-title{font-family:'Orbitron',sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;color:var(--text)}
.step-desc{font-size:.88rem;color:var(--muted);line-height:1.65;font-family:'Rajdhani',sans-serif}

/* ── How It Works: FAQ ─────────────────────────────────────── */
.faq-list{margin-top:2.25rem;border-top:1px solid var(--border)}
.faq-item{border-bottom:1px solid var(--border)}
.faq-q{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0;font-family:'Orbitron',sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text);cursor:pointer;list-style:none;user-select:none;transition:color .18s}
.faq-q::-webkit-details-marker,.faq-q::marker{display:none}
.faq-q:hover{color:var(--primary)}
.faq-q::after{content:'→';font-family:'Rajdhani',sans-serif;font-size:.9rem;font-weight:700;color:var(--muted);flex-shrink:0;transition:transform .22s cubic-bezier(.22,1,.36,1),color .18s}
.faq-item[open]>.faq-q{color:var(--primary)}
.faq-item[open]>.faq-q::after{transform:rotate(90deg);color:var(--primary)}
.faq-a{font-family:'Rajdhani',sans-serif;font-size:.92rem;color:var(--muted);line-height:1.65;padding:.1rem 0 1rem;max-width:56ch}
details[open] .faq-a{animation:faqReveal .22s cubic-bezier(.22,1,.36,1) forwards}
@keyframes faqReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.faq-footer{margin-top:1rem;font-family:'JetBrains Mono',monospace;font-size:.65rem;letter-spacing:.1em}

/* ── How It Works footer ───────────────────────────────────── */
.hiw-footer{margin-top:1.5rem;font-family:'JetBrains Mono',monospace;font-size:.68rem;letter-spacing:.1em;color:var(--muted)}

/* ── Tournament ────────────────────────────────────────────── */
.tourn-card{background:var(--bg1);border:1px solid rgba(232,192,48,.25);border-radius:4px;overflow:hidden;position:relative;box-shadow:0 4px 20px rgba(0,0,0,.35)}
.tourn-card-inner{padding:2.5rem;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}
.tourn-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap}
.tourn-name{font-family:'Orbitron',sans-serif;font-size:1.05rem;font-weight:700;letter-spacing:.04em}
.tourn-stats{display:flex;gap:2.5rem;flex-wrap:wrap;margin-bottom:1.75rem}
.tourn-meta{text-align:center;flex-shrink:0}
.tourn-winner-label{font-family:'JetBrains Mono',monospace;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:.5rem}
.tourn-stat{display:flex;flex-direction:column;gap:.3rem}
.tourn-stat-val{font-family:'Orbitron',sans-serif;font-size:1.4rem;font-weight:700;color:var(--gold)}
.tourn-stat-val--open{color:var(--primary);font-size:1rem}
.tourn-stat-lbl{font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.tourn-icon{display:inline-block}

/* ── Reviews ───────────────────────────────────────────────── */
.no-reviews{border:1px dashed var(--border2);border-radius:4px;padding:3.5rem;text-align:center}
.no-reviews-text{color:var(--muted);font-size:.85rem;margin-bottom:1.25rem;font-family:'Rajdhani',sans-serif}

.rep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:4px;overflow:hidden}
.rep-grid--sparse{grid-template-columns:repeat(auto-fit,minmax(240px,420px));justify-content:center}
.rep-card{background:var(--bg1);padding:1.5rem;display:flex;flex-direction:column;gap:.85rem;transition:background .18s;position:relative;overflow:hidden}
.rep-card::before{content:'\201C';font-family:'Orbitron',sans-serif;font-size:5rem;line-height:.8;color:rgba(56,200,255,.06);position:absolute;top:.75rem;left:1rem;user-select:none;pointer-events:none;transition:color .25s}
@media(hover:hover) and (pointer:fine){
  .rep-card:hover{background:var(--bg2)}
  .rep-card:hover::before{color:rgba(56,200,255,.1)}
}
.rep-handle{font-family:'JetBrains Mono',monospace;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--primary);text-decoration:none;display:block;position:relative;z-index:1}
.rep-handle:hover{opacity:.75}
.rep-rank{display:flex;align-items:center;gap:.35rem;position:relative;z-index:1}
.rep-quote{font-family:'Rajdhani',sans-serif;font-size:.95rem;color:var(--text);line-height:1.7;flex:1;position:relative;z-index:1}
.rep-footer-link{font-family:'Rajdhani',sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.08em;color:var(--muted);text-decoration:none;transition:color .15s}
.rep-footer-link:hover{color:var(--text)}
.rep-stars{display:flex;gap:.04em;font-size:.82rem;line-height:1;position:relative;z-index:1}
.rep-star-on{color:var(--gold);text-shadow:0 0 7px rgba(232,192,48,.3)}
.rep-star-off{color:rgba(232,192,48,.14)}

/* ── CTA ───────────────────────────────────────────────────── */
.cta-wrap{padding:6rem 2rem 5rem;position:relative;overflow:hidden;z-index:1;max-width:1200px;margin:0 auto}
.cta-inner{display:grid;grid-template-columns:1fr 340px;gap:4rem;align-items:center}
.cta-statement{display:flex;flex-direction:column;align-items:flex-start}
.cta-start-line{width:2.75rem;height:3px;background:var(--primary);box-shadow:0 0 10px rgba(56,200,255,.4);margin-bottom:1.75rem;transform:scaleX(0);transform-origin:left center;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.cta-wrap.on .cta-start-line{transform:scaleX(1)}
.cta-title{font-family:'Orbitron',sans-serif;font-size:clamp(2.4rem,6.5vw,5.2rem);font-weight:900;letter-spacing:.07em;text-transform:uppercase;line-height:1.08;margin-bottom:.85rem}
.cta-title span{color:var(--primary);text-shadow:0 0 30px rgba(56,200,255,0);transition:text-shadow .9s cubic-bezier(.22,1,.36,1)}
.cta-wrap.on .cta-title span{text-shadow:0 0 30px rgba(56,200,255,.42);transition-delay:.75s}
.cta-sub{color:var(--muted);font-size:.95rem;margin-bottom:2rem;max-width:440px;line-height:1.65;font-family:'Rajdhani',sans-serif}
.cta-btns{display:flex;gap:.85rem;flex-wrap:wrap;align-items:center}

/* ── CTA: challenger block (current #1 player) ─────────────── */
.cta-challenger{position:relative;overflow:hidden;border:1px solid rgba(56,200,255,.1);border-radius:4px;padding:1.75rem 1.5rem;background:var(--bg1)}
.cta-challenger::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary),transparent)}
.ctac-label{font-family:'JetBrains Mono',monospace;font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(56,200,255,.5);margin-bottom:1.25rem}
.ctac-player{position:relative;margin-bottom:1.25rem}
.ctac-pos{font-family:'Orbitron',sans-serif;font-size:5rem;font-weight:900;color:rgba(56,200,255,.07);line-height:1;position:absolute;top:-.25rem;right:-.25rem;user-select:none;letter-spacing:.05em;pointer-events:none}
.ctac-profile{display:flex;align-items:center;gap:.85rem;position:relative;z-index:1}
.ctac-avatar{width:52px;height:52px;border-radius:50%;border:2px solid rgba(56,200,255,.18);object-fit:cover;flex-shrink:0}
.ctac-identity{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.ctac-name{font-family:'Orbitron',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ctac-rank{display:flex;align-items:center;gap:.35rem;font-family:'JetBrains Mono',monospace;font-size:.6rem;letter-spacing:.06em;font-weight:600;text-transform:uppercase}
.ctac-stats{display:flex;margin-bottom:1.25rem;border:1px solid var(--border);border-radius:3px;overflow:hidden}
.ctac-stat{flex:1;padding:.5rem .6rem;display:flex;flex-direction:column;gap:.18rem;border-right:1px solid var(--border)}
.ctac-stat:last-child{border-right:none}
.ctac-val{font-family:'Orbitron',sans-serif;font-size:.82rem;font-weight:700;line-height:1}
.ctac-lbl{font-family:'JetBrains Mono',monospace;font-size:.52rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ctac-challenge{font-family:'JetBrains Mono',monospace;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(56,200,255,.45);text-decoration:none;display:block;transition:color .15s}
.ctac-challenge:hover{color:var(--primary)}
.ctac-val--win{color:var(--green)}
.ctac-val--loss{color:var(--red)}
.ctac-val--volume{color:var(--gold)}

/* ── Discord server cards ──────────────────────────────────── */
.dc-server-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.dc-server-card{display:flex;flex-direction:column;gap:1.25rem;background:var(--bg1);border:1px solid var(--border);border-radius:3px;padding:1.75rem 1.75rem 1.5rem;text-decoration:none;color:inherit;position:relative;overflow:hidden;transition:border-color .22s,box-shadow .22s,transform .22s}
.dc-server-card::before{content:'';position:absolute;inset:0;opacity:0;transition:opacity .3s}
.dc-server-card:nth-child(1)::before{background:radial-gradient(ellipse at top left,rgba(56,200,255,.06) 0%,transparent 65%)}
.dc-server-card:nth-child(2)::before{background:radial-gradient(ellipse at top left,rgba(232,192,48,.06) 0%,transparent 65%)}
.dc-server-card:hover{border-color:var(--border2);box-shadow:0 8px 32px rgba(0,0,0,.35);transform:translateY(-2px)}
.dc-server-card:hover::before{opacity:1}
.dc-server-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dc-icon-wager{background:rgba(56,200,255,.1);color:var(--primary);border:1px solid rgba(56,200,255,.2)}
.dc-icon-tournament{background:rgba(232,192,48,.1);color:var(--gold);border:1px solid rgba(232,192,48,.2)}
.dc-server-body{flex:1}
.dc-server-name{font-family:'Orbitron',sans-serif;font-size:.95rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.5rem}
.dc-server-card:nth-child(1) .dc-server-name{color:var(--primary)}
.dc-server-card:nth-child(2) .dc-server-name{color:var(--gold)}
.dc-server-desc{font-family:'Rajdhani',sans-serif;font-size:.9rem;color:var(--muted);line-height:1.55;margin-bottom:.85rem}
.dc-server-features{display:flex;flex-wrap:wrap;gap:.35rem}
.dc-feat{font-family:'JetBrains Mono',monospace;font-size:.6rem;color:var(--muted);background:var(--bg2);border:1px solid var(--border);padding:.15rem .45rem;border-radius:2px;letter-spacing:.04em}
.dc-server-cta{font-family:'Rajdhani',sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text2);transition:color .2s}
.dc-server-card:nth-child(1):hover .dc-server-cta{color:var(--primary)}
.dc-server-card:nth-child(2):hover .dc-server-cta{color:var(--gold)}

/* ── Section bands ─────────────────────────────────────────── */
.section-band,.section-band-alt{width:100%;position:relative}

/* ── Scroll reveals ────────────────────────────────────────── */
/* Additive: content is visible by default. Only when JS is confirmed (.js on <html>)
   is it hidden pre-reveal, so a JS failure/slow load can never blank a section. */
.reveal{transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}
.js .reveal{opacity:0;transform:translateY(55px)}
.js .reveal.on{opacity:1;transform:translateY(0)}
.reveal-d1{transition-delay:.09s}
.reveal-d2{transition-delay:.18s}
.reveal-d3{transition-delay:.27s}
.reveal-d4{transition-delay:.36s}
.reveal-d5{transition-delay:.45s}

/* ── Hero headline animation ───────────────────────────────── */
@keyframes lineIn{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:translateX(0)}}
.hs-line.fade-up{animation-name:lineIn;animation-duration:.6s;animation-timing-function:cubic-bezier(.22,1,.36,1)}

/* ── Live panel cascade ─────────────────────────────────────── */
.lp-ticker-wrap{opacity:0;animation:statIn .6s cubic-bezier(.16,1,.3,1) 1.1s forwards}
@keyframes statIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}

/* ── CTA children stagger ──────────────────────────────────── */
.cta-title,.cta-sub,.cta-wrap .btn-red,.cta-wrap .btn-ghost,.cta-wrap .btn-discord,.cta-challenger{
  opacity:0;transform:translateY(18px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.cta-wrap.on .cta-title{opacity:1;transform:translateY(0);transition-delay:.08s}
.cta-wrap.on .cta-sub{opacity:1;transform:translateY(0);transition-delay:.24s}
.cta-wrap.on .btn-red,.cta-wrap.on .btn-ghost,.cta-wrap.on .btn-discord{opacity:1;transform:translateY(0);transition-delay:.42s}
.cta-wrap.on .cta-challenger{opacity:1;transform:translateY(0);transition-delay:.3s}

/* ── Responsive ────────────────────────────────────────────── */
@media(max-width:900px){
  .hs-inner{grid-template-columns:1fr;gap:3rem;padding:3.5rem 1.5rem}
  .hs-right{animation:none;opacity:1}
  .hs-left{align-items:flex-start}
  .rep-grid{grid-template-columns:1fr}
  .hs-live-inline{display:flex;align-items:center;gap:.55rem;font-family:'JetBrains Mono',monospace;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--green);background:var(--bg2);border:1px solid var(--border);border-radius:2px;padding:.5rem .85rem}
  .hs-live-inline .live-dot{width:6px;height:6px}
  .hs-live-browse{margin-left:auto;color:var(--primary);text-decoration:none;letter-spacing:.08em;transition:opacity .15s}
  .hs-live-browse:hover{opacity:.75}
  .hs-live-inline.hs-live-inline--quiet{color:var(--muted)}
  .hs-sub-link{padding:.35rem 0}
  .cta-inner{grid-template-columns:1fr;gap:2.5rem}
  .cta-title,.cta-sub{text-align:center}
  .cta-statement{align-items:center}
  .cta-start-line{transform-origin:center center}
  .cta-btns{justify-content:center}
}
@media(max-width:800px){
  .board-row{grid-template-columns:2.5rem 1fr 110px 72px 1.5rem;gap:1rem;padding:.9rem 1rem}
  .board-col-heads{grid-template-columns:2.5rem 1fr 110px 72px 1.5rem;gap:1rem;padding:.4rem 1rem}
  .board-col-heads span:nth-child(5){display:none}
  .board-stats{display:flex;flex-direction:column;gap:.12rem;align-items:flex-end}
  .board-vol{font-size:.6rem}
}
@media(max-width:700px){
  .hs-inner{padding:2.5rem 1.25rem}
  .ls{padding:4rem 1.25rem}
  .dc-server-grid{grid-template-columns:1fr}
  .board-row{grid-template-columns:2rem 1fr 16px 72px .75rem;gap:.5rem;padding:.9rem .85rem}
  .board-rank{display:flex;justify-content:center;align-items:center}
  .board-rank-name{display:none}
  .board-col-heads{display:none}
  .board-pos{font-size:1.25rem}
  .steps-cols{grid-template-columns:1fr}
  .step-col{border-right:none;border-bottom:1px solid var(--border)}
  .step-col:last-child{border-bottom:none}
  .step-n{font-size:4rem}
  .tourn-card-inner{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem}
  .lp-ticker-wrap{height:160px}
  .lp-match-w,.lp-match-l{max-width:7rem}
  .hs-trust{flex-wrap:wrap;gap:.25rem .5rem}
  .hs-trust .hs-trust-sep{display:none}
  .cta-wrap{padding:4rem 1.25rem}
  .cta-inner{gap:2rem}
  .ctac-pos{font-size:3.5rem}
}

/* ── Landscape phone ───────────────────────────────────────── */
@media(max-width:900px) and (max-height:500px){
  .hero-split{min-height:auto}
  .hs-inner{padding:1.75rem 1.25rem}
  .hs-left{gap:1rem}
}

/* ── Live panel: standings fallback ────────────────────────── */
.lp-standings{border-bottom:1px solid var(--border)}
.lp-sf-row{display:grid;grid-template-columns:2rem 28px 1fr auto;align-items:center;gap:.65rem;padding:.8rem 1.25rem;border-bottom:1px solid var(--border);text-decoration:none;color:var(--text);transition:background .15s;position:relative}
.lp-sf-row:last-child{border-bottom:none}
@media(hover:hover) and (pointer:fine){.lp-sf-row:hover{background:rgba(56,200,255,.04)}}
.lp-sf-pos{font-family:'Orbitron',sans-serif;font-size:1rem;font-weight:900;color:rgba(255,255,255,.13);line-height:1;user-select:none}
.lp-sf-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid var(--border);flex-shrink:0}
.lp-sf-player{display:flex;flex-direction:column;gap:.08rem;min-width:0}
.lp-sf-name{font-family:'Rajdhani',sans-serif;font-size:.88rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-sf-rank{font-family:'JetBrains Mono',monospace;font-size:.55rem;letter-spacing:.06em;text-transform:uppercase;font-weight:600}
.lp-sf-record{font-family:'JetBrains Mono',monospace;font-size:.62rem;letter-spacing:.06em;white-space:nowrap;color:var(--muted);flex-shrink:0}
.lp-sf-record .bw{color:var(--green)}
.lp-sf-record .bl{color:var(--red)}

/* ── Live panel: launch state (brand new platform) ──────────── */
.lp-launch{min-height:188px;display:flex;align-items:center;justify-content:center;padding:1.5rem;border-bottom:1px solid var(--border)}
.lp-launch-inner{text-align:center;display:flex;flex-direction:column;gap:.75rem;align-items:center}
.lp-launch-line{font-family:'Orbitron',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(56,200,255,.3)}
.lp-launch-stat{font-family:'JetBrains Mono',monospace;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.lp-launch-cta{font-family:'Rajdhani',sans-serif;font-size:.82rem;font-weight:600;color:var(--primary);text-decoration:none;letter-spacing:.06em;border:1px solid rgba(56,200,255,.18);padding:.35rem .9rem;border-radius:2px;transition:border-color .15s}
.lp-launch-cta:hover{border-color:rgba(56,200,255,.45)}

/* ── Reviews: aggregate rating line ─────────────────────────── */
.rep-rating-line{display:flex;align-items:center;gap:.5rem;margin-top:.65rem}
.rep-stars{color:var(--gold);font-size:.82rem;letter-spacing:.04em;text-shadow:0 0 8px rgba(232,192,48,.22)}
.rep-rating-val{font-family:'Orbitron',sans-serif;font-size:.7rem;font-weight:700;color:var(--gold)}
.rep-rating-cnt{font-family:'JetBrains Mono',monospace;font-size:.6rem;letter-spacing:.08em;color:var(--muted)}

/* ── Light mode ────────────────────────────────────────────── */

@keyframes stepGlowLight{from{color:rgba(40,132,181,.22)}50%{color:rgba(40,132,181,.12)}to{color:rgba(0,0,0,.055)}}

/* ── Reduced motion ────────────────────────────────────────── */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  /* .js .reveal included so it beats the JS-gated hidden state's specificity */
  .reveal,.js .reveal,.hs-right{animation:none;opacity:1;transform:none}
  .hs-line.fade-up{animation-name:fadeUp;animation-duration:.5s}
  .lp-ticker-wrap{opacity:1;animation:none;transform:none}
  .lp-ticker{animation:none}
  .live-panel::before{animation:none}
  .live-dot{animation:none}
  .cta-start-line{transform:scaleX(1);transition:none}
  .cta-title,.cta-sub,.cta-wrap .btn-discord,.cta-challenger{opacity:1;transform:none;transition:none}
  .cta-wrap.on .cta-title,.cta-wrap.on .cta-sub,.cta-wrap.on .btn-discord,.cta-wrap.on .cta-challenger{opacity:1;transform:none}
  .cta-title span{transition:none}
  .step-col.on .step-n{animation:none}
  details[open] .faq-a{animation:none}
}
