/* Photography; shared layout is owned by site.css. */
.photo-services .service-card { padding: 0; overflow: hidden; }
.service-photo-frame { aspect-ratio: 1.22; overflow: hidden; border-radius: 17px 17px 0 0; }
.service-photo { display: block; width: 100%; height: 100%; object-fit: cover; background: #eef7f7; }
.photo-services .service-copy { padding: 24px; }
.photo-services .service-copy h3 { margin-top: 0; }
.photo-services .service-card:first-child .service-photo { object-position: center 38%; }
.service-photo.dr-arvinda-service-photo { object-fit: contain; object-position: bottom center; padding: 14px 24px 0; background: linear-gradient(145deg, #edf9f8, #f2f5ff); }
.team-photo-frame { aspect-ratio: 4 / 3; overflow: hidden; border-radius: 17px 17px 0 0; padding: 18px 18px 0; background: linear-gradient(145deg,#e7f8f5,#e9edf9); }
.team-photo { display: block; width: 100%; height: 100%; object-fit: contain; object-position: bottom center; transition: transform .3s ease; }
.pharmacy-art.photo { overflow: hidden; }
.pharmacy-art.photo img, .facility-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.facility-photo { aspect-ratio: 1.08; border-radius: 28px; overflow: hidden; box-shadow: var(--shadow); }
.stats .counter { font-variant-numeric: tabular-nums; color: #68e5dd; }
.doctor-art .cross { opacity: .55; pointer-events: none; }
.hero-doctors { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; flex: 1; }
.hero-doctor-item { min-width: 0; display: flex; flex-direction: column; justify-content: flex-end; opacity: .7; transform: translateY(4px) scale(.975); transition: opacity .9s ease, transform .9s ease; }
.hero-doctor-item.is-active { opacity: 1; transform: translateY(0) scale(1); }
.hero-portrait { aspect-ratio: 3 / 4; overflow: hidden; }
.hero-doctor-item img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: bottom center; }
.doctor-name { display: block; margin-top: 8px; padding: 8px; color: var(--navy); background: rgba(255,255,255,.94); border-radius: 12px; text-align: center; line-height: 1.4; }
.doctor-name strong, .doctor-name small { display: block; }
.doctor-name strong { font-size: 14px; }
.doctor-name small { margin-top: 2px; color: #65708a; font-size: 11px; }

@media (max-width: 600px) {
    .doctor-art { min-height: 0; padding: 14px; border-radius: 28px; }
    .hero-doctors { gap: 8px; }
    .hero-doctor-item { transform: translateY(2px) scale(.985); }
    .hero-doctor-item.is-active { transform: none; }
    .doctor-name { padding: 7px 4px; }
    .doctor-name strong { font-size: 12px; }
    .doctor-name small { font-size: 10px; }
    .care-card { padding: 14px 16px; }
    .care-card b { font-size: 15px; }
    .care-card span { font-size: 12px; }

}
