:root{
  --navy:#0c1b33;
  --navy-dark:#08111f;
  --gold:#c8952e;
  --gold-dark:#a5761e;
  --bg:#ffffff;
  --bg-alt:#f4f6f9;
  --card-border:#e4e7ec;
  --text:#16202e;
  --text-dim:#5b6472;
  --radius:16px;
  --wrap:1200px;
  --font-heading:'DM Sans',sans-serif;
  --topbar-h:40px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'DM Sans','Segoe UI',Roboto,-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:var(--font-heading);color:var(--navy)}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul{list-style:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 24px;border-radius:10px;font-weight:700;font-size:.95rem;
  border:1px solid transparent;white-space:nowrap;cursor:pointer;
  transition:filter .2s ease, background .2s ease, border-color .2s ease, opacity .2s ease;
}
.btn:active{transform:scale(.98)}
.btn-primary{background:var(--gold);color:var(--navy-dark)}
.btn-primary:hover{filter:brightness(1.08)}
.btn-dark{background:var(--navy);color:#fff}
.btn-dark:hover{filter:brightness(1.2)}
.btn-ghost{background:transparent;color:var(--navy);border-color:var(--card-border)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-dark)}
.btn-lg{padding:16px 32px;font-size:1rem}
.btn-sm{padding:9px 16px;font-size:.82rem}

/* Topbar (I4 — selo real do Google + telefone) */
.topbar{background:var(--navy-dark);font-size:.82rem;color:#c3cade;height:var(--topbar-h)}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;height:var(--topbar-h);padding:0 24px;gap:10px}
.topbar-rating{display:flex;align-items:center;gap:6px;font-weight:600}
.topbar-rating .stars{color:var(--gold);letter-spacing:1px}
.topbar-inner a{color:#c3cade;flex-shrink:0}
.topbar-inner a:hover{color:var(--gold)}

/* Header (J5 — logo centralizado, nav dividida) */
.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--card-border)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px}
.brand{display:flex;align-items:center;gap:8px;color:var(--navy);flex-shrink:0}
.brand-mark{width:32px;height:32px;color:var(--gold)}
.brand-text{font-family:var(--font-heading);font-weight:800;letter-spacing:-.01em;font-size:1.2rem;color:var(--navy)}
.brand-text em{font-style:normal;color:var(--gold)}
.nav-block{display:flex;gap:22px;align-items:center;margin-left:auto}
.main-nav a{color:var(--text-dim);font-weight:600;font-size:.94rem;transition:color .2s}
.main-nav a:hover{color:var(--navy)}
.header-cta{margin-left:8px}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px}
.nav-toggle span{width:22px;height:2px;background:var(--navy)}
.main-nav-mobile{display:none}

