.home-footer { display: grid; grid-template-columns: minmax(200px, 1fr) auto auto; gap: 48px; padding-block: 48px; border-top: 1px solid oklch(86.9% 0.022 252.894); color: var(--home-muted); font-size: 14px; }
.home-footer a { display: inline-flex; min-height: 44px; align-items: center; }
.home-footer-brand > a { color: var(--home-ink); font-weight: 600; text-decoration: none; }
.home-footer-brand p { max-width: 34ch; margin-block: 8px 0; }
.home-footer-menu { display: flex; gap: 64px; }
.home-footer-menu h2 { margin: 12px 0; color: var(--home-ink); font-size: 14px; font-weight: 600; }
.home-footer-menu ul { list-style: none; margin: 0; padding: 0; }
.home-footer-top { align-self: start; }
.legal-document { max-width: 72ch; padding-block: 56px 64px; overflow-wrap: anywhere; }
.legal-document h1 { font-size: 2.25rem; line-height: 1.2; letter-spacing: -.025em; font-weight: 600; margin: 0 0 28px; text-wrap: balance; }
.legal-document h2 { font-size: 1.5rem; line-height: 1.3; font-weight: 600; margin: 40px 0 16px; }
.legal-document p, .legal-document li { font-size: 1rem; line-height: 1.75; }
.legal-document p { margin-block: 16px; }
.legal-document ul { padding-left: 24px; }
.legal-document li + li { margin-top: 10px; }
.legal-document a { color: var(--home-accent); }
.legal-draft-notice { background: oklch(96.2% 0.018 272.314); color: oklch(39.8% 0.195 277.366); padding: 20px; border-radius: 12px; }
.legal-navigation { display: flex; flex-wrap: wrap; gap: 12px 28px; border-top: 1px solid oklch(86.9% 0.022 252.894); margin-top: 40px; padding-top: 24px; }
.legal-navigation a { display: inline-flex; align-items: center; min-height: 44px; }
.authentication-legal { margin-block: 24px; }
.authentication-legal a { text-underline-offset: .2em; }
@media (max-width: 900px) {
  .home-footer { grid-template-columns: 1fr auto; gap: 28px; }
  .home-footer-menu { gap: 40px; }
  .home-footer-top { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .home-footer { grid-template-columns: 1fr; padding-block: 32px; }
  .home-footer-menu { flex-wrap: wrap; gap: 24px 40px; }
  .legal-document { padding-block: 36px 48px; }
  .legal-document h1 { font-size: 2.25rem; }
}
