
body > :not(.preloader-plus) {
	opacity: 0;
}

body.complete > :not(.preloader-plus) {
	opacity: 1;
	transition: all 1s ease;
}

.preloader-plus {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	width: 100vw;
	height: 100vh;
	opacity: 1;
	background-color: #fff;
	z-index: 999;
	transform: scale(1);
	transition: opacity 1s ease, transform 1s ease, left 0s ease;
}

.preloader-plus.complete {
	left: 1000%;
}

.preloader-plus * {
	opacity: 1;
	transform: translate(0, 0) scale(1);
}

.preloader-plus img {
	display: block;
	max-width: 100%;
}

.preloader-plus .preloader-site-title {
	padding: 0;
}

.preloader-plus .preloader-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%, -50%, 0);
	width: 100%;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: column nowrap;
	flex-flow: column nowrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.preloader-plus .preloader-content > :not(:last-child) {
	margin-bottom: 20px;
}

.preloader-plus .preloader-plus-custom-content p {
	margin: 0;
}

.preloader-plus .prog-bar-wrapper:not(.middle) {
	position: fixed;
	width: 100%;
	left: 50%;
	right: 50%;
	transform: translateX(-50%);
}

.preloader-plus .prog-bar {
	width: 0;
	height: 5px;
	background-color: red;
	transition: all 10ms linear;
}

.preloader-plus .prog-bar-bg {
	position: absolute;
	width: 100%;
	height: 5px;
}

.preloader-plus .prog-bar.complete {
	width: 100%;
}

@keyframes preloader-rotation {
	0% {
		transform: rotate(0);
	}
	
	50% {
		transform: rotate(180deg);
	}
	
	100% {
		transform: rotate(360deg);
	}
}

@keyframes preloader-fade {
	0% {
		opacity: 1;
	}
	
	50% {
		opacity: .5;
	}
	
	100% {
		opacity: 0;
	}
}
