.rotate-ani.ng-enter, .rotate-ani.ng-leave {
	-webkit-transition: 1550ms cubic-bezier(0.250, 0.100, 0.250, 1.000) all;
	-moz-transition: 1550ms cubic-bezier(0.250, 0.100, 0.250, 1.000) all;
	-ms-transition: 1550ms cubic-bezier(0.250, 0.100, 0.250, 1.000) all;
	-o-transition: 1550ms cubic-bezier(0.250, 0.100, 0.250, 1.000) all;
	transition: 1550ms cubic-bezier(0.250, 0.100, 0.250, 1.000) all;
	position: relative;
	display: block;
}

.rotate-ani.ng-leave.ng-leave-active, .rotate-ani.ng-enter {
	-webkit-transform: rotateX(-90deg);
	-moz-transform: rotateX(-90deg);
	-ms-transform: rotateX(-90deg);
	-o-transform: rotateX(-90deg);
	transform: rotateX(-90deg);
	opacity: 0;
}

.rotate-ani.ng-enter.ng-enter-active, .rotate-ani.ng-leave {
	-webkit-transform: rotateX(0deg);
	-moz-transform: rotateX(0deg);
	-ms-transform: rotateX(0deg);
	-o-transform: rotateX(0deg);
	transform: rotateX(0deg);
	opacity: 1;
}

/* base animation */
.ani-fade, .ani-vslide,
.ani-fade-in.ng-enter,
.ani-fade-in.ng-hide-remove {
	overflow: hidden;
	transition-property: opacity, max-height, padding-top, margin-top;
	transition-duration: 400ms, 700ms, 200ms, 200ms;
	transition-timing-function: linear, ease-out, linear, linear;
	transition-delay: 0s, 0s, 400ms, 400ms;
	-webkit-transition-property: opacity, max-height, padding-top, margin-top;
	-webkit-transition-duration: 400ms, 700ms, 200ms, 200ms;
	-webkit-transition-timing-function: linear, ease-out, linear, linear;
	-webkit-transition-delay: 0s, 0s, 400ms, 400ms;
}

/* we have ani-fade, ani-fade-in, ani-fade-out, ani-vslide */

.ani-vslide.ng-enter {
	max-height: 0px;
}

.ani-vslide.ng-leave.ng-leave-active {
	max-height: 0px;
	margin-top: 0px;
	padding-top: 0px;
}

.ani-vslide.ng-enter.ng-enter-active, .ani-vslide.ng-leave {
	max-height: 500px;
}
/* .ANI-VSLIDE.SHORT */
.ani-vslide.ani-short.ng-enter {
	max-height: 0px;
}

.ani-vslide.ani-short.ng-leave.ng-leave-active {
	max-height: 0px;
	margin-top: 0px;
	padding-top: 0px;
}

.ani-vslide.ani-short.ng-enter.ng-enter-active, .ani-vslide.ani-short.ng-leave {
	max-height: 200px;
}
/* .ANI-VSLIDE.LARGE */
.ani-vslide.ani-large.ng-enter {
	max-height: 0px;
}

.ani-vslide.ani-large.ng-leave.ng-leave-active {
	max-height: 0px;
	margin-top: 0px;
	padding-top: 0px;
}

.ani-vslide.ani-large.ng-enter.ng-enter-active, .ani-vslide.ani-large.ng-leave {
	max-height: 900px;
}

.ani-fade.ng-enter,
.ani-fade.ng-leave.ng-leave-active,
.ani-fade-in.ng-enter,
.ani-fade-in.ng-hide-remove,
.ani-fade-out.ng-leave.ng-leave-active,
.ani-fade-out.ng-hide-add.ng-hide-add-active {
		opacity: 0;
}

.ani-fade.ng-enter.ng-enter-active,
.ani-fade.ng-leave,
.ani-fade-in.ng-enter.ng-enter-active,
.ani-fade-in.ng-hide-remove.ng-hide-remove-active,
.ani-fade-out.ng-leave,
.ani-fade-out.ng-hide-add {
	opacity: 1;
}


.fade-ani {
	-webkit-transition: opacity 500ms linear;
	transition: opacity 500ms linear;
}

.fade-ani.ng-enter, .fade-ani.ng-leave.ng-leave-active {
	opacity: 0;
}

.fade-ani.ng-enter.ng-enter-active, .fade-ani.ng-leave {
	opacity: 1;
}

/* fade appearance hide/show/class */
.fade {
	-webkit-transition: opacity 400ms ease-in-out, height 100ms;
	transition: opacity 400ms ease-in-out, height 100ms;
	opacity: 1;
}

.fade.ng-hide {
	opacity: 0;
}

/* fast fade appearance hide/show/class */
.ffade {
	-webkit-transition: all 250ms ease-in-out, height 100ms;
	transition: all 250ms ease-in-out, height 100ms;
}

.ffade.ng-hide {
	opacity: 0;
}

.ffade-in {
	-webkit-transition: opacity 250ms ease-in-out, height 100ms;
	transition: opacity 250ms ease-in-out, height 100ms;
}

.ffade-in.ng-hide {
	-webkit-transition: opacity 0ms ease-in-out, height 000ms;
	transition: opacity 0ms ease-in-out, height 000ms;
	opacity: 0;
}

.ffade-out {
	-webkit-transition: opacity 0ms ease-in-out, height 0ms;
	transition: opacity 0ms ease-in-out, height 0ms;
}

.ffade-out.ng-hide {
	-webkit-transition: opacity 250ms ease-in-out, height 100ms;
	transition: opacity 250ms ease-in-out, height 100ms;
	opacity: 0;
}

.fade-appear {
	-webkit-transition: opacity 250ms ease-in-out, height 100ms;
	transition: opacity 250ms ease-in-out, height 100ms;
}

.animation-delay {
	-webkit-transition-delay: 0.5s;
	transition-delay: 0.5s;
}

.animation-subito {
	-webkit-transition-delay: 0s !important;
	transition-delay: 0s !important;
}

/* collapsible animation */
/* .collapse.am-collapse { */
/* 	animation-duration: .3s; */
/* 	animation-timing-function: ease; */
/* 	animation-fill-mode: backwards; */
/* 	overflow: hidden; */
/* } */

/* .collapse.am-collapse.in-remove { */
/* 	animation-name: collapse; */
/* 	display: block; */
/* } */

/* .collapse.am-collapse.in-add { */
/* 	animation-name: expand; */
/* } */
