@charset "UTF-8";

:root {
	--animate-duration: 1s;
	--animate-delay: 1s;
	--animate-repeat: 1;
}

@-webkit-keyframes bounce {
	0%, 20%, 53%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	40%, 43% {
		-webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
		animation-timing-function: cubic-bezier(.755, .05, .855, .06);
		-webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
		transform: translate3d(0, -30px, 0) scaleY(1.1);
	}
	
	70% {
		-webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
		animation-timing-function: cubic-bezier(.755, .05, .855, .06);
		-webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
		transform: translate3d(0, -15px, 0) scaleY(1.05);
	}
	
	80% {
		-webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
		transition-timing-function: cubic-bezier(.215, .61, .355, 1);
		-webkit-transform: translateZ(0) scaleY(.95);
		transform: translateZ(0) scaleY(.95);
	}
	
	90% {
		-webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
		transform: translate3d(0, -4px, 0) scaleY(1.02);
	}
}

@keyframes bounce {
	0%, 20%, 53%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	40%, 43% {
		-webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
		animation-timing-function: cubic-bezier(.755, .05, .855, .06);
		-webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
		transform: translate3d(0, -30px, 0) scaleY(1.1);
	}
	
	70% {
		-webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
		animation-timing-function: cubic-bezier(.755, .05, .855, .06);
		-webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
		transform: translate3d(0, -15px, 0) scaleY(1.05);
	}
	
	80% {
		-webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
		transition-timing-function: cubic-bezier(.215, .61, .355, 1);
		-webkit-transform: translateZ(0) scaleY(.95);
		transform: translateZ(0) scaleY(.95);
	}
	
	90% {
		-webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
		transform: translate3d(0, -4px, 0) scaleY(1.02);
	}
}

@-webkit-keyframes flash {
	0%, 50%, to {
		opacity: 1;
	}
	
	25%, 75% {
		opacity: 0;
	}
}

@keyframes flash {
	0%, 50%, to {
		opacity: 1;
	}
	
	25%, 75% {
		opacity: 0;
	}
}

