/* WRENCHING */
@-moz-keyframes wrench {
	0%{-moz-transform:rotate(-12deg)}
	8%{-moz-transform:rotate(12deg)}
	10%{-moz-transform:rotate(24deg)}
	18%{-moz-transform:rotate(-24deg)}
	20%{-moz-transform:rotate(-24deg)}
	28%{-moz-transform:rotate(24deg)}
	30%{-moz-transform:rotate(24deg)}
	38%{-moz-transform:rotate(-24deg)}
	40%{-moz-transform:rotate(-24deg)}
	48%{-moz-transform:rotate(24deg)}
	50%{-moz-transform:rotate(24deg)}
	58%{-moz-transform:rotate(-24deg)}
	60%{-moz-transform:rotate(-24deg)}
	68%{-moz-transform:rotate(24deg)}
	75%{-moz-transform:rotate(0deg)}
}
@-webkit-keyframes wrench {
	0%{-webkit-transform:rotate(-12deg)}
	8%{-webkit-transform:rotate(12deg)}
	10%{-webkit-transform:rotate(24deg)}
	18%{-webkit-transform:rotate(-24deg)}
	20%{-webkit-transform:rotate(-24deg)}
	28%{-webkit-transform:rotate(24deg)}
	30%{-webkit-transform:rotate(24deg)}
	38%{-webkit-transform:rotate(-24deg)}
	40%{-webkit-transform:rotate(-24deg)}
	48%{-webkit-transform:rotate(24deg)}
	50%{-webkit-transform:rotate(24deg)}
	58%{-webkit-transform:rotate(-24deg)}
	60%{-webkit-transform:rotate(-24deg)}
	68%{-webkit-transform:rotate(24deg)}
	75%{-webkit-transform:rotate(0deg)}
}
@-o-keyframes wrench {
	0%{-o-transform:rotate(-12deg)}
	8%{-o-transform:rotate(12deg)}
	10%{-o-transform:rotate(24deg)}
	18%{-o-transform:rotate(-24deg)}
	20%{-o-transform:rotate(-24deg)}
	28%{-o-transform:rotate(24deg)}
	30%{-o-transform:rotate(24deg)}
	38%{-o-transform:rotate(-24deg)}
	40%{-o-transform:rotate(-24deg)}
	48%{-o-transform:rotate(24deg)}
	50%{-o-transform:rotate(24deg)}
	58%{-o-transform:rotate(-24deg)}
	60%{-o-transform:rotate(-24deg)}
	68%{-o-transform:rotate(24deg)}
	75%{-o-transform:rotate(0deg)}
}
@-ms-keyframes wrench {
	0%{-ms-transform:rotate(-12deg)}
	8%{-ms-transform:rotate(12deg)}
	10%{-ms-transform:rotate(24deg)}
	18%{-ms-transform:rotate(-24deg)}
	20%{-ms-transform:rotate(-24deg)}
	28%{-ms-transform:rotate(24deg)}
	30%{-ms-transform:rotate(24deg)}
	38%{-ms-transform:rotate(-24deg)}
	40%{-ms-transform:rotate(-24deg)}
	48%{-ms-transform:rotate(24deg)}
	50%{-ms-transform:rotate(24deg)}
	58%{-ms-transform:rotate(-24deg)}
	60%{-ms-transform:rotate(-24deg)}
	68%{-ms-transform:rotate(24deg)}
	75%{-ms-transform:rotate(0deg)}
}
@keyframes wrench {
	0%{transform:rotate(-12deg)}
	8%{transform:rotate(12deg)}
	10%{transform:rotate(24deg)}
	18%{transform:rotate(-24deg)}
	20%{transform:rotate(-24deg)}
	28%{transform:rotate(24deg)}
	30%{transform:rotate(24deg)}
	38%{transform:rotate(-24deg)}
	40%{transform:rotate(-24deg)}
	48%{transform:rotate(24deg)}
	50%{transform:rotate(24deg)}
	58%{transform:rotate(-24deg)}
	60%{transform:rotate(-24deg)}
	68%{transform:rotate(24deg)}
	75%{transform:rotate(0deg)}
}
.faa-wrench.animated, .faa-wrench.animated-hover:hover {
	-moz-animation: wrench 2.5s ease infinite;
	-moz-transform-origin-x: 90%;
	-moz-transform-origin-y: 35%;
	-moz-transform-origin-z: initial;

	-webkit-animation: wrench 2.5s ease infinite;
	-webkit-transform-origin-x: 90%;
	-webkit-transform-origin-y: 35%;
	-webkit-transform-origin-z: initial;

	-ms-animation: wrench 2.5s ease infinite;
	-ms-transform-origin-x: 90%;
	-ms-transform-origin-y: 35%;
	-ms-transform-origin-z: initial;

	animation: wrench 2.5s ease infinite;
	transform-origin-x: 90%;
	transform-origin-y: 35%;
	transform-origin-z: initial;
}