/* Hero (A6 — floating search card) */
.hero{position:relative;padding:36px 0 0;background:var(--navy)}
.hero-bg{position:absolute;inset:0;overflow:hidden}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.42}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,17,31,.75),rgba(8,17,31,.92))}
.hero-inner{position:relative;text-align:center;max-width:680px;margin:0 auto}
.eyebrow{color:var(--gold);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;margin-bottom:14px}
.hero h1{font-size:clamp(1.9rem,5.5vw,3rem);font-weight:800;line-height:1.1;color:#fff}
.hero h1 span{color:var(--gold)}
.hero-sub{margin-top:14px;font-size:1.02rem;color:#c3cade}

.busca-flutuante{position:relative;max-width:920px;margin:26px auto -56px;background:#fff;border-radius:var(--radius);border:1px solid var(--card-border);padding:22px;display:flex;flex-direction:column;gap:14px;box-sizing:border-box}
.busca-flutuante h3{font-size:1rem;margin-bottom:2px}
.busca-grid{display:grid;grid-template-columns:1fr;gap:12px}
.busca-field{display:flex;flex-direction:column;gap:6px}
.busca-field label{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}
.busca-field select{
  appearance:none;background:var(--bg-alt) url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%235b6472%22 d=%22M7 10l5 5 5-5z%22/%3E%3C/svg%3E') no-repeat right 14px center/14px;
  border:1px solid var(--card-border);border-radius:10px;padding:11px 34px 11px 14px;font-size:.92rem;color:var(--text);
}
.busca-flutuante .btn{width:100%}

/* Section head */
.section-head{max-width:640px;margin-bottom:40px}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center}
.section-head h2{font-size:clamp(1.7rem,3.5vw,2.2rem);font-weight:800;margin-top:4px}
.section-head h2.h2-compact{font-size:1.3rem;margin-top:2px;line-height:1.2}
.section-sub{color:var(--text-dim);margin-top:12px}

/* Vitrine anotada (C5) — carrossel com 1 veículo em destaque ao centro */
.vitrine-anotada{padding:56px 0 60px}
.anotada-media{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--card-border);background:var(--bg-alt)}
.anotada-media img{width:100%;height:280px;object-fit:cover}
.hotspot{position:absolute;width:26px;height:26px;border-radius:50%;background:rgba(200,149,46,.35);border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;cursor:pointer}
.hotspot::after{content:"+";color:#fff;font-weight:800;font-size:.9rem}
.hotspot-tip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);background:var(--navy-dark);color:#fff;padding:8px 12px;border-radius:8px;font-size:.78rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}
.hotspot:hover .hotspot-tip,.hotspot:focus .hotspot-tip{opacity:1}
.anotada-card{background:var(--bg-alt);border:1px solid var(--card-border);border-radius:var(--radius);padding:26px}
.anotada-card .eyebrow{margin-bottom:8px}
.anotada-card h3{font-size:1.4rem;margin-bottom:6px}
.anotada-meta{color:var(--text-dim);font-size:.9rem;margin-bottom:14px}
.anotada-price{font-size:1.6rem;font-weight:800;color:var(--navy);margin-bottom:16px}

.carrossel-destaque{display:flex;align-items:center;gap:10px}
.carrossel-track{flex:1;display:flex;align-items:stretch;gap:14px;overflow:hidden}
.slide-center{flex:1 1 auto;display:flex;flex-direction:column;gap:0}
.slide-side{flex:0 0 auto;width:90px;border-radius:12px;overflow:hidden;border:1px solid var(--card-border);cursor:pointer;opacity:.55;transition:opacity .2s,transform .2s;display:none;background:none}
.slide-side img{width:100%;height:120px;object-fit:cover;display:block}
.slide-side:hover{opacity:.85}
.carrossel-arrow{flex-shrink:0;width:38px;height:38px;border-radius:50%;border:1px solid var(--card-border);background:#fff;color:var(--navy);font-size:1.3rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.carrossel-arrow:hover{border-color:var(--gold);color:var(--gold-dark)}
.carrossel-dots{display:flex;justify-content:center;gap:8px;margin-top:18px}
.carrossel-dots .dot{width:8px;height:8px;border-radius:50%;background:var(--card-border);border:none;cursor:pointer;padding:0}
.carrossel-dots .dot.is-active{background:var(--gold);width:22px;border-radius:4px;transition:width .2s}
.slide-center-inner{display:flex;flex-direction:column;gap:20px}
.anotada-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.anotada-specs li{font-size:.85rem;color:var(--text-dim);padding-left:16px;position:relative}
.anotada-specs li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--gold)}

