/* Load after editorial.css. Source cutouts retain their full contained silhouette. */
.catalog .product-grid .product-card .product-media{
  position:relative;
  aspect-ratio:3/4;
  width:100%;
  min-width:0;
  overflow:hidden;
  isolation:isolate;
  background:transparent;
  border-radius:0;
}
.catalog .product-grid .product-card .product-media>img,
.catalog .product-grid .product-card .product-media>video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  aspect-ratio:auto;
  object-position:center var(--photo-y,20%);
  border-radius:0;
  z-index:1;
}
.catalog .product-grid .product-card .product-media>img{
  object-fit:contain;
  transform:scale(var(--photo-scale,1));
  transform-origin:center bottom;
  background:transparent;
  filter:drop-shadow(0 12px 12px #26311f0c);
}
.catalog .product-card[data-category=tops] .product-media{--photo-y:0%}
.catalog .product-card[data-category=bottoms] .product-media{--photo-y:100%}
.catalog .product-grid .product-card .product-media>video{
  object-fit:cover;
  border-radius:clamp(40px,6vw,110px) clamp(40px,6vw,110px) 5px 5px!important;
}
.catalog .product-grid .product-card:nth-child(3n+2) .product-media>video{
  border-radius:5px 5px clamp(40px,6vw,110px) clamp(40px,6vw,110px)!important;
}
.catalog .product-card[data-category=tops] .product-media>video{object-position:center top}
.catalog .product-card[data-category=bottoms] .product-media>video{object-position:center bottom}
.catalog .product-grid .product-card .product-media.is-photo-motion>img{
  animation:catalog-photo-float 8s ease-in-out infinite alternate;
  animation-play-state:paused;
}
@keyframes catalog-photo-float{
  from{transform:translateY(.6%) scale(var(--photo-scale,1))}
  to{transform:translateY(-.6%) scale(calc(var(--photo-scale,1)*1.015))}
}
@media(hover:hover) and (pointer:fine){
  .catalog .product-grid .product-card .product-media.is-photo-motion:hover>img,
  .catalog .product-grid .product-card .product-media.is-photo-motion:focus-within>img{animation-play-state:running}
}
@media(hover:none),(pointer:coarse){
  .catalog .product-grid .product-card .product-media.is-photo-motion.is-visible>img{animation-play-state:running}
}
.motion-off .product-media.is-photo-motion>img,
.product-media.is-photo-motion.motion-off>img{animation:none!important}
@media(prefers-reduced-motion:reduce){
  .catalog .product-media.is-photo-motion>img{animation:none!important}
  .catalog .product-media>video{transition:none}
}
.picture video#leggingsVideo{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.catalog .product-media .catalog-photo-note{position:absolute;inset:0;padding:20px;z-index:0}
.catalog .product-media .catalog-photo-note span{font-size:18px}
.catalog .product-media .catalog-photo-note p{font-size:12px;letter-spacing:0}
.catalog .product-media .catalog-film-open{z-index:2}
.catalog .product-media .catalog-film-color{padding:4px 7px;border-radius:5px;background:#17211cd9;color:#fff;text-shadow:none}
.catalog .product-card .catalog-swatches{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:14px 3px 5px;max-width:100%}
.catalog-swatches button{
  display:inline-block;
  flex:0 0 44px;
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  margin:0;
  padding:6px;
  border:1px solid #69755f;
  border-radius:50%;
  background-color:var(--swatch-color,transparent);
  background-clip:content-box;
  cursor:pointer;
}
.catalog-swatches button[aria-pressed=true]{box-shadow:0 0 0 2px #e9ede4,0 0 0 4px #37462d}
.catalog-swatches button:focus-visible{outline:3px solid #37462d;outline-offset:4px}
.catalog p,.catalog h3,.outfits p,.outfits h2,.outfits h3{word-break:keep-all;overflow-wrap:break-word}
.catalog .product-card .catalog-color-name{font-size:12px;line-height:1.6;color:#303b2b;margin:8px 0 3px;overflow-wrap:anywhere}
.catalog .product-card .catalog-color-note{font-size:10px;line-height:1.75;letter-spacing:-.015em;color:#5b6557;margin:3px 0 0;overflow-wrap:anywhere}
.outfits h2{letter-spacing:-.045em}
