* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  user-select: none;
}

body {
  height: 100vh;
  background-color: #f5f5f5;
  display: flex;
  align-items: center;
  justify-content: center;
}

.img-container {
  position: relative;
  height: 500px;
  width: 700px;
  perspective: 500px;
  transform-style: preserve-3d;
}
.box {
  box-shadow: 0 0 10px rgb(0 0 0 / 30%);
  width: 309px;
  height: 450px;
  border-radius: 25px;
  overflow: hidden;
  border: 1px solid #bbb;
  position: absolute;
  top: 50%;
  transition: 800ms ease-in-out;
}

.box img {
  width: 100%;
  height: 100%;
}

.box:first-of-type {
  z-index: 5;
  opacity: 0;
  left: 15%;
  transform: translate(-50%, -50%) rotateY(-10deg);
}

.box:nth-of-type(2) {
  opacity: 1;
  left: 20%;
  transform: translate(-50%, -50%) rotateY(-10deg);
  z-index: 5;

}
.box:nth-of-type(3) {
  left: 25%;
  opacity: 0.75;
  color: #eee;
  z-index: 10;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-50px);
}

.box:nth-of-type(4) {
  z-index: 5;
  opacity: 0.5;
  left:30%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-100px);
}
.box:nth-of-type(5) {
  z-index: 2;
  opacity: 0.25;
  left: 35%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-150px);
}

.box:nth-of-type(6) {
  z-index: 2;
  opacity: 0.0;
  left: 15%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-200px);
}

.box:nth-of-type(7) {
  z-index: 10;
  opacity: 0.5;
  left:18%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-250px);
}

.box:nth-of-type(8) {
  z-index: 2;
  opacity: 0.25;
  left: 21%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-150px);
}
.box:nth-of-type(9) {
  z-index: 2;
  opacity: 0.0;
  left: 24%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-200px);
}

.box:nth-of-type(10) {
  z-index: 10;
  opacity: 0.5;
  left:27%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-250px);
}
.box:nth-of-type(11) {
  z-index: 5;
  opacity: 0.5;
  left:30%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-100px);
}
.box:nth-of-type(12) {
  z-index: 2;
  opacity: 0.25;
  left: 33%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-150px);
}

.box:nth-of-type(13) {
  z-index: 2;
  opacity: 0.0;
  left: 37%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-200px);
}
.box:nth-of-type(14) {
  z-index: 2;
  opacity: 0.25;
  left: 38%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-250px);
}

.box:nth-of-type(15) {
  z-index: 2;
  opacity: 0.0;
  left: 39%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-100px);
}
.box:nth-of-type(16) {
  z-index: 2;
  opacity: 0.25;
  left: 40%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-150px);
}
.box:nth-of-type(17) {
  z-index: 2;
  opacity: 0.0;
  left: 42%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-200px);
}

.box:nth-of-type(18) {
  z-index: 10;
  opacity: 0.5;
  left:43%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-250px);
}
.box:nth-of-type(19) {
  z-index: 5;
  opacity: 0.5;
  left:44%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-100px);
}
.box:nth-of-type(20) {
  z-index: 2;
  opacity: 0.25;
  left: 45%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-150px);
}

.box:nth-of-type(21) {
  z-index: 2;
  opacity: 0.0;
  left: 37%;
  transform: translate(-50%, -50%) rotateY(-10deg) translateZ(-200px);
}
