/* The existing scene footprint stays reserved above the service cards. */
.road-scene{--road-light:237,193,109;--road-glow-x:0px;--road-glow-y:0px}
.road-scene:after{display:none!important}
.road-scene .hero-podium,.road-scene .podium-light,.road-scene .podium-surface-motion{display:none!important}
.road-scene .road-backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 76% 77% at 56% 62%,#000 43%,transparent 77%);mask-image:radial-gradient(ellipse 76% 77% at 56% 62%,#000 43%,transparent 77%)}
.road-backdrop img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.road-scene .vehicle-float{left:3%;bottom:7%;width:94%;z-index:3}
.road-scene .hero-van{filter:drop-shadow(0 5px 3px #0009)}
.road-contact-shadow{position:absolute;z-index:1;left:14%;width:78%;bottom:7%;height:9%;border-radius:50%;background:radial-gradient(ellipse,#000b 0 25%,#0005 52%,transparent 73%);pointer-events:none}
.road-ground-reflection{position:absolute;left:3%;width:94%;top:93%;height:7%;overflow:hidden;z-index:1;opacity:.12;pointer-events:none;mask-image:linear-gradient(#000,transparent)}
.road-ground-reflection img{display:block;width:100%;height:auto;transform:scaleY(-1);filter:blur(1px) saturate(.5)}
.road-horizon-glow{position:absolute;z-index:1;left:38%;top:56%;width:63%;height:9%;background:radial-gradient(ellipse,rgba(var(--road-light),.34),transparent 70%);mix-blend-mode:screen;transform:translate(var(--road-glow-x),var(--road-glow-y));pointer-events:none;animation:roadHorizonLight 7s ease-in-out infinite}
.road-reflection-glow{position:absolute;z-index:1;left:19%;bottom:1%;width:80%;height:28%;background:radial-gradient(ellipse at 70% 50%,rgba(var(--road-light),.24),transparent 68%);mix-blend-mode:screen;pointer-events:none;animation:roadReflectionLight 9s ease-in-out infinite}
.road-scene .van-arrival{transform-origin:72% 94%}
.road-scene .van-arrival.arriving{animation:roadVanArrival 2.4s cubic-bezier(.19,.72,.26,1) both}
.road-scene .van-arrival.arriving .hero-headlamp{animation:roadHeadlamps 2.8s ease both}
@keyframes roadVanArrival{0%{opacity:0;transform:translate(6%,-4%) scale(.88);filter:blur(1px)}22%{opacity:1;filter:blur(0)}100%{opacity:1;transform:translate(0,0) scale(1);filter:none}}
@keyframes roadHeadlamps{0%,32%{opacity:0}65%,100%{opacity:1}}
@keyframes roadHorizonLight{0%,100%{opacity:.48}50%{opacity:.9}}
@keyframes roadReflectionLight{0%,100%{opacity:.38;translate:-2% 0}50%{opacity:.75;translate:2% 0}}
.cool .road-scene{--road-light:167,213,247}.cool .road-backdrop img{filter:saturate(.55) brightness(.94)}
.road-scene.is-paused .road-horizon-glow,.road-scene.is-paused .road-reflection-glow{animation-play-state:paused}
@media(hover:none),(pointer:coarse){.road-horizon-glow{transform:none!important}}
@media(prefers-reduced-motion:reduce){.road-scene .van-arrival.arriving,.road-scene .van-arrival.arriving .hero-headlamp,.road-horizon-glow,.road-reflection-glow{animation:none!important;transform:none!important;translate:none!important;opacity:1;filter:none}}

/* One background covers the entire hero; the vehicle remains a separate layer. */
.stage.road-stage{--road-light:237,193,109;--road-glow-x:0px;--road-glow-y:0px}
.road-stage>.road-backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;mask-image:none!important;-webkit-mask-image:none!important}
.road-stage>.road-backdrop img{display:block;width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.road-stage>.road-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#031712e0 0%,#0317129c 33%,#03171220 65%,transparent),linear-gradient(0deg,#041c187a,transparent 28%)}
.road-stage>.stage-motion,.road-stage>.blue-wash,.road-stage>.texture{display:none!important}
.road-stage>.road-horizon-glow{left:52%;top:60%;width:48%;height:8%;z-index:1}
.road-stage>.road-reflection-glow{left:40%;bottom:6%;width:60%;height:25%;z-index:1}
.cool .road-stage{--road-light:167,213,247}
.cool .road-stage>.road-backdrop img{filter:saturate(.6) brightness(.92)}
.cool .road-stage>.road-backdrop:after{background:linear-gradient(90deg,#031629e0 0%,#0316299c 33%,#03162920 65%,transparent),linear-gradient(0deg,#0316297a,transparent 28%)}
.road-stage.is-paused>.road-horizon-glow,.road-stage.is-paused>.road-reflection-glow{animation-play-state:paused}
@media(max-width:680px){.road-stage>.road-backdrop img{object-position:62% 50%}.road-stage>.road-backdrop:after{background:linear-gradient(180deg,#031b1abd 0%,#031b1a8a 42%,#031b1a25 75%,#031b1a65)}.cool .road-stage>.road-backdrop:after{background:linear-gradient(180deg,#031629c7,#03162987 42%,#03162925 75%,#03162970)}.road-stage>.road-horizon-glow{left:27%;top:72%;width:73%}.road-stage>.road-reflection-glow{left:15%;bottom:8%;width:85%}}
