.wa-prose {
  max-width: 70ch;
  margin-inline: auto;
  padding-block: clamp(60px, 7vw, 110px);
}
.wa-prose__heading {
  font-family: var(--wa-font-display);
  font-size: clamp(48px, 6vw, 88px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--wa-ink);
  margin: 0 0 16px;
}
.wa-prose__updated {
  font-family: var(--wa-font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--wa-muted);
  margin-bottom: 48px;
  display: block;
}
.wa-prose h2 {
  font-family: var(--wa-font-display);
  font-size: clamp(24px, 2.4vw, 32px);
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--wa-ink);
  margin: 40px 0 16px;
}
.wa-prose p { color: var(--wa-ink-soft); font-size: 16px; line-height: 1.7; margin: 0 0 16px; }
.wa-prose ul { padding-left: 22px; margin: 0 0 24px; }
.wa-prose li { color: var(--wa-ink-soft); font-size: 16px; line-height: 1.7; margin-bottom: 6px; }
.wa-prose strong { color: var(--wa-ink); font-weight: 600; }
.wa-prose a { color: var(--wa-terra-deep); border-bottom: 1px solid currentColor; }

/* ─── error pages ───────────────────────────────────────────────── */
.wa-error {
  min-height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-block: clamp(60px, 8vw, 120px);
  text-align: center;
}
.wa-error__inner { max-width: 540px; }
.wa-error__code {
  font-family: var(--wa-font-mono);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--wa-terra-deep);
  margin-bottom: 18px;
}
.wa-error__title {
  font-family: var(--wa-font-display);
  font-size: clamp(56px, 8vw, 120px);
  line-height: 0.95;
  letter-spacing: -0.03em;
  color: var(--wa-ink);
  margin: 0 0 20px;
}
.wa-error__title em { font-style: italic; color: var(--wa-terra-deep); }
.wa-error__lede { color: var(--wa-ink-soft); font-size: 17px; line-height: 1.5; margin: 0 0 32px; }
