.legal-links { display:flex; align-items:center; flex-wrap:wrap; gap:8px 18px; font-size:12px; line-height:1.6; }
.legal-links a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.legal-links a:hover { color:#946020; }
.legal-links a:focus-visible { outline:2px solid #946020; outline-offset:4px; }
.public-footer .legal-links { justify-content:center; }
.legal-main { max-width:820px; padding-block:64px 80px; }
.legal-heading { padding-bottom:36px; margin-bottom:36px; border-bottom:1px solid var(--line); }
.legal-heading h1 { font-size:clamp(40px,7vw,68px); line-height:1.1; letter-spacing:-2.5px; margin:22px 0 20px; }
.legal-date { font-size:13px; color:var(--muted); }
.legal-copy { font-size:16px; line-height:1.8; overflow-wrap:anywhere; }
.legal-copy p { margin:0 0 18px; }
.legal-copy h2 { font-size:24px; line-height:1.3; letter-spacing:-.5px; margin:36px 0 16px; }
.legal-copy h3 { font-size:18px; line-height:1.4; margin:24px 0 12px; }
.legal-copy ul { padding-left:24px; margin:0 0 20px; }
.legal-copy li { padding-left:4px; margin-bottom:12px; }
.legal-copy a { text-decoration:underline; text-underline-offset:3px; }
.legal-copy a:hover { color:var(--amber); }
.legal-summary { padding:24px; margin-bottom:32px; background:#eeeadb; border-left:3px solid var(--amber); }
.legal-summary p:last-child { margin-bottom:0; }
.legal-contents { padding-bottom:24px; border-bottom:1px solid var(--line); }
.legal-contents ul { display:flex; flex-wrap:wrap; gap:8px 24px; list-style:none; padding:0; margin:0; font-size:14px; }
.legal-contents li { margin:0; padding:0; }
.legal-footer { border-top:1px solid var(--line); flex-wrap:wrap; font-size:12px; }
.m-footer:has(.legal-links) { flex-wrap:wrap; }
@media(max-width:560px) {
  .legal-main { padding-block:40px 56px; }
  .legal-heading h1 { letter-spacing:-1.5px; }
  .legal-copy { font-size:15px; }
  .legal-summary { padding:20px; }
  .legal-footer { justify-content:center; }
}
@media print {
  .legal-page { background:white; color:black; }
  .legal-page .m-nav, .legal-page .m-skip, .legal-footer, .legal-contents { display:none; }
  .legal-main { width:100%; max-width:none; padding:0; }
  .legal-copy { font-size:11pt; }
  .legal-copy h2, .legal-copy h3 { break-after:avoid; }
}
