/* ============================================================
   STORER MOTORSPORT - Daniel Storer #43 - Partnership Prospectus
   Design system
   Identity: near-black + authentic yellow to amber to orange gradient
   Type: Rajdhani (display) . Archivo (body) . JetBrains Mono (data)
   ============================================================ */

/* ---------- Tokens ---------- */
:root{
  --ink:#08080a;
  --bg:#0b0b0e;
  --bg-2:#0f0f13;
  --panel:#141318;
  --panel-2:#1a1920;
  --panel-3:#211f28;
  --sec-light:#1c1a21;
  --card-shadow:0 14px 32px -24px rgba(0,0,0,.9);

  /* Gradient - pulled from the #43 decal accents, sunset dirt and the Daniel Storer wordmark */
  --y1:#FFD62E;
  --y2:#FFB020;
  --o1:#FF7A18;
  --o2:#F0530A;
  --flame:#FF8A22;
  --ember:#B83C08;
  --grad:linear-gradient(100deg,#FFD62E 0%,#FFB020 38%,#FF7A18 72%,#F0530A 100%);
  --grad-soft:linear-gradient(100deg,#FFC64d,#FF8A22 60%,#F0530A);

  --text:#ffffff;
  --muted:#ffffff;
  --muted-2:#ffffff;
  --line:rgba(255,236,214,.10);
  --line-2:rgba(255,236,214,.06);
  --hair:rgba(255,138,34,.28);

  --ease:cubic-bezier(.2,.7,.2,1);
  --dur:.7s;

  --maxw:1220px;
  --gutter:clamp(20px,5vw,64px);
  --radius:14px;
}

/* ---------- Reset / base ---------- */
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:clamp(15px,1.05vw,17px);
  line-height:1.65;
  letter-spacing:.005em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
html,body{overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
::selection{background:var(--o1);color:#160a02}

body::before{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(90vw 60vh at 78% -8%, rgba(255,138,34,.10), transparent 60%),
    radial-gradient(70vw 50vh at 0% 40%, rgba(240,83,10,.06), transparent 55%),
    var(--bg);
}
body::after{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;
  background:radial-gradient(120vw 120vh at 50% 30%, transparent 55%, rgba(0,0,0,.55));
}

/* ---------- Typography helpers ---------- */
.display{
  font-family:"Rajdhani","Archivo",sans-serif;
  font-weight:700;line-height:.95;letter-spacing:-.01em;
  text-transform:uppercase;
}
.eyebrow{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:.72rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;
  color:var(--flame);display:inline-flex;align-items:center;gap:.7em;
}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--grad);border-radius:2px}
.grad-text{
  background:var(--grad);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.mono{font-family:"JetBrains Mono",ui-monospace,monospace}

/* ---------- Layout ---------- */
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:clamp(60px,8vw,128px);position:relative}
/* ===== CHARGED DARK SECTIONS (energy bands lit from the top, not cream) ===== */
.section--light{
  background:
    radial-gradient(120% 82% at 50% -20%, rgba(255,138,34,.18), transparent 60%),
    linear-gradient(180deg,#140f18,#0a090d 74%);
  border-block:1px solid rgba(255,138,34,.22);
}
.section--light .round.zebra{background:rgba(255,138,34,.06)}
.section-head{max-width:760px;margin-bottom:clamp(36px,5vw,60px)}
.section-head h2{
  font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;
  font-size:clamp(2.1rem,5.4vw,4.1rem);line-height:.96;letter-spacing:-.01em;
  margin:.5rem 0 0;
}
.section-head p.lead{color:var(--muted);font-size:clamp(1rem,1.5vw,1.18rem);margin-top:1.1rem;max-width:60ch}

/* ---------- Buttons ---------- */
.btn{
  --pad:.95em 1.5em;
  display:inline-flex;align-items:center;gap:.6em;
  font-family:"Rajdhani",sans-serif;font-weight:600;text-transform:uppercase;
  letter-spacing:.06em;font-size:1.02rem;line-height:1;
  padding:var(--pad);border-radius:100px;position:relative;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;
  will-change:transform;
}
.btn svg{width:1.05em;height:1.05em;transition:transform .3s var(--ease)}
.btn-primary{background:var(--grad);color:#180a02;box-shadow:0 6px 26px -8px rgba(255,122,24,.6)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 34px -8px rgba(255,122,24,.7)}
.btn-primary:hover svg{transform:translateX(4px)}
.btn-ghost{border:1px solid var(--line);color:var(--text);background:rgba(255,255,255,.02)}
.btn-ghost:hover{border-color:var(--hair);background:rgba(255,138,34,.06);transform:translateY(-2px)}
.btn:focus-visible{outline:2px solid var(--y1);outline-offset:3px}

/* ---------- Number chip ---------- */
.chip{
  display:inline-flex;align-items:center;gap:.7em;
  font-family:"JetBrains Mono",monospace;font-size:.74rem;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:var(--text);
  border:1px solid var(--line);border-left:3px solid transparent;
  border-image:var(--grad) 1;padding:.55em .9em;border-radius:2px;
  background:rgba(255,255,255,.02);
}

/* ============================================================
   NAV
   ============================================================ */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px var(--gutter);
  transition:background .4s,backdrop-filter .4s,border-color .4s,padding .4s;
  border-bottom:1px solid transparent;
}
.nav.scrolled{
  background:rgba(9,9,12,.82);backdrop-filter:blur(14px) saturate(1.2);
  border-bottom-color:var(--line-2);padding-block:10px;
}
.nav__logo{display:flex;align-items:center;gap:12px}
.nav__logo img{height:30px;width:auto}
.nav__links{display:flex;align-items:center;gap:6px}
.nav__links a{
  font-family:"JetBrains Mono",monospace;font-size:.72rem;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  padding:.6em .8em;border-radius:6px;transition:color .25s,background .25s;position:relative;
}
.nav__links a:hover{color:var(--text)}
.nav__links a.active{color:var(--text)}
.nav__links a.active::after{
  content:"";position:absolute;left:.8em;right:.8em;bottom:.35em;height:2px;
  background:var(--grad);border-radius:2px;
}
.nav__cta{margin-left:8px}
.nav__burger{display:none;flex-direction:column;gap:5px;padding:8px}
.nav__burger span{width:24px;height:2px;background:var(--text);border-radius:2px;transition:.3s var(--ease)}
.nav.open .nav__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav.open .nav__burger span:nth-child(2){opacity:0}
.nav.open .nav__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ============================================================
   HERO
   ============================================================ */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate}
.hero__media{position:absolute;inset:0;z-index:-2}
.hero__media img{width:100%;height:100%;object-fit:cover;object-position:32% 55%}
.hero__media::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg, rgba(8,8,10,.62) 0%, rgba(8,8,10,.12) 30%, rgba(8,8,10,.35) 62%, rgba(8,8,10,.96) 100%),
    linear-gradient(95deg, rgba(8,8,10,.8) 0%, rgba(8,8,10,.28) 42%, transparent 68%);
}
.hero__grain{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(80vw 80vh at 85% 10%, rgba(255,138,34,.14), transparent 60%);mix-blend-mode:screen}

