/* Tokens provisórios — a paleta da marca substitui estes valores no gate G0 sem tocar na estrutura. */
:root {
  --cor-fundo: #0f1115;
  --cor-superficie: #171a21;
  --cor-texto: #f3f4f6;
  --cor-texto-2: #a7adb8;
  --cor-acao: #ffd166;      /* 1 cor de ação, só ela */
  --cor-acao-texto: #0f1115;
  --cor-borda: #2a2f3a;
  --raio: 12px;
  --espaco: 1rem;
  --largura: 44rem;
  --fonte: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
@media (prefers-color-scheme: light) {
  :root { --cor-fundo: #fbfbf9; --cor-superficie: #ffffff; --cor-texto: #15171c; --cor-texto-2: #4b5160; --cor-borda: #e6e7ea; --cor-acao: #b8860b; --cor-acao-texto: #ffffff; }
}
* { box-sizing: border-box; }
html { font-family: var(--fonte); color: var(--cor-texto); background: var(--cor-fundo); line-height: 1.55; -webkit-text-size-adjust: 100%; }
body { margin: 0; }
.topo { max-width: var(--largura); margin: 0 auto; padding: calc(var(--espaco) * 1.25) var(--espaco); display: flex; justify-content: space-between; align-items: center; gap: var(--espaco); }
.marca { font-weight: 700; letter-spacing: .02em; text-decoration: none; color: var(--cor-texto); }
.tag { font-size: .8rem; color: var(--cor-texto-2); border: 1px solid var(--cor-borda); border-radius: 999px; padding: .15rem .6rem; }
main { max-width: var(--largura); margin: 0 auto; padding: 0 var(--espaco) calc(var(--espaco) * 4); }
section { padding: calc(var(--espaco) * 2.5) 0; border-top: 1px solid var(--cor-borda); }
section.hero { border-top: 0; padding-top: calc(var(--espaco) * 3); }
h1 { font-size: clamp(2rem, 5vw, 3.1rem); line-height: 1.1; margin: 0 0 var(--espaco); letter-spacing: -.02em; }
h2 { font-size: 1.35rem; margin: 0 0 var(--espaco); }
.lead { font-size: 1.15rem; color: var(--cor-texto-2); max-width: 38rem; }
.mini { font-size: .9rem; color: var(--cor-texto-2); }
.botao { display: inline-block; background: var(--cor-acao); color: var(--cor-acao-texto); font-weight: 700; padding: .85rem 1.3rem; border-radius: var(--raio); text-decoration: none; border: 0; cursor: pointer; font-size: 1rem; }
.botao:hover { filter: brightness(1.05); }
.passos ol { padding-left: 1.2rem; display: grid; gap: .8rem; }
.form { display: grid; gap: .9rem; max-width: 30rem; background: var(--cor-superficie); border: 1px solid var(--cor-borda); border-radius: var(--raio); padding: calc(var(--espaco) * 1.25); }
label { display: grid; gap: .35rem; font-size: .95rem; }
input[type="text"], input[type="tel"] { font: inherit; padding: .7rem .8rem; border-radius: 8px; border: 1px solid var(--cor-borda); background: var(--cor-fundo); color: var(--cor-texto); }
.check { grid-template-columns: auto 1fr; align-items: start; gap: .6rem; font-size: .88rem; color: var(--cor-texto-2); }
.check a { color: inherit; }
.status { min-height: 1.4em; margin: 0; font-size: .9rem; color: var(--cor-texto-2); }
.texto h1 { font-size: 2rem; }
.rodape { max-width: var(--largura); margin: 0 auto; padding: var(--espaco); color: var(--cor-texto-2); font-size: .85rem; border-top: 1px solid var(--cor-borda); }
