/* Legal / agreement pages (migration Phase 2) — one template for every
   rich-text legal doc + the JotForm agreement embeds. Narrow reading
   measure, quiet typography; tables (privacy notices) get hairline borders
   (the source .inc-privacy block used raw #d6d6d6 → --color-border-light). */

.p-legal .p-legal__section { padding-top: 48px; }
@media (min-width: 768px) {
  .p-legal .p-legal__section { padding-top: 64px; }
}

.p-legal .p-legal__doc {
  margin-inline: auto;
  max-width: 820px;
}

.p-legal .p-legal__kicker { margin-bottom: 16px; }

.p-legal .p-legal__title {
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.15;
  letter-spacing: var(--track-tighter);
  margin-bottom: 32px;
}

/* ---------- document body (verbatim rich text) ---------- */

.p-legal .p-legal__body {
  font-size: var(--fs-body);
  line-height: var(--leading-body);
  color: var(--color-grey-600);
}
.p-legal .p-legal__body p { margin: 0 0 16px; }
.p-legal .p-legal__body h2,
.p-legal .p-legal__body h3,
.p-legal .p-legal__body h4 {
  color: var(--color-rich-black);
  letter-spacing: var(--track-tight);
  margin: 32px 0 12px;
}
.p-legal .p-legal__body h2 { font-size: var(--fs-3xl); line-height: 1.3; }
.p-legal .p-legal__body h3 { font-size: var(--fs-2xl); line-height: 1.35; }
.p-legal .p-legal__body h4 { font-size: var(--fs-xl); line-height: 1.4; }
.p-legal .p-legal__body a { color: var(--color-blue-500); text-decoration: underline; }
.p-legal .p-legal__body ul,
.p-legal .p-legal__body ol { margin: 0 0 16px; padding-left: 24px; }
.p-legal .p-legal__body li { margin-bottom: 8px; }
.p-legal .p-legal__body strong { color: var(--color-rich-black); }

.p-legal .p-legal__body table {
  width: 100%;
  border-collapse: collapse;
  margin: 24px 0;
  font-size: var(--fs-sm);
}
.p-legal .p-legal__body th,
.p-legal .p-legal__body td {
  border: 1px solid var(--color-border-light);
  padding: 12px 14px;
  vertical-align: top;
  text-align: left;
}
.p-legal .p-legal__body th {
  color: var(--color-rich-black);
  font-weight: 600;
  background: var(--color-background);
}

/* ---------- JotForm agreement embed ---------- */

.p-legal .p-legal__form { margin: 8px 0 24px; }
.p-legal .p-legal__form-frame {
  width: 100%;
  min-height: 1600px;
  border: 0;
}


/* ---------- password gate (gated agreement pages; live-parity) ---------- */
.p-legal .p-legal__gate { margin: 16px 0 48px; max-width: 420px; }
.p-legal .p-legal__gate-text { margin: 0 0 12px; }
.p-legal .p-legal__gate-form { display: flex; gap: 8px; }
.p-legal .p-legal__gate-input {
  flex: 1;
  padding: 10px 14px;
  border: 1px solid var(--color-grey-200);
  border-radius: 8px;
  font: inherit;
}
.p-legal .p-legal__gate-button {
  padding: 10px 18px;
  border: 0;
  border-radius: 8px;
  background: var(--color-rich-black);
  color: var(--color-white);
  font: inherit;
  cursor: pointer;
}
.p-legal .p-legal__gate-error { margin: 10px 0 0; color: var(--color-grey-600); }