.hero__inner{width:100%;max-width:var(--maxw);margin-inline:auto;padding:0 var(--gutter) clamp(56px,9vh,120px)}
.hero__eyebrow{margin-bottom:26px}
.hero__eyebrow .eyebrow{text-shadow:0 0 20px rgba(255,138,34,.6), 0 0 6px rgba(255,138,34,.45)}
.hero__eyebrow .eyebrow::before{box-shadow:0 0 14px rgba(255,138,34,.7)}
.hero__lockup{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.hero__lockup img{height:clamp(26px,3.6vw,40px);width:auto;opacity:.9}
.hero__lockup .divider{width:1px;height:28px;background:var(--line)}
.hero__lockup span{font-family:"JetBrains Mono",monospace;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#fff;text-shadow:0 0 16px rgba(255,255,255,.4), 0 0 30px rgba(255,138,34,.25)}

.hero__name{
  font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;
  font-size:clamp(3.4rem,13vw,10.5rem);line-height:.86;letter-spacing:-.015em;
  margin:0;display:flex;flex-direction:column;
}
.hero__name .l1{color:var(--text)}
.hero__name .l2{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

.hero__row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:28px;margin-top:30px}
.hero__thesis{max-width:46ch;color:#fff;font-size:clamp(1.02rem,1.5vw,1.24rem);line-height:1.55}
.hero__thesis b{color:#fff;font-weight:600}
.hero__ctas{display:flex;gap:14px;flex-wrap:wrap}

.hero__num{
  position:absolute;right:var(--gutter);top:14vh;z-index:-1;
  height:min(46vh,420px);width:auto;opacity:.16;filter:drop-shadow(0 0 40px rgba(255,138,34,.2));
}
.hero__scroll{
  position:absolute;left:var(--gutter);bottom:20px;display:flex;align-items:center;gap:10px;
  font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted-2);
}
.hero__scroll .line{width:1px;height:34px;background:linear-gradient(var(--flame),transparent);animation:scrolldrop 2s var(--ease) infinite}
@keyframes scrolldrop{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

.hero__eyebrow,.hero__lockup,.hero__name .l1,.hero__name .l2,.hero__row,.hero__num{
  opacity:0;transform:translateY(28px);animation:heroRise .9s var(--ease) forwards;
}
.hero__eyebrow{animation-delay:.15s}
.hero__lockup{animation-delay:.28s}
.hero__name .l1{animation-delay:.4s}
.hero__name .l2{animation-delay:.52s}
.hero__row{animation-delay:.68s}
.hero__num{animation:heroNum 1.4s var(--ease) .5s forwards}
@keyframes heroRise{to{opacity:1;transform:none}}
@keyframes heroNum{to{opacity:.16;transform:none}}
.hero__media img{animation:heroZoom 8s var(--ease) forwards}
@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}

/* ============================================================
   IDENTITY BAND
   ============================================================ */
.band{border-block:1px solid var(--line-2);background:linear-gradient(var(--bg-2),var(--bg))}
.band__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.band__cell{padding:clamp(26px,3.5vw,42px) clamp(18px,2.5vw,34px);border-left:1px solid var(--line-2)}
.band__cell:first-child{border-left:none}
.band__k{font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-2);margin-bottom:10px}
.band__v{font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(1.15rem,2.1vw,1.7rem);line-height:1;letter-spacing:0}
.band__v small{display:block;font-family:"Archivo",sans-serif;font-weight:400;text-transform:none;font-size:.72rem;letter-spacing:.02em;color:var(--muted);margin-top:8px;line-height:1.4}

/* ============================================================
   DRIVER
   ============================================================ */
.driver__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:start}
.driver__portrait{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}
.driver__portrait img{width:100%;aspect-ratio:4/3.4;object-fit:cover;object-position:52% 30%}
.driver__portrait::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(8,8,10,.55));pointer-events:none}
.driver__tag{position:absolute;left:18px;bottom:16px;display:flex;align-items:center;gap:12px}
.driver__tag .n{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:2.6rem;line-height:.8;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.driver__tag .t{font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:#fff}
.driver__body p{color:var(--muted);margin:0 0 1.1em}
.driver__body p b{color:var(--text);font-weight:600}
.driver__body .lede{font-size:clamp(1.05rem,1.6vw,1.28rem);color:var(--text);line-height:1.55}

.record{margin-top:30px;display:grid;gap:2px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel)}
.record__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;background:linear-gradient(90deg,rgba(255,138,34,.14),rgba(255,138,34,.03));border-bottom:1px solid var(--hair)}
.record__head span:first-child{font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.record__head-tag{font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;font-size:.92rem;letter-spacing:.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.record__note{margin-top:16px;color:var(--muted-2);font-size:.84rem;line-height:1.55}
.record__note b{color:var(--muted);font-weight:600}
.record__row{display:flex;align-items:baseline;gap:16px;padding:15px 18px;background:var(--bg-2);border-left:3px solid transparent;transition:border-color .3s,background .3s}
.record__row:hover{border-left-color:var(--flame);background:var(--panel)}
.record__row .yr{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.12em;color:var(--flame);white-space:nowrap;min-width:74px}
.record__row .txt{font-size:.95rem}
.record__row .txt b{font-family:"Rajdhani",sans-serif;font-weight:600;font-size:1.05rem;text-transform:uppercase;letter-spacing:.01em;color:var(--text);display:block}
.record__row .txt span{color:var(--muted-2);font-size:.86rem}

.timeline{margin-top:clamp(46px,6vw,80px);display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}
.tl{padding:26px 22px 0;border-left:1px solid var(--line-2);position:relative}
.tl:first-child{border-left:none}
.tl::before{content:"";position:absolute;top:-1px;left:0;width:36%;height:2px;background:var(--grad)}
.tl__k{font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--flame);margin-bottom:12px}
.tl__h{font-family:"Rajdhani",sans-serif;font-weight:600;text-transform:uppercase;font-size:1.28rem;line-height:1.05;margin-bottom:10px}
.tl__p{color:var(--muted);font-size:.9rem;line-height:1.55}

/* ============================================================
   MACHINE
   ============================================================ */
.machine{position:relative;overflow:hidden}
.machine__grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(32px,5vw,64px);align-items:center}
.machine__copy .quote{
  font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;
  font-size:clamp(1.9rem,4.4vw,3.3rem);line-height:1.02;letter-spacing:-.01em;margin:.4rem 0 .3rem;
}
.machine__copy .quote .grad-text{display:inline}
.machine__cite{font-family:"JetBrains Mono",monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:1.6rem}
.machine__copy p{color:var(--muted);margin:0 0 1.1em;max-width:52ch}
.machine__specs{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:26px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--line-2)}
.spec{background:linear-gradient(155deg,rgba(255,138,34,.07),var(--bg-2));padding:20px 20px 18px;position:relative}
.spec::before{content:"";position:absolute;top:0;left:0;width:30px;height:2px;background:var(--grad)}
.spec .k{font-family:"JetBrains Mono",monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--flame);margin-bottom:8px}
.spec .v{font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;font-size:1.5rem;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.spec .v small{font-size:.62em;color:var(--muted);font-weight:600;-webkit-text-fill-color:var(--muted)}
.machine__img{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}
.machine__img img{width:100%;aspect-ratio:3/2.05;object-fit:cover;object-position:center 42%}
.machine__img::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 60%,rgba(240,83,10,.14))}

