/* AlgoBot new brand base (from algobot-website.zip, 16 Oct). Geist bundled locally. */
@font-face{font-family:"Geist";src:url("fonts/Geist-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{--ink:#050A14;--surface:#0A1220;--raised:#101A2D;--line:#1B2740;--line-strong:#2D3C5E;--text:#EEF2F8;--mute:#94A1BA;--ion:#8DBBFF;--ind:#7FB2FF;--sig:#F0D9A8;--copy:#8FE0C2;--green:#3DDC84;--green-hi:#63E89D;--neg:#FF8F8F;
  --sans:"Geist","Helvetica Neue","Segoe UI",system-ui,sans-serif;
  /* aliases used by league.css */
  --muted:var(--mute);--lime:var(--green);--red:var(--neg);--panel:var(--surface);--card:var(--raised);--sunrise:var(--sig)}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--text);font-family:var(--sans);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}
a{color:inherit}
h1,h2,h3,p{margin:0}
:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:6px}
#stars{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
#stars i{position:absolute;top:0;left:0;width:1px;height:1px;border-radius:50%;background:transparent}
.topbar,.content,.lg-hero{position:relative;z-index:1}
.wrap{max-width:76rem;margin:0 auto;padding:0 1.5rem}
/* header */
.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 2rem;padding-top:1.1rem;padding-bottom:1.1rem;z-index:3}
.logo{display:inline-flex;align-items:center;text-decoration:none}
.logo img{height:38px;width:auto;display:block}
.topbar nav{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.75rem;font-size:.95rem}
.topbar nav a{text-decoration:none;color:var(--mute);padding:.7rem 0}
.topbar nav a:hover,.topbar nav a.on{color:var(--text)}
.pill{display:inline-flex;align-items:center;gap:.5rem;min-height:2.25rem;padding:0 1rem;border-radius:999px;border:1px solid var(--line-strong);color:var(--text);font-size:.9rem;font-weight:500}
.pill::before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:var(--sig);box-shadow:0 0 0 4px rgba(240,217,168,.16)}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:0 1.15rem;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--text);font:500 .95rem var(--sans);text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform .15s ease,background .15s ease,border-color .15s ease}
.btn:hover{border-color:var(--mute)}.btn:active{transform:scale(.97)}
.btn-primary{background:var(--green);border-color:var(--green);color:#04130A;font-weight:600}.btn-primary:hover{background:var(--green-hi)}
/* page */
.content{padding-bottom:0}
.eyebrow{color:#C9D5EA;font-size:.95rem;font-weight:500;letter-spacing:.04em;margin-bottom:.6rem}
h1{font-weight:700;font-size:clamp(2.4rem,5.6vw,4.4rem);line-height:1.02;letter-spacing:-.05em}
h1 em,h2 em{font-style:normal;color:var(--green)}
h2{font-weight:500;font-size:clamp(1.4rem,2.4vw,1.85rem);line-height:1.15;letter-spacing:-.03em;margin-bottom:.4rem}
/* Earth from orbit (brand hero) */
.earth{position:absolute;left:0;right:0;top:-110px;height:650px;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(#000 0,#000 40%,transparent 100%);mask-image:linear-gradient(#000 0,#000 40%,transparent 100%);--sx:430px;--sy:209px;--sa:16.7deg}
.globe{position:absolute;left:50%;top:146px;width:3000px;height:3000px;margin-left:-1500px;border-radius:50%;overflow:hidden;background:linear-gradient(#0B2A63 0,#08193A 80px,var(--ink) 240px);box-shadow:0 -1px 3px rgba(205,232,255,.75),0 -8px 26px rgba(96,165,255,.5),0 -40px 120px rgba(44,110,235,.32)}
.globe::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 1.5px 1px rgba(220,240,255,.95),inset 0 7px 16px rgba(130,195,255,.7),inset 0 30px 70px rgba(50,120,240,.45),inset 0 70px 110px rgba(24,66,160,.3)}
.clouds{position:absolute;left:0;top:0;width:3000px;height:240px;mix-blend-mode:screen;opacity:.6}
.sun-core,.sun-glow,.sun-arc,.sun-spike{position:absolute;left:calc(50% + var(--sx));top:var(--sy)}
.sun-core{width:22px;height:22px;margin:-15px 0 0 -11px;border-radius:50%;background:#FFF7E6;box-shadow:0 0 18px 6px rgba(255,240,210,.9),0 0 60px 22px rgba(255,200,130,.42)}
.sun-glow{width:560px;height:560px;margin:-280px 0 0 -280px;background:radial-gradient(closest-side,rgba(255,238,210,.3),rgba(255,206,150,.08) 34%,rgba(255,190,130,0) 70%);mix-blend-mode:screen}
.sun-arc{width:820px;height:84px;margin:-42px 0 0 -410px;transform:rotate(var(--sa));background:radial-gradient(closest-side,rgba(255,246,228,.95),rgba(255,200,140,.5) 16%,rgba(130,185,255,.28) 46%,rgba(80,150,255,0));mix-blend-mode:screen}
.sun-spike{width:520px;height:2px;margin:-1px 0 0 -260px;transform:rotate(var(--sa));background:linear-gradient(90deg,rgba(255,244,224,0),rgba(255,244,224,.5),rgba(255,244,224,0));mix-blend-mode:screen}
/* footer */
.risk{border:1px solid var(--line-strong);border-radius:.75rem;padding:1rem 1.25rem;font-size:.92rem;color:#C7D1E3;max-width:48rem}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;margin-top:1.5rem;color:var(--mute);font-size:.9rem}
@media (max-width:720px){.topbar nav{gap:.25rem 1rem}.earth{display:none}}
@media (prefers-reduced-motion:reduce){.btn{transition:none}}
