/* Product photographs: full image, consistent frames, no enlargement past native pixels.
   Scoped away from promotional bundle pictures, app screenshots and manufacturer logos. */
.products-grid .product-image-link{display:grid;place-items:center;aspect-ratio:4/3;padding:20px;background:#fff;isolation:isolate}
.products-grid .product-image-link img{width:100%;height:100%;min-height:0;max-height:100%;object-fit:scale-down;object-position:center;mix-blend-mode:normal}
.product-badge{z-index:1}
.seo-product-image,.product-gallery{display:grid;place-items:center;aspect-ratio:4/3;min-height:0;max-height:none;padding:28px;background:#fff;border:0;border-radius:0;overflow:visible}
.seo-product-image img,.product-gallery img{width:100%;height:100%;max-height:440px;min-height:0;object-fit:scale-down;object-position:center;mix-blend-mode:normal}
.product-gallery{padding-bottom:52px}
.quick-gallery{display:grid;grid-template-columns:1fr;gap:16px;background:#fff;padding:16px 8px;margin-bottom:14px}
.quick-gallery .quick-image,.quick-gallery:has(img:nth-child(2)) .quick-image{width:100%;height:auto;aspect-ratio:4/3;max-height:340px;object-fit:scale-down;object-position:center;min-width:0;mix-blend-mode:normal}
.quick-gallery:has(img:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}
.category-page-image{padding:24px;min-height:0;max-height:none;aspect-ratio:4/3;align-self:start;background:#fff;border:0;display:grid;place-items:center}
.category-page-image img{width:100%;height:100%;min-height:0;max-height:380px;object-fit:scale-down;object-position:center;mix-blend-mode:normal}
.category-large img{width:100%;max-width:100%;height:225px;object-fit:scale-down;object-position:center;mix-blend-mode:normal}
.category-small img{object-fit:scale-down;object-position:center;mix-blend-mode:normal}
@media(max-width:760px){.products-grid .product-image-link{padding:16px}.seo-product-image,.product-gallery{padding:18px}.product-gallery{padding-bottom:44px}.seo-product-image img,.product-gallery img{max-height:360px}.category-page-image{padding:18px}.category-large img{height:200px}}
@media(max-width:480px){.quick-gallery:has(img:nth-child(2)){grid-template-columns:1fr}.products-grid .product-image-link{padding:14px}.quick-gallery{padding:12px 4px}}
/* Absolutely positioned images cannot stretch the frame to their intrinsic portrait height. */
.products-grid .product-image-link{display:block;min-height:0}
.products-grid .product-image-link img{position:absolute;inset:20px;width:calc(100% - 40px);height:calc(100% - 40px);max-height:none}
.seo-product-image,.product-gallery,.category-page-image{position:relative;display:block}
.seo-product-image img,.product-gallery img{position:absolute;inset:28px;width:calc(100% - 56px);height:calc(100% - 56px);max-height:none}
.product-gallery img{bottom:52px;height:calc(100% - 80px)}
.category-page-image img{position:absolute;inset:24px;width:calc(100% - 48px);height:calc(100% - 48px);max-height:none}
@media(max-width:760px){.products-grid .product-image-link img{inset:16px;width:calc(100% - 32px);height:calc(100% - 32px)}.seo-product-image img,.product-gallery img,.category-page-image img{inset:18px;width:calc(100% - 36px);height:calc(100% - 36px)}.product-gallery img{bottom:44px;height:calc(100% - 62px)}}
@media(max-width:480px){.products-grid .product-image-link img{inset:14px;width:calc(100% - 28px);height:calc(100% - 28px)}}
@media(max-width:480px){.products-grid{grid-template-columns:minmax(0,1fr)}}
/* Keep small original fan photos substantial within their frame without upscaling. */
.seo-product-image:has(img[width="300"][height="225"]){width:min(100%,460px);justify-self:center}

/* White derivatives already include breathing space; avoid a second inset. */
.products-grid .product-image-link img[src*="/product-white/"]{inset:0;width:100%;height:100%}
.seo-product-image img[src*="/product-white/"],.category-page-image img[src*="/product-white/"]{inset:0;width:100%;height:100%}
.product-gallery img[src*="/product-white/"]{inset:0 0 32px;width:100%;height:calc(100% - 32px)}
.fan-card-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 22px}
.fan-card-specs div{min-width:0}.fan-card-specs dt{font-size:12px;line-height:1.5;color:#66736b}
.fan-card-specs dd{margin:4px 0 0;font-size:14px;font-weight:600;line-height:1.4;color:#263d34}
