
/* =====================================================
   KING OF THE HALF — HOME V2
   Premium motorsports visual system
   ===================================================== */

.home-v2{
  overflow-x:hidden;
  background:
    linear-gradient(rgba(4,5,6,.95),rgba(4,5,6,.98)),
    repeating-linear-gradient(
      135deg,
      #0c0d0f 0,
      #0c0d0f 2px,
      #08090a 2px,
      #08090a 6px
    );
}


/* ---------- HEADER ---------- */

.home-v2 .site-header{
  min-height:86px;
  border-bottom:1px solid #a97923;
  background:rgba(4,5,6,.97);
  box-shadow:0 12px 35px rgba(0,0,0,.35);
}

.home-v2 .brand-logo{
  width:min(330px,27vw);
}

.home-v2 .site-header nav{
  gap:4px;
}

.home-v2 .site-header nav>a{
  position:relative;
  padding:13px 11px;
  font-size:10px;
  letter-spacing:.8px;
}

.home-v2 .site-header nav>a:not(.register-nav):after{
  content:"";
  position:absolute;
  left:50%;
  right:50%;
  bottom:4px;
  height:2px;
  background:#dfa433;
  transition:.18s ease;
}

.home-v2 .site-header nav>a:hover:after{
  left:10px;
  right:10px;
}

.home-v2 .register-nav{
  margin-left:8px;
  padding:12px 19px!important;
  color:#060708!important;
  border:1px solid #ffd46d!important;
  background:linear-gradient(180deg,#ffd66e,#d5901b 62%,#a56609)!important;
  box-shadow:
    inset 0 1px rgba(255,255,255,.55),
    0 6px 22px rgba(213,145,27,.16);
}

.home-v2 .admin-nav{
  opacity:.58;
  font-size:8px!important;
}


/* ---------- HERO ---------- */

.home-v2 .hero{
  width:min(1600px,100%);
  min-height:650px;
  margin:0 auto;
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(350px,.82fr) minmax(460px,1.18fr);
  align-items:center;
  overflow:hidden;
  border-bottom:1px solid #a57621;
  background:
    radial-gradient(circle at 73% 46%,rgba(226,165,47,.16),transparent 26%),
    linear-gradient(105deg,#07080a 0%,#111317 48%,#060708 100%);
}

.home-v2 .hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(0,0,0,.08),transparent 52%),
    repeating-linear-gradient(
      -45deg,
      transparent 0,
      transparent 8px,
      rgba(255,255,255,.012) 8px,
      rgba(255,255,255,.012) 9px
    );
}

.home-v2 .hero:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:160px;
  z-index:-1;
  background:linear-gradient(transparent,#050607);
  pointer-events:none;
}

.home-v2 .hero-grid{
  display:none;
}

.home-v2 .hero-copy{
  position:relative;
  z-index:2;
  max-width:none;
  padding:70px 30px 150px max(50px,6vw);
}

.home-v2 .hero-copy .eyebrow{
  color:#dfa638;
  font-size:10px;
  letter-spacing:3px;
}

.home-v2 .hero-rule{
  margin:15px 0 20px;
  font:900 clamp(88px,9vw,148px)/.72 "Barlow Condensed",Arial,sans-serif;
  letter-spacing:-4px;
  text-transform:uppercase;
  color:#f2f3f4;
  text-shadow:0 7px 30px rgba(0,0,0,.5);
}

.home-v2 .hero-rule span{
  color:#dda12f;
  text-shadow:
    0 2px #634007,
    0 0 30px rgba(222,162,46,.18);
}

.home-v2 .hero-copy>p{
  max-width:520px;
  color:#b4b9bf;
  font-size:12px;
  line-height:1.8;
}

.home-v2 .hero-brand-art{
  position:relative;
  z-index:2;
  min-height:560px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:45px 5vw 130px 10px;
}

.home-v2 .hero-primary-logo{
  width:min(520px,90%);
  max-height:500px;
  object-fit:contain;
  filter:
    drop-shadow(0 24px 45px rgba(0,0,0,.72))
    drop-shadow(0 0 20px rgba(220,160,45,.11));
}

.home-v2 .hero-logo-halo{
  position:absolute;
  width:470px;
  height:470px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(220,162,51,.15),transparent 68%);
}

.home-v2 .hero-brand-line{
  position:absolute;
  bottom:154px;
  color:#c1c4c8;
  font:800 10px Inter,Arial,sans-serif;
  letter-spacing:4px;
}


/* ---------- MODERN HERO ACTION ICONS ---------- */

.koh-home-actions{
  position:absolute;
  z-index:6;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  width:min(1440px,94vw);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}

.koh-home-action{
  min-height:94px;
  display:grid;
  grid-template-columns:64px minmax(0,1fr) 35px;
  gap:15px;
  align-items:center;
  padding:16px 18px;
  color:#fff;
  text-decoration:none;
  border:1px solid #5b4823;
  background:
    linear-gradient(135deg,rgba(19,22,26,.96),rgba(7,9,11,.98));
  box-shadow:
    0 14px 32px rgba(0,0,0,.35),
    inset 0 1px rgba(255,219,125,.04);
  transition:.18s ease;
}

.koh-home-action:hover{
  transform:translateY(-4px);
  border-color:#d59d31;
  box-shadow:
    0 18px 40px rgba(0,0,0,.45),
    0 0 20px rgba(216,158,49,.06);
}

