.wf-legal-body { background: var(--color-bg); }
.wf-legal-header { background: var(--color-surface); }
.wf-legal-back { margin-left: auto; color: var(--color-primary); font-weight: var(--font-weight-semibold); text-decoration: none; }
.wf-legal-back:hover { text-decoration: underline; }
.wf-legal-main { max-width: 58rem; padding-top: var(--space-7); padding-bottom: var(--space-8); }
.wf-legal-card { min-width: 0; padding: var(--space-7); border: 1px solid var(--color-border); border-radius: var(--radius-card); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.wf-legal-heading { padding-bottom: var(--space-5); border-bottom: 1px solid var(--color-border); }
.wf-legal-kicker { color: var(--color-primary); font-size: var(--font-size-label); font-weight: var(--font-weight-bold); letter-spacing: var(--letter-spacing-label); text-transform: uppercase; }
.wf-legal-heading h1 { margin: var(--space-3) 0 0; font-size: var(--font-size-h2); line-height: var(--line-height-heading); overflow-wrap: break-word; }
.wf-legal-meta { margin: var(--space-3) 0 0; color: var(--color-text-muted); font-size: var(--font-size-body-sm); }
.wf-legal-content { line-height: var(--line-height-body); overflow-wrap: anywhere; }
.wf-legal-content section { margin-top: var(--space-6); }
.wf-legal-content h2 { margin: 0 0 var(--space-3); font-size: var(--font-size-h3); line-height: var(--line-height-heading); }
.wf-legal-content p, .wf-legal-content ul { margin: 0 0 var(--space-3); }
.wf-legal-content li + li { margin-top: var(--space-2); }
.wf-legal-content a { color: var(--color-primary); }
.wf-legal-content a:focus-visible, .wf-legal-back:focus-visible { outline: 2px solid var(--color-focus); outline-offset: var(--space-1); }
@media (max-width: 680px) {
    .wf-legal-main { padding-top: var(--space-5); padding-bottom: var(--space-7); }
    .wf-legal-card { padding: var(--space-5); }
    .wf-legal-heading h1 { font-size: 1.75rem; }
}
