.legal {
  padding: 88px 48px 96px;
  max-width: 760px;
}
.legal-updated {
  font-size: 10px; font-weight: 600;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--muted); margin-bottom: 40px;
}
.legal h2 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 400; line-height: 1.2;
  color: var(--charcoal);
  margin: 44px 0 14px;
}
.legal h2:first-of-type { margin-top: 0; }
.legal p, .legal li {
  font-size: 13px; line-height: 2.0; color: var(--mid);
}
.legal p + p { margin-top: 1.1em; }
.legal ul {
  list-style: none;
  margin: 1.1em 0 0;
}
.legal li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 0.5em;
}
.legal li::before {
  content: '';
  position: absolute; left: 0; top: 13px;
  width: 8px; height: 0.5px;
  background: var(--accent-dark);
}
.legal a {
  color: var(--accent-dark); text-decoration: none;
  border-bottom: 0.5px solid var(--accent-dark);
}
.legal a:hover { color: var(--charcoal); border-color: var(--charcoal); }
.legal-note {
  margin-top: 52px; padding-top: 24px;
  border-top: 0.5px solid var(--border);
  font-size: 11px; line-height: 1.9; color: var(--muted);
}

@media (max-width: 1080px) {
  .legal { padding: 64px 28px 72px; }
}

@media (max-width: 560px) {
  .legal { padding: 48px 20px 56px; }
  .legal h2 { margin: 34px 0 12px; }
}
