/* 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}
