/* ─── DARK HERO ─── */
.hero{
  background:var(--k);
  padding:80px 52px 64px;
  display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:0;align-items:end
}
.hero-left{padding-right:52px}
.hero-mid{padding:0 52px;display:flex;align-items:flex-end;justify-content:center}
.hero-mid img{height:200px;width:auto;display:block}
.hero-right-col{
  padding-left:52px;
  display:flex;flex-direction:column;align-items:flex-end
}
.hero-lbl{
  font-family:var(--sans);font-size:12px;letter-spacing:0.12em;
  text-transform:uppercase;color:#484840;margin-bottom:28px
}
.hero h1{
  font-family:var(--serif);font-size:28px;font-weight:normal;
  line-height:1.45;color:#d8d7cf;max-width:460px
}
.hero-desc{
  font-family:var(--sans);font-size:13px;line-height:2.05;
  color:#5a5a52;max-width:300px;margin-bottom:36px;text-align:right
}
.hero-right-col .cta{color:#d8d7cf}
.hero-right-col .cta .cta-line{background:#d8d7cf}

/* ─── EVENT SPECS BAR ─── */
.specs-bar{
  background:var(--k);
  display:grid;grid-template-columns:repeat(5,1fr);
  border-top:0.5px solid var(--rule-k)
}
.spec-item{padding:20px 52px;border-right:0.5px solid var(--rule-k)}
.spec-item:last-child{border-right:none}
.spec-n{font-family:var(--serif);font-size:15px;color:#d8d7cf;margin-bottom:4px}
.spec-n.red{color:var(--r)}
.spec-l{
  font-family:var(--sans);font-size:10px;letter-spacing:0.14em;
  text-transform:uppercase;color:#484840
}

/* ─── REGISTER BAR ─── */
.register-bar{
  background:var(--r);
  padding:20px 52px;
  display:flex;align-items:center;justify-content:space-between
}
.register-bar p{
  font-family:var(--sans);font-size:12px;letter-spacing:0.08em;
  text-transform:uppercase;color:rgba(255,255,255,0.7)
}
.register-btn{
  font-family:var(--sans);font-size:12px;letter-spacing:0.12em;
  text-transform:uppercase;color:#fff;text-decoration:none;
  display:inline-flex;align-items:center;gap:16px;
  border:1px solid rgba(255,255,255,0.4);padding:10px 20px;
  transition:border-color 0.2s,background 0.2s
}
.register-btn:hover{border-color:#fff;background:rgba(255,255,255,0.1)}
.register-btn-line{
  display:inline-block;width:16px;height:1px;background:#fff;flex-shrink:0
}

/* ─── ABOUT GRID ─── */
.about-grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:80px;align-items:start
}
.about-left h2{
  font-family:var(--serif);font-size:20px;font-weight:normal;
  line-height:1.6;color:var(--k);margin-bottom:20px
}
.about-left p{
  font-family:var(--sans);font-size:13px;line-height:2.05;
  color:var(--km);margin-bottom:18px
}
.about-left p:last-child{margin-bottom:32px}

/* ─── VIDEO ─── */
.video-wrap{
  width:100%;max-width:320px;aspect-ratio:9/16;background:var(--k);
  overflow:hidden;position:relative;margin:0 auto
}
.video-wrap iframe{width:100%;height:100%;border:none;display:block}

/* ─── RACE DETAILS ─── */
.details-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.detail-col{padding:0 28px 0 0;border-right:0.5px solid var(--rule-k)}
.detail-col:last-child{border-right:none;padding-right:0}
.detail-col:not(:first-child){padding-left:28px}
.detail-n{
  font-family:var(--sans);font-size:11px;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--r);margin-bottom:14px
}
.detail-t{
  font-family:var(--sans);font-size:13px;line-height:1.85;color:#8a8a82
}

/* ─── SPONSORS ─── */
.sponsor-heading{
  font-family:var(--sans);font-size:10px;letter-spacing:0.14em;
  text-transform:uppercase;color:var(--kl);margin-bottom:20px
}
.title-sponsor-box{
  width:280px;height:90px;border:0.5px solid var(--rule);
  display:flex;align-items:center;justify-content:center;background:var(--w)
}
.title-sponsor-box span{
  font-family:var(--sans);font-size:10px;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--kl)
}
.sponsor-row{display:flex;gap:40px;flex-wrap:wrap;align-items:center}
.sponsor-row img{height:60px;width:auto;display:block}
.sponsor-row .placeholder{
  height:60px;width:160px;border:0.5px solid var(--rule);
  display:flex;align-items:center;justify-content:center;background:var(--w);
  font-family:var(--sans);font-size:10px;letter-spacing:0.10em;
  text-transform:uppercase;color:var(--kl)
}

/* ─── PAST RESULTS ─── */
@media (min-width:769px){
  .s-tractor-room{padding-bottom:152px}
}
.past-results{border-top:0.5px solid var(--rule)}
.past-year{border-bottom:0.5px solid var(--rule)}
.past-year-hd{
  display:flex;align-items:baseline;gap:16px;
  padding:18px 52px;cursor:pointer;min-height:44px
}
.past-year-hd:hover .py-label{color:var(--r)}
.py-label{
  font-family:var(--sans);font-size:13px;font-weight:500;
  color:var(--k);flex:1;transition:color 0.1s;letter-spacing:0.02em
}
.py-note{font-family:var(--sans);font-size:11px;color:var(--kl)}
.py-toggle{
  font-family:var(--sans);font-size:11px;color:var(--kl);user-select:none
}
.past-results-body-single{
  margin:0 52px 16px;border-top:none
}
.pr-row{
  background:var(--w);padding:6px 12px;
  display:flex;justify-content:space-between;align-items:baseline;
  border-bottom:0.5px solid var(--rule)
}
.pr-place{
  font-family:var(--sans);font-size:11px;color:var(--kl);
  width:28px;flex-shrink:0;text-align:right;padding-right:12px
}
.pr-name{font-family:var(--sans);font-size:12px;color:var(--k);flex:1}
.pr-right{display:flex;align-items:center;gap:6px}
.pr-time{font-family:var(--serif);font-size:13px;color:var(--k)}
.pr-badge{
  font-family:var(--sans);font-size:9px;letter-spacing:0.05em;
  padding:1px 5px;text-transform:uppercase;font-weight:500
}
.pr-oa{background:var(--k);color:#d8d7cf}
.pr-pr{background:#E6F1FB;color:#0C447C}

/* =========================================================================
   RESPONSIVE — barnburner
   ========================================================================= */
@media (max-width:1024px){
  .hero{padding:64px 32px 48px}
  .hero-left{padding-right:32px}
  .hero-mid{padding:0 32px}
  .hero-right-col{padding-left:32px}
  .spec-item{padding:18px 24px}
  .register-bar{padding:16px 32px;flex-wrap:wrap;gap:16px}
  .about-grid{gap:40px}
  .past-year-hd{padding:18px 32px;flex-wrap:wrap}
  .past-results-body-single{margin:0 32px 16px}
}

@media (max-width:768px){
  .hero{
    grid-template-columns:1fr;gap:32px;
    padding:44px 24px 40px;align-items:start
  }
  .hero-left{padding:0}
  .hero-mid{padding:0;justify-content:flex-start}
  .hero-mid img{height:140px}
  .hero-right-col{padding:0;align-items:flex-start}
  .hero h1{font-size:22px;max-width:none}
  .hero-desc{text-align:left;max-width:none}

  .specs-bar{grid-template-columns:1fr 1fr}
  .spec-item{
    padding:16px 24px;border-right:none;
    border-bottom:0.5px solid var(--rule-k)
  }
  .spec-item:nth-child(odd){border-right:0.5px solid var(--rule-k)}
  .spec-item:nth-last-child(-n+1){border-bottom:none}

  .register-bar{padding:16px 24px;flex-direction:column;align-items:flex-start;gap:12px}

  .about-grid{grid-template-columns:1fr;gap:32px}

  .details-grid{grid-template-columns:1fr}
  .detail-col{
    padding:18px 0;border-right:none;
    border-top:0.5px solid var(--rule-k)
  }
  .detail-col:not(:first-child){padding-left:0}
  .detail-col:last-child{border-bottom:0.5px solid var(--rule-k)}

  .past-year-hd{padding:18px 24px;gap:8px}
  .py-note{flex-basis:100%;order:3}
  .past-results-body-single{margin:0 24px 16px}
  .pr-row{padding:8px 0;flex-wrap:wrap;gap:8px}
  .pr-name{font-size:13px}
  .pr-place{padding-right:8px}
}
