.legal-footer {
  padding: 20px 4.5% 28px;
  background: #211e20;
  color: #bdb9bb;
  border-top: 1px solid #ffffff26;
  font: 12px/1.7 var(--sans);
}
.legal-footer-row { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; }
.legal-footer p { margin-top: 8px; }
.legal-footer a { color: inherit; }
.legal-footer a:hover { text-decoration: underline; text-underline-offset: 3px; }
.legal-footer a:focus-visible { outline-color: var(--lime); }
.legal-footer [data-contact], .legal-footer a { overflow-wrap: anywhere; }
.legal-page {
  max-width: 808px;
  margin: 0 auto;
  padding: 72px 24px 96px;
  font: 16px/1.75 var(--sans);
  overflow-wrap: break-word;
}
.legal-page h1 { font: 56px/1.1 var(--serif); margin-bottom: 28px; }
.legal-page h2 { font: 30px/1.25 var(--serif); margin: 36px 0 14px; }
.legal-page p { margin: 0 0 18px; }
.legal-page ul { margin: 0 0 24px; padding-left: 22px; }
.legal-page li { margin-bottom: 14px; }
.legal-page a { color: var(--wine); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal-page .effective-date { color: var(--muted); font-size: 14px; }
@media (min-width: 1600px) {
  .legal-footer { padding-inline: max(4.5%, calc((100% - 1500px) / 2)); }
}
@media (max-width: 520px) {
  .legal-footer { padding: 20px 22px 28px; }
  .legal-footer-row { gap: 4px 9px; }
  .legal-page { padding: 48px 22px 64px; }
  .legal-page h1 { font-size: 44px; }
}
