/* /legal (index) and /legal/<slug> (documents). Legal-only prose tweaks are scoped to .legal-doc. */

/* ---- Index ---------------------------------------------------------------- */
.legal-index { max-width: calc(1008px + 2 * var(--gutter)); margin-inline: auto; padding: 60px var(--gutter) 96px; }
.legal-title { font: 500 56px/1.2 var(--font-heading); color: var(--grey-950); }
.legal-subtitle { margin-top: 15px; font: 400 16px/1.6 var(--font-ui); letter-spacing: -0.02em; color: var(--grey-500); }
.legal-list { list-style: none; margin: 48px 0 0; padding: 0; border-bottom: 1px solid #e3e3e3; }
.legal-list li { padding: 19px 0 20px; border-top: 1px solid #e3e3e3; }
.legal-standalone { margin-top: 48px; }
.legal-list a, .legal-standalone a {
  font: 400 16px/1.6 var(--font-ui); letter-spacing: -0.02em; color: var(--grey-700);
  text-decoration: underline; text-underline-offset: 2px; transition: color .2s;
}

/* ---- Document --------------------------------------------------------------- */
.legal-doc-page { max-width: calc(1008px + 2 * var(--gutter)); margin-inline: auto; padding: 60px var(--gutter) 0; }
.legal-doc-title { text-align: center; font: 500 56px/1.2 var(--font-heading); color: var(--grey-950); }
.legal-doc-body { margin-top: 60px; }
.legal-doc .prose { font: 400 16px/1.6 var(--font-ui); letter-spacing: -0.02em; color: var(--grey-700); }
.legal-doc .prose > * + * { margin-top: 20px; }
.legal-doc .prose * + h2 { margin-top: 40px; }
.legal-doc .prose h2 + * { margin-top: 20px; }
.legal-doc .prose h2 { font-size: 40px; line-height: 1.2; letter-spacing: 0; }
.legal-doc .prose strong { font-weight: 700; color: inherit; }
.legal-doc .prose a { color: var(--grey-700); text-decoration-color: currentColor; }
.legal-doc-nav { display: flex; justify-content: space-between; gap: 24px; margin-top: 60px; }
.legal-doc-nav a {
  font: 400 16px/1.6 var(--font-ui); letter-spacing: -0.02em; color: var(--grey-700);
  text-decoration: underline; text-underline-offset: 2px; transition: color .2s;
}
.legal-doc-next { text-align: right; }

/* ---- Tablet ----------------------------------------------------------------- */
@media (max-width: 1199.98px) {
  .legal-index { padding-inline: 75px; }
  .legal-title, .legal-doc-title { font-size: 44px; }
  .legal-doc-page { padding-inline: 100px; }
  .legal-doc-title { padding-inline: 50px; }
  .legal-doc .prose h2 { font-size: 32px; }
}

/* ---- Phone ------------------------------------------------------------------ */
@media (max-width: 809.98px) {
  .legal-index { padding: 44px 24px 64px; }
  .legal-title, .legal-doc-title { font-size: 32px; }
  .legal-list { margin-top: 40px; }
  .legal-standalone { margin-top: 40px; }
  .legal-doc-page { padding-inline: 20px; }
  .legal-doc-title { padding-inline: 39px; }
  .legal-doc .prose h2 { font-size: 26px; }
  .legal-doc-nav { flex-direction: column; gap: 12px; margin-top: 48px; padding-bottom: 8px; }
  .legal-doc-next { text-align: left; }
}
