/* Decorative overlay with a reserved lane below the hero copy. */
.spp-truck-stage{position:fixed;z-index:30;overflow:hidden;pointer-events:none!important;user-select:none;contain:layout style paint;direction:ltr}
.spp-truck-stage *{box-sizing:border-box;pointer-events:none!important}
.spp-truck-track{position:absolute;margin:0;padding:0;border:0;border-radius:1px;background-image:repeating-linear-gradient(60deg,#20262b 0 2px,transparent 2px 4px);mask-image:linear-gradient(to right,transparent,#000);-webkit-mask-image:linear-gradient(to right,transparent,#000);opacity:0}
.spp-truck-vehicle{position:absolute;left:0;will-change:transform;direction:ltr}
.spp-truck-body{position:absolute;inset:0;transform:translateY(var(--truck-bob,0px)) rotate(var(--truck-pitch,0deg));transform-origin:66% 80%}
.spp-truck-image{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;margin:0!important;border:0!important;filter:none!important}
.spp-truck-wheel{position:absolute;border-radius:50%;background-repeat:no-repeat;transform-origin:50% 50%;will-change:transform}
.spp-truck-shadow{position:absolute;left:8%;right:5%;top:86%;height:5%;border-radius:50%;background:#142030;opacity:.2;filter:blur(3px)}
.spp-truck-trailer-face{position:absolute;left:3.4%;top:19%;width:75.9%;height:40.3%;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.spp-truck-sheen{position:absolute;inset:0 auto 0 0;width:30%;background:linear-gradient(90deg,transparent,rgba(226,238,248,.35) 28%,#fff 50%,rgba(226,238,248,.35) 72%,transparent);opacity:0;transform:translateX(-120%) skewX(-18deg);will-change:transform,opacity}
.spp-truck-brake-light{position:absolute;background:#ff2929;border-radius:1px;opacity:var(--truck-brake,0);box-shadow:0 0 2px 1px #ff3030,0 0 6px 2px rgba(240,20,20,.48)}
.spp-truck-brake-light--trailer{left:2.45%;top:72.3%;width:.64%;height:2.1%}
.spp-truck-brake-light--tractor{left:61.4%;top:76.3%;width:.5%;height:2.4%}
.spp-truck-plate{position:absolute;left:95%;top:83.1%;width:3.65%;height:3.5%;display:flex;align-items:center;justify-content:center;padding-left:.3%;border:1px solid #76828c;border-radius:1px;background:linear-gradient(90deg,#194796 0 9%,#f8fafb 9%);color:#17212b;font-family:Arial,Helvetica,sans-serif;font-weight:700;line-height:1;letter-spacing:0;white-space:nowrap;transform:skewY(3deg)}
.spp-truck-message{position:absolute;top:50%;transform:translateY(-50%);display:flex;flex-wrap:wrap;align-items:center;gap:0 .3em;max-height:100%;overflow:hidden;margin:0;padding:8px 0;color:#58616a;font-family:inherit;font-size:clamp(16px,1.15vw,22px);font-weight:500;line-height:1.45;letter-spacing:-.015em;text-align:start;opacity:0;will-change:opacity}
.spp-truck-message[dir="rtl"]{direction:rtl;letter-spacing:0}
.spp-truck-message-lead,.spp-truck-message-accent{margin:0;padding:0;overflow-wrap:anywhere}
.spp-truck-message-accent{color:#c51d17;font-weight:750}
@media (max-width:1120px),(prefers-reduced-motion:reduce){.spp-truck-stage{display:none!important}}

/* Precision/older aligners can use the top of the existing hero without resizing it. */
@media(min-width:1121px){.hero-media.spp-truck-route-reserved:not(.sppauto-hero-aligned) .hero-title-overlay.home-copy{top:24px!important;transform:none!important}}
