.story-main { padding-block: 72px 88px; }
.story-main article { max-width: 72ch; margin-inline: auto; }
.story-opening { padding-bottom: 36px; margin-bottom: 36px; border-bottom: 1px solid var(--line); }
.story-opening h1 { font-size: clamp(3rem, 6vw, 4.8rem); margin-bottom: 28px; }
.story-intro { color: var(--text); font-size: clamp(1.25rem, 2.2vw, 1.6rem); line-height: 1.6; }
.story-body { font-size: 1.0625rem; line-height: 1.8; }
.story-body p + p { margin-top: 22px; }
.story-body section { margin-top: 48px; }
.story-body h2 { font-size: clamp(1.8rem, 3vw, 2.3rem); margin-bottom: 24px; }
.story-signature { padding-top: 8px; }
.story-signature strong { color: var(--text); }
.story-next { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--line); font-size: 1rem; }
@media (max-width: 700px) {
  .story-main { padding-block: 44px 56px; }
  .story-opening { padding-bottom: 28px; margin-bottom: 28px; }
  .story-body section { margin-top: 36px; }
}
