/* Páginas legais e institucional: mesmo visual do site, só transições suaves (sem GSAP). */
.doc { padding: calc(var(--nav-h) + clamp(3rem, 8vw, 6rem)) 0 var(--s-10); animation: doc-in .6s var(--ease-out) both; }
@keyframes doc-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.doc h1 { font-size: clamp(2.2rem, 1.4rem + 3.4vw, 4rem); margin-bottom: var(--s-6); }
.doc h2 { font-family: var(--font-display); font-weight: var(--display-weight); letter-spacing: var(--display-tracking); font-size: var(--t-h3); line-height: 1.15; margin: var(--s-8) 0 var(--s-4); padding-top: var(--s-6); border-top: 1px solid var(--line); text-wrap: balance; }
.doc h3 { font-size: var(--t-lg); margin: var(--s-6) 0 var(--s-3); }
.doc p { color: var(--ink-2); margin: 0 0 var(--s-4); text-wrap: pretty; max-width: 42rem; }
.doc-meta { color: var(--ink-3) !important; font-size: var(--t-sm); }
.doc ul { display: grid; gap: var(--s-3); margin: 0 0 var(--s-5); max-width: 42rem; }
.doc li { position: relative; padding-left: 1.4rem; color: var(--ink-2); }
.doc li::before { content: ""; position: absolute; left: .1rem; top: .65em; width: .45rem; height: .45rem; border-radius: 50%; background: var(--accent); }
.doc a { color: var(--accent); text-decoration: underline; text-underline-offset: .2em; text-decoration-color: color-mix(in oklab, var(--accent) 40%, transparent); transition: text-decoration-color var(--d-base) ease; }
.doc a:hover { text-decoration-color: var(--accent); }
.doc strong { color: var(--ink); }
@media (prefers-reduced-motion: reduce) { .doc { animation: none; } }
