.preloader {
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	background: rgb(20, 20, 20);
	width: 100%;
	height: 100%;
	text-align: center;
}

.loader {
	position: relative;
	top: 50%;
	-webkit-transform: translate(0,-50%);
	-moz-transform: translate(0,-50%);
	-ms-transform: translate(0,-50%);
	-o-transform: translate(0,-50%);
	transform: translate(0,-50%);
	display: block;
	width: 40px;
	height: 40px;
	margin: 0 auto;
	border: 3px solid #fff;
	animation: cssload-loader 2.3s infinite ease;
	-o-animation: cssload-loader 2.3s infinite ease;
	-ms-animation: cssload-loader 2.3s infinite ease;
	-webkit-animation: cssload-loader 2.3s infinite ease;
	-moz-animation: cssload-loader 2.3s infinite ease;
}

.loader-inner {
	display: inline-block;
	background-color: #fff;
	width: 100%;
	vertical-align: top;
	animation: cssload-loader-inner 2.3s infinite ease-in;
	-o-animation: cssload-loader-inner 2.3s infinite ease-in;
	-ms-animation: cssload-loader-inner 2.3s infinite ease-in;
	-webkit-animation: cssload-loader-inner 2.3s infinite ease-in;
	-moz-animation: cssload-loader-inner 2.3s infinite ease-in;
}

.loaded .preloader {
	visibility: hidden;
	opacity: 0;
	-webkit-transition: ease-out 0.2s;
	-moz-transition: ease-out 0.2s;
	-o-transition: ease-out 0.2s;
	transition: ease-out 0.2s;
}

@keyframes cssload-loader {
	0% {
		transform: rotate(0deg);
	}
	
	25% {
		transform: rotate(180deg);
	}
	
	50% {
		transform: rotate(180deg);
	}
	
	75% {
		transform: rotate(360deg);
	}
	
	100% {
		transform: rotate(360deg);
	}
}

@-o-keyframes cssload-loader {
	0% {
		transform: rotate(0deg);
	}
	
	25% {
		transform: rotate(180deg);
	}
	
	50% {
		transform: rotate(180deg);
	}
	
	75% {
		transform: rotate(360deg);
	}
	
	100% {
		transform: rotate(360deg);
	}
}

@-ms-keyframes cssload-loader {
	0% {
		transform: rotate(0deg);
	}
	
	25% {
		transform: rotate(180deg);
	}
	
	50% {
		transform: rotate(180deg);
	}
	
	75% {
		transform: rotate(360deg);
	}
	
	100% {
		transform: rotate(360deg);
	}
}

@-webkit-keyframes cssload-loader {
	0% {
		transform: rotate(0deg);
	}
	
	25% {
		transform: rotate(180deg);
	}
	
	50% {
		transform: rotate(180deg);
	}
	
	75% {
		transform: rotate(360deg);
	}
	
	100% {
		transform: rotate(360deg);
	}
}

@-moz-keyframes cssload-loader {
	0% {
		transform: rotate(0deg);
	}
	
	25% {
		transform: rotate(180deg);
	}
	
	50% {
		transform: rotate(180deg);
	}
	
	75% {
		transform: rotate(360deg);
	}
	
	100% {
		transform: rotate(360deg);
	}
}

@keyframes cssload-loader-inner {
	0% {
		height: 0%;
	}
	
	25% {
		height: 0%;
	}
	
	50% {
		height: 100%;
	}
	
	75% {
		height: 100%;
	}
	
	100% {
		height: 0%;
	}
}

@-o-keyframes cssload-loader-inner {
	0% {
		height: 0%;
	}
	
	25% {
		height: 0%;
	}
	
	50% {
		height: 100%;
	}
	
	75% {
		height: 100%;
	}
	
	100% {
		height: 0%;
	}
}

@-ms-keyframes cssload-loader-inner {
	0% {
		height: 0%;
	}
	
	25% {
		height: 0%;
	}
	
	50% {
		height: 100%;
	}
	
	75% {
		height: 100%;
	}
	
	100% {
		height: 0%;
	}
}

@-webkit-keyframes cssload-loader-inner {
	0% {
		height: 0%;
	}
	
	25% {
		height: 0%;
	}
	
	50% {
		height: 100%;
	}
	
	75% {
		height: 100%;
	}
	
	100% {
		height: 0%;
	}
}

@-moz-keyframes cssload-loader-inner {
	0% {
		height: 0%;
	}
	
	25% {
		height: 0%;
	}
	
	50% {
		height: 100%;
	}
	
	75% {
		height: 100%;
	}
	
	100% {
		height: 0%;
	}
}