/* A single, self-contained card between the company and steering sections. */
.vehicle-lines{padding:0 7% 90px;background:var(--paper);scroll-margin-top:90px}
.vehicle-lines-card{max-width:1400px;margin:auto;padding:48px 36px 28px;border:1px solid var(--line);border-radius:18px;background:#e8eadf;overflow:hidden}
.vehicle-lines-heading{text-align:center}
.vehicle-lines-heading .eyebrow{display:flex;align-items:center;justify-content:center;gap:9px;font-size:12px;color:var(--muted);margin-bottom:18px}
.vehicle-lines-heading .eyebrow span{width:7px;height:7px;border-radius:50%;background:#7c8a29}
.vehicle-lines-heading h2{font-size:clamp(32px,3.4vw,49px)}
.vehicle-lines-heading>p:last-child{font-size:16px;line-height:1.7;color:var(--muted);margin-top:20px}
.vehicle-lines-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:32px 0}
.vehicle-line{text-align:center;min-width:0;padding:0 20px}
.vehicle-line+.vehicle-line{border-left:1px solid #cdd0bf}
.vehicle-line-image{position:relative;aspect-ratio:3/2;margin-bottom:22px}
.vehicle-line-image>img{width:100%;height:100%;object-fit:contain}
.vehicle-line-image{isolation:isolate}
.vehicle-line-image.reveal{transition:opacity .75s ease var(--reveal-delay,0ms),transform .95s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms),filter .75s ease var(--reveal-delay,0ms)}
.vehicle-line-image.reveal.is-pending{opacity:0;transform:translate3d(28px,0,0);filter:blur(3px)}
.vehicle-line-image>img{position:relative;z-index:1;transition:transform .65s cubic-bezier(.16,1,.3,1)}
.vehicle-path{position:absolute;inset:0;width:100%;height:100%;z-index:0;fill:none;stroke:#a5b52c;stroke-width:3;stroke-linecap:round;opacity:0;transition:opacity .45s ease;pointer-events:none}
.vehicle-path path[pathLength]{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .9s cubic-bezier(.16,1,.3,1)}
.vehicle-path-dashes{stroke-width:2;stroke-dasharray:9 12}
.vehicle-path-field{stroke-width:2.5}
.vehicle-line h3{position:relative;width:fit-content;margin-inline:auto;isolation:isolate}
.vehicle-line h3:after{content:'';position:absolute;z-index:-1;left:-5px;right:-5px;bottom:0;height:35%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.16,1,.3,1)}
@media(hover:hover) and (pointer:fine){
  .vehicle-line:hover .vehicle-path{opacity:.65}
  .vehicle-line:hover .vehicle-path path[pathLength]{stroke-dashoffset:0}
  .vehicle-line:hover .vehicle-line-image>img{transform:translateX(-7px)}
  .vehicle-line:hover .vehicle-line-light .vehicle-pickup{transform:translate(9px,-4px)}
  .vehicle-line:hover .vehicle-line-light .vehicle-hatch{transform:translate(-10px,3px)}
  .vehicle-line:hover h3:after{transform:scaleX(1)}
}
@media(prefers-reduced-motion:reduce){
  .vehicle-lines .vehicle-line-image.reveal,.vehicle-lines .vehicle-line-image>img{transform:none!important;filter:none!important;opacity:1!important;transition:none!important}
  .vehicle-lines .vehicle-path,.vehicle-lines .vehicle-path path,.vehicle-lines .vehicle-line h3:after{transition:none!important}
}
.vehicle-line-light .vehicle-pickup{position:absolute;width:78%;height:auto;right:0;top:0}
.vehicle-line-light .vehicle-hatch{position:absolute;width:76%;height:auto;left:0;bottom:0}
.vehicle-line h3{font-size:clamp(22px,2vw,28px);font-weight:500;letter-spacing:-.04em}
.vehicle-line>p{font-size:14px;line-height:1.6;margin-top:8px;color:var(--muted)}
.vehicle-lines-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #cdd0bf;padding-top:24px}
.vehicle-lines-footer>p{font-size:14px;line-height:1.7;color:var(--muted);max-width:470px}
.vehicle-lines-footer .button{flex-shrink:0;background:var(--ink);color:var(--paper);font-size:14px;gap:22px}
.vehicle-lines-footer .button:hover{background:var(--accent);color:var(--ink)}
@media(min-width:1600px){.vehicle-lines{padding-left:max(7%,calc((100% - 1400px)/2));padding-right:max(7%,calc((100% - 1400px)/2))}}
@media(max-width:900px){.vehicle-lines{padding:0 6% 65px}.vehicle-lines-card{padding:36px 22px 26px}.vehicle-line{padding:0 12px}.vehicle-lines-footer{align-items:flex-start}.vehicle-lines-footer>p{max-width:300px}}
@media(max-width:620px){
  .vehicle-lines-card{padding:30px 22px 26px}
  .vehicle-lines-heading h2{font-size:32px}
  .vehicle-lines-grid{grid-template-columns:1fr;margin:26px 0}
  .vehicle-line{padding:0 0 26px}
  .vehicle-line+.vehicle-line{border-left:0;border-top:1px solid #cdd0bf;padding-top:24px}
  .vehicle-line:last-child{padding-bottom:0}
  .vehicle-line-image{max-width:330px;margin:0 auto 16px}
  .vehicle-line h3{font-size:25px}
  .vehicle-lines-footer{flex-direction:column;align-items:center;gap:20px;text-align:center}
  .vehicle-lines-footer>p{max-width:100%}
  .vehicle-lines-footer .button{max-width:100%;justify-content:center}
}
