/*
 * Cool Bear — performance media rules (storefront audit 2026-09-05, B#2/#12).
 *
 * Owned by the perf pass; deliberately separate from the design CSS. Three jobs:
 *  1. The homepage hero poster is now a real <picture> (responsive WebP) under
 *     the lazily-started <video>; the video fades in over it once playing.
 *  2. The wheel test-rig <video> cards reserve their 16:9 box from the
 *     width/height attributes so the poster/video never shifts the copy.
 *  3. Cool_Bear_WebP now stamps width/height on every uploads <img> that had
 *     none; a zero-specificity height:auto turns those into a pure aspect-ratio
 *     reservation without overriding any author height rule.
 */

/* 1 — hero poster + video ------------------------------------------------ */
.cbv2-hero-photo .cbv2-hero-poster__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 38%;
	filter: var(--cbv2-grade);
}
.cbv2-hero-photo .cbv2-hero-media {
	opacity: 0;
	transition: opacity 0.9s ease;
}
.cbv2-hero-photo .cbv2-hero-media.is-playing {
	opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
	.cbv2-hero-photo .cbv2-hero-media { transition: none; }
}

/* 2 — wheel test-rig cards ------------------------------------------------ */
.cb-wheel-tests__video {
	aspect-ratio: 16 / 9;
	height: auto;
	object-fit: cover;
}

/* 3 — stamped dimensions are a ratio hint, never a fixed height ---------- */
:where(img[width][height]) {
	height: auto;
}
