* { box-sizing: border-box; }



.scene {
    margin: 40px 0;
    position: relative;
    width: 600px;
    height: 800px;
    margin: 40px auto;
    perspective: 1000px;
}

.scene .carousel {
    width: 100%;
    height: 100%;
    position: absolute;
    transform: translateZ(-1605px);
    transform-style: preserve-3d;
    transition: transform 1s;
}

.carousel__cell {
    position: absolute;
    width: 600px;
    height: 800px;
    left: 10px;
    top: 10px;
    text-align: center;
}
.scene .carousel .carousel__cell .caption {
    position: absolute;
    right: 15%;
    bottom: 1.25rem;
    left: 15%;
    text-align: center;
    background: rgba(255,255,255,.8);
    padding: 1rem;
    color:#000;
    font-weight:500;
    opacity: 0;
    transition: opacity 500ms; /* Animation */
}
.scene .carousel .carousel__cell:hover .caption {
    opacity: 1;
}

.previous-button,
.next-button {
    position: absolute;
    z-index: 999;
    top:50%
}
.previous-button {
    left:80px;
}
.next-button {
    right:80px;
}

.previous-button a,
.next-button a {
    color:#fff;
}

.carousel__cell:nth-child(1) { transform: rotateY(  0deg) translateZ(1605px); }
.carousel__cell:nth-child(2) { transform: rotateY( 21.176deg) translateZ(1605px); }
.carousel__cell:nth-child(3) { transform: rotateY( 42.352deg) translateZ(1605px); }
.carousel__cell:nth-child(4) { transform: rotateY(63.528deg) translateZ(1605px); }
.carousel__cell:nth-child(5) { transform: rotateY(84.704deg) translateZ(1605px); }
.carousel__cell:nth-child(6) { transform: rotateY(105.880deg) translateZ(1605px); }
.carousel__cell:nth-child(7) { transform: rotateY(127.056deg) translateZ(1605px); }
.carousel__cell:nth-child(8) { transform: rotateY(148.232deg) translateZ(1605px); }
.carousel__cell:nth-child(9) { transform: rotateY(169.408deg) translateZ(1605px); }
.carousel__cell:nth-child(10) { transform: rotateY(190.584deg) translateZ(1605px); }
.carousel__cell:nth-child(11) { transform: rotateY(211.760deg) translateZ(1605px); }
.carousel__cell:nth-child(12) { transform: rotateY(232.936deg) translateZ(1605px); }
.carousel__cell:nth-child(13) { transform: rotateY(254.112deg) translateZ(1605px); }
.carousel__cell:nth-child(14) { transform: rotateY(275.288deg) translateZ(1605px); }
.carousel__cell:nth-child(15) { transform: rotateY(296.464deg) translateZ(1605px); }
.carousel__cell:nth-child(16) { transform: rotateY(317.640deg) translateZ(1605px); }
.carousel__cell:nth-child(17) { transform: rotateY(338.816deg) translateZ(1605px); }


