.legal-page { max-width: 960px; margin: 0 auto; padding: 48px 24px 64px; color: #334155; }
.legal-heading { margin-bottom: 28px; }
.legal-heading > a { color: #b91c1c; font-size: 14px; text-decoration: underline; text-underline-offset: 3px; }
.legal-eyebrow { margin: 28px 0 8px; font-size: 12px; font-weight: 700; color: #b91c1c; text-transform: uppercase; letter-spacing: .08em; }
.legal-heading h1 { font-size: clamp(28px, 4vw, 40px); font-weight: 800; line-height: 1.2; color: #0f172a; }
.legal-company, .legal-dates { margin-top: 16px; font-size: 14px; line-height: 1.7; color: #475569; }
.legal-print { display: inline-flex; align-items: center; min-height: 44px; margin-top: 20px; padding: 10px 18px; border: 1px solid #cbd5e1; border-radius: 8px; background: white; font-size: 14px; font-weight: 700; cursor: pointer; }
.legal-print:hover { background: #f8fafc; }
.legal-document { padding: 32px; border: 1px solid #e2e8f0; border-radius: 16px; background: #fff; }
.legal-document h2 { margin: 30px 0 12px; font-size: 20px; font-weight: 750; line-height: 1.4; color: #0f172a; }
.legal-document h2:first-child { margin-top: 0; }
.legal-document p, .legal-document ul { margin: 0 0 18px; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
.legal-document ul { padding-left: 24px; list-style: disc; }
.legal-document li { margin-bottom: 8px; }
.legal-document a { color: #b91c1c; text-decoration: underline; text-underline-offset: 3px; }
.legal-document p:last-child { margin-bottom: 0; }
@media (max-width: 600px) {
    .legal-page { padding: 30px 16px 40px; }
    .legal-document { padding: 20px; }
}
@media print {
    body > header, body > footer, body > a, .legal-heading > a, .legal-print { display: none !important; }
    .legal-page { max-width: none; padding: 0; }
    .legal-document { border: 0; padding: 0; }
    .legal-document h2 { break-after: avoid; }
    .legal-document a { color: inherit; }
}
