/* Keep project-gallery cards at a stable size regardless of the source image ratio. */
.project-detail-page .project-detail-gallery {
  align-items: stretch;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
}

.project-detail-page .project-detail-gallery__item,
.project-detail-page .project-detail-gallery__item:nth-child(n) {
  position: relative;
  display: block;
  height: auto;
  max-height: none;
  overflow: hidden;
  isolation: isolate;
  background: #e9e8e3;
}

.project-detail-page .project-detail-gallery__item > .responsive-picture {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.project-detail-page .project-detail-gallery__item > .responsive-picture > img,
.project-detail-page .project-detail-gallery__item > img,
.project-detail-page .project-detail-gallery__item > video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center;
}

.project-detail-page .project-detail-gallery__item--portrait > .responsive-picture > img,
.project-detail-page .project-detail-gallery__item--portrait > img {
  object-fit: contain;
}

.project-detail-page .project-detail-gallery__item::after {
  pointer-events: none;
}

.project-detail-page .project-detail-gallery__item img {
  transition: transform 320ms cubic-bezier(.2, .75, .25, 1);
}

.project-detail-page .project-detail-gallery__item:hover img {
  transform: scale(1.015);
}

@media (prefers-reduced-motion: reduce) {
  .project-detail-page .project-detail-gallery__item img {
    transition: none;
  }
}
