:root{
  --ink:#0f131b;
  --ink-deep:#0a0d13;
  --panel:#1a212c;
  --line:rgba(243,234,216,.12);
  --paper:#f3ead8;
  --paper-2:#e8dcc4;
  --ink-text:#221c14;
  --copper:#d4a05a;
  --copper-2:#f0c27a;
  --teal:#1a8f7d;
  --teal-2:#3ad4bb;
  --signal:#e23b2c;
  --mute:#9aa3b2;
  --white:#f7f1e6;
  --shadow:0 22px 60px rgba(0,0,0,.42);
  --header:74px;
  --dock:76px;
  --ui:"Outfit",system-ui,sans-serif;
  --display:"Fraunces","Times New Roman",serif;
  --body:"Newsreader","Georgia",serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0}
body{
  min-height:100%;
  background:
    radial-gradient(1100px 520px at -8% -8%,rgba(212,160,90,.18),transparent 50%),
    radial-gradient(900px 480px at 108% 0,rgba(26,143,125,.16),transparent 46%),
    linear-gradient(180deg,#10151e 0%,#0f131b 40%,#0c1016 100%);
  color:var(--white);
  font-family:var(--body);
  font-size:19.5px;
  line-height:1.7;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.16;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.85'/%3E%3C/svg%3E");
}
a{color:var(--copper-2);text-decoration-thickness:1px;text-underline-offset:3px}
img{max-width:100%;height:auto;display:block}
button,input{font:inherit}
.skip{
  position:absolute;left:-999px;top:8px;
}
.skip:focus{
  left:12px;z-index:90;background:var(--paper);color:var(--ink-text);
  padding:8px 12px;border-radius:8px;
}
.wrap{width:min(1160px,calc(100% - 32px));margin:0 auto;position:relative;z-index:1}
.spine{
  position:fixed;left:14px;top:50%;transform:translateY(-50%) rotate(180deg);
  writing-mode:vertical-rl;letter-spacing:.42em;text-transform:uppercase;
  font-family:var(--mono);font-size:11px;color:rgba(212,160,90,.45);z-index:2;
  pointer-events:none;
}

/* header */
.mast{
  position:sticky;top:0;z-index:40;height:var(--header);
  display:flex;align-items:center;
  background:rgba(12,15,20,.88);
  backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid rgba(212,160,90,.22);
}
.mast-in{
  width:min(1160px,calc(100% - 22px));margin:0 auto;
  display:flex;align-items:center;gap:16px;
}
.brand{display:flex;align-items:center;gap:10px;color:var(--white);text-decoration:none}
.brand img{width:38px;height:38px;border-radius:10px;border:1px solid rgba(212,160,90,.35)}
.brand-name{font-family:var(--ui);font-weight:700;letter-spacing:.06em;font-size:15px}
.brand small{display:block;color:var(--copper);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.nav{display:flex;gap:15px;flex:1;justify-content:center;flex-wrap:wrap}
.nav a{
  color:#efe6d4;text-decoration:none;font-family:var(--ui);font-size:13.5px;font-weight:500;
}
.nav a:hover{color:var(--copper-2)}
.cta-row{display:flex;gap:8px}
.btn{
  font-family:var(--ui);font-weight:700;border:0;border-radius:999px;
  padding:11px 17px;min-height:44px;cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  transition:transform .18s ease,filter .18s ease;
}
.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.btn-in{
  background:linear-gradient(180deg,#f3cc86,var(--copper));
  color:#1b1409;
  animation:pulse 2.3s ease-in-out infinite;
}
.btn-up{background:linear-gradient(180deg,#27b69f,var(--teal));color:#041916}
.btn-ghost{background:transparent;color:var(--paper);border:1px solid var(--line)}
.btn-copy{background:#2a2116;color:var(--copper-2);border:1px solid rgba(212,160,90,.3);font-size:13px}
@keyframes pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(212,160,90,.5)}
  50%{box-shadow:0 0 0 11px rgba(212,160,90,0)}
}
.burger{
  display:none;margin-left:auto;background:transparent;border:1px solid var(--line);
  color:var(--paper);width:44px;height:44px;border-radius:12px;
}

/* ticker */
.ticker{
  overflow:hidden;background:#0b0e14;border-bottom:1px solid var(--line);
  font-family:var(--mono);font-size:12.5px;color:var(--copper-2);
}
.ticker-track{display:flex;width:max-content;animation:marq 42s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker b{padding:11px 26px;white-space:nowrap;font-weight:500}
.ticker i{font-style:normal;color:var(--teal-2);margin:0 8px}
@keyframes marq{to{transform:translateX(-50%)}}

.flow{
  height:2px;width:100%;
  background:linear-gradient(90deg,transparent,var(--copper),var(--teal-2),transparent);
  background-size:220% 100%;
  animation:flow 7s linear infinite;
}
@keyframes flow{to{background-position:220% 0}}

/* hero */
.hero{padding:34px 0 8px;position:relative;z-index:1}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:26px;align-items:stretch}
.kicker{
  margin:0 0 10px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--teal-2);
}
.hero h1{
  margin:0 0 16px;font-family:var(--display);
  font-size:clamp(32px,5.2vw,60px);line-height:1.08;font-weight:560;letter-spacing:-.02em;
  text-wrap:balance;
}
.hero h1 em{font-style:italic;color:var(--copper-2)}
.lede{margin:0 0 20px;font-size:21px;max-width:38ch;color:#d8d0c2}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}
.meta-line{display:flex;flex-wrap:wrap;gap:14px;color:var(--mute);font-family:var(--ui);font-size:13px}
.crumb{font-family:var(--ui);font-size:13px;color:var(--mute);margin-bottom:14px}
.crumb a{color:#c9c2b4;text-decoration:none}
.slider{
  position:relative;min-height:390px;border-radius:28px;overflow:hidden;
  box-shadow:var(--shadow);background:var(--panel);
}
.slide{
  position:absolute;inset:0;padding:28px;opacity:0;transform:translateX(28px);
  transition:opacity .5s ease,transform .5s ease;
  display:flex;flex-direction:column;justify-content:flex-end;
}
.slide.is-on{opacity:1;transform:none}
.s1{background:linear-gradient(165deg,#3a2a16,#121820 70%)}
.s2{background:linear-gradient(165deg,#12332d,#121820 70%)}
.s3{background:linear-gradient(165deg,#2b1c28,#121820 70%)}
.slide:after{
  content:"";position:absolute;inset:auto 0 0 0;height:55%;
  background:linear-gradient(180deg,transparent,rgba(8,10,14,.86));pointer-events:none;
}
.slide h2,.slide p{position:relative;z-index:1}
.slide h2{margin:0 0 10px;font-family:var(--display);font-size:clamp(26px,3vw,36px);line-height:1.12;letter-spacing:-.015em}
.slide p{margin:0;color:#ebe3d4;max-width:34ch}
.dots{position:absolute;top:16px;right:16px;display:flex;gap:7px;z-index:2}
.dots button{width:10px;height:10px;border:0;border-radius:50%;background:#667084;cursor:pointer}
.dots button.on{background:var(--copper-2)}

/* address */
.desk{
  margin:30px 0;padding:24px;border-radius:26px;
  background:
    linear-gradient(180deg,rgba(212,160,90,.09),transparent 40%),
    #16110c;
  border:1px solid rgba(212,160,90,.38);
  box-shadow:var(--shadow);
}
.desk-top{display:flex;justify-content:space-between;gap:12px;align-items:end;flex-wrap:wrap}
.desk h2{margin:0;font-family:var(--display);font-size:clamp(28px,4vw,40px)}
.live{font-family:var(--mono);font-size:12px;color:var(--teal-2)}
.live:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#27c4ab;margin-right:7px;box-shadow:0 0 0 6px rgba(39,196,171,.15)}
.addr{
  margin-top:16px;padding:16px 18px;border-radius:16px;background:#0d0a07;
  display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
}
.addr a{font-family:var(--mono);font-size:clamp(15px,2.4vw,19px);word-break:break-all}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chip{
  font-family:var(--ui);font-size:12px;padding:6px 10px;border-radius:999px;
  background:#2b2115;color:#f0c27a;
}

/* paper articles */
.sheet{
  background:var(--paper);color:var(--ink-text);border-radius:30px;
  padding:38px 32px;margin:30px 0;box-shadow:var(--shadow);
  position:relative;
}
.sheet:before{
  content:"";position:absolute;left:22px;top:18px;bottom:18px;width:3px;
  background:linear-gradient(var(--copper),var(--teal));border-radius:4px;
}
.sheet h2,.sheet h3{font-family:var(--display);letter-spacing:-.02em;line-height:1.16}
.sheet h2{font-size:clamp(28px,4vw,44px);margin:0 0 8px}
.sheet h3{font-size:26px;margin:28px 0 8px}
.sheet p{margin:0 0 14px}
.byline{font-family:var(--ui);font-size:13px;color:#6d5d46;margin:0 0 16px}
.columns{columns:2;column-gap:30px}
.columns p,.columns h3,.columns ul{break-inside:avoid}
.sheet ul{padding-left:20px}
.sheet li{margin:0 0 8px}
.note{
  border-left:4px solid var(--copper);background:#efe3cc;padding:10px 14px;margin:16px 0;
  font-family:var(--ui);font-size:15.5px;
}
figure.pull{
  margin:18px 0;padding:8px 0 8px 16px;border-left:3px solid #c9843a;
}
figure.pull p{
  font-family:var(--display);font-size:26px;line-height:1.25;font-style:italic;margin:0;
}

/* rails */
.dark-block{margin:8px 0 28px}
.dark-block h2{font-family:var(--display);font-size:clamp(28px,4vw,40px);margin:0 0 8px}
.rail{overflow:hidden;margin-top:16px;mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent)}
.rail-track{display:flex;gap:14px;width:max-content;animation:rail 32s linear infinite}
.rail:hover .rail-track{animation-play-state:paused}
.game{
  width:230px;height:156px;border-radius:18px;padding:16px;color:var(--paper);
  display:flex;flex-direction:column;justify-content:flex-end;
  background:
    linear-gradient(180deg,transparent,rgba(0,0,0,.55)),
    linear-gradient(145deg,#2c3646,#121820);
}
.game strong{font-family:var(--display);font-size:26px;line-height:1}
.game span{font-family:var(--ui);font-size:13px;color:#c9d0da}
@keyframes rail{to{transform:translateX(-50%)}}

.cards{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}
.panel{
  background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:22px;padding:22px;
}
.score{font-family:var(--display);font-size:74px;line-height:.85;margin:0;color:var(--copper)}
.stars{color:#d4a05a;letter-spacing:4px;font-size:20px}
.faq details{
  background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:14px;
  padding:12px 16px;margin:10px 0;
}
.faq summary{cursor:pointer;font-family:var(--ui);font-weight:600}
.faq details p{margin:10px 0 0;color:#d7d0c3}
.event{
  border:1px dashed rgba(212,160,90,.5);border-radius:22px;padding:22px;
  background:linear-gradient(180deg,rgba(212,160,90,.08),transparent);
}
.when{font-family:var(--mono);color:var(--teal-2);font-size:13px}

footer{
  padding:46px 0 120px;color:var(--mute);font-family:var(--ui);font-size:14px;line-height:1.6;
}
.langs{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0 18px}
.langs a{color:var(--paper)}
.legal{max-width:70ch}

.dock{
  position:fixed;left:0;right:0;bottom:0;z-index:55;
  display:grid;grid-template-columns:1fr 1fr;gap:8px;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom));
  background:rgba(10,12,16,.94);
  border-top:1px solid rgba(212,160,90,.32);
  backdrop-filter:blur(12px);
}

@media (min-width:901px){
  .dock{display:none}
  footer{padding-bottom:48px}
}
@media (max-width:900px){
  .spine{display:none}
  .hero-grid,.cards,.columns{grid-template-columns:1fr;columns:1}
  .nav{display:none}
  .nav.open{
    display:flex;flex-direction:column;position:absolute;top:var(--header);left:0;right:0;
    background:#10141c;padding:16px 18px 20px;border-bottom:1px solid var(--line);z-index:30;
  }
  .burger{display:block}
  .cta-row.head{display:none}
  .hero{padding-top:18px}
  .sheet{padding:24px 18px}
  .slider{min-height:320px}
  body{font-size:18px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}
