.legal-page {
  width: min(100% - 40px, 800px);
  margin-inline: auto;
  padding-block: clamp(140px, 15vw, 190px) 90px;
  overflow-wrap: break-word;
}
.legal-intro h1 { font-size: clamp(40px, 6vw, 70px); }
.legal-intro .legal-lead { font-size: clamp(18px, 2vw, 22px); }
.legal-intro .legal-version { color: var(--gold-light); font-weight: 600; }
.legal-page p { line-height: 1.8; color: #d1dce8; }
.legal-page a { color: var(--gold-light); text-decoration: underline; text-underline-offset: .2em; }
.legal-actions { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-block: 24px; }
.legal-page .legal-company {
  padding: 20px 24px;
  margin-block: 28px;
  border-left: 2px solid var(--gold);
  background: var(--deep);
  font-size: 15px;
}
.legal-index, .legal-section, .legal-note { border-top: 1px solid var(--line); padding-block: 28px; }
.legal-section h2 { font-size: clamp(25px, 3vw, 36px); line-height: 1.22; }
.legal-section h3 { font-size: 21px; margin-block: 24px 8px; }
.legal-section p:last-child, .legal-intro p:last-child { margin-bottom: 0; }
.legal-index summary { color: var(--gold-light); cursor: pointer; }
.legal-index h2 { display: inline; font-size: 24px; margin: 0; }
.legal-index ul {
  columns: 2;
  column-gap: 32px;
  list-style: none;
  padding: 0;
  margin: 20px 0 0;
}
.legal-index li { break-inside: avoid; padding-block: 5px; line-height: 1.5; }
@media (max-width: 650px) {
  .legal-index ul { columns: 1; }
  .legal-section { padding-block: 22px; }
}