/* ============================================================
   WHY PARTNER - exposure
   ============================================================ */
.reach__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.rcard{
  background:radial-gradient(130% 90% at 0% 0%,rgba(255,138,34,.11),transparent 55%),linear-gradient(160deg,var(--panel),var(--bg-2));
  border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;position:relative;overflow:hidden;
  transition:border-color .35s,transform .35s var(--ease),box-shadow .35s var(--ease);
}
.rcard::before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:var(--grad);transform:scaleX(1);transform-origin:left;opacity:.4;transition:opacity .45s var(--ease)}
.rcard:hover{border-color:var(--hair);transform:translateY(-3px);box-shadow:0 20px 44px -24px rgba(255,122,24,.5)}
.rcard:hover::before{opacity:1}
.rcard__ico{width:46px;height:46px;padding:10px;margin-bottom:18px;color:var(--flame);display:inline-flex;border-radius:12px;background:linear-gradient(150deg,rgba(255,176,32,.20),rgba(240,83,10,.06));border:1px solid var(--hair);box-shadow:0 6px 20px -10px rgba(255,122,24,.55)}
.rcard__ico svg{width:100%;height:100%}
.rcard h3{font-family:"Rajdhani",sans-serif;font-weight:600;text-transform:uppercase;font-size:1.32rem;line-height:1.05;margin:0 0 10px;letter-spacing:.005em}
.rcard p{color:var(--muted);font-size:.92rem;margin:0}
.rcard p b{color:var(--text);font-weight:600}
.rcard--wide{grid-column:span 6}
.rcard--third{grid-column:span 4}
.rcard--tall{grid-column:span 4}

