/* Descubra IA: páginas legais (privacidade, termos). Fundo claro para leitura longa,
   mantendo os tokens da marca. */
:root {
  --navy: #0e1b30; --ink: #14263e; --mut: #5b708a;
  --amber: #f5a623; --amber-d: #b45309; --teal-d: #0f766e;
  --line: #e3eaf4; --paper: #f6f8fc;
  --grad: linear-gradient(92deg, #f5a623 0%, #f4536e 55%, #a855f7 110%);
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.7 'Inter', -apple-system, 'Segoe UI', sans-serif; -webkit-font-smoothing: antialiased; }
.legal-wrap { max-width: 780px; margin: 0 auto; padding-inline: 22px; }

.legal-nav { background: var(--navy); position: sticky; top: 0; z-index: 20; }
.legal-nav .legal-wrap { display: flex; align-items: center; justify-content: space-between; height: 62px; gap: 14px; }
.legal-nav .logo { display: flex; align-items: center; gap: 9px; color: #fff; font-family: 'Sora', sans-serif; font-weight: 800; font-size: 17px; text-decoration: none; white-space: nowrap; }
.legal-nav .logo svg { width: 27px; height: 27px; flex: none; }
.legal-nav .voltar { color: #b7c6dc; font-size: 14px; text-decoration: none; white-space: nowrap; }
.legal-nav .voltar:hover { color: #fff; }

.legal-doc { padding-block: 46px 70px; }
.legal-doc h1 { font-family: 'Sora', sans-serif; font-size: clamp(28px, 5vw, 40px); font-weight: 800; letter-spacing: -.025em; margin: 0 0 6px; color: var(--navy); }
.legal-doc .meta { color: var(--mut); font-size: 14px; margin: 0 0 26px; }
.legal-doc h2 { font-family: 'Sora', sans-serif; font-size: 21px; font-weight: 700; letter-spacing: -.02em; margin: 38px 0 10px; color: var(--navy); padding-left: 13px; position: relative; }
.legal-doc h2::before { content: ''; position: absolute; left: 0; top: .18em; bottom: .18em; width: 4px; border-radius: 3px; background: var(--grad); }
.legal-doc h3 { font-family: 'Sora', sans-serif; font-size: 16.5px; font-weight: 700; margin: 22px 0 6px; color: var(--navy); }
.legal-doc p { margin: 0 0 13px; }
.legal-doc a { color: var(--teal-d); }
.legal-doc ul { margin: 0 0 15px; padding-left: 20px; }
.legal-doc li { margin-bottom: 7px; }

.destaque { background: #fff; border: 1px solid var(--line); border-left: 4px solid var(--amber); border-radius: 0 12px 12px 0; padding: 15px 18px; font-size: 15px; }

.legal-doc table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; font-size: 14px; margin: 6px 0 16px; display: block; overflow-x: auto; white-space: normal; }
.legal-doc th, .legal-doc td { padding: 10px 13px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
.legal-doc th { background: #eef2f8; font-size: 12.5px; text-transform: uppercase; letter-spacing: .04em; color: var(--navy); font-weight: 700; }
.legal-doc tr:last-child td { border-bottom: 0; }

.rodape-nota { margin-top: 34px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--mut); font-size: 14.5px; }

.legal-foot { border-top: 1px solid var(--line); background: #fff; padding-block: 22px; font-size: 13.5px; color: var(--mut); }
.legal-foot .legal-wrap { display: flex; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.legal-foot a { color: var(--teal-d); text-decoration: none; }
