@if $object-animations != false and $ui != true {

	/*!
	Animate.css - http://daneden.me/animate
	Licensed under the MIT license

	Copyright (c) 2013 Daniel Eden

	Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

	The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

	THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
	*/

	.animated {
		-webkit-animation-duration: 1s;
		animation-duration: 1s;
		-webkit-animation-fill-mode: both;
		animation-fill-mode: both;
	}

	.animated.hinge {
		-webkit-animation-duration: 2s;
		animation-duration: 2s;
	}

	.animated.height {
		@include transition(height .5s);
	}

	.animated.width {
		@include transition(width .5s);
	}

	@-webkit-keyframes bounce {
		0%, 20%, 50%, 80%, 100% {
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}

		40% {
			-webkit-transform: translateY(-30px);
			transform: translateY(-30px);
		}

		60% {
			-webkit-transform: translateY(-15px);
			transform: translateY(-15px);
		}
	}

	@keyframes bounce {
		0%, 20%, 50%, 80%, 100% {
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}

		40% {
			-webkit-transform: translateY(-30px);
			-ms-transform: translateY(-30px);
			transform: translateY(-30px);
		}

		60% {
			-webkit-transform: translateY(-15px);
			-ms-transform: translateY(-15px);
			transform: translateY(-15px);
		}
	}

	.bounce {
		-webkit-animation-name: bounce;
		animation-name: bounce;
	}

	@-webkit-keyframes flash {
		0%, 50%, 100% {
			opacity: 1;
		}

		25%, 75% {
			opacity: 0;
		}
	}

	@keyframes flash {
		0%, 50%, 100% {
			opacity: 1;
		}

		25%, 75% {
			opacity: 0;
		}
	}

	.flash {
		-webkit-animation-name: flash;
		animation-name: flash;
	}

	/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

	@-webkit-keyframes pulse {
		0% {
			-webkit-transform: scale(1);
			transform: scale(1);
		}

		50% {
			-webkit-transform: scale(1.1);
			transform: scale(1.1);
		}

		100% {
			-webkit-transform: scale(1);
			transform: scale(1);
		}
	}

	@keyframes pulse {
		0% {
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}

		50% {
			-webkit-transform: scale(1.1);
			-ms-transform: scale(1.1);
			transform: scale(1.1);
		}

		100% {
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}
	}

	.pulse {
		-webkit-animation-name: pulse;
		animation-name: pulse;
	}

	@-webkit-keyframes rubberband {
		0% {
			-webkit-transform: scale(1);
			transform: scale(1);
		}

		30% {
			-webkit-transform: scaleX(1.25) scaleY(0.75);
			transform: scaleX(1.25) scaleY(0.75);
		}

		40% {
			-webkit-transform: scaleX(0.75) scaleY(1.25);
			transform: scaleX(0.75) scaleY(1.25);
		}

		60% {
			-webkit-transform: scaleX(1.15) scaleY(0.85);
			transform: scaleX(1.15) scaleY(0.85);
		}

		100% {
			-webkit-transform: scale(1);
			transform: scale(1);
		}
	}

	@keyframes rubberband {
		0% {
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}

		30% {
			-webkit-transform: scaleX(1.25) scaleY(0.75);
			-ms-transform: scaleX(1.25) scaleY(0.75);
			transform: scaleX(1.25) scaleY(0.75);
		}

		40% {
			-webkit-transform: scaleX(0.75) scaleY(1.25);
			-ms-transform: scaleX(0.75) scaleY(1.25);
			transform: scaleX(0.75) scaleY(1.25);
		}

		60% {
			-webkit-transform: scaleX(1.15) scaleY(0.85);
			-ms-transform: scaleX(1.15) scaleY(0.85);
			transform: scaleX(1.15) scaleY(0.85);
		}

		100% {
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}
	}

	.rubberband {
		-webkit-animation-name: rubberband;
		animation-name: rubberband;
	}

	@-webkit-keyframes shake {
		0%, 100% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		10%, 30%, 50%, 70%, 90% {
			-webkit-transform: translateX(-10px);
			transform: translateX(-10px);
		}

		20%, 40%, 60%, 80% {
			-webkit-transform: translateX(10px);
			transform: translateX(10px);
		}
	}

	@keyframes shake {
		0%, 100% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		10%, 30%, 50%, 70%, 90% {
			-webkit-transform: translateX(-10px);
			-ms-transform: translateX(-10px);
			transform: translateX(-10px);
		}

		20%, 40%, 60%, 80% {
			-webkit-transform: translateX(10px);
			-ms-transform: translateX(10px);
			transform: translateX(10px);
		}
	}

	.shake {
		-webkit-animation-name: shake;
		animation-name: shake;
	}

	@-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);
		}

		100% {
			-webkit-transform: rotate(0deg);
			transform: rotate(0deg);
		}
	}

	@keyframes swing {
		20% {
			-webkit-transform: rotate(15deg);
			-ms-transform: rotate(15deg);
			transform: rotate(15deg);
		}

		40% {
			-webkit-transform: rotate(-10deg);
			-ms-transform: rotate(-10deg);
			transform: rotate(-10deg);
		}

		60% {
			-webkit-transform: rotate(5deg);
			-ms-transform: rotate(5deg);
			transform: rotate(5deg);
		}

		80% {
			-webkit-transform: rotate(-5deg);
			-ms-transform: rotate(-5deg);
			transform: rotate(-5deg);
		}

		100% {
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}
	}

	.swing {
		-webkit-transform-origin: top center;
		-ms-transform-origin: top center;
		transform-origin: top center;
		-webkit-animation-name: swing;
		animation-name: swing;
	}

	@-webkit-keyframes tada {
		0% {
			-webkit-transform: scale(1);
			transform: scale(1);
		}

		10%, 20% {
			-webkit-transform: scale(0.9) rotate(-3deg);
			transform: scale(0.9) rotate(-3deg);
		}

		30%, 50%, 70%, 90% {
			-webkit-transform: scale(1.1) rotate(3deg);
			transform: scale(1.1) rotate(3deg);
		}

		40%, 60%, 80% {
			-webkit-transform: scale(1.1) rotate(-3deg);
			transform: scale(1.1) rotate(-3deg);
		}

		100% {
			-webkit-transform: scale(1) rotate(0);
			transform: scale(1) rotate(0);
		}
	}

	@keyframes tada {
		0% {
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}

		10%, 20% {
			-webkit-transform: scale(0.9) rotate(-3deg);
			-ms-transform: scale(0.9) rotate(-3deg);
			transform: scale(0.9) rotate(-3deg);
		}

		30%, 50%, 70%, 90% {
			-webkit-transform: scale(1.1) rotate(3deg);
			-ms-transform: scale(1.1) rotate(3deg);
			transform: scale(1.1) rotate(3deg);
		}

		40%, 60%, 80% {
			-webkit-transform: scale(1.1) rotate(-3deg);
			-ms-transform: scale(1.1) rotate(-3deg);
			transform: scale(1.1) rotate(-3deg);
		}

		100% {
			-webkit-transform: scale(1) rotate(0);
			-ms-transform: scale(1) rotate(0);
			transform: scale(1) rotate(0);
		}
	}

	.tada {
		-webkit-animation-name: tada;
		animation-name: tada;
	}

	/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

	@-webkit-keyframes wobble {
		0% {
			-webkit-transform: translateX(0%);
			transform: translateX(0%);
		}

		15% {
			-webkit-transform: translateX(-25%) rotate(-5deg);
			transform: translateX(-25%) rotate(-5deg);
		}

		30% {
			-webkit-transform: translateX(20%) rotate(3deg);
			transform: translateX(20%) rotate(3deg);
		}

		45% {
			-webkit-transform: translateX(-15%) rotate(-3deg);
			transform: translateX(-15%) rotate(-3deg);
		}

		60% {
			-webkit-transform: translateX(10%) rotate(2deg);
			transform: translateX(10%) rotate(2deg);
		}

		75% {
			-webkit-transform: translateX(-5%) rotate(-1deg);
			transform: translateX(-5%) rotate(-1deg);
		}

		100% {
			-webkit-transform: translateX(0%);
			transform: translateX(0%);
		}
	}

	@keyframes wobble {
		0% {
			-webkit-transform: translateX(0%);
			-ms-transform: translateX(0%);
			transform: translateX(0%);
		}

		15% {
			-webkit-transform: translateX(-25%) rotate(-5deg);
			-ms-transform: translateX(-25%) rotate(-5deg);
			transform: translateX(-25%) rotate(-5deg);
		}

		30% {
			-webkit-transform: translateX(20%) rotate(3deg);
			-ms-transform: translateX(20%) rotate(3deg);
			transform: translateX(20%) rotate(3deg);
		}

		45% {
			-webkit-transform: translateX(-15%) rotate(-3deg);
			-ms-transform: translateX(-15%) rotate(-3deg);
			transform: translateX(-15%) rotate(-3deg);
		}

		60% {
			-webkit-transform: translateX(10%) rotate(2deg);
			-ms-transform: translateX(10%) rotate(2deg);
			transform: translateX(10%) rotate(2deg);
		}

		75% {
			-webkit-transform: translateX(-5%) rotate(-1deg);
			-ms-transform: translateX(-5%) rotate(-1deg);
			transform: translateX(-5%) rotate(-1deg);
		}

		100% {
			-webkit-transform: translateX(0%);
			-ms-transform: translateX(0%);
			transform: translateX(0%);
		}
	}

	.wobble {
		-webkit-animation-name: wobble;
		animation-name: wobble;
	}

	@-webkit-keyframes bounce-in {
		0% {
			opacity: 0;
			-webkit-transform: scale(.3);
			transform: scale(.3);
		}

		50% {
			opacity: 1;
			-webkit-transform: scale(1.05);
			transform: scale(1.05);
		}

		70% {
			-webkit-transform: scale(.9);
			transform: scale(.9);
		}

		100% {
			opacity: 1;
			-webkit-transform: scale(1);
			transform: scale(1);
		}
	}

	@keyframes bounce-in {
		0% {
			opacity: 0;
			-webkit-transform: scale(.3);
			-ms-transform: scale(.3);
			transform: scale(.3);
		}

		50% {
			opacity: 1;
			-webkit-transform: scale(1.05);
			-ms-transform: scale(1.05);
			transform: scale(1.05);
		}

		70% {
			-webkit-transform: scale(.9);
			-ms-transform: scale(.9);
			transform: scale(.9);
		}

		100% {
			opacity: 1;
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}
	}

	.bounce-in {
		-webkit-animation-name: bounce-in;
		animation-name: bounce-in;
	}

	@-webkit-keyframes bounce-in-down {
		0% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}

		60% {
			opacity: 1;
			-webkit-transform: translateY(30px);
			transform: translateY(30px);
		}

		80% {
			-webkit-transform: translateY(-10px);
			transform: translateY(-10px);
		}

		100% {
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}
	}

	@keyframes bounce-in-down {
		0% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			-ms-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}

		60% {
			opacity: 1;
			-webkit-transform: translateY(30px);
			-ms-transform: translateY(30px);
			transform: translateY(30px);
		}

		80% {
			-webkit-transform: translateY(-10px);
			-ms-transform: translateY(-10px);
			transform: translateY(-10px);
		}

		100% {
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}
	}

	.bounce-in-down {
		-webkit-animation-name: bounce-in-down;
		animation-name: bounce-in-down;
	}

	@-webkit-keyframes bounce-in-left {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}

		60% {
			opacity: 1;
			-webkit-transform: translateX(30px);
			transform: translateX(30px);
		}

		80% {
			-webkit-transform: translateX(-10px);
			transform: translateX(-10px);
		}

		100% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}
	}

	@keyframes bounce-in-left {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			-ms-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}

		60% {
			opacity: 1;
			-webkit-transform: translateX(30px);
			-ms-transform: translateX(30px);
			transform: translateX(30px);
		}

		80% {
			-webkit-transform: translateX(-10px);
			-ms-transform: translateX(-10px);
			transform: translateX(-10px);
		}

		100% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}
	}

	.bounce-in-left {
		-webkit-animation-name: bounce-in-left;
		animation-name: bounce-in-left;
	}

	@-webkit-keyframes bounce-in-right {
		0% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			transform: translateX(2000px);
		}

		60% {
			opacity: 1;
			-webkit-transform: translateX(-30px);
			transform: translateX(-30px);
		}

		80% {
			-webkit-transform: translateX(10px);
			transform: translateX(10px);
		}

		100% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}
	}

	@keyframes bounce-in-right {
		0% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			-ms-transform: translateX(2000px);
			transform: translateX(2000px);
		}

		60% {
			opacity: 1;
			-webkit-transform: translateX(-30px);
			-ms-transform: translateX(-30px);
			transform: translateX(-30px);
		}

		80% {
			-webkit-transform: translateX(10px);
			-ms-transform: translateX(10px);
			transform: translateX(10px);
		}

		100% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}
	}

	.bounce-in-right {
		-webkit-animation-name: bounce-in-right;
		animation-name: bounce-in-right;
	}

	@-webkit-keyframes bounce-in-up {
		0% {
			opacity: 0;
			-webkit-transform: translateY(2000px);
			transform: translateY(2000px);
		}

		60% {
			opacity: 1;
			-webkit-transform: translateY(-30px);
			transform: translateY(-30px);
		}

		80% {
			-webkit-transform: translateY(10px);
			transform: translateY(10px);
		}

		100% {
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}
	}

	@keyframes bounce-in-up {
		0% {
			opacity: 0;
			-webkit-transform: translateY(2000px);
			-ms-transform: translateY(2000px);
			transform: translateY(2000px);
		}

		60% {
			opacity: 1;
			-webkit-transform: translateY(-30px);
			-ms-transform: translateY(-30px);
			transform: translateY(-30px);
		}

		80% {
			-webkit-transform: translateY(10px);
			-ms-transform: translateY(10px);
			transform: translateY(10px);
		}

		100% {
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}
	}

	.bounce-in-up {
		-webkit-animation-name: bounce-in-up;
		animation-name: bounce-in-up;
	}

	@-webkit-keyframes bounce-out {
		0% {
			-webkit-transform: scale(1);
			transform: scale(1);
		}

		25% {
			-webkit-transform: scale(.95);
			transform: scale(.95);
		}

		50% {
			opacity: 1;
			-webkit-transform: scale(1.1);
			transform: scale(1.1);
		}

		100% {
			opacity: 0;
			-webkit-transform: scale(.3);
			transform: scale(.3);
		}
	}

	@keyframes bounce-out {
		0% {
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}

		25% {
			-webkit-transform: scale(.95);
			-ms-transform: scale(.95);
			transform: scale(.95);
		}

		50% {
			opacity: 1;
			-webkit-transform: scale(1.1);
			-ms-transform: scale(1.1);
			transform: scale(1.1);
		}

		100% {
			opacity: 0;
			-webkit-transform: scale(.3);
			-ms-transform: scale(.3);
			transform: scale(.3);
		}
	}

	.bounce-out {
		-webkit-animation-name: bounce-out;
		animation-name: bounce-out;
	}

	@-webkit-keyframes bounce-out-down {
		0% {
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}

		20% {
			opacity: 1;
			-webkit-transform: translateY(-20px);
			transform: translateY(-20px);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(2000px);
			transform: translateY(2000px);
		}
	}

	@keyframes bounce-out-down {
		0% {
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}

		20% {
			opacity: 1;
			-webkit-transform: translateY(-20px);
			-ms-transform: translateY(-20px);
			transform: translateY(-20px);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(2000px);
			-ms-transform: translateY(2000px);
			transform: translateY(2000px);
		}
	}

	.bounce-out-down {
		-webkit-animation-name: bounce-out-down;
		animation-name: bounce-out-down;
	}

	@-webkit-keyframes bounce-out-left {
		0% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		20% {
			opacity: 1;
			-webkit-transform: translateX(20px);
			transform: translateX(20px);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}
	}

	@keyframes bounce-out-left {
		0% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		20% {
			opacity: 1;
			-webkit-transform: translateX(20px);
			-ms-transform: translateX(20px);
			transform: translateX(20px);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			-ms-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}
	}

	.bounce-out-left {
		-webkit-animation-name: bounce-out-left;
		animation-name: bounce-out-left;
	}

	@-webkit-keyframes bounce-out-right {
		0% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		20% {
			opacity: 1;
			-webkit-transform: translateX(-20px);
			transform: translateX(-20px);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			transform: translateX(2000px);
		}
	}

	@keyframes bounce-out-right {
		0% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		20% {
			opacity: 1;
			-webkit-transform: translateX(-20px);
			-ms-transform: translateX(-20px);
			transform: translateX(-20px);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			-ms-transform: translateX(2000px);
			transform: translateX(2000px);
		}
	}

	.bounce-out-right {
		-webkit-animation-name: bounce-out-right;
		animation-name: bounce-out-right;
	}

	@-webkit-keyframes bounce-out-up {
		0% {
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}

		20% {
			opacity: 1;
			-webkit-transform: translateY(20px);
			transform: translateY(20px);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}
	}

	@keyframes bounce-out-up {
		0% {
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}

		20% {
			opacity: 1;
			-webkit-transform: translateY(20px);
			-ms-transform: translateY(20px);
			transform: translateY(20px);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			-ms-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}
	}

	.bounce-out-up {
		-webkit-animation-name: bounce-out-up;
		animation-name: bounce-out-up;
	}

	@-webkit-keyframes fade-in {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@keyframes fade-in {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	.fade-in {
		-webkit-animation-name: fade-in;
		animation-name: fade-in;
	}

	@-webkit-keyframes fade-in-down {
		0% {
			opacity: 0;
			-webkit-transform: translateY(-20px);
			transform: translateY(-20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}
	}

	@keyframes fade-in-down {
		0% {
			opacity: 0;
			-webkit-transform: translateY(-20px);
			-ms-transform: translateY(-20px);
			transform: translateY(-20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}
	}

	.fade-in-down {
		-webkit-animation-name: fade-in-down;
		animation-name: fade-in-down;
	}

	@-webkit-keyframes fade-in-downBig {
		0% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}
	}

	@keyframes fade-in-downBig {
		0% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			-ms-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}
	}

	.fade-in-downBig {
		-webkit-animation-name: fade-in-downBig;
		animation-name: fade-in-downBig;
	}

	@-webkit-keyframes fade-in-left {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-20px);
			transform: translateX(-20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}
	}

	@keyframes fade-in-left {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-20px);
			-ms-transform: translateX(-20px);
			transform: translateX(-20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}
	}

	.fade-in-left {
		-webkit-animation-name: fade-in-left;
		animation-name: fade-in-left;
	}

	@-webkit-keyframes fade-in-leftBig {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}
	}

	@keyframes fade-in-leftBig {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			-ms-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}
	}

	.fade-in-leftBig {
		-webkit-animation-name: fade-in-leftBig;
		animation-name: fade-in-leftBig;
	}

	@-webkit-keyframes fade-in-right {
		0% {
			opacity: 0;
			-webkit-transform: translateX(20px);
			transform: translateX(20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}
	}

	@keyframes fade-in-right {
		0% {
			opacity: 0;
			-webkit-transform: translateX(20px);
			-ms-transform: translateX(20px);
			transform: translateX(20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}
	}

	.fade-in-right {
		-webkit-animation-name: fade-in-right;
		animation-name: fade-in-right;
	}

	@-webkit-keyframes fade-in-rightBig {
		0% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			transform: translateX(2000px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}
	}

	@keyframes fade-in-rightBig {
		0% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			-ms-transform: translateX(2000px);
			transform: translateX(2000px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}
	}

	.fade-in-rightBig {
		-webkit-animation-name: fade-in-rightBig;
		animation-name: fade-in-rightBig;
	}

	@-webkit-keyframes fade-in-up {
		0% {
			opacity: 0;
			-webkit-transform: translateY(20px);
			transform: translateY(20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}
	}

	@keyframes fade-in-up {
		0% {
			opacity: 0;
			-webkit-transform: translateY(20px);
			-ms-transform: translateY(20px);
			transform: translateY(20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}
	}

	.fade-in-up {
		-webkit-animation-name: fade-in-up;
		animation-name: fade-in-up;
	}

	@-webkit-keyframes fade-in-upBig {
		0% {
			opacity: 0;
			-webkit-transform: translateY(2000px);
			transform: translateY(2000px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}
	}

	@keyframes fade-in-upBig {
		0% {
			opacity: 0;
			-webkit-transform: translateY(2000px);
			-ms-transform: translateY(2000px);
			transform: translateY(2000px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}
	}

	.fade-in-upBig {
		-webkit-animation-name: fade-in-upBig;
		animation-name: fade-in-upBig;
	}

	@-webkit-keyframes fade-out {
		0% {
			opacity: 1;
		}

		100% {
			opacity: 0;
		}
	}

	@keyframes fade-out {
		0% {
			opacity: 1;
		}

		100% {
			opacity: 0;
		}
	}

	.fade-out {
		-webkit-animation-name: fade-out;
		animation-name: fade-out;
	}

	@-webkit-keyframes fade-out-down {
		0% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(20px);
			transform: translateY(20px);
		}
	}

	@keyframes fade-out-down {
		0% {
			opacity: 1;
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(20px);
			-ms-transform: translateY(20px);
			transform: translateY(20px);
		}
	}

	.fade-out-down {
		-webkit-animation-name: fade-out-down;
		animation-name: fade-out-down;
	}

	@-webkit-keyframes fade-out-downBig {
		0% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(2000px);
			transform: translateY(2000px);
		}
	}

	@keyframes fade-out-downBig {
		0% {
			opacity: 1;
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(2000px);
			-ms-transform: translateY(2000px);
			transform: translateY(2000px);
		}
	}

	.fade-out-downBig {
		-webkit-animation-name: fade-out-downBig;
		animation-name: fade-out-downBig;
	}

	@-webkit-keyframes fade-out-left {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(-20px);
			transform: translateX(-20px);
		}
	}

	@keyframes fade-out-left {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(-20px);
			-ms-transform: translateX(-20px);
			transform: translateX(-20px);
		}
	}

	.fade-out-left {
		-webkit-animation-name: fade-out-left;
		animation-name: fade-out-left;
	}

	@-webkit-keyframes fade-out-leftBig {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}
	}

	@keyframes fade-out-leftBig {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			-ms-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}
	}

	.fade-out-leftBig {
		-webkit-animation-name: fade-out-leftBig;
		animation-name: fade-out-leftBig;
	}

	@-webkit-keyframes fade-out-right {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(20px);
			transform: translateX(20px);
		}
	}

	@keyframes fade-out-right {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(20px);
			-ms-transform: translateX(20px);
			transform: translateX(20px);
		}
	}

	.fade-out-right {
		-webkit-animation-name: fade-out-right;
		animation-name: fade-out-right;
	}

	@-webkit-keyframes fade-out-rightBig {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			transform: translateX(2000px);
		}
	}

	@keyframes fade-out-rightBig {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			-ms-transform: translateX(2000px);
			transform: translateX(2000px);
		}
	}

	.fade-out-rightBig {
		-webkit-animation-name: fade-out-rightBig;
		animation-name: fade-out-rightBig;
	}

	@-webkit-keyframes fade-out-up {
		0% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(-20px);
			transform: translateY(-20px);
		}
	}

	@keyframes fade-out-up {
		0% {
			opacity: 1;
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(-20px);
			-ms-transform: translateY(-20px);
			transform: translateY(-20px);
		}
	}

	.fade-out-up {
		-webkit-animation-name: fade-out-up;
		animation-name: fade-out-up;
	}

	@-webkit-keyframes fade-out-upBig {
		0% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}
	}

	@keyframes fade-out-upBig {
		0% {
			opacity: 1;
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			-ms-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}
	}

	.fade-out-upBig {
		-webkit-animation-name: fade-out-upBig;
		animation-name: fade-out-upBig;
	}

	@-webkit-keyframes flip {
		0% {
			-webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
			transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
			-webkit-animation-timing-function: ease-out;
			animation-timing-function: ease-out;
		}

		40% {
			-webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
			transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
			-webkit-animation-timing-function: ease-out;
			animation-timing-function: ease-out;
		}

		50% {
			-webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
			transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
			-webkit-animation-timing-function: ease-in;
			animation-timing-function: ease-in;
		}

		80% {
			-webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
			transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
			-webkit-animation-timing-function: ease-in;
			animation-timing-function: ease-in;
		}

		100% {
			-webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
			transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
			-webkit-animation-timing-function: ease-in;
			animation-timing-function: ease-in;
		}
	}

	@keyframes flip {
		0% {
			-webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
			-ms-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
			transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
			-webkit-animation-timing-function: ease-out;
			animation-timing-function: ease-out;
		}

		40% {
			-webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
			-ms-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
			transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
			-webkit-animation-timing-function: ease-out;
			animation-timing-function: ease-out;
		}

		50% {
			-webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
			-ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
			transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
			-webkit-animation-timing-function: ease-in;
			animation-timing-function: ease-in;
		}

		80% {
			-webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
			-ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
			transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
			-webkit-animation-timing-function: ease-in;
			animation-timing-function: ease-in;
		}

		100% {
			-webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
			-ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
			transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
			-webkit-animation-timing-function: ease-in;
			animation-timing-function: ease-in;
		}
	}

	.animated.flip {
		-webkit-backface-visibility: visible;
		-ms-backface-visibility: visible;
		backface-visibility: visible;
		-webkit-animation-name: flip;
		animation-name: flip;
	}

	@-webkit-keyframes flip-inX {
		0% {
			-webkit-transform: perspective(400px) rotateX(90deg);
			transform: perspective(400px) rotateX(90deg);
			opacity: 0;
		}

		40% {
			-webkit-transform: perspective(400px) rotateX(-10deg);
			transform: perspective(400px) rotateX(-10deg);
		}

		70% {
			-webkit-transform: perspective(400px) rotateX(10deg);
			transform: perspective(400px) rotateX(10deg);
		}

		100% {
			-webkit-transform: perspective(400px) rotateX(0deg);
			transform: perspective(400px) rotateX(0deg);
			opacity: 1;
		}
	}

	@keyframes flip-inX {
		0% {
			-webkit-transform: perspective(400px) rotateX(90deg);
			-ms-transform: perspective(400px) rotateX(90deg);
			transform: perspective(400px) rotateX(90deg);
			opacity: 0;
		}

		40% {
			-webkit-transform: perspective(400px) rotateX(-10deg);
			-ms-transform: perspective(400px) rotateX(-10deg);
			transform: perspective(400px) rotateX(-10deg);
		}

		70% {
			-webkit-transform: perspective(400px) rotateX(10deg);
			-ms-transform: perspective(400px) rotateX(10deg);
			transform: perspective(400px) rotateX(10deg);
		}

		100% {
			-webkit-transform: perspective(400px) rotateX(0deg);
			-ms-transform: perspective(400px) rotateX(0deg);
			transform: perspective(400px) rotateX(0deg);
			opacity: 1;
		}
	}

	.flip-inX {
		-webkit-backface-visibility: visible !important;
		-ms-backface-visibility: visible !important;
		backface-visibility: visible !important;
		-webkit-animation-name: flip-inX;
		animation-name: flip-inX;
	}

	@-webkit-keyframes flip-inY {
		0% {
			-webkit-transform: perspective(400px) rotateY(90deg);
			transform: perspective(400px) rotateY(90deg);
			opacity: 0;
		}

		40% {
			-webkit-transform: perspective(400px) rotateY(-10deg);
			transform: perspective(400px) rotateY(-10deg);
		}

		70% {
			-webkit-transform: perspective(400px) rotateY(10deg);
			transform: perspective(400px) rotateY(10deg);
		}

		100% {
			-webkit-transform: perspective(400px) rotateY(0deg);
			transform: perspective(400px) rotateY(0deg);
			opacity: 1;
		}
	}

	@keyframes flip-inY {
		0% {
			-webkit-transform: perspective(400px) rotateY(90deg);
			-ms-transform: perspective(400px) rotateY(90deg);
			transform: perspective(400px) rotateY(90deg);
			opacity: 0;
		}

		40% {
			-webkit-transform: perspective(400px) rotateY(-10deg);
			-ms-transform: perspective(400px) rotateY(-10deg);
			transform: perspective(400px) rotateY(-10deg);
		}

		70% {
			-webkit-transform: perspective(400px) rotateY(10deg);
			-ms-transform: perspective(400px) rotateY(10deg);
			transform: perspective(400px) rotateY(10deg);
		}

		100% {
			-webkit-transform: perspective(400px) rotateY(0deg);
			-ms-transform: perspective(400px) rotateY(0deg);
			transform: perspective(400px) rotateY(0deg);
			opacity: 1;
		}
	}

	.flip-inY {
		-webkit-backface-visibility: visible !important;
		-ms-backface-visibility: visible !important;
		backface-visibility: visible !important;
		-webkit-animation-name: flip-inY;
		animation-name: flip-inY;
	}

	@-webkit-keyframes flip-outX {
		0% {
			-webkit-transform: perspective(400px) rotateX(0deg);
			transform: perspective(400px) rotateX(0deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: perspective(400px) rotateX(90deg);
			transform: perspective(400px) rotateX(90deg);
			opacity: 0;
		}
	}

	@keyframes flip-outX {
		0% {
			-webkit-transform: perspective(400px) rotateX(0deg);
			-ms-transform: perspective(400px) rotateX(0deg);
			transform: perspective(400px) rotateX(0deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: perspective(400px) rotateX(90deg);
			-ms-transform: perspective(400px) rotateX(90deg);
			transform: perspective(400px) rotateX(90deg);
			opacity: 0;
		}
	}

	.flip-outX {
		-webkit-animation-name: flip-outX;
		animation-name: flip-outX;
		-webkit-backface-visibility: visible !important;
		-ms-backface-visibility: visible !important;
		backface-visibility: visible !important;
	}

	@-webkit-keyframes flip-outY {
		0% {
			-webkit-transform: perspective(400px) rotateY(0deg);
			transform: perspective(400px) rotateY(0deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: perspective(400px) rotateY(90deg);
			transform: perspective(400px) rotateY(90deg);
			opacity: 0;
		}
	}

	@keyframes flip-outY {
		0% {
			-webkit-transform: perspective(400px) rotateY(0deg);
			-ms-transform: perspective(400px) rotateY(0deg);
			transform: perspective(400px) rotateY(0deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: perspective(400px) rotateY(90deg);
			-ms-transform: perspective(400px) rotateY(90deg);
			transform: perspective(400px) rotateY(90deg);
			opacity: 0;
		}
	}

	.flip-outY {
		-webkit-backface-visibility: visible !important;
		-ms-backface-visibility: visible !important;
		backface-visibility: visible !important;
		-webkit-animation-name: flip-outY;
		animation-name: flip-outY;
	}

	@-webkit-keyframes lightSpeed-in {
		0% {
			-webkit-transform: translateX(100%) skewX(-30deg);
			transform: translateX(100%) skewX(-30deg);
			opacity: 0;
		}

		60% {
			-webkit-transform: translateX(-20%) skewX(30deg);
			transform: translateX(-20%) skewX(30deg);
			opacity: 1;
		}

		80% {
			-webkit-transform: translateX(0%) skewX(-15deg);
			transform: translateX(0%) skewX(-15deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: translateX(0%) skewX(0deg);
			transform: translateX(0%) skewX(0deg);
			opacity: 1;
		}
	}

	@keyframes lightSpeed-in {
		0% {
			-webkit-transform: translateX(100%) skewX(-30deg);
			-ms-transform: translateX(100%) skewX(-30deg);
			transform: translateX(100%) skewX(-30deg);
			opacity: 0;
		}

		60% {
			-webkit-transform: translateX(-20%) skewX(30deg);
			-ms-transform: translateX(-20%) skewX(30deg);
			transform: translateX(-20%) skewX(30deg);
			opacity: 1;
		}

		80% {
			-webkit-transform: translateX(0%) skewX(-15deg);
			-ms-transform: translateX(0%) skewX(-15deg);
			transform: translateX(0%) skewX(-15deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: translateX(0%) skewX(0deg);
			-ms-transform: translateX(0%) skewX(0deg);
			transform: translateX(0%) skewX(0deg);
			opacity: 1;
		}
	}

	.lightSpeed-in {
		-webkit-animation-name: lightSpeed-in;
		animation-name: lightSpeed-in;
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}

	@-webkit-keyframes lightSpeed-out {
		0% {
			-webkit-transform: translateX(0%) skewX(0deg);
			transform: translateX(0%) skewX(0deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: translateX(100%) skewX(-30deg);
			transform: translateX(100%) skewX(-30deg);
			opacity: 0;
		}
	}

	@keyframes lightSpeed-out {
		0% {
			-webkit-transform: translateX(0%) skewX(0deg);
			-ms-transform: translateX(0%) skewX(0deg);
			transform: translateX(0%) skewX(0deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: translateX(100%) skewX(-30deg);
			-ms-transform: translateX(100%) skewX(-30deg);
			transform: translateX(100%) skewX(-30deg);
			opacity: 0;
		}
	}

	.lightSpeed-out {
		-webkit-animation-name: lightSpeed-out;
		animation-name: lightSpeed-out;
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}

	@-webkit-keyframes rotate-in {
		0% {
			-webkit-transform-origin: center center;
			transform-origin: center center;
			-webkit-transform: rotate(-200deg);
			transform: rotate(-200deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: center center;
			transform-origin: center center;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	@keyframes rotate-in {
		0% {
			-webkit-transform-origin: center center;
			-ms-transform-origin: center center;
			transform-origin: center center;
			-webkit-transform: rotate(-200deg);
			-ms-transform: rotate(-200deg);
			transform: rotate(-200deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: center center;
			-ms-transform-origin: center center;
			transform-origin: center center;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	.rotate-in {
		-webkit-animation-name: rotate-in;
		animation-name: rotate-in;
	}

	@-webkit-keyframes rotate-in-down-left {
		0% {
			-webkit-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(-90deg);
			transform: rotate(-90deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	@keyframes rotate-in-down-left {
		0% {
			-webkit-transform-origin: left bottom;
			-ms-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(-90deg);
			-ms-transform: rotate(-90deg);
			transform: rotate(-90deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: left bottom;
			-ms-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	.rotate-in-down-left {
		-webkit-animation-name: rotate-in-down-left;
		animation-name: rotate-in-down-left;
	}

	@-webkit-keyframes rotate-in-down-right {
		0% {
			-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(90deg);
			transform: rotate(90deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	@keyframes rotate-in-down-right {
		0% {
			-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(90deg);
			-ms-transform: rotate(90deg);
			transform: rotate(90deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	.rotate-in-down-right {
		-webkit-animation-name: rotate-in-down-right;
		animation-name: rotate-in-down-right;
	}

	@-webkit-keyframes rotate-in-up-left {
		0% {
			-webkit-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(90deg);
			transform: rotate(90deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	@keyframes rotate-in-up-left {
		0% {
			-webkit-transform-origin: left bottom;
			-ms-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(90deg);
			-ms-transform: rotate(90deg);
			transform: rotate(90deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: left bottom;
			-ms-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	.rotate-in-up-left {
		-webkit-animation-name: rotate-in-up-left;
		animation-name: rotate-in-up-left;
	}

	@-webkit-keyframes rotate-in-up-right {
		0% {
			-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(-90deg);
			transform: rotate(-90deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	@keyframes rotate-in-up-right {
		0% {
			-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(-90deg);
			-ms-transform: rotate(-90deg);
			transform: rotate(-90deg);
			opacity: 0;
		}

		100% {
			-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}
	}

	.rotate-in-up-right {
		-webkit-animation-name: rotate-in-up-right;
		animation-name: rotate-in-up-right;
	}

	@-webkit-keyframes rotate-out {
		0% {
			-webkit-transform-origin: center center;
			transform-origin: center center;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: center center;
			transform-origin: center center;
			-webkit-transform: rotate(200deg);
			transform: rotate(200deg);
			opacity: 0;
		}
	}

	@keyframes rotate-out {
		0% {
			-webkit-transform-origin: center center;
			-ms-transform-origin: center center;
			transform-origin: center center;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: center center;
			-ms-transform-origin: center center;
			transform-origin: center center;
			-webkit-transform: rotate(200deg);
			-ms-transform: rotate(200deg);
			transform: rotate(200deg);
			opacity: 0;
		}
	}

	.rotate-out {
		-webkit-animation-name: rotate-out;
		animation-name: rotate-out;
	}

	@-webkit-keyframes rotate-out-down-left {
		0% {
			-webkit-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(90deg);
			transform: rotate(90deg);
			opacity: 0;
		}
	}

	@keyframes rotate-out-down-left {
		0% {
			-webkit-transform-origin: left bottom;
			-ms-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: left bottom;
			-ms-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(90deg);
			-ms-transform: rotate(90deg);
			transform: rotate(90deg);
			opacity: 0;
		}
	}

	.rotate-out-down-left {
		-webkit-animation-name: rotate-out-down-left;
		animation-name: rotate-out-down-left;
	}

	@-webkit-keyframes rotate-out-down-right {
		0% {
			-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(-90deg);
			transform: rotate(-90deg);
			opacity: 0;
		}
	}

	@keyframes rotate-out-down-right {
		0% {
			-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(-90deg);
			-ms-transform: rotate(-90deg);
			transform: rotate(-90deg);
			opacity: 0;
		}
	}

	.rotate-out-down-right {
		-webkit-animation-name: rotate-out-down-right;
		animation-name: rotate-out-down-right;
	}

	@-webkit-keyframes rotate-out-up-left {
		0% {
			-webkit-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(-90deg);
			transform: rotate(-90deg);
			opacity: 0;
		}
	}

	@keyframes rotate-out-up-left {
		0% {
			-webkit-transform-origin: left bottom;
			-ms-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: left bottom;
			-ms-transform-origin: left bottom;
			transform-origin: left bottom;
			-webkit-transform: rotate(-90deg);
			-ms-transform: rotate(-90deg);
			transform: rotate(-90deg);
			opacity: 0;
		}
	}

	.rotate-out-up-left {
		-webkit-animation-name: rotate-out-up-left;
		animation-name: rotate-out-up-left;
	}

	@-webkit-keyframes rotate-out-up-right {
		0% {
			-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(90deg);
			transform: rotate(90deg);
			opacity: 0;
		}
	}

	@keyframes rotate-out-up-right {
		0% {
			-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			opacity: 1;
		}

		100% {
			-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
			transform-origin: right bottom;
			-webkit-transform: rotate(90deg);
			-ms-transform: rotate(90deg);
			transform: rotate(90deg);
			opacity: 0;
		}
	}

	.rotate-out-up-right {
		-webkit-animation-name: rotate-out-up-right;
		animation-name: rotate-out-up-right;
	}

	@-webkit-keyframes slide-in-down {
		0% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}

		100% {
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}
	}

	@keyframes slide-in-down {
		0% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			-ms-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}

		100% {
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}
	}

	.slide-in-down {
		-webkit-animation-name: slide-in-down;
		animation-name: slide-in-down;
	}

	@-webkit-keyframes slide-in-left {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}

		100% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}
	}

	@keyframes slide-in-left {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			-ms-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}

		100% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}
	}

	.slide-in-left {
		-webkit-animation-name: slide-in-left;
		animation-name: slide-in-left;
	}

	@-webkit-keyframes slide-in-right {
		0% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			transform: translateX(2000px);
		}

		100% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}
	}

	@keyframes slide-in-right {
		0% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			-ms-transform: translateX(2000px);
			transform: translateX(2000px);
		}

		100% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}
	}

	.slide-in-right {
		-webkit-animation-name: slide-in-right;
		animation-name: slide-in-right;
	}

	@-webkit-keyframes slide-out-left {
		0% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}
	}

	@keyframes slide-out-left {
		0% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(-2000px);
			-ms-transform: translateX(-2000px);
			transform: translateX(-2000px);
		}
	}

	.slide-out-left {
		-webkit-animation-name: slide-out-left;
		animation-name: slide-out-left;
	}

	@-webkit-keyframes slide-out-right {
		0% {
			-webkit-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			transform: translateX(2000px);
		}
	}

	@keyframes slide-out-right {
		0% {
			-webkit-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(2000px);
			-ms-transform: translateX(2000px);
			transform: translateX(2000px);
		}
	}

	.slide-out-right {
		-webkit-animation-name: slide-out-right;
		animation-name: slide-out-right;
	}

	@-webkit-keyframes slide-out-up {
		0% {
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}
	}

	@keyframes slide-out-up {
		0% {
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateY(-2000px);
			-ms-transform: translateY(-2000px);
			transform: translateY(-2000px);
		}
	}

	.slide-out-up {
		-webkit-animation-name: slide-out-up;
		animation-name: slide-out-up;
	}

	@-webkit-keyframes hinge {
		0% {
			-webkit-transform: rotate(0);
			transform: rotate(0);
			-webkit-transform-origin: top left;
			transform-origin: top left;
			-webkit-animation-timing-function: ease-in-out;
			animation-timing-function: ease-in-out;
		}

		20%, 60% {
			-webkit-transform: rotate(80deg);
			transform: rotate(80deg);
			-webkit-transform-origin: top left;
			transform-origin: top left;
			-webkit-animation-timing-function: ease-in-out;
			animation-timing-function: ease-in-out;
		}

		40% {
			-webkit-transform: rotate(60deg);
			transform: rotate(60deg);
			-webkit-transform-origin: top left;
			transform-origin: top left;
			-webkit-animation-timing-function: ease-in-out;
			animation-timing-function: ease-in-out;
		}

		80% {
			-webkit-transform: rotate(60deg) translateY(0);
			transform: rotate(60deg) translateY(0);
			opacity: 1;
			-webkit-transform-origin: top left;
			transform-origin: top left;
			-webkit-animation-timing-function: ease-in-out;
			animation-timing-function: ease-in-out;
		}

		100% {
			-webkit-transform: translateY(700px);
			transform: translateY(700px);
			opacity: 0;
		}
	}

	@keyframes hinge {
		0% {
			-webkit-transform: rotate(0);
			-ms-transform: rotate(0);
			transform: rotate(0);
			-webkit-transform-origin: top left;
			-ms-transform-origin: top left;
			transform-origin: top left;
			-webkit-animation-timing-function: ease-in-out;
			animation-timing-function: ease-in-out;
		}

		20%, 60% {
			-webkit-transform: rotate(80deg);
			-ms-transform: rotate(80deg);
			transform: rotate(80deg);
			-webkit-transform-origin: top left;
			-ms-transform-origin: top left;
			transform-origin: top left;
			-webkit-animation-timing-function: ease-in-out;
			animation-timing-function: ease-in-out;
		}

		40% {
			-webkit-transform: rotate(60deg);
			-ms-transform: rotate(60deg);
			transform: rotate(60deg);
			-webkit-transform-origin: top left;
			-ms-transform-origin: top left;
			transform-origin: top left;
			-webkit-animation-timing-function: ease-in-out;
			animation-timing-function: ease-in-out;
		}

		80% {
			-webkit-transform: rotate(60deg) translateY(0);
			-ms-transform: rotate(60deg) translateY(0);
			transform: rotate(60deg) translateY(0);
			opacity: 1;
			-webkit-transform-origin: top left;
			-ms-transform-origin: top left;
			transform-origin: top left;
			-webkit-animation-timing-function: ease-in-out;
			animation-timing-function: ease-in-out;
		}

		100% {
			-webkit-transform: translateY(700px);
			-ms-transform: translateY(700px);
			transform: translateY(700px);
			opacity: 0;
		}
	}

	.hinge {
		-webkit-animation-name: hinge;
		animation-name: hinge;
	}

	/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

	@-webkit-keyframes roll-in {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-100%) rotate(-120deg);
			transform: translateX(-100%) rotate(-120deg);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0px) rotate(0deg);
			transform: translateX(0px) rotate(0deg);
		}
	}

	@keyframes roll-in {
		0% {
			opacity: 0;
			-webkit-transform: translateX(-100%) rotate(-120deg);
			-ms-transform: translateX(-100%) rotate(-120deg);
			transform: translateX(-100%) rotate(-120deg);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateX(0px) rotate(0deg);
			-ms-transform: translateX(0px) rotate(0deg);
			transform: translateX(0px) rotate(0deg);
		}
	}

	.roll-in {
		-webkit-animation-name: roll-in;
		animation-name: roll-in;
	}

	/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

	@-webkit-keyframes roll-out {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0px) rotate(0deg);
			transform: translateX(0px) rotate(0deg);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(100%) rotate(120deg);
			transform: translateX(100%) rotate(120deg);
		}
	}

	@keyframes roll-out {
		0% {
			opacity: 1;
			-webkit-transform: translateX(0px) rotate(0deg);
			-ms-transform: translateX(0px) rotate(0deg);
			transform: translateX(0px) rotate(0deg);
		}

		100% {
			opacity: 0;
			-webkit-transform: translateX(100%) rotate(120deg);
			-ms-transform: translateX(100%) rotate(120deg);
			transform: translateX(100%) rotate(120deg);
		}
	}

	.roll-out {
		-webkit-animation-name: roll-out;
		animation-name: roll-out;
	}

}