/**
 * Generic content pages: legal, help, release notes.
 * Readability first, Proactive branding second.
 */

.pa-content__head { padding: clamp(120px, 12vw, 176px) 0 clamp(48px, 6vw, 76px); background: var(--pa-ink); }
.pa-content__head-inner { max-width: 760px; }

.pa-content__title {
  margin: 26px 0 0;
  max-width: 18ch;
  color: #fff;
  font-family: var(--pa-font);
  font-size: clamp(34px, 4.4vw, 62px);
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: var(--pa-tracking-tight);
}
.pa-content__intro { margin: 26px 0 0; max-width: 60ch; color: var(--pa-text-on-dark-bright); font-size: var(--pa-body-lg); line-height: 1.7; }
.pa-content__meta {
  margin: 26px 0 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  color: var(--pa-text-on-dark-soft);
  font-family: var(--pa-font);
  font-size: var(--pa-meta);
  font-weight: 600;
}

.pa-content__body { padding-block: clamp(48px, 6vw, 88px) var(--pa-section-y); }

/* ---- Prose ---------------------------------------------------------------- */

.pa-prose { max-width: 68ch; }
.pa-prose > * + * { margin-top: 20px; }

.pa-prose h2 {
  margin: clamp(40px, 4vw, 60px) 0 0;
  padding-top: clamp(26px, 3vw, 36px);
  border-top: 1px solid var(--pa-border);
  color: var(--pa-text);
  font-family: var(--pa-font);
  font-size: clamp(21px, 2vw, 27px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: var(--pa-tracking-snug);
}
.pa-prose h2:first-child { margin-top: 0; padding-top: 0; border-top: none; }

.pa-prose h3 {
  margin: 32px 0 0;
  color: var(--pa-text);
  font-family: var(--pa-font);
  font-size: clamp(18px, 1.6vw, 21px);
  font-weight: 700;
  letter-spacing: var(--pa-tracking-snug);
}

.pa-prose p { color: var(--pa-text-muted); font-size: var(--pa-body); line-height: 1.75; }
.pa-prose strong { color: var(--pa-text); font-weight: 700; }

.pa-prose ul, .pa-prose ol { margin-top: 18px; padding-left: 0; list-style: none; }
.pa-prose li {
  position: relative;
  padding-left: 24px;
  margin-top: 12px;
  color: var(--pa-text-muted);
  font-size: var(--pa-body);
  line-height: 1.7;
}
.pa-prose ul li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 12px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--pa-purple);
}
.pa-prose ol { counter-reset: pa-list; }
.pa-prose ol li { counter-increment: pa-list; }
.pa-prose ol li::before {
  content: counter(pa-list) ".";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--pa-purple);
  font-family: var(--pa-font);
  font-weight: 700;
  font-size: var(--pa-body-sm);
}

.pa-prose a { border-bottom: 1px solid rgba(91, 75, 214, 0.35); padding-bottom: 1px; }
.pa-prose a:hover { border-bottom-color: var(--pa-purple-hover); }

/* An unsupplied legal value. Deliberately impossible to mistake for real copy. */
.pa-placeholder {
  padding: 2px 7px;
  border-radius: var(--pa-radius-xs);
  background: #FCF4DA;
  color: #7A5B12;
  font-size: 0.94em;
  font-weight: 600;
  box-decoration-break: clone;
}

/* ---- Page CTA ------------------------------------------------------------- */

.pa-content__cta { padding-block: clamp(52px, 6vw, 88px); background: var(--pa-ink); }
.pa-content__cta-inner { max-width: 760px; }
.pa-content__cta-inner h2 { color: #fff; }
.pa-content__cta-actions { margin-top: 26px; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }

/* ---- Release notes -------------------------------------------------------- */

.pa-release { margin-top: clamp(40px, 4vw, 60px); padding-top: clamp(26px, 3vw, 36px); border-top: 1px solid var(--pa-border); }
.pa-release:first-child { margin-top: 0; padding-top: 0; border-top: none; }

.pa-release__head { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; }
.pa-release__version {
  margin: 0;
  padding: 0;
  border: none;
  color: var(--pa-text);
  font-family: var(--pa-font);
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 700;
  letter-spacing: var(--pa-tracking-snug);
}
.pa-release__date {
  margin: 0;
  padding: 4px 11px;
  border-radius: var(--pa-radius-pill);
  background: var(--pa-surface-alt);
  color: var(--pa-text-warm);
  font-family: var(--pa-font);
  font-size: var(--pa-micro);
  font-weight: 600;
}
.pa-release__summary { margin-top: 18px; }
.pa-release__group {
  margin: 26px 0 0;
  color: var(--pa-text-warm);
  font-family: var(--pa-font);
  font-size: var(--pa-micro);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.pa-release__group + ul { margin-top: 10px; }
