
.image3d {
  
  list-style: none;
  font-size: 20px;
  position: relative;
  width: 300px;
  overflow: hidden;
  margin: 0 0 1em 0;
  height: 200px;
  background: #222;
  background: -webkit-linear-gradient( #000, #222 );
  background: -moz-linear-gradient( #000, #222 );
  background: -ms-linear-gradient( #000, #222 );
  background: -o-linear-gradient( #000, #222 );
  box-shadow: 4px 4px 10px rgba( 0, 0, 0, 0.6 );

  /* define a perspective of 800 pixels */
  -moz-perspective:    800px;
  -webkit-perspective: 800px;
  -ms-perspective:     800px;
  -o-perspective:      800px;
  perspective:         800px;

}

.image3d img {

  /* smoothly transition any changes to the image in a second */
  -webkit-transition: all 1s;
  -moz-transition:    all 1s;
  -o-transition:      all 1s;
  -ms-transition:     all 1s;
  transition:         all 1s;

}
.image3d figure:hover img, .image3d figure:focus img {

  /* rotate the image and move it to the back */
  -webkit-transform: rotateY( 50deg ) rotateX( 10deg )
                     translate3d( 80px, -20px, -100px );
  -moz-transform:    rotateY( 50deg ) rotateX( 10deg )
                     translate3d( 80px, -20px, -100px );
  -o-transform:      rotateY( 50deg ) rotateX( 10deg )
                     translate3d( 80px, -20px, -100px );
  -ms-transform:     rotateY( 50deg ) rotateX( 10deg )
                     translate3d( 80px, -20px, -100px );
  transform:         rotateY( 50deg ) rotateX( 10deg )
                     translate3d( 80px, -20px, -100px );

  opacity:0.4;    

}
.image3d figcaption {
  position: absolute;
  background: rgba( 0, 0, 0, 0.7 );
  color: #fff;
  border-radius: 5px;
  left: 300px;
  bottom: 10px;
  width: 230px;
}
.image3d:hover figcaption, .image3d:focus figcaption {
  -webkit-transition: all 1s;
  -moz-transition:    all 1s;
  -ms-transition:     all 1s;
  -o-transition:      all 1s;
  transition:         all 1s;
  left: 80px;
}
.image3d figcaption strong {
  display: block;
  color: lime;
  font-weight: normal;
  font-size:22px;
  padding: 5px 0;
}
.image3d figcaption p {
  display: block;
  color: white;
  padding: 5px;
}
