:root{
  --fundo:#0d0f12; --fundo2:#14171c; --linha:#252a32;
  --texto:#e9ecf1; --fraco:#98a2b3; --destaque:#f5b301; --destaque2:#ffd45e;
  --verde:#2fbf71; --amarelo:#f5b301; --vermelho:#e5484d; --laranja:#ff6b1a;
  --fonte:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--fundo);color:var(--texto);font-family:var(--fonte);line-height:1.6;font-size:17px}
.tela{display:none}
.tela.ativa{display:block;animation:entra .35s ease}
@keyframes entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.oculto{display:none !important}
.nowrap{white-space:nowrap}

/* ---------- landing ---------- */
.topo{padding:22px 24px;border-bottom:1px solid var(--linha)}
.marca{font-size:12px;letter-spacing:.16em;color:var(--fraco)}
.marca b{color:var(--texto)}
.hero{max-width:820px;margin:0 auto;padding:64px 24px 48px;text-align:center}
.olho{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--destaque);margin-bottom:22px;font-weight:600}
h1{font-size:clamp(30px,5.6vw,52px);line-height:1.12;letter-spacing:-.02em;font-weight:800;margin-bottom:24px}
.destaque{color:var(--destaque)}
.sub{font-size:clamp(17px,2.2vw,20px);color:#c4cbd6;max-width:640px;margin:0 auto 32px}
.preco-linha{display:flex;align-items:baseline;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:26px}
.preco-linha.centro{margin:18px 0 22px}
.preco-de{color:var(--fraco);text-decoration:line-through;font-size:15px}
.preco-por{font-size:15px;color:var(--fraco)}
.preco-por b{font-size:40px;color:var(--destaque);letter-spacing:-.02em}
.preco-obs{font-size:13px;color:var(--fraco)}

.botao{display:inline-block;background:var(--destaque);color:#161616;border:0;border-radius:10px;
  padding:16px 30px;font-size:15px;font-weight:800;letter-spacing:.05em;cursor:pointer;
  text-decoration:none;text-align:center;transition:transform .12s,background .2s;font-family:inherit}
.botao:hover{background:var(--destaque2);transform:translateY(-1px)}
.botao:active{transform:none}
.botao.grande{padding:19px 40px;font-size:16px;width:100%;max-width:440px}
.botao.fantasma{background:transparent;color:var(--fraco);border:1px solid var(--linha)}
.botao.fantasma:hover{background:var(--fundo2);color:var(--texto)}
.botao[disabled]{opacity:.5;cursor:not-allowed;transform:none}
.micro{font-size:13.5px;color:var(--fraco);margin-top:14px}
.setores{margin-top:34px;padding-top:24px;border-top:1px solid var(--linha);font-size:13px;
  color:#67707e;letter-spacing:.03em;line-height:2;max-width:600px;margin-left:auto;margin-right:auto}
.micro a{color:var(--fraco)}

.bloco{max-width:760px;margin:0 auto;padding:40px 24px;border-top:1px solid var(--linha)}
.bloco h2{font-size:clamp(22px,3.4vw,30px);line-height:1.22;letter-spacing:-.015em;margin-bottom:18px;font-weight:800}
.bloco p{color:#c4cbd6;margin-bottom:14px}
.bloco i{color:var(--fraco)}
.lista{list-style:none}
.lista li{padding:13px 0 13px 26px;border-bottom:1px solid var(--linha);position:relative;color:#c4cbd6}
.lista li:before{content:"→";position:absolute;left:0;color:var(--destaque);font-weight:700}
.lista li b{color:var(--texto)}
.autoridade{background:var(--fundo2);max-width:none}
.autoridade p{max-width:760px;margin-left:auto;margin-right:auto;font-size:18px}
.assinatura{color:var(--destaque);font-weight:700}
.cta-final{text-align:center}
.rodape{padding:32px 24px 48px;text-align:center;border-top:1px solid var(--linha)}
.rodape p{font-size:12.5px;color:#67707e;max-width:620px;margin:0 auto}

/* ---------- formulários ---------- */
.caixa{max-width:560px;margin:0 auto;padding:56px 24px 72px}
.caixa.larga{max-width:720px}
.caixa.centro{text-align:center;padding-top:110px}
.passo-info{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--destaque);font-weight:700;margin-bottom:12px}
.caixa h2{font-size:clamp(24px,4vw,34px);line-height:1.18;letter-spacing:-.02em;margin-bottom:10px;font-weight:800}
.ajuda{color:var(--fraco);margin-bottom:28px;font-size:15.5px}
label{display:block;margin-bottom:20px;font-size:14.5px;font-weight:600;color:#d5dbe4}
.opc{color:#67707e;font-weight:400;font-size:13px}
input,textarea,select{width:100%;margin-top:8px;background:var(--fundo2);border:1px solid var(--linha);
  border-radius:9px;padding:13px 14px;color:var(--texto);font-size:16px;font-family:inherit;font-weight:400;line-height:1.5}
textarea{min-height:92px;resize:vertical}
input:focus,textarea:focus,select:focus{outline:0;border-color:var(--destaque)}
input::placeholder,textarea::placeholder{color:#5c6673}
.dica{display:block;margin-top:6px;font-size:13px;color:#67707e;font-weight:400}
.erro{color:var(--vermelho);font-size:14px;min-height:20px;margin-bottom:8px}
.navegacao{display:flex;gap:12px;margin-top:8px}
.navegacao .botao{flex:1}
.barra-progresso{height:3px;background:var(--linha)}
#progresso{height:100%;width:0;background:var(--destaque);transition:width .3s}
.escolha{display:flex;gap:10px;margin-top:8px}
.escolha button{flex:1;background:var(--fundo2);border:1px solid var(--linha);color:var(--texto);
  padding:14px;border-radius:9px;cursor:pointer;font-size:15px;font-family:inherit;font-weight:600}
.escolha button.marcado{border-color:var(--destaque);background:rgba(245,179,1,.1);color:var(--destaque)}

.girando{width:38px;height:38px;border:3px solid var(--linha);border-top-color:var(--destaque);
  border-radius:50%;margin:0 auto 26px;animation:gira .9s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}

/* ---------- paywall ---------- */
.selo{background:var(--fundo2);border:1px solid var(--linha);border-radius:12px;padding:22px;text-align:center;margin-bottom:10px}
.selo-rot{display:block;font-size:11.5px;letter-spacing:.14em;color:var(--fraco);margin-bottom:8px}
.selo b{font-size:34px;font-weight:800;letter-spacing:-.01em}
.selo.forte b{color:var(--verde)} .selo.moderado b{color:var(--amarelo)}
.selo.fraco b{color:var(--vermelho)} .selo.sem b{color:var(--fraco)}
.selo-legenda{color:var(--fraco);font-size:14.5px;text-align:center;margin-bottom:30px}
.previa{border-left:3px solid var(--destaque);padding-left:18px;margin-bottom:26px}
.previa-rot{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--fraco);margin-bottom:8px}
.previa-texto{font-size:19px;font-weight:600;line-height:1.45}
.previa-corte{font-size:15px;color:#67707e;font-style:italic;margin-top:6px}

.travado{background:rgba(245,179,1,.07);border:1px solid rgba(245,179,1,.28);
  border-radius:11px;padding:20px;margin-bottom:30px}
.travado-rot{font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--destaque);
  font-weight:700;margin-bottom:10px}
.travado-texto{font-size:17px;line-height:1.5;color:#e9ecf1;font-style:italic;margin-bottom:10px}
.travado-resposta{font-size:14px;color:var(--fraco)}

.indice-rot{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--fraco);margin-bottom:14px}
.indice-rot b{color:var(--destaque)}
.indice{list-style:none;margin-bottom:30px;border:1px solid var(--linha);border-radius:11px;overflow:hidden}
.indice li{padding:11px 16px 11px 42px;border-bottom:1px solid var(--linha);position:relative;
  font-size:14.5px;color:#c4cbd6;background:var(--fundo2)}
.indice li:last-child{border-bottom:0}
.indice li:before{content:"🔒";position:absolute;left:15px;font-size:12px;opacity:.75}
.indice li.extra{color:var(--destaque);font-weight:600}

.destrava{background:var(--fundo2);border:1px solid var(--linha);border-radius:12px;padding:28px 22px;text-align:center}
.destrava-texto{font-size:17px;font-weight:600;margin-bottom:4px}
.comparacao{font-size:14.5px;color:#c4cbd6;margin-bottom:20px}
.prazo{font-size:13px;color:var(--destaque);margin-top:14px;line-height:1.6}
.prazo-claro{color:var(--fraco)}
.validade{max-width:860px;margin:16px auto 0;padding:14px 20px;background:rgba(245,179,1,.09);
  border:1px solid rgba(245,179,1,.3);border-radius:10px;font-size:14px;color:#d5dbe4;line-height:1.55}

/* ---------- urgência e destaque ---------- */
.selo-topo{display:inline-block;background:linear-gradient(90deg,var(--laranja),var(--destaque));
  color:#1a1206;padding:9px 18px;border-radius:30px;font-weight:800;letter-spacing:.02em;
  text-transform:none;font-size:13.5px;margin-bottom:26px;line-height:1.4}
.entrega-topo{margin-top:26px;padding:16px 20px;background:var(--fundo2);border:1px solid var(--linha);
  border-radius:11px;font-size:14px;color:#c4cbd6;line-height:1.6;max-width:560px;
  margin-left:auto;margin-right:auto}
.entrega-topo b{color:var(--destaque)}

.pulsa{animation:pulsar 2.1s ease-in-out infinite;box-shadow:0 0 0 0 rgba(245,179,1,.55)}
@keyframes pulsar{
  0%{box-shadow:0 0 0 0 rgba(245,179,1,.5)}
  70%{box-shadow:0 0 0 16px rgba(245,179,1,0)}
  100%{box-shadow:0 0 0 0 rgba(245,179,1,0)}
}
@media(prefers-reduced-motion:reduce){.pulsa{animation:none}}

.contador{background:linear-gradient(135deg,rgba(255,107,26,.16),rgba(229,72,77,.12));
  border:1px solid rgba(255,107,26,.45);border-radius:11px;padding:16px;margin-bottom:22px;text-align:center}
.contador-rot{display:block;font-size:11px;letter-spacing:.14em;color:var(--laranja);font-weight:800}
.contador b{display:block;font-size:38px;letter-spacing:-.02em;color:#fff;margin:4px 0;
  font-variant-numeric:tabular-nums}
.contador-obs{display:block;font-size:12.5px;color:#b9a08a}
.contador.acabando{border-color:var(--vermelho);animation:tremer 1s ease-in-out infinite}
.contador.acabando b{color:var(--vermelho)}
@keyframes tremer{0%,100%{transform:none}50%{transform:scale(1.02)}}

.tabela-valor{text-align:left;margin-bottom:22px;border:1px solid var(--linha);border-radius:11px;overflow:hidden}
.tabela-valor div{display:flex;justify-content:space-between;gap:12px;align-items:baseline;
  padding:12px 16px;border-bottom:1px solid var(--linha);font-size:14px;color:var(--fraco)}
.tabela-valor div:last-child{border-bottom:0}
.tabela-valor b{color:#c4cbd6;white-space:nowrap;text-decoration:line-through;font-weight:600}
.tabela-valor .agora{background:rgba(245,179,1,.12)}
.tabela-valor .agora span{color:var(--texto);font-weight:700}
.tabela-valor .agora b{color:var(--destaque);font-size:26px;text-decoration:none;letter-spacing:-.02em}

.barra-etapas{height:6px;background:var(--linha);border-radius:4px;margin:26px auto 12px;max-width:340px;overflow:hidden}
#barra-etapas-preenche{height:100%;width:0;background:linear-gradient(90deg,var(--laranja),var(--destaque));
  border-radius:4px;transition:width .6s ease}
.etapas-lista{list-style:none;max-width:340px;margin:18px auto 0;text-align:left}
.etapas-lista li{font-size:14px;color:#5c6673;padding:7px 0 7px 26px;position:relative}
.etapas-lista li:before{content:"○";position:absolute;left:4px}
.etapas-lista li.feito{color:var(--verde)}
.etapas-lista li.feito:before{content:"✓";color:var(--verde);font-weight:700}
.etapas-lista li.agora{color:var(--destaque);font-weight:600}
.etapas-lista li.agora:before{content:"●";color:var(--destaque)}

.liberado{color:var(--verde) !important}
.lista-entrega{list-style:none;max-width:420px;margin:26px auto 0;text-align:left}
.lista-entrega li{font-size:14.5px;color:#c4cbd6;padding:9px 0 9px 26px;position:relative;
  border-bottom:1px solid var(--linha)}
.lista-entrega li:last-child{border-bottom:0}
.lista-entrega li:before{content:"✓";position:absolute;left:2px;color:var(--verde);font-weight:700}

.alerta{background:var(--fundo2);max-width:none}
.alerta h2,.alerta p{max-width:760px;margin-left:auto;margin-right:auto}
.destaque-linha{border-left:3px solid var(--destaque);padding-left:16px;font-size:18px;
  color:var(--texto);font-weight:600;margin-top:22px}

/* ---------- resultado ---------- */
.topo-resultado{max-width:860px;margin:0 auto;padding:40px 24px 20px;display:flex;
  justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.abas{max-width:860px;margin:0 auto;padding:0 24px;display:flex;gap:6px;border-bottom:1px solid var(--linha);flex-wrap:wrap}
.aba{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--fraco);
  padding:12px 14px;cursor:pointer;font-size:14.5px;font-family:inherit;font-weight:600}
.aba.ativa{color:var(--destaque);border-bottom-color:var(--destaque)}
.documento{max-width:860px;margin:0 auto;padding:36px 24px 80px}
.documento h1{font-size:clamp(25px,4vw,34px);line-height:1.2;margin-bottom:24px;letter-spacing:-.02em}
.documento h2{font-size:20px;margin:38px 0 12px;padding-top:18px;border-top:1px solid var(--linha);letter-spacing:-.01em}
.documento h3{font-size:17px;margin:24px 0 8px;color:var(--destaque)}
.documento p{margin-bottom:13px;color:#d5dbe4}
.documento ul,.documento ol{margin:0 0 15px 22px}
.documento li{margin-bottom:7px;color:#d5dbe4}
.documento strong{color:#fff}
.documento table{width:100%;border-collapse:collapse;margin:16px 0 22px;font-size:14.5px;display:block;overflow-x:auto}
.documento th,.documento td{border:1px solid var(--linha);padding:9px 11px;text-align:left;vertical-align:top}
.documento th{background:var(--fundo2);color:var(--texto);font-weight:700}
.documento td{color:#c4cbd6}
.documento hr{border:0;border-top:1px solid var(--linha);margin:26px 0}
pre{background:var(--fundo2);border:1px solid var(--linha);border-radius:10px;padding:20px;
  white-space:pre-wrap;word-wrap:break-word;font-size:13.5px;line-height:1.62;color:#c4cbd6;margin-top:16px}
.rodape-res{max-width:860px;margin:0 auto;padding:0 24px 60px}
code{background:var(--fundo2);padding:2px 6px;border-radius:5px;font-size:13px;word-break:break-all}

/* ---------- impressão / PDF ---------- */
@media print{
  @page{margin:16mm 14mm}
  body{background:#fff;color:#111;font-size:11.5pt}
  .nao-imprimir,.abas,.topo-resultado,.rodape-res{display:none !important}
  .documento{max-width:none;padding:0;page-break-after:always}
  .documento.oculto{display:block !important}
  .documento h1{font-size:20pt;color:#111;border-bottom:2px solid #f5b301;padding-bottom:8px}
  .documento h2{font-size:13.5pt;color:#111;border-top:1px solid #ccc;page-break-after:avoid;margin-top:22px}
  .documento h3{font-size:12pt;color:#8a6400;page-break-after:avoid}
  .documento p,.documento li,.documento td{color:#222}
  .documento strong{color:#000}
  .documento table{display:table;font-size:9.5pt;page-break-inside:avoid}
  .documento th{background:#f4f4f4;color:#111;border-color:#bbb}
  .documento td{border-color:#bbb}
  pre{background:#f7f7f7;border-color:#ddd;color:#222;font-size:9pt}
}

@media(max-width:640px){
  body{font-size:16px}
  .hero{padding:44px 20px 36px}
  .caixa{padding:36px 20px 60px}
  .navegacao{flex-direction:column-reverse}
  .escolha{flex-direction:column}
  .topo-resultado{align-items:flex-start}
}
