/**
 * Responsive images — homepage + inner pages (WordPress / Elementor).
 * Ensures section images scale on all devices without horizontal overflow.
 */

/* Baseline: content images never exceed the viewport */
body.premium-plus-home img,
body.premium-plus-inner img,
body.inner-page img {
	max-width: 100%;
	height: auto;
}

/* Logos keep intrinsic proportions (header only — footer uses site.css clamp sizing) */
body.premium-plus-home .logo img,
body.premium-plus-inner .logo img {
	width: auto;
	max-width: 100%;
	height: auto;
}

/* Match sri-v5/index.html footer logo: width="120" + clamp(7.5rem, 10vw, 9rem) */
body.premium-plus-home .footer-signature__aside img,
body.premium-plus-inner .footer-signature__aside img {
	width: clamp(7.5rem, 10vw, 9rem);
	max-width: none;
	height: auto;
}

/* Hero / full-bleed (img is the media element) */
body.premium-plus-inner img.page-hero__media,
body.premium-plus-inner .about-hero__bg img,
body.premium-plus-home .hero__media,
body.premium-plus-home .hero-media {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

/* Cover-fill panels inside media containers */
body.premium-plus-home [class*="__media"] img,
body.premium-plus-inner [class*="__media"] img,
body.premium-plus-home [class*="__bg"] img,
body.premium-plus-inner [class*="__bg"] img,
body.premium-plus-home [class*="__image"] img,
body.premium-plus-inner [class*="__image"] img,
body.premium-plus-home [class*="__photo"] img,
body.premium-plus-inner [class*="__photo"] img,
body.premium-plus-home .facet-visual img,
body.premium-plus-home .showcase-card img,
body.premium-plus-home .how-image img,
body.premium-plus-home .experience-image img,
body.premium-plus-home .wall-tile__media img,
body.premium-plus-inner .about-partners__item img,
body.premium-plus-inner .gallery-item img,
body.premium-plus-inner .phase-card img,
body.premium-plus-inner .post-card img,
body.premium-plus-inner .article-hero {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

/* Homepage cover-fill (wp-compat parity + inner) */
body.premium-plus-home .motion-slide__media img,
body.premium-plus-home .campus-card__media img,
body.premium-plus-home .life-feature__media img,
body.premium-plus-home .testimonial-media img,
body.premium-plus-home .community-face__photo img,
body.premium-plus-home .academic-tile__media img,
body.premium-plus-home .academic-feature__media img,
body.premium-plus-home .social-card__media img,
body.premium-plus-home .campus-acc__media img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

/* Tablet */
@media (max-width: 991px) {
	body.premium-plus-inner .split-story__image {
		min-height: clamp(280px, 55vw, 480px);
	}

	body.premium-plus-inner .pp-open__media {
		max-height: min(56vh, 28rem);
		aspect-ratio: 16 / 10;
	}

	body.premium-plus-inner .about-gems__media {
		height: auto;
		max-height: min(70vh, 36rem);
		width: 100%;
		justify-self: stretch;
	}

	body.premium-plus-inner .ba-pathway__media {
		min-height: clamp(220px, 42vw, 320px);
	}

	body.premium-plus-inner .ba-facility-card__media {
		min-height: clamp(200px, 38vw, 280px);
	}

	body.premium-plus-inner .sr-reading__media,
	body.premium-plus-inner .fp-story__media,
	body.premium-plus-inner .pp-chapter__media {
		max-width: 100%;
		width: 100%;
	}
}

/* Mobile */
@media (max-width: 680px) {
	body.premium-plus-inner .split-story__image {
		min-height: clamp(240px, 62vw, 380px);
	}

	body.premium-plus-inner .feature-card__image {
		height: clamp(200px, 45vw, 260px);
	}

	body.premium-plus-inner .person-card__image {
		aspect-ratio: 4 / 5;
		height: auto;
	}

	body.premium-plus-inner .gallery-item,
	body.premium-plus-inner .gallery-item--wide,
	body.premium-plus-inner .gallery-item--tall {
		min-height: clamp(280px, 72vw, 420px);
	}

	body.premium-plus-inner .phase-card {
		min-height: clamp(360px, 85vw, 520px);
	}

	body.premium-plus-inner .pp-open__media {
		max-height: none;
		aspect-ratio: 4 / 3;
	}

	body.premium-plus-inner .about-hero__bg img {
		object-position: center 35%;
	}

	body.premium-plus-inner img.page-hero__media {
		object-position: center 30%;
	}
}
