/* Legal pages (/privacy-policy, /terms-of-service) — the original template's own legal layout
   (maximusbio.framer.website/add-ons/privacy-policy), measured at 1440 / 1000 / 390; breakpoints 1200 / 810.
   One 700px article centred on the page, its own top padding instead of the main offset; inside it, left-aligned:
   a 320px head (pill · H1) and a ≤600px rich-text column. Rich-text rhythm (from the original's computed margins):
   H2 40px above / 16px below, paragraph after a paragraph or list 16px, list after a paragraph 20px. */

.page-legal .main { padding-top: 0; }

.legal {
  width: 100%; max-width: 700px; margin-inline: auto;
  padding: 100px 39px 56px; /* top: 28px less since the ticker went (14 Oct 2026) */
  display: flex; flex-direction: column; align-items: flex-start; gap: 56px;
}

/* ---------- Head: pill (no dot) · H1 ---------- */
.legal__head { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; width: 320px; max-width: 100%; }
.legal__title { width: 100%; text-wrap: wrap; }

/* ---------- Rich text ---------- */
.legal__body { display: flex; flex-direction: column; width: 100%; max-width: 600px; }
.legal__section { display: flex; flex-direction: column; margin-top: 40px; }
.legal__h { color: var(--ink); text-wrap: wrap; }
.legal__h + * { margin-top: 16px; }
.legal__num { color: var(--accent); font-variant-numeric: tabular-nums; } /* section index: the page's one accent */
.legal__p + .legal__p, .legal__list + .legal__p { margin-top: 16px; }
.legal__p + .legal__list { margin-top: 20px; }
.legal__updated { margin-top: 40px; }

.legal__li { position: relative; padding-left: 1.42em; }
.legal__li::before { content: "•"; position: absolute; left: 0; top: 0; }

/* The original sets its contact e-mail in Nohemi Medium inside the paragraph; here it is also a mailto link. */
.legal__link { font-family: var(--font-nohemi-500); color: inherit; text-decoration: none; transition: color .2s var(--ease-btn); }
@media (hover: hover) {
  .legal__link:hover { color: var(--ink); text-decoration: underline; text-underline-offset: 2px; text-decoration-color: var(--accent); }
}
.legal__link:focus-visible { color: var(--ink); text-decoration: underline; text-underline-offset: 2px; text-decoration-color: var(--accent); }

/* ---------- Tablet 810–1199.98 ---------- */
@media (max-width: 1199.98px) {
  .legal { padding: 72px 32px 45px; gap: 45px; }
}

/* ---------- Phone ≤809.98 ---------- */
@media (max-width: 809.98px) {
  .legal { max-width: none; padding: 90px 20px 40px; gap: 35px; }
  .legal__head { width: 280px; }
}
