/* ROZY Display Canvas — Phase 1 of image normalization.
   Non-destructive styling only: baked-in JPEG/PNG backgrounds need image QA.
   Loaded after route-specific CSS; applies equally to public product shelves.
*/
:root{--rozy-product-canvas:#F7F1EE}
.pcard__media,
.rd-card__visual--image,
.rt-grid__item .pcard__media,
.grid--trend .pcard__media{
  background:var(--rozy-product-canvas);
  aspect-ratio:4/5;
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.pcard__media img,
.rd-card__visual--image img,
.rt-grid__item .pcard__media img,
.grid--trend .pcard__media img{
  width:100%;height:100%;
  object-fit:contain;object-position:center;
  padding:clamp(5px,6%,14px);
  mix-blend-mode:normal;
  image-rendering:auto;
}
.rt-hero__product img{mix-blend-mode:normal;object-fit:contain}
/* Keep the approved compact mobile grid; do not touch the detail-gallery CSS. */
@media(max-width:479px){
 .catalog-grid .pcard__media,
 .rt-grid__item .pcard__media,
 .rd-card__visual--image{aspect-ratio:1/1.08}
}
@media(prefers-reduced-motion:reduce){
 .pcard__media img,.rd-card__visual--image img{transition:none}
}
