/* Home */
.hero{position:relative;padding-top:clamp(28px,5vw,64px);overflow:hidden}
.hero::before{content:"";position:absolute;inset:-20% -10% auto auto;width:70vw;height:70vw;max-width:1000px;max-height:1000px;background:radial-gradient(closest-side,rgba(196,41,43,.16),transparent);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,4vw,64px);align-items:center}
.hero-txt .h1{margin:20px 0 22px;font-size:clamp(42px,4.9vw,72px);font-stretch:108%}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero-vitrine{position:relative;aspect-ratio:4/3;border-radius:28px;overflow:hidden;background:#000;box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.vit{position:absolute;inset:0;opacity:0;transition:opacity 1.2s var(--ease)}
.vit.on{opacity:1}
.vit img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);filter:blur(10px);transition:transform 7s linear,filter 1.2s var(--ease)}
.vit.on img{transform:scale(1);filter:none}
.hero-vitrine::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.55));pointer-events:none}
/* destaque: legenda embaixo da foto, sem caixa por cima do carro (pedido do João, 14/10) */
.hero-vitrine{aspect-ratio:auto;background:var(--card);border:1px solid var(--line)}
.hero-vitrine::before{content:"";display:block;padding-top:75%}
.hero-vitrine::after{display:none}
.vit{inset:0 0 auto 0;aspect-ratio:4/3}
.vit-tag{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;column-gap:16px;align-items:center;padding:16px 22px 18px}
.vit-tag:hover i{transform:translateX(3px)}
.vit-tag i{transition:transform .3s var(--ease)}
.vit-rot{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--red2);font-weight:700}
.vit-nome{font:700 19px/1.2 var(--fd);font-stretch:112%;margin-top:3px}
.vit-preco{font-size:13.5px;color:#d4d4d8}
.vit-tag i{grid-row:1/4;grid-column:2;align-self:center;width:32px;height:32px;border-radius:99px;background:var(--red);display:grid;place-items:center}
.vit-tag i svg{width:15px;height:15px}
.vit-pontos{position:absolute;right:18px;top:18px;z-index:2;display:flex;gap:6px}
.vit-pontos button{width:34px;height:20px;display:grid;place-items:center}
.vit-pontos span{display:block;width:100%;height:3px;border-radius:3px;background:rgba(255,255,255,.3);overflow:hidden;position:relative}
.vit-pontos .on span::after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;animation:barra 6s linear forwards}
@keyframes barra{from{transform:scaleX(0)}to{transform:scaleX(1)}}