.reach__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.bignum{background:radial-gradient(120% 90% at 100% 0%,rgba(255,138,34,.10),transparent 55%),var(--bg-2);border:1px solid var(--hair);border-radius:var(--radius);padding:28px 26px;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.bignum:hover{transform:translateY(-3px);box-shadow:0 20px 44px -26px rgba(255,122,24,.5)}
.bignum .n{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:clamp(2.6rem,5vw,3.8rem);line-height:.9;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.bignum .l{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:12px}
.bignum .s{color:var(--muted-2);font-size:.82rem;margin-top:8px;line-height:1.5}

/* ============================================================
   LIVERY MAP - signature
   ============================================================ */
.livery{position:relative}
.livery__stage{
  position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);
  background:var(--ink);margin-top:clamp(24px,4vw,40px);
}
.livery__stage img{width:100%;display:block;filter:saturate(1.02) contrast(1.03)}
.livery__stage::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(8,8,10,.5));pointer-events:none}
/* --- diagram-style callouts: small dot + leader line + always-on label --- */
.hot{position:absolute;transform:translate(-50%,-50%);z-index:3;width:13px;height:13px;border-radius:50%;padding:0;--L:30px}
.hot__dot{
  position:absolute;inset:0;border-radius:50%;
  background:var(--grad);box-shadow:0 0 0 2.5px rgba(8,8,10,.6),0 0 10px -1px rgba(255,138,34,.7);
  transition:transform .3s var(--ease),box-shadow .3s;
}
.hot::after{content:"";position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--flame);animation:pulse 2.6s var(--ease) infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.6}70%{transform:scale(2.6);opacity:0}100%{opacity:0}}
.hot:hover,.hot.active,.hot:focus-visible{z-index:9}
.hot:hover .hot__dot,.hot.active .hot__dot,.hot:focus-visible .hot__dot{transform:scale(1.4);box-shadow:0 0 0 2.5px rgba(8,8,10,.6),0 0 16px 1px rgba(255,138,34,.95)}
.hot:focus-visible{outline:none}
/* leader line (::before) */
.hot::before{content:"";position:absolute;background:rgba(255,138,34,.6);pointer-events:none;z-index:4;transition:background .25s}
.hot:hover::before,.hot.active::before,.hot:focus-visible::before{background:var(--flame)}
.hot--up::before{left:50%;bottom:100%;width:1.5px;height:var(--L);transform:translateX(-50%)}
.hot--down::before{left:50%;top:100%;width:1.5px;height:var(--L);transform:translateX(-50%)}
.hot--left::before{top:50%;right:100%;height:1.5px;width:var(--L);transform:translateY(-50%)}
.hot--right::before{top:50%;left:100%;height:1.5px;width:var(--L);transform:translateY(-50%)}
/* always-on label chip */
.hot__label{
  position:absolute;width:max-content;max-width:150px;pointer-events:none;
  background:rgba(12,11,15,.72);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
  border:1px solid rgba(255,138,34,.4);border-radius:6px;padding:5px 9px;
  transition:background .25s,border-color .25s,box-shadow .25s,max-width .25s;z-index:5;
}
.hot--up .hot__label{left:50%;bottom:calc(100% + var(--L));transform:translateX(-50%)}
.hot--down .hot__label{left:50%;top:calc(100% + var(--L));transform:translateX(-50%)}
.hot--left .hot__label{top:50%;right:calc(100% + var(--L));transform:translateY(-50%)}
.hot--right .hot__label{top:50%;left:calc(100% + var(--L));transform:translateY(-50%)}
.hot__label .h{font-family:"Rajdhani",sans-serif;font-weight:600;text-transform:uppercase;font-size:.8rem;letter-spacing:.02em;line-height:1;white-space:nowrap;color:var(--text)}
.hot__label .d{font-size:.76rem;color:var(--muted);line-height:1.4;max-height:0;opacity:0;overflow:hidden;margin-top:0;transition:max-height .3s var(--ease),opacity .25s,margin-top .3s}
.hot__label .postier{display:block;font-family:"JetBrains Mono",monospace;font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--flame);max-height:0;opacity:0;overflow:hidden;margin-top:0;transition:max-height .3s var(--ease),opacity .25s,margin-top .3s}
.hot:hover .hot__label,.hot.active .hot__label,.hot:focus-visible .hot__label{
  background:rgba(12,11,15,.97);border-color:var(--flame);max-width:230px;box-shadow:0 18px 40px -12px rgba(0,0,0,.85);
}
.hot:hover .hot__label .d,.hot.active .hot__label .d,.hot:focus-visible .hot__label .d{max-height:80px;opacity:1;margin-top:6px}
.hot:hover .hot__label .postier,.hot.active .hot__label .postier,.hot:focus-visible .hot__label .postier{max-height:24px;opacity:1;margin-top:7px}
/* caption bar - only used on touch / narrow screens, hidden on desktop */
.livery__caption{display:none}
@media (hover:none),(max-width:640px){
  /* drop the directional floating labels + lines (they can't fit a narrow screen) */
  .hot{width:16px;height:16px}
  .hot__label{display:none}
  .hot::before{display:none}
  /* tapped marker's detail shows in a caption pinned to the image, never clips */
  .livery__caption{
    display:block;position:absolute;left:12px;right:12px;bottom:12px;z-index:6;
    background:rgba(12,11,15,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
    border:1px solid var(--hair);border-radius:10px;padding:12px 14px;
    opacity:0;transform:translateY(8px);pointer-events:none;
    transition:opacity .25s,transform .25s var(--ease);
  }
  .livery__caption.show{opacity:1;transform:none}
  .livery__caption .h{font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;font-size:1.05rem;letter-spacing:.01em;color:var(--text);display:block;line-height:1}
  .livery__caption .d{font-size:.85rem;color:var(--muted);margin-top:6px;line-height:1.45;display:block}
  .livery__caption .postier{display:inline-block;margin-top:8px;font-family:"JetBrains Mono",monospace;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--flame)}
}

