/* Rodapé público e documentos de apoio. Mantém o visual Entidade. */
.site-footer {
  --legal-bg: #0b0809; --legal-line: #30272b; --legal-text: #f0e7dc;
  --legal-muted: #b3a6a1; --legal-accent: #f2b544;
  width: 100%; align-self: stretch; margin-top: 0; border-top: 1px solid var(--legal-line);
  padding: 48px 24px 88px; background: var(--legal-bg); color: var(--legal-muted);
  font: 400 15px/1.6 'Barlow', 'Segoe UI', sans-serif; text-align: left;
}
.site-footer *, .legal-page * { box-sizing: border-box; }
.site-footer a { color: var(--legal-muted); text-decoration: none; text-underline-offset: 4px; }
.site-footer a:hover { color: var(--legal-text); text-decoration: underline; }
.site-footer a:focus-visible, .site-footer button:focus-visible { outline: 2px solid var(--legal-accent); outline-offset: 4px; }
.site-footer-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(220px,.5fr); gap: 64px; max-width: 1120px; margin: auto; }
.site-footer .site-footer-marca { display: inline-block; font-size: 21px; font-weight: 700; color: var(--legal-text); margin-bottom: 8px; }
.site-footer p { margin: 0 0 12px; max-width: 43ch; }
.site-footer-contato { display: flex; align-items: flex-start; flex-direction: column; gap: 8px; }
.site-footer-contato a { overflow-wrap: anywhere; }
.site-footer .site-footer-titulo { display: flex; align-items: center; gap: 10px; margin: 0 0 18px; font: 700 16px/1.4 'Barlow', 'Segoe UI', sans-serif; color: var(--legal-text); }
.site-footer-titulo::before { content: ''; width: 4px; height: 18px; border-radius: 2px; background: var(--legal-accent); flex: none; }
.site-footer-nav { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.site-footer-nav a { padding-block: 2px; }
.site-footer-base { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 12px 32px; max-width: 1120px; margin: 32px auto 0; padding-top: 20px; border-top: 1px solid var(--legal-line); font-size: 13px; }
.site-footer-cookies { padding: 0; border: 0; background: none; color: var(--legal-muted); font: inherit; cursor: pointer; text-underline-offset: 4px; }
.site-footer-cookies:hover { color: var(--legal-text); text-decoration: underline; }
.legal-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; max-width: 800px; margin: 12px auto 0; padding-block: 8px; font: 400 13px/1.5 'Barlow', 'Segoe UI', sans-serif; }
.legal-links a { color: #b3a6a1; text-decoration: none; text-underline-offset: 4px; }
.legal-links a:hover { color: #f0e7dc; text-decoration: underline; }
.legal-links a:focus-visible { outline: 2px solid #f2b544; outline-offset: 4px; }
.legal-page { margin: 0; color: #f0e7dc; background: #0b0809; font: 400 16px/1.7 'Barlow', 'Segoe UI', sans-serif; }
.legal-page ::selection { background: #f2b544; color: #241703; }
.legal-page { scrollbar-color: #695853 #151012; }
.legal-page a { color: #f2b544; text-underline-offset: 4px; overflow-wrap: anywhere; }
.legal-page a:hover { color: #f0e7dc; }
.legal-page :focus-visible { outline: 2px solid #f2b544; outline-offset: 4px; }
.legal-page .legal-skip { position: absolute; left: 16px; top: -100px; background: #f2b544; color: #241703; padding: 8px 16px; }
.legal-page .legal-skip:focus { top: 8px; }
.legal-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; max-width: 1168px; margin: auto; padding: 24px; border-bottom: 1px solid #30272b; }
.legal-header .legal-brand { font-size: 19px; font-weight: 700; color: #f0e7dc; text-decoration: none; }
.legal-header .legal-voltar { display: inline-flex; align-items: center; gap: 8px; color: #b3a6a1; font-size: 14px; text-decoration: none; }
.legal-voltar svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.legal-layout { max-width: 960px; margin: auto; padding: 56px 24px 80px; }
.legal-menu { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 48px; padding-top: 24px; border-top: 1px solid #30272b; }
.legal-menu h2 { width: 100%; margin: 0 0 12px; font-size: 15px; }
.legal-menu a { padding: 9px 12px; border-radius: 6px; font-size: 14px; line-height: 1.5; color: #b3a6a1; text-decoration: none; }
.legal-menu a:hover { background: #1d1619; color: #f0e7dc; }
.legal-menu a[aria-current] { background: #30271b; color: #f2ce8b; }
.legal-artigo { min-width: 0; max-width: 72ch; }
.legal-artigo h1 { margin: 0 0 12px; font: 600 42px/1.15 'Oswald', 'Arial Narrow', sans-serif; letter-spacing: -.02em; text-wrap: balance; }
.legal-artigo .legal-intro { color: #c9bcb5; font-size: 18px; line-height: 1.6; margin: 0 0 16px; }
.legal-artigo .legal-data { color: #b3a6a1; font-size: 13px; margin: 0 0 36px; }
.legal-artigo h2 { margin: 36px 0 12px; font-size: 23px; font-weight: 600; line-height: 1.3; text-wrap: balance; }
.legal-artigo p { margin: 0 0 16px; }
.legal-artigo ul, .legal-artigo ol { margin: 0 0 20px; padding-left: 24px; }
.legal-artigo li + li { margin-top: 8px; }
.legal-artigo address { font-style: normal; margin-bottom: 20px; }
.legal-artigo .legal-contato-principal { display: inline-flex; padding: 10px 16px; border: 1px solid #665036; border-radius: 6px; background: #30271b; color: #f2ce8b; font-weight: 600; text-decoration: none; }
.legal-artigo .legal-contato-principal:hover { background: #403320; }
.legal-contato-acoes { display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin:0 0 12px; }
.legal-contato-acoes > a:not(.legal-contato-principal) { font-size:14px; }
.legal-copiar { min-height:42px;padding:9px 14px;border:1px solid #665036;border-radius:6px;background:transparent;color:#f0e7dc;font:500 14px 'Barlow','Segoe UI',sans-serif;cursor:pointer; }
.legal-copiar:hover { background:#211a15; }
.legal-artigo .legal-envio-aviso, .legal-artigo .legal-copia-status { color:#b3a6a1;font-size:14px;line-height:1.6; }
.legal-copia-status:empty { display:none; }
.legal-artigo .legal-fontes { border-top: 1px solid #30272b; margin-top: 36px; padding-top: 20px; color: #b3a6a1; font-size: 14px; }
.legal-artigo .tabela-rolagem { max-width: 100%; overflow-x: auto; }
.legal-artigo .tabela { width: 100%; border-collapse: collapse; margin-block: 16px; font-size: 14px; }
.legal-artigo .tabela th, .legal-artigo .tabela td { text-align: left; padding: 10px 12px; border-bottom: 1px solid #30272b; vertical-align: top; }
.legal-artigo .botao-link { display: inline-block; margin-block: 8px; }
@media (max-width: 760px) {
  .legal-layout { grid-template-columns: minmax(0,1fr); gap: 32px; padding: 28px 20px 56px; }
  .legal-menu { position: static; flex-direction: row; flex-wrap: wrap; gap: 4px; padding-bottom: 20px; border-bottom: 1px solid #30272b; }
  .legal-menu h2 { width: 100%; margin-bottom: 8px; }
  .legal-menu a { padding: 8px 10px; }
  .legal-artigo h1 { font-size: 34px; }
  .legal-artigo .legal-data { margin-bottom: 28px; }
  .site-footer-grid { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .site-footer { padding: 36px 20px 88px; }
}
@media print {
  .legal-header, .legal-menu, .site-footer, .legal-skip { display: none; }
  .legal-page { color: #111; background: white; }
  .legal-layout { display: block; max-width: none; padding: 0; }
  .legal-artigo { max-width: none; }
  .legal-artigo a, .legal-artigo .legal-intro, .legal-artigo .legal-data { color: #333; }
  .legal-artigo h2 { break-after: avoid; }
}
