/* Gauntlet Nine - poster / arena-cyan / poster-slab / card-frame motif */

:root{
  --gn-bg:#080b14; --gn-slab:#0e1322; --gn-slab-2:#0b1020; --gn-ink:#050710;
  --gn-accent:#22d3ee; --gn-alert:#f43f8e; --gn-text:#e6ecf7;
  --gn-muted:rgba(230,236,247,.74); --gn-dim:rgba(230,236,247,.60);
  --gn-line:rgba(255,255,255,.10); --gn-line-2:rgba(34,211,238,.42);
  --gn-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --gn-sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --gn-display:"Haettenschweiler","Arial Narrow","Oswald","Impact",system-ui,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:clip}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--gn-bg);color:var(--gn-text);font-family:var(--gn-sans);
  font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}
a{color:var(--gn-accent);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{margin:0 0 12px;line-height:1.04;font-weight:800}
p{margin:0 0 14px}
code{font-family:var(--gn-mono)}
:focus-visible{outline:2px solid var(--gn-accent);outline-offset:3px}

.gn-wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 clamp(14px,3.4vw,30px)}
.gn-display{font-family:var(--gn-display);text-transform:uppercase;letter-spacing:.005em;
  font-weight:400}

/* ---------- minimal top nav ---------- */
.gn-navtoggle{position:absolute;opacity:0;pointer-events:none;width:0;height:0}
.gn-top{position:relative;z-index:40;border-bottom:1px solid var(--gn-line)}
.gn-top-in{display:flex;align-items:center;justify-content:space-between;gap:16px;
  width:100%;max-width:1120px;margin:0 auto;padding:14px clamp(14px,3.4vw,30px)}
.gn-brand{display:inline-flex;align-items:center;gap:10px;color:var(--gn-text)}
.gn-brand:hover{text-decoration:none}
.gn-mark{flex:0 0 auto;width:28px;height:28px}
.gn-brand-n{font-family:var(--gn-display);text-transform:uppercase;font-size:1.28rem;
  letter-spacing:.02em;line-height:1}
.gn-brand-s{display:block;font-family:var(--gn-mono);font-size:.58rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--gn-dim);margin-top:3px}
.gn-burger{display:none;align-items:center;justify-content:center;height:38px;padding:0 14px;
  cursor:pointer;background:transparent;border:1px solid var(--gn-line-2);color:var(--gn-accent);
  font-family:var(--gn-mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;
  border-radius:7px}
.gn-nav{display:flex;align-items:center;gap:clamp(8px,1.6vw,22px)}
.gn-nav a{font-family:var(--gn-mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gn-muted);padding:6px 2px;border-bottom:2px solid transparent}
.gn-nav a:hover{color:var(--gn-text);text-decoration:none}
.gn-nav a.gn-on{color:var(--gn-accent);border-bottom-color:var(--gn-accent)}
@media(max-width:880px){
  .gn-burger{display:inline-flex}
  .gn-nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;
    align-items:stretch;gap:0;padding:6px clamp(14px,3.4vw,30px) 14px;background:var(--gn-slab);
    border-bottom:1px solid var(--gn-line-2)}
  .gn-navtoggle:checked ~ .gn-top .gn-nav{display:flex}
  .gn-nav a{padding:12px 2px;font-size:.82rem;border-bottom:1px solid var(--gn-line)}
}

/* ---------- act (full-bleed stacked section) ---------- */
.gn-act{padding:clamp(34px,6vw,62px) 0;border-bottom:1px solid var(--gn-line)}
.gn-act:last-of-type{border-bottom:0}
.gn-act--ink{background:var(--gn-ink)}
.gn-act--slab{background:var(--gn-slab-2)}
.gn-act-h{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.gn-act-h h2{font-family:var(--gn-display);text-transform:uppercase;
  font-size:clamp(1.5rem,4.4vw,2.5rem);margin:0}
.gn-act-n{font-family:var(--gn-mono);font-size:.66rem;letter-spacing:.24em;color:var(--gn-accent);
  text-transform:uppercase}
.gn-act-link{margin-left:auto;font-family:var(--gn-mono);font-size:.66rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gn-dim)}

/* ---------- poster hero ---------- */
.gn-hero{padding:clamp(34px,7vw,80px) 0 clamp(26px,4vw,44px);position:relative;overflow:hidden}
.gn-hero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(80% 60% at 50% 0%,rgba(34,211,238,.13),transparent 68%)}
.gn-hero-in{position:relative}
.gn-kick{display:inline-block;font-family:var(--gn-mono);font-size:.66rem;letter-spacing:.26em;
  text-transform:uppercase;color:var(--gn-accent);border:1px solid var(--gn-line-2);
  padding:6px 13px;margin-bottom:20px}
.gn-hero h1{font-family:var(--gn-display);text-transform:uppercase;
  font-size:clamp(2.6rem,11vw,6.4rem);line-height:.9;margin:0 0 18px;max-width:15ch}
