body {
	padding: 0;
	margin: 0;
}

#app-site {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100vh;
}

.loader {
	position: relative;
	margin: 0 auto;
	width: 60px;
	height: 60px;
}

.circular {
	animation: rotate 2s linear infinite;
	-webkit-animation: rotate 2s linear infinite;
	height: auto;
	transform-origin: center center;
	-webkit-transform-origin: center center;
	width: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.path {
	stroke-dasharray: 1, 200;
	stroke-dashoffset: 0;
	animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
	-webkit-animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
	strokelinecap: round;
}

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

@keyframes dash {
	0% {
		stroke-dasharray: 1, 200;
		stroke-dashoffset: 0;
	}

	50% {
		stroke-dasharray: 89, 200;
		stroke-dashoffset: -35px;
	}

	100% {
		stroke-dasharray: 89, 200;
		stroke-dashoffset: -124px;
	}
}

@keyframes color {
	100%,
	0% {
		stroke: #d62d20;
	}

	40% {
		stroke: #0057e7;
	}

	66% {
		stroke: #008744;
	}

	80%,
	90% {
		stroke: #ffa700;
	}
}

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

@-webkit-keyframes dash {
	0% {
		stroke-dasharray: 1, 200;
		stroke-dashoffset: 0;
	}

	50% {
		stroke-dasharray: 89, 200;
		stroke-dashoffset: -35px;
	}

	100% {
		stroke-dasharray: 89, 200;
		stroke-dashoffset: -124px;
	}
}

@-webkit-keyframes color {
	100%,
	0% {
		stroke: #d62d20;
	}

	40% {
		stroke: #0057e7;
	}

	66% {
		stroke: #008744;
	}

	80%,
	90% {
		stroke: #ffa700;
	}
}
