html,body{max-width:100%;overflow-x:hidden}.hero-copy:before{display:none}@media(max-width:820px){.mobile-cta{width:auto!important;max-width:calc(100vw - 28px);box-sizing:border-box}}
/* Desktop visual QA: keep the full badge inside the clipped media panel and
   bias the hero crop toward the truck's front end. */
@media(min-width:821px){
  .hero-video{object-position:82% center}
  .hero-visual{background-position:82% center}
  .coverage-chip{left:24px;bottom:28px;white-space:nowrap}
}


/* Continental coverage visual and crawlable service-area content */
.route-band{background:#0a0b0e!important;overflow:hidden}
.route-band:before{background:radial-gradient(circle at 78% 42%,rgba(226,13,23,.30),transparent 34%),linear-gradient(105deg,#a9060f 0,#32070b 44%,#090a0d 74%)!important;mix-blend-mode:normal!important}
.coverage-copy p{color:#f0dfe1;max-width:470px}
.coverage-link{display:inline-flex;margin-top:16px;color:#fff;font-weight:900;text-decoration:none;border-bottom:2px solid rgba(255,255,255,.55)}
.coverage-map{position:relative;min-height:390px;overflow:hidden;border:1px solid rgba(255,255,255,.24);background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(0,0,0,.25));box-shadow:0 32px 90px rgba(0,0,0,.34)}
.map-grid{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.25) 1px,transparent 1px);background-size:42px 42px;transform:perspective(550px) rotateX(55deg) scale(1.5);transform-origin:center bottom}
.country{position:absolute;z-index:2;max-width:260px;padding:18px 20px;border-left:4px solid #ed111c;background:rgba(8,9,12,.78);backdrop-filter:blur(8px)}
.country span{display:block;color:#fff;font:italic 900 1.65rem/1 Arial Black,Arial,sans-serif;letter-spacing:.04em}
.country b{display:block;margin-top:7px;color:#d4d6da;font-size:.75rem;line-height:1.5}
.country-ca{left:7%;top:12%}.country-us{right:6%;bottom:11%}
.route-lines{position:absolute;inset:0;width:100%;height:100%;z-index:1;filter:drop-shadow(0 0 8px rgba(237,17,28,.8))}
.route-lines path{fill:none;stroke:#ed111c;stroke-width:4;stroke-dasharray:9 9;animation:routeDash 14s linear infinite}
.route-dot{position:absolute;z-index:3;width:13px;height:13px;border-radius:50%;background:#fff;box-shadow:0 0 0 8px rgba(237,17,28,.3),0 0 22px #ed111c}
.dot-one{left:20%;top:62%}.dot-two{left:52%;top:39%}.dot-three{right:12%;top:57%}
.map-stamp{position:absolute;z-index:4;right:20px;top:18px;padding:10px 13px;border:1px solid rgba(255,255,255,.34);color:#c6c9ce;text-align:right;text-transform:uppercase;font-size:.66rem;letter-spacing:.13em}.map-stamp strong{color:#fff;font-size:.77rem}
.city-ribbon{display:flex;flex-wrap:wrap;gap:9px;padding-top:22px}.city-ribbon span{padding:7px 11px;border:1px solid rgba(255,255,255,.25);color:#fff;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.coverage-section{background:#ececea}.coverage-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.coverage-columns article{padding:32px;background:#fff;border-top:5px solid #ed111c;box-shadow:0 18px 45px rgba(16,17,19,.07)}.coverage-columns h3{margin:0 0 14px;font:italic 900 2rem/1 Arial Black,Arial,sans-serif;text-transform:uppercase}.coverage-columns p{color:#50555c}.coverage-note{margin:22px 0 0;padding:17px 20px;background:#15171a;color:#fff}
@keyframes routeDash{to{stroke-dashoffset:-180}}
@media(max-width:820px){.coverage-map{min-height:440px}.country{max-width:78%}.country-ca{left:6%;top:9%}.country-us{right:6%;bottom:10%}.coverage-columns{grid-template-columns:1fr}.city-ribbon{padding-top:16px}}
@media(prefers-reduced-motion:reduce){.route-lines path{animation:none}}


/* Route-first freight quote wizard */
.quote-wizard{padding:0;overflow:hidden}.quote-progress{display:grid;grid-template-columns:repeat(4,1fr);background:#111}.step-indicator{appearance:none;border:0;border-right:1px solid #303236;background:#17181b;color:#aeb1b5;min-height:78px;padding:14px 10px;font:800 .72rem/1.2 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.07em;cursor:default}.step-indicator span{display:grid;place-items:center;width:25px;height:25px;margin:0 auto 6px;border:1px solid #686b70;border-radius:50%}.step-indicator.active{background:#ed111c;color:#fff}.step-indicator.active span,.step-indicator.done span{border-color:#fff;background:#fff;color:#111}.step-indicator.done{color:#fff;cursor:pointer}.quote-wizard form{padding:38px}.quote-step{display:none}.quote-step.active{display:block}.step-heading{margin-bottom:30px}.step-heading h2{margin:.25em 0;font:italic 900 clamp(2rem,4vw,3.3rem)/1 Arial Black,Arial,sans-serif;text-transform:uppercase;letter-spacing:-.045em}.step-heading p{color:#5c6168;max-width:700px}.quote-wizard fieldset{margin:0 0 24px;padding:22px;border:1px solid #d8dadd}.quote-wizard legend{padding:0 9px;font-weight:900;text-transform:uppercase}.quote-wizard legend small{color:#777;text-transform:none;font-weight:600}.field label em,.consent em{color:#a3070f;font-size:.7rem;font-style:normal;text-transform:uppercase;letter-spacing:.06em}.unit-field{display:grid;grid-template-columns:1fr 82px}.unit-field select{border-left:0}.dimension-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.dimension-grid label{display:grid;grid-template-columns:1fr 44px;align-items:end;font-weight:800}.dimension-grid label input{grid-column:1;min-height:48px;padding:10px;border:1px solid #c9ccd0}.dimension-grid label span{grid-column:2;display:grid;place-items:center;height:48px;border:1px solid #c9ccd0;border-left:0;background:#eee}.check-row{display:flex;align-items:flex-start;gap:10px;margin-top:16px}.check-row input,.check-card input{width:19px;height:19px;accent-color:#ed111c}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.check-card{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #d8dadd;background:#fff}.cross-border-note{display:none;margin-top:18px;padding:13px 16px;background:#15171a;color:#fff;font-weight:900}.cross-border-note.show{display:block}.quote-review{margin-top:28px;padding:24px;background:#f0f0ee;border-left:5px solid #ed111c}.quote-review h3{margin-top:0;text-transform:uppercase}.quote-review dl{margin:0}.quote-review dl div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:9px 0;border-top:1px solid #d5d7da}.quote-review dt{font-weight:900}.quote-review dd{margin:0;color:#4d5259}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:24px;border-top:1px solid #d8dadd}.wizard-actions .quote-next,.wizard-actions .quote-submit{margin-left:auto}.form-error{min-height:24px;margin-top:14px;color:#a3070f;font-weight:800}.consent{padding:14px;border:1px solid #d8dadd}.conditional-flatbed{margin-top:18px}
@media(max-width:820px){.quote-wizard form{padding:24px 18px}.quote-progress{grid-template-columns:repeat(4,minmax(0,1fr))}.step-indicator{font-size:.58rem;padding:10px 4px;letter-spacing:.02em}.dimension-grid,.option-grid{grid-template-columns:1fr}.quote-review dl div{grid-template-columns:1fr;gap:2px}.wizard-actions{position:sticky;bottom:72px;z-index:4;background:#fff;padding:14px 0}.wizard-actions .btn{min-width:0;padding:0 14px}}

@media(max-width:820px){.form-wrap{display:flex;flex-direction:column}.quote-wizard{order:1}.form-wrap .aside{order:2;margin-top:18px;padding:26px}.form-wrap .aside h2{font-size:1.55rem}.quote-progress{position:sticky;top:70px;z-index:6}.step-heading h2{font-size:2rem}}


/* Lightweight motion system */
@keyframes pageFade{from{opacity:0}to{opacity:1}}
@keyframes heroCopyIn{from{opacity:0;transform:translate3d(-34px,18px,0)}to{opacity:1;transform:none}}
@keyframes heroMediaIn{from{opacity:0;clip-path:inset(0 0 0 35%)}to{opacity:1;clip-path:inset(0)}}
@keyframes heroGlow{0%,100%{opacity:.28;transform:translate3d(0,0,0) scale(1)}50%{opacity:.48;transform:translate3d(-2%,1%,0) scale(1.08)}}
@keyframes badgeIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes navDrop{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
@keyframes stepIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@keyframes cityFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes shine{0%{transform:translateX(-140%) skewX(-18deg)}100%{transform:translateX(240%) skewX(-18deg)}}
.motion-ready body{animation:pageFade .45s ease both}
.motion-ready .header{animation:navDrop .65s cubic-bezier(.2,.75,.2,1) both}
.motion-ready .hero-copy>*{animation:heroCopyIn .8s cubic-bezier(.18,.8,.25,1) both}
.motion-ready .hero-copy>*:nth-child(1){animation-delay:.08s}.motion-ready .hero-copy>*:nth-child(2){animation-delay:.16s}.motion-ready .hero-copy>*:nth-child(3){animation-delay:.28s}.motion-ready .hero-copy>*:nth-child(4){animation-delay:.38s}
.motion-ready .hero-visual{animation:heroMediaIn 1.05s cubic-bezier(.2,.75,.2,1) .08s both}
.motion-ready .hero-visual:after{animation:heroGlow 7s ease-in-out infinite}
.motion-ready .coverage-chip{animation:badgeIn .75s cubic-bezier(.2,.8,.2,1) .8s both}
.motion-ready .page-hero .shell>*{animation:heroCopyIn .7s cubic-bezier(.18,.8,.25,1) both}.motion-ready .page-hero .shell>*:nth-child(2){animation-delay:.09s}.motion-ready .page-hero .shell>*:nth-child(3){animation-delay:.18s}
.card.reveal:nth-child(2),.service.reveal:nth-child(2),.coverage-columns article.reveal:nth-child(2){--delay:110ms!important}.card.reveal:nth-child(3),.service.reveal:nth-child(3){--delay:220ms!important}.card.reveal:nth-child(4),.service.reveal:nth-child(4){--delay:330ms!important}
.city-ribbon span.is-visible{animation:cityFloat 3s ease-in-out infinite}.city-ribbon span:nth-child(2n).is-visible{animation-delay:-1.5s}
.brand-mark{position:relative;overflow:hidden}.brand-mark:after{content:"";position:absolute;inset:-20%;width:35%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);animation:shine 5.5s ease-in-out infinite}
.quote-step.active{animation:stepIn .4s cubic-bezier(.2,.75,.2,1) both}
.step-indicator span{transition:transform .25s ease,background .25s ease}.step-indicator.active span{transform:scale(1.12)}
.metric strong{transition:color .25s ease,transform .25s ease}.metric:hover strong{color:#ed111c;transform:translateX(4px)}
.navlinks a:not(.btn){position:relative}.navlinks a:not(.btn):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:#ed111c;transition:right .28s ease}.navlinks a:not(.btn):hover:after,.navlinks a[aria-current=page]:after{right:0}
@media(prefers-reduced-motion:reduce){.motion-ready body,.motion-ready .header,.motion-ready .hero-copy>*,.motion-ready .hero-visual,.motion-ready .coverage-chip,.motion-ready .page-hero .shell>*,.city-ribbon span.is-visible,.brand-mark:after,.quote-step.active{animation:none!important}.step-indicator span,.metric strong{transition:none!important}}
