/* Pagina de ofertas Divesa One - visual "Vitrine Noir" aprovado pelo Alisson
   em 11/11/2026 (maquete /opt/landing/maquete/hibrida/1-vitrine-noir.html). */
@font-face{font-family:'c-a-c';src:url(c-a-c.woff2) format('woff2');font-display:swap}
@font-face{font-family:'c-s-d';src:url(c-s-d.woff2) format('woff2');font-display:swap}
@font-face{font-family:'c-s-r';src:url(c-s-r.woff2) format('woff2');font-display:swap}
:root{--fundo:#000;--card:#111;--lin:#262626;--txt:#fff;--mut:#a6a6a6;--azul:#0078d6;--azul-h:#1a8be6;--erro:#ff8a80}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--fundo);color:var(--txt);font:16px/1.5 'c-s-r',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.env{max-width:1200px;margin:0 auto;padding:0 24px}
.so-leitor{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1,h2,h3,.v-nome{font-family:'c-a-c',Georgia,serif;font-weight:400;margin:0}
button{font:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--azul-h);outline-offset:2px}

header{background:#000;border-bottom:1px solid var(--lin)}
header .env{display:flex;justify-content:space-between;align-items:center;height:72px}
header .estrela{width:42px;height:42px}
header .divesa{width:108px;height:auto}

.v-hero{background:#000}
.v-banner{width:100%;height:auto}
.v-sob{display:flex;justify-content:center;padding:20px 24px 0}
.v-ver{font:14px 'c-s-d',sans-serif;text-decoration:none;border:1px solid #555;padding:11px 22px;letter-spacing:.04em}
.v-ver:hover{border-color:#fff}

.v-lista{padding-top:56px;padding-bottom:80px}
.v-titulo{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 16px;flex-wrap:wrap;margin-bottom:24px}
.v-titulo .v-qtd{margin-top:8px}
.v-titulo h2{font-size:38px;line-height:1.1}
.v-qtd{margin:0;font:12px 'c-s-d',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
/* Carrossel como o da Jeep/Ram (12/11): rolagem nativa com encaixe, o dedo
   arrasta no celular; no computador ha setas, bolinhas e arrastar com o mouse.
   Sem JS a faixa continua rolavel. */
.v-dica{margin:0 0 0 auto;font:11px 'c-s-d',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.v-setas{display:flex;gap:8px}
.v-setas[hidden],.v-pontos[hidden],.v-dica[hidden],.v-ponto[hidden]{display:none}
.v-seta{width:46px;height:46px;border:1px solid #555;border-radius:50%;background:transparent;color:#fff;font-size:26px;line-height:1;padding:0 0 3px}
.v-seta:hover:not(:disabled){border-color:#fff}
.v-seta:disabled{opacity:.3;cursor:default}
.v-trilho{display:grid;grid-auto-flow:column;grid-auto-columns:86%;gap:14px;align-items:stretch;
  margin:0 -16px;padding:4px 16px 8px;overflow-x:auto;overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;scroll-padding:0 16px;scrollbar-width:none}
.v-trilho::-webkit-scrollbar{display:none}
.v-trilho>.v-card{scroll-snap-align:start;min-width:0}
.v-trilho.arrastando{scroll-snap-type:none;cursor:grabbing;user-select:none}
.v-trilho.arrastando *{pointer-events:none}
.v-pontos{display:flex;justify-content:center;gap:8px;padding:14px 0 0}
/* alvo de toque de 44px sem bolinha gigante */
.v-ponto{box-sizing:content-box;width:8px;height:8px;padding:0;border:18px solid transparent;margin:-18px -10px;
  border-radius:50%;background:#444;background-clip:padding-box;transition:background-color .2s}
.v-ponto.ativo{background-color:#fff}
.v-card.alvo{border-color:var(--azul)}
@media (min-width:641px){
  .v-trilho{grid-auto-columns:calc((100% - 16px)/2.15);gap:16px;margin:0 -24px;padding:4px 24px 8px;scroll-padding:0 24px}
}
@media (min-width:1100px){
  .v-trilho{grid-auto-columns:calc((100% - 32px)/3);gap:16px;margin:0;padding:4px 0 8px;scroll-padding:0;cursor:grab}
}
.v-card{background:var(--card);border:1px solid var(--lin);display:flex;flex-direction:column;scroll-margin-top:24px}
.v-card[hidden]{display:none}
.v-foto{width:100%;aspect-ratio:4/3;object-fit:cover}
.v-cb{padding:18px 18px 20px;display:flex;flex-direction:column;gap:12px;flex:1}
.v-seg{margin:0;font:11px 'c-s-d',sans-serif;letter-spacing:.15em;color:#8a8a8a;text-transform:uppercase}
.v-nome{font-size:23px;line-height:1.15}
.v-nome small{font:13px 'c-s-r',sans-serif;color:var(--mut);white-space:nowrap}
.v-restrito{margin:0;align-self:flex-start;font:11px 'c-s-d',sans-serif;letter-spacing:.06em;text-transform:uppercase;
  border:1px solid #c9cdd2;color:#e8eaec;padding:4px 8px}
.v-preco{border-top:1px solid #333;border-bottom:1px solid #333;padding:12px 0}
.v-de{margin:0;font-size:13px;color:var(--mut)}
.v-de s{text-decoration-thickness:1px}
.v-por{margin:2px 0 0;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.v-por span{font-size:14px;color:var(--mut)}
.v-por b{font:400 31px/1.05 'c-s-d',sans-serif;background:linear-gradient(180deg,#fff,#a8acb2);
  -webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap}
.v-por i{font-style:normal;color:var(--mut);font-size:13px;margin-left:-6px}
.v-pag{margin:4px 0 0;font-size:12px;color:var(--mut)}
.v-ben{list-style:none;margin:0;padding:0;font-size:13px;color:#d0d0d0;display:grid;gap:5px}
.v-ben li:before{content:'+ ';color:var(--azul-h)}
.v-meta{margin:0;font-size:12px;line-height:1.5;color:#8f8f8f;flex:1}
.v-bt{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.v-sec,.v-cta{display:inline-block;text-align:center;text-decoration:none;font:13px 'c-s-d',sans-serif;padding:12px 6px;border:1px solid #666;background:none;color:#fff}
.v-cta{background:var(--azul);border-color:var(--azul)}
.v-cta:hover{background:var(--azul-h);border-color:var(--azul-h)}
.v-sec:hover{border-color:#fff}
.v-vazio{border:1px solid var(--lin);padding:40px 24px;text-align:center}
.v-vazio h3{font-size:26px;margin-bottom:8px}
.v-vazio p{color:var(--mut)}
.v-vazio .v-cta{padding:13px 26px}

/* Formulario: mesmas perguntas da landing mensal. */
#simular{background:#0b0b0b;border-top:1px solid var(--lin);padding:64px 0 80px}
.v-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:48px;align-items:start}
.v-kick{margin:0 0 8px;font:12px 'c-s-d',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}
.v-form h2{font-size:40px;line-height:1.1}
.v-form .sub{color:#bdbdbd;max-width:420px}
.cartao{background:#fff;color:#141414}
.cartao .topo{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid #e3e3e3;font-size:13px;color:#555}
.cartao .topo select{flex:1;min-width:0;width:100%;max-width:100%;text-overflow:ellipsis;font:14px 'c-s-d',sans-serif;color:#005ea8;border:1px solid #d6d6d6;background:#fff;padding:8px 10px}
.miolo{padding:0 20px 20px}
.barra{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding-top:18px}
.barra i{height:3px;background:#e3e3e3}
.barra i.on{background:var(--azul)}
.etapa{border:0;margin:0;padding:22px 0 0}
.etapa legend{font:20px 'c-a-c',Georgia,serif;margin-bottom:14px;padding:0}
.ops{display:grid;gap:10px}
.ops label{display:block;cursor:pointer}
.ops input{position:absolute;opacity:0}
.ops span{display:block;border:1px solid #cfcfcf;padding:13px 16px}
.ops input:checked+span{border-color:var(--azul);box-shadow:inset 0 0 0 1px var(--azul);background:#f2f8fd}
.ops input:focus-visible+span{outline:2px solid var(--azul);outline-offset:2px}
.campos{display:grid;gap:12px}
.campo span{display:block;font-size:13px;color:#555;margin-bottom:4px}
.campo input{width:100%;height:48px;border:1px solid #cfcfcf;padding:0 12px;font:16px 'c-s-r',sans-serif;color:#141414}
.campo input[aria-invalid=true]{border-color:#c62828}
.confirme{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.aceite{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#444;margin-top:14px}
.aceite a{color:#005ea8}
.erro{color:#c62828;font-size:14px;margin:12px 0 0}
.bt{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:var(--azul);color:#fff;
  font:15px 'c-s-d',sans-serif;padding:14px 20px;text-decoration:none;width:100%;margin-top:16px}
.bt:hover{background:var(--azul-h)}
.bt:disabled{opacity:.6;cursor:wait}
.rodape-form{display:flex;justify-content:space-between;align-items:center;margin-top:18px;border-top:1px solid #eee;padding-top:14px}
.voltar,.continuar{background:none;border:1px solid #cfcfcf;padding:10px 16px;color:#141414}
.continuar{margin-left:auto}
.continuar:disabled{opacity:.45;cursor:default}
.fim{padding:28px 20px}
.fim-titulo{font:26px 'c-a-c',Georgia,serif;margin:0 0 8px}
.fim-ajuda{color:#444}
.zap{background:#128c4a}
.zap:hover{background:#0f7a40}
.fim-ref{font-size:12px;color:#777;margin:12px 0 0}
.cod{font-family:'c-s-d',sans-serif;letter-spacing:.08em}

dialog{max-width:640px;width:calc(100% - 32px);border:0;padding:0;background:#fff;color:#141414}
dialog::backdrop{background:rgba(0,0,0,.7)}
.dtopo{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid #e3e3e3}
.dtopo h4{margin:0;font:16px 'c-s-d',sans-serif}
.dtopo button{border:0;background:none;font-size:26px;line-height:1;color:#444}
.dcorpo{padding:18px;font-size:14px;line-height:1.6;max-height:70vh;overflow:auto}

footer{border-top:1px solid var(--lin);padding:28px 0 40px;color:#9a9a9a;font-size:12px}
footer p{margin:0 0 8px}
footer .lema{color:#fff}
.cookies{position:fixed;left:0;right:0;bottom:0;background:#0d0d0d;border-top:1px solid #333;z-index:20;font-size:12px;color:#bbb}
.cookies .env{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;padding-bottom:12px}
.cookies p{margin:0}
.cookies a{color:#4fb0ff}
.bt-cookies{border:1px solid #555;background:#000;color:#fff;padding:9px 18px;font:13px 'c-s-d',sans-serif}

@media (max-width:760px){
  .v-form{grid-template-columns:minmax(0,1fr);gap:24px}
  .cartao .topo{flex-direction:column;align-items:stretch;gap:6px}
  .v-form h2{font-size:32px}
}
@media (max-width:640px){
  .env{padding:0 16px}
  .v-titulo h2{font-size:30px}
  .v-setas{display:none}
  .v-lista{padding-top:36px}
  .cookies .env{flex-direction:column;align-items:stretch}
}
