/* KING OF THE HALF — REFERENCE HOMEPAGE */
:root{--koh-gold:#e3a52f;--koh-gold2:#ffca50;--koh-black:#050607;--koh-panel:#0c0f12;--koh-line:#5d4315}
.home-v2{background:#050607}
.home-v2 .site-header{height:86px;min-height:86px;padding:0 3vw;display:flex;align-items:center;border-bottom:1px solid #d99b28;background:rgba(3,4,5,.98);box-shadow:0 8px 30px #000;z-index:100}
.home-v2 .brand-logo{width:min(390px,31vw);max-height:72px;object-fit:contain}
.home-v2 .site-header nav{margin-left:auto;display:flex;align-items:center;gap:5px}
.home-v2 .site-header nav>a{font:800 11px/1 Inter,Arial,sans-serif;letter-spacing:.85px;text-transform:uppercase;color:#f3f3f1;padding:14px 10px}
.home-v2 .site-header nav>a:hover{color:var(--koh-gold2)}
.home-v2 .register-nav{min-width:120px;text-align:center;border-radius:4px!important;box-shadow:0 0 24px rgba(227,165,47,.22)!important}
.reference-hero{position:relative!important;display:block!important;width:100%!important;max-width:none!important;height:625px;min-height:625px!important;overflow:hidden!important;background:#08090a!important;border-bottom:1px solid #9b6f1f!important}
.reference-hero-bg{position:absolute;inset:0;background-image:url('assets/home/hero-race.jpg');background-size:cover;background-position:center 58%;filter:saturate(.72) contrast(1.08) brightness(.54);transform:scale(1.035)}
.reference-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,3,4,.88) 0%,rgba(4,5,7,.18) 28%,rgba(3,4,5,.14) 70%,rgba(3,4,5,.78) 100%),linear-gradient(180deg,rgba(0,0,0,.18),transparent 42%,rgba(0,0,0,.45) 100%)}
.reference-slogan{position:absolute;z-index:3;left:4.5vw;top:112px;display:flex;flex-direction:column;transform:rotate(-5deg);color:#f0f0ed;text-shadow:0 4px 18px #000;font:900 italic clamp(34px,4.1vw,62px)/.88 'Barlow Condensed',Arial,sans-serif;letter-spacing:-1px}
.reference-slogan span:last-child{color:#fff}
.reference-hero-center{position:absolute;z-index:4;left:50%;top:43%;transform:translate(-50%,-50%);width:min(560px,39vw);display:grid;place-items:center}
.hero-animated-crest{width:100%;max-height:440px;object-fit:contain;filter:drop-shadow(0 20px 35px rgba(0,0,0,.78)) drop-shadow(0 0 18px rgba(236,169,48,.24));animation:kohCrestArrival 1.45s cubic-bezier(.12,.74,.24,1) both;transform-origin:center center}
@keyframes kohCrestArrival{0%{opacity:0;transform:perspective(900px) translateZ(-900px) scale(.035);filter:blur(15px) drop-shadow(0 0 0 transparent)}55%{opacity:1;transform:perspective(900px) translateZ(40px) scale(1.08);filter:blur(0) drop-shadow(0 20px 35px rgba(0,0,0,.7))}78%{transform:scale(.97)}100%{opacity:1;transform:scale(1)}}
.reference-standard{position:absolute;z-index:3;right:4.8vw;top:112px;width:210px;padding:18px 18px 16px;text-align:center;border:1px solid rgba(221,160,44,.28);background:rgba(8,10,12,.68);box-shadow:0 12px 34px rgba(0,0,0,.35)}
.reference-standard img{width:36px;height:36px;object-fit:contain;margin-bottom:8px}
.reference-standard strong{display:block;color:#d7d9dc;font:800 22px/1.15 'Barlow Condensed',Arial,sans-serif;letter-spacing:1px}
.reference-standard span{display:block;margin-top:10px;padding-top:10px;border-top:1px solid #76551e;color:#b9bcc0;font:700 11px/1.35 Inter,Arial,sans-serif;letter-spacing:1.1px}
.reference-race-label{position:absolute;z-index:3;right:4.5vw;bottom:116px;color:#e6b13f;text-align:left;font:700 13px/1.45 Inter,Arial,sans-serif;letter-spacing:3px}
.reference-actions{bottom:18px!important;width:min(1460px,95vw)!important;gap:10px!important}
.reference-actions .koh-home-action{min-height:82px!important;grid-template-columns:54px minmax(0,1fr) 28px!important;border-color:#8d641c!important;background:linear-gradient(145deg,rgba(13,16,19,.95),rgba(4,6,8,.96))!important;box-shadow:inset 0 0 25px rgba(226,164,47,.025),0 10px 30px rgba(0,0,0,.48)!important}
.reference-actions .koh-home-action:hover{border-color:#e6aa36!important;box-shadow:0 0 24px rgba(226,164,47,.13)!important}
.reference-actions .koh-home-action-icon{width:48px!important;height:48px!important;border:0!important;background:transparent!important;color:#f0b438!important}
.reference-actions .koh-home-action-icon svg{width:34px!important;height:34px!important;stroke-width:1.8!important}
.reference-actions .koh-home-action-copy strong{font-size:22px!important}
.reference-actions .koh-home-action-copy span{font-size:8px!important;color:#c3c6ca!important;letter-spacing:1px!important}
.reference-actions .koh-home-action-arrow{font:300 31px/1 Arial,sans-serif;border:0!important;color:#f1b23a!important}
.home-v2 .sponsor-strip{height:70px;min-height:70px!important;padding:0 2.5vw!important;border-top:0!important;border-bottom:1px solid #694b1c!important;background:linear-gradient(90deg,#090b0d,#111318,#08090b)!important}
.home-v2 .section-label{font-size:9px!important;letter-spacing:1.6px!important;color:#bbbfc5!important;white-space:nowrap}
.home-v2 .sponsor-marquee{overflow:hidden;border-left:1px solid #2f3338!important}
.home-v2 .sponsor-card{min-width:190px!important;height:68px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;border-right:1px solid #1f2328!important}
.home-v2 .sponsor-card img{max-width:130px!important;max-height:34px!important;object-fit:contain!important}
.home-v2 .sponsor-card span{font:800 15px/1 'Barlow Condensed',Arial,sans-serif!important;color:#f1f2f3!important}
.home-v2 .sponsor-card small{font-size:6px!important;letter-spacing:.8px!important;color:#777e86!important;margin-top:4px!important}
/* NATIONWIDE DASHBOARD */
.home-v2 .map-section{width:100%!important;max-width:none!important;padding:18px 2.5vw 22px!important;margin:0!important;background:linear-gradient(180deg,#121417,#090b0d)!important;border-bottom:1px solid #a37220}
.home-v2 .map-section>.section-head{display:none!important}
.home-v2 .map-layout{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(460px,.85fr)!important;gap:16px!important;align-items:stretch!important}
.home-v2 .us-map-card{min-height:310px!important;padding:16px!important;border:1px solid #34383e!important;background:linear-gradient(145deg,#0d1013,#07090b)!important;box-shadow:inset 0 1px rgba(255,255,255,.025),0 16px 36px rgba(0,0,0,.28)!important}
.home-v2 .us-map-card:before{content:'RIDERS NATIONWIDE';display:block;color:#f2f2ef;font:900 24px/1 'Barlow Condensed',Arial,sans-serif;letter-spacing:.4px;margin:0 0 2px}
.home-v2 .us-map-card:after{content:'A GROWING COMMUNITY. COAST TO COAST.';position:absolute;left:16px;top:43px;color:#989ea5;font:700 8px/1 Inter,Arial,sans-serif;letter-spacing:1px}
.home-v2 #usMap{margin-top:28px}
.home-v2 .us-map-card svg{height:210px!important;width:100%!important;border:0!important;background:transparent!important}
.home-v2 .state-shape{stroke:#20242a!important;stroke-width:1.35!important}
.home-v2 .state-label{font-size:8px!important;fill:#15171a!important}
.home-v2 .map-legend{position:absolute;left:17px;bottom:12px;right:17px;margin:0!important;padding:7px 8px!important;gap:12px!important;border:0!important;border-top:1px solid #2a2e33!important;background:rgba(7,9,11,.93)!important;color:#d6d8db!important}
.home-v2 .map-legend-item{font-size:6.5px!important}
.home-v2 .map-summary{display:block!important;padding:0!important;border:1px solid #34383e!important;background:linear-gradient(145deg,#0d1013,#07090b)!important;overflow:hidden}
.home-v2 .home-region-board{height:100%;display:flex;flex-direction:column}
.home-v2 .home-region-board-head{display:flex;justify-content:space-between;align-items:center;padding:16px 18px 12px;border-bottom:1px solid #34383e}
.home-v2 .home-region-board-head h3{margin:0;color:#f2f2ef;font:900 24px/1 'Barlow Condensed',Arial,sans-serif}
.home-v2 .home-region-board-head a{color:#e5a830;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.7px;text-decoration:none}
.home-v2 .home-region-table{width:100%;border-collapse:collapse}
.home-v2 .home-region-table th{padding:9px 12px;background:#111419;color:#8f969e;text-align:left;font:700 7px/1 Inter,Arial,sans-serif;letter-spacing:.8px}
.home-v2 .home-region-table td{padding:11px 12px;border-top:1px solid #262a2f;color:#dfe1e4;font-size:9px}
.home-v2 .home-region-table td:first-child{width:38px;text-align:center;color:#f2b33c;font:900 15px/1 'Barlow Condensed',Arial,sans-serif}
.home-v2 .home-region-table strong{display:block;color:#f5f5f3;font:800 13px/1.1 'Barlow Condensed',Arial,sans-serif;text-transform:uppercase}
.home-v2 .home-region-table small{display:block;margin-top:3px;color:#7f858d;font-size:6.5px;letter-spacing:.5px}
.home-v2 .region-swatch{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:7px;background:#dca132}
.home-v2 .home-region-stats{margin-top:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #34383e}
.home-v2 .home-region-stats div{padding:12px;border-right:1px solid #2b2f34}.home-v2 .home-region-stats div:last-child{border-right:0}
.home-v2 .home-region-stats b{display:block;color:#e5a830;font:900 24px/1 'Barlow Condensed',Arial,sans-serif}.home-v2 .home-region-stats span{display:block;margin-top:3px;color:#858b93;font-size:6.5px;letter-spacing:.7px}
/* HOMEPAGE CLEANUP / FOOTER */
.home-v2 .standings-preview,.home-v2 #riders,.home-v2 #rankings{display:none!important}
.home-v2 .feature-banner{display:none!important}
.home-v2 .site-footer{border-top:1px solid #8d641d;background:#050607;padding:18px 3vw}
.home-v2 .footer-brand img{max-width:190px}
.home-v2 .footer-copy strong{color:#c7c9cc;letter-spacing:2px}
@media(max-width:1180px){
  .home-v2 .site-header nav>a{padding:13px 7px;font-size:9px}
  .reference-slogan{left:3vw;font-size:48px}
  .reference-standard{right:3vw;width:180px}
  .reference-race-label{right:3vw}
  .home-v2 .map-layout{grid-template-columns:1fr 430px!important}
}
@media(max-width:900px){
  .reference-hero{height:760px;min-height:760px!important}
  .reference-hero-bg{background-position:67% center}
  .reference-slogan{top:82px;left:5vw;font-size:40px}
  .reference-standard{display:none}
  .reference-race-label{right:5vw;top:92px;bottom:auto;text-align:right;font-size:10px}
  .reference-hero-center{top:39%;width:min(470px,68vw)}
  .reference-actions{grid-template-columns:1fr!important;bottom:16px!important;width:92vw!important}
  .reference-actions .koh-home-action{min-height:72px!important}
  .home-v2 .map-layout{grid-template-columns:1fr!important}
  .home-v2 .map-summary{min-height:300px}
}
@media(max-width:700px){
  .home-v2 .site-header{height:68px;min-height:68px;padding:0 4vw}
  .home-v2 .brand-logo{width:235px!important;max-height:56px}
  .reference-hero{height:720px;min-height:720px!important}
  .reference-slogan{top:38px;left:6vw;font-size:33px}
  .reference-race-label{top:50px;right:6vw;font-size:7px;letter-spacing:1.4px}
  .reference-hero-center{top:35%;width:76vw}
  .reference-actions .koh-home-action-copy strong{font-size:18px!important}
  .home-v2 .map-section{padding:12px 4vw 18px!important}
  .home-v2 .us-map-card{min-height:280px!important}
  .home-v2 .us-map-card svg{height:180px!important}
  .home-v2 .home-region-table th,.home-v2 .home-region-table td{padding:8px 7px}
  .home-v2 .home-region-table th:last-child,.home-v2 .home-region-table td:last-child{display:none}
  .home-v2 .home-region-stats b{font-size:20px}
}
@media(prefers-reduced-motion:reduce){.hero-animated-crest{animation:none!important}}

/* ===== HERO BIKE COMPOSITION TIGHTEN ===== */
.reference-hero{background:#060708!important}
.reference-bike{position:absolute;top:0;bottom:0;width:50%;background:url('assets/home/hero-race.jpg') 76% 60%/185% auto no-repeat;filter:saturate(.66) contrast(1.1) brightness(.55);transform:scale(1.025)}
.reference-bike-left{left:0;transform:scaleX(-1) scale(1.025);transform-origin:center}
.reference-bike-right{right:0}
.reference-hero:before{content:'';position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 48%,rgba(239,174,45,.13),transparent 24%),linear-gradient(90deg,rgba(2,3,4,.70) 0,rgba(2,3,4,.08) 30%,rgba(2,3,4,.04) 70%,rgba(2,3,4,.66) 100%);pointer-events:none}
.reference-hero:after{content:'';position:absolute;z-index:2;left:50%;top:0;bottom:0;width:36%;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(0,0,0,.02),rgba(2,3,4,.42) 78%);pointer-events:none}
.reference-hero-shade{z-index:2;background:linear-gradient(180deg,rgba(0,0,0,.05),transparent 45%,rgba(0,0,0,.56) 100%)}
.reference-slogan,.reference-standard,.reference-race-label{z-index:5}
.reference-hero-center{z-index:6}
.reference-actions{z-index:8!important}
.hero-animated-crest{width:108%;max-height:470px}
@media(max-width:900px){.reference-bike{width:100%;background-size:cover;background-position:70% center}.reference-bike-left{display:none}.reference-bike-right{right:0}.reference-hero:after{width:66%}}

/* Sponsor marquee must override legacy fading-card positioning. */
.home-v2 .sponsor-marquee{height:70px;display:flex;align-items:center}
.home-v2 .sponsor-track{height:70px;display:flex!important;align-items:center!important;width:max-content!important}
.home-v2 .sponsor-card{position:static!important;inset:auto!important;opacity:1!important;flex:0 0 190px!important}

/* Mobile header must remain collapsed until menu button is opened. */
@media(max-width:950px){
  .home-v2 .site-header nav{display:none}
  .home-v2 .site-header.open nav{display:flex;position:absolute;top:86px;left:0;right:0;margin:0;padding:18px 5vw;flex-wrap:wrap;background:rgba(4,5,6,.99);border-bottom:1px solid #8a611c;box-shadow:0 18px 35px rgba(0,0,0,.55)}
  .home-v2 .site-header.open nav>a{padding:10px 9px;font-size:9px}
}
@media(max-width:700px){.home-v2 .site-header.open nav{top:68px}}
.reference-bike{background-size:330% auto;background-position:55% 60%}
