/* ============================================================
   RODAPÉ, POLÍTICA DE PRIVACIDADE E SOBRE NÓS (25/10/2026)
   Só variáveis da paleta (roxo, azul, vinho, amazônia funcionam iguais).
   ============================================================ */

/* ---------- Rodapé: quatro links que quebram linha no celular ---------- */
.rodape nav { flex-wrap: wrap; justify-content: center; row-gap: 8px; }
.rodape nav button { padding: 4px 0; }

/* ---------- Texto legal longo (Política de Privacidade) ---------- */
.texto-legal .legal-atualizado { color: var(--tinta-suave); font-size: 0.82rem; }
.texto-legal .legal-indice { background: var(--selo); border-radius: 14px; padding: 14px 18px; margin: 14px 0 6px; }
.texto-legal .legal-indice strong { display: block; font-size: 0.82rem; color: var(--preto); margin-bottom: 6px; }
.texto-legal .legal-indice ol { margin: 0; padding-left: 20px; columns: 2; column-gap: 24px; font-size: 0.85rem; }
.texto-legal .legal-indice li { break-inside: avoid; margin-bottom: 3px; }
.texto-legal h2 { scroll-margin-top: 96px; }
.texto-legal ul { margin: 0 0 12px; padding-left: 20px; font-size: 0.92rem; }
.texto-legal li { margin-bottom: 6px; }
.texto-legal li strong { color: var(--preto); }
.texto-legal .legal-confirmar {
  background: var(--aviso-claro); color: var(--aviso); border-left: 4px solid var(--aviso);
  border-radius: 10px; padding: 10px 14px; font-weight: 600;
}
.texto-legal { overflow-wrap: anywhere; }

/* ---------- Sobre nós ---------- */
.sobre-abas {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px;
  max-width: 560px; background: var(--selo); border-radius: 14px; padding: 4px; margin-bottom: 20px;
}
.sobre-aba {
  background: none; border: none; border-radius: 10px; padding: 11px 6px;
  font-size: 0.88rem; font-weight: 700; color: var(--tinta-suave); min-width: 0;
}
.sobre-aba:hover { color: var(--preto); }
.sobre-aba.ativo { background: var(--cartao); color: var(--ouro-texto); box-shadow: 0 1px 3px rgba(var(--sombra-rgb), 0.12); }

.sobre-painel {
  max-width: 820px; background: var(--cartao); border: 1px solid var(--linha); border-radius: 18px;
  padding: 26px; color: var(--tinta); line-height: 1.6; overflow-wrap: anywhere;
}
.sobre-painel[hidden] { display: none; }
.sobre-painel h2 { font-size: 1.25rem; color: var(--preto); margin: 6px 0 4px; }
.sobre-painel h3 { font-size: 0.98rem; color: var(--preto); margin: 0 0 4px; }
.sobre-painel p { font-size: 0.93rem; margin: 0 0 10px; }
.sobre-painel a, .sobre-painel .sobre-link { color: var(--ouro-texto); font-weight: 600; }
.sobre-link { background: none; border: none; padding: 0; font-size: inherit; text-decoration: underline; }
.sobre-subtitulo { color: var(--tinta-suave); font-size: 0.88rem !important; font-weight: 600; }

.sobre-topo { display: flex; gap: 22px; align-items: center; margin-bottom: 16px; }
.sobre-topo > div { min-width: 0; }

/* Foto da Dra. Laura: avatar com as iniciais até existir images/laura.webp
   (a <img> usa a mesma classe, ver o comentário no index.html). */
.sobre-foto {
  flex: none; width: 128px; height: 128px; border-radius: 50%; object-fit: cover;
  display: grid; place-items: center; background: var(--banner-1); color: #fff;
  font-size: 2.6rem; font-weight: 800; letter-spacing: 0.02em; box-shadow: var(--sombra);
}

/* Logo da AW é branca com fundo transparente: vai sobre o tom escuro da paleta. */
.sobre-logo-aw {
  flex: none; width: 168px; height: 128px; border-radius: 18px; display: grid; place-items: center;
  background: var(--banner-patrocinado); box-shadow: var(--sombra);
}
.sobre-logo-aw img { width: 112px; height: auto; display: block; }

.sobre-grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 14px; }
.sobre-item { border: 1px solid var(--linha); border-radius: 14px; padding: 14px 16px; background: var(--fundo); }
.sobre-item p { font-size: 0.88rem; margin: 0; }

@media (max-width: 820px) {
  .texto-legal .legal-indice ol { columns: 1; }
  .sobre-painel { padding: 18px; }
  .sobre-topo { flex-direction: column; align-items: flex-start; gap: 14px; }
  .sobre-foto { width: 104px; height: 104px; font-size: 2.1rem; }
  .sobre-logo-aw { width: 140px; height: 104px; }
  .sobre-logo-aw img { width: 96px; }
  .sobre-grade { grid-template-columns: 1fr; }
  .sobre-aba { font-size: 0.8rem; padding: 10px 4px; }
}
