/* Páginas legais (Termos de Uso e Política de Privacidade) — 2026-10-24.
   Estilo "vitrine branca": fundo claro, blocos brancos de canto 28px sem sombra, títulos grandes
   com espaçamento apertado e uma cor de destaque só (o laranja da marca, no botão principal).
   Página sempre clara, de propósito: é texto para ler, e as cores são fixas aqui. */
:root {
  --lg-canvas: #f5f5f7;
  --lg-card: #ffffff;
  --lg-ink: #1d1d1f;
  --lg-body: #333336;
  --lg-dim: #6e6e73;
  --lg-line: #d2d2d7;
  --lg-chip: #e8e8ed;
  --lg-accent: #ff8a1e;     /* laranja da marca — só no botão principal */
  --lg-on-accent: #1b0e00;
  --lg-link: #b4530a;       /* laranja escurecido: contraste de texto no branco */
  --lg-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Segoe UI", system-ui, sans-serif;
  --lg-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", "Segoe UI", system-ui, sans-serif;
  color-scheme: light;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 76px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
  margin: 0; background: var(--lg-canvas); color: var(--lg-body);
  font: 400 17px/1.47 var(--lg-font); letter-spacing: -0.016em;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
a { color: var(--lg-link); text-decoration: none; }
a:hover { text-decoration: underline; }
a:focus-visible, summary:focus-visible { outline: 2px solid var(--lg-link); outline-offset: 3px; border-radius: 6px; }
.skip { position: absolute; left: -9999px; }
.skip:focus { left: 16px; top: 12px; z-index: 60; background: var(--lg-card); padding: 8px 14px; border-radius: 12px; }

/* Barra do topo */
.lg-nav {
  position: sticky; top: 0; z-index: 50; height: 56px;
  background: rgba(245, 245, 247, 0.78); backdrop-filter: saturate(1.8) blur(20px); -webkit-backdrop-filter: saturate(1.8) blur(20px);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.lg-nav-in { max-width: 1100px; height: 100%; margin: 0 auto; padding: 0 22px; display: flex; align-items: center; gap: 22px; }
.lg-brand { display: inline-flex; align-items: center; gap: 9px; color: var(--lg-ink); font: 600 15px/1 var(--lg-display); letter-spacing: -0.01em; }
.lg-brand:hover { text-decoration: none; }
.lg-brand img { width: 26px; height: 26px; object-fit: contain; }
.lg-links { margin-left: auto; display: flex; align-items: center; gap: 22px; font-size: 13px; }
.lg-links a { color: var(--lg-body); }
.lg-links a[aria-current="page"] { color: var(--lg-ink); font-weight: 600; }
.lg-pill {
  display: inline-flex; align-items: center; height: 32px; padding: 0 16px; border-radius: 980px;
  background: var(--lg-accent); color: var(--lg-on-accent) !important; font: 600 13px/1 var(--lg-font);
}
.lg-pill:hover { text-decoration: none; filter: brightness(1.04); }
.lg-brand, .lg-links a { white-space: nowrap; }
@media (max-width: 640px) {
  .lg-links .lg-hide-sm { display: none; }
  .lg-links { gap: 14px; }
  .lg-pill { padding: 0 13px; }
}
@media (max-width: 430px) { .lg-brand span { display: none; } }

/* Abertura */
.lg-hero { max-width: 1100px; margin: 0 auto; padding: 88px 22px 40px; }
.lg-hero h1 {
  margin: 0; color: var(--lg-ink); font: 600 clamp(40px, 7vw, 72px)/1.05 var(--lg-display);
  letter-spacing: -0.03em; text-wrap: balance; max-width: 16ch;
}
.lg-hero h1 em { font-style: normal; color: var(--lg-link); }
.lg-hero .lg-sub { margin: 18px 0 0; max-width: 34ch; color: var(--lg-dim); font: 600 clamp(21px, 2.6vw, 28px)/1.2 var(--lg-display); letter-spacing: -0.01em; }
.lg-hero .lg-date { margin: 22px 0 0; font-size: 14px; color: var(--lg-dim); }

/* Em resumo */
.lg-wrap { max-width: 1100px; margin: 0 auto; padding: 0 22px; }
.lg-summary { background: var(--lg-card); border-radius: 28px; padding: 40px; margin-bottom: 64px; }
.lg-summary h2 { margin: 0 0 24px; color: var(--lg-ink); font: 600 28px/1.14 var(--lg-display); letter-spacing: -0.01em; }
.lg-points { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 28px 32px; margin: 0; padding: 0; list-style: none; }
.lg-points b { display: block; color: var(--lg-ink); font-weight: 600; margin-bottom: 4px; }
.lg-points span { color: var(--lg-dim); font-size: 15px; line-height: 1.45; }

/* Corpo: índice à esquerda, seções à direita */
.lg-body { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 48px; align-items: start; padding-bottom: 96px; }
.lg-toc { position: sticky; top: 88px; }
.lg-toc p { margin: 0 0 12px; font-size: 12px; font-weight: 600; color: var(--lg-dim); }
.lg-toc ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; font-size: 14px; line-height: 1.3; }
.lg-toc a { color: var(--lg-body); }
.lg-toc a:hover { color: var(--lg-ink); text-decoration: none; }
.lg-toc-sm { display: none; }
.lg-sections { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.lg-sec { background: var(--lg-card); border-radius: 28px; padding: 40px; }
.lg-sec h2 { margin: 0 0 16px; color: var(--lg-ink); font: 600 28px/1.14 var(--lg-display); letter-spacing: -0.012em; text-wrap: balance; }
.lg-sec h3 { margin: 28px 0 10px; color: var(--lg-ink); font: 600 19px/1.3 var(--lg-display); letter-spacing: -0.01em; }
.lg-sec p { margin: 0 0 14px; }
.lg-sec p:last-child, .lg-sec ul:last-child { margin-bottom: 0; }
.lg-sec ul { margin: 0 0 14px; padding-left: 22px; }
.lg-sec li { margin-bottom: 6px; }
.lg-sec li::marker { color: var(--lg-dim); }
.lg-sec strong { color: var(--lg-ink); font-weight: 600; }
.lg-note { background: var(--lg-canvas); border-radius: 16px; padding: 18px 20px; margin: 0 0 14px; color: var(--lg-body); }
.lg-note strong { display: block; margin-bottom: 2px; }

@media (max-width: 900px) {
  .lg-body { grid-template-columns: 1fr; gap: 20px; }
  .lg-toc { display: none; }
  .lg-toc-sm { display: block; background: var(--lg-card); border-radius: 20px; padding: 16px 20px; }
  .lg-toc-sm summary { cursor: pointer; font-weight: 600; color: var(--lg-ink); }
  .lg-toc-sm ol { margin: 12px 0 4px; padding-left: 20px; display: flex; flex-direction: column; gap: 8px; font-size: 15px; }
}
@media (max-width: 640px) {
  body { font-size: 16px; }
  .lg-hero { padding: 56px 16px 28px; }
  .lg-wrap { padding: 0 16px; }
  .lg-summary, .lg-sec { padding: 26px 22px; border-radius: 24px; }
  .lg-sec h2, .lg-summary h2 { font-size: 24px; }
  .lg-nav-in { padding: 0 16px; }
}

/* Rodapé */
.lg-foot { border-top: 1px solid var(--lg-line); background: var(--lg-canvas); }
.lg-foot-in { max-width: 1100px; margin: 0 auto; padding: 28px 22px 40px; display: flex; flex-wrap: wrap; gap: 10px 24px; font-size: 12px; color: var(--lg-dim); }
.lg-foot-in a { color: var(--lg-dim); }
.lg-foot-in a:hover { color: var(--lg-ink); }
.lg-foot-in span:first-child { margin-right: auto; }
