/* Página de demonstração (captura qualificada).
   Só o que a página precisa — o resto vem de /site.css.
   Cores caem para os tons da marca se as variáveis não existirem. */

.aa { max-width: 780px; padding-bottom: 4rem; }

.aa-hero { padding: 2.5rem 0 1.5rem; }
.aa-tag {
  display: inline-block;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--brand, #C89B4B);
  border: 1px solid var(--brand, #C89B4B);
  border-radius: 999px;
  padding: .25rem .7rem;
  margin-bottom: 1rem;
}
.aa-hero h1 { font-size: clamp(1.7rem, 4.5vw, 2.6rem); line-height: 1.15; margin: 0 0 .8rem; }
.aa-sub { font-size: 1.05rem; line-height: 1.6; opacity: .9; }
.aa-oferta { list-style: none; padding: 0; margin: 1.2rem 0 0; }
.aa-oferta li { padding-left: 1.5rem; position: relative; margin-bottom: .4rem; line-height: 1.5; }
.aa-oferta li::before { content: "✓"; position: absolute; left: 0; color: var(--brand, #C89B4B); font-weight: 700; }

.aa-form-wrap {
  border: 1px solid rgba(200, 155, 75, .28);
  border-radius: 14px;
  padding: 1.6rem;
  margin: 2rem 0 3rem;
  background: rgba(255, 255, 255, .02);
}
.aa-form-wrap h2 { margin: 0 0 .3rem; }
.aa-micro { font-size: .88rem; opacity: .7; margin: 0 0 1.2rem; }

.aa-prog { height: 3px; background: rgba(255, 255, 255, .1); border-radius: 2px; margin-bottom: 1.4rem; overflow: hidden; }
.aa-prog-fill { display: block; height: 100%; width: 0; background: var(--brand, #C89B4B); transition: width .25s ease; }

.passo { border: 0; padding: 0; margin: 0; }
.passo legend { font-size: 1.12rem; font-weight: 600; margin-bottom: .9rem; padding: 0; }

/* Cartão clicável: alvo grande, bom no celular. */
.opt {
  display: flex;
  align-items: center;
  gap: .7rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 10px;
  padding: .8rem .9rem;
  margin-bottom: .5rem;
  cursor: pointer;
  line-height: 1.35;
  transition: border-color .15s ease, background .15s ease;
}
.opt:hover { border-color: var(--brand, #C89B4B); background: rgba(200, 155, 75, .06); }
.opt input { accent-color: var(--brand, #C89B4B); flex: 0 0 auto; }
.opt:has(input:checked) { border-color: var(--brand, #C89B4B); background: rgba(200, 155, 75, .1); }
.opt input:focus-visible { outline: 2px solid var(--brand, #C89B4B); outline-offset: 3px; }

.aa-form-wrap .field { margin-bottom: .9rem; }
.aa-form-wrap .field label { display: block; margin-bottom: .3rem; font-size: .9rem; opacity: .85; }
.aa-form-wrap .field input {
  width: 100%;
  padding: .7rem .8rem;
  border-radius: 9px;
  border: 1px solid rgba(255, 255, 255, .16);
  background: rgba(0, 0, 0, .2);
  color: inherit;
  font: inherit;
}
.aa-form-wrap .field input:focus-visible { outline: 2px solid var(--brand, #C89B4B); outline-offset: 1px; }

.aa-consent { display: flex; gap: .6rem; align-items: flex-start; font-size: .85rem; opacity: .82; margin: .9rem 0 1.1rem; line-height: 1.45; }
.aa-consent input { margin-top: .2rem; accent-color: var(--brand, #C89B4B); }

.aa-voltar { background: none; border: 0; color: inherit; opacity: .6; cursor: pointer; font: inherit; padding: .6rem 0 0; }

/* Saída pro self-serve: quem já decidiu não deveria ter só o formulário como
   caminho. Deliberadamente discreto — não compete com o botão do formulário,
   que é a razão de existir desta página. */
.aa-atalho { margin: 1.4rem 0 0; padding-top: 1.1rem; border-top: 1px solid rgba(255,255,255,.1); font-size: .88rem; opacity: .75; }
.aa-atalho a { color: var(--brass, #C89B4B); text-decoration: underline; text-underline-offset: 2px; }
.aa-voltar:hover { opacity: 1; }

/* Honeypot: fora da tela, invisível para humano, preenchido por robô. */
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.aa-honesto, .aa-objecoes { margin-bottom: 2.5rem; }
.aa-honesto p { line-height: 1.65; opacity: .88; margin-top: 1.1rem; }
.aa-objecoes details {
  border-bottom: 1px solid rgba(255, 255, 255, .1);
  padding: .85rem 0;
}
.aa-objecoes summary { cursor: pointer; font-weight: 600; }
.aa-objecoes details p { margin: .6rem 0 0; opacity: .85; line-height: 1.6; }

@media (prefers-reduced-motion: reduce) {
  .aa-prog-fill, .opt { transition: none; }
}
