/* Páginas jurídicas: tipografia e cores do design system do site principal. */
.legal-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem}
.legal-top .brand{flex-shrink:0}
.legal-actions{display:flex;align-items:center;gap:.75rem}
.legal-back{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.5rem .9rem;border-radius:var(--radius-pill);font-size:var(--fs-body-sm);color:var(--ink)}
.legal-back:hover{background:var(--surface)}
.legal-main{padding-top:calc(var(--header-h) + var(--space-8));padding-bottom:var(--space-9)}
.legal-hero{max-width:48rem;margin-bottom:var(--space-7)}
.legal-kicker{margin-bottom:var(--space-3);font-size:var(--fs-caption);font-weight:600;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--link)}
.legal-hero h1{font-family:var(--font-display);font-size:clamp(2.5rem,7vw,4.5rem);line-height:1.05;letter-spacing:var(--ls-display);font-weight:600}
.legal-lead{max-width:45rem;margin-top:var(--space-4);font-size:clamp(1.125rem,2.5vw,1.35rem);color:var(--muted)}
.legal-date{margin-top:var(--space-4);font-size:var(--fs-caption);color:var(--muted)}
.legal-grid{display:grid;gap:var(--space-6);max-width:70rem}
.legal-toc{align-self:start;padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface)}
.legal-toc h2{margin-bottom:var(--space-3);font-size:var(--fs-body-sm)}
.legal-toc ol{display:grid;gap:.25rem;margin:0;padding-left:1.25rem;font-size:var(--fs-body-sm)}
.legal-toc a{display:inline-block;padding:.35rem 0}
.legal-toc a:hover,.legal-prose a:hover{text-decoration:underline}
.legal-prose{max-width:46rem}
.legal-prose section{scroll-margin-top:6rem;padding:var(--space-6) 0;border-top:1px solid var(--line)}
.legal-prose section:first-child{border-top:0;padding-top:0}
.legal-prose h2{margin-bottom:var(--space-4);font-family:var(--font-display);font-size:clamp(1.45rem,3vw,1.85rem);line-height:1.2;letter-spacing:-.025em}
.legal-prose h3{margin:var(--space-5) 0 var(--space-2);font-size:var(--fs-body);line-height:1.3}
.legal-prose p,.legal-prose li{line-height:1.65}
.legal-prose p+p,.legal-prose p+ul,.legal-prose ul+p{margin-top:var(--space-3)}
.legal-prose ul{padding-left:1.4rem}
.legal-prose li+li{margin-top:.4rem}
.legal-prose a{text-decoration:underline;text-underline-offset:.15em}
.legal-note{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--surface);font-size:var(--fs-body-sm)}
.legal-footer{padding:var(--space-6) 0;background:var(--surface);border-top:1px solid var(--line);font-size:var(--fs-body-sm);color:var(--muted)}
.legal-footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem}
.legal-footer nav{display:flex;flex-wrap:wrap;gap:.25rem 1rem}
.legal-footer a{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--ink)}
.legal-footer a:hover{text-decoration:underline}
@media(min-width:52rem){.legal-grid{grid-template-columns:14rem minmax(0,1fr);gap:var(--space-8)}.legal-toc{position:sticky;top:calc(var(--header-h) + 1.5rem)}}
@media(max-width:35rem){.legal-top .brand-tag{display:none}.legal-actions{gap:.25rem}.legal-back{padding-inline:.6rem}}
@media print{.topbar,.legal-toc,.legal-footer{display:none!important}.legal-main{padding:0}.legal-prose section{break-inside:avoid}}
