/* One source heading, editorial desktop columns, heading/media/copy on narrow portraits. */
.clinic-hero { grid-template-areas:"heading media" "copy media"; row-gap:0; }
.clinic-hero-heading { grid-area:heading; align-self:end; padding:clamp(3.75rem,6vw,6.5rem) clamp(2rem,5vw,5.5rem) 0; }
.clinic-hero-copy { grid-area:copy; align-self:start; padding:0 clamp(2rem,5vw,5.5rem) clamp(3.75rem,6vw,6.5rem); }
.clinic-hero-media { grid-area:media; height:100%; }
.doctor-profile { grid-template-areas:"media heading" "media copy"; row-gap:0; }
.profile-heading { grid-area:heading; align-self:end; min-width:0; position:relative; z-index:2; }
.profile-heading h2 { margin:0 0 1rem; font:400 clamp(2rem,2.6vw,3rem)/1.14 var(--serif); letter-spacing:-.03em; }
.profile-media { grid-area:media; height:100%; }
.profile-copy { grid-area:copy; align-self:start; }
.presentation-row { grid-template-areas:"media heading" "media copy"; row-gap:0; }
.presentation-row:nth-child(even) { grid-template-areas:"heading media" "copy media"; }
.presentation-heading { grid-area:heading; align-self:end; min-width:0; }
.presentation-heading h3 { margin:0 0 18px; font:500 clamp(25px,2.5vw,36px)/1.25 var(--serif); letter-spacing:-.02em; }
.presentation-row .presentation-media, .presentation-row:nth-child(even) .presentation-media { grid-area:media; }
.presentation-row .presentation-copy, .presentation-row:nth-child(even) .presentation-copy { grid-area:copy; align-self:start; }
video.clinic-video { display:block; width:100%; max-width:100%; background:var(--cream); object-fit:cover; }
.clinic-hero-media video, .profile-media video { position:absolute; inset:0; height:100%; }
.presentation-media video { aspect-ratio:4/3; max-height:380px; }
.clinic-gallery video { max-height:600px; }
.clinic-hero-media:has(video) figcaption, .profile-media:has(video) figcaption, .presentation-media:has(video) figcaption { bottom:64px; pointer-events:none; }
@media(max-width:760px), (max-width:1050px) and (orientation:portrait) {
  .clinic-hero { grid-template-columns:minmax(0,1fr); grid-template-areas:"heading" "media" "copy"; }
  .clinic-hero-heading { padding:2.4rem 1.25rem 1.8rem; }
  .clinic-hero-heading h1 { max-width:18ch; }
  .clinic-hero-copy { padding:1.5rem 1.25rem 2.5rem; }
  .clinic-hero-media { min-height:0; height:clamp(250px,62vw,480px); border-radius:24px; margin-inline:16px; }
  .clinic-hero-copy .hero-lead { margin-top:0; }
  .doctor-profile { grid-template-columns:minmax(0,1fr); grid-template-areas:"heading" "media" "copy"; gap:24px; padding:clamp(20px,4vw,36px); margin-top:clamp(24px,5vw,48px); }
  .profile-heading h2 { margin-bottom:0; }
  .profile-media { min-height:0; height:clamp(240px,60vw,440px); }
  .profile-copy { max-width:none; padding:0; }
  .profile-flower { display:none; }
  .presentation-row, .presentation-row:nth-child(even) { grid-template-columns:minmax(0,1fr); grid-template-areas:"heading" "media" "copy"; gap:20px; }
  .presentation-heading h3 { margin:0; }
  .presentation-media img, .presentation-media video { aspect-ratio:16/9; max-height:360px; }
}
