/* Restore the original photographic homepage without rolling back current content. */
.home-visual-hero { min-height: 760px; }
.home-visual-hero > .container { min-height: 760px; padding-top: 72px; padding-bottom: 160px; }
.home-visual-hero .hero-content { width: min(660px, 55%); }
.home-visual-hero h1 { font-size: clamp(42px, 4.4vw, 65px); line-height: 1.2; text-wrap: balance; }
.home-visual-hero h1 span { font-size: .56em; line-height: 1.3; }
.home-visual-hero .hero-copy { max-width: 560px; font-size: clamp(16px, 1.2vw, 18px); line-height: 1.85; color: rgba(255,255,255,.9); }
.home-visual-hero .hero-media img { object-position: 65% center; }
.home-visual-hero .hero-media::after { background: linear-gradient(90deg, rgba(22,20,16,.9) 0%, rgba(22,20,16,.76) 35%, rgba(22,20,16,.28) 57%, rgba(22,20,16,.02) 76%), linear-gradient(0deg, rgba(22,20,16,.65), transparent 38%); }
.home-visual-hero .hero-stat span { color: rgba(255,255,255,.82); }
.home-doctor .doctor-photo img { height: auto; object-position: center 38%; }
.home-doctor { scroll-margin-top: 90px; }
.home-doctor .credential-list li { grid-template-columns: 100px 1fr; }
.home-visual-page :is(a, button):focus-visible { outline: 2px solid #ad8d57; outline-offset: 4px; }
@media (min-width: 901px) and (max-width: 1100px) {
  .home-visual-hero .hero-content { width: 57%; }
  .home-visual-hero h1 { font-size: 43px; }
  .home-visual-hero .hero-copy { font-size: 16px; }
  .home-visual-hero .hero-media img { object-position: 70% center; }
}
@media (max-width: 900px) {
  .home-visual-hero { min-height: 0; background: #25231d; }
  .home-visual-hero .hero-media { position: relative; height: clamp(290px, 66vw, 460px); }
  .home-visual-hero .hero-media img { object-position: 82% 38%; }
  .home-visual-hero .hero-media::after { background: linear-gradient(0deg, rgba(37,35,29,.52), transparent 27%); }
  .home-visual-hero > .container { min-height: 0; padding-top: 38px; padding-bottom: 46px; align-items: flex-start; }
  .home-visual-hero .hero-content { width: 100%; }
  .home-visual-hero .hero-kicker { margin-bottom: 20px; font-size: 10px; letter-spacing: .13em; }
  .home-visual-hero h1 { font-size: clamp(36px, 7.6vw, 51px); line-height: 1.25; }
  .home-visual-hero h1 span { font-size: .6em; margin-top: 16px; }
  .home-visual-hero .hero-copy { max-width: 640px; font-size: 16px; line-height: 1.9; margin-top: 24px; }
  .home-visual-hero .button-row { margin-top: 26px; }
  .home-visual-hero .hero-foot { display: none; }
}
@media (max-width: 520px) {
  .home-doctor .credential-list li { grid-template-columns: 1fr; gap: 6px; }
}

.home-visual-hero .hero-media picture { display: block; width: 100%; height: 100%; }
