/* Load last. Keep existing typography, copy and liquid-glass materials. */
.hero {
  align-items: start;
  padding-block: 56px 64px;
  column-gap: clamp(40px, 5vw, 72px);
}
.hero-copy { padding-top: 12px; }
.hero .hero-kicker { margin-bottom: 24px; }
.hero h1 { margin-bottom: 28px; }
.hero-title-detail { margin-top: 24px; }
.hero .hero-lead { margin: 0; padding: 22px 26px; }
.hero .hero-actions { margin: 28px 0 0; }
.hero .hero-program-link { margin-top: 16px; }
.hero-portrait { max-width: 410px; }

/* Three distinct topics: equal column padding and a common text baseline. */
.intro-strip { padding-block: 32px; gap: 32px; }
.intro-strip > p + p { padding-left: 32px; }
.intro-strip > p > span { margin-bottom: 12px; }

/* Keep spacing inside each group smaller than spacing between groups. */
.recognition-grid { gap: 26px; }
.bridge { padding-top: 56px; }
.method-steps-title { margin-top: 36px; }
.process-example { margin-top: 56px; }
.case-grid { gap: 32px; }
.section-cta { margin-top: 48px; padding-top: 36px; }
.credentials { margin-block: 32px; }
.credentials li { padding-block: 20px; }
.topics-heading { padding-top: 64px; }
.topics-heading + .topics { margin-top: 28px; }

/* Adjacent light sections used to add both 100px paddings together. */
#about + #program > .section { padding-top: 0; }
#program + #questions { padding-top: 0; }

@media (min-width: 621px) and (max-width: 900px) {
  .hero { padding-top: 44px; column-gap: 28px; }
  .hero-copy { padding-top: 0; }
  .hero .hero-lead { padding: 20px; }
  .intro-strip { gap: 22px; }
  .intro-strip > p + p { padding-left: 22px; }
}

@media (max-width: 620px) {
  .hero { padding-block: 28px 36px; gap: 32px; }
  .hero-copy { padding-top: 0; }
  .hero .hero-kicker { margin-bottom: 16px; }
  .hero h1 { margin-bottom: 22px; }
  .hero-title-detail { margin-top: 16px; }
  .hero .hero-lead { padding: 16px 18px; }
  .hero .hero-actions { margin: 22px 0 0; }
  .hero .hero-program-link { margin-top: 14px; }
  .hero-portrait { max-width: none; }
  .intro-strip { padding-block: 0; gap: 0; }
  .intro-strip > p,
  .intro-strip > p + p { padding: 24px 0; }
  .intro-strip > p > span { margin-bottom: 8px; }
  .recognition-grid,
  .case-grid { gap: 22px; }
  .section-heading { margin-bottom: 32px; }
  .bridge { padding-top: 36px; }
  .method-layout,
  .about-layout,
  .program-layout,
  .start-layout { gap: 36px; }
  .method-steps-title { margin-top: 28px; }
  .process-example { margin-top: 36px; }
  .section-cta { margin-top: 36px; padding-top: 30px; gap: 24px; }
  .credentials { margin-block: 28px; }
  .credentials li { padding-block: 18px; }
  .topics-heading { padding-top: 44px; }
  .topics-heading + .topics { margin-top: 24px; }
}
