/* Tema 2027: os tokens abaixo derivam das variáveis que o publicador injeta no <head>
   (--marca, --destaque, --on-marca, --ground, --ink, --rodape, --marca-2/3). Fallback = VW. */
/* ============================================================
   TEMPLATE VEÍCULOS — tema VW premium (claro, minimalista).
   Brand book VW: #001e50 (deep blue) · #08b4e8 (dynamic blue) ·
   #1b2236 (navy) · #000 · branco. Card de oferta estilo VW oficial.
   Deriva por marca trocando SÓ as variáveis :root + logo (do JSON).
   ============================================================ */
:root{
  --bg:var(--ground,#ffffff);
  --surface:#ffffff;
  --surface-2:#f1f5fa;     /* área da imagem (cinza-azulado claro) */
  --surface-3:#e9eff6;
  --line:#e2e8f0;          /* borda clara azulada */
  --text:var(--ink,#001e50);          /* VW deep blue — texto/primário */
  --muted:#5b6b86;         /* azul-acinzentado */
  --brand:var(--marca,#001e50);
  --accent:var(--destaque,#08b4e8);        /* VW dynamic blue — links/destaque */
  --accent-2:var(--marca,#001e50);
  --navy:var(--marca,#1b2236);          /* botão "Tenho interesse" */
  --navy-2:var(--marca-3,var(--marca,#001e50));
  --radius:14px;
  --wrap:1200px;
  --font:'Inter',-apple-system,Segoe UI,Roboto,sans-serif;
  --font-head:'Archivo','Inter',sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit;color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
@media(max-width:560px){.wrap{padding:0 20px}}

/* ── Faixa VW (roundel + linha, assinatura da marca) ─────────── */
.vwband{display:none}
.vwband .wrap{display:flex;align-items:center;justify-content:center;height:52px;gap:0}
.vwband .rl{display:flex;align-items:center;justify-content:center;flex:none;padding:0 10px}
.vwband .rl img{height:38px;width:auto}
.vwband .ln{flex:1;height:1px;background:var(--line)}

/* ── Barra da marca (concessionária) ────────────────────────── */
.brandbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brandbar .wrap{position:relative;display:flex;align-items:center;height:58px}
.vwmark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:34px;width:auto}
.brand{position:relative;z-index:2}
.brand{display:flex;align-items:center;gap:14px}
.brand svg{height:26px;width:auto;display:block}
.brand .logo{height:36px;width:auto;display:block;object-fit:contain}
.brand .name{font-family:var(--font-head);font-weight:700;letter-spacing:.4px;font-size:15px;color:var(--text)}
@media(max-width:560px){
  .brandbar .wrap{height:62px}
  .brand .logo{height:34px}
  .vwband .wrap{height:44px}
}
.navbtn{display:none}
.navbtn span{display:block;width:24px;height:2px;background:var(--text);margin-left:auto;transition:.25s;border-radius:2px}
.navbtn[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.navbtn[aria-expanded="true"] span:nth-child(2){opacity:0}
.navbtn[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.navmenu{display:none;position:fixed;top:70px;left:0;right:0;z-index:40;background:rgba(255,255,255,.99);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);max-height:calc(100dvh - 70px);overflow-y:auto;box-shadow:0 24px 44px rgba(0,30,80,.10)}
.navmenu.open{display:block;animation:navdrop .22s ease}
@keyframes navdrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.navmenu-inner{max-width:1200px;margin:0 auto;padding:16px 24px 26px}
.navgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 32px}
@media(max-width:640px){.navgrid{grid-template-columns:1fr}}
.navlink{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 6px;border-bottom:1px solid var(--line);transition:.15s}
.navlink .nm{font-family:var(--font-head);font-weight:600;font-size:15px;color:var(--text)}
.navlink .pr{font-size:13px;color:var(--muted);white-space:nowrap}
.navlink:hover{padding-left:12px}
.navlink:hover .nm{color:var(--accent)}
.navlink-cta{display:block;padding:12px 6px 15px;margin-bottom:6px;border-bottom:1px solid var(--line);font-family:var(--font-head);font-weight:700;font-size:15px;color:var(--accent);letter-spacing:.3px}

/* ── Hero (faixa azul VW de ponta a ponta · texto | carro em altura cheia) ── */
.hero-carousel{position:relative;min-height:clamp(240px,32vh,318px);overflow:visible;background:var(--brand,#001e50)}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility 0s linear .7s;pointer-events:none;display:flex;align-items:stretch}
.hero-slide.active{opacity:1;visibility:visible;transition:opacity .7s ease,visibility 0s;pointer-events:auto}
.hero-inner{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:20px;width:100%;height:100%}
.hero-txt{padding:20px 0;color:#fff}
.hero-badge{display:inline-block;font-family:var(--font-head);font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.16);padding:6px 13px;border-radius:100px;margin-bottom:12px}
.hero-slide h1{font-family:var(--font-head);font-weight:800;font-size:clamp(26px,3.8vw,44px);line-height:1.02;letter-spacing:-.6px;text-align:left;margin:0;color:#fff}
.hero-versao{color:#bccce8;font-size:clamp(14px,1.5vw,18px);margin-top:6px;font-weight:500}
.hero-fin{color:#e7eefa;font-size:clamp(13px,1.4vw,16px);margin:14px 0 20px}
.hero-fin b{color:#fff;font-weight:800}
.hero-car{position:relative;height:100%;align-self:stretch}
.hero-car img{position:absolute;right:0;bottom:-8%;top:auto;width:100%;height:118%;object-fit:contain;object-position:bottom right}
.hero-cta{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:700;font-size:14px;letter-spacing:.3px;padding:14px 28px;background:#fff;color:var(--brand,#001e50);border-radius:100px;transition:.2s;text-decoration:none}
.hero-cta:hover{background:var(--accent,#08b4e8);color:#fff}
.hero-dots{position:absolute;left:0;right:0;bottom:14px;z-index:4;display:flex;gap:7px;justify-content:center}
.hero-dot{width:7px;height:7px;border-radius:50%;border:none;background:rgba(255,255,255,.35);cursor:pointer;padding:0;transition:.2s}
.hero-dot.active{background:#fff;width:20px;border-radius:5px}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.12);color:#fff;font-size:20px;line-height:1;cursor:pointer;transition:.2s;align-items:center;justify-content:center;display:flex}
.hero-arrow:hover{background:#fff;border-color:#fff;color:var(--brand,#001e50)}
.hero-arrow.prev{left:16px}.hero-arrow.next{right:16px}
@media(max-width:820px){
  .hero-carousel{min-height:auto}
  .hero-slide.active{position:relative}   /* slide ativo entra no fluxo e dá altura ao carousel (senão colapsa: slides são absolute) */
  .hero-inner{grid-template-columns:1fr;gap:0;text-align:center;padding-top:22px}
  .hero-txt{padding:0 0 4px;order:1;text-align:center}
  .hero-slide h1{text-align:center}
  .hero-car{min-height:180px;height:180px;order:2}
  .hero-car img{position:relative;object-position:center;height:100%;bottom:auto;max-width:100%}
  .hero-arrow{display:none}
}

/* ── Título de seção ────────────────────────────────────────── */
.sec-head{padding:44px 0 6px}
.sec-head h2{font-family:var(--font-head);font-weight:800;font-size:clamp(24px,3.4vw,34px);letter-spacing:-.5px;color:var(--text)}
.sec-head p{color:var(--muted);font-size:15px;margin-top:6px}

/* ── Grid + card de oferta (estilo VW oficial) ──────────────── */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:24px 0 72px}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.grid{grid-template-columns:1fr}}

.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.22s;display:flex;flex-direction:column}
.card:hover{box-shadow:0 14px 34px rgba(0,30,80,.10);transform:translateY(-3px);border-color:#d4dce8}
.card-clic{display:block;color:inherit}
.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 22px 12px}
.card-title{display:flex;flex-direction:column;gap:2px;min-width:0}
.card-modelo{font-family:var(--font-head);font-weight:700;font-size:19px;letter-spacing:-.2px;color:var(--text)}
.card-versao{color:var(--muted);font-size:13px}
.card-badge{flex:none;font-family:var(--font-head);font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;padding:5px 11px;background:var(--brand,#001e50);color:#fff;border-radius:100px;white-space:nowrap}
.card-media{position:relative;aspect-ratio:4/3;background:var(--surface-2);overflow:hidden;display:block}
.card-destaque{position:absolute;top:10px;left:10px;z-index:2;font-family:var(--font-head);font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;padding:5px 11px;background:var(--accent);color:var(--brand,#001e50);border-radius:100px;box-shadow:0 3px 10px rgba(8,180,232,.35)}
.card-media img{width:100%;height:100%;object-fit:contain;transition:.4s}
.card:hover .card-media img{transform:scale(1.03)}
.card-body{padding:16px 22px 22px;display:flex;flex-direction:column;gap:4px;flex:1}
.card-preco{display:flex;flex-direction:column;line-height:1.1}
.card-preco small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}
.card-preco .v{font-family:var(--font-head);font-weight:800;font-size:24px;color:var(--text);letter-spacing:-.4px}
.card-parcela{font-size:19px;color:var(--text);margin-top:2px;line-height:1.28}
.card-parcela b{color:var(--brand,#001e50);font-weight:800}
.card-cond{font-family:var(--font-head);font-weight:800;font-size:15px;letter-spacing:.3px;text-transform:uppercase;color:var(--accent);margin-top:4px;margin-bottom:4px}
.card-avista{margin-top:9px;padding-top:9px;border-top:1px dashed var(--line);display:flex;flex-direction:column;line-height:1.1}
.card-avista small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:1px}
.card-avista .v{font-family:var(--font-head);font-weight:800;font-size:20px;color:var(--text);letter-spacing:-.3px}
.card-cta{margin-top:16px;display:flex;flex-direction:column;gap:10px}
.card-detalhes{font-family:var(--font-head);font-weight:600;font-size:13px;color:var(--accent);text-align:center;transition:.15s}
.card-detalhes:hover{color:var(--brand,#001e50)}

/* ── Botão primário (Tenho interesse) ───────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;font-family:var(--font-head);font-weight:700;font-size:14.5px;letter-spacing:.3px;padding:15px 22px;background:var(--navy);color:#fff;border:none;border-radius:100px;cursor:pointer;transition:.2s;text-decoration:none}
.btn:hover{background:var(--brand,#001e50)}
.btn.ghost{background:transparent;border:1.5px solid var(--line);color:var(--text)}
.btn.ghost:hover{border-color:var(--brand,#001e50);color:var(--brand,#001e50);background:transparent}

/* ── PDP (página de produto) ────────────────────────────────── */
.pdp{padding-top:36px;padding-bottom:80px}
.pdp .back{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;margin-bottom:24px;transition:.2s}
.pdp .back:hover{color:var(--text)}
.pdp-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px}
@media(max-width:880px){.pdp-grid{grid-template-columns:1fr;gap:28px}}
.pdp-media .main{aspect-ratio:4/3;background:var(--surface-2);border:1px solid var(--line);border-radius:16px;overflow:hidden;position:relative;cursor:zoom-in}
.pdp-media .main img{width:100%;height:100%;object-fit:contain}
.pdp-thumbs{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.pdp-thumbs img{width:88px;aspect-ratio:4/3;object-fit:contain;background:var(--surface-2);border-radius:10px;border:1px solid var(--line);cursor:pointer;opacity:.65;transition:.2s}
.pdp-thumbs img.on,.pdp-thumbs img:hover{opacity:1;border-color:var(--accent)}
.pdp-info .badge{display:inline-block;font-family:var(--font-head);font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:6px 12px;background:var(--brand,#001e50);color:#fff;border-radius:100px;margin-bottom:14px}
.pdp-info h1{font-family:var(--font-head);font-weight:800;font-size:clamp(26px,4vw,38px);line-height:1.1;letter-spacing:-.4px;color:var(--text)}
.pdp-info .versao{color:var(--muted);font-size:16px;margin:6px 0 22px}
.pdp-preco{padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:24px}
.pdp-preco small{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}
.pdp-preco .v{font-family:var(--font-head);font-weight:800;font-size:34px;letter-spacing:-.5px;color:var(--text)}
.pdp-cond{font-family:var(--font-head);font-weight:800;font-size:16px;letter-spacing:.4px;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
.pdp-parcela{font-size:22px;color:var(--text);margin-top:2px;line-height:1.3}
.pdp-parcela b{color:var(--brand,#001e50);font-weight:800}
.pdp-avista{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line);display:flex;flex-direction:column;line-height:1.1}
.pdp-avista small{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}
.pdp-avista .v{font-family:var(--font-head);font-weight:800;font-size:30px;color:var(--text);letter-spacing:-.4px}
.pdp-legal summary{cursor:pointer;font-family:var(--font-head);font-weight:700;font-size:15px;color:var(--text);list-style:none;display:inline-flex;align-items:center;gap:9px}
.pdp-legal summary::-webkit-details-marker{display:none}
.pdp-legal summary::before{content:'+';display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-2);color:var(--accent);font-weight:800;font-size:14px}
.pdp-legal details[open] summary::before{content:'\2013'}
.pdp-legal-body{margin-top:14px;font-size:12.5px;line-height:1.65;color:var(--muted);max-width:900px}
.pdp-legal-body p{margin:0 0 8px}
.pdp-legal-body a{color:var(--accent)}
.pdp-info .resumo{color:var(--muted);font-size:15px;margin-bottom:24px}
.destaques{list-style:none;display:grid;gap:10px;margin-bottom:28px}
.destaques li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text)}
.destaques li::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none}
.ficha{margin-top:56px}
.ficha h2{font-family:var(--font-head);font-weight:700;font-size:22px;margin-bottom:20px;color:var(--text)}
.ficha-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
@media(max-width:700px){.ficha-grid{grid-template-columns:repeat(2,1fr)}}
.ficha-item{background:#fff;padding:20px}
.ficha-item .k{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.ficha-item .val{font-family:var(--font-head);font-weight:600;font-size:18px;color:var(--text)}

/* ── Form / contato ─────────────────────────────────────────── */
.form-wrap{max-width:560px;margin:0 auto;padding-top:48px;padding-bottom:80px}
.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:36px 34px;box-shadow:0 10px 30px rgba(0,30,80,.06)}
@media(max-width:560px){.form-card{padding:28px 22px}}
.form-card h1{font-family:var(--font-head);font-weight:800;font-size:26px;margin-bottom:8px;color:var(--text)}
.form-card .sub{color:var(--muted);font-size:15px;margin-bottom:26px}
.form-produto{display:flex;align-items:center;gap:14px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:26px}
.form-produto img{width:88px;aspect-ratio:4/3;object-fit:contain;border-radius:8px;flex:none;background:#fff}
.form-produto .m{font-family:var(--font-head);font-weight:700;font-size:16px;color:var(--text)}
.form-produto .p{color:var(--accent);font-size:14px;font-weight:700}
.fld{margin-bottom:14px}
.fld label{display:block;font-size:13px;color:var(--muted);margin-bottom:7px}
.fld input{width:100%;background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px 16px;font-size:16px;color:var(--text);transition:.2s}
.fld input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(8,180,232,.12)}
.legal{font-size:11px;color:var(--muted);line-height:1.5;margin-top:14px;text-align:center}
.legal a{color:var(--accent);text-decoration:underline}
.form-ok{text-align:center;padding:20px 0}
.form-ok .check{width:64px;height:64px;border-radius:50%;background:rgba(8,180,232,.14);color:var(--brand,#001e50);display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 18px}
.form-ok h2{font-family:var(--font-head);font-weight:800;font-size:24px;margin-bottom:10px;color:var(--text)}
.form-ok p{color:var(--muted)}
/* CTA abaixo do preço → form no fim da PDP (padrão audi, adaptado ao tema claro) */
.pdp-cta{display:block;text-align:center;margin:10px 0 4px}
.pdp-lead{max-width:480px;margin:60px auto 0}
.pdp-lead .form-card{scroll-margin-top:90px;padding:40px 38px}
.pdp-lead .form-card h1{font-size:24px}
.pdp-lead .eyebrow{display:block;font-family:var(--font-head);font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
@media(max-width:560px){.pdp-lead{max-width:100%;margin-top:40px}.pdp-lead .form-card{padding:30px 24px}}

/* ── Pré-rodapé (faixa VW: carro em destaque + CTA · espelha o hero) ── */
.prefoot{background:var(--brand,#001e50);overflow:visible;border-top:3px solid var(--accent)}
.prefoot-inner{display:grid;grid-template-columns:1fr 1.5fr;align-items:center;gap:20px;min-height:clamp(300px,38vh,420px)}
.prefoot-txt{padding:34px 0;color:#fff}
.prefoot-eyebrow{font-family:var(--font-head);font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin:0 0 10px}
.prefoot-txt h3{font-family:var(--font-head);font-weight:800;font-size:clamp(22px,3vw,34px);line-height:1.05;letter-spacing:-.4px;margin:0 0 10px;color:#fff}
.prefoot-txt p{color:#c7d2e0;font-size:15px;line-height:1.5;margin:0 0 20px;max-width:440px}
.prefoot-cta{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:700;font-size:14px;letter-spacing:.3px;padding:13px 28px;background:#fff;color:var(--brand,#001e50);border-radius:100px;text-decoration:none;transition:.2s}
.prefoot-cta:hover{background:var(--accent);color:#fff}
.prefoot-car{position:relative;height:100%;align-self:stretch;min-height:300px}
.prefoot-car img{position:absolute;right:0;bottom:0;top:auto;width:100%;height:125%;object-fit:contain;object-position:bottom right}

/* pré-rodapé responsivo — DEPOIS da base (senão a base ganha no cascade e não empilha no mobile) */
@media(max-width:820px){
  .prefoot-inner{grid-template-columns:1fr;gap:0;min-height:auto;text-align:center}
  .prefoot-txt{padding:28px 0 8px;text-align:center}
  .prefoot-txt p{margin-left:auto;margin-right:auto}
  .prefoot-car{min-height:200px;height:220px;order:2}
  .prefoot-car img{position:relative;object-position:center;height:100%;bottom:auto;max-width:100%}
}

/* ── Rodapé (VW premium: faixa navy · loja/consultores/condições) ── */
.foot{border-top:3px solid var(--accent);padding:0;background:var(--rodape,var(--brand,#001e50));color:#c7d2e0;font-size:13px;text-align:left}
.foot-cols{display:flex;flex-wrap:wrap;gap:14px 48px;padding-top:40px;padding-bottom:4px}
.foot-col{flex:1 1 240px}
.foot-col h4,.foot-cond h4{font-family:var(--font-head);font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 8px}
.foot-col p,.foot-col a{color:#eaf1f9;font-size:15px;line-height:1.5;text-decoration:none;margin:0}
.foot-col a:hover{color:#fff;text-decoration:underline}
.foot-cond{padding-top:24px;margin-top:24px;border-top:1px solid rgba(255,255,255,.12)}
.foot-cond p{color:#9fb1c9;font-size:12px;line-height:1.6;white-space:pre-line;margin:0}
.foot-legal{display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:space-between;align-items:flex-end;padding-top:20px;padding-bottom:36px;margin-top:24px;border-top:1px solid rgba(255,255,255,.08);color:#8093ad;font-size:12px}
.foot-legal-l p{margin:0;line-height:1.55}
.foot-legal-r{color:#c7d2e0;text-decoration:none;white-space:nowrap;font-weight:600}
.foot-legal-r:hover{color:#fff;text-decoration:underline}

/* ── PDP: lightbox (visor de imagem grande — fica escuro) ───── */
.pdp-zoom{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:50%;background:rgba(0,30,80,.55);color:#fff;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.25);transition:.2s;pointer-events:none}
.pdp-media .main:hover .pdp-zoom{background:var(--brand,#001e50)}
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(0,10,30,.94);display:none;align-items:center;justify-content:center;padding:40px}
.lightbox.open{display:flex}
.lightbox>img{max-width:92vw;max-height:88vh;object-fit:contain;border-radius:8px;animation:lbIn .3s ease}
@keyframes lbIn{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
.lb-close{position:absolute;top:20px;right:24px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:26px;line-height:1;cursor:pointer;z-index:2}
.lb-close:hover{background:var(--accent);border-color:var(--accent)}
.lb-arrow{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;z-index:2}
.lb-arrow:hover{background:var(--accent);border-color:var(--accent)}
.lb-arrow.prev{left:24px}.lb-arrow.next{right:24px}
.lb-count{position:absolute;bottom:22px;left:0;right:0;text-align:center;color:#cfe3f5;font-size:13px;font-family:var(--font-head);letter-spacing:.5px}
@media(max-width:560px){.lb-arrow{width:42px;height:42px;font-size:24px}.lightbox{padding:14px}}


/* ══════════ acréscimos 2027 ══════════ */
[hidden]{display:none!important}
/* brandbar: slot do logo/nome + CTA à direita */
.brandbar .wrap{display:flex;align-items:center;gap:16px}
.brand-slot .brand{display:inline-flex;align-items:center;gap:10px;color:var(--text);text-decoration:none}
.brand-slot .logo{height:44px;width:auto;display:block}
.brand-slot .name{font:800 18px/1 var(--font-head);letter-spacing:-.01em}
.brandbar-cta{margin-left:auto;font:700 13px/1 var(--font);color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 22%,transparent);border-radius:8px;padding:10px 16px;white-space:nowrap;transition:background .15s,border-color .15s;text-decoration:none}
.brandbar-cta:hover{background:color-mix(in srgb,var(--brand) 5%,transparent);border-color:color-mix(in srgb,var(--brand) 40%,transparent)}
.navbtn{margin-left:auto;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;background:var(--surface);display:inline-flex;flex-direction:column;justify-content:center;gap:5px;align-items:center;cursor:pointer;padding:0}
.navbtn span{display:block;width:20px;height:2px;background:var(--brand);border-radius:2px}
/* home: hero de reserva + galeria (vinham inline no index antigo; agora temáveis) */
html{scroll-behavior:smooth}
.home-hero{background:linear-gradient(155deg,var(--marca,#001e50) 0%,var(--marca-2,color-mix(in srgb,var(--marca,#001e50) 70%,var(--destaque,#08b4e8))) 58%,var(--marca-3,var(--destaque,#0b63b0)) 130%);color:var(--on-marca,#fff);text-align:center;padding:64px 0 58px}
.home-hero .eyebrow{display:inline-block;font:700 12px/1 var(--font-head);letter-spacing:2px;text-transform:uppercase;color:var(--cyan-2,var(--destaque,#5fd0f5));background:color-mix(in srgb,var(--destaque,#08b4e8) 14%,transparent);border:1px solid color-mix(in srgb,var(--destaque,#08b4e8) 42%,transparent);border-radius:100px;padding:7px 16px;margin-bottom:20px}
.home-hero h1{font:800 clamp(30px,5vw,52px)/1.05 var(--font-head);letter-spacing:-.02em;margin:0 auto 14px;max-width:17ch}
.home-hero p{color:color-mix(in srgb,var(--on-marca,#fff) 84%,transparent);font-size:clamp(15px,2vw,18px);max-width:54ch;margin:0 auto 30px;line-height:1.55}
.home-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.home-cta a{font:700 15px/1 var(--font);padding:15px 26px;border-radius:10px;transition:transform .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent;text-decoration:none}
.home-cta a:hover{transform:translateY(-2px)}
.home-cta .btn-p{background:var(--on-marca,#fff);color:var(--marca,#001e50);box-shadow:0 12px 32px rgba(0,0,0,.28)}
.home-cta .btn-g,.pagina-404 .btn-g{background:color-mix(in srgb,var(--on-marca,#fff) 8%,transparent);color:inherit;border:1px solid color-mix(in srgb,currentColor 38%,transparent)}
.galeria-sec{padding:56px 0}
.gal-viewport{position:relative}
.galeria-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding:4px 2px 6px;scrollbar-width:none}
.galeria-track::-webkit-scrollbar{display:none}
.gal-slide{flex:0 0 auto;height:clamp(340px,46vh,440px);aspect-ratio:var(--gal-ar,4/5);scroll-snap-align:start;border-radius:14px;overflow:hidden;background:var(--surface-2);box-shadow:0 6px 20px rgba(0,30,80,.08)}
.gal-slide img{width:100%;height:100%;object-fit:contain;display:block}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:var(--surface);color:var(--brand);box-shadow:0 6px 20px rgba(0,30,80,.22);font:700 24px/1 system-ui,sans-serif;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;padding:0}
.gal-nav.prev{left:-8px}.gal-nav.next{right:-8px}
.gal-nav:hover{background:var(--surface-2)}
.gal-dots{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.gal-dot{width:9px;height:9px;border-radius:50%;border:0;background:color-mix(in srgb,var(--brand) 20%,transparent);cursor:pointer;padding:0;transition:background .2s,width .2s}
.gal-dot.active{background:var(--accent);width:22px;border-radius:5px}
.lead-sec{padding:8px 0 60px}
.h1-seo{font:600 15px/1.4 var(--font);color:var(--muted);margin:8px 0 0}
.h1-seo small{display:block;font-weight:400}
.form-h1{font:800 26px/1.15 var(--font-head);color:var(--text);margin:0 0 6px}
.prefoot-link{display:block;margin-top:16px;color:color-mix(in srgb,var(--on-marca,#fff) 90%,transparent);font:600 14px/1.2 var(--font);text-decoration:underline;text-underline-offset:3px}
.prefoot-link:hover{color:var(--on-marca,#fff)}
.hero-h1{font:800 clamp(28px,4vw,44px)/1.05 var(--font-head);margin:0 0 6px;letter-spacing:-.02em}
/* página do carro */
.pdp-aviso{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:12px 0 18px;color:var(--text);font-weight:600}
.pdp-condicao{color:var(--muted);font-size:14px;margin:-4px 0 14px}
.pdp .descricao{color:var(--muted);max-width:760px}
.grid-vazio{color:var(--muted)}
.foot-agencia{margin-top:10px;font-size:12px;color:var(--muted)}
.foot-agencia a{color:inherit;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.foot-agencia img{height:16px;width:auto;opacity:.85}
/* política e 404 */
.politica,.pagina-404{padding:56px 0 72px;max-width:760px}
.politica h1,.pagina-404 h1{font:800 clamp(28px,4vw,42px)/1.1 var(--font-head);margin:6px 0 14px;letter-spacing:-.02em}
.politica h2{font:700 20px/1.3 var(--font-head);margin:28px 0 8px}
.politica p,.politica li,.pagina-404 .sub{color:var(--muted);line-height:1.6}
.politica .eyebrow,.pagina-404 .eyebrow{font:700 12px/1 var(--font-head);letter-spacing:2px;text-transform:uppercase;color:var(--accent)}
.pagina-404 .home-cta{justify-content:flex-start;margin-top:22px}
.pagina-404 .btn-g{color:var(--brand)}
@media(max-width:560px){.home-hero{padding:48px 0 42px}.galeria-sec{padding:40px 0}.gal-slide{height:clamp(300px,52vh,420px)}.gal-nav{display:none}.brandbar-cta{padding:8px 12px;font-size:12px}}

/* ── Ficha rica (opcional por carro: set_1_02_produto_ficha) ───────────────
   Números de destaque, cores, ficha por grupo, blocos de argumento e a home de
   lançamento. Carro sem ficha rica não renderiza nada disso — estilos só entram
   quando o core emite a marcação. ── */
.pdp-nums,.modelo-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px;margin:0 0 22px}
.pdp-nums .num,.modelo-nums .num{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:3px;min-width:0}
.num .n{font:800 clamp(22px,2.6vw,30px)/1 var(--font-head);color:var(--text);letter-spacing:-.5px;white-space:nowrap}
.num .n small{font:700 12px/1 var(--font-head);color:var(--accent);margin-left:3px;letter-spacing:0}
.num .l{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;line-height:1.25}
.hero-nums{display:flex;gap:22px;flex-wrap:wrap;margin:14px 0 4px}
.hero-nums .num{display:flex;flex-direction:column;gap:2px}
.hero-nums .n{color:#fff;font-size:clamp(20px,2.4vw,28px)}
.hero-nums .n small,.hero-nums .l{color:#bccce8}
@media(max-width:820px){.hero-nums{justify-content:center;gap:16px}}
.card-nums{display:block;color:var(--text);font:600 12.5px/1.3 var(--font);margin-top:4px}
/* cores do modelo */
.pdp-cores{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}
.pdp-cores-l{font:700 12px/1 var(--font-head);text-transform:uppercase;letter-spacing:.6px;color:var(--muted)}
.pdp-cores-sw{display:flex;gap:8px}
.pdp-cores .sw{width:30px;height:30px;border-radius:50%;border:2px solid var(--line);background:#fff;padding:3px;cursor:pointer;transition:.15s}
.pdp-cores .sw span{display:block;width:100%;height:100%;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
.pdp-cores .sw.on,.pdp-cores .sw:hover{border-color:var(--accent)}
.pdp-cores-nome{font-size:13px;color:var(--text);font-weight:600}
/* ficha completa por grupo */
.ficha-tabela{display:grid;grid-template-columns:repeat(2,1fr);gap:22px 36px}
@media(max-width:700px){.ficha-tabela{grid-template-columns:1fr}}
.ficha-grupo h3{font:700 12.5px/1 var(--font-head);text-transform:uppercase;letter-spacing:.8px;color:var(--accent);margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.ficha-grupo dl{display:grid;grid-template-columns:minmax(120px,38%) 1fr;gap:8px 14px;margin:0}
.ficha-grupo dt{font-size:13px;color:var(--muted)}
.ficha-grupo dd{font-size:14px;color:var(--text);font-weight:600;margin:0}
.pdp-nota{font-size:12.5px;color:var(--muted);margin-top:16px;max-width:900px;line-height:1.5}
/* blocos de argumento (3 com foto) */
.blocos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:820px){.blocos-grid{grid-template-columns:1fr}}
.bloco{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.bloco img{aspect-ratio:16/10;width:100%;object-fit:cover;background:var(--surface-2)}
.bloco-txt{padding:18px 20px 22px}
.bloco h3{font:700 18px/1.2 var(--font-head);margin:0 0 6px;color:var(--text)}
.bloco p{font-size:14px;color:var(--muted);line-height:1.5}
/* home de lançamento: um bloco por modelo (só com ≤4 modelos e ficha rica) */
.modelos-sec{padding:8px 0 36px}
.modelos{display:grid;gap:26px;padding-top:18px}
.modelo{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:20px}
/* a foto acompanha a altura do texto (nunca corta o CTA); o arredondado fica na foto, não no card */
.modelo-img{display:flex;align-items:center;justify-content:center;background:var(--surface-2);align-self:stretch;min-height:320px;padding:18px;border-radius:20px 0 0 20px;overflow:hidden}
.modelo-img img{width:100%;height:auto;max-height:440px;object-fit:contain}
.modelo.inv .modelo-img{order:2;border-radius:0 20px 20px 0}
.modelo-txt{padding:30px 34px 30px 0}
.modelo.inv .modelo-txt{padding:30px 0 30px 34px}
.modelo-txt .eyebrow{display:inline-block;font:700 11px/1 var(--font-head);letter-spacing:1.4px;text-transform:uppercase;color:var(--accent)}
.modelo-txt h3{font:800 clamp(24px,3vw,34px)/1.1 var(--font-head);margin:8px 0 10px;color:var(--text);letter-spacing:-.4px}
.modelo-txt h3 span{display:block;color:var(--muted);font-weight:600;font-size:.58em;letter-spacing:0;margin-top:4px}
.modelo-txt p{color:var(--muted);font-size:15px;margin-bottom:18px;line-height:1.55}
.modelo-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.modelo-cta .btn{width:auto}
.modelo-link{font:600 14px var(--font);color:var(--accent)}
.modelo-link:hover{color:var(--brand,#001e50)}
@media(max-width:820px){
  .modelo,.modelo.inv{grid-template-columns:1fr;gap:0}
  .modelo-img,.modelo.inv .modelo-img{order:0;min-height:0;border-radius:20px 20px 0 0;padding:12px}
  .modelo-txt,.modelo.inv .modelo-txt{padding:20px 22px 24px}
}
/* materiais do carro (gaveta do /pricemap): banner largo no topo da PDP e vídeo */
.pdp-banner{margin:0 0 24px;border-radius:16px;overflow:hidden;background:var(--surface-2);border:1px solid var(--line)}
.pdp-banner img{width:100%;height:auto;display:block}
.pdp-video video{width:100%;max-width:960px;aspect-ratio:16/9;border-radius:14px;background:#000;display:block}

/* ── Lançamento: hero em vídeo/banner (tela cheia) ─────────────────────── */
.hero-cine{position:relative;min-height:clamp(420px,72vh,760px);overflow:hidden;background:var(--brand,#1b1d21);color:#fff;display:flex;align-items:flex-end}
.hero-cine .cine-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-cine .cine-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.15) 45%,rgba(0,0,0,.72) 100%)}
.cine-inner{position:relative;z-index:2;padding-top:48px;padding-bottom:40px;width:100%}
.cine-inner .eyebrow{display:inline-block;font:700 11px/1 var(--font-head);letter-spacing:1.6px;text-transform:uppercase;color:#fff;background:color-mix(in srgb,var(--destaque,#DF071D) 85%,transparent);padding:7px 13px;border-radius:100px;margin-bottom:16px}
.cine-inner h1{font:800 clamp(30px,5vw,58px)/1.02 var(--font-head);letter-spacing:-.02em;max-width:16ch;margin:0 0 12px;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.cine-inner p{max-width:52ch;font-size:clamp(15px,1.6vw,18px);color:rgba(255,255,255,.9);margin:0 0 22px}
.cine-cta{display:flex;gap:12px;flex-wrap:wrap}
.cine-cta a{font:700 15px/1 var(--font);padding:15px 26px;border-radius:100px;text-decoration:none}
.cine-cta .btn-p{background:#fff;color:var(--brand,#1b1d21)}
.cine-cta .btn-g{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(6px)}
.cine-modelos{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.cine-modelos a{display:flex;flex-direction:column;gap:2px;padding:10px 16px;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#fff;backdrop-filter:blur(6px);font-size:13px}
.cine-modelos a b{font:700 15px/1.2 var(--font-head)}
.cine-modelos a span{color:rgba(255,255,255,.8)}
@media(max-width:640px){.hero-cine{min-height:78vh}.cine-inner{padding-top:120px}.cine-cta a{width:100%;text-align:center}}
/* ── Giro 360° (quadros com fundo transparente: contain sobre superfície clara) ── */
.pdp-giro{margin-top:16px}
.giro-stage{position:relative;aspect-ratio:3/2;background:var(--surface-2);border:1px solid var(--line);border-radius:16px;overflow:hidden;cursor:grab;user-select:none;touch-action:pan-y}
.giro-stage:active{cursor:grabbing}
.giro-stage img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;padding:4%;box-sizing:border-box}
.giro-hint{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:7px;font:600 12px/1 var(--font);color:#fff;background:rgba(0,0,0,.55);padding:8px 12px;border-radius:100px;backdrop-filter:blur(4px)}
.giro-cores{display:flex;align-items:center;gap:8px;margin-top:10px}
.giro-cores .sw{width:26px;height:26px;border-radius:50%;border:2px solid var(--line);background:#fff;padding:3px;cursor:pointer}
.giro-cores .sw span{display:block;width:100%;height:100%;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
.giro-cores .sw.on,.giro-cores .sw:hover{border-color:var(--accent)}
.giro-cor{font-size:13px;color:var(--text);font-weight:600;margin-left:4px}

/* ── Rodapé no formato dos sites de assinatura (15/09) ─────────────────── */
.foot{border-top:0;background:var(--rodape,var(--brand,#001e50));color:var(--on-rodape,var(--on-marca,#fff));padding:60px 0 30px}
.foot .f-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.foot .f-grid-3{grid-template-columns:1.5fr 1fr 1fr}
.f-brand img{height:40px;width:auto;max-width:200px;object-fit:contain;margin-bottom:18px}
.f-brand .f-nome{font:800 20px/1.1 var(--font-head);margin-bottom:18px}
.f-brand p{font-size:.85rem;opacity:.82;line-height:1.65;margin:0}
.f-brand .tel{font-size:1.16rem;font-weight:700;margin:14px 0 4px;display:block;color:inherit}
.f-brand .f-contato{margin-top:16px}
.foot .f-tit{color:inherit;font:700 .88rem/1.3 var(--font-head);margin:0 0 15px;letter-spacing:.01em}
.f-tit-cont{visibility:hidden}
.foot ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.foot ul a{font-size:.86rem;opacity:.82;transition:.15s;color:inherit}
.foot ul a:hover{opacity:1;color:var(--cyan-2,var(--destaque,#08b4e8))}
.f-legal{border-top:1px solid color-mix(in srgb,currentColor 14%,transparent);margin:44px 0 0;padding-top:24px;font-size:.73rem;opacity:.66;line-height:1.7}
.f-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:18px;font-size:.78rem;opacity:.72}
.f-bottom a{color:inherit}
.f-priv{text-decoration:underline;text-underline-offset:3px}
.f-agencia{display:inline-flex;align-items:center;gap:6px}
.f-agencia a{display:inline-flex;align-items:center;gap:6px;font-weight:600}
.f-agencia img{height:18px;width:auto}
@media(max-width:900px){.foot .f-grid,.foot .f-grid-3{grid-template-columns:1fr 1fr;gap:28px}.f-tit-cont{display:none}}
@media(max-width:560px){.foot .f-grid,.foot .f-grid-3{grid-template-columns:1fr}.foot{padding:44px 0 26px}}
/* giro 360° como única mídia da PDP (sem foto/thumbs acima) */
.pdp-giro.solo{margin-top:0}
.pdp-giro.solo .giro-stage{aspect-ratio:4/3}

/* ── Lançamento: pré-venda, sobre, FAQ, banda + box do formulário ─────── */
.prevenda-sec{padding:56px 0 40px;background:var(--surface-2)}
.pv-head p{max-width:60ch}
.pv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:20px}
@media(max-width:900px){.pv-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pv-grid{grid-template-columns:1fr}}
.pv-item{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px 20px}
.pv-ico{display:inline-flex;width:34px;height:34px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);align-items:center;justify-content:center;margin-bottom:12px}
.pv-item h3{font:700 16px/1.25 var(--font-head);margin:0 0 6px;color:var(--text)}
.pv-item p{font-size:14px;color:var(--muted);margin:0;line-height:1.5}
.pv-cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px}
.pv-cta span{font-size:13px;color:var(--muted)}
.btn-p{display:inline-flex;align-items:center;justify-content:center;font:700 15px/1 var(--font);padding:15px 26px;border-radius:100px;background:var(--navy);color:#fff;text-decoration:none;cursor:pointer;border:0;transition:.2s}
.btn-p:hover{background:var(--brand,#001e50)}
.sobre-sec{padding:56px 0 40px}
.sobre-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:start}
@media(max-width:820px){.sobre-grid{grid-template-columns:1fr;gap:32px}}
.sobre-col .eyebrow{display:inline-block;font:700 11px/1 var(--font-head);letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.sobre-col h2{font:800 clamp(22px,3vw,32px)/1.15 var(--font-head);letter-spacing:-.4px;color:var(--text);margin:0 0 12px}
.sobre-col p{color:var(--muted);font-size:15px;line-height:1.6;max-width:62ch}
.sobre-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}
@media(max-width:560px){.sobre-nums{grid-template-columns:repeat(2,1fr)}}
.sobre-nums .num{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:4px}
.sobre-nums .n{font:800 clamp(22px,2.4vw,28px)/1 var(--font-head);color:var(--text)}
.sobre-nums .l{font-size:12px;color:var(--muted);line-height:1.3}
.sobre-nota{font-size:12px!important;margin-top:12px!important}
.sobre-itens{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.sobre-itens li{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--text)}
.sobre-itens li::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none}
.sobre-logo{height:44px;width:auto;margin-top:22px;object-fit:contain}
.faq-sec{padding:40px 0 56px}
.faq{display:grid;gap:10px;margin-top:8px;max-width:860px}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:0 20px}
.faq summary{cursor:pointer;list-style:none;font:700 15px/1.35 var(--font-head);color:var(--text);padding:16px 30px 16px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:0;top:12px;width:26px;height:26px;border-radius:50%;background:var(--surface-2);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:800}
.faq details[open] summary::after{content:'\2013'}
.faq-a{padding:0 0 18px;color:var(--muted);font-size:14.5px;line-height:1.6;max-width:70ch}
/* banda + box do formulário (só no modo lançamento) */
.lead-sec.lancamento .form-card{display:none}
.lead-band{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--brand,#001e50);color:var(--on-marca,#fff);border-radius:20px;padding:28px 30px;max-width:900px;margin:0 auto}
.lead-band h2{font:800 clamp(20px,2.6vw,26px)/1.15 var(--font-head);margin:0 0 6px}
.lead-band p{margin:0;opacity:.85;font-size:14.5px;max-width:52ch}
.lead-band .btn-p{background:#fff;color:var(--brand,#001e50)}
.lead-sec.lancamento .form-wrap{max-width:none}
.lead-dialog{border:0;padding:0;background:transparent;max-width:min(520px,94vw);width:100%}
.lead-dialog::backdrop{background:rgba(0,0,0,.62)}   /* sem backdrop-filter: em tela cheia pesa no celular e renderiza branco em GPU por software */
.lead-dialog .form-card{display:block;position:relative;margin:0}
.lead-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font-size:20px;line-height:1;cursor:pointer}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-block;padding:9px 14px;border-radius:100px;border:1.5px solid var(--line);font-size:13.5px;font-weight:600;color:var(--text);cursor:pointer;transition:.15s}
.chip input:checked+span{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--text)}
.fld.interesse label{display:block;margin-bottom:2px}
.pv-head .eyebrow{display:inline-block;font:700 11px/1 var(--font-head);letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.f-tag{font-size:.86rem;opacity:.85;margin:-6px 0 18px!important;max-width:34ch}

/* ajustes finos (15/09): FAQ centralizado; sobre em duas colunas (texto | indicadores); loja com logo ao lado */
.faq-sec .sec-head{text-align:center}
.faq-sec .sec-head p{margin-left:auto;margin-right:auto}
.faq{margin:8px auto 0}
.sobre-row{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.sobre-row+.sobre-row{margin-top:56px}
.sobre-row .sobre-nums{grid-template-columns:repeat(2,1fr);margin-top:0}
.sobre-row .sobre-nums .num{padding:22px 20px;gap:6px}
.sobre-row .sobre-nums .n{font-size:clamp(26px,3vw,36px)}
.sobre-row .sobre-nums .l{font-size:13px}
.sobre-side{display:flex;justify-content:center;align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:20px;min-height:220px;padding:32px}
.sobre-side .sobre-logo{height:64px;margin:0}
@media(max-width:820px){.sobre-row{grid-template-columns:1fr;gap:24px}.sobre-row+.sobre-row{margin-top:40px}.sobre-side{min-height:140px}}
/* box do formulário: o reset global (*{margin:0}) anulava o margin:auto do <dialog> — fica explícito e centrado */
.lead-dialog{position:fixed;inset:auto;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;max-height:min(92vh,760px);overflow:auto;-webkit-overflow-scrolling:touch}
.lead-dialog[open]{display:block}
.lead-dialog .form-card{max-height:none}
@media(max-width:560px){.lead-dialog{max-width:94vw;max-height:94vh}.lead-dialog .form-card{padding:28px 20px 22px}}

/* hero de lançamento: mais contraste — véu na base e à esquerda (onde fica o texto) + sombra forte.
   O vídeo tem trechos claros (céu, prédios) que deixavam o título ilegível (dono, 17/09). */
.hero-cine .cine-shade{background:linear-gradient(90deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.42) 48%,rgba(0,0,0,.12) 100%),linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.30) 45%,rgba(0,0,0,.88) 100%)}
.cine-inner h1{text-shadow:0 2px 6px rgba(0,0,0,.6),0 4px 32px rgba(0,0,0,.55)}
.cine-inner p{text-shadow:0 1px 4px rgba(0,0,0,.7);color:#fff}
.cine-inner .eyebrow{box-shadow:0 2px 12px rgba(0,0,0,.35)}
.cine-modelos a{background:rgba(0,0,0,.35);border-color:rgba(255,255,255,.35)}
@media(max-width:640px){.hero-cine .cine-shade{background:linear-gradient(180deg,rgba(0,0,0,.15) 0%,rgba(0,0,0,.45) 40%,rgba(0,0,0,.9) 100%)}}
/* cabeçalho da seção de modelos vem dentro do grid */
.modelos .sec-head{padding:0 0 6px}

/* pré-venda logo abaixo do hero + credibilidade da loja em grade */
.prevenda-sec{padding:48px 0 44px}
.pv-item h3{font-size:17px}
.pv-item:first-child{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}
.sobre-cred{display:grid;gap:14px}
.sobre-cred .sobre-logo{height:40px;margin:0 0 4px;justify-self:start}
.sobre-cred .sobre-nums{margin-top:0}
.sobre-row .sobre-nums .n small{font:700 13px/1 var(--font-head);color:var(--accent);margin-left:4px}

/* PDP em pré-venda: 4 números em linha, linha de venda sob o preço, argumentos antes do botão */
.pdp-nums:has(> :nth-child(4)){grid-template-columns:repeat(4,1fr)}
@media(max-width:560px){.pdp-nums:has(> :nth-child(4)){grid-template-columns:repeat(2,1fr)}}
.pdp-prevenda-l{font-size:13.5px;color:var(--muted);margin:8px 0 0;line-height:1.45;max-width:44ch}
.pdp-info .resumo+.destaques{margin-bottom:20px}
/* PDP: vídeo e "Sobre" de ponta a ponta no bloco (dono, 17/09) */
.pdp-video video{max-width:none;width:100%}
.pdp .descricao{max-width:none;font-size:16px;line-height:1.7}

/* home de um modelo: destaques (fotos oficiais) e giro 360° com cores trazidos da página do produto */
.home-blocos{margin-top:8px}
.home-blocos h3,.modelo-giro-txt h3{font:700 22px/1.2 var(--font-head);color:var(--text);margin:0 0 16px}
.modelo-giro-row{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:28px}
.modelo-giro-row .pdp-giro{margin:0}
.modelo-giro-row .giro-stage{aspect-ratio:4/3}
.modelo-giro-txt p{color:var(--muted);font-size:15px;margin:0 0 16px}
.modelo-giro-txt .destaques{margin-bottom:22px}
@media(max-width:820px){.modelo-giro-row{grid-template-columns:1fr;gap:20px;padding:18px}}

/* ── rodada 17/09 (Argus #179, itens 926–944) ─────────────────────────────────────────── */
/* logo do topo +20% (44 → 53px) */
.brand-slot .logo{height:53px}
@media(max-width:560px){.brand-slot .logo{height:44px}}
/* lançamento: sem "Ver todos os modelos" no topo; o publicador marca hidden */
.brandbar-cta[hidden]{display:none}
/* hero: credencial da loja junto do pitch; carrossel de imagens (v2) com bolinhas */
.cine-cred{font:600 14px/1.45 var(--font);color:#fff;max-width:56ch;margin:-6px 0 22px;padding-left:12px;border-left:3px solid var(--destaque,#DF071D);text-shadow:0 1px 4px rgba(0,0,0,.7)}
.cine-slides{position:absolute;inset:0}
.cine-slides .cine-media{opacity:0;transition:opacity 1.1s ease}
.cine-slides .cine-media.on{opacity:1}
.cine-dots{display:flex;gap:8px;margin-top:22px}
.cine-dot{width:9px;height:9px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.4);cursor:pointer;transition:.2s}
.cine-dot.on{background:#fff;width:24px;border-radius:100px}
/* pré-venda: fonte maior (dono, 17/09) */
.pv-head h2{font-size:clamp(28px,4vw,42px)}
.pv-head p{font-size:17px}
.pv-head .eyebrow{font-size:12px}
.pv-item h3{font-size:19px}
.pv-item p{font-size:15.5px}
.pv-cta .btn-p{font-size:16px;padding:16px 28px}
/* 2 destaques estilo Instagram: dois cards 9:16 lado a lado, vídeo em loop sem som */
.insta-sec{padding:8px 0 40px}
.insta-head{text-align:center}
.insta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,320px));gap:22px;justify-content:center;margin-top:20px}
.insta-card{margin:0;position:relative;aspect-ratio:9/16;border-radius:22px;overflow:hidden;background:#111;box-shadow:0 16px 40px rgba(0,0,0,.18)}
.insta-card video,.insta-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none;display:block}
.insta-card figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 16px 16px;font:600 14px/1.35 var(--font);color:#fff;background:linear-gradient(180deg,transparent,rgba(0,0,0,.72));text-shadow:0 1px 3px rgba(0,0,0,.6)}
@media(max-width:560px){.insta-grid{grid-template-columns:repeat(2,1fr);gap:12px}.insta-card{border-radius:16px}}
/* comparativo entre modelos: tabela com a linha do carro em destaque; rola na horizontal no celular */
.comparativo-sec{padding:8px 0 40px}
.comp-head{text-align:center}
.comp-head p{margin-left:auto;margin-right:auto;max-width:64ch}
.comp-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.comp{width:100%;border-collapse:collapse;font-size:13px;min-width:860px}
.comp th,.comp td{padding:11px 9px;text-align:center;border-bottom:1px solid var(--line);white-space:nowrap}
.comp th{font:700 11px/1.3 var(--font-head);letter-spacing:.8px;text-transform:uppercase;color:var(--muted);background:var(--surface-2)}
.comp .comp-modelo{text-align:left;font-weight:700;color:var(--text);position:sticky;left:0;background:var(--surface);z-index:1}
.comp th.comp-modelo{background:var(--surface-2)}
.comp tbody tr:last-child td{border-bottom:0}
.comp tr.on td{background:color-mix(in srgb,var(--accent) 9%,var(--surface));font-weight:700;color:var(--text)}
.comp tr.on td.comp-modelo{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}
.comp-nota{font-size:12.5px;color:var(--muted);margin-top:12px;line-height:1.5;max-width:90ch}
/* hero: pitch mais longo (5º maior grupo…) cabe em 4 linhas */
.cine-inner h1{max-width:21ch}
/* hero: nota sob o botão (test drive a partir da pré-venda) */
.cine-inner .cine-nota{font:400 14.5px/1.4 var(--font);color:rgba(255,255,255,.92);margin:26px 0 0;max-width:none;text-shadow:0 1px 4px rgba(0,0,0,.7)}
/* hero de lançamento: entrada em cascata dos textos (sobe + aparece), do selo à nota; sem movimento para quem pediu */
.cine-inner>*{opacity:0;animation:cineIn .9s cubic-bezier(.2,.7,.2,1) forwards}
.cine-inner .eyebrow{animation-delay:.15s}
.cine-inner h1{animation-delay:.3s}
.cine-inner p{animation-delay:.5s}
.cine-inner .cine-cta{animation-delay:.68s}
.cine-inner .cine-nota{animation-delay:.85s}
.cine-inner .cine-dots{animation-delay:1s}
@keyframes cineIn{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.cine-inner>*{animation:none;opacity:1}}
/* card do modelo com o giro 360° no lugar da foto (home de 1 modelo) */
.modelo-img.modelo-giro{flex-direction:column;align-items:stretch;justify-content:center;padding:18px 18px 14px}
.modelo-giro .pdp-giro{margin:0;width:100%}
.modelo-giro .giro-stage{aspect-ratio:4/3;background:transparent;border:0;border-radius:12px}
.modelo-giro .giro-cores{justify-content:center;margin-top:12px}
@media(max-width:820px){.modelo-img.modelo-giro{padding:12px 12px 10px}}
/* card do modelo: carro do giro ~20% maior (sem o respiro de 4% do quadro + escala 1.1; os quadros têm margem lateral
   de ~7%, então não corta a lateral do carro) */
.modelo-giro .giro-stage img{padding:0;transform:scale(1.1);transform-origin:center}
/* pilares: 3 argumentos com foto de campanha grande, linhas alternadas (foto | texto) */
.pilares{display:grid;gap:22px;margin:8px 0 34px}
.pilar{display:grid;grid-template-columns:1.25fr .75fr;gap:0;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.pilar.inv .pilar-img{order:2}
.pilar-img{align-self:stretch;min-height:340px;background:var(--surface-2)}
.pilar-img img{width:100%;height:100%;object-fit:cover;display:block;max-width:none}
.pilar-txt{padding:36px 40px}
.pilar-txt h3{font:800 clamp(24px,2.8vw,34px)/1.1 var(--font-head);letter-spacing:-.4px;color:var(--text);margin:0 0 12px}
.pilar-txt p{color:var(--muted);font-size:15.5px;line-height:1.6;margin:0}
.pdp-pilares{margin-top:40px}
@media(max-width:820px){.pilar,.pilar.inv{grid-template-columns:1fr}.pilar.inv .pilar-img{order:0}.pilar-img{min-height:0;aspect-ratio:16/10}.pilar-txt{padding:22px 22px 26px}}
/* mosaico editorial de campanha: 8 fotos numa grade de 6 colunas (a grande 4x2 · b,c · d,e · f · g · h faixa inteira) */
.mosaico{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:minmax(150px,19vw);gap:10px;margin:8px 0 34px}
.mosaico figure{margin:0;overflow:hidden;border-radius:16px;background:var(--surface-2)}
.mosaico img{width:100%;height:100%;object-fit:cover;display:block;max-width:none}
.mosaico .a{grid-column:span 4;grid-row:span 2}
.mosaico .b,.mosaico .c,.mosaico .g{grid-column:span 2}
.mosaico .d,.mosaico .e{grid-column:span 3}
.mosaico .f{grid-column:span 4}
.mosaico .h{grid-column:span 6}
.pdp-mosaico{margin-top:24px}
@media(max-width:820px){.mosaico{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(130px,42vw);gap:8px}.mosaico .a,.mosaico .f,.mosaico .g,.mosaico .h{grid-column:span 2;grid-row:span 1}.mosaico .b,.mosaico .c,.mosaico .d,.mosaico .e{grid-column:span 1}}
/* PDP: quem é a montadora + quem vai te atender antes do formulário */
.pdp-sobre{margin-top:56px;padding-top:48px;border-top:1px solid var(--line)}
.pdp-sobre .sobre-row+.sobre-row{margin-top:48px}
/* quem vai te atender: logo após o selo só no celular; negrito nos pontos-chave */
.sobre-logo-m{display:none;height:36px;width:auto;margin:10px 0 12px;object-fit:contain}
@media(max-width:820px){.sobre-logo-m{display:block}.sobre-cred .sobre-logo{display:none}}
.sobre-col p strong,.sobre-itens strong{color:var(--text);font-weight:700}
/* PDP no celular: CTA fixo no rodapé da tela (some quando o formulário aparece) */
.pdp-sticky{display:none}
@media(max-width:820px){
  .pdp-sticky{display:block;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-top:1px solid var(--line);transition:transform .25s ease}
  .pdp-sticky .btn{width:100%;text-align:center}
  .pdp-sticky.off{transform:translateY(110%)}
  .pdp{padding-bottom:72px}
}
/* card de número cujo valor é uma palavra (Volkswagen, Yamaha): fonte menor */
.sobre-row .sobre-nums .n.txt{font-size:clamp(19px,2vw,24px);letter-spacing:-.2px}

/* ═══════════════════════════════════════════════════════════════════════════
   TEMA MG — molde 0km-mg. Tudo ACIMA é o styles.css do molde 0km (pages@237fe8b),
   sem alteração. Aqui: tokens escuros por cima, as peças .mg-* (home e página do
   modelo) e o ajuste das páginas herdadas (catálogo, carro, contato, política, 404).
   Cor da marca continua vindo do cadastro (/marcas): --destaque pinta o vermelho.
   ═══════════════════════════════════════════════════════════════════════════ */
:root{
  --mg-red:var(--destaque,#FD2F33);
  --mg-red-txt:var(--cyan-2,var(--destaque,#FD2F33));
  --bg:var(--ground,#000);--surface:#0c0c0d;--surface-2:#151516;--surface-3:#1d1d1f;--line:rgba(255,255,255,.1);
  --text:var(--ink,#fff);--muted:#9a9aa1;--brand:#000;--accent:var(--mg-red);--accent-2:#fff;--navy:var(--mg-red);--navy-2:#fff;
  --radius:16px;
  --font:'Geist',-apple-system,'Segoe UI',Roboto,sans-serif;--font-head:'Geist',-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:'Geist Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}
body.mg{background:var(--bg);color:var(--text);font-weight:400}
.mg h1,.mg h2,.mg h3{font-weight:300;letter-spacing:-.02em}

/* topo */
.mg .brandbar{position:sticky;top:0;background:rgba(0,0,0,.72);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.mg .brandbar .wrap{height:64px}
.mg .brand .logo{height:34px}
.mg .navbtn{display:inline-flex;margin-left:auto;background:transparent;border:1px solid var(--line);border-radius:999px;width:44px;height:44px;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer;padding:0}
.mg .navbtn span{display:block;width:18px;height:1.5px;background:#fff;border-radius:2px;margin:0}
.mg .brandbar-cta{display:none}
.mg .navmenu{background:rgba(0,0,0,.96);border-bottom:1px solid var(--line);top:64px;max-height:calc(100dvh - 64px);box-shadow:none}
.mg .mg-navgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 28px}
.mg .mg-navmodelo{display:block;font:300 1.35rem/1.2 var(--font-head);padding:14px 6px 8px;color:#fff;border-bottom:1px solid var(--mg-red)}
.mg .navlink{border-color:var(--line)}
.mg .navlink .nm{font-weight:400;color:#ddd}
.mg .navlink-cta{color:var(--mg-red-txt);font-weight:500}
@media(max-width:900px){.mg .mg-navgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.mg .mg-navgrid{grid-template-columns:1fr}}

/* peças */
.mg-eyebrow{display:flex;align-items:center;gap:12px;font:500 .7rem/1 var(--mono);letter-spacing:.3em;text-transform:uppercase;color:#cfcfd4;margin:0 0 18px}
.mg-eyebrow span{width:36px;height:1px;background:var(--mg-red);flex:none}
.mg-eyebrow.c{justify-content:center}
.mg-h2{font:300 clamp(2rem,4vw,3.1rem)/1.1 var(--font-head);letter-spacing:-.02em;color:#fff;margin:0 0 18px}
.mg-h2.c{text-align:center}
.mg-lead{color:#b4b4ba;font-size:1rem;line-height:1.7;max-width:640px;margin:0 0 24px}
.mg-lead.c{text-align:center;margin-left:auto;margin-right:auto}
.mg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:999px;border:1px solid var(--mg-red);background:transparent;color:#fff;font:500 .72rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:.2s;white-space:nowrap;text-decoration:none}
.mg-btn:hover{background:var(--mg-red);color:#fff}
.mg-btn-ghost{border-color:rgba(255,255,255,.35)}
.mg-btn-ghost:hover{background:#fff;color:#000;border-color:#fff}
.mg-btn-cheio{background:var(--mg-red);color:#fff}
.mg-btn-cheio:hover{filter:brightness(1.1)}
.mg-link{color:var(--mg-red-txt);font:500 .72rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.mg-sec{padding:88px 0}
@media(max-width:700px){.mg-sec{padding:60px 0}}
.mg-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.mg-sec-head .mg-h2{margin-bottom:0}
section.mg-sec:empty,section.mg-hero:empty,section.mg-sobre:empty,section.mg-care:empty{display:none}   /* seção sem conteúdo some */

/* hero da home: arte da campanha (desktop/celular) + CTA */
.mg-hero{position:relative;background:#000;min-height:min(86vh,820px);display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.mg-hero picture,.mg-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.mg-hero::after{content:'';position:absolute;inset:auto 0 0 0;height:40%;background:linear-gradient(to top,rgba(0,0,0,.75),transparent);pointer-events:none}
.mg-hero-cta{position:relative;z-index:2;padding:0 0 56px}
@media(max-width:700px){.mg-hero{min-height:78vh}}

/* modelos (home) */
.mg-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.mg-cards.n3{grid-template-columns:repeat(3,1fr)}
.mg-cards.n2{grid-template-columns:repeat(2,1fr)}
.mg-cards.n1{grid-template-columns:1fr;max-width:520px}
@media(max-width:1000px){.mg-cards,.mg-cards.n3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.mg-cards,.mg-cards.n3,.mg-cards.n2{grid-template-columns:1fr}}
.mg-card{position:relative;display:block;aspect-ratio:3/4;border-radius:16px;overflow:hidden;background:var(--surface-2);border:1px solid var(--line)}
.mg-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.mg-card:hover img{transform:scale(1.04)}
.mg-card::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.1) 55%,rgba(0,0,0,.35) 100%);pointer-events:none}
.mg-card-nome{position:absolute;top:18px;left:18px;z-index:2;font:300 1.5rem/1 var(--font-head);color:#fff}
.mg-card-pe{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;display:flex;flex-direction:column;gap:10px}
.mg-card-pe .r{font-size:.84rem;color:#d6d6db;line-height:1.5}
.mg-card-pe .p{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.84rem;color:#fff;border-top:1px solid rgba(255,255,255,.2);padding-top:10px}
.mg-card-pe .p b{font-weight:500}
.mg-card-pe .p i{font:500 .62rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mg-red-txt);font-style:normal;white-space:nowrap}

/* cards de versão (ofertas da home, catálogo, página do modelo) */
.mg-versoes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.mg-versoes.n1{grid-template-columns:minmax(0,560px);justify-content:center}
.mg-versoes.n2{grid-template-columns:repeat(2,1fr)}
.mg-versoes.n4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.mg-versoes.n4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.mg-versoes,.mg-versoes.n4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.mg-versoes,.mg-versoes.n2,.mg-versoes.n4{grid-template-columns:1fr}}
.mg-versao{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.mg-versao-img{display:block;background:radial-gradient(ellipse at 50% 70%,#2a2a2d,#0c0c0d 70%);padding:18px 14px 0}
.mg-versao-img img{width:100%;height:auto;aspect-ratio:16/10;object-fit:contain}
.mg-versao-corpo{padding:22px 22px 24px;display:flex;flex-direction:column;gap:14px;flex:1}
.mg-versao-rotulo{font:500 .62rem/1 var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--mg-red-txt)}
.mg-versao h3{font:400 1.5rem/1.1 var(--font-head);margin:-6px 0 0;color:#fff}
.mg-versao-tag{color:#a9a9b0;font-size:.88rem;line-height:1.5;margin:-6px 0 0}
.mg-preco{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.mg-preco .de{font:500 .62rem/1.4 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#9a9aa1}
.mg-preco .de s{color:#777}
.mg-preco strong{font:400 1.9rem/1 var(--font-head);letter-spacing:-.02em;color:#fff}
.mg-preco .cond{font-size:.86rem;color:#e6e6ea;margin-top:4px}
.mg-preco .cond b{font-weight:600;color:#fff}
.mg-preco small{font-size:.68rem;color:#8d8d94;line-height:1.5}
.mg-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;border-top:1px solid var(--line);padding-top:14px}
.mg-specs div{display:flex;flex-direction:column;gap:3px}
.mg-specs b{font:500 1rem/1 var(--mono);color:#fff}
.mg-specs span{font:400 .58rem/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#8d8d94}
.mg-check{list-style:none;margin:0;padding:14px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.mg-check li{position:relative;padding-left:20px;font-size:.84rem;color:#c9c9cf;line-height:1.45}
.mg-check li::before{content:'';position:absolute;left:0;top:.45em;width:10px;height:5px;border-left:1.5px solid var(--mg-red-txt);border-bottom:1.5px solid var(--mg-red-txt);transform:rotate(-45deg)}
.mg-versao-acoes{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:6px}
.mg-versao-acoes .mg-btn{width:100%}
.mg-legal{margin-top:28px;font-size:.7rem;color:#7d7d84;line-height:1.6}
.mg-legal p+p{margin-top:8px}
.mg-grupo+.mg-grupo{margin-top:72px}
.mg-catalogo{padding:56px 24px 88px}
.mg-catalogo-head{margin-bottom:40px}
.mg-grade{display:block}

/* quem somos */
.mg-sobre{padding:96px 0 0;background:linear-gradient(180deg,var(--mg-red) 0%,color-mix(in srgb,var(--mg-red) 55%,#000) 45%,#000 100%)}
.mg-sobre .mg-eyebrow{color:#fff}
.mg-sobre .mg-eyebrow span{background:#fff}
.mg-sobre .mg-lead{color:rgba(255,255,255,.88)}
.mg-sobre-topo{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:start}
.mg-sobre blockquote{margin:0;padding:22px 26px;border:1px solid rgba(255,255,255,.3);border-radius:12px;background:rgba(255,255,255,.08);font-size:1rem;line-height:1.6;color:#fff}
.mg-contadores{display:grid;grid-template-columns:repeat(4,1fr);margin-top:64px;border-top:1px solid rgba(255,255,255,.15)}
.mg-contadores div{padding:40px 12px 48px;text-align:center;border-left:1px solid rgba(255,255,255,.1)}
.mg-contadores div:first-child{border-left:0}
.mg-contadores b{display:block;font:400 clamp(2.4rem,5vw,3.6rem)/1 var(--mono);color:#fff;margin-bottom:12px}
.mg-contadores span{font:400 .64rem/1.3 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#cfcfd4}
@media(max-width:900px){.mg-sobre-topo{grid-template-columns:1fr}.mg-contadores{grid-template-columns:1fr 1fr}.mg-contadores div:nth-child(3){border-left:0}}

/* MG Care */
.mg-care{display:grid;grid-template-columns:1fr 1fr;min-height:560px}
.mg-care-img{position:relative;min-height:360px}
.mg-care-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mg-care-txt{padding:72px 64px;background:var(--surface);display:flex;flex-direction:column;justify-content:center}
.mg-care-txt ul{list-style:none;padding:0;margin:8px 0 32px;display:flex;flex-direction:column}
.mg-care-txt li{display:flex;flex-direction:column;gap:4px;padding:16px 0;border-top:1px solid var(--line)}
.mg-care-txt li b{font-weight:500;color:#fff;font-size:.95rem}
.mg-care-txt li span{font-size:.86rem;color:#a9a9b0;line-height:1.5}
.mg-care-txt .mg-btn{align-self:flex-start}
@media(max-width:900px){.mg-care{grid-template-columns:1fr}.mg-care-txt{padding:48px 24px}}

/* a loja */
.mg-loja-in{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}
.mg-loja-logo{height:48px;width:auto;margin-top:8px}
.mg-loja-cards{display:grid;grid-template-columns:1fr;gap:12px}
.mg-loja-card{display:flex;flex-direction:column;gap:6px;padding:20px 22px;background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:.2s}
.mg-loja-card:hover{border-color:rgba(255,255,255,.3)}
.mg-loja-card small{font:500 .6rem/1 var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#8d8d94}
.mg-loja-card b{font-weight:400;font-size:1.05rem;color:#fff;line-height:1.4}
.mg-loja-card i{font:500 .62rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mg-red-txt);font-style:normal;margin-top:4px}
@media(max-width:900px){.mg-loja-in{grid-template-columns:1fr}}

/* formulário (home e página do modelo) */
.mg-formsec{background:var(--surface);border-top:1px solid var(--line)}
.mg .lead-sec{background:var(--surface);padding:88px 0}
.mg-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.mg-form-pontos{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}
.mg-form-pontos li{display:flex;flex-direction:column;gap:2px;padding:14px 0;border-top:1px solid var(--line)}
.mg-form-pontos b{font-weight:500;color:#fff;font-size:.95rem}
.mg-form-pontos span{font-size:.84rem;color:#a9a9b0}
.mg .form-card,.mg .mg-form-card{background:#000;border:1px solid var(--line);border-radius:18px;box-shadow:none;padding:34px 30px;max-width:none}
.mg .fld label{font:500 .6rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#9a9aa1;margin-bottom:8px}
.mg .fld input,.mg .fld select{width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-size:1rem;color:#fff;transition:.2s;-webkit-appearance:none;appearance:none}
.mg .fld select{background-image:linear-gradient(45deg,transparent 50%,#9a9aa1 50%),linear-gradient(135deg,#9a9aa1 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.mg .fld input::placeholder{color:#66666d}
.mg .fld input:focus,.mg .fld select:focus{outline:none;border-color:var(--mg-red);box-shadow:0 0 0 3px color-mix(in srgb,var(--mg-red) 20%,transparent)}
.mg .mg-form-card .mg-btn{width:100%;margin-top:8px}
.mg .legal{color:#7d7d84}
.mg .legal a{color:#cfcfd4}
.mg .h1-seo{color:#55555c;font-weight:400;font-size:13px;padding:24px 0 0}
@media(max-width:900px){.mg-form-grid{grid-template-columns:1fr;gap:32px}}

/* página do modelo */
.mg-mhero{position:relative;min-height:min(78vh,760px);display:flex;align-items:flex-end;overflow:hidden;background:#000}
.mg-mhero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.85}
.mg-mhero::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.35) 50%,rgba(0,0,0,.2) 100%);pointer-events:none}
.mg-mhero-in{position:relative;z-index:2;padding-top:120px;padding-bottom:64px}
.mg-mhero h1{font:300 clamp(2.4rem,6vw,4.4rem)/1.05 var(--font-head);letter-spacing:-.02em;max-width:780px;margin:0 0 18px;color:#fff}
.mg-mhero p{color:#d6d6db;max-width:560px;line-height:1.7;margin:0 0 28px}
.mg-acoes{display:flex;gap:12px;flex-wrap:wrap}
.mg-mhero .mg-mhero-preco{margin:22px 0 0;font:500 .66rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#cfcfd4}
.mg-mhero-preco b{color:#fff;font-weight:500}
.mg-nums{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.mg-nums-in{display:grid;grid-template-columns:repeat(4,1fr)}
.mg-num{padding:30px 12px;text-align:center;border-left:1px solid var(--line)}
.mg-num:first-child{border-left:0}
.mg-num b{display:block;font:400 2.2rem/1 var(--mono);color:#fff;margin-bottom:10px}
.mg-num b i{font-style:normal;font-size:1rem;color:var(--mg-red-txt);margin-left:4px}
.mg-num span{font:400 .6rem/1.3 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#8d8d94}
@media(max-width:700px){.mg-nums-in{grid-template-columns:1fr 1fr}.mg-num{border-top:1px solid var(--line)}.mg-num:nth-child(-n+2){border-top:0}.mg-num:nth-child(3){border-left:0}}
.mg-galeria{padding-bottom:0}
.mg-galeria-trilho{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 24px 88px;scrollbar-width:none}
.mg-galeria-trilho::-webkit-scrollbar{display:none}
.mg-galeria-trilho figure{flex:0 0 min(72vw,760px);margin:0;scroll-snap-align:center;border-radius:16px;overflow:hidden;background:var(--surface-2);aspect-ratio:16/10}
.mg-galeria-trilho img{width:100%;height:100%;object-fit:cover}

/* rodapé */
.mg .foot{background:#000;border-top:1px solid var(--line);color:#a9a9b0;padding:64px 0 28px}
.mg-foot-topo{display:grid;grid-template-columns:1fr 1.4fr;gap:40px;align-items:start;padding-bottom:40px;border-bottom:1px solid var(--line)}
.mg-foot-marca img{height:40px;width:auto;margin-bottom:18px}
.mg-foot-marca p{font-size:.86rem;line-height:1.6;color:#a9a9b0;max-width:300px}
.mg-foot-contato{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mg-foot-contato a{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;color:#fff;transition:.2s}
.mg-foot-contato a:hover{border-color:rgba(255,255,255,.3)}
.mg-foot-contato small{font:500 .58rem/1 var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#8d8d94}
.mg-foot-contato b{font-weight:400;font-size:.92rem;line-height:1.4}
.mg-foot-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:40px 0 8px}
.mg-foot-cols h2{font:500 .62rem/1 var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#fff;margin:0 0 16px}
.mg-foot-cols ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.mg-foot-cols a{font-size:.86rem;color:#a9a9b0}
.mg-foot-cols a:hover{color:#fff}
.mg .f-legal{border-top:1px solid var(--line);margin-top:32px;opacity:1;color:#6f6f76}
.mg .f-bottom{opacity:1;color:#8d8d94}
@media(max-width:900px){.mg-foot-topo,.mg-foot-contato{grid-template-columns:1fr}.mg-foot-cols{grid-template-columns:1fr 1fr}}

/* páginas herdadas no escuro: carro, contato, 404, política */
.mg .card,.mg .ficha-item,.mg .bloco,.mg .modelo{background:var(--surface);border-color:var(--line)}
.mg .pdp-media .main,.mg .pdp-thumbs img,.mg .card-media{background:radial-gradient(ellipse at 50% 70%,#2a2a2d,#0c0c0d 70%)}
.mg .pdp-sticky{background:rgba(0,0,0,.94);border-top:1px solid var(--line)}
.mg .btn,.mg .hero-cta,.mg .prefoot-cta,.mg .home-cta .btn-p{background:var(--mg-red);color:#fff;font:500 .72rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;border-radius:999px}
.mg .pdp-info h1,.mg .form-card h1,.mg .form-h1{font-weight:300;letter-spacing:-.02em}
.mg .pdp-cores .sw,.mg .giro-cores .sw{box-shadow:0 0 0 1px rgba(255,255,255,.25)}
.mg .back{color:#8d8d94}
.mg .pdp-legal summary::before{background:var(--surface-2)}
.mg .pdp-parcela b,.mg .card-parcela b{color:#fff}                                   /* era a cor da marca (preto) sobre preto */
.mg .pdp-cond,.mg .card-cond{font:500 .68rem/1.3 var(--mono);letter-spacing:.2em;color:var(--mg-red-txt)}
.mg .badge{background:#fff;color:#000}
.mg-card-pe .p{flex-wrap:wrap}
.mg .h1-seo{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0;margin:-1px}   /* no HTML para o robô, fora da tela para a pessoa */

/* vídeo de hero da página do modelo (YouTube da montadora): cobre o hero como a foto; aparece quando carrega */
.mg-mhero-video{position:absolute;top:50%;left:50%;width:max(100%,177.78vh);height:max(100%,56.25vw);transform:translate(-50%,-50%);border:0;pointer-events:none;opacity:0;transition:opacity 1.2s}
.mg-mhero-video.on{opacity:.85}
.mg-mhero-video.mob{display:none}
@media(max-width:700px){.mg-mhero-video.desk{display:none}.mg-mhero-video.mob{display:block;width:max(100%,56.25vh);height:max(100%,177.78vw)}}

/* ═══ TEMA MG v0.2 — movimento e acabamento (medidos no site oficial: reveal 0.9s ease-out-expo com
   escalonamento, hero em slideshow 100vh com zoom de 3s, contadores, abas de diferenciais, hovers 0.3s) ═══ */
:root{--ease:cubic-bezier(.16,1,.3,1)}
.mg-sec{padding:110px 0}
@media(max-width:700px){.mg-sec{padding:64px 0}}

/* reveal no scroll: só esconde com JS ligado (html.js); --i escalona */
html.js [data-rv]{opacity:0;transform:translateY(48px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--i,0)*.1s);will-change:opacity,transform}
html.js [data-rv="left"]{transform:translateX(-64px)}
html.js [data-rv="right"]{transform:translateX(64px)}
html.js [data-rv="scale"]{transform:scale(.92)}
html.js [data-rv].on{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html.js [data-rv]{opacity:1;transform:none;transition:none}.mg-slide.on img,.mg-mhero-bg,.mg-mhero-in>*{animation:none!important}}

/* topo: transparente sobre o hero, sólido depois de rolar */
.mg .brandbar{background:rgba(0,0,0,.35);transition:background .4s,border-color .4s;border-bottom-color:transparent}
.mg .brandbar.scrolled{background:rgba(0,0,0,.82);border-bottom-color:var(--line)}
.mg .brandbar .brand .logo{transition:transform .3s}
.mg .navbtn{transition:border-color .3s,background .3s}
.mg .navbtn:hover{border-color:#fff}

/* hero da home: slideshow em tela cheia */
.mg-hero{height:100vh;min-height:640px;max-height:none;align-items:stretch;justify-content:stretch}
.mg-hero .mg-slides{position:absolute;inset:0}
.mg-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease-in-out;pointer-events:none}
.mg-slide.on{opacity:1;pointer-events:auto}
.mg-slide picture,.mg-slide img,.mg-slide video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
@keyframes mgZoom{0%{transform:scale(1.12)}to{transform:scale(1)}}
.mg-slide.on img{animation:mgZoom 7s var(--ease) both}
.mg-slide-cta{position:absolute;left:0;right:0;bottom:72px;display:flex;justify-content:center;z-index:3;opacity:0;transform:translateY(12px);transition:opacity .8s var(--ease) .6s,transform .8s var(--ease) .6s}
.mg-slide.on .mg-slide-cta{opacity:1;transform:none}
.mg-hero .mg-hero-veu{position:absolute;inset:0;z-index:2;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.15) 40%,rgba(0,0,0,.25) 100%);pointer-events:none}
.mg-hero::after{display:none}
.mg-dots{position:absolute;left:24px;bottom:28px;z-index:3;display:flex;gap:8px}
.mg-dots button{width:8px;height:8px;border-radius:50%;border:0;background:rgba(255,255,255,.35);cursor:pointer;padding:0;transition:background .3s,transform .3s}
.mg-dots button.on{background:#fff;transform:scale(1.25)}
@keyframes mgBlurIn{0%{opacity:0;filter:blur(6px);transform:translateY(12px)}to{opacity:1;filter:blur(0);transform:none}}
@keyframes mgPulse{0%,to{opacity:.3}50%{opacity:1}}
.mg-scroll{position:absolute;right:28px;bottom:28px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;animation:mgBlurIn 1s var(--ease) 1.8s both}
.mg-scroll span{width:1px;height:48px;background:linear-gradient(to bottom,var(--mg-red),transparent);animation:mgPulse 2s ease-in-out infinite 2.4s}
.mg-scroll i{font:400 .6rem/1 var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#9a9aa1;font-style:normal}
@media(max-width:700px){.mg-hero{height:90vh;min-height:560px}.mg-slide-cta{bottom:56px}.mg-scroll{display:none}.mg-dots{left:50%;transform:translateX(-50%)}}

/* hero da página do modelo: zoom de entrada + cascata do texto */
@keyframes mgZoomOut{0%{transform:scale(1.15)}to{transform:scale(1)}}
.mg-mhero-bg{animation:mgZoomOut 3s var(--ease) .2s both}
.mg-mhero-in>*{animation:mgBlurIn .9s var(--ease) both}
.mg-mhero-in>:nth-child(1){animation-delay:.3s}.mg-mhero-in>:nth-child(2){animation-delay:.45s}.mg-mhero-in>:nth-child(3){animation-delay:.6s}.mg-mhero-in>:nth-child(4){animation-delay:.75s}.mg-mhero-in>:nth-child(5){animation-delay:.9s}
.mg-mhero .mg-scroll{right:28px;bottom:28px}
@media(max-width:700px){.mg-mhero .mg-scroll{display:none}}

/* hovers (0.3s, como o oficial) */
.mg-btn{transition:background .3s,color .3s,border-color .3s,transform .3s}
.mg-btn:hover{transform:translateY(-1px)}
.mg-link{position:relative}
.mg-link::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.mg-link:hover::after{transform:scaleX(1)}
.mg-versao{transition:transform .5s var(--ease),border-color .3s}
.mg-versao:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.25)}
.mg-versao-img img{transition:transform .6s var(--ease)}
.mg-versao:hover .mg-versao-img img{transform:scale(1.05)}
.mg-card{transition:border-color .3s,transform .5s var(--ease)}
.mg-card:hover{border-color:rgba(255,255,255,.3);transform:translateY(-4px)}
.mg-card-pe .p i{transition:transform .3s}
.mg-card:hover .mg-card-pe .p i{transform:translateX(4px)}
.mg-loja-card{transition:border-color .3s,transform .4s var(--ease)}
.mg-loja-card:hover{transform:translateY(-2px)}
.mg-foot-cols a{transition:color .2s}

/* tecnologia (home): foto grande + texto + app */
.mg-tec-in{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.mg-tec-img{border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:var(--surface-2)}
.mg-tec-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.mg-tec-in:hover .mg-tec-img img{transform:scale(1.03)}
.mg-nota{font:400 .62rem/1.5 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:#8d8d94;margin:16px 0 0}
.mg-app{display:flex;align-items:center;gap:14px;margin-top:28px}
.mg-app img{width:56px;height:56px;border-radius:14px;object-fit:cover;box-shadow:0 10px 30px rgba(253,47,51,.25)}
.mg-app span{font-size:.86rem;color:#cfcfd4}
@media(max-width:900px){.mg-tec-in{grid-template-columns:1fr;gap:32px}}

/* diferenciais (home): foto que troca + abas 01/05 */
.mg-dif-in{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:stretch}
.mg-dif-img{position:relative;border-radius:16px;overflow:hidden;background:var(--surface-2);min-height:460px}
.mg-dif-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease-in-out,transform 6s linear;transform:scale(1.04)}
.mg-dif-img img.on{opacity:1;transform:scale(1)}
.mg-dif-txt{display:flex;flex-direction:column;justify-content:center}
.mg-dif-contagem{font:400 .7rem/1 var(--mono);letter-spacing:.2em;color:#8d8d94;margin:0 0 28px}
.mg-dif-contagem b{color:#fff;font-weight:500}
.mg-dif-painel{position:relative;min-height:190px}
.mg-dif-item{display:none}
.mg-dif-item.on{display:block;animation:mgBlurIn .6s var(--ease) both}
.mg-dif-item .mg-h2{margin-bottom:14px}
.mg-dif-stat{display:flex;align-items:baseline;gap:12px;margin:0 0 8px}
.mg-dif-stat b{font:400 2rem/1 var(--mono);color:#fff}
.mg-dif-stat span{font:400 .62rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#8d8d94}
.mg-dif-abas{list-style:none;padding:0;margin:24px 0 0}
.mg-dif-abas button{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:14px 0;font:400 .9rem/1 var(--font);color:#8d8d94;cursor:pointer;transition:color .3s,border-color .3s,padding-left .3s}
.mg-dif-abas button:hover{color:#fff}
.mg-dif-abas button.on{color:#fff;border-bottom-color:var(--mg-red);padding-left:8px}
@media(max-width:900px){.mg-dif-in{grid-template-columns:1fr;gap:28px}.mg-dif-img{min-height:300px;aspect-ratio:4/3}}

/* seções do modelo: grade de fotos + banda com pontos numerados */
.mg-tec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
.mg-tec-grid.n1{grid-template-columns:minmax(0,760px);justify-content:center}
.mg-tec-grid.n2,.mg-tec-grid.n4{grid-template-columns:repeat(2,1fr)}
.mg-tec-grid.n5 figure:first-child{grid-column:span 2}
.mg-tec-grid figure{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:border-color .3s,transform .5s var(--ease)}
.mg-tec-grid figure:hover{border-color:rgba(255,255,255,.25);transform:translateY(-3px)}
.mg-tec-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform .8s var(--ease)}
.mg-tec-grid.fotos img{aspect-ratio:4/3}
.mg-tec-grid figure:hover img{transform:scale(1.04)}
.mg-tec-grid figcaption{padding:18px 20px 22px;display:flex;flex-direction:column;gap:6px}
.mg-tec-grid figcaption b{font-weight:500;font-size:1.02rem;color:#fff}
.mg-tec-grid figcaption span{font-size:.86rem;color:#a9a9b0;line-height:1.55}
@media(max-width:900px){.mg-tec-grid,.mg-tec-grid.n5{grid-template-columns:repeat(2,1fr)}.mg-tec-grid.n5 figure:first-child{grid-column:span 2}}
@media(max-width:600px){.mg-tec-grid,.mg-tec-grid.n2,.mg-tec-grid.n4,.mg-tec-grid.n5{grid-template-columns:1fr}.mg-tec-grid.n5 figure:first-child{grid-column:auto}}
.mg-banda{position:relative;padding:120px 0;overflow:hidden;background:#000}
.mg-banda-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.mg-banda::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.45) 60%,rgba(0,0,0,.6) 100%);pointer-events:none}
.mg-banda-in{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.mg-pontos{list-style:none;margin:0;padding:0}
.mg-pontos li{display:flex;align-items:baseline;gap:18px;padding:18px 0;border-top:1px solid rgba(255,255,255,.18)}
.mg-pontos li:last-child{border-bottom:1px solid rgba(255,255,255,.18)}
.mg-pontos b{font:400 .68rem/1 var(--mono);letter-spacing:.2em;color:var(--mg-red-txt);flex:none}
.mg-pontos span{font-size:1.02rem;color:#fff}
@media(max-width:900px){.mg-banda{padding:72px 0}.mg-banda-in{grid-template-columns:1fr;gap:28px}}

/* cores (catálogo): abas por versão + bolinhas + foto grande */
.mg-coressec{background:var(--surface);border-top:1px solid var(--line)}
.mg-cores-topo{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.mg-cores-topo .mg-eyebrow{margin-bottom:0}
.mg-cores-versoes{list-style:none;margin:0;padding:4px;display:inline-flex;gap:4px;border:1px solid var(--line);border-radius:999px;background:#000}
.mg-cores-versoes button{border:0;background:none;color:#8d8d94;font:500 .62rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;padding:10px 16px;border-radius:999px;cursor:pointer;transition:background .3s,color .3s}
.mg-cores-versoes button.on{background:var(--mg-red);color:#fff}
.mg-cores-palco{aspect-ratio:16/8;background:radial-gradient(ellipse at 50% 75%,#2a2a2d,#0c0c0d 70%);border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.mg-cores-palco img{width:min(100%,980px);height:100%;object-fit:contain;transition:opacity .4s}
.mg-cores-pe{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}
.mg-cores-pe b{font-weight:400;font-size:1.3rem;color:#fff}
.mg-cores-sw{display:flex;gap:10px}
.mg-cores-sw button{width:30px;height:30px;border-radius:50%;background:var(--sw);border:2px solid transparent;box-shadow:0 0 0 1px rgba(255,255,255,.35);cursor:pointer;transition:transform .3s,border-color .3s}
.mg-cores-sw button:hover{transform:scale(1.1)}
.mg-cores-sw button.on{border-color:#fff;box-shadow:0 0 0 2px var(--mg-red)}
@media(max-width:600px){.mg-cores-palco{aspect-ratio:4/3}}

/* galeria: setas + arraste */
.mg-galeria-trilho{cursor:grab;padding-bottom:24px}
.mg-galeria-trilho figure{transition:transform .5s var(--ease)}
.mg-galeria-trilho figure:hover{transform:scale(1.01)}
.mg-galeria-nav{display:flex;justify-content:flex-end;gap:10px;padding-bottom:110px}
.mg-galeria-nav button{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:1.1rem;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.mg-galeria-nav button:hover{background:#fff;color:#000;border-color:#fff}
@media(max-width:700px){.mg-galeria-nav{padding-bottom:64px}}
/* o número do contador herda a fonte do <b>; só o rótulo (span irmão) é pequeno */
.mg-contadores b .n,.mg-num b .n{font:inherit;letter-spacing:inherit;text-transform:none;color:inherit;display:inline}

/* ═══ TEMA MG v0.3 — revisão do dono (02/10, noite): topo com navegação, hero fechando na dobra,
   modelos em carrossel com texto no hover, cards de oferta alinhados ═══ */
/* topo: logo + barra de navegação (desktop); hambúrguer só no celular */
.mg .brandbar .wrap{height:72px}
.mg .brand-slot{display:flex;align-items:center;gap:44px;flex:1;min-width:0}
.mg-topnav{display:flex;align-items:center;gap:34px;margin-left:auto;height:72px}
.mg-topnav-item{position:relative;height:72px;display:flex;align-items:center}
.mg-topnav-item>a{font:400 .66rem/1 var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#cfcfd4;display:inline-flex;align-items:center;gap:8px;transition:color .3s;padding:8px 0}
.mg-topnav-item>a:hover{color:#fff}
.mg-topnav-drop>a i{width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .3s}
.mg-topnav-drop:hover>a i{transform:translateY(1px) rotate(225deg)}
.mg-topnav-menu{position:absolute;top:72px;left:-18px;min-width:280px;background:rgba(0,0,0,.96);border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .3s,transform .3s var(--ease),visibility .3s}
.mg-topnav-drop:hover .mg-topnav-menu,.mg-topnav-drop:focus-within .mg-topnav-menu{opacity:1;visibility:visible;transform:none}
.mg-topnav-menu a{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:10px;transition:background .2s}
.mg-topnav-menu a:hover{background:rgba(255,255,255,.06)}
.mg-topnav-menu b{font:300 1.15rem/1.1 var(--font-head);color:#fff}
.mg-topnav-menu span{font-size:.78rem;color:#8d8d94}
.mg-topnav-menu .mg-topnav-todos{margin-top:4px;border-top:1px solid var(--line);border-radius:0;padding-top:14px;font:500 .62rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mg-red-txt)}
.mg-topnav-cta{padding:12px 24px;margin-left:8px}
.mg .navbtn{display:none}
@media(max-width:1180px){.mg-topnav{gap:22px}.mg-topnav-item>a{font-size:.6rem;letter-spacing:.16em}.mg-topnav-cta{display:none}}
@media(max-width:1024px){.mg-topnav{display:none}.mg .navbtn{display:inline-flex}}

/* hero: termina na dobra (72px do topo são da barra), véu como o oficial, CTA e scroll visíveis */
.mg-hero{height:calc(100vh - 72px);min-height:600px}
.mg-hero .mg-hero-veu{background:linear-gradient(to top,rgba(0,0,0,.82) 0%,rgba(0,0,0,.2) 35%,rgba(0,0,0,.2) 100%)}
.mg-slide-cta{bottom:96px}
.mg-dots{bottom:36px}
.mg-scroll{bottom:36px}
@media(max-width:700px){.mg-hero{height:calc(100vh - 64px);min-height:520px}.mg .brandbar .wrap{height:64px}.mg-topnav-menu{display:none}}

/* modelos: carrossel (3 cards por tela), texto só no hover; no toque, sempre visível */
.mg-cards-trilho{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 24px 24px;scrollbar-width:none;cursor:grab}
.mg-cards-trilho::-webkit-scrollbar{display:none}
.mg-cards-trilho.arrastando{cursor:grabbing;scroll-snap-type:none}
.mg-cards-trilho .mg-card{flex:0 0 min(400px,78vw);aspect-ratio:3/4;scroll-snap-align:start}
@media(min-width:1260px){.mg-cards-trilho{padding-left:calc((100vw - var(--wrap)) / 2 + 24px)}}
.mg-cards-trilho .mg-card::after{background:linear-gradient(to top,rgba(0,0,0,.55) 0%,rgba(0,0,0,0) 45%,rgba(0,0,0,.3) 100%);transition:background .5s}
.mg-cards-trilho .mg-card:hover::after,.mg-cards-trilho .mg-card:focus-visible::after{background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.25) 60%,rgba(0,0,0,.35) 100%)}
.mg-cards-trilho .mg-card-pe{opacity:0;transform:translateY(16px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.mg-cards-trilho .mg-card:hover .mg-card-pe,.mg-cards-trilho .mg-card:focus-visible .mg-card-pe{opacity:1;transform:none}
.mg-cards-trilho .mg-card-nome{font-size:1.7rem;top:22px;left:22px;transition:transform .5s var(--ease)}
.mg-cards-trilho .mg-card:hover .mg-card-nome{transform:translateY(-4px)}
@media(hover:none){.mg-cards-trilho .mg-card-pe{opacity:1;transform:none}.mg-cards-trilho .mg-card::after{background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.1) 55%,rgba(0,0,0,.35) 100%)}}
.mg-trilho-nav{display:flex;gap:10px}
.mg-trilho-nav button{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:1.1rem;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.mg-trilho-nav button:hover{background:#fff;color:#000;border-color:#fff}
.mg-galeria-nav{justify-content:flex-end}
.mg-galeria-trilho.arrastando{cursor:grabbing;scroll-snap-type:none}

/* cards de versão alinhados: nome e tagline reservam a mesma altura em todos */
.mg-versao h3{min-height:2.2em;display:flex;align-items:flex-end}
.mg-versao-tag{min-height:2.75em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mg-versao-img{aspect-ratio:16/10.6;display:flex;align-items:flex-end}

/* ═══ TEMA MG v0.4 — página da versão (/carros/<slug>/), próximo passo, pôster do vídeo ═══ */
/* vídeo do hero do modelo: quando carrega, fica opaco e a foto-pôster some (a silhueta aparecia por trás) */
.mg-mhero-video.on{opacity:1}
.mg-mhero.video-on .mg-mhero-bg{opacity:0;transition:opacity 1.6s ease .3s}

/* hero da versão */
.mg-pdp-hero{padding:48px 0 64px;background:radial-gradient(ellipse at 72% 45%,#1c1c1f 0%,#000 62%)}
.mg-pdp-hero-in{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:center}
.mg-pdp-txt>*{animation:mgBlurIn .9s var(--ease) both}
.mg-pdp-txt>:nth-child(1){animation-delay:.2s}.mg-pdp-txt>:nth-child(2){animation-delay:.35s}.mg-pdp-txt>:nth-child(3){animation-delay:.5s}.mg-pdp-txt>:nth-child(4){animation-delay:.65s}.mg-pdp-txt>:nth-child(5){animation-delay:.8s}.mg-pdp-txt>:nth-child(6){animation-delay:.95s}
.mg-pdp-txt h1{font:300 clamp(2.2rem,4.6vw,3.6rem)/1.05 var(--font-head);letter-spacing:-.02em;margin:0 0 14px;color:#fff}
.mg-pdp-tag{color:#b4b4ba;font-size:1.05rem;line-height:1.6;margin:0 0 22px}
.mg-pdp-txt .mg-preco{margin-bottom:22px;background:rgba(255,255,255,.04)}
.mg-pdp-txt .mg-preco strong{font-size:2.3rem}
.mg-pdp-legal{font-size:.68rem;color:#7d7d84;line-height:1.55;margin:22px 0 0}
.mg .mg-pdp-media .main{border-radius:16px;overflow:hidden;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;cursor:zoom-in;animation:mgZoomOut 2.2s var(--ease) both;position:relative}
.mg .mg-pdp-media .main img{width:100%;height:100%;object-fit:contain}
.mg .mg-pdp-media .pdp-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;scrollbar-width:none}
.mg .mg-pdp-media .pdp-thumbs img{width:72px;height:72px;flex:none;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);object-fit:cover;cursor:pointer;opacity:.7;transition:opacity .3s,border-color .3s}
.mg .mg-pdp-media .pdp-thumbs img.on,.mg .mg-pdp-media .pdp-thumbs img:hover{opacity:1;border-color:#fff}
.mg .pdp-aviso{background:var(--surface-2);border:1px solid var(--line);color:#fff;border-radius:12px;padding:16px 18px;margin:0 0 22px}
.mg .pdp-aviso a{color:var(--mg-red-txt);text-decoration:underline}
@media(max-width:900px){.mg-pdp-hero{padding:28px 0 48px}.mg-pdp-hero-in{grid-template-columns:1fr;gap:28px}.mg-pdp-media{order:-1}}

/* destaques + ficha */
.mg-pdp-ficha-in{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
.mg-check.grande{border-top:0;padding-top:0;gap:0}
.mg-check.grande li{font-size:1rem;color:#e6e6ea;padding:12px 0 12px 28px;border-top:1px solid var(--line)}
.mg-check.grande li::before{top:1.1em;width:12px;height:6px}
.mg-check.grande li:last-child{border-bottom:1px solid var(--line)}
.mg .mg-ficha .ficha-item{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:12px 0;display:flex;justify-content:space-between;gap:16px;box-shadow:none}
.mg .mg-ficha .ficha-item:last-child{border-bottom:1px solid var(--line)}
.mg .mg-ficha .ficha-item .k{font:500 .6rem/1.4 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#8d8d94;margin:0}
.mg .mg-ficha .ficha-item .val{font-size:.95rem;color:#fff;text-align:right;font-weight:400}
@media(max-width:900px){.mg-pdp-ficha-in{grid-template-columns:1fr;gap:36px}}

/* próximo passo */
.mg-passo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:8px}
.mg-passo-grid.n3{grid-template-columns:repeat(3,1fr)}
.mg-passo-card{display:flex;flex-direction:column;gap:8px;padding:26px 24px 22px;border:1px solid var(--line);border-radius:16px;background:var(--surface);transition:border-color .3s,transform .5s var(--ease)}
.mg-passo-card:hover{border-color:rgba(255,255,255,.3);transform:translateY(-4px)}
.mg-passo-card b{font:300 1.3rem/1.15 var(--font-head);color:#fff}
.mg-passo-card span{font-size:.86rem;color:#a9a9b0;line-height:1.5;flex:1}
.mg-passo-card i{font:500 .9rem/1 var(--mono);color:var(--mg-red-txt);font-style:normal;margin-top:8px;transition:transform .3s}
.mg-passo-card:hover i{transform:translateX(6px)}
@media(max-width:900px){.mg-passo-grid,.mg-passo-grid.n3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.mg-passo-grid,.mg-passo-grid.n3{grid-template-columns:1fr}}

/* barra fixa do celular (preço + CTA) — some enquanto o formulário está na tela */
.mg .pdp-sticky{display:none;position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(0,0,0,.94);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:10px 0;transition:transform .3s}
.mg .pdp-sticky.off{transform:translateY(110%)}
.mg .pdp-sticky .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px}
.mg .pdp-sticky span{font:400 1.15rem/1 var(--font-head);color:#fff}
.mg .pdp-sticky .mg-btn{padding:12px 20px}
@media(max-width:900px){.mg .pdp-sticky{display:block}body.mg{padding-bottom:0}}
