.loaderparent,
.loaderparent * {
	visibility: visible;
}

.loaderparent.off,
.loaderparent.off * {
	visibility: hidden;
	display: none;
}

.loaderparent {
	position: fixed;
	font-size: 10px;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	padding: calc(50vh - (70px / 2)) 20vw;
	z-index: 999999999;
}

.loader,
.loader:after {
	border-radius: 100%;
	width: 70px;
	height: 70px;
}

.loader {
	margin: auto;
	font-size: 10px;
	position: relative;
	text-indent: -9999em;
	border-top: 1.1em solid rgba(255, 255, 255, 0.2);
	border-right: 1.1em solid rgba(255, 255, 255, 0.2);
	border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);
	border-left: 1.1em solid #ffffff;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load 750ms infinite linear;
	animation: load 750ms infinite linear;
}

@keyframes load {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}