
.legal { padding-bottom: clamp(72px, 9vw, 128px); }
.legal__rail { max-width: calc(68ch + var(--gutter) * 2); margin-inline: auto; }
.legal__head {
  padding-bottom: clamp(32px, 4vw, 48px);
  border-bottom: 1px solid var(--rule);
}
.legal__head .title { font-weight: 300; }
.legal__updated {
  margin-top: 16px;
  font-size: 15px;
  color: var(--dim);
}
.legal__intro {
  margin-top: 24px;
  font-size: 18px;
  line-height: 1.65;
  color: var(--mist);
}
.legal__body { max-width: 68ch; }
.legal__body section { padding-top: clamp(36px, 4.5vw, 52px); }
.legal__body h2 {
  font-size: 21px;
  font-weight: 450;
  line-height: 1.3;
  letter-spacing: -0.012em;
  color: var(--paper);
}
.legal__body p,
.legal__body ul { margin-top: 14px; font-size: 17px; line-height: 1.7; }
.legal__body ul { padding-left: 1.2em; }
.legal__body li + li { margin-top: 6px; }
.legal__body li::marker { color: var(--dim); }
.legal__body address {
  margin-top: 14px;
  padding-left: 16px;
  border-left: 1px solid var(--rule-2);
  color: var(--paper);
  line-height: 1.7;
}
.legal__toc {
  max-width: 68ch;
  margin-top: clamp(32px, 4vw, 44px);
  padding: 24px 28px;
  background: var(--ink-2);
  border: 1px solid var(--rule);
  border-radius: var(--radius);
}
.legal__toc-label {
  font-size: 15px;
  font-weight: 450;
  color: var(--paper);
}
.legal__toc ol {
  margin-top: 12px;
  padding-left: 1.6em;
  columns: 2;
  column-gap: 32px;
  font-size: 15px;
  line-height: 1.5;
}
.legal__toc li { break-inside: avoid; padding-block: 3px; }
.legal__toc li::marker { color: var(--dim); font-variant-numeric: tabular-nums; }
.legal__toc a { color: var(--mist); transition: color .2s var(--ease); }
.legal__toc a:hover { color: var(--paper); }
@media (max-width: 599px) {
  .legal__toc { padding: 20px; }
  .legal__toc ol { columns: 1; }
}
.legal__num {
  display: inline-block;
  min-width: 2em;
  color: var(--dim);
  font-variant-numeric: tabular-nums;
}
.legal__body section { scroll-margin-top: 96px; }
.legal__body strong { color: var(--paper); font-weight: 500; }
.legal__body .legal__caps { font-size: 15px; line-height: 1.7; letter-spacing: .01em; }
.legal__intro + .legal__intro { margin-top: 14px; }
