/* Preço Certo — páginas legais (Política de Privacidade). Usa as cores e o topo/rodapé do site.css. */

.legal { padding: 120px 0 72px; }

/* Texto legal pode ser selecionado e copiado (o site.css bloqueia seleção no resto do site) */
.legal__texto { -webkit-user-select: text; user-select: text; max-width: 760px; }

.legal h1 { font-size: clamp(32px, 5vw, 44px); margin-bottom: 8px; }
.legal h2 { font-size: 22px; margin: 40px 0 12px; }
.legal p { margin-bottom: 14px; }
.legal__data { color: var(--texto-3); font-size: 15px; margin-bottom: 28px !important; }

.legal ul { margin: 0 0 14px; }
.legal li { position: relative; padding-left: 22px; margin-bottom: 10px; }
.legal li::before { content: ""; position: absolute; left: 4px; top: 0.7em; width: 7px; height: 7px; border-radius: 50%; background: var(--azul-texto); }

.legal a { color: var(--azul-texto); text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal a.btn { color: var(--texto); text-decoration: none; }

.rodape nav a[aria-current="page"] { color: var(--texto); }

/* Topo desta página: marca e botão sem quebrar linha */
.legal-pagina .marca span,
.legal__voltar { white-space: nowrap; }
.legal-pagina .topo__acoes { margin-left: auto; }

/* ---------- Formulário de contato ---------- */

.contato { display: grid; gap: 18px; margin-top: 28px; }
.campo { display: grid; gap: 8px; }
.campo label { color: var(--texto); font-size: 15px; font-weight: 600; }

.campo input,
.campo textarea {
  -webkit-user-select: text;
  user-select: text;
  width: 100%;
  padding: 13px 16px;
  border: 1px solid var(--borda-forte);
  border-radius: 14px;
  background: var(--superficie);
  color: var(--texto);
  font: inherit;
  font-size: 16px; /* 16px evita o zoom automático do iPhone ao tocar no campo */
  line-height: 1.5;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.campo textarea { min-height: 170px; resize: vertical; }
.campo input::placeholder,
.campo textarea::placeholder { color: var(--texto-3); }
.campo input:focus,
.campo textarea:focus { outline: none; border-color: var(--azul); box-shadow: 0 0 0 3px rgba(47, 123, 255, 0.25); }
.campo [aria-invalid="true"] { border-color: var(--vermelho); }

/* Armadilha contra spam: fora da tela */
.contato__pote { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.legal .contato__nota { margin: 0; color: var(--texto-3); font-size: 14px; }
.legal .contato__status { margin: 0; font-size: 15px; }
.contato__status.is-erro { color: var(--vermelho); }
.contato .btn { justify-self: start; }
.contato .btn[disabled] { opacity: 0.6; cursor: progress; }

.contato__ok { margin-top: 28px; padding: 28px; border: 1px solid var(--borda); border-radius: var(--raio); background: var(--superficie); }
.contato__ok:focus { outline: none; }
.legal .contato__ok h2 { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; }
.contato__ok h2 .ic { width: 26px; height: 26px; color: var(--verde); }
.legal .contato__ok p { margin-bottom: 20px; }

@media (max-width: 640px) {
  .contato .btn { justify-self: stretch; }
  .legal { padding: 96px 0 56px; }
  .legal h2 { font-size: 20px; margin-top: 32px; }
  .legal__voltar-extra { display: none; }
}
