/* Hover Shadow */
@keyframes hover {
	50% {
		transform: translateY(-3px);
	}

	100% {
		transform: translateY(-6px);
	}
}

@keyframes hover-shadow {
	0% {
		transform: translateY(6px);
		opacity: .4;
	}

	50% {
		transform: translateY(3px);
		opacity: 1;
	}


	100% {
		transform: translateY(6px);
		opacity: .4;
	}
}

@mixin hover-shadow {
	display: inline-block;
	position: relative;
	transition-duration: $defaultDuration;
	transition-property: transform;

	@include hacks();

	&:before {
		pointer-events: none;
	  position: absolute;
	  z-index: -1;
	  content: '';
	  top: 100%;
	  left: 5%;
	  height: 10px;
	  width: 90%;
	  opacity: 0;
	  background: radial-gradient(ellipse at center, rgba(0,0,0,.35) 0%,rgba(0,0,0,0) 80%); /* W3C */
		transition-duration: $defaultDuration;
		transition-property: transform, opacity;
	}

	&:hover {
		transform: translateY(-6px);
		animation-name: hover;
		animation-duration: 1.5s;
		animation-delay: $defaultDuration;
		animation-timing-function: linear;
		animation-iteration-count: infinite;
		animation-direction: alternate;

		&:before {
			opacity: .4;
			transform: translateY(6px);
			animation-name: hover-shadow;
			animation-duration: 1.5s;
			animation-delay: .3s;
			animation-timing-function: linear;
			animation-iteration-count: infinite;
			animation-direction: alternate;
		}
	}
}