.legal-page { background: #0b0b0d; color: #fff; }
.legal-content { max-width: 56rem; margin: 0 auto; padding: 3.5rem 1.5rem 5rem; }
.legal-content h1 { font-family: Teko, sans-serif; font-size: clamp(3rem, 7vw, 5rem); line-height: 1; margin-bottom: .75rem; }
.legal-content h2 { font-family: Teko, sans-serif; font-size: 2rem; line-height: 1.15; margin: 2.5rem 0 .75rem; }
.legal-content p, .legal-content li, .legal-content dd { color: #d1d5db; line-height: 1.75; }
.legal-content p + p { margin-top: 1rem; }
.legal-content ul { list-style: disc; padding-left: 1.5rem; }
.legal-content li + li { margin-top: .5rem; }
.legal-content a { text-decoration: underline; text-underline-offset: .2em; }
.legal-content .legal-status { color: #9ca3af; font-size: .9rem; margin-bottom: 1.5rem; }
.legal-notice { border-left: 3px solid #f43f5e; background: #171113; padding: 1rem 1.25rem; margin: 1.5rem 0 2rem; }
.legal-content dl { margin-top: 1rem; }
.legal-content dl > div { padding: 1rem 0; border-bottom: 1px solid #374151; }
.legal-content dt { font-weight: 600; margin-bottom: .25rem; }
.legal-todo { color: #fda4af; }
.legal-links { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; border-top: 1px solid #374151; margin-top: 3rem; padding-top: 1.5rem; }
.legal-links a { min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 640px) { .legal-content { padding: 2rem 1.25rem 3rem; } }
