.legal-page .legal-eyebrow { color: var(--primary); font-weight: 700; margin-bottom: 16px; }
.legal-page .hero-body .legal-intro {
    max-width: 700px;
    margin: 20px auto;
    /* O tema aplica margens zero com !important em .title + .subtitle. */
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center;
    line-height: 1.6;
}
.legal-page .legal-version { color: #667389; font-size: 14px; }
.legal-page .legal-columns { align-items: flex-start; }
.legal-page .legal-summary,
.legal-page .legal-document { background: #fff; border: 1px solid #e8ebef; border-radius: 12px; padding: 28px; box-shadow: 0 8px 24px rgba(38, 50, 72, .06); }
.legal-page .legal-summary h2 { color: var(--heading); font-weight: 700; margin-bottom: 14px; }
.legal-page .legal-summary a { display: block; padding: 8px 0; color: #536176; font-size: 14px; line-height: 1.5; }
.legal-page .legal-summary a:hover { color: var(--primary); }
.legal-page .legal-document { padding: 40px; color: #536176; line-height: 1.8; overflow-wrap: anywhere; }
.legal-page .legal-document section { margin: 30px 0; scroll-margin-top: 100px; }
.legal-page .legal-document h2 { color: var(--heading); font-size: 1.3rem; line-height: 1.4; font-weight: 700; margin-bottom: 16px; }
.legal-page .legal-document p { margin-bottom: 16px; }
.legal-page .legal-document ul { list-style: disc; margin: 0 0 20px 24px; }
.legal-page .legal-document li { margin-bottom: 10px; }
.legal-page .legal-document a:not(.button) { color: #007e74; text-decoration: underline; }
.legal-page .legal-highlight { padding: 20px; background: #e4fff8; border-left: 4px solid var(--primary); border-radius: 8px; margin-bottom: 16px; }
.legal-page .legal-highlight strong { color: #007e74; }
.legal-page a:focus-visible { outline: 3px solid #007e74; outline-offset: 4px; }
@media (max-width: 768px) {
    .legal-page .legal-document, .legal-page .legal-summary { padding: 24px; }
    .legal-page .hero-body { padding: 3rem 1.5rem; }
}
