.doctor-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: clamp(34px, 4vw, 56px);
  align-items: start;
  padding-top: 100px;
}
.doctor-portrait {
  position: sticky;
  top: 112px;
  width: 100%;
  max-width: 320px;
  justify-self: end;
  overflow: hidden;
  border-radius: 2px;
  background: #2b2931;
  box-shadow: 0 30px 70px rgba(10, 0, 3, .34);
}
.doctor-portrait img {
  display: block;
  width: 100%;
  height: auto;
}
.doctor-story .eyebrow { margin-bottom: 14px; }
.doctor-story h2 { margin-bottom: 30px; }
.doctor-story .copy p { margin: 0 0 20px; }
.story-turn { color: var(--gold); font: italic 2.35rem/1.1 "Instrument Serif", serif; }
.doctor-story blockquote {
  margin: 42px 0 0;
  padding: 30px 0 0;
  border-top: 1px solid var(--line);
  color: var(--ivory);
  font: italic clamp(1.7rem, 3vw, 2.45rem)/1.18 "Instrument Serif", serif;
}
.doctor-story cite {
  display: block;
  margin-top: 18px;
  color: var(--gold);
  font: normal 600 .72rem/1.4 "DM Sans", sans-serif;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.team-section { padding-top: 100px; }
.team-intro { max-width: 760px; margin-bottom: 58px; }
.team-intro h2 { margin: 0 0 22px; font: clamp(2.8rem, 5vw, 4.8rem)/.98 "Instrument Serif", serif; }
.team-intro > p:last-child { margin: 0; color: var(--muted); font-size: 1.08rem; }
.team-grid { display: grid; gap: 72px; }
.team-member { display: grid; grid-template-columns: minmax(260px, 360px) minmax(0, 1fr); gap: clamp(34px, 6vw, 76px); align-items: center; }
.team-member-reverse { grid-template-columns: minmax(0, 1fr) minmax(260px, 360px); }
.team-member-reverse .team-photo { order: 2; }
.team-member-reverse .team-copy { order: 1; }
.team-photo { overflow: hidden; border-radius: 2px; background: #2b2931; box-shadow: 0 26px 62px rgba(10, 0, 3, .3); }
.team-photo img { display: block; width: 100%; aspect-ratio: 2 / 2.65; object-fit: cover; object-position: center 22%; }
.team-copy h3 { margin: 0 0 22px; font: clamp(2.6rem, 4.5vw, 4rem)/1 "Instrument Serif", serif; }
.team-copy > p:not(.eyebrow) { margin: 0 0 18px; color: var(--muted); font-size: 1.02rem; }
.pronunciation { display: block; margin-top: 9px; color: var(--gold); font: 600 .72rem/1.4 "DM Sans", sans-serif; letter-spacing: .12em; text-transform: uppercase; }
@media (max-width: 720px) {
  .doctor-section { grid-template-columns: 1fr; gap: 42px; }
  .doctor-portrait { position: relative; top: auto; width: min(100%, 420px); max-width: 420px; justify-self: start; }
  .team-member, .team-member-reverse { grid-template-columns: 1fr; gap: 28px; }
  .team-photo { width: min(100%, 420px); }
  .team-member-reverse .team-photo, .team-member-reverse .team-copy { order: initial; }
  .team-intro { margin-bottom: 42px; }
}
@media (max-width: 600px) {
  .doctor-story h2 { font-size: 3rem; }
  .doctor-story blockquote { font-size: 1.8rem; }
}
