figure {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 6.25em;
	height: 6.25em;
	margin: auto;
	animation: rotate 2.4s linear infinite;
}

.white {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: white;
	opacity: 0;
	animation: flash 2.4s linear infinite;
}

.dot {
	position: absolute;
	width: 1.8em;
	height: 1.8em;
	margin: auto;
	border-radius: 100%;
	transition: all 1s ease;
}

.dot:nth-child(2) {
	top: 0;
	bottom: 0;
	left: 0;
	background: #f56c6c;
	animation: dotsY 2.4s linear infinite;
}

.dot:nth-child(3) {
	top: 0;
	right: 0;
	left: 0;
	background: #e6a23c;
	animation: dotsX 2.4s linear infinite;
}

.dot:nth-child(4) {
	top: 0;
	right: 0;
	bottom: 0;
	background: #67c23a;
	animation: dotsY 2.4s linear infinite;
}

.dot:nth-child(5) {
	right: 0;
	bottom: 0;
	left: 0;
	background: #4e88f3;
	animation: dotsX 2.4s linear infinite;
}

@keyframes rotate {
	0% {
		transform: rotate(0);
	}

	10% {
		width: 6.25em;
		height: 6.25em;
	}

	66% {
		width: 1.8em;
		height: 1.8em;
	}

	100% {
		width: 6.25em;
		height: 6.25em;
		transform: rotate(360deg);
	}
}

@keyframes dotsY {
	66% {
		width: 1.8em;
	}

	77% {
		width: 0;
	}
}

@keyframes dotsX {
	66% {
		height: 1.8em;
	}

	77% {
		height: 0;
	}
}

@keyframes flash {
	33% {
		border-radius: 0;
	}

	55% {
		border-radius: 100%;
	}
}