/* Stable clipping frames keep photo motion inside each existing menu card. */
.menu-item > .dish-photo-frame {
  display: block;
  position: relative;
  grid-column: 1;
  grid-row: 1 / 4;
  width: 94px;
  height: 120px;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: 3px;
}

.menu-item > .dish-photo-frame > .dish-photo {
  display: block;
  position: absolute;
  inset: 0;
  grid-area: auto;
  width: 100%;
  height: 100%;
  max-width: none;
  aspect-ratio: auto;
  margin: 0;
  border-radius: 0;
  object-fit: cover;
}

@media (max-width: 360px) {
  .menu-item > .dish-photo-frame {
    width: 80px;
  }
}

@media (min-width: 641px) {
  .menu-item > .dish-photo-frame {
    width: 132px;
    height: 148px;
  }
}

@media (min-width: 900px) {
  .menu-item > .dish-photo-frame {
    grid-column: 1 / -1;
    grid-row: 1;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    border-radius: 0;
  }
}