@-webkit-keyframes pulse {
	0% {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
	
	50% {
		-webkit-transform: scale3d(1.05, 1.05, 1.05);
		transform: scale3d(1.05, 1.05, 1.05);
	}
	
	to {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@keyframes pulse {
	0% {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
	
	50% {
		-webkit-transform: scale3d(1.05, 1.05, 1.05);
		transform: scale3d(1.05, 1.05, 1.05);
	}
	
	to {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@-webkit-keyframes rubberBand {
	0% {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
	
	30% {
		-webkit-transform: scale3d(1.25, .75, 1);
		transform: scale3d(1.25, .75, 1);
	}
	
	40% {
		-webkit-transform: scale3d(.75, 1.25, 1);
		transform: scale3d(.75, 1.25, 1);
	}
	
	50% {
		-webkit-transform: scale3d(1.15, .85, 1);
		transform: scale3d(1.15, .85, 1);
	}
	
	65% {
		-webkit-transform: scale3d(.95, 1.05, 1);
		transform: scale3d(.95, 1.05, 1);
	}
	
	75% {
		-webkit-transform: scale3d(1.05, .95, 1);
		transform: scale3d(1.05, .95, 1);
	}
	
	to {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@keyframes rubberBand {
	0% {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
	
	30% {
		-webkit-transform: scale3d(1.25, .75, 1);
		transform: scale3d(1.25, .75, 1);
	}
	
	40% {
		-webkit-transform: scale3d(.75, 1.25, 1);
		transform: scale3d(.75, 1.25, 1);
	}
	
	50% {
		-webkit-transform: scale3d(1.15, .85, 1);
		transform: scale3d(1.15, .85, 1);
	}
	
	65% {
		-webkit-transform: scale3d(.95, 1.05, 1);
		transform: scale3d(.95, 1.05, 1);
	}
	
	75% {
		-webkit-transform: scale3d(1.05, .95, 1);
		transform: scale3d(1.05, .95, 1);
	}
	
	to {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@-webkit-keyframes shakeX {
	0%, to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	10%, 30%, 50%, 70%, 90% {
		-webkit-transform: translate3d(-10px, 0, 0);
		transform: translate3d(-10px, 0, 0);
	}
	
	20%, 40%, 60%, 80% {
		-webkit-transform: translate3d(10px, 0, 0);
		transform: translate3d(10px, 0, 0);
	}
}

@keyframes shakeX {
	0%, to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	10%, 30%, 50%, 70%, 90% {
		-webkit-transform: translate3d(-10px, 0, 0);
		transform: translate3d(-10px, 0, 0);
	}
	
	20%, 40%, 60%, 80% {
		-webkit-transform: translate3d(10px, 0, 0);
		transform: translate3d(10px, 0, 0);
	}
}

@-webkit-keyframes shakeY {
	0%, to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	10%, 30%, 50%, 70%, 90% {
		-webkit-transform: translate3d(0, -10px, 0);
		transform: translate3d(0, -10px, 0);
	}
	
	20%, 40%, 60%, 80% {
		-webkit-transform: translate3d(0, 10px, 0);
		transform: translate3d(0, 10px, 0);
	}
}

@keyframes shakeY {
	0%, to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	10%, 30%, 50%, 70%, 90% {
		-webkit-transform: translate3d(0, -10px, 0);
		transform: translate3d(0, -10px, 0);
	}
	
	20%, 40%, 60%, 80% {
		-webkit-transform: translate3d(0, 10px, 0);
		transform: translate3d(0, 10px, 0);
	}
}

@-webkit-keyframes headShake {
	0% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	
	6.5% {
		-webkit-transform: translateX(-6px) rotateY(-9deg);
		transform: translateX(-6px) rotateY(-9deg);
	}
	
	18.5% {
		-webkit-transform: translateX(5px) rotateY(7deg);
		transform: translateX(5px) rotateY(7deg);
	}
	
	31.5% {
		-webkit-transform: translateX(-3px) rotateY(-5deg);
		transform: translateX(-3px) rotateY(-5deg);
	}
	
	43.5% {
		-webkit-transform: translateX(2px) rotateY(3deg);
		transform: translateX(2px) rotateY(3deg);
	}
	
	50% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}

@keyframes headShake {
	0% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	
	6.5% {
		-webkit-transform: translateX(-6px) rotateY(-9deg);
		transform: translateX(-6px) rotateY(-9deg);
	}
	
	18.5% {
		-webkit-transform: translateX(5px) rotateY(7deg);
		transform: translateX(5px) rotateY(7deg);
	}
	
	31.5% {
		-webkit-transform: translateX(-3px) rotateY(-5deg);
		transform: translateX(-3px) rotateY(-5deg);
	}
	
	43.5% {
		-webkit-transform: translateX(2px) rotateY(3deg);
		transform: translateX(2px) rotateY(3deg);
	}
	
	50% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}

@-webkit-keyframes swing {
	20% {
		-webkit-transform: rotate(15deg);
		transform: rotate(15deg);
	}
	
	40% {
		-webkit-transform: rotate(-10deg);
		transform: rotate(-10deg);
	}
	
	60% {
		-webkit-transform: rotate(5deg);
		transform: rotate(5deg);
	}
	
	80% {
		-webkit-transform: rotate(-5deg);
		transform: rotate(-5deg);
	}
	
	to {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
}

@keyframes swing {
	20% {
		-webkit-transform: rotate(15deg);
		transform: rotate(15deg);
	}
	
	40% {
		-webkit-transform: rotate(-10deg);
		transform: rotate(-10deg);
	}
	
	60% {
		-webkit-transform: rotate(5deg);
		transform: rotate(5deg);
	}
	
	80% {
		-webkit-transform: rotate(-5deg);
		transform: rotate(-5deg);
	}
	
	to {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
}

@-webkit-keyframes tada {
	0% {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
	
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate(-3deg);
		transform: scale3d(.9, .9, .9) rotate(-3deg);
	}
	
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
	}
	
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
	}
	
	to {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@keyframes tada {
	0% {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
	
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate(-3deg);
		transform: scale3d(.9, .9, .9) rotate(-3deg);
	}
	
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
	}
	
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
	}
	
	to {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@-webkit-keyframes wobble {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	15% {
		-webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
		transform: translate3d(-25%, 0, 0) rotate(-5deg);
	}
	
	30% {
		-webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
		transform: translate3d(20%, 0, 0) rotate(3deg);
	}
	
	45% {
		-webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
		transform: translate3d(-15%, 0, 0) rotate(-3deg);
	}
	
	60% {
		-webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
		transform: translate3d(10%, 0, 0) rotate(2deg);
	}
	
	75% {
		-webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
		transform: translate3d(-5%, 0, 0) rotate(-1deg);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes wobble {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	15% {
		-webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
		transform: translate3d(-25%, 0, 0) rotate(-5deg);
	}
	
	30% {
		-webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
		transform: translate3d(20%, 0, 0) rotate(3deg);
	}
	
	45% {
		-webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
		transform: translate3d(-15%, 0, 0) rotate(-3deg);
	}
	
	60% {
		-webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
		transform: translate3d(10%, 0, 0) rotate(2deg);
	}
	
	75% {
		-webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
		transform: translate3d(-5%, 0, 0) rotate(-1deg);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes jello {
	0%, 11.1%, to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	22.2% {
		-webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
		transform: skewX(-12.5deg) skewY(-12.5deg);
	}
	
	33.3% {
		-webkit-transform: skewX(6.25deg) skewY(6.25deg);
		transform: skewX(6.25deg) skewY(6.25deg);
	}
	
	44.4% {
		-webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
		transform: skewX(-3.125deg) skewY(-3.125deg);
	}
	
	55.5% {
		-webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
		transform: skewX(1.5625deg) skewY(1.5625deg);
	}
	
	66.6% {
		-webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
		transform: skewX(-.78125deg) skewY(-.78125deg);
	}
	
	77.7% {
		-webkit-transform: skewX(.390625deg) skewY(.390625deg);
		transform: skewX(.390625deg) skewY(.390625deg);
	}
	
	88.8% {
		-webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
		transform: skewX(-.1953125deg) skewY(-.1953125deg);
	}
}

@keyframes jello {
	0%, 11.1%, to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	22.2% {
		-webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
		transform: skewX(-12.5deg) skewY(-12.5deg);
	}
	
	33.3% {
		-webkit-transform: skewX(6.25deg) skewY(6.25deg);
		transform: skewX(6.25deg) skewY(6.25deg);
	}
	
	44.4% {
		-webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
		transform: skewX(-3.125deg) skewY(-3.125deg);
	}
	
	55.5% {
		-webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
		transform: skewX(1.5625deg) skewY(1.5625deg);
	}
	
	66.6% {
		-webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
		transform: skewX(-.78125deg) skewY(-.78125deg);
	}
	
	77.7% {
		-webkit-transform: skewX(.390625deg) skewY(.390625deg);
		transform: skewX(.390625deg) skewY(.390625deg);
	}
	
	88.8% {
		-webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
		transform: skewX(-.1953125deg) skewY(-.1953125deg);
	}
}

@-webkit-keyframes heartBeat {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	
	14% {
		-webkit-transform: scale(1.3);
		transform: scale(1.3);
	}
	
	28% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	
	42% {
		-webkit-transform: scale(1.3);
		transform: scale(1.3);
	}
	
	70% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

@keyframes heartBeat {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	
	14% {
		-webkit-transform: scale(1.3);
		transform: scale(1.3);
	}
	
	28% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	
	42% {
		-webkit-transform: scale(1.3);
		transform: scale(1.3);
	}
	
	70% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

@-webkit-keyframes backInDown {
	0% {
		-webkit-transform: translateY(-1200px) scale(.7);
		transform: translateY(-1200px) scale(.7);
		opacity: .7;
	}
	
	80% {
		-webkit-transform: translateY(0) scale(.7);
		transform: translateY(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}

@keyframes backInDown {
	0% {
		-webkit-transform: translateY(-1200px) scale(.7);
		transform: translateY(-1200px) scale(.7);
		opacity: .7;
	}
	
	80% {
		-webkit-transform: translateY(0) scale(.7);
		transform: translateY(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}

@-webkit-keyframes backInLeft {
	0% {
		-webkit-transform: translateX(-2000px) scale(.7);
		transform: translateX(-2000px) scale(.7);
		opacity: .7;
	}
	
	80% {
		-webkit-transform: translateX(0) scale(.7);
		transform: translateX(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}

@keyframes backInLeft {
	0% {
		-webkit-transform: translateX(-2000px) scale(.7);
		transform: translateX(-2000px) scale(.7);
		opacity: .7;
	}
	
	80% {
		-webkit-transform: translateX(0) scale(.7);
		transform: translateX(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}

@-webkit-keyframes backInRight {
	0% {
		-webkit-transform: translateX(2000px) scale(.7);
		transform: translateX(2000px) scale(.7);
		opacity: .7;
	}
	
	80% {
		-webkit-transform: translateX(0) scale(.7);
		transform: translateX(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}

@keyframes backInRight {
	0% {
		-webkit-transform: translateX(2000px) scale(.7);
		transform: translateX(2000px) scale(.7);
		opacity: .7;
	}
	
	80% {
		-webkit-transform: translateX(0) scale(.7);
		transform: translateX(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}

@-webkit-keyframes backInUp {
	0% {
		-webkit-transform: translateY(1200px) scale(.7);
		transform: translateY(1200px) scale(.7);
		opacity: .7;
	}
	
	80% {
		-webkit-transform: translateY(0) scale(.7);
		transform: translateY(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}

@keyframes backInUp {
	0% {
		-webkit-transform: translateY(1200px) scale(.7);
		transform: translateY(1200px) scale(.7);
		opacity: .7;
	}
	
	80% {
		-webkit-transform: translateY(0) scale(.7);
		transform: translateY(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}

@-webkit-keyframes backOutDown {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
	
	20% {
		-webkit-transform: translateY(0) scale(.7);
		transform: translateY(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: translateY(700px) scale(.7);
		transform: translateY(700px) scale(.7);
		opacity: .7;
	}
}

@keyframes backOutDown {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
	
	20% {
		-webkit-transform: translateY(0) scale(.7);
		transform: translateY(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: translateY(700px) scale(.7);
		transform: translateY(700px) scale(.7);
		opacity: .7;
	}
}

@-webkit-keyframes backOutLeft {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
	
	20% {
		-webkit-transform: translateX(0) scale(.7);
		transform: translateX(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: translateX(-2000px) scale(.7);
		transform: translateX(-2000px) scale(.7);
		opacity: .7;
	}
}

@keyframes backOutLeft {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
	
	20% {
		-webkit-transform: translateX(0) scale(.7);
		transform: translateX(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: translateX(-2000px) scale(.7);
		transform: translateX(-2000px) scale(.7);
		opacity: .7;
	}
}

@-webkit-keyframes backOutRight {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
	
	20% {
		-webkit-transform: translateX(0) scale(.7);
		transform: translateX(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: translateX(2000px) scale(.7);
		transform: translateX(2000px) scale(.7);
		opacity: .7;
	}
}

@keyframes backOutRight {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
	
	20% {
		-webkit-transform: translateX(0) scale(.7);
		transform: translateX(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: translateX(2000px) scale(.7);
		transform: translateX(2000px) scale(.7);
		opacity: .7;
	}
}

@-webkit-keyframes backOutUp {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
	
	20% {
		-webkit-transform: translateY(0) scale(.7);
		transform: translateY(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: translateY(-700px) scale(.7);
		transform: translateY(-700px) scale(.7);
		opacity: .7;
	}
}

@keyframes backOutUp {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
	
	20% {
		-webkit-transform: translateY(0) scale(.7);
		transform: translateY(0) scale(.7);
		opacity: .7;
	}
	
	to {
		-webkit-transform: translateY(-700px) scale(.7);
		transform: translateY(-700px) scale(.7);
		opacity: .7;
	}
}

@-webkit-keyframes bounceIn {
	0%, 20%, 40%, 60%, 80%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3);
	}
	
	20% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1);
		transform: scale3d(1.1, 1.1, 1.1);
	}
	
	40% {
		-webkit-transform: scale3d(.9, .9, .9);
		transform: scale3d(.9, .9, .9);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(1.03, 1.03, 1.03);
		transform: scale3d(1.03, 1.03, 1.03);
	}
	
	80% {
		-webkit-transform: scale3d(.97, .97, .97);
		transform: scale3d(.97, .97, .97);
	}
	
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@keyframes bounceIn {
	0%, 20%, 40%, 60%, 80%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3);
	}
	
	20% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1);
		transform: scale3d(1.1, 1.1, 1.1);
	}
	
	40% {
		-webkit-transform: scale3d(.9, .9, .9);
		transform: scale3d(.9, .9, .9);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(1.03, 1.03, 1.03);
		transform: scale3d(1.03, 1.03, 1.03);
	}
	
	80% {
		-webkit-transform: scale3d(.97, .97, .97);
		transform: scale3d(.97, .97, .97);
	}
	
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@-webkit-keyframes bounceInDown {
	0%, 60%, 75%, 90%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
		transform: translate3d(0, -3000px, 0) scaleY(3);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translate3d(0, 25px, 0) scaleY(.9);
		transform: translate3d(0, 25px, 0) scaleY(.9);
	}
	
	75% {
		-webkit-transform: translate3d(0, -10px, 0) scaleY(.95);
		transform: translate3d(0, -10px, 0) scaleY(.95);
	}
	
	90% {
		-webkit-transform: translate3d(0, 5px, 0) scaleY(.985);
		transform: translate3d(0, 5px, 0) scaleY(.985);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes bounceInDown {
	0%, 60%, 75%, 90%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
		transform: translate3d(0, -3000px, 0) scaleY(3);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translate3d(0, 25px, 0) scaleY(.9);
		transform: translate3d(0, 25px, 0) scaleY(.9);
	}
	
	75% {
		-webkit-transform: translate3d(0, -10px, 0) scaleY(.95);
		transform: translate3d(0, -10px, 0) scaleY(.95);
	}
	
	90% {
		-webkit-transform: translate3d(0, 5px, 0) scaleY(.985);
		transform: translate3d(0, 5px, 0) scaleY(.985);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes bounceInLeft {
	0%, 60%, 75%, 90%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
		transform: translate3d(-3000px, 0, 0) scaleX(3);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translate3d(25px, 0, 0) scaleX(1);
		transform: translate3d(25px, 0, 0) scaleX(1);
	}
	
	75% {
		-webkit-transform: translate3d(-10px, 0, 0) scaleX(.98);
		transform: translate3d(-10px, 0, 0) scaleX(.98);
	}
	
	90% {
		-webkit-transform: translate3d(5px, 0, 0) scaleX(.995);
		transform: translate3d(5px, 0, 0) scaleX(.995);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes bounceInLeft {
	0%, 60%, 75%, 90%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
		transform: translate3d(-3000px, 0, 0) scaleX(3);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translate3d(25px, 0, 0) scaleX(1);
		transform: translate3d(25px, 0, 0) scaleX(1);
	}
	
	75% {
		-webkit-transform: translate3d(-10px, 0, 0) scaleX(.98);
		transform: translate3d(-10px, 0, 0) scaleX(.98);
	}
	
	90% {
		-webkit-transform: translate3d(5px, 0, 0) scaleX(.995);
		transform: translate3d(5px, 0, 0) scaleX(.995);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes bounceInRight {
	0%, 60%, 75%, 90%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
		transform: translate3d(3000px, 0, 0) scaleX(3);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
		transform: translate3d(-25px, 0, 0) scaleX(1);
	}
	
	75% {
		-webkit-transform: translate3d(10px, 0, 0) scaleX(.98);
		transform: translate3d(10px, 0, 0) scaleX(.98);
	}
	
	90% {
		-webkit-transform: translate3d(-5px, 0, 0) scaleX(.995);
		transform: translate3d(-5px, 0, 0) scaleX(.995);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes bounceInRight {
	0%, 60%, 75%, 90%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
		transform: translate3d(3000px, 0, 0) scaleX(3);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
		transform: translate3d(-25px, 0, 0) scaleX(1);
	}
	
	75% {
		-webkit-transform: translate3d(10px, 0, 0) scaleX(.98);
		transform: translate3d(10px, 0, 0) scaleX(.98);
	}
	
	90% {
		-webkit-transform: translate3d(-5px, 0, 0) scaleX(.995);
		transform: translate3d(-5px, 0, 0) scaleX(.995);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes bounceInUp {
	0%, 60%, 75%, 90%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
		transform: translate3d(0, 3000px, 0) scaleY(5);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translate3d(0, -20px, 0) scaleY(.9);
		transform: translate3d(0, -20px, 0) scaleY(.9);
	}
	
	75% {
		-webkit-transform: translate3d(0, 10px, 0) scaleY(.95);
		transform: translate3d(0, 10px, 0) scaleY(.95);
	}
	
	90% {
		-webkit-transform: translate3d(0, -5px, 0) scaleY(.985);
		transform: translate3d(0, -5px, 0) scaleY(.985);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes bounceInUp {
	0%, 60%, 75%, 90%, to {
		-webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
		animation-timing-function: cubic-bezier(.215, .61, .355, 1);
	}
	
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
		transform: translate3d(0, 3000px, 0) scaleY(5);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translate3d(0, -20px, 0) scaleY(.9);
		transform: translate3d(0, -20px, 0) scaleY(.9);
	}
	
	75% {
		-webkit-transform: translate3d(0, 10px, 0) scaleY(.95);
		transform: translate3d(0, 10px, 0) scaleY(.95);
	}
	
	90% {
		-webkit-transform: translate3d(0, -5px, 0) scaleY(.985);
		transform: translate3d(0, -5px, 0) scaleY(.985);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes bounceOut {
	20% {
		-webkit-transform: scale3d(.9, .9, .9);
		transform: scale3d(.9, .9, .9);
	}
	
	50%, 55% {
		opacity: 1;
		-webkit-transform: scale3d(1.1, 1.1, 1.1);
		transform: scale3d(1.1, 1.1, 1.1);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3);
	}
}

@keyframes bounceOut {
	20% {
		-webkit-transform: scale3d(.9, .9, .9);
		transform: scale3d(.9, .9, .9);
	}
	
	50%, 55% {
		opacity: 1;
		-webkit-transform: scale3d(1.1, 1.1, 1.1);
		transform: scale3d(1.1, 1.1, 1.1);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3);
	}
}

@-webkit-keyframes bounceOutDown {
	20% {
		-webkit-transform: translate3d(0, 10px, 0) scaleY(.985);
		transform: translate3d(0, 10px, 0) scaleY(.985);
	}
	
	40%, 45% {
		opacity: 1;
		-webkit-transform: translate3d(0, -20px, 0) scaleY(.9);
		transform: translate3d(0, -20px, 0) scaleY(.9);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
		transform: translate3d(0, 2000px, 0) scaleY(3);
	}
}

@keyframes bounceOutDown {
	20% {
		-webkit-transform: translate3d(0, 10px, 0) scaleY(.985);
		transform: translate3d(0, 10px, 0) scaleY(.985);
	}
	
	40%, 45% {
		opacity: 1;
		-webkit-transform: translate3d(0, -20px, 0) scaleY(.9);
		transform: translate3d(0, -20px, 0) scaleY(.9);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
		transform: translate3d(0, 2000px, 0) scaleY(3);
	}
}

@-webkit-keyframes bounceOutLeft {
	20% {
		opacity: 1;
		-webkit-transform: translate3d(20px, 0, 0) scaleX(.9);
		transform: translate3d(20px, 0, 0) scaleX(.9);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
		transform: translate3d(-2000px, 0, 0) scaleX(2);
	}
}

@keyframes bounceOutLeft {
	20% {
		opacity: 1;
		-webkit-transform: translate3d(20px, 0, 0) scaleX(.9);
		transform: translate3d(20px, 0, 0) scaleX(.9);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
		transform: translate3d(-2000px, 0, 0) scaleX(2);
	}
}

@-webkit-keyframes bounceOutRight {
	20% {
		opacity: 1;
		-webkit-transform: translate3d(-20px, 0, 0) scaleX(.9);
		transform: translate3d(-20px, 0, 0) scaleX(.9);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
		transform: translate3d(2000px, 0, 0) scaleX(2);
	}
}

@keyframes bounceOutRight {
	20% {
		opacity: 1;
		-webkit-transform: translate3d(-20px, 0, 0) scaleX(.9);
		transform: translate3d(-20px, 0, 0) scaleX(.9);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
		transform: translate3d(2000px, 0, 0) scaleX(2);
	}
}

@-webkit-keyframes bounceOutUp {
	20% {
		-webkit-transform: translate3d(0, -10px, 0) scaleY(.985);
		transform: translate3d(0, -10px, 0) scaleY(.985);
	}
	
	40%, 45% {
		opacity: 1;
		-webkit-transform: translate3d(0, 20px, 0) scaleY(.9);
		transform: translate3d(0, 20px, 0) scaleY(.9);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
		transform: translate3d(0, -2000px, 0) scaleY(3);
	}
}

@keyframes bounceOutUp {
	20% {
		-webkit-transform: translate3d(0, -10px, 0) scaleY(.985);
		transform: translate3d(0, -10px, 0) scaleY(.985);
	}
	
	40%, 45% {
		opacity: 1;
		-webkit-transform: translate3d(0, 20px, 0) scaleY(.9);
		transform: translate3d(0, 20px, 0) scaleY(.9);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
		transform: translate3d(0, -2000px, 0) scaleY(3);
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}
	
	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	
	to {
		opacity: 1;
	}
}

@-webkit-keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInDownBig {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, -2000px, 0);
		transform: translate3d(0, -2000px, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInDownBig {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, -2000px, 0);
		transform: translate3d(0, -2000px, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInLeft {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInLeft {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInLeftBig {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-2000px, 0, 0);
		transform: translate3d(-2000px, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInLeftBig {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-2000px, 0, 0);
		transform: translate3d(-2000px, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInRightBig {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(2000px, 0, 0);
		transform: translate3d(2000px, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInRightBig {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(2000px, 0, 0);
		transform: translate3d(2000px, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInUpBig {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 2000px, 0);
		transform: translate3d(0, 2000px, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInUpBig {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 2000px, 0);
		transform: translate3d(0, 2000px, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInTopLeft {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-100%, -100%, 0);
		transform: translate3d(-100%, -100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInTopLeft {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-100%, -100%, 0);
		transform: translate3d(-100%, -100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInTopRight {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(100%, -100%, 0);
		transform: translate3d(100%, -100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInTopRight {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(100%, -100%, 0);
		transform: translate3d(100%, -100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInBottomLeft {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 100%, 0);
		transform: translate3d(-100%, 100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInBottomLeft {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 100%, 0);
		transform: translate3d(-100%, 100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeInBottomRight {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(100%, 100%, 0);
		transform: translate3d(100%, 100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes fadeInBottomRight {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(100%, 100%, 0);
		transform: translate3d(100%, 100%, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes fadeOut {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
	}
}

@keyframes fadeOut {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
	}
}

@-webkit-keyframes fadeOutDown {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
	}
}

@keyframes fadeOutDown {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
	}
}

@-webkit-keyframes fadeOutDownBig {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, 2000px, 0);
		transform: translate3d(0, 2000px, 0);
	}
}

@keyframes fadeOutDownBig {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, 2000px, 0);
		transform: translate3d(0, 2000px, 0);
	}
}

@-webkit-keyframes fadeOutLeft {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}

@keyframes fadeOutLeft {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}

@-webkit-keyframes fadeOutLeftBig {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-2000px, 0, 0);
		transform: translate3d(-2000px, 0, 0);
	}
}

@keyframes fadeOutLeftBig {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-2000px, 0, 0);
		transform: translate3d(-2000px, 0, 0);
	}
}

@-webkit-keyframes fadeOutRight {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
}

@keyframes fadeOutRight {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
}

@-webkit-keyframes fadeOutRightBig {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(2000px, 0, 0);
		transform: translate3d(2000px, 0, 0);
	}
}

@keyframes fadeOutRightBig {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(2000px, 0, 0);
		transform: translate3d(2000px, 0, 0);
	}
}

@-webkit-keyframes fadeOutUp {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
	}
}

@keyframes fadeOutUp {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
	}
}

@-webkit-keyframes fadeOutUpBig {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, -2000px, 0);
		transform: translate3d(0, -2000px, 0);
	}
}

@keyframes fadeOutUpBig {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(0, -2000px, 0);
		transform: translate3d(0, -2000px, 0);
	}
}

@-webkit-keyframes fadeOutTopLeft {
	0% {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-100%, -100%, 0);
		transform: translate3d(-100%, -100%, 0);
	}
}

@keyframes fadeOutTopLeft {
	0% {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-100%, -100%, 0);
		transform: translate3d(-100%, -100%, 0);
	}
}

@-webkit-keyframes fadeOutTopRight {
	0% {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, -100%, 0);
		transform: translate3d(100%, -100%, 0);
	}
}

@keyframes fadeOutTopRight {
	0% {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, -100%, 0);
		transform: translate3d(100%, -100%, 0);
	}
}

@-webkit-keyframes fadeOutBottomRight {
	0% {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, 100%, 0);
		transform: translate3d(100%, 100%, 0);
	}
}

@keyframes fadeOutBottomRight {
	0% {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, 100%, 0);
		transform: translate3d(100%, 100%, 0);
	}
}

@-webkit-keyframes fadeOutBottomLeft {
	0% {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 100%, 0);
		transform: translate3d(-100%, 100%, 0);
	}
}

@keyframes fadeOutBottomLeft {
	0% {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 100%, 0);
		transform: translate3d(-100%, 100%, 0);
	}
}

@-webkit-keyframes flip {
	0% {
		-webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
		transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	
	40% {
		-webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
		transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	
	50% {
		-webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
		transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	
	80% {
		-webkit-transform: perspective(400px) scale3d(.95, .95, .95) translateZ(0) rotateY(0deg);
		transform: perspective(400px) scale3d(.95, .95, .95) translateZ(0) rotateY(0deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	
	to {
		-webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
		transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
}

@keyframes flip {
	0% {
		-webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
		transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	
	40% {
		-webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
		transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	
	50% {
		-webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
		transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	
	80% {
		-webkit-transform: perspective(400px) scale3d(.95, .95, .95) translateZ(0) rotateY(0deg);
		transform: perspective(400px) scale3d(.95, .95, .95) translateZ(0) rotateY(0deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	
	to {
		-webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
		transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
}

@-webkit-keyframes flipInX {
	0% {
		-webkit-transform: perspective(400px) rotateX(90deg);
		transform: perspective(400px) rotateX(90deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		opacity: 0;
	}
	
	40% {
		-webkit-transform: perspective(400px) rotateX(-20deg);
		transform: perspective(400px) rotateX(-20deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	
	60% {
		-webkit-transform: perspective(400px) rotateX(10deg);
		transform: perspective(400px) rotateX(10deg);
		opacity: 1;
	}
	
	80% {
		-webkit-transform: perspective(400px) rotateX(-5deg);
		transform: perspective(400px) rotateX(-5deg);
	}
	
	to {
		-webkit-transform: perspective(400px);
		transform: perspective(400px);
	}
}

@keyframes flipInX {
	0% {
		-webkit-transform: perspective(400px) rotateX(90deg);
		transform: perspective(400px) rotateX(90deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		opacity: 0;
	}
	
	40% {
		-webkit-transform: perspective(400px) rotateX(-20deg);
		transform: perspective(400px) rotateX(-20deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	
	60% {
		-webkit-transform: perspective(400px) rotateX(10deg);
		transform: perspective(400px) rotateX(10deg);
		opacity: 1;
	}
	
	80% {
		-webkit-transform: perspective(400px) rotateX(-5deg);
		transform: perspective(400px) rotateX(-5deg);
	}
	
	to {
		-webkit-transform: perspective(400px);
		transform: perspective(400px);
	}
}

@-webkit-keyframes flipInY {
	0% {
		-webkit-transform: perspective(400px) rotateY(90deg);
		transform: perspective(400px) rotateY(90deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		opacity: 0;
	}
	
	40% {
		-webkit-transform: perspective(400px) rotateY(-20deg);
		transform: perspective(400px) rotateY(-20deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	
	60% {
		-webkit-transform: perspective(400px) rotateY(10deg);
		transform: perspective(400px) rotateY(10deg);
		opacity: 1;
	}
	
	80% {
		-webkit-transform: perspective(400px) rotateY(-5deg);
		transform: perspective(400px) rotateY(-5deg);
	}
	
	to {
		-webkit-transform: perspective(400px);
		transform: perspective(400px);
	}
}

@keyframes flipInY {
	0% {
		-webkit-transform: perspective(400px) rotateY(90deg);
		transform: perspective(400px) rotateY(90deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		opacity: 0;
	}
	
	40% {
		-webkit-transform: perspective(400px) rotateY(-20deg);
		transform: perspective(400px) rotateY(-20deg);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	
	60% {
		-webkit-transform: perspective(400px) rotateY(10deg);
		transform: perspective(400px) rotateY(10deg);
		opacity: 1;
	}
	
	80% {
		-webkit-transform: perspective(400px) rotateY(-5deg);
		transform: perspective(400px) rotateY(-5deg);
	}
	
	to {
		-webkit-transform: perspective(400px);
		transform: perspective(400px);
	}
}

@-webkit-keyframes flipOutX {
	0% {
		-webkit-transform: perspective(400px);
		transform: perspective(400px);
	}
	
	30% {
		-webkit-transform: perspective(400px) rotateX(-20deg);
		transform: perspective(400px) rotateX(-20deg);
		opacity: 1;
	}
	
	to {
		-webkit-transform: perspective(400px) rotateX(90deg);
		transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
}

@keyframes flipOutX {
	0% {
		-webkit-transform: perspective(400px);
		transform: perspective(400px);
	}
	
	30% {
		-webkit-transform: perspective(400px) rotateX(-20deg);
		transform: perspective(400px) rotateX(-20deg);
		opacity: 1;
	}
	
	to {
		-webkit-transform: perspective(400px) rotateX(90deg);
		transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
}

@-webkit-keyframes flipOutY {
	0% {
		-webkit-transform: perspective(400px);
		transform: perspective(400px);
	}
	
	30% {
		-webkit-transform: perspective(400px) rotateY(-15deg);
		transform: perspective(400px) rotateY(-15deg);
		opacity: 1;
	}
	
	to {
		-webkit-transform: perspective(400px) rotateY(90deg);
		transform: perspective(400px) rotateY(90deg);
		opacity: 0;
	}
}

@keyframes flipOutY {
	0% {
		-webkit-transform: perspective(400px);
		transform: perspective(400px);
	}
	
	30% {
		-webkit-transform: perspective(400px) rotateY(-15deg);
		transform: perspective(400px) rotateY(-15deg);
		opacity: 1;
	}
	
	to {
		-webkit-transform: perspective(400px) rotateY(90deg);
		transform: perspective(400px) rotateY(90deg);
		opacity: 0;
	}
}

@-webkit-keyframes lightSpeedInRight {
	0% {
		-webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
		transform: translate3d(100%, 0, 0) skewX(-30deg);
		opacity: 0;
	}
	
	60% {
		-webkit-transform: skewX(20deg);
		transform: skewX(20deg);
		opacity: 1;
	}
	
	80% {
		-webkit-transform: skewX(-5deg);
		transform: skewX(-5deg);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes lightSpeedInRight {
	0% {
		-webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
		transform: translate3d(100%, 0, 0) skewX(-30deg);
		opacity: 0;
	}
	
	60% {
		-webkit-transform: skewX(20deg);
		transform: skewX(20deg);
		opacity: 1;
	}
	
	80% {
		-webkit-transform: skewX(-5deg);
		transform: skewX(-5deg);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes lightSpeedInLeft {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
		transform: translate3d(-100%, 0, 0) skewX(30deg);
		opacity: 0;
	}
	
	60% {
		-webkit-transform: skewX(-20deg);
		transform: skewX(-20deg);
		opacity: 1;
	}
	
	80% {
		-webkit-transform: skewX(5deg);
		transform: skewX(5deg);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes lightSpeedInLeft {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
		transform: translate3d(-100%, 0, 0) skewX(30deg);
		opacity: 0;
	}
	
	60% {
		-webkit-transform: skewX(-20deg);
		transform: skewX(-20deg);
		opacity: 1;
	}
	
	80% {
		-webkit-transform: skewX(5deg);
		transform: skewX(5deg);
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes lightSpeedOutRight {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
		transform: translate3d(100%, 0, 0) skewX(30deg);
		opacity: 0;
	}
}

@keyframes lightSpeedOutRight {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
		transform: translate3d(100%, 0, 0) skewX(30deg);
		opacity: 0;
	}
}

@-webkit-keyframes lightSpeedOutLeft {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: translate3d(-100%, 0, 0) skewX(-30deg);
		transform: translate3d(-100%, 0, 0) skewX(-30deg);
		opacity: 0;
	}
}

@keyframes lightSpeedOutLeft {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: translate3d(-100%, 0, 0) skewX(-30deg);
		transform: translate3d(-100%, 0, 0) skewX(-30deg);
		opacity: 0;
	}
}

@-webkit-keyframes rotateIn {
	0% {
		-webkit-transform: rotate(-200deg);
		transform: rotate(-200deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@keyframes rotateIn {
	0% {
		-webkit-transform: rotate(-200deg);
		transform: rotate(-200deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@-webkit-keyframes rotateInDownLeft {
	0% {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@keyframes rotateInDownLeft {
	0% {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@-webkit-keyframes rotateInDownRight {
	0% {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@keyframes rotateInDownRight {
	0% {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@-webkit-keyframes rotateInUpLeft {
	0% {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@keyframes rotateInUpLeft {
	0% {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@-webkit-keyframes rotateInUpRight {
	0% {
		-webkit-transform: rotate(-90deg);
		transform: rotate(-90deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@keyframes rotateInUpRight {
	0% {
		-webkit-transform: rotate(-90deg);
		transform: rotate(-90deg);
		opacity: 0;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		opacity: 1;
	}
}

@-webkit-keyframes rotateOut {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(200deg);
		transform: rotate(200deg);
		opacity: 0;
	}
}

@keyframes rotateOut {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(200deg);
		transform: rotate(200deg);
		opacity: 0;
	}
}

@-webkit-keyframes rotateOutDownLeft {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		opacity: 0;
	}
}

@keyframes rotateOutDownLeft {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		opacity: 0;
	}
}

@-webkit-keyframes rotateOutDownRight {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		opacity: 0;
	}
}

@keyframes rotateOutDownRight {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		opacity: 0;
	}
}

@-webkit-keyframes rotateOutUpLeft {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		opacity: 0;
	}
}

@keyframes rotateOutUpLeft {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		opacity: 0;
	}
}

@-webkit-keyframes rotateOutUpRight {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		opacity: 0;
	}
}

@keyframes rotateOutUpRight {
	0% {
		opacity: 1;
	}
	
	to {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		opacity: 0;
	}
}

@-webkit-keyframes hinge {
	0% {
		-webkit-animation-timing-function: ease-in-out;
		animation-timing-function: ease-in-out;
	}
	
	20%, 60% {
		-webkit-transform: rotate(80deg);
		transform: rotate(80deg);
		-webkit-animation-timing-function: ease-in-out;
		animation-timing-function: ease-in-out;
	}
	
	40%, 80% {
		-webkit-transform: rotate(60deg);
		transform: rotate(60deg);
		-webkit-animation-timing-function: ease-in-out;
		animation-timing-function: ease-in-out;
		opacity: 1;
	}
	
	to {
		-webkit-transform: translate3d(0, 700px, 0);
		transform: translate3d(0, 700px, 0);
		opacity: 0;
	}
}

@keyframes hinge {
	0% {
		-webkit-animation-timing-function: ease-in-out;
		animation-timing-function: ease-in-out;
	}
	
	20%, 60% {
		-webkit-transform: rotate(80deg);
		transform: rotate(80deg);
		-webkit-animation-timing-function: ease-in-out;
		animation-timing-function: ease-in-out;
	}
	
	40%, 80% {
		-webkit-transform: rotate(60deg);
		transform: rotate(60deg);
		-webkit-animation-timing-function: ease-in-out;
		animation-timing-function: ease-in-out;
		opacity: 1;
	}
	
	to {
		-webkit-transform: translate3d(0, 700px, 0);
		transform: translate3d(0, 700px, 0);
		opacity: 0;
	}
}

@-webkit-keyframes jackInTheBox {
	0% {
		opacity: 0;
		-webkit-transform: scale(.1) rotate(30deg);
		transform: scale(.1) rotate(30deg);
		-webkit-transform-origin: center bottom;
		transform-origin: center bottom;
	}
	
	50% {
		-webkit-transform: rotate(-10deg);
		transform: rotate(-10deg);
	}
	
	70% {
		-webkit-transform: rotate(3deg);
		transform: rotate(3deg);
	}
	
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

@keyframes jackInTheBox {
	0% {
		opacity: 0;
		-webkit-transform: scale(.1) rotate(30deg);
		transform: scale(.1) rotate(30deg);
		-webkit-transform-origin: center bottom;
		transform-origin: center bottom;
	}
	
	50% {
		-webkit-transform: rotate(-10deg);
		transform: rotate(-10deg);
	}
	
	70% {
		-webkit-transform: rotate(3deg);
		transform: rotate(3deg);
	}
	
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

@-webkit-keyframes rollIn {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
		transform: translate3d(-100%, 0, 0) rotate(-120deg);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes rollIn {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
		transform: translate3d(-100%, 0, 0) rotate(-120deg);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes rollOut {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
		transform: translate3d(100%, 0, 0) rotate(120deg);
	}
}

@keyframes rollOut {
	0% {
		opacity: 1;
	}
	
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
		transform: translate3d(100%, 0, 0) rotate(120deg);
	}
}

@-webkit-keyframes zoomIn {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3);
	}
	
	50% {
		opacity: 1;
	}
}

@keyframes zoomIn {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3);
	}
	
	50% {
		opacity: 1;
	}
}

@-webkit-keyframes zoomInDown {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
		transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
		transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@keyframes zoomInDown {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
		transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
		transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@-webkit-keyframes zoomInLeft {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
		transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
		transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@keyframes zoomInLeft {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
		transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
		transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@-webkit-keyframes zoomInRight {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
		transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
		transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@keyframes zoomInRight {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
		transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
		transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@-webkit-keyframes zoomInUp {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
		transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
		transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@keyframes zoomInUp {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
		transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
		transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@-webkit-keyframes zoomOut {
	0% {
		opacity: 1;
	}
	
	50% {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3);
	}
	
	to {
		opacity: 0;
	}
}

@keyframes zoomOut {
	0% {
		opacity: 1;
	}
	
	50% {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3);
	}
	
	to {
		opacity: 0;
	}
}

@-webkit-keyframes zoomOutDown {
	40% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
		transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
		transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@keyframes zoomOutDown {
	40% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
		transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
		transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@-webkit-keyframes zoomOutLeft {
	40% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
		transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
		transform: scale(.1) translate3d(-2000px, 0, 0);
	}
}

@keyframes zoomOutLeft {
	40% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
		transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
		transform: scale(.1) translate3d(-2000px, 0, 0);
	}
}

@-webkit-keyframes zoomOutRight {
	40% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
		transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale(.1) translate3d(2000px, 0, 0);
		transform: scale(.1) translate3d(2000px, 0, 0);
	}
}

@keyframes zoomOutRight {
	40% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
		transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale(.1) translate3d(2000px, 0, 0);
		transform: scale(.1) translate3d(2000px, 0, 0);
	}
}

@-webkit-keyframes zoomOutUp {
	40% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
		transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
		transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@keyframes zoomOutUp {
	40% {
		opacity: 1;
		-webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
		transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
		-webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
		animation-timing-function: cubic-bezier(.55, .055, .675, .19);
	}
	
	to {
		opacity: 0;
		-webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
		transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1);
	}
}

@-webkit-keyframes slideInDown {
	0% {
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
		visibility: visible;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes slideInDown {
	0% {
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
		visibility: visible;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes slideInLeft {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		visibility: visible;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes slideInLeft {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		visibility: visible;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes slideInRight {
	0% {
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
		visibility: visible;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes slideInRight {
	0% {
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
		visibility: visible;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes slideInUp {
	0% {
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
		visibility: visible;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@keyframes slideInUp {
	0% {
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
		visibility: visible;
	}
	
	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
}

@-webkit-keyframes slideOutDown {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		visibility: hidden;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
	}
}

@keyframes slideOutDown {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		visibility: hidden;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
	}
}

@-webkit-keyframes slideOutLeft {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		visibility: hidden;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}

@keyframes slideOutLeft {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		visibility: hidden;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}

@-webkit-keyframes slideOutRight {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		visibility: hidden;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
}

@keyframes slideOutRight {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		visibility: hidden;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
}

@-webkit-keyframes slideOutUp {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		visibility: hidden;
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
	}
}

@keyframes slideOutUp {
	0% {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}
	
	to {
		visibility: hidden;
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
	}
}