/* Pre-Loader Styles : BEGIN */

.pre-loader {
	position           : fixed;
	visibility         : visible;
	opacity            : 1;
	top                : 0;
	left               : 0;
	width              : 100%;
	height             : 100%;
	display            : table;
	background         : #1E2454;
	z-index            : 1000001;
	-webkit-transition : all 0.2s ease-in-out 0.02s;
	-moz-transition    : all 0.2s ease-in-out 0.02s;
	-ms-transition     : all 0.2s ease-in-out 0.02s;
	-o-transition      : all 0.2s ease-in-out 0.02s;
	transition         : all 0.2s ease-in-out 0.02s;
}

.pre-loader.document-loaded {
	/*background : rgba(25, 25, 25, 0.8);*/
}

.pre-loader.hidden {
	opacity            : 0;
	visibility         : hidden;
	-webkit-transition : all 0.2s ease-in-out 0.8s;
	-moz-transition    : all 0.2s ease-in-out 0.8s;
	-ms-transition     : all 0.2s ease-in-out 0.8s;
	-o-transition      : all 0.2s ease-in-out 0.8s;
	transition         : all 0.2s ease-in-out 0.8s;
}

.pre-loader__wrap {
	display        : table-cell;
	vertical-align : middle;
}

.pre-loader__inner {
	display  : block;
	position : relative;
	width    : 64px;
	height   : 64px;
	margin   : auto;
}

.pre-loader.shown .pre-loader__inner {
	animation : reverse hide-pre-loader 1s cubic-bezier(0.5, 0, 0.5, 1);
}

.pre-loader.hidden .pre-loader__inner {
	animation : normal hide-pre-loader 1s cubic-bezier(0.5, 0, 0.5, 1);
}

.pre-loader__inner div {
	box-sizing    : border-box;
	display       : block;
	position      : absolute;
	width         : 51px;
	height        : 51px;
	margin        : 6px;
	border        : 3px solid;
	border-radius : 100%;
	animation     : rotate-ring .8s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	border-color  : #ffffff transparent transparent transparent;
}

.pre-loader__inner div:nth-child(1) {
	animation-delay : -0.15s;
}

.pre-loader__inner div:nth-child(2) {
	animation-delay : -0.1s;
}

.pre-loader__inner div:nth-child(3) {
	animation-delay : -0.05s;
}

/* Pre-Loader Styles : END */

/* Pre-Loader @keyframes : BEGIN */

@keyframes rotate-ring {
	0% {
		transform : rotate(0deg);
	}
	100% {
		transform : rotate(360deg);
	}
}

@-khtml-keyframes rotate-ring {
	0% {
		transform : rotate(0deg);
	}
	100% {
		transform : rotate(360deg);
	}
}

@-moz-keyframes rotate-ring {
	0% {
		transform : rotate(0deg);
	}
	100% {
		transform : rotate(360deg);
	}
}

@-ms-keyframes rotate-ring {
	0% {
		transform : rotate(0deg);
	}
	100% {
		transform : rotate(360deg);
	}
}

@-o-keyframes rotate-ring {
	0% {
		transform : rotate(0deg);
	}
	100% {
		transform : rotate(360deg);
	}
}

@-webkit-keyframes rotate-ring {
	0% {
		transform : rotate(0deg);
	}
	100% {
		transform : rotate(360deg);
	}
}

@keyframes hide-pre-loader {
	0% {
		transform : translateY(0);
	}
	40% {
		opacity : 1;
	}
	60% {
		transform : translateY(50px);
	}
	100% {
		opacity   : 0;
		transform : translateY(-500px);
	}
}

@-khtml-keyframes hide-pre-loader {
	0% {
		transform : translateY(0);
	}
	40% {
		opacity : 1;
	}
	60% {
		transform : translateY(50px);
	}
	100% {
		opacity   : 0;
		transform : translateY(-500px);
	}
}

@-moz-keyframes hide-pre-loader {
	0% {
		transform : translateY(0);
	}
	40% {
		opacity : 1;
	}
	60% {
		transform : translateY(50px);
	}
	100% {
		opacity   : 0;
		transform : translateY(-500px);
	}
}

@-ms-keyframes hide-pre-loader {
	0% {
		transform : translateY(0);
	}
	40% {
		opacity : 1;
	}
	60% {
		transform : translateY(50px);
	}
	100% {
		opacity   : 0;
		transform : translateY(-500px);
	}
}

@-o-keyframes hide-pre-loader {
	0% {
		transform : translateY(0);
	}
	40% {
		opacity : 1;
	}
	60% {
		transform : translateY(50px);
	}
	100% {
		opacity   : 0;
		transform : translateY(-500px);
	}
}

@-webkit-keyframes hide-pre-loader {
	0% {
		transform : translateY(0);
	}
	40% {
		opacity : 1;
	}
	60% {
		transform : translateY(50px);
	}
	100% {
		opacity   : 0;
		transform : translateY(-500px);
	}
}
/* Pre-Loader @keyframes : END */