/* Current design: existing portrait, existing studio photo, no new photo slots.
   Kept separate so the archived A/B layouts retain their shared base styles. */
.intro { padding-block: clamp(2.5rem, 5vw, 5rem) var(--band); }
.intro__grid { display: grid; gap: var(--s-7); align-items: center; }
.intro h1 { font-size: clamp(2.6rem, 1.65rem + 3vw, 4.25rem); max-width: 19ch; margin-bottom: var(--s-6); }
.intro .lede { font-size: clamp(1.125rem, 1rem + .4vw, 1.375rem); max-width: 42ch; }
.intro .hero__note { max-width: 49ch; margin-top: var(--s-4); }
.intro__portrait { width: min(100%, 22rem); justify-self: center; }
.intro__portrait img { width: 100%; }
.intro__portrait figcaption { padding-top: var(--s-2); }
@media (min-width: 62rem) {
  .intro__grid { grid-template-columns: 1.4fr 1fr; column-gap: clamp(3rem, 7vw, 7rem); }
  .intro__portrait { justify-self: end; }
}
.contact-hero--compact { padding-block: var(--s-7); }
.contact-hero--compact h1 { margin-bottom: var(--s-5); }
.contact-hero--compact .hero__lower { display: block; }
.contact-hero--compact .lede { max-width: 48ch; }
.contact-hero--compact + .band { padding-top: var(--s-7); }
.studio-photo figcaption { max-width: 48ch; }
