/* Approved daylight hero only; never restyle shared navigation or footer content. */
.home-page .hero-daylight { background: #e3edf3; color: #18232e; height: min(850px, calc(100svh - 24px)); min-height: 600px; }
.hero-daylight::before, .hero-daylight .hero-grid { display: none; }
.hero-daylight .hero-media { inset: 0; }
.hero-daylight .hero-media img { transform: none; object-position: center bottom; }
.hero-daylight .hero-shell { align-items: flex-start; }
.hero-daylight .hero-copy { width: min(800px, 72%); padding-top: 145px; }
.hero-daylight h1 { max-width: 800px; font-size: 64px; line-height: 1.06; }
.hero-daylight h1 span { color: #1453af; }
.hero-daylight .hero-kicker { color: #3d5364; margin-bottom: 18px; }
.hero-daylight .hero-description { color: #344555; max-width: 590px; font-size: 17px; }
.hero-daylight .button-quiet { color: #164ba7; border: 1px solid #3765a6; background: rgba(255,255,255,.35); }
.hero-daylight .hero-proof { color: #33495a; margin-top: 24px; }
.hero-daylight .hero-scroll { color: #fff; bottom: 14px; }
/* Both wheels remain on the same horizontal road plane across viewport sizes. */
.hero-traffic { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 1; }
.hero-moving-truck { --truck-width: min(530px, 42svh); position: absolute; width: var(--truck-width); bottom: 6%; left: 0; animation: hero-road-drive 42s linear infinite; animation-delay: -25s; animation-play-state: paused; }
.hero-moving-truck img { width: 100%; height: auto; display: block; filter: drop-shadow(0 7px 3px rgba(14,24,35,.23)); }
.hero-daylight.is-running .hero-moving-truck { animation-play-state: running; }
@keyframes hero-road-drive {
  from { transform: translateX(calc(-1 * var(--truck-width))); }
  to { transform: translateX(100vw); }
}
.home-page .home-cta { position: relative; padding-bottom: 230px; overflow: hidden; }
.marketing-page .home-cta.fleet-road-host { position: relative; padding-bottom: 230px; overflow: hidden; }
.fleet-road.fleet-road-standalone { position: relative; background: #2563eb; }
.fleet-road { position: absolute; bottom: 0; left: 0; width: 100%; height: 160px; overflow: hidden; pointer-events: none; }
.fleet-road-surface { position: absolute; bottom: 0; width: 100%; height: 43px; background: #30353d; border-top: 3px solid #d5dde5; border-bottom: 3px solid #161b22; }
.fleet-road-surface::after { content: ""; position: absolute; top: 25px; left: 0; right: 0; height: 2px; background: repeating-linear-gradient(90deg, #dbe2e8 0 40px, transparent 40px 76px); }
.fleet-road-truck { position: absolute; bottom: 1px; width: 230px; left: -240px; animation: fleet-drive 24s linear infinite; animation-delay: -9s; animation-play-state: paused; }
.fleet-road-truck img { display: block; width: 100%; height: auto; }
.fleet-road.is-running .fleet-road-truck { animation-play-state: running; }
@keyframes fleet-drive { to { transform: translateX(calc(100vw + 480px)); } }
@media (max-width: 900px) {
  .home-page .hero-daylight { height: min(820px, calc(100svh - 24px)); min-height: 740px; }
  .hero-daylight .hero-shell { padding-top: 0; }
  .hero-daylight .hero-copy { width: 100%; padding-top: 120px; }
  .hero-daylight h1 { font-size: 44px; max-width: 600px; }
  .hero-daylight .hero-description { font-size: 16px; line-height: 1.55; }
  .hero-daylight .hero-proof { font-size: 11px; gap: 12px; }
  .hero-moving-truck { --truck-width: 280px; bottom: 6%; animation-duration: 30s; animation-delay: -16s; }
  .home-page .home-cta { padding-bottom: 185px; }
  .marketing-page .home-cta.fleet-road-host { padding-bottom: 185px; }
  .fleet-road { height: 130px; }
  .fleet-road-truck { width: 180px; animation-duration: 18s; animation-delay: -7s; }
}
@media (max-width: 400px) {
  .hero-daylight .hero-copy { padding-top: 110px; }
  .hero-daylight h1 { font-size: 38px; margin-bottom: 18px; }
  .hero-daylight .hero-description { font-size: 15px; margin-bottom: 20px; }
  .hero-daylight .hero-actions { gap: 10px; }
  .hero-daylight .hero-actions .button { min-height: 44px; }
  .hero-daylight .hero-proof { margin-top: 16px; }
  .hero-moving-truck { --truck-width: 230px; }
}
/* Short laptop viewports need a compact copy stack, not a cropped road. */
@media (min-width: 901px) and (max-height: 760px) {
  .hero-daylight .hero-copy { padding-top: 112px; }
  .hero-daylight h1 { font-size: 48px; margin-bottom: 16px; }
  .hero-daylight h1 span { margin-bottom: 12px; }
  .hero-daylight .hero-description { font-size: 15px; line-height: 1.5; margin-bottom: 20px; }
  .hero-daylight .hero-actions .button { min-height: 44px; }
  .hero-daylight .hero-proof { margin-top: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-moving-truck { animation: none; left: auto; right: 5%; }
  .fleet-road-truck { animation: none; left: 55%; }
}
/* Additional homepage traffic; independent lanes, shared visibility/motion controls. */
.home-page .home-traffic-vehicle { position:absolute; left:0; width:var(--traffic-width); pointer-events:none; animation:home-traffic-drive var(--traffic-duration,34s) linear infinite; animation-delay:var(--traffic-delay,-12s); animation-play-state:paused; }
.home-traffic-vehicle img { display:block; width:100%; height:auto; }
.home-traffic-vehicle.traffic-reverse { animation-direction:reverse; }
.home-traffic-vehicle.traffic-reverse img { transform:scaleX(-1); }
.home-page .hero-traffic-car { --traffic-width:245px; --traffic-duration:36s; --traffic-delay:-9s; bottom:8%; z-index:0; }
.home-page .hero-traffic-bike { --traffic-width:140px; --traffic-duration:29s; --traffic-delay:-22s; bottom:4%; z-index:2; }
.home-page .hero-moving-truck { z-index:1; }
.home-page .footer-traffic-car { --traffic-width:145px; --traffic-duration:27s; --traffic-delay:-18s; bottom:21px; }
.home-page .footer-traffic-bike { --traffic-width:90px; --traffic-duration:21s; --traffic-delay:-3s; bottom:3px; z-index:2; }
.home-page .is-running .home-traffic-vehicle { animation-play-state:running; }
@keyframes home-traffic-drive { from { transform:translateX(calc(-1 * var(--traffic-width))); } to { transform:translateX(100vw); } }
@media(max-width:900px) {
  .home-page .hero-traffic-car { --traffic-width:175px; --traffic-duration:29s; bottom:8%; }
  .home-page .hero-traffic-bike { --traffic-width:105px; --traffic-duration:25s; bottom:4%; }
  .home-page .footer-traffic-car { --traffic-width:115px; }
  .home-page .footer-traffic-bike { --traffic-width:75px; }
}
@media(prefers-reduced-motion:reduce) {
  .home-page .home-traffic-vehicle { animation:none; }
  .home-page .hero-traffic-car { left:6%; }
  .home-page .hero-traffic-bike { left:38%; }
  .home-page .footer-traffic-car { left:5%; }
  .home-page .footer-traffic-bike { left:38%; }
}
