.narrative-article .editorial-article-cover h1 { font-size: clamp(3.2rem,5.3vw,5.8rem); line-height: .98; letter-spacing: -.045em; }
.narrative-article .editorial-article-cover-image img { aspect-ratio: 3/2; object-position: 50% 35%; }
.narrative-article-copy > p, .narrative-article-copy .editorial-copy-section > p { margin: 0 0 1.3rem; font-size: 1.13rem; line-height: 1.78; }
.narrative-article .editorial-copy-section h2 { margin-top: 2.5rem; font-size: clamp(2rem,3.4vw,3rem); line-height: 1.1; letter-spacing: -.035em; }
.narrative-article-copy a { color: var(--sage-deep); text-decoration: underline; text-underline-offset: 4px; }
.narrative-article-copy a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.narrative-article-copy blockquote { border-left: 3px solid var(--clay-soft); border-radius: 0; background: #31433b; margin: 1.7rem 0; padding: 1.4rem 1.6rem; color: var(--ivory); }
.narrative-article-copy blockquote p { margin: 0; font-size: 1.13rem; line-height: 1.75; font-style: italic; color: inherit; }
.narrative-article-copy ul { list-style: disc; margin: 1.5rem 0; padding-left: 1.35rem; }
.narrative-article-copy li { padding-left: .3rem; margin: 0 0 1rem; font-size: 1.13rem; line-height: 1.78; }
.narrative-article-tool { border-block: 1px solid var(--stone); background: var(--parchment); margin: 2.5rem 0; padding: 1.5rem; }
.narrative-article-tool h2 { font-size: clamp(1.8rem,3vw,2.35rem); line-height: 1.15; margin: .6rem 0 1rem; }
.narrative-article-tool a { font-size: 1rem; font-weight: 650; }
.narrative-article-sources { border-top: 1px solid var(--stone); padding-top: 1.5rem; margin-top: 2rem; scroll-margin-top: 125px; }
.narrative-article-sources h2 { font-size: 1.65rem; }
.narrative-article-sources p { font-size: .9375rem; line-height: 1.65; }
.narrative-related-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2rem; margin-top: 2rem; }
.narrative-related-grid img { width: 100%; height: auto; aspect-ratio: 3/2; object-fit: cover; }
.narrative-related-grid h3 { margin-top: 1rem; font-size: 1.6rem; line-height: 1.2; }
.narrative-related-grid p { font-size: 1rem; line-height: 1.65; }
@media (max-width: 700px) {
  .narrative-article .editorial-article-cover h1 { font-size: clamp(2.7rem,9vw,3.7rem); }
  .narrative-related-grid { grid-template-columns: 1fr; }
  .narrative-article-tool, .narrative-article-copy blockquote { padding: 1.25rem; }
}
