.bookshelf {
  width: 100%;
  margin-top: 32px;
  display: flex;
  flex-wrap: wrap;
}

.dvd {
  width: 22px;
  height: 280px;
  position: relative;
  margin-left: 10px;
  transform-style: preserve-3d;
  transform: translateZ(0) rotateY(0);
  transition: transform 1s;
}

.side {
  position: absolute;
  border: 2px solid black;
  border-radius: 3px;
  font-weight: bold;
  color: black;
  text-align: center;
  transform-origin: center left;
}

.spine {
  position: relative;
  width: 23px;
  height: 280px;
  background-position: 0 0;
  top: 0px;
  background-size: cover;
  background-repeat: no-repeat;
  transform: rotateY(0deg) translateZ(0px);
}

.top {
  width: 23px;
  height: 190px;
  top: 0px;  /* hmm, why -2 and not 0? */
  background-image: linear-gradient(90deg, black 93%, darkgray 96%);
  background-size: 10px 190px;
  transform: rotateX(90deg) translateZ(95px) translateY(-95px);
}

.cover {
  background-position: -20px 0;
  width: 198px;
  height: 280px;
  top: 0px;
  background-size: cover;
  background-repeat: no-repeat;
  left: 20px;
  transform: rotateY(90deg) translateZ(0);
  transition: transform 1s;
}

.item:hover {
  z-index: 1;
  transform: rotateX(-25deg) rotateY(-40deg) rotateZ(-15deg) translateY(50px)
    translateX(-30px);
}

#credit{
  font-size: 1rem;
}