/* PIN 2026 multipage editorial system
   Structure from the multipage hub; visual language from the approved long-form report. */
:root {
  --navy: #001828;
  --navy-2: #001828;
  --red: #CE2E27;
  --yellow: #F5B042;
  --cream: #F4F6F8;
  --off: #F4F6F8;
  --ink: #455561;
  --muted: #455561;
  --white: #FFFFFF;
  --line: rgba(0, 24, 40, .18);
  --steel: #8FA8BC;
  --ci-amber: #F5B042;
  --ei-slate: #3A6480;
  --wrap: 1240px;
  --radius: 0;
  --shadow: none;
  --gutter: clamp(1.25rem, 4vw, 4rem);
}

html { background: var(--white); scroll-padding-top: 6.5rem; }
body {
  overflow-x: clip;
  background: var(--white);
  color: var(--ink);
  font-family: "Century Gothic", "PIN Gothic", "URW Gothic", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.6;
}
.wrap { width: min(var(--wrap), calc(100% - var(--gutter) * 2)); }
.narrow { max-width: 62rem; }
:focus-visible { outline: 3px solid var(--red); outline-offset: 4px; }

/* Header: white, compact, precise, and shared by every route. */
.site-header {
  background: rgba(255, 255, 255, .98);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(14px);
}
.header-inner { min-height: 84px; gap: clamp(.75rem, 2vw, 2rem); }
.brand img { width: 139px; }
.site-nav { gap: clamp(.25rem, 1vw, 1rem); }
.site-nav a {
  color: var(--ink);
  font-size: .72rem;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.site-nav a::after { background: var(--red); }
.site-nav a[aria-current="page"] { color: var(--navy); }
.report-utility {
  min-height: 46px;
  padding: .72rem 1rem;
  background: var(--red);
  color: var(--white);
  border: 0;
  font-size: .69rem;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.report-utility:hover { background: var(--navy); color: var(--white); }
.nav-toggle { width: 44px; min-width: 44px; height: 44px; padding: 0; border: 0; }
.nav-lines { display: flex; flex: 0 0 24px; width: 24px; height: 16px; flex-direction: column; justify-content: space-between; gap: 0; }
.nav-lines i { flex: 0 0 2px; width: 24px; height: 2px; background: var(--navy); }

/* Remove the former generic circles, dots, nodes, and ornamental path field. */
.path-field::before,
.path-field::after { content: none !important; display: none !important; }
.movement-heading > span {
  width: auto;
  height: auto;
  display: block;
  padding: 0;
  background: transparent;
  color: var(--red);
  border-radius: 0;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .14em;
}
.timeline li::before { display: none; content: none; }

/* Typography and editorial rhythm. */
h1, h2, h3, h4 { color: var(--navy); font-weight: 600; letter-spacing: -.035em; }
h1 { font-size: clamp(3rem, 6.5vw, 6.3rem); line-height: .98; }
h2 { font-size: clamp(2.55rem, 5vw, 5.1rem); line-height: 1; }
h3 { line-height: 1.08; }
.eyebrow,
.meta,
.story-place,
.period-label {
  color: var(--red);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.light { color: var(--steel) !important; }
.lede, .large { font-size: clamp(1.05rem, 1.4vw, 1.28rem); line-height: 1.58; }
.section { padding: clamp(5rem, 9vw, 9rem) 0; }
.section-heading { max-width: 58rem; margin-bottom: clamp(3rem, 6vw, 5.5rem); }
.section-heading h2 { margin-top: .65rem; }
.section-heading > p:last-child { max-width: 46rem; }
.offwhite { background: var(--off); }
.navy { background: var(--navy); color: var(--white); }
.navy h2, .navy h3, .navy .large, .navy .section-heading > p { color: var(--white); }

/* Hub opening: publication-style split composition. */
.hero { padding: 0; background: var(--white); color: var(--white); }
.hero > .hero-grid {
  width: 100%;
  max-width: none;
  min-height: calc(100svh - 85px);
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(25rem, .92fr);
  gap: 0;
}
.hero-grid > div:first-child {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: clamp(4rem, 8vw, 8rem) max(var(--gutter), calc((100vw - var(--wrap)) / 2));
  background: var(--navy);
}
.hero h1 { max-width: 10ch; margin: .8rem 0 0; color: var(--white); }
.hero .lede { max-width: 39rem; margin-top: 1.6rem; color: var(--white); }
.hero .actions { margin-top: 2rem; }
.hero .report-cover {
  width: 100%;
  max-width: none;
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin: 0;
  padding: clamp(3rem, 6vw, 6rem) var(--gutter);
  background: var(--off);
  transform: none;
}
.report-cover img { width: min(100%, 29rem); border: 1px solid var(--line); box-shadow: 0 1.5rem 3.5rem rgba(0, 24, 40, .14); }
.report-cover figcaption { color: var(--ink); letter-spacing: .11em; }
.report-hero .report-cover figcaption { color: var(--white); }
.navy .period-label,
.report-hero .period-label { color: var(--steel); }

/* Interior route openings: large navy editorial title field, no ornament. */
.page-hero { padding: clamp(5rem, 9vw, 8.5rem) 0; background: var(--navy); }
.page-hero h1 { max-width: 14ch; margin-top: .75rem; color: var(--white); }
.page-hero .lede { max-width: 51rem; color: var(--white); }
/* The Stories title should read as an editorial statement, not a tall word stack. */
.stories-hero { padding-block: clamp(4.75rem, 7vw, 7rem); }
.stories-hero .narrow { max-width: 74rem; }
.stories-hero h1 { max-width: 20ch; }
.stories-hero .lede { max-width: 50rem; }
.page-hero .breadcrumb, .page-hero .breadcrumb a { color: var(--steel); }
.report-hero { background: var(--navy); }
.report-hero .hero-grid > div:first-child {
  padding-inline: clamp(var(--gutter), calc((100vw - var(--wrap)) / 2), 6.25rem);
}

/* Homepage human proof: full-bleed documentary evidence beside copy. */
.quote-feature { background: var(--navy); }
.quote-grid { min-height: 650px; }
.quote-grid > * { min-width: 0; }
.quote-media { position: relative; min-height: 650px; background: var(--navy); }
.quote-media img {
  /* Dr. Womack is the human focal point; hold her face in-frame at every aspect ratio. */
  object-position: 14% 50%;
}
.quote-copy { padding: clamp(3rem, 7vw, 6rem); }
.quote-copy h2 { color: var(--white); }
blockquote { border-left-color: var(--red); }

/* Evidence is carried by ruled fields rather than floating rounded cards. */
.proof-grid { gap: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.proof-grid > div {
  min-width: 0;
  padding: clamp(1.5rem, 3vw, 2.75rem);
  background: transparent;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.proof-grid dt { color: var(--navy); font-size: clamp(2.7rem, 5vw, 5.1rem); letter-spacing: -.05em; }
.proof-grid dd { color: var(--ink); }
.navy .proof-grid { border-color: rgba(143, 168, 188, .5); }
.navy .proof-grid > div { border-color: rgba(143, 168, 188, .5); }
.navy .proof-grid dt, .navy .proof-grid dd { color: var(--white); }

/* Story cards: documentary image + clean editorial copy, no shadows or rounded boxes. */
.card-grid { gap: clamp(1.2rem, 2.4vw, 2rem); }
.story-card { background: var(--white); border: 1px solid var(--line); }
.card-media { background: var(--navy); }
.card-media img { aspect-ratio: 4 / 3; }
.card-media figcaption {
  padding: .6rem .9rem;
  background: var(--navy);
  color: var(--white);
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.card-copy { padding: clamp(1.35rem, 2.4vw, 2rem); }
.card-copy h3 { margin-top: .45rem; color: var(--navy); font-size: clamp(1.45rem, 2vw, 2rem); }
.card-copy p { color: var(--ink); }
.card-copy a { color: var(--navy); text-underline-offset: .28em; }
.card-copy a::after, .article-grid a::after, .pathway-grid a::after { color: var(--red); }

/* Source-backed abstract placeholders stay geometric and directional, never circular. */
.media-abstract { background: var(--navy); }
.media-abstract i { background: var(--ci-amber); }
.media-abstract i::after { border-left-color: var(--ci-amber); }

/* Story library movement navigation and headings. */
.movement-index,
.report-nav {
  background: var(--white);
  border-top: 0;
  border-bottom: 1px solid var(--line);
  box-shadow: none;
}
.movement-index .wrap, .report-nav .wrap { align-items: stretch; }
.movement-index a,
.report-nav a {
  min-height: 66px;
  display: inline-flex;
  align-items: center;
  padding: .8rem 1rem;
  color: var(--ink);
  border-right: 1px solid var(--line);
  font-size: .72rem;
  line-height: 1.25;
  text-decoration: none;
}
.movement-index a:first-child, .report-nav a:first-child { border-left: 1px solid var(--line); }
.movement-index a span { margin-right: .55rem; color: var(--red); font-weight: 700; }
.movement-index a:hover, .report-nav a:hover { background: var(--navy); color: var(--white); }
.movement-index a:hover:not([aria-current="location"]) span { color: var(--white); }
.story-movement, .report-movement { border-top: 1px solid var(--line); }
.movement-heading { align-items: flex-start; gap: 1.25rem; margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.movement-heading h2 { margin-top: 0; }

/* Model and participation surfaces: semantic color is reserved for meaning. */
.pillar-grid { gap: 0; border: 1px solid rgba(143, 168, 188, .5); }
.pillar-grid article {
  padding: clamp(1.7rem, 3vw, 3rem);
  background: transparent;
  border: 0;
  border-right: 1px solid rgba(143, 168, 188, .5);
}
.pillar-grid article:last-child { border-right: 0; }
.pillar-grid article:first-child { border-top: 5px solid var(--ci-amber); }
.pillar-grid article:last-child { border-top: 5px solid var(--ei-slate); }
.pillar-grid span { color: var(--ink); }
.navy .pillar-grid span { color: var(--steel); }
.light-pillars { border-color: var(--line); }
.light-pillars article { border-right-color: var(--line); }
.light-pillars h3 { color: var(--navy); }
.pathway-grid { gap: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.pathway-grid article {
  min-width: 0;
  padding: clamp(1.5rem, 3vw, 2.6rem);
  background: transparent;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.pathway-grid h3 { color: var(--navy); }
.dark-pathways { border-color: rgba(143, 168, 188, .5); }
.dark-pathways article { border-color: rgba(143, 168, 188, .5); }
.dark-pathways h3, .dark-pathways p, .dark-pathways a { color: var(--white); }

/* Article links and CTA fields. */
.article-grid { gap: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.article-grid article { padding: clamp(1.5rem, 3vw, 2.6rem); background: var(--white); border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.article-grid h3 { color: var(--navy); }
.button { border-radius: 0; }
.button.red { background: var(--red); color: var(--white); }
.button.navy { background: var(--navy); color: var(--white); }
.button.white { background: var(--white); color: var(--navy); }
.button:hover { background: var(--navy); color: var(--white); }
.navy .button.white:hover { background: var(--red); color: var(--white); }
.report-end { background: var(--navy); }
.cta-panel { background: transparent; border-top: 1px solid rgba(143, 168, 188, .5); border-bottom: 1px solid rgba(143, 168, 188, .5); }
.cta-panel h2, .cta-panel p { color: var(--white); }

/* Individual story pages: photograph first, restrained frame, no card shadow. */
.story-hero { padding: clamp(4.5rem, 8vw, 7rem) 0; background: var(--off); }
.story-hero-grid { align-items: center; }
.story-hero h1 { max-width: 13ch; color: var(--navy); }
.story-hero .lede { color: var(--ink); }
.story-hero-media { background: var(--navy); border: 0; box-shadow: none; }
.story-hero-media figcaption { background: var(--navy); color: var(--white); letter-spacing: .055em; text-transform: uppercase; }
.story-hero-media.media-abstract { background: var(--navy); }
/* Related stories use full-width evidence images; narrow portrait strips obscured people and context. */
.story-card.compact {
  grid-template-columns: 1fr;
  align-content: start;
}
.story-card.compact .card-media img {
  width: 100%;
  height: auto !important;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.story-card.compact .card-copy { min-height: 15rem; }
.narrative-grid { gap: clamp(2rem, 5vw, 5rem); }
.narrative-grid h2, .split-intro h2 { max-width: 15ch; }
.dark-lede { color: var(--white); }
.report-story-links { gap: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.report-story-links > * { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }

/* Who is PIN: human context and documentary team portrait. */
.who-pin-intro { align-items: start; }
.who-pin-heading h2 { margin-bottom: 0; }
.who-pin-definition { max-width: 34rem; }
.who-pin-copy > p { max-width: 44rem; }
.who-pin-copy > p + p { margin-top: 1.25rem; }
.who-pin-record-eyebrow { margin: 0; }
.who-pin-record-heading {
  max-width: 32rem;
  margin: 1rem 0 0;
  font-size: clamp(1.85rem, 3vw, 2.75rem);
  line-height: 1.08;
}
.who-pin-record {
  max-width: 38rem;
  margin-top: 2rem;
}
.who-pin-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 2rem;
  margin-top: 1.75rem;
}
.who-pin-actions .text-link:first-child { max-width: 34rem; }
.who-pin-team {
  width: min(100%, 42rem);
  margin: clamp(2.5rem, 5vw, 4rem) 0 0 auto;
}
.who-pin-team img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 2000 / 1333;
  object-fit: cover;
}
.who-pin-team figcaption {
  margin-top: .7rem;
  color: var(--muted);
  font-size: .82rem;
}

@media (min-width: 1021px) {
  .who-pin-definition { margin-top: 2.5rem; }
}

@media (max-width: 1020px) {
  .who-pin-intro { grid-template-columns: 1fr; gap: 0; }
  .who-pin-definition { margin-top: 1.5rem; }
  .who-pin-copy { margin-top: 2.5rem; }
}

@media (max-width: 760px) {
  .who-pin-team {
    width: 100%;
    margin: 2.5rem 0 0;
  }
}

/* Timeline: direct labels and quiet rules instead of dots. */
.timeline { border-left: 2px solid var(--steel); }
.timeline li { padding-left: 1.5rem; border-top: 1px solid var(--line); }
.timeline time { color: var(--red); }

/* Footer remains a quiet navy utility area. */
.site-footer { background: var(--navy); }
.footer-grid { border-bottom-color: rgba(143, 168, 188, .4); }
.footer-grid h2, .footer-grid a, .footer-grid p, .footer-bottom { color: var(--white); }
.footer-bottom { color: var(--steel); }

@media (max-width: 1020px) {
  .header-inner { min-height: 78px; }
  .movement-index, .report-nav { top: 78px; }
  .site-nav { gap: 0; }
  .site-nav a { border-bottom: 1px solid var(--line); }
  .hero > .hero-grid { min-height: 0; grid-template-columns: 1fr; }
  .hero-grid > div:first-child { min-height: 34rem; }
  .hero .report-cover { min-height: 38rem; }
  .movement-index .wrap, .report-nav .wrap { overflow-x: auto; }
  .movement-index a, .report-nav a { flex: 0 0 min(17rem, 72vw); }
}

@media (max-width: 760px) {
  :root { --gutter: 1rem; }
  .header-inner { min-height: 74px; }
  .brand img { width: 116px; }
  .report-utility { padding-inline: .65rem; font-size: .62rem; }
  .movement-index, .report-nav { top: 74px; }
  .hero-grid > div:first-child { min-height: 0; padding-block: 4.5rem; }
  .hero h1 { font-size: clamp(3rem, 14vw, 4.7rem); }
  .hero .report-cover { min-height: 0; padding-block: 3.5rem; }
  .quote-grid { grid-template-columns: 1fr; }
  .quote-media { min-height: 390px; }
  .page-hero { padding-block: 4.5rem; }
  .page-hero h1 { font-size: clamp(2.8rem, 13vw, 4.2rem); }
  .section { padding-block: 5rem; }
  .proof-grid, .card-grid, .pathway-grid, .article-grid, .pillar-grid, .report-story-links { grid-template-columns: 1fr; }
  .proof-grid > div, .pathway-grid article, .article-grid article, .pillar-grid article { border-right: 0; }
  .pillar-grid article { border-bottom: 1px solid rgba(143, 168, 188, .5); }
  .pillar-grid article:last-child { border-bottom: 0; }
  .story-hero-media { order: -1; }
  .story-card.compact { grid-template-columns: 1fr; }
  .story-card.compact .card-media img { aspect-ratio: 4 / 3; }
  .story-card.compact .card-copy { min-height: 0; }
  .movement-heading { gap: .75rem; }
}

@media (max-width: 420px) {
  .header-inner { gap: .45rem; }
  .brand img { width: 105px; }
  .report-utility { min-height: 44px; padding-inline: .5rem; font-size: .58rem; letter-spacing: .025em; }
  .hero h1 { font-size: clamp(2.75rem, 14vw, 3.7rem); }
  .quote-media { min-height: 320px; }
  .card-copy { padding: 1.25rem; }
}

/* 2026-11-01 creative-director refinement: straight report, clearer hierarchy, stronger interaction cues. */
.report-hero .report-cover {
  width: min(100%, 28rem);
  max-width: 28rem;
  justify-self: end;
  margin: 0;
  transform: none !important;
}
.report-hero .report-cover img {
  width: 100%;
  margin: 0;
  transform: none !important;
  box-shadow: 0 1.5rem 3.5rem rgba(0, 24, 40, .24);
}
.report-hero .report-cover figcaption {
  margin-top: .85rem;
  text-align: center;
}

h1, h2, h3 { text-wrap: balance; }
p, li, dd { text-wrap: pretty; }
.section-heading > p,
.narrative-grid > div:last-child,
.movement-heading p { max-width: 48rem; }

.story-card,
.article-grid article,
.pathway-grid article,
.report-story-links a {
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, transform 160ms ease;
}
.story-card:hover { border-color: rgba(0, 24, 40, .48); }
.story-card:focus-within { border-color: var(--red); outline: 3px solid var(--red); outline-offset: 3px; }
.card-copy a,
.article-grid a,
.pathway-grid a,
.report-story-links a { text-underline-offset: .3em; }
.card-copy a:hover,
.article-grid a:hover,
.pathway-grid a:hover { text-decoration-thickness: .14em; }

/* Keep generated arrow glyphs clear of the label underline. */
.text-link,
.card-copy a,
.article-grid a,
.pathway-grid a { text-decoration: none; }
.arrow-link-label {
  text-decoration-line: underline;
  text-decoration-thickness: .1em;
  text-underline-offset: .2em;
}
.card-copy a > .arrow-link-label { text-underline-offset: .28em; }
.article-grid a > .arrow-link-label,
.pathway-grid a > .arrow-link-label { text-underline-offset: .3em; }
.text-link:hover > .arrow-link-label,
.card-copy a:hover > .arrow-link-label,
.article-grid a:hover > .arrow-link-label,
.pathway-grid a:hover > .arrow-link-label { text-decoration-color: var(--red); }
.card-copy a:hover > .arrow-link-label,
.article-grid a:hover > .arrow-link-label,
.pathway-grid a:hover > .arrow-link-label { text-decoration-thickness: .14em; }

.report-story-links a:hover { background: var(--navy); color: var(--white); }
.report-story-links a:hover strong,
.report-story-links a:hover span { color: var(--white); }

/* Give the final single-story movement a deliberate editorial close instead of an orphaned card. */
#investing-next .card-grid {
  grid-template-columns: minmax(0, 1fr);
}
#investing-next .story-card {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(18rem, .72fr) minmax(0, 1.28fr);
}
#investing-next .card-media,
#investing-next .media-abstract { min-height: 19rem; }
#investing-next .card-copy {
  justify-content: center;
  padding: clamp(2rem, 5vw, 4rem);
}
#investing-next .card-copy p:not(.meta) { max-width: 42rem; }

/* Keep the secondary report navigation readable and clearly subordinate to the primary header. */
.report-nav a,
.movement-index a { font-weight: 600; }
.report-nav a:focus-visible,
.movement-index a:focus-visible { position: relative; z-index: 2; }

@media (max-width: 760px) {
  .report-hero .report-cover {
    width: min(82vw, 25rem);
    max-width: 25rem;
    justify-self: center;
    margin-inline: auto;
  }
  #investing-next .story-card { grid-template-columns: 1fr; }
  #investing-next .card-media,
  #investing-next .media-abstract { min-height: 13rem; }
  #investing-next .card-copy { padding: 1.5rem; }
}

/* Story library: explicit orientation, balanced groups, and a visible current-section state. */
.movement-index-guide { display: none; }
.movement-index .wrap {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.movement-index a {
  min-width: 0;
  min-height: 72px;
  padding: .85rem .75rem;
  white-space: normal;
  font-size: .68rem;
  line-height: 1.3;
  border-bottom: 3px solid transparent;
}
.movement-index a[aria-current="location"] {
  background: var(--off);
  color: var(--navy);
  border-bottom-color: var(--red);
}
.movement-count {
  margin: .2rem 0 .7rem !important;
  color: var(--red);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}
#relationships-build-capacity .card-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1020px) {
  .movement-index .wrap { display: flex; }
  .movement-index a {
    flex: 0 0 min(17rem, 72vw);
    min-height: 64px;
    font-size: .72rem;
  }
}

@media (max-width: 760px) {
  .movement-index-guide {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .65rem 1rem;
    color: var(--navy);
    background: var(--white);
    border-bottom: 1px solid var(--line);
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .055em;
    text-transform: uppercase;
  }
  .movement-index-swipe { color: var(--red); white-space: nowrap; }
  .movement-index a { flex-basis: min(16rem, 78vw); }
  .story-movement { padding-block: 4rem; scroll-margin-top: 12rem; }
  #relationships-build-capacity .card-grid { grid-template-columns: 1fr; }
}

/* Headline proportions: preserve impact without forcing tall, narrow word stacks. */
h2 { max-width: none; }
@media (min-width: 1021px) {
  h2 { font-size: clamp(2.7rem, 4vw, 4.25rem); }
  .section-heading h2 { max-width: 22ch; }
  .quote-copy h2 { font-size: clamp(2.6rem, 3.6vw, 3.75rem); }
  .quote-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
  .story-hero-grid {
    grid-template-columns: minmax(0, 1.3fr) minmax(320px, .7fr);
    gap: clamp(2.5rem, 4.5vw, 4.5rem);
  }
  .story-hero h1 {
    max-width: 20ch;
    font-size: clamp(3.4rem, 4.7vw, 4.25rem);
  }
  .split-intro {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(3rem, 6vw, 6rem);
  }
  .narrative-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
    gap: clamp(3rem, 6vw, 6rem);
  }
  .narrative-grid h2,
  .split-intro h2 {
    max-width: 18ch;
    font-size: clamp(2.8rem, 4vw, 4.25rem);
  }
  .movement-heading h2 {
    max-width: 24ch;
    font-size: clamp(2.7rem, 4vw, 4.25rem);
  }
}

@media (max-width: 760px) {
  h2 { font-size: 2.25rem; }
  .section-heading h2,
  .narrative-grid h2,
  .split-intro h2 { max-width: none; }
  .quote-copy h2 { font-size: 2rem; }
  .stories-hero h1 {
    max-width: none;
    font-size: clamp(2.65rem, 11.5vw, 3.3rem);
  }
  .story-hero h1 {
    max-width: none;
    font-size: clamp(2.25rem, 9.5vw, 2.75rem);
  }
  .movement-heading h2 { font-size: 2.25rem; }
}

/* The 2026 report owns movement synthesis; the Stories route owns story cards. */
#connected-impact .report-movement {
  padding: clamp(1.5rem, 3vw, 2.5rem) 0;
}
#connected-impact .movement-heading {
  margin-bottom: 0;
}
#connected-impact .center-action {
  margin-top: clamp(2rem, 4vw, 3.5rem);
}

/* Audience-facing report downloads use a clear underlined label without a generated arrow. */
.download-link-no-arrow::after {
  content: none;
  display: none;
}

/* 2026 Impact leadership introduction: balance narrative weight across the grid. */
#introduction .impact-intro-heading .large {
  max-width: 38rem;
  margin-top: clamp(1.75rem, 3vw, 2.5rem);
}
@media (min-width: 1021px) {
  #introduction .narrative-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    align-items: start;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