/* BELL */
@-moz-keyframes ring {
	0%{-moz-transform:rotate(-15deg)}
	2%{-moz-transform:rotate(15deg)}
	4%{-moz-transform:rotate(-18deg)}
	6%{-moz-transform:rotate(18deg)}
	8%{-moz-transform:rotate(-22deg)}
	10%{-moz-transform:rotate(22deg)}
	12%{-moz-transform:rotate(-18deg)}
	14%{-moz-transform:rotate(18deg)}
	16%{-moz-transform:rotate(-12deg)}
	18%{-moz-transform:rotate(12deg)}
	20%{-moz-transform:rotate(0deg)}
}
@-webkit-keyframes ring {
	0%{-webkit-transform:rotate(-15deg)}
	2%{-webkit-transform:rotate(15deg)}
	4%{-webkit-transform:rotate(-18deg)}
	6%{-webkit-transform:rotate(18deg)}
	8%{-webkit-transform:rotate(-22deg)}
	10%{-webkit-transform:rotate(22deg)}
	12%{-webkit-transform:rotate(-18deg)}
	14%{-webkit-transform:rotate(18deg)}
	16%{-webkit-transform:rotate(-12deg)}
	18%{-webkit-transform:rotate(12deg)}
	20%{-webkit-transform:rotate(0deg)}
}
@-ms-keyframes ring {
	0%{-ms-transform:rotate(-15deg)}
	2%{-ms-transform:rotate(15deg)}
	4%{-ms-transform:rotate(-18deg)}
	6%{-ms-transform:rotate(18deg)}
	8%{-ms-transform:rotate(-22deg)}
	10%{-ms-transform:rotate(22deg)}
	12%{-ms-transform:rotate(-18deg)}
	14%{-ms-transform:rotate(18deg)}
	16%{-ms-transform:rotate(-12deg)}
	18%{-ms-transform:rotate(12deg)}
	20%{-ms-transform:rotate(0deg)}
}
@keyframes ring {
	0%{transform:rotate(-15deg)}
	2%{transform:rotate(15deg)}
	4%{transform:rotate(-18deg)}
	6%{transform:rotate(18deg)}
	8%{transform:rotate(-22deg)}
	10%{transform:rotate(22deg)}
	12%{transform:rotate(-18deg)}
	14%{transform:rotate(18deg)}
	16%{transform:rotate(-12deg)}
	18%{transform:rotate(12deg)}
	20%{transform:rotate(0deg)}
}
.faa-ring.animated, .faa-ring.animated-hover:hover {
	-moz-animation: ring 2s ease infinite;
	-moz-transform-origin-x: 50%;
	-moz-transform-origin-y: 0px;
	-moz-transform-origin-z: initial;

	-webkit-animation: ring 2s ease infinite;
	-webkit-transform-origin-x: 50%;
	-webkit-transform-origin-y: 0px;
	-webkit-transform-origin-z: initial;

	-ms-animation: ring 2s ease infinite;
	-ms-transform-origin-x: 50%;
	-ms-transform-origin-y: 0px;
	-ms-transform-origin-z: initial;

	animation: ring 2s ease infinite;
	transform-origin-x: 50%;
	transform-origin-y: 0px;
	transform-origin-z: initial;
}