.busca{position:relative;z-index:3;margin-top:clamp(28px,4vw,48px);background:var(--card);border:1px solid var(--line2);border-radius:24px;padding:10px 10px 16px;box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}
.busca-abas{display:flex;gap:4px;padding:4px;margin-bottom:8px}
.busca-abas button{padding:9px 16px;border-radius:99px;font-size:14px;font-weight:600;color:var(--mu);transition:all .2s}
.busca-abas button.on{background:rgba(255,255,255,.08);color:#fff}
.busca-campos{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px}
.bc{position:relative;display:block}
.bc span{position:absolute;left:17px;top:9px;font-size:11px;font-weight:600;color:var(--mu);letter-spacing:.06em;text-transform:uppercase;pointer-events:none}
.bc .inp{height:60px;padding-top:18px;border-radius:14px;background-color:var(--bg2)}
.busca-ir{height:60px;border-radius:14px;padding:0 28px}
.busca-atalhos{display:flex;flex-wrap:wrap;gap:8px;padding:14px 6px 0}
.busca-atalhos a{font-size:13px;font-weight:500;color:#d4d4d8;padding:7px 13px;border-radius:99px;background:rgba(255,255,255,.05);transition:background .2s,color .2s}
.busca-atalhos a:hover{background:#fff;color:#000}

.numeros{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:clamp(56px,7vw,90px)}
.numeros-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.numeros-grid>div{padding:clamp(26px,3.5vw,44px) 20px;border-left:1px solid var(--line)}
.numeros-grid>div:first-child{border-left:0;padding-left:0}
.numeros b{display:block;font:700 clamp(38px,5vw,64px)/1 var(--fd);font-stretch:115%;letter-spacing:-.03em}
.numeros span:not([data-odo]){display:block;margin-top:10px;color:var(--mu);font-size:14.5px}

.tipos{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.tipo{position:relative;display:flex;flex-direction:column;border-radius:var(--r2);background:var(--card);border:1px solid var(--line);overflow:hidden;transition:border-color .3s,transform .35s var(--ease)}
.tipo:hover{border-color:var(--line2);transform:translateY(-4px)}
.tipo-foto{aspect-ratio:4/3;background:#000 center/cover no-repeat;transition:transform .8s var(--ease)}
.tipo:hover .tipo-foto{transform:scale(1.04)}
.tipo-txt{padding:16px 18px 18px;position:relative;z-index:1}
.tipo-txt b{display:block;font:700 22px/1.1 var(--fd);font-stretch:115%}
.tipo-txt span{font-size:13.5px;color:var(--mu)}
.tipo i{position:absolute;right:14px;bottom:18px;width:34px;height:34px;border-radius:99px;border:1px solid var(--line2);display:grid;place-items:center;transition:all .3s;z-index:1}
.tipo i svg{width:15px;height:15px}
.tipo:hover i{background:var(--red);border-color:var(--red)}

.premium{position:relative;padding:clamp(80px,10vw,140px) 0;overflow:hidden;isolation:isolate}
.premium-bg{position:absolute;inset:0;z-index:-1}
.premium-bg img{width:100%;height:100%;object-fit:cover;opacity:.22;filter:grayscale(.3)}
.premium-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--bg) 0%,rgba(10,10,11,.75) 30%,rgba(10,10,11,.85) 70%,var(--bg) 100%)}
.premium-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.premium-grid .carro{background:rgba(20,20,24,.82);backdrop-filter:blur(6px)}

.passos{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.passo{position:relative;display:flex;flex-direction:column;gap:12px;padding:28px 24px;border-radius:var(--r2);background:var(--card);border:1px solid var(--line);transition:border-color .3s}
.passo:hover{border-color:var(--line2)}
.passo>*{position:relative;z-index:1}
.passo-n{position:absolute!important;right:22px;top:20px;font:700 15px var(--fd);color:var(--mu2)}
.passo i{width:52px;height:52px;border-radius:14px;background:var(--redbg);color:var(--red2);display:grid;place-items:center;margin-bottom:8px}
.passo i svg{width:26px;height:26px}
.passo p{color:var(--mu);font-size:15px;flex:1}
.passo .link{margin-top:8px;width:max-content}

.sim-home{padding:clamp(72px,9vw,120px) 0;background:linear-gradient(180deg,transparent,#0f0f12 20%,#0f0f12 80%,transparent)}
.sim-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:center}
.sim{display:grid;gap:12px}
.sim-linha{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:#d4d4d8;margin-top:6px}
.sim-linha output{font:700 20px var(--fd);font-stretch:110%;color:#fff}
.sim-res{margin-top:14px;padding:20px 22px;border-radius:16px;background:var(--bg2);border:1px solid var(--line);display:grid}
.sim-res span{font-size:13px;color:var(--mu)}
.sim-res b{font:700 clamp(34px,4vw,46px)/1.1 var(--fd);font-stretch:112%;color:#fff;margin-top:4px}
.sim-res small{color:var(--mu);font-size:13px;margin-top:4px}

.troca-band{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:0;border-radius:32px;overflow:hidden;background:linear-gradient(135deg,#1a0c0d,#141418 60%);border:1px solid var(--line)}
.troca-txt{padding:clamp(32px,5vw,72px);position:relative;z-index:1}
.troca-foto{position:relative;min-height:340px}
.troca-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.lojas-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.loja-m{display:flex;flex-direction:column;gap:6px;padding:24px;border-radius:var(--r2);background:var(--card);border:1px solid var(--line);transition:border-color .3s}
.loja-m:hover{border-color:var(--line2)}
.loja-m>*{position:relative;z-index:1}
.loja-m i{color:var(--red2);margin-bottom:8px}
.loja-m i svg{width:24px;height:24px}
.loja-m b{font:700 18px var(--fd);font-stretch:110%}
.loja-m span{color:var(--mu);font-size:14px}
.loja-m small{margin-top:auto;padding-top:10px;font-weight:600;font-size:14px}
.sec-hd [data-aberto]{display:flex;align-items:center;margin-top:10px;font-size:15px}

.faq-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,5vw,80px);align-items:start}

.cta-final{padding:clamp(80px,10vw,140px) 0;background:radial-gradient(60% 80% at 50% 100%,rgba(196,41,43,.28),transparent 70%);border-top:1px solid var(--line);text-align:center}
.cta-in{display:flex;flex-direction:column;align-items:center}
.cta-in .hero-ctas{justify-content:center}

@media (max-width:1100px){
  .tipos{grid-template-columns:repeat(3,1fr)}
  .passos{grid-template-columns:1fr 1fr}
  .lojas-mini{grid-template-columns:1fr 1fr}
  .premium-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .hero-vitrine{order:-1;border-radius:22px}
  .busca-campos{grid-template-columns:1fr 1fr}
  .busca-ir{grid-column:1/-1}
  .numeros-grid{grid-template-columns:1fr 1fr}
  .numeros-grid>div:nth-child(3){border-left:0;padding-left:0}
  .numeros-grid>div:nth-child(n+3){border-top:1px solid var(--line)}
  .sim-grid,.troca-band,.faq-wrap{grid-template-columns:1fr}
  .troca-foto{min-height:260px;order:-1}
}
@media (max-width:600px){
  .hero-txt .h1{margin:16px 0 18px}
  .hero-ctas{flex-direction:column;align-items:stretch}
  .hero-ctas .btn{width:100%}
  .sec-hd .h2 br{display:none}
  .cta-in .hero-ctas{width:100%}
  .vit-nome{font-size:16px}
  .vit-pontos{right:14px;top:14px;bottom:auto}
  .busca{padding:8px 8px 14px;border-radius:20px}
  .busca-campos{grid-template-columns:1fr}
  .busca-atalhos{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-8px;padding-inline:14px}
  .busca-atalhos a{white-space:nowrap}
  .tipos{grid-template-columns:1fr 1fr}
  .passos,.lojas-mini,.premium-grid{grid-template-columns:1fr}
  .numeros-grid>div{padding:22px 0 22px 16px}
  .numeros-grid>div:nth-child(odd){padding-left:0}
}

/* desempenho: no celular (ou sem mouse) a vitrine troca só com fade, sem desfoque nem zoom contínuo */
@media (hover:none),(max-width:900px){
  .vit img,.vit.on img{filter:none;transform:none;transition:none}
  .premium-bg img{opacity:.14}
}
.premium-bg img{filter:none}
.premium-grid .carro{backdrop-filter:none;background:rgba(20,20,24,.94)}