.livery__legend{margin-top:26px;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,54px);align-items:start}
.livery__note{color:var(--muted)}
.livery__note b{color:var(--text);font-weight:600}
.poslist{padding:0;margin:6px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:2px 18px}
.poslist li{list-style:none;display:flex;align-items:baseline;gap:10px;padding:7px 0;border-bottom:1px solid var(--line-2);color:var(--muted);font-size:.86rem}
.poslist li .mono{color:var(--flame);font-size:.7rem}
.poslist li b{color:var(--text);font-weight:500}

/* ============================================================
   SEASON
   ============================================================ */
.season__stats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:36px}
.season__stats .chip{font-size:.72rem}
.season__filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.season__filters button{
  font-family:"JetBrains Mono",monospace;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted);padding:.7em 1.1em;border:1px solid var(--line);border-radius:100px;transition:.25s;
}
.season__filters button:hover{color:var(--text);border-color:var(--hair)}
.season__filters button.active{color:#180a02;background:var(--grad);border-color:transparent}
.season__filters button:focus-visible{outline:2px solid var(--y1);outline-offset:2px}

.sched{border-top:1px solid var(--line)}
.round{
  display:grid;grid-template-columns:132px 1fr auto;gap:20px;align-items:center;
  padding:18px 14px;border-bottom:1px solid var(--line);transition:background .3s,padding .3s;position:relative;
}
/* zebra striping (applied to visible rows via JS so it survives month filtering) */
.round.zebra{background:rgba(255,255,255,.05)}
.round::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--grad);transform:scaleY(0);transition:transform .35s var(--ease)}
.round:hover{background:linear-gradient(90deg,rgba(255,138,34,.05),transparent 60%);padding-left:16px}
.round:hover::before{transform:scaleY(1)}
.round__date{font-family:"JetBrains Mono",monospace;font-size:.8rem;letter-spacing:.06em;color:var(--flame);text-transform:uppercase}
.round__date small{display:block;color:var(--muted-2);font-size:.68rem;letter-spacing:.14em;margin-top:3px}
.round__name{font-family:"Rajdhani",sans-serif;font-weight:600;text-transform:uppercase;font-size:1.2rem;line-height:1.05;letter-spacing:.005em}
.round__venue{color:var(--muted);font-size:.86rem;margin-top:3px;font-family:"Archivo",sans-serif;font-weight:400;text-transform:none;letter-spacing:0}
.round__tag{font-family:"JetBrains Mono",monospace;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);border:1px solid var(--line);border-radius:100px;padding:.4em .8em;white-space:nowrap}
.round__tag.tbc{color:var(--ember);border-color:rgba(184,60,8,.5)}
.round.is-hidden{display:none}
.season__foot{color:var(--muted-2);font-size:.82rem;margin-top:22px;font-style:italic}

