/* ==========================================================================
   MODELO REVENDA DE VEÍCULOS (v1: Prime Cars Brasil, Criciúma)
   Showroom escuro: as luzes de LED acendem no topo, vitrine de destaques,
   estoque em cards lido de estoque.json, filtros, página de cada veículo
   com galeria e WhatsApp com o carro escolhido.
   ========================================================================== */
@font-face{font-family:"Unbounded";src:url("assets/fontes/unbounded.woff2") format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Manrope";src:url("assets/fontes/manrope.woff2") format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:"Michroma";src:url("assets/fontes/michroma.woff2") format("woff2");font-weight:400;font-display:swap}

:root{
  --preto:#0b0c0e;
  --grafite:#15171b;
  --grafite-2:#1e2126;
  --linha:rgba(233,236,239,.12);
  --cromo:#e9ecef;
  --prata:#a3abb5;           /* texto secundário no escuro */
  --laranja:#ff6b1a;         /* o laranja do painel do showroom */
  --laranja-escuro:#e2560a;
  --piso:#f2f3f5;            /* o piso branco do showroom */
  --tinta:#121418;           /* texto no claro */
  --cinza:#5b636e;           /* texto secundário no claro */

  --fonte-titulo:"Unbounded", "Arial Black", system-ui, sans-serif;
  --fonte-texto:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
  --fonte-tec:"Michroma", "Unbounded", sans-serif;
  --gutter:clamp(16px, 4.4vw, 64px);
  --max:1360px;
  --margem:max(var(--gutter), calc((100% - var(--max)) / 2 + var(--gutter)));
  --raio:22px;
  --raio-p:14px;
  --curva:cubic-bezier(.22,.8,.2,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip;scroll-padding-top:80px}
body{margin:0;background:var(--preto);color:var(--cromo);font-family:var(--fonte-texto);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
body.travado{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--laranja);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--laranja);color:#000;padding:10px 16px;border-radius:999px}
.skip:focus{left:8px}

/* ---------- tipografia ---------- */
h1,h2,h3{font-family:var(--fonte-titulo);font-weight:500;letter-spacing:-.03em;margin:0;text-wrap:balance}
h1 em,h2 em,h3 em{font-style:normal;font-weight:300;color:#b9c0c9}
.titulo{font-size:clamp(1.9rem, 4.6vw, 3.9rem);line-height:1.04}
.titulo--m{font-size:clamp(1.6rem, 3.2vw, 2.7rem)}
.lead{font-size:clamp(1rem, 1.25vw, 1.12rem);color:var(--prata);max-width:48ch;margin:16px 0 0}
.rotulo{font-family:var(--fonte-tec);font-size:clamp(.62rem, 2.6vw, .72rem);letter-spacing:clamp(.1em, .6vw, .18em);text-transform:uppercase;color:var(--laranja);margin:0 0 14px}
[data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .06em .1em 0;margin:0 -.06em -.1em 0}
[data-split] .w > span{display:inline-block}

/* ---------- botões ---------- */
.btn{
  --bg:var(--cromo);--fg:var(--preto);
  display:inline-flex;align-items:center;justify-content:center;gap:10px;max-width:100%;
  min-height:52px;padding:0 24px;border-radius:12px;border:1.5px solid transparent;
  background:var(--bg);color:var(--fg);text-decoration:none;font-weight:700;font-size:.98rem;white-space:nowrap;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.btn svg{width:20px;height:20px;flex:none;fill:currentColor}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(1px)}
.btn--laranja{--bg:var(--laranja);--fg:#140800}
.btn--laranja:hover{--bg:#ff8340;box-shadow:0 12px 30px -12px rgba(255,107,26,.7)}
.btn--claro{--bg:var(--cromo);--fg:var(--preto)}
.btn--claro:hover{--bg:#fff}
.btn--escuro{--bg:var(--tinta);--fg:#fff}
.btn--escuro:hover{--bg:#000}
.btn--linha{--bg:transparent;--fg:currentColor;border-color:currentColor}
.btn--linha:hover{--bg:rgba(127,127,127,.12)}
.btn--pequeno{min-height:42px;padding:0 16px;font-size:.88rem}
.btn--grande{min-height:58px;padding:0 28px;font-size:1.02rem}
.btn svg.inv{transform:scaleX(-1)}
@media (max-width:699px){ .btn{white-space:normal;text-align:center;line-height:1.25} }
/* brilho prateado (reduced-motion desliga) */
.btn--brilho{position:relative;overflow:hidden;isolation:isolate}
.btn--brilho::after{
  content:"";position:absolute;top:-30%;bottom:-30%;left:0;width:34%;pointer-events:none;
  background:linear-gradient(100deg, rgba(255,255,255,0) 0%, rgba(232,236,242,.14) 30%, rgba(246,248,252,.66) 50%, rgba(232,236,242,.14) 70%, rgba(255,255,255,0) 100%);
  transform:translateX(-180%) skewX(-20deg);opacity:0;
  animation:brilho 6s cubic-bezier(.45,0,.2,1) var(--brilho-atraso, 2.4s) infinite;
}
@keyframes brilho{0%{transform:translateX(-180%) skewX(-20deg);opacity:0}3%{opacity:1}20%{transform:translateX(360%) skewX(-20deg);opacity:1}23%,100%{transform:translateX(360%) skewX(-20deg);opacity:0}}

/* ---------- topo ---------- */
.topo{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:24px;padding:14px var(--gutter);transition:transform .4s var(--curva),background .3s ease,box-shadow .3s ease}
.topo.solido{background:rgba(11,12,14,.88);box-shadow:0 1px 0 var(--linha);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.topo.escondido{transform:translateY(-110%)}
.topo__marca{display:block;line-height:0;margin-right:auto;color:var(--cromo)}
.topo__marca svg{width:160px;height:auto;fill:currentColor}
.topo__nav{display:none;gap:28px;font-size:.92rem;font-weight:600;color:var(--prata)}
.topo__nav a{text-decoration:none;transition:color .2s ease}
.topo__nav a:hover{color:#fff}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;isolation:isolate;padding:96px var(--gutter) 40px;
  background:radial-gradient(120% 70% at 70% 0%, #23262c 0%, var(--preto) 60%)}
.hero__led{position:absolute;left:50%;top:0;width:max(1100px, 120%);height:auto;transform:translateX(-50%);z-index:-1;opacity:.9;-webkit-mask-image:linear-gradient(#000 20%, transparent 85%);mask-image:linear-gradient(#000 20%, transparent 85%)}
.hero__led path{fill:none;stroke:#fff;stroke-width:3;stroke-linejoin:round;opacity:.05;filter:drop-shadow(0 0 0 rgba(255,255,255,0))}
.hero.aceso .hero__led path{animation:acende .9s steps(1) var(--d) forwards}
@keyframes acende{0%{opacity:.05}20%{opacity:.4}30%{opacity:.06}45%,100%{opacity:.22;filter:drop-shadow(0 0 6px rgba(255,255,255,.6))}}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent, var(--preto));z-index:-1;pointer-events:none}
.hero__in{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.hero__in > *,.ficha__in > *,.negocio__in > *,.prova__in > *,.loja__in > *{min-width:0}
.hero h1{font-size:clamp(2.1rem, 8.4vw, 4.4rem);line-height:1.04;letter-spacing:-.045em}
.hero h1 .l{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.hero__lead{color:var(--prata);font-size:clamp(1rem, 1.3vw, 1.12rem);max-width:44ch;margin:18px 0 22px}

.busca{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:rgba(30,33,38,.72);border:1px solid var(--linha);border-radius:18px;padding:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:640px}
.busca__campo{display:flex;flex-direction:column;gap:2px;background:var(--grafite);border-radius:12px;padding:8px 12px 6px;min-width:0}
.busca__campo span{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--prata)}
.busca__campo select{appearance:none;-webkit-appearance:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23a3abb5' stroke-width='1.6'/%3E%3C/svg%3E") right 2px center no-repeat;border:0;padding:4px 18px 4px 0;font-weight:700;font-size:1rem;min-height:32px;width:100%}
.busca__campo select option{color:#000}
.busca__campo:first-child{grid-column:1 / -1}
.busca__ir{grid-column:1 / -1;min-height:56px}

.palco{position:relative}
.palco__fotos{position:relative;aspect-ratio:4/3;border-radius:var(--raio);overflow:hidden;background:var(--grafite);box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.palco__carro{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s ease}
.palco__carro.ativo{opacity:1}
.palco__carro img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 6s linear}
.palco__carro.ativo img{transform:scale(1)}
.palco__reflexo{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg, transparent 30%, rgba(255,255,255,.22) 45%, transparent 60%);transform:translateX(-120%)}
.palco__reflexo.passa{animation:reflexo 1.3s var(--curva)}
@keyframes reflexo{to{transform:translateX(120%)}}
.palco__lista{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px, 44%);gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory}
.palco__lista::-webkit-scrollbar{display:none}
.palco__item{position:relative;text-align:left;background:var(--grafite);border:1px solid var(--linha);border-radius:12px;padding:10px 12px 12px;overflow:hidden;scroll-snap-align:start;transition:border-color .25s ease,background .25s ease}
.palco__item b{display:block;font-size:.86rem;line-height:1.25}
.palco__item span{display:block;font-size:.8rem;color:var(--prata);margin-top:2px;font-variant-numeric:tabular-nums}
.palco__item i{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--laranja);transform:scaleX(0);transform-origin:left}
.palco__item.ativo{border-color:rgba(255,107,26,.6);background:var(--grafite-2)}
.palco__item.ativo i{animation:progresso var(--tempo, 5s) linear forwards}
@keyframes progresso{to{transform:scaleX(1)}}

/* ---------- faixa de marcas ---------- */
.marcas{border-block:1px solid var(--linha);padding:18px 0;overflow:hidden}
.marcas__trilho{display:flex;width:max-content;animation:faixa 30s linear infinite}
.marcas__trilho span{font-family:var(--fonte-tec);font-size:clamp(.95rem, 1.6vw, 1.3rem);letter-spacing:.14em;text-transform:uppercase;color:var(--prata);padding:0 1.6em;white-space:nowrap;display:flex;align-items:center}
.marcas__eco{display:flex !important;padding:0 !important}
@keyframes faixa{to{transform:translateX(-50%)}}

/* ---------- cabeçalho ---------- */
.cab{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}

/* ---------- estoque (claro, como o piso do showroom) ---------- */
.estoque{background:var(--piso);color:var(--tinta);padding:72px 0 96px}
.estoque .titulo em{color:var(--cinza)}
.estoque .lead{color:var(--cinza)}
.filtros{position:relative;z-index:20;max-width:var(--max);margin:26px auto 0;padding:12px var(--gutter);background:rgba(242,243,245,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:top .4s var(--curva)}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;min-height:42px;padding:0 16px;border-radius:999px;border:1.5px solid rgba(18,20,24,.16);background:#fff;font-weight:700;font-size:.88rem;color:var(--cinza);transition:all .2s ease}
.chip:hover{border-color:var(--tinta);color:var(--tinta)}
.chip[aria-pressed="true"]{background:var(--tinta);border-color:var(--tinta);color:#fff}
.filtros__linha{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.filtro{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid rgba(18,20,24,.1);border-radius:12px;padding:6px 12px;min-width:0}
.filtro > span{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--cinza)}
.filtro__valor{font-size:.92rem;font-weight:700;color:var(--tinta);line-height:1.2}
.filtro select{appearance:none;-webkit-appearance:none;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235b636e' stroke-width='1.6'/%3E%3C/svg%3E") right 2px center no-repeat;font-weight:700;padding:2px 18px 2px 0;min-height:30px;width:100%}
.filtro--preco input{width:100%;accent-color:var(--laranja);min-height:30px}
.filtro--check{flex-direction:row;align-items:center;gap:10px;font-weight:700;font-size:.9rem;cursor:pointer}
.filtro--check input{width:20px;height:20px;accent-color:var(--laranja)}
.filtros__conta{margin:8px 0 0;font-size:.86rem;font-weight:600;color:var(--cinza)}
.grade{max-width:var(--max);margin:12px auto 0;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.carro{position:relative;background:#fff;border-radius:var(--raio);overflow:hidden;box-shadow:0 1px 0 rgba(18,20,24,.06),0 22px 40px -32px rgba(18,20,24,.5);display:flex;flex-direction:column;transition:transform .35s var(--curva),box-shadow .35s ease}
.carro.entra{animation:entra .55s var(--curva) both;animation-delay:var(--atraso, 0s)}
@keyframes entra{from{opacity:0;transform:translateY(22px)}}
.carro__foto{position:relative;aspect-ratio:4/3;overflow:hidden;background:#e4e6ea;display:block}
.carro__foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .45s ease,transform .8s var(--curva)}
.carro__foto img + img{opacity:0}
.carro:hover .carro__foto img + img{opacity:1}
.carro:hover .carro__foto img{transform:scale(1.03)}
.carro__tag{position:absolute;top:12px;left:12px;z-index:2;background:rgba(11,12,14,.82);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:999px}
.carro__fotos{position:absolute;bottom:10px;right:10px;z-index:2;background:rgba(11,12,14,.7);color:#fff;font-size:.72rem;font-weight:700;padding:4px 8px;border-radius:8px}
.carro__info{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
.carro__nome{font-family:var(--fonte-titulo);font-weight:500;font-size:1.12rem;letter-spacing:-.02em;line-height:1.2;margin:0}
.carro__nome small{display:block;font-family:var(--fonte-texto);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cinza);margin-bottom:4px}
.carro__specs{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.carro__specs li{font-size:.8rem;font-weight:600;color:var(--cinza);background:var(--piso);border-radius:8px;padding:4px 8px;font-variant-numeric:tabular-nums}
.carro__preco{font-family:var(--fonte-titulo);font-size:1.45rem;font-weight:600;letter-spacing:-.03em;margin:auto 0 0;font-variant-numeric:tabular-nums}
.carro__acoes{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.carro__acoes .btn{min-height:46px;padding:0 10px;font-size:.88rem}
.carro__link{position:absolute;inset:0;z-index:1}
.carro__link:focus-visible{outline-offset:-4px;border-radius:var(--raio)}
.carro__acoes{position:relative;z-index:2}
.vazio{max-width:var(--max);margin:20px auto 0;padding:28px var(--gutter);text-align:center}
.vazio p{color:var(--cinza)}

/* ---------- troca e financiamento ---------- */
.negocio{padding:88px var(--gutter);background:linear-gradient(180deg, var(--preto), #101215)}
.negocio__in{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.painel{border-radius:var(--raio);padding:30px 22px;border:1px solid var(--linha);background:var(--grafite);position:relative;overflow:hidden}
.painel--troca{background:radial-gradient(90% 80% at 100% 0%, rgba(255,107,26,.16), transparent 60%), var(--grafite)}
.form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:24px}
.campo{display:flex;flex-direction:column;gap:6px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--prata)}
.campo--largo{grid-column:1 / -1}
.campo input{width:100%;min-width:0;font-size:1rem;letter-spacing:0;text-transform:none;font-weight:600;background:var(--preto);border:1.5px solid var(--linha);border-radius:12px;padding:12px 14px;min-height:52px;color:#fff}
.campo input::placeholder{color:#6b737d}
.campo input:focus{outline:none;border-color:var(--laranja);box-shadow:0 0 0 3px rgba(255,107,26,.2)}
.fin{display:grid;gap:18px;margin-top:24px}
.fin__linha{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px 14px;font-weight:700}
.fin__linha > span{color:var(--prata);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.fin__linha b{justify-self:end;font-family:var(--fonte-titulo);font-size:1.5rem;font-weight:500}
.fin__linha input[type=range]{grid-column:1 / -1;width:100%;accent-color:var(--laranja);min-height:32px}
.fin__opcoes{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.fin__opcoes input{position:absolute;opacity:0}
.fin__opcoes span{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:12px;border:1.5px solid var(--linha);font-weight:700;cursor:pointer;transition:all .2s ease}
.fin__opcoes input:checked + span{border-color:var(--laranja);background:rgba(255,107,26,.12);color:#fff}
.fin__opcoes input:focus-visible + span{outline:3px solid var(--laranja);outline-offset:2px}

/* ---------- prova ---------- */
.prova{padding:88px 0;background:#101215}
.numeros{max-width:var(--max);margin:36px auto 0;padding:0 var(--gutter);display:grid;gap:12px}
.numero{border-top:1px solid var(--linha);padding:18px 0 4px;display:flex;align-items:baseline;gap:16px}
.numero b{font-family:var(--fonte-titulo);font-size:clamp(2.6rem, 6vw, 4.6rem);font-weight:500;letter-spacing:-.05em;line-height:1;min-width:2.3em;font-variant-numeric:tabular-nums}
.numero b small{font-size:.35em;letter-spacing:0;font-weight:400;color:var(--prata)}
.numero > span{color:var(--prata);max-width:22ch}
.prova__in{max-width:var(--max);margin:44px auto 0;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.entrega{margin:0;max-width:420px}
.entrega img{border-radius:var(--raio);width:100%;aspect-ratio:530/630;object-fit:cover}
.entrega figcaption{margin-top:12px;font-weight:700;font-size:.95rem}
.entrega figcaption span{display:block;font-weight:500;color:var(--prata)}
.reviews{display:grid;gap:12px}
.review{margin:0;background:var(--grafite);border:1px solid var(--linha);border-radius:var(--raio-p);padding:20px}
.review__estrelas{color:#ffb020;letter-spacing:.12em;font-size:.9rem}
.review blockquote{margin:10px 0 0;font-size:1rem;line-height:1.55}
.review figcaption{margin-top:12px;font-weight:700;font-size:.88rem;display:flex;justify-content:space-between;color:var(--prata)}
.review figcaption span{color:var(--laranja);font-weight:600}

/* ---------- loja ---------- */
.loja{position:relative;background:var(--preto)}
.loja__foto{position:relative;height:clamp(300px, 70vw, 640px);overflow:hidden}
.loja__foto img{width:100%;height:100%;object-fit:cover}
.loja__foto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(11,12,14,0) 40%, var(--preto))}
.loja__in{max-width:var(--max);margin:-90px auto 0;padding:0 var(--gutter) 88px;position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.loja__card{background:var(--grafite);border:1px solid var(--linha);border-radius:var(--raio);padding:28px 22px}
.loja__end{color:var(--prata);margin:14px 0 16px}
.horas{width:100%;border-collapse:collapse;font-size:.95rem}
.horas td{padding:7px 0;border-bottom:1px dashed var(--linha)}
.horas td:last-child{text-align:right}
.horas tr.hoje td{color:var(--laranja);font-weight:700}
.loja__acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.loja__fones{margin:16px 0 0;font-size:.9rem;color:var(--prata)}
.loja__fones a{white-space:nowrap}
@media (max-width:480px){ .ficha__cod{visibility:hidden} }
.mapa{border-radius:var(--raio);overflow:hidden;min-height:320px;background:var(--grafite);border:1px solid var(--linha)}
.mapa iframe{width:100%;height:100%;min-height:320px;border:0;display:block;filter:grayscale(1) invert(.92) contrast(.9)}

/* ---------- final e rodapé ---------- */
.final{text-align:center;padding:100px var(--gutter);background:radial-gradient(70% 90% at 50% 100%, rgba(255,107,26,.18), transparent 70%), var(--preto);border-top:1px solid var(--linha)}
.final h2{font-size:clamp(2rem, 6vw, 4.6rem);line-height:1.02;max-width:16ch;margin:0 auto}
.final p{color:var(--prata);margin:18px auto 28px;max-width:44ch}
.rodape{background:#070809;color:var(--prata);padding:52px var(--gutter) 110px;font-size:.92rem;border-top:1px solid var(--linha)}
.rodape__in{max-width:var(--max);margin:0 auto;display:grid;gap:26px}
.rodape__marca{width:180px;height:auto;fill:var(--cromo);color:var(--cromo)}
.rodape h3{font-family:var(--fonte-tec);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--laranja);margin-bottom:8px;font-weight:400}
.rodape p{margin:0}
.rodape a{text-decoration:none}
.rodape a:hover{color:#fff}
.rodape__fim{max-width:var(--max);margin:34px auto 0;padding-top:18px;border-top:1px solid var(--linha);font-size:.8rem;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}

/* ---------- página do veículo ---------- */
.ficha{position:fixed;inset:0;z-index:90;background:var(--preto);overflow:auto;overscroll-behavior:contain;opacity:0;transform:translateY(24px);transition:opacity .35s ease,transform .45s var(--curva)}
.ficha.aberta{opacity:1;transform:none}
.ficha[hidden]{display:none}
.ficha__barra{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:12px;padding:12px var(--gutter);background:rgba(11,12,14,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--linha)}
.ficha__voltar,.ficha__share{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border-radius:10px;border:1px solid var(--linha);background:transparent;font-weight:700;font-size:.9rem}
.ficha__voltar svg{width:18px;height:18px;transform:scaleX(-1)}
.ficha__cod{margin-left:auto;font-family:var(--fonte-tec);font-size:.72rem;letter-spacing:.14em;color:var(--prata)}
.ficha__in{max-width:var(--max);margin:0 auto;padding:16px var(--gutter) 120px;display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.galeria__principal{position:relative;border-radius:var(--raio);overflow:hidden;background:var(--grafite)}
.galeria__trilho{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:4/3}
.galeria__trilho::-webkit-scrollbar{display:none}
.galeria__trilho img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:center}
.galeria__seta{position:absolute;top:50%;width:46px;height:46px;margin-top:-23px;border-radius:50%;border:0;background:rgba(11,12,14,.65);display:grid;place-items:center;color:#fff}
.galeria__seta svg{width:20px;height:20px}
.galeria__seta--ant{left:10px}
.galeria__seta--ant svg{transform:scaleX(-1)}
.galeria__seta--prox{right:10px}
.galeria__n{position:absolute;right:12px;bottom:12px;background:rgba(11,12,14,.7);border-radius:8px;padding:4px 10px;font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums}
.galeria__miniaturas{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:none}
.galeria__miniaturas::-webkit-scrollbar{display:none}
.galeria__miniaturas button{flex:none;width:84px;aspect-ratio:4/3;border-radius:10px;overflow:hidden;border:2px solid transparent;padding:0;background:var(--grafite);opacity:.6;transition:opacity .2s ease,border-color .2s ease}
.galeria__miniaturas button.ativo{border-color:var(--laranja);opacity:1}
.galeria__miniaturas img{width:100%;height:100%;object-fit:cover}
.ficha__dados h2{font-size:clamp(1.8rem, 4vw, 3rem);line-height:1.05}
.ficha__dados .rotulo{margin-bottom:8px}
.ficha__versao{color:var(--prata);margin:8px 0 0;font-size:.95rem}
.ficha__preco{font-family:var(--fonte-titulo);font-size:clamp(1.8rem, 3.6vw, 2.6rem);font-weight:600;letter-spacing:-.04em;margin:18px 0;font-variant-numeric:tabular-nums}
.specs{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--linha);border:1px solid var(--linha);border-radius:var(--raio-p);overflow:hidden;margin:0}
.specs div{background:var(--grafite);padding:12px 14px}
.specs dt{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--prata)}
.specs dd{margin:2px 0 0;font-weight:700;font-variant-numeric:tabular-nums}
.ficha__acoes{display:grid;gap:10px;margin:22px 0}
.ficha__sub{font-family:var(--fonte-tec);font-weight:400;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--laranja);margin:26px 0 12px}
.opcionais{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.opcionais li{border:1px solid var(--linha);border-radius:999px;padding:6px 12px;font-size:.85rem;color:var(--cromo)}
.ficha__desc{color:var(--prata);font-size:.92rem;margin-top:18px}
.ficha__desc:empty{display:none}
.ficha__nav{display:flex;justify-content:space-between;gap:10px;margin-top:26px}
/* celular: barra fixa com preço e "Tenho interesse" na página do veículo */
.ficha__fixo{position:fixed;left:0;right:0;bottom:0;z-index:5;display:flex;align-items:center;gap:12px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(11,12,14,.95);border-top:1px solid var(--linha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ficha__fixo div{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}
.ficha__fixo b{font-family:var(--fonte-titulo);font-size:1.15rem;font-weight:600;letter-spacing:-.03em;white-space:nowrap}
.ficha__fixo span{font-size:.78rem;color:var(--prata);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ficha__fixo .btn{flex:none;min-height:48px;padding:0 16px;white-space:nowrap}

/* ---------- flutuantes ---------- */
.flutua{position:fixed;right:18px;bottom:18px;z-index:60;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 16px 30px -12px rgba(0,0,0,.6);transform:translateY(120%) scale(.8);opacity:0;transition:transform .45s var(--curva),opacity .3s ease}
.flutua svg{width:30px;height:30px;fill:currentColor}
.flutua.visivel{transform:none;opacity:1}
.barra{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(11,12,14,.94);border-top:1px solid var(--linha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(110%);transition:transform .4s var(--curva)}
.barra.visivel{transform:none}
.barra .btn{flex:1;min-height:50px;font-size:.95rem}
.barra .btn--escuro{--bg:var(--grafite-2);border-color:var(--linha)}

/* ==================== tablet ==================== */
@media (min-width:700px){
  .busca{grid-template-columns:repeat(3, 1fr)}
  .busca__campo:first-child{grid-column:auto}
  .grade{grid-template-columns:repeat(2, minmax(0,1fr));gap:20px}
  .filtros__linha{grid-template-columns:1fr 1.4fr auto 1fr}
  .negocio__in{grid-template-columns:1.15fr .85fr}
  .numeros{grid-template-columns:repeat(3, 1fr);gap:28px}
  .reviews{grid-template-columns:1fr 1fr}
  .specs{grid-template-columns:repeat(3, 1fr)}
  .ficha__acoes{grid-template-columns:1fr 1fr}
  .ficha__acoes .btn--grande{grid-column:1 / -1}
}

/* ==================== computador ==================== */
@media (min-width:1024px){
  .topo{padding-left:var(--margem);padding-right:var(--margem)}
  .topo__marca svg{width:200px}
  .topo__nav{display:flex}
  .barra{display:none}
  .hero{padding:120px var(--margem) 64px}
  .hero__in{grid-template-columns:minmax(0, .95fr) minmax(0, 1.05fr);gap:56px;align-items:center;min-height:min(760px, calc(100vh - 140px))}
  .palco__lista{grid-auto-flow:row;grid-template-columns:repeat(4, 1fr);overflow:visible}
  .busca{grid-template-columns:.9fr 1fr 1.25fr auto}
  .busca__ir{grid-column:auto;padding:0 22px}
  .estoque{padding:110px 0 130px}
  .cab{display:grid;grid-template-columns:1fr auto;align-items:end;gap:40px}
  .cab .lead{justify-self:end;text-align:right}
  .filtros{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px 18px}
  .filtros__linha{margin-top:0}
  .filtros__conta{grid-column:1 / -1}
  .grade{grid-template-columns:repeat(3, minmax(0,1fr));gap:24px}
  .carro:hover{transform:translateY(-6px);box-shadow:0 1px 0 rgba(18,20,24,.06),0 40px 60px -36px rgba(18,20,24,.55)}
  .negocio{padding:130px var(--margem)}
  .painel{padding:44px 40px}
  .prova{padding:130px 0}
  .prova__in{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:40px;align-items:start}
  .entrega{position:sticky;top:110px}
  .loja__in{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);margin-top:-200px;padding-bottom:130px}
  .loja__card{padding:40px}
  .final{padding:150px var(--gutter)}
  .rodape{padding-bottom:52px;padding-left:var(--margem);padding-right:var(--margem)}
  .rodape__in{grid-template-columns:1.4fr 1fr 1fr 1fr}
  .ficha__in{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:40px;align-items:start;padding-top:28px}
  .galeria{position:sticky;top:90px}
  .ficha__barra{padding-left:var(--margem);padding-right:var(--margem)}
  .ficha__acoes{grid-template-columns:1fr}
  .ficha__fixo{display:none}
  .filtros{position:sticky;top:0}
  body.topo-visivel .filtros{top:72px}
}
@media (min-width:1280px){ .grade{grid-template-columns:repeat(4, minmax(0,1fr))} }

/* ==================== sem animação ==================== */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .hero__led path{opacity:.18}
  .marcas__trilho{flex-wrap:wrap;justify-content:center;width:auto}
  .marcas__eco{display:none !important}
}