/* VERTICAL */
@-moz-keyframes vertical {
	0%{-moz-transform:translate(0,-3px)}
	4%{-moz-transform:translate(0,3px)}
	8%{-moz-transform:translate(0,-3px)}
	12%{-moz-transform:translate(0,3px)}
	16%{-moz-transform:translate(0,-3px)}
	20%{-moz-transform:translate(0,3px)}
	22%{-moz-transform:translate(0,0)}
}
@-webkit-keyframes vertical {
	0%{-webkit-transform:translate(0,-3px)}
	4%{-webkit-transform:translate(0,3px)}
	8%{-webkit-transform:translate(0,-3px)}
	12%{-webkit-transform:translate(0,3px)}
	16%{-webkit-transform:translate(0,-3px)}
	20%{-webkit-transform:translate(0,3px)}
	22%{-webkit-transform:translate(0,0)}
}
@-ms-keyframes vertical {
	0%{-ms-transform:translate(0,-3px)}
	4%{-ms-transform:translate(0,3px)}
	8%{-ms-transform:translate(0,-3px)}
	12%{-ms-transform:translate(0,3px)}
	16%{-ms-transform:translate(0,-3px)}
	20%{-ms-transform:translate(0,3px)}
	22%{-ms-transform:translate(0,0)}
}
@keyframes vertical {
	0%{transform:translate(0,-3px)}
	4%{transform:translate(0,3px)}
	8%{transform:translate(0,-3px)}
	12%{transform:translate(0,3px)}
	16%{transform:translate(0,-3px)}
	20%{transform:translate(0,3px)}
	22%{transform:translate(0,0)}
}
.faa-vertical.animated, .faa-vertical.animated-hover:hover {
	-moz-animation: vertical 2s ease infinite;
	-webkit-animation: vertical 2s ease infinite;
	-ms-animation: vertical 2s ease infinite;
	animation: vertical 2s ease infinite;
}

/* HORIZONTAL */
@-moz-keyframes horizontal {
	0%{-moz-transform:translate(0,0)}
	6%{-moz-transform:translate(5px,0)}
	12%{-moz-transform:translate(0,0)}
	18%{-moz-transform:translate(5px,0)}
	24%{-moz-transform:translate(0,0)}
	30%{-moz-transform:translate(5px,0)}
	36%{-moz-transform:translate(0,0)}
}
@-webkit-keyframes horizontal {
	0%{-webkit-transform:translate(0,0)}
	6%{-webkit-transform:translate(5px,0)}
	12%{-webkit-transform:translate(0,0)}
	18%{-webkit-transform:translate(5px,0)}
	24%{-webkit-transform:translate(0,0)}
	30%{-webkit-transform:translate(5px,0)}
	36%{-webkit-transform:translate(0,0)}
}
@-ms-keyframes horizontal {
	0%{-ms-transform:translate(0,0)}
	6%{-ms-transform:translate(5px,0)}
	12%{-ms-transform:translate(0,0)}
	18%{-ms-transform:translate(5px,0)}
	24%{-ms-transform:translate(0,0)}
	30%{-ms-transform:translate(5px,0)}
	36%{-ms-transform:translate(0,0)}
}
@keyframes horizontal {
	0%{transform:translate(0,0)}
	6%{transform:translate(5px,0)}
	12%{transform:translate(0,0)}
	18%{transform:translate(5px,0)}
	24%{transform:translate(0,0)}
	30%{transform:translate(5px,0)}
	36%{transform:translate(0,0)}
}
.faa-horizontal.animated, .faa-horizontal.animated-hover:hover {
	-moz-animation: horizontal 2s ease infinite;
	-webkit-animation: horizontal 2s ease infinite;
	-ms-animation: horizontal 2s ease infinite;
	animation: horizontal 2s ease infinite;
}

/* FLASHING */
@-moz-keyframes flash {
	0%,100%,50%{opacity:1}
	25%,75%{opacity:0}
}
@-webkit-keyframes flash {
	0%,100%,50%{opacity:1}
	25%,75%{opacity:0}
}
@-ms-keyframes flash {
	0%,100%,50%{opacity:1}
	25%,75%{opacity:0}
}
@keyframes flash {
	0%,100%,50%{opacity:1}
	25%,75%{opacity:0}
}
.faa-flash.animated, .faa-flash.animated-hover:hover {
	-moz-animation: flash 2s ease infinite;
	-webkit-animation: flash 2s ease infinite;
	-ms-animation: flash 2s ease infinite;
	animation: flash 2s ease infinite;
}

