:root{--bg:#F4F0E8;--bg-elevated:#FFFFFF;--border:#1A1814;--text:#1A1814;--text-dark:#1A1814;--text-light:#F4F0E8;--muted:#5C574F;--accent:#FF4D6D;--accent-strong:#E63357;--accent-h:348;--gold:#F5B942;--gold-h:42;--pitch:#1A1814;--link:#D63655;--link-hover:#E63357;--link-on-dark:#FF8FA3;--link-on-dark-hover:#FFB3C2;--on-accent:#FFFFFF;--on-pitch-muted:#A89F90;--font:'DM Sans',system-ui,sans-serif;--font-display:'Archivo Black','Arial Black',sans-serif;--font-meta:'IBM Plex Mono','Courier New',monospace;--radius:4px;--max:1040px;--shadow:4px 4px 0 #1A1814}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--text-dark);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-display);line-height:1.05;letter-spacing:-.01em;margin-bottom:.6rem}
h1{font-size:2.2rem}h2{font-size:1.7rem}h3{font-size:1.25rem}
p{margin-bottom:1rem}
a{color:var(--link);word-break:break-all}
a:hover{color:var(--link-hover)}
img{max-width:100%;display:block}
ul,ol{list-style:none}
:where(main) ul:not([class]){list-style:disc;padding-left:1.25rem;margin:0 0 1rem}
:where(main) ol:not([class]){list-style:decimal;padding-left:1.25rem;margin:0 0 1rem}
:where(main) ul:not([class]) li,:where(main) ol:not([class]) li{margin:.3rem 0}
.container,.wrap{max-width:var(--max);margin:0 auto;padding:0 1.25rem}
section{padding:3rem 0}
.section-head{margin-bottom:1.5rem}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center;max-width:680px}
.label,.meta-label{font-family:var(--font-meta);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--muted)}
#scroll-progress{position:fixed;top:0;left:0;height:4px;width:0;background:var(--accent);z-index:1100}
.site-header{position:sticky;top:0;z-index:1000;width:100%;background:var(--pitch);color:var(--text-light);border-bottom:2px solid var(--border)}
.site-header *{color:inherit}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:60px;max-width:var(--max);margin:0 auto;gap:1.5rem}
.header-logo{flex-shrink:0;margin-right:2rem;color:var(--accent);font-weight:800;font-family:var(--font-display);font-size:1.2rem;text-decoration:none}
.header-info-badge{font-family:var(--font-meta);font-size:.7rem;border:2px solid var(--accent);padding:.2rem .5rem;border-radius:var(--radius)}
.main-nav{display:flex;flex-direction:row;align-items:center;gap:1.5rem;flex-shrink:0}
.nav-item{position:relative}
.nav-link{font-family:var(--font-meta);font-size:.82rem;text-decoration:none;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:none;border:none;padding:.3rem 0}
.has-dropdown{position:relative}
.has-dropdown > .nav-link{display:flex;justify-content:space-between;align-items:center;gap:.3rem}
.nav-item.active .nav-link{border-bottom:2px solid var(--accent)}
.dropdown{position:absolute;top:100%;left:0;display:none;z-index:999;background:var(--pitch);border:2px solid var(--accent);min-width:170px;padding-top:8px;color:var(--text-light);border-radius:var(--radius)}
.dropdown *{color:inherit}
.dropdown::before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}
.dropdown a{display:block;padding:.6rem 1rem;text-decoration:none;font-family:var(--font-meta);font-size:.8rem}
.dropdown a:hover{background:var(--accent);color:#fff}
.has-dropdown:hover > .dropdown{display:block}
.nav-cta{display:inline-flex;align-items:center;justify-content:center;text-align:center;background:var(--accent);color:var(--on-accent);font-family:var(--font-meta);text-decoration:none;padding:.5rem .9rem;border:2px solid var(--border);border-radius:var(--radius);font-size:.78rem;box-shadow:2px 2px 0 var(--border)}
.hamburger{display:none;background:none;border:2px solid var(--text-light);border-radius:var(--radius);width:40px;height:36px;cursor:pointer;font-size:1.2rem;color:inherit}
.btn,.brand-cta{display:inline-flex;align-items:center;justify-content:center;text-align:center;font-family:var(--font-meta);text-transform:uppercase;letter-spacing:.04em;font-weight:500;background:var(--accent);color:var(--on-accent);text-decoration:none;padding:.85rem 1.6rem;border:2px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease;font-size:.85rem}
.btn:hover,.brand-cta:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--border);color:#fff}
.btn--gold{background:var(--gold);color:var(--text-dark)}
.btn--ghost{background:#fff;color:var(--text-dark)}
.btn--xl{padding:1.1rem 2.2rem;font-size:1rem}
.hero{background:var(--pitch);color:var(--text-light);border-bottom:2px solid var(--border)}
.hero *{color:inherit}
.hero-grid{display:grid;gap:2rem;align-items:center}
@media(min-width:780px){.hero-grid{grid-template-columns:1.1fr .9fr}}
.hero-content > * + *{margin-top:1.1rem}
.hero-visual > * + *{margin-top:1.1rem}
.hero h1{font-size:2.6rem}
.band-pitch,.band-bg,.responsible-band,.cta-band,.final-cta{background:var(--pitch);color:var(--text-light);border-top:2px solid var(--border);border-bottom:2px solid var(--border)}
.band-pitch *,.band-bg *,.responsible-band *,.cta-band *,.final-cta *{color:inherit}
.band-elevated{background:var(--bg-elevated);border-top:2px solid var(--border);border-bottom:2px solid var(--border)}
.age-gate-note,.age-responsible{background:var(--pitch);color:var(--text-light);font-family:var(--font-meta);font-size:.8rem;padding:1rem 0;text-align:center}
.age-gate-note *,.age-responsible *{color:inherit}
.redirect-banner,.banner-pulse{background:var(--accent);color:var(--on-accent);border:2px solid var(--border);border-radius:var(--radius);padding:1.25rem;text-align:center;animation:bpulse 2.2s ease infinite}
.redirect-banner *,.banner-pulse *{color:inherit}
@keyframes bpulse{0%,100%{box-shadow:var(--shadow)}50%{box-shadow:7px 7px 0 var(--border)}}
.pull-quote,blockquote,.callout,.rg-callout{background:#fff;border-left:6px solid var(--accent);border:2px solid var(--border);border-left-width:6px;border-radius:var(--radius);padding:1.25rem;margin:0 0 2rem;font-family:var(--font-display);font-size:1.2rem;color:var(--text-dark);box-shadow:var(--shadow);word-break:break-word;overflow-wrap:break-word}
.callout,.rg-callout,blockquote,.info-card,.card,.spec-card,.step-item{color:var(--text-dark)}
.callout *,.rg-callout *,blockquote *,.info-card *,.card *,.spec-card *,.step-item *{color:var(--text-dark)}
.muted-note,.affiliate-note,.disclaimer{color:var(--muted);font-size:.85rem;font-family:var(--font-meta)}
.breadcrumb{font-family:var(--font-meta);font-size:.75rem;margin-bottom:1rem}
.search-input,.text-input{width:100%;max-width:420px;padding:.7rem 1rem;border:2px solid var(--border);border-radius:var(--radius);font-family:var(--font-meta);font-size:.9rem;background:#fff;margin-bottom:1.5rem}
.link-slide{position:relative;text-decoration:none}
.link-slide::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--accent);transition:width .18s ease}
.link-slide:hover::after{width:100%}
.heading-anchor{position:relative}
.heading-anchor a{opacity:0;text-decoration:none;color:var(--accent);margin-left:.4rem}
.heading-anchor:hover a{opacity:1}
.sidebar-nav a{display:block;padding:.4rem 0;font-family:var(--font-meta);font-size:.82rem;text-decoration:none;color:var(--text)}
.sidebar-nav a.is-active,.toc-link.is-active{color:var(--accent);font-weight:600}
.layout-sidebar{display:grid;gap:2rem}
@media(min-width:780px){.layout-sidebar{grid-template-columns:220px 1fr}}
.js-ready .reveal{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.js-ready .reveal.is-visible{opacity:1;transform:none}
.js-ready .reveal-slide{opacity:0;transform:translateX(-24px);transition:opacity .5s ease,transform .5s ease}
.js-ready .reveal-slide.is-visible{opacity:1;transform:none}
.js-ready .reveal-scale{opacity:0;transform:scale(.95);transition:opacity .5s ease,transform .5s ease}
.js-ready .reveal-scale.is-visible{opacity:1;transform:none}
.js-ready .timeline-item{opacity:0;transform:translateX(-16px);transition:opacity .5s ease,transform .5s ease}
.js-ready .timeline-item.is-visible{opacity:1;transform:none}
.site-footer{background:var(--pitch);padding:3rem 0 1.5rem;color:var(--text-light);border-top:2px solid var(--border)}
.site-footer *{color:inherit}
.site-footer a{color:var(--link-on-dark)}
.site-footer a:hover{color:var(--link-on-dark-hover)}
.footer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:2rem;max-width:var(--max);margin-left:auto;margin-right:auto;padding:0 1.25rem}
@media(min-width:880px){.footer-grid{grid-template-columns:repeat(5,1fr)}}
.footer-col__heading{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;margin-bottom:.75rem;font-family:var(--font-meta);color:var(--gold)}
.footer-col ul{list-style:none;padding:0;margin:0}
.footer-col ul li{margin-bottom:.5rem;font-size:.85rem}
.footer-col a{text-decoration:none}
.footer-disclaimer{border-top:1px solid var(--on-pitch-muted);padding-top:1.5rem;font-size:.8rem;margin-top:2rem;max-width:var(--max);margin-left:auto;margin-right:auto;padding-left:1.25rem;padding-right:1.25rem;color:var(--on-pitch-muted)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--on-pitch-muted);font-size:.75rem;margin-top:1rem;max-width:var(--max);margin-left:auto;margin-right:auto;padding-left:1.25rem;padding-right:1.25rem;flex-wrap:wrap;gap:.5rem}
:is(.hero,.band-pitch,.band-bg,.responsible-band,.cta-band) :is(.hub-card,.sport-card,.article-card,.promo-card,.feature-card,.info-card,.spec-card,.callout,.rg-callout,blockquote,.step-item,.data-table,.card){color:var(--text-dark)}
:is(.hero,.band-pitch,.band-bg,.responsible-band,.cta-band) :is(.hub-card,.sport-card,.article-card,.promo-card,.feature-card,.info-card,.spec-card,.callout,.rg-callout,blockquote,.step-item,.data-table,.card) *{color:var(--text-dark)}
:is(.hero,.band-pitch,.band-bg,.responsible-band,.cta-band) :is(.hub-card,.sport-card,.article-card,.promo-card,.feature-card,.info-card,.spec-card,.callout,.rg-callout,blockquote,.step-item,.data-table,.card) a{color:var(--accent)}
.hero .btn,.band-pitch .btn,.band-bg .btn,.responsible-band .btn,.cta-band .btn,.site-header .btn,.site-footer .btn,.nav-cta{color:var(--on-accent)}
.hero .btn:hover,.band-pitch .btn:hover,.cta-band .btn:hover{color:#fff}
.cta-band .btn,.section-head.center .btn{display:flex;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto}
.grid-2{display:grid;gap:1.5rem}
@media(min-width:780px){.grid-2{grid-template-columns:1fr 1fr}}
@media(max-width:640px){h1,.hero h1{font-size:1.9rem}h2{font-size:1.4rem}.hamburger{display:block}.main-nav{display:none}.main-nav.is-open{display:flex;flex-direction:column;position:absolute;top:60px;left:0;width:100%;padding:1rem;background:var(--pitch);border-bottom:2px solid var(--accent);align-items:flex-start}.main-nav.is-open .has-dropdown > .dropdown{display:none}.main-nav.is-open .has-dropdown.open > .dropdown{display:block;position:static;border:none;padding-left:1rem;background:transparent}.header-inner{padding:0 1rem}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.redirect-banner,.banner-pulse{animation:none!important}}