
.img-float {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-duration: .3s;
  transition-duration: .3s;
  -webkit-transition-property: transform;
  transition-property: transform
}

.img-float:before {
  pointer-events: bounding-box;
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 0;
  background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, .35) 0, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, .35) 0, rgba(0, 0, 0, 0) 80%);
  -webkit-transition-duration: .3s;
  transition-duration: .3s;
  -webkit-transition-property: transform, opacity;
  transition-property: transform, opacity
}

.img-float:active, .img-float:focus, .img-float:hover {
  -webkit-transform: translateY(-5px);
  -moz-box-shadow: 0 0 5px #fff;
  -webkit-box-shadow: 0 0 5px #fff;
  box-shadow: 0px 0px 5px #fff;
  transform: translateY(-5px)
}

.img-float:active:before, .img-float:focus:before, .img-float:hover:before {
  opacity: 1;
  -webkit-transform: translateY(5px);
  transform: translateY(5px)
}