.gn-hero h1 em{font-style:normal;color:var(--gn-accent);display:block}
.gn-lead{color:var(--gn-muted);font-size:clamp(1rem,2.2vw,1.14rem);max-width:60ch;margin-bottom:24px}
.gn-cta{display:flex;flex-wrap:wrap;gap:11px;margin-bottom:20px}
.gn-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 24px;
  border:1px solid var(--gn-line-2);background:transparent;color:var(--gn-text);cursor:pointer;
  border-radius:9px;font-family:var(--gn-mono);font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;font-weight:700;-webkit-appearance:none;appearance:none}
.gn-btn:hover{text-decoration:none;background:rgba(34,211,238,.11)}
.gn-btn--solid{background:var(--gn-accent);color:#04121a;border-color:var(--gn-accent)}
.gn-btn--solid:hover{filter:brightness(1.08);background:var(--gn-accent)}
.gn-facts{display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:0;padding:0;
  border-top:1px solid var(--gn-line)}
.gn-facts li{flex:1 1 190px;padding:14px 18px 14px 0;border-right:1px solid var(--gn-line)}
.gn-facts li:last-child{border-right:0}
.gn-facts b{display:block;font-family:var(--gn-display);text-transform:uppercase;
  font-size:clamp(1.2rem,3vw,1.7rem);line-height:1;margin-bottom:5px}
.gn-facts span{font-family:var(--gn-mono);font-size:.62rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gn-dim)}

/* ---------- headline VS split ---------- */
.gn-split{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(10px,3vw,34px);
  padding:clamp(20px,4vw,38px) clamp(14px,3vw,30px);background:var(--gn-slab);
  border:1px solid var(--gn-line-2);border-radius:14px}
.gn-corner{position:relative}
.gn-corner--b{text-align:right}
.gn-tag{display:inline-block;font-family:var(--gn-mono);font-size:.66rem;letter-spacing:.16em;
  color:var(--gn-accent);border:1px solid var(--gn-line-2);padding:3px 10px;margin-bottom:10px}
.gn-corner-n{font-family:var(--gn-display);text-transform:uppercase;
  font-size:clamp(1.3rem,4.4vw,2.6rem);line-height:.98}
.gn-corner-m{font-family:var(--gn-mono);font-size:.64rem;letter-spacing:.1em;color:var(--gn-dim);
  margin-top:7px}
.gn-vs{font-family:var(--gn-display);text-transform:uppercase;font-size:clamp(1.4rem,4vw,2.4rem);
  color:var(--gn-accent);text-align:center}
.gn-vs span{display:block;font-family:var(--gn-mono);font-size:.6rem;letter-spacing:.16em;
  color:var(--gn-dim);margin-top:6px}
@media(max-width:620px){
  .gn-split{grid-template-columns:minmax(0,1fr);text-align:center}
  .gn-corner--b{text-align:center}
  .gn-vs{order:2}
}

/* ---------- fight card list ---------- */
.gn-card{list-style:none;margin:0;padding:0;border-top:1px solid var(--gn-line)}
.gn-card li{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;
  padding:13px 4px;border-bottom:1px solid var(--gn-line)}
.gn-card-t{font-family:var(--gn-mono);font-size:.68rem;color:var(--gn-dim);white-space:nowrap}
.gn-card-m{font-weight:700;font-size:.95rem;min-width:0}
.gn-card-r{font-family:var(--gn-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gn-muted);white-space:nowrap}
.gn-card-f{font-family:var(--gn-mono);font-size:.6rem;letter-spacing:.12em;color:var(--gn-accent);
  border:1px solid var(--gn-line-2);border-radius:20px;padding:2px 9px}
@media(max-width:700px){
  .gn-card li{grid-template-columns:auto 1fr;row-gap:5px}
  .gn-card-r,.gn-card-f{grid-column:2;justify-self:start}
}

/* ---------- tables ---------- */
.gn-tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
.gn-table{width:100%;border-collapse:collapse;min-width:420px}
.gn-table caption{text-align:left;padding:0 0 9px;font-family:var(--gn-mono);font-size:.62rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--gn-dim)}
.gn-table th,.gn-table td{padding:10px 12px 10px 0;text-align:left;
  border-bottom:1px solid var(--gn-line);font-size:.88rem}
.gn-table th{font-family:var(--gn-mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gn-dim);font-weight:700}
.gn-table td.n,.gn-table th.n{text-align:right;font-family:var(--gn-mono);white-space:nowrap}
.gn-table tr:last-child td{border-bottom:0}
.gn-sd{font-family:var(--gn-display);text-transform:uppercase;font-size:1.05rem;color:var(--gn-accent);
  padding-right:12px}

/* ---------- bracket ---------- */
.gn-brw{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:6px}
.gn-br{display:flex;gap:15px;min-width:620px}
.gn-round{display:flex;flex-direction:column;justify-content:space-around;gap:11px;flex:1 1 0}
.gn-round-l{font-family:var(--gn-mono);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gn-dim);margin-bottom:2px}
.gn-seed{border:1px solid var(--gn-line);background:var(--gn-slab);border-radius:8px;overflow:hidden}
.gn-round--f .gn-seed{border-color:var(--gn-line-2)}
.gn-seed .s{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:8px 11px;
  font-size:.8rem}
