.hero-layout{grid-template-columns:1.05fr .95fr}
.hero h1{font-size:clamp(48px,5.1vw,70px)}
.hero-visual{position:relative;align-self:center;min-height:500px;display:flex;align-items:center;justify-content:center}
.hero-car{position:absolute;z-index:1;width:min(720px,62vw);max-width:none;right:-130px;top:10px;filter:drop-shadow(0 28px 22px #0003);animation:car-in .8s ease-out both}
.hero-visual .diagnosis{position:absolute;z-index:2;right:0;bottom:0}
@keyframes car-in{from{opacity:0;transform:translateX(55px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:900px){.hero-visual{min-height:540px}.hero-car{width:min(760px,110vw);right:50%;transform:translateX(50%);top:0;animation:none}.hero-visual .diagnosis{right:0;bottom:0;left:0}}
@media(max-width:600px){.hero h1{font-size:44px}.hero-visual{min-height:420px}.hero-car{width:120vw;top:10px}.hero-visual .diagnosis{bottom:0}}
@media(prefers-reduced-motion:reduce){.hero-car{animation:none}}

/* Mantém a transição do mapa suave sem encobrir o cartão da empresa. */
.map-fade{height:52px;background:linear-gradient(var(--light),rgba(242,243,241,.35),transparent)}

@media(max-width:900px){
  .hero-layout{display:flex;flex-direction:column;gap:0}
  .hero-layout>div:first-child{display:contents}
  .hero .kicker{order:0}
  .hero h1{order:1;max-width:100%}
  .hero-copy{order:2;max-width:100%}
  .hero .button-row{order:3}
  .hero-visual{order:4;min-height:0;margin-top:30px;display:flex;flex-direction:column;align-items:center;overflow:visible}
  .hero-car{position:relative;order:1;width:min(760px,112vw);max-width:none;right:auto;top:auto;transform:none;animation:none;margin:0 -6vw}
  .hero-visual .diagnosis{position:relative;order:2;inset:auto;width:100%;max-width:none;margin:-18px 0 0}
  .hero .stats{order:5;width:100%;max-width:none;margin-top:30px}
}

@media(max-width:600px){
  .hero{padding-bottom:56px}
  .hero h1{font-size:clamp(40px,11.5vw,48px);overflow-wrap:break-word}
  .hero-copy{font-size:18px}
  .hero .button-row .btn{width:100%}
  .hero-car{width:116vw;margin-inline:-8vw}
  .hero-visual .diagnosis{margin-top:-10px}
  .hero .stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .hero .stats strong{font-size:17px}
}
