/* Terms of sale and Privacy policy pages. Builds on styles.css tokens. */
.legal-page main { padding-top: 28px; padding-bottom: 64px; }
.legal-wrap { max-width: 820px; }
.legal-page article {
  color: var(--ink); background: var(--card); border: 1px solid rgba(227, 182, 92, 0.35);
  border-radius: var(--radius); padding: 28px 32px 36px;
}
.legal-page .back { display: inline-block; margin-bottom: 16px; color: var(--muted); text-decoration: none; font-size: 15px; }
.legal-page h1 { font: 600 clamp(28px, 4vw, 38px)/1.15 var(--head); max-width: none; margin: 0 0 6px; }
.legal-page h2 { font: 600 20px/1.3 var(--head); margin: 30px 0 10px; scroll-margin-top: 84px; }
.legal-page h3 { font: 600 16px/1.4 var(--sans); margin: 18px 0 6px; }
.legal-page p, .legal-page li { font-size: 15px; line-height: 1.65; color: #2a3150; }
.legal-page p + p { margin-top: 10px; }
.legal-page article a { color: var(--navy); text-underline-offset: 3px; }
.legal-meta { color: var(--muted) !important; font-size: 14px !important; }
.legal-list { margin: 8px 0 0; padding-inline-start: 22px; }
.legal-list li { margin-bottom: 6px; }
.legal-toc {
  display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 18px 0 4px; padding: 14px 16px;
  background: var(--paper-2); border-radius: var(--radius);
}
.legal-toc a { display: inline-block; padding: 6px 0; font-size: 14px; text-decoration: none; }
.legal-form { padding: 14px 16px; border: 1px dashed var(--line-strong); border-radius: var(--radius); background: #fff; }
.legal-langs { display: flex; gap: 8px; }
.legal-langs button {
  height: 44px; padding: 0 12px; cursor: pointer; font-weight: 500; font-size: 14px;
  background: transparent; color: var(--on-dark); border: 1px solid rgba(227, 182, 92, 0.45); border-radius: var(--radius);
}
.legal-langs button[aria-pressed="true"] { background: var(--gold-soft); color: var(--navy-3); border-color: var(--gold-soft); }
@media (max-width: 600px) {
  .legal-page article { padding: 20px 16px 28px; }
  .legal-langs button { padding: 0 10px; }
}
