/* Clip the photograph, leaving stock status badges and card text in place. */
.arrival-photo, #main_result .list a.img, .finder-art {overflow: hidden;}
.service .service-photo {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.service:before {z-index:1;pointer-events:none;}
.service div {z-index:2;}

@media screen and (prefers-reduced-motion: no-preference) {
  .photo-arrived {animation:photo-arrive .62s cubic-bezier(.22,.7,.23,1) both;}
  @keyframes photo-arrive {
    from {opacity:.6;translate:0 12px;}
    to {opacity:1;translate:0 0;}
  }
}
@media screen and (hover:hover) and (pointer:fine) and (prefers-reduced-motion: no-preference) {
  :is(.arrival-photo, #main_result .list a.img, .service, .finder-art) > img:not(.status) {
    transition: transform .55s cubic-bezier(.22,.68,.18,1);
  }
  :is(.arrival-photo, #main_result .list a.img, .service):is(:hover,:focus-visible) > img:not(.status),
  .finder-types a:is(:hover,:focus-visible) .finder-art img {
    transform:scale(1.045);
  }
}
