/* Diagnóstico passo a passo (formulário-funil) */
.d-body{min-height:100svh;display:flex;flex-direction:column;background:
  radial-gradient(ellipse 70% 45% at 50% 0%,color-mix(in srgb,var(--acao) 18%,transparent),transparent 70%),var(--fundo)}
.d-topo{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:14px var(--gutter) 10px;max-width:760px;width:100%;margin:0 auto}
.d-marca{grid-column:2;justify-self:center;font-family:var(--f-titulo);font-size:22px;letter-spacing:.12em;text-decoration:none}
.d-voltar{grid-column:1;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--borda);color:var(--texto2)}
.d-voltar svg{width:20px;height:20px}
.d-passo{grid-column:3;justify-self:end;font-family:var(--f-mono);font-size:12px;color:var(--texto2);white-space:nowrap}
.d-barra{height:4px;background:var(--borda);max-width:760px;width:calc(100% - 2 * var(--gutter));margin:0 auto;border-radius:9px;overflow:hidden}
.d-barra i{display:block;height:100%;width:0;background:var(--grad-acao);transition:width .4s var(--ease)}

.d-palco{flex:1;width:100%;max-width:640px;margin:0 auto;padding:clamp(28px,6vh,64px) var(--gutter) 48px}
.d-tela{animation:d-entra .35s var(--ease) both}
@keyframes d-entra{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.d-dica{font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--acao2);margin-bottom:14px}
.d-tela h1{font-size:clamp(40px,7vw,60px);text-wrap:balance}
.d-micro{margin-top:12px;color:var(--texto2);font-size:16px}
.d-opcoes{display:grid;gap:10px;margin-top:28px}
.d-op{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:17px 18px;min-height:58px;background:var(--card);border:1px solid var(--borda);border-radius:var(--raio);cursor:pointer;font-size:17px;transition:border-color .2s,background .2s,transform .15s}
.d-op:hover{border-color:var(--borda2)}
.d-op:active{transform:scale(.99)}
.d-op .k{flex:none;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-family:var(--f-mono);font-size:12px;font-weight:700;color:var(--texto2);border:1px solid var(--borda)}
.d-op[aria-pressed="true"]{border-color:var(--acao);background:color-mix(in srgb,var(--acao) 12%,var(--card))}
.d-op[aria-pressed="true"] .k{background:var(--acao);color:var(--texto-acao);border-color:var(--acao)}
.d-campo{display:block;margin-top:24px}
.d-campo span{display:block;font-size:14px;color:var(--texto2);margin-bottom:8px}
.d-campo input,.d-tel select,.d-tel input{width:100%;font:inherit;font-size:18px;color:var(--texto);background:var(--card);border:1px solid var(--borda);border-radius:var(--raio);padding:16px 16px;outline:none}
.d-campo input:focus,.d-tel select:focus,.d-tel input:focus{border-color:var(--acao)}
.d-tel{display:grid;grid-template-columns:118px 1fr;gap:8px}
.d-aceite{display:flex;gap:10px;align-items:flex-start;margin-top:18px;font-size:14px;color:var(--texto2)}
.d-aceite input{margin-top:3px;accent-color:var(--acao);width:18px;height:18px;flex:none}
.d-erro{margin-top:12px;color:var(--erro);font-size:14px}
.d-seguir{margin-top:26px}
.d-pular{display:inline-block;margin-top:14px;color:var(--texto2);font-size:15px;background:none;border:0;text-decoration:underline;cursor:pointer}
.d-aviso{color:var(--texto2)}

/* carregando */
.d-carregando{text-align:center;padding-top:8vh}
.d-anel{width:64px;height:64px;margin:0 auto 28px;border-radius:50%;border:4px solid var(--borda);border-top-color:var(--acao);animation:d-gira 1s linear infinite}
@keyframes d-gira{to{transform:rotate(360deg)}}
.d-carregando ul{list-style:none;margin-top:20px;display:grid;gap:8px;color:var(--texto2);font-size:15px}
.d-carregando li{opacity:.25;transition:opacity .4s}
.d-carregando li.ok{opacity:1}
.d-carregando li.ok::before{content:"✓ ";color:var(--acao2)}

/* resultado */
.d-res .d-fase{display:inline-block;margin-top:18px;padding:8px 14px;border-radius:999px;border:1px solid var(--borda2);font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--acao2)}
.d-trava{margin-top:22px;padding:20px;border-radius:var(--raio-g);background:var(--card);border:1px solid var(--borda)}
.d-trava h2{font-size:28px;margin-bottom:6px}
.d-trava p{color:var(--texto2);font-size:16px}
.d-trava+.d-trava{margin-top:10px}
.d-oferta{margin-top:34px;padding:26px 22px;border-radius:var(--raio-g);background:var(--card);border:1px solid var(--borda2);box-shadow:0 20px 60px rgba(0,0,0,.4)}
.d-oferta .tag{display:inline-block;font-family:var(--f-mono);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--texto-acao);background:var(--grad-acao);padding:6px 10px;border-radius:6px}
.d-oferta h2{font-size:clamp(36px,6vw,48px);margin-top:14px}
.d-oferta>p{color:var(--texto2);margin-top:10px}
.d-pilha{list-style:none;margin-top:20px;display:grid;gap:10px}
.d-pilha li{display:flex;gap:12px;justify-content:space-between;align-items:baseline;border-bottom:1px dashed var(--borda);padding-bottom:10px;font-size:16px}
.d-pilha li span:first-child::before{content:"✓ ";color:var(--acao2);font-weight:700}
.d-pilha li span:last-child{flex:none;color:var(--texto2);font-family:var(--f-mono);font-size:13px}
.d-preco{margin-top:22px;text-align:center}
.d-preco s{color:var(--texto2);font-size:18px}
.d-preco b{display:block;font-family:var(--f-titulo);font-weight:400;font-size:72px;line-height:1;background:var(--grad-acao);-webkit-background-clip:text;background-clip:text;color:transparent}
.d-preco small{display:block;color:var(--texto2);font-size:14px;margin-top:6px}
.d-oferta .btn{width:100%;margin-top:20px}
.d-garantia{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:14px;border-radius:var(--raio);background:color-mix(in srgb,var(--sucesso) 8%,transparent);border:1px solid color-mix(in srgb,var(--sucesso) 30%,transparent);font-size:14px;color:var(--texto2)}
.d-garantia b{color:var(--texto)}
.d-alt{display:block;text-align:center;margin-top:16px;color:var(--texto2);font-size:15px}
.d-extra{margin-top:18px;padding:20px;border-radius:var(--raio-g);border:1px solid var(--borda);text-align:center}
.d-extra p{color:var(--texto2);font-size:15px;margin-bottom:14px}

/* rodada 2: conteúdo no centro da tela (horizontal e vertical) */
.d-palco{display:flex;flex-direction:column;justify-content:center}
.d-tela>h1,.d-tela>.d-dica,.d-tela>.d-micro{text-align:center}
.d-res{text-align:center}
.d-res .d-trava,.d-res .d-oferta{text-align:left}
.d-oferta .tag,.d-oferta h2{display:block;text-align:center}
.d-oferta .tag{width:max-content;margin:0 auto}
.d-oferta>p{text-align:center}
