.legal-page { background: var(--paper); color: var(--ink); }
.legal-header { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 28px 3.4vw; border-bottom: 1px solid #c9c8bf; }
.legal-return { display: inline-flex; align-items: center; gap: 32px; padding: 12px 0; font-size: 15px; }
.legal-title { padding: clamp(56px, 7vw, 112px) 3.4vw clamp(48px, 6vw, 88px); }
.legal-title h1 { margin: 0; font-size: clamp(42px, 6vw, 88px); line-height: 1.02; font-weight: 500; letter-spacing: -.035em; }
.legal-layout { display: grid; grid-template-columns: minmax(180px, 1fr) minmax(0, 3fr); align-items: start; gap: 5vw; padding: 0 3.4vw 100px; }
.legal-navigation { position: sticky; top: 28px; display: flex; flex-direction: column; gap: 0; border-top: 1px solid #b8bdb7; }
.legal-navigation a { padding: 16px 0; font-size: 16px; border-bottom: 1px solid #d1d3cb; }
.legal-content { max-width: 840px; min-width: 0; }
.legal-content section { padding-top: 28px; border-top: 1px solid #b8bdb7; scroll-margin-top: 28px; }
.legal-content section + section { margin-top: 80px; }
.legal-content h2 { margin: 0 0 36px; font-size: clamp(28px, 3vw, 40px); font-weight: 500; line-height: 1.15; letter-spacing: -.035em; overflow-wrap: anywhere; }
.legal-company { margin: 0; font-size: 18px; line-height: 1.65; }
.legal-company > div { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 24px; padding: 12px 0; }
.legal-company dt { color: #535c54; }
.legal-company dd { margin: 0; overflow-wrap: anywhere; }
.legal-prose { font-size: 18px; line-height: 1.75; color: #343c35; overflow-wrap: break-word; }
.legal-prose p { margin: 0 0 24px; }
.legal-prose h3 { margin: 48px 0 24px; color: var(--ink); font-size: 24px; font-weight: 550; line-height: 1.35; letter-spacing: -.02em; }
.legal-prose h3:first-child { margin-top: 0; }
.legal-prose h4 { margin: 32px 0 12px; font-size: 18px; font-weight: 600; line-height: 1.5; color: var(--ink); }
.legal-prose li { margin-bottom: 16px; }
.legal-prose ul, .legal-prose ol { padding-left: 24px; }
.legal-prose a, .legal-company a { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: #8c968d; overflow-wrap: anywhere; }
.legal-page a:hover { text-decoration: underline; text-underline-offset: 5px; }
.legal-page a:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.legal-footer { display: flex; align-items: center; gap: 32px; flex-wrap: wrap; padding: 24px 3.4vw; font-size: 14px; }
.legal-footer > span { margin-right: auto; }
@media (max-width: 760px) {
  .legal-header { padding: 20px; }
  .legal-header .wordmark { font-size: 18px; }
  .legal-return { font-size: 14px; gap: 10px; }
  .legal-title { padding: 52px 20px 44px; }
  .legal-layout { grid-template-columns: 1fr; gap: 44px; padding: 0 20px 64px; }
  .legal-navigation { position: static; }
  .legal-company > div { grid-template-columns: 1fr; gap: 2px; padding: 12px 0; }
  .legal-company dt { font-size: 15px; }
  .legal-content section + section { margin-top: 56px; }
  .legal-prose { font-size: 17px; line-height: 1.7; }
  .legal-prose h3 { font-size: 22px; }
  .legal-footer { padding: 24px 20px; gap: 24px; }
  .legal-footer > span { flex-basis: 100%; }
}
