/* User-supplied photographs: preserve faces at every viewport size. */
.hero-media .frame img { object-position: 50% 34%; }
.step .ph img.photo-consultation { object-position: 50% 46%; }
.step .ph img.photo-treatment { object-position: 50% 56%; }
.tc-img img.photo-first-visit { object-position: 50% 32%; }
@media (min-width:681px) and (max-width:980px) {
  .hero-media { width:100%; max-width:560px; margin-inline:auto; }
  .hero-media .frame img { height:auto; aspect-ratio:1 / 1; }
}
@media (max-width:680px) {
  .hero-media .frame img { height:auto; aspect-ratio:4 / 5; object-position:50% 32%; }
  .step .ph:has(.photo-consultation), .step .ph:has(.photo-treatment) { height:auto; aspect-ratio:3 / 2; }
  .tc-img img.photo-first-visit { height:auto; aspect-ratio:4 / 5; object-position:50% 32%; }
}