.gn-seed .s+.s{border-top:1px solid var(--gn-line)}
.gn-seed .nm{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gn-seed .sc{font-family:var(--gn-mono);color:var(--gn-dim);flex:0 0 auto}
.gn-seed .s.tbd .nm{color:var(--gn-dim);font-weight:400}
.gn-brnote{font-family:var(--gn-mono);font-size:.64rem;letter-spacing:.08em;color:var(--gn-dim);
  margin-top:12px}

/* ---------- stages ---------- */
.gn-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.gn-stage{border-top:2px solid var(--gn-accent);padding-top:14px}
.gn-stage-n{display:block;font-family:var(--gn-mono);font-size:.6rem;letter-spacing:.2em;
  color:var(--gn-accent);margin-bottom:7px}
.gn-stage h3{font-family:var(--gn-display);text-transform:uppercase;font-size:1.14rem;margin-bottom:7px}
.gn-stage p{margin:0;font-size:.9rem;color:var(--gn-muted)}
@media(max-width:820px){.gn-stages{grid-template-columns:minmax(0,1fr)}}

/* ---------- fighters ---------- */
.gn-fighters{display:grid;grid-template-columns:repeat(auto-fit,minmax(262px,1fr));gap:16px}
.gn-fighter{background:var(--gn-slab);border:1px solid var(--gn-line);border-radius:12px;
  padding:16px 17px}
.gn-fighter-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;
  margin-bottom:12px}
.gn-fighter-n{font-family:var(--gn-display);text-transform:uppercase;font-size:1.3rem;line-height:1}
.gn-fighter-m{font-family:var(--gn-mono);font-size:.62rem;letter-spacing:.1em;color:var(--gn-dim);
  margin-top:6px}
.gn-duo{list-style:none;margin:0;padding:0;border-top:1px solid var(--gn-line)}
.gn-duo li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;
  border-bottom:1px solid var(--gn-line);font-size:.88rem}
.gn-duo li:last-child{border-bottom:0}
.gn-duo .h{font-family:var(--gn-mono);font-weight:700;color:var(--gn-text)}
.gn-duo .r{font-family:var(--gn-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gn-accent)}

/* ---------- prose + faq ---------- */
.gn-prose{max-width:76ch}
.gn-prose h2{font-family:var(--gn-display);text-transform:uppercase;
  font-size:clamp(1.24rem,3vw,1.7rem);margin-top:30px}
.gn-prose h2:first-child{margin-top:0}
.gn-prose h3{font-size:1rem;margin-top:21px;color:var(--gn-accent)}
.gn-prose p,.gn-prose li{color:var(--gn-muted);font-size:.94rem}
.gn-prose ul,.gn-prose ol{padding-left:20px}
.gn-prose li{margin-bottom:7px}
.gn-prose a{text-decoration:underline;text-underline-offset:2px}
.gn-note{border:1px solid var(--gn-line-2);background:var(--gn-slab);border-radius:10px;
  padding:14px 16px;margin:18px 0}
.gn-note p{margin:0;color:var(--gn-text);font-size:.9rem}
.gn-q{border-bottom:1px solid var(--gn-line)}
.gn-q:last-child{border-bottom:0}
.gn-q summary{list-style:none;cursor:pointer;padding:15px 0;font-weight:700;font-size:.98rem;
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.gn-q summary::-webkit-details-marker{display:none}
.gn-q summary::after{content:"+";flex:0 0 auto;font-family:var(--gn-mono);color:var(--gn-accent);
  font-weight:400;font-size:1.1rem;line-height:1.1}
.gn-q[open] summary::after{content:"\2212"}
.gn-q p{margin:0 0 15px;color:var(--gn-muted);font-size:.91rem;max-width:70ch}

/* ---------- footer ---------- */
.gn-footer{padding:30px 0 14px;border-top:1px solid var(--gn-line-2);background:var(--gn-ink)}
.gn-fnav{display:flex;flex-wrap:wrap;gap:9px 20px;margin-bottom:16px}
.gn-fnav a{font-family:var(--gn-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--gn-muted)}
.gn-fnav a:hover{color:var(--gn-accent);text-decoration:none}
.gn-disc{font-size:.79rem;color:var(--gn-dim);max-width:84ch;margin-bottom:11px;line-height:1.66}
.gn-copy{font-family:var(--gn-mono);font-size:.64rem;letter-spacing:.1em;color:var(--gn-dim)}

/* ---------- cookie banner ---------- */
.gn-cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:70;display:flex;flex-wrap:wrap;
  align-items:center;gap:12px 18px;padding:15px 18px;background:var(--gn-slab);
  border:1px solid var(--gn-line-2);border-radius:13px;box-shadow:0 16px 44px rgba(0,0,0,.6);
  max-width:750px;margin:0 auto}
.gn-cookie[hidden]{display:none}
.gn-cookie p{margin:0;flex:1 1 300px;font-size:.85rem;color:var(--gn-muted)}
.gn-cookie p a{text-decoration:underline;text-underline-offset:2px}
.gn-cookie-act{display:flex;gap:9px;flex:0 0 auto}
.gn-cookie .gn-btn{min-height:40px;padding:9px 17px;font-size:.64rem}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
}
