.about-page { padding-top: 32px; }
.about-intro { display: grid; grid-template-columns: minmax(0, 1fr) 200px; gap: 48px; align-items: start; }
.about-intro h1 { max-width: 780px; }
.about-intro p:not(.eyebrow), .about-story p, .about-contact p { font-size: 17px; }
.about-intro p:not(.eyebrow) { max-width: 760px; margin: 18px 0; }
.portrait { margin: 0; }
.portrait img { display: block; width: 100%; height: auto; border-radius: 5px; }
.portrait figcaption { margin-top: 9px; font-size: 12px; }
.about-story { max-width: 800px; padding-top: 8px; }
.story-section { padding: 22px 0; border-top: 1px solid #a7a6a555; }
.about-page h2 { margin: 0 0 12px; color: var(--off-black); font-size: 24px; line-height: 1.3; font-weight: 600; }
.story-section p { margin: 0 0 14px; }
.story-section p:last-child { margin-bottom: 0; }
.about-contact { border-top: 1px solid #a7a6a555; padding: 26px 0 32px; }
.about-contact p { margin: 0 0 18px; }
@media (max-width: 640px) {
  .about-page { padding-top: 24px; }
  .about-intro { grid-template-columns: 1fr; gap: 20px; }
  .portrait { width: 150px; margin-bottom: 20px; }
  .about-intro p:not(.eyebrow), .about-story p, .about-contact p { font-size: 16px; }
  .about-page h2 { font-size: 22px; }
}
