.article-detail__body {
  padding-block: var(--space-2xl);
  background: var(--color-surface-dark);
  color: var(--color-on-accent);
}

.article-detail__content {
  width: 100%;
  max-width: 44.5rem;
  margin-inline: auto;
  overflow-wrap: anywhere;
}

.article-detail__content :where(h2, h3, h4) {
  margin: 0 0 var(--space-xl);
  color: var(--color-on-accent);
  font-size: clamp(1.5rem, 2.0833vw, var(--fs-article-heading));
  font-weight: 274;
  line-height: var(--lh-tight);
  letter-spacing: -.015em;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}

.article-detail__content :where(h2, h3, h4):not(:first-child) {
  margin-block-start: calc(var(--space-2xl) * 2);
}

.article-detail__content :where(p, ul, ol, blockquote, table, figcaption) {
  max-width: 42.5rem;
  margin-block: 0;
  color: var(--color-text-secondary);
  font-size: var(--fs-body-large);
  font-weight: 274;
  line-height: var(--lh-description);
  letter-spacing: -.03em;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}

.article-detail__content :where(p, ul, ol, blockquote, table, figure) + :where(p, ul, ol, blockquote, table, figure) {
  margin-block-start: calc(var(--space-md) * 1.5);
}

.article-detail__content :where(ul, ol) { padding-inline-start: var(--space-md); }
.article-detail__content :where(li + li) { margin-block-start: var(--space-xs); }
.article-detail__content :where(a) { color: var(--color-header-border-start); }
.article-detail__content :where(a:focus-visible) { outline-color: var(--color-header-border-start); }
.article-detail__content :where(figure, img, video, iframe) { max-width: 100%; height: auto; }
.article-detail__content :where(figure) { margin-inline: 0; }
.article-detail__content :where(blockquote) { padding-inline-start: var(--space-md); border-inline-start: 2px solid var(--color-header-border-start); }
.article-detail__content :where(table) { display: block; overflow-x: auto; }

@media (width <= 48rem) {
  .article-detail__content :where(h2, h3, h4):not(:first-child) { margin-block-start: var(--space-2xl); }
}