.koh-home-action-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#e2a83b;
  border:1px solid #594a2e;
  background:linear-gradient(145deg,#181713,#090a0b);
}

.koh-home-action-icon svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.koh-home-action-copy strong{
  display:block;
  font:900 24px/1 "Barlow Condensed",Arial,sans-serif;
  text-transform:uppercase;
}

.koh-home-action-copy span{
  display:block;
  margin-top:5px;
  color:#949aa1;
  font-size:8px;
  line-height:1.45;
  letter-spacing:.6px;
}

.koh-home-action-arrow{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#e1a538;
  border:1px solid #493d27;
}

.koh-home-action-arrow svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* ---------- PRIMARY CTA ---------- */

.home-v2 .hero-actions{
  display:flex;
  gap:11px;
  flex-wrap:wrap;
  margin-top:27px;
}

.home-v2 .hero-actions .btn{
  min-height:48px;
  padding:0 23px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:0;
}

.home-v2 .btn-primary{
  background:linear-gradient(180deg,#ffd568,#d8941d 62%,#a6680b);
  border-color:#ffd56c;
  color:#050607;
}

.home-v2 .btn-ghost{
  background:#0a0c0f;
  border-color:#41464e;
}


/* ---------- SPONSOR STRIP ---------- */

.home-v2 .sponsor-strip{
  width:min(1600px,100%);
  min-height:84px;
  margin:0 auto;
  padding:0 max(25px,3vw);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  border-top:1px solid #342d1f;
  border-bottom:1px solid #4c3c20;
  background:
    linear-gradient(180deg,#0e1013,#070809);
}

.home-v2 .section-label{
  padding-right:28px;
  color:#9a9fa6;
  font:800 8px Inter,Arial,sans-serif;
  letter-spacing:2px;
}

.home-v2 .sponsor-marquee{
  border-left:1px solid #282c31;
}


/* ---------- SECTION SHELL ---------- */

.home-v2 .section{
  width:min(1500px,94vw);
  margin-left:auto;
  margin-right:auto;
}

.home-v2 .section-head{
  border-bottom:1px solid #39331f;
  padding-bottom:13px;
}

.home-v2 .section-head h2{
  font-size:clamp(42px,5vw,68px);
}

.home-v2 .section-subhead{
  max-width:610px;
}


/* ---------- PRIZE PANEL ---------- */

.home-v2 .prize-section{
  margin-top:28px;
}

.home-v2 .prize-hero-card{
  border:1px solid #6c5427;
  background:
    radial-gradient(circle at 20% 0,rgba(231,172,56,.08),transparent 30%),
    linear-gradient(135deg,#111318,#080a0c);
  box-shadow:0 18px 45px rgba(0,0,0,.26);
}


/* ---------- MAP / REGION DASHBOARD ---------- */

.home-v2 .map-layout{
  grid-template-columns:minmax(0,1.65fr) minmax(270px,.55fr);
}

.home-v2 .us-map-card,
.home-v2 .map-summary{
  border-color:#403822;
  background:linear-gradient(145deg,#101216,#08090b);
}

.home-v2 .map-region-summary{
  position:relative;
  overflow:hidden;
}

.home-v2 .map-region-summary strong{
  color:#dfa538;
}


/* ---------- TUNERS ---------- */

.home-v2 .tuner-showcase-section{
  border-top:1px solid #46391f;
  border-bottom:1px solid #46391f;
  background:
    radial-gradient(circle at 80% 25%,rgba(221,163,49,.06),transparent 24%),
    linear-gradient(135deg,#0b0d10,#070809);
}


/* ---------- RANKING TABLE ---------- */

.home-v2 .ranking-table-wrap{
  border:1px solid #443a24;
  box-shadow:0 18px 42px rgba(0,0,0,.24);
}

.home-v2 .ranking-table thead{
  background:#111318;
}


/* ---------- MOBILE ---------- */

@media(max-width:1050px){

  .home-v2 .hero{
    grid-template-columns:1fr;
  }

  .home-v2 .hero-copy{
    text-align:center;
    padding:55px 30px 310px;
  }

  .home-v2 .hero-copy>p{
    margin-left:auto;
    margin-right:auto;
  }

  .home-v2 .hero-actions{
    justify-content:center;
  }

  .home-v2 .hero-brand-art{
    position:absolute;
    inset:auto 0 90px;
    min-height:250px;
    padding:0;
    opacity:.3;
  }

  .home-v2 .hero-primary-logo{
    width:310px;
  }

  .home-v2 .hero-brand-line{
    display:none;
  }

  .koh-home-actions{
    grid-template-columns:1fr;
    width:min(700px,92vw);
  }

  .home-v2 .hero{
    min-height:900px;
  }

  .home-v2 .map-layout{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){

  .home-v2 .brand-logo{
    width:230px;
  }

  .home-v2 .hero{
    min-height:900px;
  }

  .home-v2 .hero-copy{
    padding:50px 20px 330px;
  }

  .home-v2 .hero-rule{
    font-size:83px;
  }

  .koh-home-action{
    min-height:82px;
    grid-template-columns:50px minmax(0,1fr) 30px;
    padding:12px;
  }

  .koh-home-action-icon{
    width:46px;
    height:46px;
  }

  .koh-home-action-copy strong{
    font-size:20px;
  }

  .home-v2 .sponsor-strip{
    grid-template-columns:1fr;
  }

  .home-v2 .section-label{
    display:none;
  }
}

