.hero-stage .spatial-visual { justify-self: center; inline-size: min(100%, 23rem); }
.hero-stage .spatial-model { background: var(--media-surface); }

.focus, .featured, .initiative { padding-block: var(--section-space); }
.focus, .featured { border-block-start: 1px solid var(--line-strong); }
.focus-heading { max-inline-size: 48rem; margin: 0 auto 3rem; text-align: center; }
.focus h2, .featured h2, .initiative h2 { margin: 0 0 1.5rem; font-size: var(--type-section-heading); line-height: 1.12; letter-spacing: -.035em; text-wrap: balance; }
.focus-heading > p:last-child { max-inline-size: 52ch; margin: 0 auto; color: var(--ink-reading); font-size: 1.125rem; line-height: 1.65; }
.focus-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
.focus-item { padding-block-start: 1.5rem; border-block-start: 1px solid var(--line-strong); }
.focus-item h3 { margin: 0 0 .8rem; font-size: 1.4rem; font-weight: 650; letter-spacing: -.02em; line-height: 1.3; }
.focus-item > p:last-child { margin: 0; color: var(--ink-reading); line-height: 1.65; }

.featured-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: end; gap: 3rem; margin-block-end: 2.5rem; }
.featured h2 { margin-block-end: 0; }
.featured-copy > p { max-inline-size: 48ch; color: var(--ink-reading); font-size: 1.125rem; line-height: 1.65; }
.featured-visual { margin: 0; }
.featured-visual > img { display: block; inline-size: 100%; block-size: auto; border-radius: var(--radius-feature); background: var(--media-surface); }
.featured-visual figcaption { display: flex; justify-content: space-between; gap: 1rem 2rem; flex-wrap: wrap; padding-block-start: 1.1rem; color: var(--ink-muted); font-size: .875rem; line-height: 1.5; }
.featured-visual figcaption p { margin: 0; }
.featured-attribution { color: var(--ink); font-weight: 600; }

.initiative { padding: clamp(1.5rem, 5vw, 4rem); border-radius: var(--radius-feature); background: var(--surface); }
.initiative-heading { max-inline-size: 48rem; }
.initiative-heading > p { max-inline-size: 52ch; color: var(--ink-reading); font-size: 1.125rem; line-height: 1.65; }
.initiative .evaluation-steps { margin-block-start: 3rem; }

@media (max-width: 48rem) {
  .focus-list, .featured-heading { grid-template-columns: 1fr; gap: 1.75rem; }
  .focus-heading { margin-block-end: 2rem; text-align: start; }
  .focus-heading > p:last-child { margin-inline: 0; }
  .featured-visual figcaption { gap: .5rem; }
}

@media (max-width: 34rem) {
  .hero-break { display: none; }
  .initiative { padding: 1rem; }
  .initiative h2 { font-size: clamp(1.5rem, 7vw, 2rem); }
}
