/* Quiet reading surfaces using the same Montserrat and colors as Astraea. */
.legal-page { background:var(--surface); }
.legal-header { display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; padding-block:28px; }
.legal-languages { display:flex; flex-wrap:wrap; gap:8px; }
.legal-languages a,.legal-tabs a { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 16px; border-radius:12px; color:var(--text-secondary); font-weight:600; line-height:1.5; text-align:center; }
.legal-languages [aria-current],.legal-tabs [aria-current] { background:var(--surface-variant); color:var(--gold); }
.legal-languages a:hover,.legal-tabs a:hover { color:var(--gold); }
.legal-tabs { display:flex; flex-wrap:wrap; gap:8px; padding-block:12px 24px; border-bottom:1px solid var(--line); }
.legal-main { padding-block:56px 72px; }
.legal-copy { max-width:74ch; margin-inline:auto; color:var(--text-secondary); font-size:16px; line-height:1.85; overflow-wrap:anywhere; }
.legal-copy h1 { margin-bottom:32px; color:var(--text); font-size:clamp(30px,4vw,44px); line-height:1.22; letter-spacing:-.035em; text-wrap:balance; }
.legal-copy h2 { margin-block:36px 16px; color:var(--text); font-size:clamp(20px,2.4vw,26px); line-height:1.4; letter-spacing:-.02em; }
.legal-copy p { margin-block:0 18px; }
.legal-copy strong { color:var(--text); font-weight:600; }
.legal-copy h1 strong,.legal-copy h2 strong { font-weight:800; }
.legal-copy a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
.legal-copy a:hover { color:var(--gold); }
.legal-footer { display:flex; flex-wrap:wrap; gap:12px 28px; align-items:center; padding-block:24px 40px; border-top:1px solid var(--line); color:var(--text-secondary); font-size:14px; line-height:1.6; }
.legal-footer a { display:inline-flex; align-items:center; min-height:48px; }
.legal-footer span { margin-left:auto; }
@media(max-width:640px) {
  .legal-header { gap:20px; padding-block:20px; }
  .legal-languages a,.legal-tabs a { padding-inline:12px; font-size:14px; }
  .legal-tabs { gap:6px; padding-bottom:20px; }
  .legal-main { padding-block:36px 48px; }
  .legal-copy { line-height:1.8; }
  .legal-copy h1 { margin-bottom:24px; }
}
@media(max-width:380px) {
  .legal-header { align-items:flex-start; flex-direction:column; gap:12px; }
  .legal-languages { align-self:stretch; }
  .legal-languages a { flex:1; }
  .legal-footer span { flex-basis:100%; margin-left:0; }
}
@media print {
  .legal-page { background:white; color:black; }
  .legal-header,.legal-tabs,.legal-footer,.skip-link { display:none; }
  .legal-copy { max-width:none; color:black; }
  .legal-copy :is(h1,h2,strong,a) { color:black; }
  .legal-copy h2 { break-after:avoid; }
}