/* ============================================================
   PARTNERSHIP OPTIONS
   ============================================================ */
.tiers{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tier{
  display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(255,138,34,.05),var(--bg-2));
  border:1px solid rgba(255,138,34,.32);border-radius:var(--radius);padding:28px 24px;position:relative;overflow:hidden;
  transition:border-color .35s,transform .35s var(--ease);
}
.tier:hover{border-color:rgba(255,138,34,.6);transform:translateY(-4px);box-shadow:0 22px 46px -26px rgba(255,122,24,.55)}
.tier--feature{border-color:var(--hair);background:linear-gradient(180deg,rgba(255,138,34,.10),var(--bg-2))}
.tier--feature::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--grad)}
.tier__badge{position:absolute;top:16px;right:16px;font-family:"JetBrains Mono",monospace;font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--flame)}
.tier__k{font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin-bottom:14px}
.tier__name{font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;font-size:1.85rem;line-height:.95;margin-bottom:6px}
.tier--feature .tier__name{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.tier__price{font-family:"JetBrains Mono",monospace;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--flame);margin-bottom:18px}
.tier__list{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:11px}
.tier__list li{display:flex;gap:10px;color:var(--muted);font-size:.87rem;line-height:1.45}
.tier__list li svg{flex:none;width:15px;height:15px;color:var(--flame);margin-top:3px}
.tier__cta{margin-top:auto}
.tier__cta a{
  display:block;text-align:center;font-family:"Rajdhani",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.05em;
  font-size:.95rem;padding:.8em;border-radius:100px;border:1px solid var(--line);transition:.25s;color:var(--text);
}
.tier__cta a:hover{border-color:var(--hair);background:rgba(255,138,34,.06)}
.tier--feature .tier__cta a{background:var(--grad);color:#180a02;border-color:transparent}

/* ============================================================
   PARTNERS WALL
   ============================================================ */
.partners__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.plogo{
  display:flex;align-items:center;justify-content:center;padding:14px 16px;min-height:140px;
  background:linear-gradient(180deg,#f3f1ec,#e7e3db);border-radius:12px;
  border:1px solid rgba(255,255,255,.06);transition:transform .35s var(--ease),box-shadow .35s;
}
.plogo:hover{transform:translateY(-3px);box-shadow:0 14px 30px -14px rgba(0,0,0,.7)}
.plogo img{width:100%;max-width:100%;max-height:110px;object-fit:contain}
.partners__note{margin-top:26px;color:var(--muted);text-align:center}
.partners__note b{color:var(--text);font-weight:600}

/* ============================================================
   ATMOS divider
   ============================================================ */
.atmos{position:relative;height:clamp(280px,42vw,520px);overflow:hidden;display:flex;align-items:center}
.atmos img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%;z-index:-2}
.atmos::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,8,10,.94),rgba(8,8,10,.5) 55%,rgba(8,8,10,.75))}
.atmos__q{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);width:100%}
.atmos__q p{font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(1.7rem,4.6vw,3.4rem);line-height:1.02;max-width:20ch;letter-spacing:-.01em}
.atmos__q .k{margin-bottom:16px}

