:root{--bg:#080808;--panel:#101010;--line:#2b2b2b;--text:#f2f0eb;--muted:#9c9a96;--accent:#e74732;--cream:#eae6dc;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 Inter,Arial,sans-serif}.skip{position:fixed;left:1rem;top:-4rem;z-index:100;background:#fff;color:#000;padding:.7rem 1rem}.skip:focus{top:1rem}a{color:inherit}.site-header{height:96px;max-width:var(--max);margin:auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand img{display:block;width:190px;height:58px;object-fit:contain;object-position:left center;filter:contrast(1.1)}nav{display:flex;align-items:center;gap:26px}nav a{text-decoration:none;text-transform:uppercase;font:500 13px/1 Oswald,sans-serif;letter-spacing:.12em;color:#d8d6d2}nav a:hover,nav a:focus{color:#fff}.social{border:1px solid #555;padding:9px 11px}.menu-button{display:none}.hero{max-width:var(--max);height:720px;margin:0 auto;position:relative;overflow:hidden;border:1px solid var(--line);border-top:0;padding:88px 80px;background:radial-gradient(circle at 80% 34%,#252525 0 1%,transparent 1.3%),linear-gradient(115deg,#0a0a0a 0 54%,#181818 54% 55%,#0d0d0d 55%);isolation:isolate}.hero:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.18;background:repeating-linear-gradient(90deg,transparent 0 54px,#fff 55px 56px,transparent 57px 112px);mask:linear-gradient(90deg,transparent 52%,#000)}.frame-corners{position:absolute;right:7%;top:11%;width:38%;height:58%;border:1px solid #414141;clip-path:polygon(0 0,94% 0,100% 7%,100% 100%,6% 100%,0 93%)}.hero-copy{max-width:700px}.eyebrow{margin:0 0 20px;text-transform:uppercase;letter-spacing:.2em;color:var(--muted);font:500 12px/1.4 Oswald,sans-serif}.hero h1{margin:0 0 26px;text-transform:uppercase;font:700 clamp(4.2rem,8.7vw,8rem)/.84 Oswald,sans-serif;letter-spacing:-.045em}.hero h1 span{color:var(--accent)}.hero-text{max-width:420px;color:#bebbb5;font-size:18px}.primary{display:inline-block;margin-top:22px;padding:15px 22px;background:var(--accent);font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.05em;font-size:13px}.reel{position:absolute;right:10%;top:18%;width:28%;height:38%;display:grid;place-items:center;color:#575757}.reel-number{font:700 10rem/1 Oswald,sans-serif;letter-spacing:-.1em}.reel-line{position:absolute;top:50%;width:120%;border-top:1px solid #454545}.reel-caption{position:absolute;bottom:0;font:500 12px Oswald;letter-spacing:.3em}.next-event{position:absolute;right:0;bottom:0;width:43%;padding:23px 28px;background:var(--cream);color:#111}.next-event small{display:block;text-transform:uppercase;letter-spacing:.15em;font:500 11px Oswald;margin-bottom:6px}.next-event strong{font-size:17px}.section{max-width:var(--max);margin:auto;padding:120px 28px;border-bottom:1px solid var(--line);scroll-margin-top:90px}.section-title{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px}.section-title h2,.club h2,.map h2{font:700 clamp(3.8rem,7vw,6.5rem)/.9 Oswald,sans-serif;text-transform:uppercase;letter-spacing:-.03em;margin:0}.section-title>p{max-width:440px;color:var(--muted)}.counter{font:500 12px Oswald!important;text-transform:uppercase;letter-spacing:.16em}.event-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.event-card{display:grid;grid-template-columns:100px 1fr auto;grid-template-areas:"poster poster poster" "date info ticket";border-right:1px solid var(--line)}.event-card:last-child{border-right:0}.poster-wrap{grid-area:poster;aspect-ratio:1.55/1;background:#111;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--line)}.poster-wrap img{width:100%;height:100%;object-fit:contain}.event-date{grid-area:date;padding:24px 18px;border-right:1px solid var(--line);display:flex;gap:8px;align-items:start}.event-date b{font:700 32px/1 Oswald}.event-date span{font:500 11px/1.3 Oswald;text-transform:uppercase;color:var(--muted)}.event-info{grid-area:info;padding:23px}.event-info h3{font:600 26px/1.1 Oswald;margin:0 0 8px}.event-info p{margin:0;color:var(--muted);font-size:14px}.ticket{grid-area:ticket;align-self:center;margin-right:22px;color:var(--accent);font:600 12px Oswald;text-transform:uppercase;letter-spacing:.08em}.rider-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}details{background:var(--panel);padding:0 22px}summary{padding:22px 0;cursor:pointer;font:600 18px Oswald;text-transform:uppercase;list-style:none}summary::after{content:"+";float:right;color:var(--accent)}details[open] summary::after{content:"−"}details ul{padding:0 0 20px 18px;color:#b5b2ad;margin:0;font-size:14px}.note{color:var(--muted);font-size:13px;margin-top:20px}.gallery-empty{height:360px;border:1px solid var(--line);display:grid;place-content:center;text-align:center;position:relative;background:linear-gradient(135deg,#0a0a0a,#111)}.gallery-empty p{font:600 22px Oswald;text-transform:uppercase;margin:0 0 8px}.gallery-empty small{color:var(--muted)}.focus-mark{width:48px;height:48px;border:1px solid #555;margin:0 auto 30px;position:relative}.focus-mark:before,.focus-mark:after{content:"";position:absolute;background:var(--accent)}.focus-mark:before{height:1px;width:72px;left:-13px;top:23px}.focus-mark:after{width:1px;height:72px;left:23px;top:-13px}.club{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;align-items:end}.club-copy>p:not(.eyebrow){font-size:20px;color:#bbb;max-width:650px}.club-copy>a,.map-copy>a{color:var(--accent);font-weight:700}.club dl{margin:0;border-top:1px solid var(--line)}.club dl div{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line)}.club dt{color:var(--muted)}.club dd{margin:0;font:600 18px Oswald}.map{display:grid;grid-template-columns:.7fr 1.3fr;gap:6vw;align-items:center}.map-copy p:not(.eyebrow){color:var(--muted)}.map iframe{width:100%;height:460px;border:0;filter:grayscale(1) contrast(1.15)}footer{max-width:var(--max);margin:auto;padding:55px 28px;display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:40px;align-items:start}footer img{width:210px;height:70px;object-fit:contain;object-position:left center}.label{margin:0 0 12px;color:var(--muted);text-transform:uppercase;letter-spacing:.15em;font:500 11px Oswald}footer p{margin:0}footer a{text-decoration:none}.copyright{color:#666;font-size:12px}.menu-button{border:1px solid #555;background:transparent;color:#fff;padding:9px 12px;font:500 12px Oswald;text-transform:uppercase;letter-spacing:.1em}
@media(max-width:900px){.site-header{height:82px;padding:14px 18px}.brand img{width:155px;height:50px}.menu-button{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:81px;background:#090909;border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{padding:14px}.hero{height:auto;min-height:610px;padding:70px 24px 120px}.hero h1{font-size:clamp(3.8rem,17vw,6rem)}.reel{display:none}.next-event{width:100%;padding:20px 24px}.section{padding:85px 18px}.section-title{display:block}.section-title>p{margin-top:20px}.event-grid{grid-template-columns:1fr}.event-card{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:86px 1fr;grid-template-areas:"poster poster" "date info" "ticket ticket"}.event-card:last-child{border-bottom:0}.poster-wrap{aspect-ratio:1/1}.ticket{padding:0 22px 22px;margin:0}.rider-grid{grid-template-columns:1fr}.club,.map{grid-template-columns:1fr;gap:55px}.map iframe{height:360px}footer{grid-template-columns:1fr 1fr}footer img{grid-column:1/-1}.copyright{grid-column:1/-1}}
@media(max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gallery-grid{grid-template-columns:1fr}}
.empty{padding:40px 0;color:var(--muted);font-size:18px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.gallery-grid figure{margin:0;aspect-ratio:4/3;overflow:hidden;background:#111}.gallery-grid img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.gallery-grid{grid-template-columns:1fr}}
@media(max-width:520px){.hero{min-height:570px}.hero h1{font-size:3.7rem}.section-title h2,.club h2,.map h2{font-size:3.6rem}.poster-wrap{aspect-ratio:4/3}.gallery-empty{height:290px}footer{grid-template-columns:1fr}}
.reel-logo{filter:invert(1);mix-blend-mode:screen}
.nav-link{border:0;background:none;padding:0;text-decoration:none;text-transform:uppercase;font:500 13px/1 Oswald,sans-serif;letter-spacing:.12em;color:#d8d6d2;cursor:pointer}.nav-link:hover,.nav-link:focus{color:#fff}.reel{height:auto}.reel-logo{display:block;width:min(100%,280px);height:auto;object-fit:contain}.club-actions{display:flex;flex-wrap:wrap;gap:18px 28px}.club-actions button{border:0;background:none;padding:0;color:var(--accent);font:700 16px/1.55 Inter,Arial,sans-serif;text-decoration:underline;cursor:pointer}.rules-dialog{width:min(920px,calc(100% - 32px));max-height:88vh;margin:auto;padding:0;border:1px solid #454545;background:#0c0c0c;color:var(--text);box-shadow:0 24px 100px #000}.rules-dialog::backdrop{background:rgba(0,0,0,.82)}.rules-head{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:30px 34px 24px;background:#0c0c0c;border-bottom:1px solid var(--line)}.rules-head .eyebrow{margin-bottom:10px}.rules-head h2{margin:0;font:700 clamp(2.4rem,6vw,4rem)/.9 Oswald,sans-serif;text-transform:uppercase}.rules-close{flex:0 0 auto;width:44px;height:44px;border:1px solid #555;background:none;color:#fff;font:300 32px/1 Inter;cursor:pointer}.rules-intro{margin:0;padding:28px 34px 5px;color:#c8c5bf}.rules-list{margin:0;padding:20px 48px 40px 68px}.rules-list li{padding:0 0 18px 8px;color:#d5d2cc}.rules-list li::marker{color:var(--accent);font:600 14px Oswald}@media(max-width:900px){.site-header nav .nav-link{padding:14px;text-align:left}.rules-head{padding:22px 20px 18px}.rules-intro{padding:22px 20px 4px}.rules-list{padding:18px 24px 30px 44px}.reel{display:none}}
