/* Hero variant: RC cars photo anchored at the bottom, headline in the dark area above */
.hero{min-height:max(100svh,940px);align-items:flex-start;padding:128px 0 0}
.hero-in{position:relative;z-index:2}
.hero-photo{overflow:hidden;position:absolute;left:50%;bottom:-2%;width:min(1500px,150vw);aspect-ratio:1584/672;transform:translateX(-50%);z-index:-1;pointer-events:none;
  opacity:0;animation:carsIn 1.4s var(--ease) .35s forwards}
.hero-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 38%;filter:saturate(1.05) contrast(1.03) brightness(.97);
  transform:translate3d(var(--px,0),var(--py,0),0) scale(1.02);transition:transform .25s ease-out;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 78%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%);
  -webkit-mask-composite:source-in;mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 78%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%);mask-composite:intersect}
.hero-photo::before{content:"";position:absolute;inset:0;z-index:1;
  background:radial-gradient(60% 70% at 50% 60%,transparent 35%,var(--bg) 92%),linear-gradient(0deg,var(--bg) 0%,transparent 28%)}
@keyframes carsIn{from{opacity:0;transform:translate(-50%,48px) scale(.97)}to{opacity:1;transform:translate(-50%,0)}}
.hero-glow{background:radial-gradient(600px circle at var(--mx,70%) var(--my,30%),rgba(49,140,231,.10),transparent 60%),linear-gradient(180deg,transparent 80%,var(--bg) 100%)}
.hero h1{font-size:clamp(2.3rem,4.9vw,4.5rem)}
.scroll-cue{display:none}
@media (max-width:980px){
  .hero{min-height:auto;padding-top:104px}
  .hero-in{padding-bottom:min(70vw,420px)}
  .hero-photo{width:max(170vw,900px);bottom:-4%}
  .next-card{max-width:none}
}
@media (prefers-reduced-motion:reduce){.hero-photo{animation:none;opacity:1}}
@media (max-width:420px){.hero h1{font-size:1.95rem}}
