.legal {
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(50px, 8vw, 100px) clamp(22px, 6vw, 60px);
}
.legal-header {
  margin-bottom: 50px;
}
.legal-header .hub-back {
  color: var(--orange);
  margin-bottom: 32px;
}
.legal-header .label {
  color: var(--muted);
  margin: 0 0 16px;
}
.legal h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(34px, 5vw, 52px);
  line-height: 1.05;
  letter-spacing: -1.5px;
  color: var(--ink);
  margin: 0 0 20px;
}
.legal-meta {
  font: 500 11px 'DM Mono';
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--muted);
  margin: 0 0 40px;
}
.legal-body {
  font-size: 16px;
  line-height: 1.8;
  color: #3a4d47;
}
.legal-body h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(22px, 2.8vw, 28px);
  line-height: 1.2;
  letter-spacing: -0.5px;
  color: var(--ink);
  margin: 44px 0 14px;
}
.legal-body h3 {
  font-family: 'Manrope', sans-serif;
  font-size: 17px;
  font-weight: 700;
  color: var(--ink);
  margin: 32px 0 10px;
}
.legal-body p {
  margin: 0 0 16px;
}
.legal-body ul {
  margin: 0 0 20px;
  padding-left: 22px;
}
.legal-body li {
  margin-bottom: 8px;
}
.legal-body strong {
  color: var(--ink);
}
.legal-body code {
  font-family: 'DM Mono', monospace;
  font-size: 13px;
  background: rgba(24,51,44,0.06);
  padding: 2px 6px;
  border-radius: 4px;
  color: var(--ink);
}
.legal-body a {
  color: var(--orange);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.legal-body a:hover {
  opacity: 0.8;
}