/* Public legal pages use the same type, surfaces, header and footer as the marketing site. */
body[data-page="legal"] { min-height:100dvh; display:flex; flex-direction:column; }
.legal-main { flex:1; padding-block:clamp(44px,7vw,100px) 84px; }
.legal-intro,.legal-content,.legal-related { width:min(100%,900px); }
.legal-intro { padding-bottom:32px; border-bottom:1px solid var(--line); }
.legal-intro .eyebrow { color:var(--red); }
.legal-intro h1 { margin-top:16px; font-family:var(--display); font-size:clamp(38px,6vw,76px); line-height:1.07; letter-spacing:-.045em; overflow-wrap:break-word; word-break:normal; hyphens:manual; }
.legal-content { color:var(--ink); font-size:15px; line-height:1.75; overflow-wrap:anywhere; }
.legal-content h2 { margin:42px 0 12px; font-family:var(--display); font-size:clamp(23px,3vw,30px); line-height:1.25; font-weight:700; letter-spacing:-.025em; }
.legal-content h3 { margin:28px 0 10px; font-size:18px; line-height:1.35; }
.legal-content p,.legal-content ul,.legal-content ol { margin:0 0 18px; }
.legal-content ul,.legal-content ol { padding-left:22px; }
.legal-content li { margin-bottom:8px; }
.legal-content a { color:var(--red); text-decoration:underline; text-underline-offset:3px; }
.legal-content a:hover { text-decoration-thickness:2px; }
.legal-content table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; margin:20px 0; }
.legal-content th,.legal-content td { padding:10px 14px; border:1px solid var(--line); text-align:left; }
.legal-content blockquote { margin:24px 0; padding:8px 20px; border-left:2px solid var(--red); }
.legal-related { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:56px; padding-top:24px; border-top:1px solid var(--line); font-size:13px; font-weight:700; }
.legal-related a { min-height:44px; display:inline-flex; align-items:center; }
html[data-theme="dark"] .legal-content { color:#d5d6da; }
html[data-theme="dark"] .legal-content h2,html[data-theme="dark"] .legal-content h3,html[data-theme="dark"] .legal-content strong { color:var(--ink); }
@media(max-width:599px) { .legal-main { padding-block:36px 60px; } .legal-intro { padding-bottom:24px; } .legal-content { font-size:14px; } .legal-content h2 { margin-top:34px; } }
@media print { .site-header,.footer,.legal-related,.skip-link { display:none!important; } body[data-page="legal"] { display:block; background:#fff!important; color:#111!important; } .legal-main { width:100%; padding:0; } .legal-content,.legal-content h2,.legal-content h3 { color:#111!important; } }

@media (max-width:599px) { .legal-intro h1 { font-size:clamp(24px,7.4vw,38px); line-height:1.1; } }