/* ============================================================
   CONTACT
   ============================================================ */
.contact{position:relative;overflow:hidden}
.contact__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,6vw,90px);align-items:center}
.contact h2{font-family:"Rajdhani",sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(3rem,9vw,7rem);line-height:.85;letter-spacing:-.02em;margin:.4rem 0 0}
.contact h2 .grad-text{display:block}
.contact__lead{color:var(--muted);font-size:clamp(1.02rem,1.5vw,1.2rem);margin:1.4rem 0 2rem;max-width:48ch}
.contact__ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:8px}
.contact__card{background:linear-gradient(180deg,var(--panel),var(--bg-2));border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,3vw,36px)}
.contact__row{display:flex;flex-direction:column;gap:4px;padding:16px 0;border-bottom:1px solid var(--line-2)}
.contact__row:last-child{border-bottom:none}
.contact__row .k{font-family:"JetBrains Mono",monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-2)}
.contact__row a,.contact__row .v{font-family:"Rajdhani",sans-serif;font-weight:600;font-size:1.35rem;text-transform:uppercase;letter-spacing:.01em;transition:color .25s}
.contact__row a:hover{color:var(--flame)}
.contact__socials{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.contact__socials a{display:flex;align-items:center;gap:8px;font-family:"JetBrains Mono",monospace;font-size:.72rem;letter-spacing:.06em;color:var(--muted);border:1px solid var(--line);border-radius:100px;padding:.6em 1em;transition:.25s}
.contact__socials a:hover{color:var(--text);border-color:var(--hair)}
.contact__socials svg{width:15px;height:15px}

/* ============================================================
   FOOTER
   ============================================================ */
.foot{border-top:1px solid var(--line-2);padding-block:44px;background:var(--ink)}
.foot__grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.foot__logo img{height:34px;opacity:.85}
.foot__meta{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);text-align:right;line-height:1.9}
.foot__disc{margin-top:26px;padding-top:22px;border-top:1px solid var(--line-2);color:var(--muted-2);font-size:.76rem;line-height:1.6;max-width:90ch}

/* ---------- Reveal on scroll (progressive enhancement: only hidden when JS active) ---------- */
.js .reveal{opacity:0;transform:translateY(26px)}
.js .reveal.in{opacity:1;transform:none;transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal[data-d="1"].in{transition-delay:.08s}
.reveal[data-d="2"].in{transition-delay:.16s}
.reveal[data-d="3"].in{transition-delay:.24s}
.reveal[data-d="4"].in{transition-delay:.32s}
.reveal[data-d="5"].in{transition-delay:.4s}
.reveal[data-d="6"].in{transition-delay:.48s}

/* ---------- Skip link ---------- */
.skip{position:absolute;left:-999px;top:0;z-index:200;background:var(--grad);color:#180a02;padding:12px 18px;border-radius:0 0 8px 0;font-weight:600}
.skip:focus{left:0}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1000px){
  .driver__grid{grid-template-columns:1fr;gap:36px}
  .machine__grid{grid-template-columns:1fr;gap:36px}
  .machine__img{order:-1}
  .livery__legend{grid-template-columns:1fr}
  .contact__grid{grid-template-columns:1fr;gap:40px}
  .rcard--wide,.rcard--third,.rcard--tall{grid-column:span 6}
  .tiers{grid-template-columns:repeat(2,1fr)}
  .partners__grid{grid-template-columns:repeat(3,1fr)}
  .timeline{grid-template-columns:repeat(2,1fr)}
  .tl{border-left:none;border-top:1px solid var(--line-2);padding-top:24px}
  .tl:nth-child(-n+2){border-top:none}
}
@media (max-width:720px){
  .section{padding-block:46px}
  .nav__links{
    position:fixed;inset:64px 0 auto 0;flex-direction:column;align-items:stretch;gap:0;
    background:rgba(9,9,12,.97);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);
    padding:8px var(--gutter) 20px;transform:translateY(-8px);opacity:0;pointer-events:none;transition:.3s var(--ease);
  }
  .nav.open .nav__links{transform:none;opacity:1;pointer-events:auto}
  .nav__links a{padding:14px 4px;border-bottom:1px solid var(--line-2);font-size:.82rem}
  .nav__links a.active::after{display:none}
  .nav__links .nav__cta{margin:14px 0 0}
  .nav__burger{display:flex}
  .nav__cta.desktop-only{display:none}
  .band__grid{grid-template-columns:repeat(2,1fr)}
  .band__cell:nth-child(3){border-left:none}
  .band__cell:nth-child(-n+2){border-bottom:1px solid var(--line-2)}
  .reach__grid{grid-template-columns:1fr}
  .rcard--wide,.rcard--third,.rcard--tall{grid-column:span 1}
  .reach__stats{grid-template-columns:1fr}
  .machine__specs{grid-template-columns:1fr}
  .tiers{grid-template-columns:1fr}
  .partners__grid{grid-template-columns:repeat(2,1fr)}
  .timeline{grid-template-columns:1fr}
  .tl{border-top:1px solid var(--line-2)}
  .tl:first-child{border-top:none}
  .round{grid-template-columns:96px 1fr;gap:14px}
  .round__tag{grid-column:2;justify-self:start;margin-top:4px}
  .poslist{grid-template-columns:1fr}
  .hero__num{display:none}
  .hero__scroll{display:none}
  .foot__meta{text-align:left}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .reveal{opacity:1;transform:none}
  .hero__eyebrow,.hero__lockup,.hero__name .l1,.hero__name .l2,.hero__row{opacity:1;transform:none}
  .hero__num{opacity:.16}
}