/* Navegar por tipo (D) */
.por-tipo{padding:60px 0;background:var(--bg-alt)}
.tipo-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tipo-card{position:relative;border-radius:var(--radius);overflow:hidden;height:150px;display:flex;align-items:flex-end;padding:16px}
.tipo-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tipo-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,17,31,.1),rgba(8,17,31,.75))}
.tipo-card-content{position:relative;color:#fff}
.tipo-card-content strong{display:block;font-size:1.05rem}
.tipo-card-content span{font-size:.8rem;color:#d7dceb}

/* Calculadora de simulação (D) */
.calculadora{padding:70px 0}
.calc-box{background:var(--navy);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;gap:22px;color:#fff}
.calc-box h2{color:#fff}
.calc-grid{display:grid;grid-template-columns:1fr;gap:16px}
.calc-field{display:flex;flex-direction:column;gap:6px}
.calc-field label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#9aa5bd}
.calc-field input,.calc-field select{
  appearance:none;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:10px;
  padding:11px 14px;font-size:.95rem;color:#fff;
}
.calc-resultado{background:rgba(200,149,46,.12);border:1px solid rgba(200,149,46,.4);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:4px}
.calc-resultado strong{font-size:1.8rem;color:var(--gold)}
.calc-resultado span{font-size:.78rem;color:#c3cade}
.calc-disclaimer{font-size:.76rem;color:#8f9bb3}

.bancos-parceiros{border-top:1px solid rgba(255,255,255,.12);padding-top:22px}
.bancos-label{font-size:.8rem;color:#9aa5bd;margin-bottom:14px}
.bancos-grid{display:flex;flex-wrap:wrap;gap:10px}
.banco-pill{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:8px 16px;font-size:.82rem;font-weight:700;color:#e7ebf3}

/* Confiança / consignação */
.consignacao{padding:60px 0;background:var(--navy-dark);color:#fff}
.consignacao-inner{display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.consignacao h2{color:#fff;font-size:clamp(1.5rem,3.5vw,2rem)}
.consignacao p{color:#c3cade;max-width:520px;margin-top:12px}
.stats-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:8px}
.stat-item strong{display:block;font-size:1.6rem;font-weight:800;color:var(--gold)}
.stat-item span{color:#9aa5bd;font-size:.8rem}

/* Depoimentos */
.depoimentos{padding:80px 0}
.depo-grid{display:grid;grid-template-columns:1fr;gap:18px}
.depo-card{background:var(--bg-alt);border:1px solid var(--card-border);border-radius:var(--radius);padding:24px}
.depo-stars{color:var(--gold);letter-spacing:2px;margin-bottom:12px;font-size:.9rem}
.depo-card p{color:var(--text-dim);font-size:.94rem;font-style:italic}
.depo-name{margin-top:14px;font-weight:700;font-size:.88rem;color:var(--navy)}

/* Localização */
.localizacao{padding:70px 0;background:var(--bg-alt)}
.loc-inner{display:grid;grid-template-columns:1fr;gap:28px}
.loc-address{margin:12px 0;font-size:1.02rem;font-weight:700}
.loc-info p{color:var(--text-dim)}
.loc-info .btn{margin-top:18px}
.loc-map{border-radius:var(--radius);overflow:hidden;border:1px solid var(--card-border);height:300px}
.loc-map iframe{width:100%;height:100%;border:0}

/* Catálogo grid (cards) */
.catalogo{padding:80px 0}
.catalogo-grid{display:grid;grid-template-columns:1fr;gap:22px}
.car-card{background:#fff;border:1px solid var(--card-border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease, box-shadow .2s ease}
.car-card:hover{transform:translateY(-3px)}
.car-media{position:relative;height:190px;background:var(--bg-alt);overflow:hidden}
.car-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.car-badge{position:absolute;top:12px;left:12px;z-index:2;background:var(--gold);color:var(--navy-dark);font-size:.7rem;font-weight:800;padding:5px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}
.car-rating{position:absolute;top:12px;right:12px;z-index:2;background:rgba(8,17,31,.72);color:#fff;font-size:.72rem;font-weight:700;padding:5px 9px;border-radius:999px;display:flex;align-items:center;gap:4px}
.car-rating .star{color:var(--gold)}
.car-body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1}
.car-body h3{font-size:1.02rem;color:var(--navy)}
.car-year{color:var(--text-dim);font-size:.84rem}
.car-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--card-border)}
.car-price-wrap{display:flex;flex-direction:column}
.car-price-de{font-size:.76rem;color:#9aa5bd;text-decoration:line-through}
.car-price{font-size:1.15rem;font-weight:800;color:var(--navy)}
.car-media-link,.car-title-link{display:block;color:inherit}
.car-title-link:hover h3{color:var(--gold-dark)}
.catalogo-cta{display:flex;justify-content:center;margin-top:32px}

/* Footer (F2) */
.site-footer{background:var(--navy-dark);color:#c3cade;padding:56px 0 0}
.footer-inner{display:grid;grid-template-columns:1fr;gap:32px;padding-bottom:36px}
.footer-inner--4col{grid-template-columns:1fr}
.footer-brand p{color:#9aa5bd;margin-top:10px;max-width:260px;font-size:.9rem}
.footer-social{margin-top:16px;display:flex;flex-direction:column;gap:8px}
.footer-social a{color:#9aa5bd;font-size:.9rem}
.footer-social a:hover{color:var(--gold)}
.footer-col h4{font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:#7d89a3;margin-bottom:14px}
.footer-col a,.footer-col p{display:block;color:#9aa5bd;margin-bottom:8px;font-size:.9rem}
.footer-col a.icon-link{display:flex;width:fit-content}
.footer-col a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:16px 24px;text-align:center;color:#7d89a3;font-size:.8rem}

/* Icon links */
.icon-link{display:inline-flex;align-items:center;gap:6px}
.icon-inline{width:16px;height:16px;flex-shrink:0}

/* WhatsApp float */
.whatsapp-float{position:fixed;bottom:22px;right:22px;z-index:60;width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}
.whatsapp-float:hover{transform:scale(1.08)}
.whatsapp-float svg{width:30px;height:30px;color:#fff}

/* --- Página veículos.html (G4 — sidebar com mini-mapa) --- */
.pagina-topo{padding:44px 0 26px;background:var(--bg-alt)}
.pagina-topo h1{font-size:clamp(1.9rem,5vw,2.6rem);font-weight:800;margin-top:6px}

.catalogo-full{padding:28px 0 90px}
.catalogo-layout{display:flex;flex-direction:column;gap:26px}
.filtro-sidebar{background:#fff;border:1px solid var(--card-border);border-radius:var(--radius);padding:20px}
.filtro-map{border-radius:12px;overflow:hidden;border:1px solid var(--card-border);height:140px;margin-bottom:16px}
.filtro-map iframe{width:100%;height:100%;border:0}
.filtro-map-label{font-size:.78rem;color:var(--text-dim);margin:-10px 0 16px}
.filtro-scroll{scrollbar-width:thin;scrollbar-color:var(--gold-dark) transparent}
.filtro-scroll::-webkit-scrollbar{width:6px}
.filtro-scroll::-webkit-scrollbar-track{background:transparent}
.filtro-scroll::-webkit-scrollbar-thumb{background:var(--gold-dark);border-radius:999px}
.catalogo-vazio{color:var(--text-dim);padding:40px 0;grid-column:1/-1;text-align:center}

/* --- Página veiculo.html (H4 adaptado) --- */
.veiculo-detalhe{padding:36px 0 90px}
.voltar-link{display:inline-block;color:var(--text-dim);font-size:.9rem;margin-bottom:20px}
.voltar-link:hover{color:var(--gold-dark)}
.veiculo-grid{display:flex;flex-direction:column;gap:30px}
.veiculo-media{position:relative;background:var(--bg-alt);border:1px solid var(--card-border);border-radius:var(--radius);height:280px;overflow:hidden}
.car-photo--grande{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.galeria-fotos-btn{position:absolute;bottom:14px;left:14px;z-index:2;background:rgba(8,17,31,.72);color:#fff;font-size:.8rem;font-weight:600;padding:8px 14px;border-radius:999px;border:none;cursor:pointer;display:flex;align-items:center;gap:6px}
.galeria-fotos-btn:hover{background:var(--navy-dark)}
.galeria-angulos{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.angulo-chip{display:flex;align-items:center;gap:6px;background:var(--bg-alt);color:var(--text-dim);border:1px solid var(--card-border);border-radius:8px;padding:8px 12px;font-size:.8rem}
.angulo-chip svg{width:14px;height:14px}
.veiculo-info h1{font-size:clamp(1.6rem,4vw,2.2rem);font-weight:800;margin-top:6px}
.veiculo-meta{color:var(--text-dim);margin-top:8px}
.veiculo-price-wrap{margin-top:14px;display:flex;align-items:baseline;gap:10px}
.veiculo-price-de{font-size:.95rem;color:#9aa5bd;text-decoration:line-through}
.veiculo-preco{font-size:1.7rem;font-weight:800;color:var(--navy)}
.veiculo-descricao{color:var(--text-dim);margin-top:14px}
.veiculo-specs{margin:18px 0 24px;display:flex;flex-direction:column;gap:8px}
.veiculo-specs li{font-size:.9rem;color:var(--text-dim);padding-left:18px;position:relative}
.veiculo-specs li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.veiculo-vazio{padding:80px 0;text-align:center}
.veiculo-vazio h1{font-size:1.8rem;margin-bottom:10px}
.veiculo-vazio p{color:var(--text-dim);margin-bottom:24px}

.lightbox{position:fixed;inset:0;z-index:100;background:rgba(8,17,31,.92);display:none;align-items:center;justify-content:center;padding:24px}
.lightbox.is-open{display:flex}
.lightbox img{max-width:100%;max-height:85vh;border-radius:12px}
.lightbox-close{position:absolute;top:20px;right:24px;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.12);border:none;color:#fff;cursor:pointer;font-size:1.2rem}

.similares{padding:20px 0 90px;border-top:1px solid var(--card-border);margin-top:20px}
.similares h2{font-size:clamp(1.3rem,3vw,1.7rem);font-weight:800;margin-bottom:22px}

/* Responsive */
@media (min-width:640px){
  .busca-grid{grid-template-columns:repeat(3,1fr)}
  .tipo-grid{grid-template-columns:repeat(4,1fr)}
  .calc-grid{grid-template-columns:repeat(3,1fr)}
  .stats-row{grid-template-columns:repeat(4,1fr)}
}
@media (min-width:760px){
  .footer-inner{grid-template-columns:repeat(2,1fr)}
  .loc-inner{grid-template-columns:1fr 1.2fr;align-items:center}
  .catalogo-grid{grid-template-columns:repeat(2,1fr)}
  .depo-grid{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:760px){
  .slide-center-inner{flex-direction:row;align-items:stretch}
  .anotada-media{flex:1.3}
  .anotada-media img{height:100%;min-height:280px}
  .anotada-card{flex:1}
}
@media (min-width:960px){
  .slide-side{display:block}
  .anotada-media img{min-height:360px}
  .consignacao-inner{flex-direction:row;justify-content:space-between;align-items:center}
  .stats-row{margin-top:0}
  .footer-inner--4col{grid-template-columns:1.4fr 1fr 1fr 1fr}
  .catalogo-grid{grid-template-columns:repeat(3,1fr)}
  .catalogo-layout{flex-direction:row;align-items:flex-start}
  .filtro-sidebar{width:280px;flex-shrink:0;position:sticky;top:90px}
  .catalogo-results{flex:1}
  .veiculo-grid{flex-direction:row;align-items:flex-start}
  .veiculo-galeria{flex:1.15}
  .veiculo-info{flex:1}
  .veiculo-media{height:400px}
}
@media (max-width:759px){
  .nav-block{display:none}
  .site-header .main-nav-mobile{
    position:fixed;top:calc(var(--topbar-h) + 65px);left:0;right:0;background:#fff;
    flex-direction:column;padding:20px 24px;gap:16px;border-bottom:1px solid var(--card-border);
    transform:translateY(-130%);opacity:0;transition:all .25s ease;pointer-events:none;display:flex;z-index:49;
  }
  .main-nav-mobile.open{transform:translateY(0);opacity:1;pointer-events:auto}
  .nav-toggle{display:flex}
  .header-inner{justify-content:space-between}
  .brand{order:0}
}
