.legal-card {
  width: 100%;
  max-width: var(--site-content-max, 1540px);
  margin-inline: auto;
  padding: 36px;
  background: #fff;
  color: #192018;
}
.legal-card h1 {
  max-width: 30ch;
  font-size: 36px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.legal-card p, .legal-card li {
  font-size: 17px;
  line-height: 1.65;
  overflow-wrap: anywhere;
}
.legal-card p { margin: 0 0 16px; }
.legal-introduction { max-width: 80ch; margin-top: 24px; }
.legal-toc {
  margin-block: 32px;
  padding-block: 24px;
  border-block: 1px solid #dce3db;
}
.legal-toc h2 { font-size: 20px; margin: 0 0 16px; }
.legal-toc ol {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 32px;
  padding: 0;
  margin: 0;
  list-style: none;
}
.legal-toc a { color: #184d2a; text-decoration: underline; text-underline-offset: 3px; }
.legal-sections { max-width: 80ch; }
.legal-section { margin-top: 32px; scroll-margin-top: 150px; }
.legal-section h2 { font-size: 24px; line-height: 1.3; margin: 0 0 18px; overflow-wrap: anywhere; }
.legal-section ul { padding-left: 24px; margin: 0 0 20px; }
.legal-section li + li { margin-top: 8px; }
@media (max-width: 820px) {
  .legal-card { padding: 24px 18px; }
  .legal-card h1 { font-size: 28px; }
  .legal-toc ol { grid-template-columns: 1fr; }
  .legal-toc a { display: block; padding-block: 5px; }
  .legal-section h2 { font-size: 22px; }
}