/* BOUNCE */
@-moz-keyframes bounce {
	0%,100%,20%,50%,80%{-moz-transform:translateY(0)}
	40%{-moz-transform:translateY(-15px)}
	60%{-moz-transform:translateY(-15px)}
}
@-webkit-keyframes bounce {
	0%,100%,20%,50%,80%{-webkit-transform:translateY(0)}
	40%{-webkit-transform:translateY(-15px)}
	60%{-webkit-transform:translateY(-15px)}
}
@-ms-keyframes bounce {
	0%,100%,20%,50%,80%{-ms-transform:translateY(0)}
	40%{-ms-transform:translateY(-15px)}
	60%{-ms-transform:translateY(-15px)}
}
@keyframes bounce {
	0%,10%,20%,50%,80%{transform:translateY(0)}
	40%{transform:translateY(-15px)}
	60%{transform:translateY(-15px)}
}
.faa-bounce.animated, .faa-bounce.animated-hover:hover {
	-moz-animation: bounce 2s ease infinite;
	-webkit-animation: bounce 2s ease infinite;
	-ms-animation: bounce 2s ease infinite;
	animation: bounce 2s ease infinite;
}

/* SPIN */
@-moz-keyframes spin{
	0%{-moz-transform:rotate(0deg)}
	100%{-moz-transform:rotate(359deg)}
}
@-webkit-keyframes spin{
	0%{-webkit-transform:rotate(0deg)}
	100%{-webkit-transform:rotate(359deg)}
}
@-ms-keyframes spin{
	0%{-ms-transform:rotate(0deg)}
	100%{-ms-transform:rotate(359deg)}
}
@keyframes spin{
	0%{transform:rotate(0deg)}
	100%{transform:rotate(359deg)}
}
.faa-spin.animated, .faa-spin.animated-hover:hover {
	-moz-animation: spin 1.5s linear infinite;
	-webkit-animation: spin 1.5s linear infinite;
	-ms-animation: spin 1.5s linear infinite;
	animation: spin 1.5s linear infinite;
}

/* FLOAT */
@-moz-keyframes float{
	0%{-moz-transform: translateY(0)}
	50%{-moz-transform: translateY(-6px)}
	100%{-moz-transform: translateY(0)}
}
@-webkit-keyframes float{
	0%{-webkit-transform: translateY(0)}
	50%{-webkit-transform: translateY(-6px)}
	100%{-webkit-transform: translateY(0)}
}
@-ms-keyframes float{
	0%{-ms-transform: translateY(0)}
	50%{-ms-transform: translateY(-6px)}
	100%{-ms-transform: translateY(0)}
}
@keyframes float{
	0%{transform: translateY(0)}
	50%{transform: translateY(-6px)}
	100%{transform: translateY(0)}
}
.faa-float.animated, .faa-float.animated-hover:hover {
-	moz-animation: float 2s linear infinite;
	-webkit-animation: float 2s linear infinite;
	-ms-animation: float 2s linear infinite;
	animation: float 2s linear infinite;
}

/* PULSE */
@-moz-keyframes pulse {
	0% {-moz-transform: scale(1.1)}
 	50% {-moz-transform: scale(0.8)}
 	100% {-moz-transform: scale(1)}
}
@-webkit-keyframes pulse {
	0% {-webkit-transform: scale(1)}
 	50% {-webkit-transform: scale(0.8)}
 	100% {-webkit-transform: scale(1)}
}
@-ms-keyframes pulse {
	0% {-ms-transform: scale(1.1)}
 	50% {-ms-transform: scale(0.8)}
 	100% {-ms-transform: scale(1)}
}
@keyframes pulse {
	0% {transform: scale(1.1)}
 	50% {transform: scale(0.8)}
 	100% {transform: scale(1)}
}
.faa-pulse.animated, .faa-pulse.animated-hover:hover {
	-moz-animation: pulse 2s linear infinite;
	-webkit-animation: pulse 2s linear infinite;
	-ms-animation: pulse 2s linear infinite;
	animation: pulse 2s linear infinite;
}

/* SHAKE */
.faa-shake.animated, .faa-shake.animated-hover:hover {
	-webkit-animation: wrench 2.5s ease infinite;
}