/* ============================================================
   BOLD REDESIGN: electric, high-contrast, motorsport energy
   (appended last so it wins the cascade)
   ============================================================ */
/* every content card: dark fill + BOLD 2px solid orange gradient edge */
.rcard,.tier,.contact__card,.record,.machine__specs,.bignum{
  position:relative;
  border:2px solid transparent !important;border-radius:16px;
  background:
    linear-gradient(158deg,#141019,#0b0910) padding-box,
    var(--grad) border-box !important;
  box-shadow:0 30px 66px -30px rgba(255,90,10,.75) !important;
}
/* solid orange gradient top bar on cards */
.rcard::before,.bignum::before,.tier::before,.contact__card::before{
  content:"";position:absolute;left:-2px;right:-2px;top:-2px;height:6px;
  border-radius:16px 16px 0 0;background:var(--grad);z-index:3;
}
/* text: WHITE body, ORANGE labels (no grey anywhere) */
.rcard h3,.record__row .txt b,.contact__row .v,.tier__name,
.rcard p,.record__row .txt span,.tier__list li,.record__note{color:#fff !important}
.contact__row .k,.tier__k,.bignum .l,.band__k,.spec .k{color:var(--flame) !important}
/* icon chips: solid gradient, black glyph */
.rcard__ico{
  background:var(--grad) !important;border:none !important;color:#160a02 !important;
  box-shadow:0 8px 24px -6px rgba(255,122,24,.95) !important;
}
.rcard__ico svg{color:#160a02}
/* machine spec tiles: solid dark, glowing gradient values */
.machine__specs{overflow:hidden;gap:2px}
.spec{background:#100c16 !important}
.spec .v{filter:drop-shadow(0 2px 12px rgba(255,138,34,.55))}
/* FEATURE pricing tier: SOLID orange gradient fill, black text */
.tier--feature{
  background:var(--grad) !important;border:2px solid transparent !important;
  box-shadow:0 36px 84px -22px rgba(255,122,24,.95) !important;
}
.tier--feature::before{display:none}
.tier--feature .tier__k,.tier--feature .tier__name,.tier--feature .tier__price,
.tier--feature .tier__list li,.tier--feature .tier__badge{color:#160a02 !important;-webkit-text-fill-color:#160a02 !important}
.tier--feature .tier__list li svg{color:#160a02 !important}
.tier--feature .tier__cta a{background:#140a02 !important;color:#fff !important;border-color:transparent !important}
/* record header band: SOLID orange gradient, black text */
.record__head{background:var(--grad) !important;border-bottom:none !important}
.record__head span,.record__head-tag{color:#160a02 !important;-webkit-text-fill-color:#160a02 !important}
/* headings glow with energy */
.section-head h2,.machine__copy .quote{text-shadow:0 0 44px rgba(255,138,34,.3)}
.round__date{color:#FFB020}
.round__name{color:#fff}
.round__venue{color:#fff !important}
/* MOBILE: stop the schedule text overflowing */
@media (max-width:640px){
  .round > *{min-width:0}
  .round__name{font-size:1.02rem;line-height:1.12;overflow-wrap:anywhere}
  .round__venue{overflow-wrap:anywhere}
}
