.legal-page { background: var(--lenar-milky-bg); }
.legal-page .nav-wrap { justify-content: space-between; }
.legal-return { display: inline-flex; align-items: center; min-height: 48px; font-size: .875rem; }
.legal-return:hover { text-decoration: underline; }
.legal-heading { max-width: 780px; padding-block: 80px 65px; }
.legal-heading h1 { font-size: clamp(2.75rem, 6vw, 5rem); line-height: 1.04; letter-spacing: -.035em; }
.legal-heading > p { margin-top: 24px; font-size: 1.125rem; }
.legal-heading .legal-date { font-size: .8125rem; margin-top: 22px; }
.legal-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 80px; align-items: start; }
.legal-toc { position: sticky; top: 125px; padding-top: 25px; border-top: 1px solid var(--lenar-border); }
.legal-toc strong { display: block; color: var(--lenar-heading); font-size: .875rem; margin-bottom: 10px; }
.legal-toc a { display: flex; align-items: center; min-height: 44px; padding-block: 8px; font-size: .875rem; line-height: 1.5; color: var(--lenar-text-body); }
.legal-toc a:hover { color: var(--lenar-heading); text-decoration: underline; }
.legal-toc .legal-other { border-top: 1px solid var(--lenar-border); margin-top: 18px; padding-top: 18px; color: var(--lenar-heading); font-weight: 800; }
.legal-content { min-width: 0; max-width: 72ch; }
.legal-content section { border-top: 1px solid var(--lenar-border); padding-block: 30px 55px; scroll-margin-top: 110px; }
.legal-content h2 { font-size: 1.75rem; line-height: 1.2; letter-spacing: -.025em; }
.legal-content p { font-size: 1rem; margin-top: 22px; }
.legal-content a { color: var(--lenar-heading); text-decoration: underline; overflow-wrap: anywhere; }
.legal-page main a:focus-visible, .legal-footer a:focus-visible { outline-color: var(--lenar-heading); outline-offset: 3px; }
.legal-footer { border-top: 1px solid var(--lenar-border); display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; gap: 20px; padding-block: 35px; margin-top: 40px; }
.legal-footer p { font-size: .875rem; color: var(--lenar-heading); }
.legal-footer nav { display: flex; flex-wrap: wrap; gap: 25px; }
.legal-footer a { display: inline-flex; align-items: center; min-height: 44px; font-size: .875rem; color: var(--lenar-heading); }
.legal-footer a:hover { text-decoration: underline; }
@media (max-width: 900px) {
  .legal-layout { grid-template-columns: 1fr; gap: 35px; }
  .legal-toc { position: static; display: grid; grid-template-columns: 1fr 1fr; column-gap: 25px; }
  .legal-toc strong, .legal-toc .legal-other { grid-column: 1 / -1; }
  .legal-heading { padding-block: 55px 40px; }
}
@media (max-width: 600px) {
  .legal-heading h1 { font-size: 2.75rem; }
  .legal-heading > p { font-size: 1rem; }
  .legal-toc { grid-template-columns: 1fr; }
  .legal-content section { padding-bottom: 40px; }
}
