.rd-home-loader {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 100000;
	place-items: center;
	background: #050607;
	opacity: 1;
	visibility: visible;
	will-change: opacity;
	transition: opacity 680ms cubic-bezier(.22, 1, .36, 1), visibility 680ms;
}

.rd-home-loader-enabled .rd-home-loader {
	display: grid;
}

.rd-home-loader-enabled {
	overflow: hidden;
}

.rd-home-loader.is-complete {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.rd-home-loader__logo {
	display: block;
	width: clamp(104px, 10vw, 144px);
	height: auto;
	filter: drop-shadow(0 18px 42px rgb(0 0 0 / 35%));
	opacity: 0;
	transform: translateY(7px) scale(.955);
	will-change: opacity, transform;
	animation: rd-loader-logo-enter 440ms cubic-bezier(.22, 1, .36, 1) 60ms forwards;
	transition: opacity 560ms cubic-bezier(.22, 1, .36, 1), transform 680ms cubic-bezier(.22, 1, .36, 1);
}

.rd-home-loader.is-complete .rd-home-loader__logo {
	opacity: 0;
	transform: translateY(-4px) scale(.975);
}

.rd-home-loader__tile {
	fill: #fff;
}

.rd-home-loader__link {
	fill: none;
	stroke: #101219;
	stroke-width: 190;
	stroke-linecap: round;
	stroke-dasharray: 1;
	stroke-dashoffset: 1;
}

.rd-home-loader__node {
	fill: #101219;
	opacity: 0;
	transform: scale(.72);
	transform-box: fill-box;
	transform-origin: center;
}

.rd-home-loader__node--lower {
	animation: rd-loader-lower-node 2.25s cubic-bezier(.22, 1, .36, 1) forwards;
}

.rd-home-loader__link--lower {
	animation: rd-loader-lower-link 2.25s cubic-bezier(.22, 1, .36, 1) forwards;
}

.rd-home-loader__node--hub {
	animation: rd-loader-hub-node 2.25s cubic-bezier(.22, 1, .36, 1) forwards;
}

.rd-home-loader__link--upper {
	animation: rd-loader-upper-link 2.25s cubic-bezier(.22, 1, .36, 1) forwards;
}

.rd-home-loader__node--upper {
	animation: rd-loader-upper-node 2.25s cubic-bezier(.22, 1, .36, 1) forwards;
}

@keyframes rd-loader-logo-enter {
	to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes rd-loader-lower-node {
	0%, 12% { opacity: 0; transform: scale(.72); }
	16% { opacity: 1; transform: scale(.72); }
	22% { opacity: 1; transform: scale(1.12); }
	28%, 100% { opacity: 1; transform: scale(1); }
}

@keyframes rd-loader-lower-link {
	0%, 25% { stroke-dashoffset: 1; }
	45%, 100% { stroke-dashoffset: 0; }
}

@keyframes rd-loader-hub-node {
	0%, 42% { opacity: 0; transform: scale(.72); }
	48% { opacity: 1; transform: scale(1.16); }
	56%, 100% { opacity: 1; transform: scale(1); }
}

@keyframes rd-loader-upper-link {
	0%, 53% { stroke-dashoffset: 1; }
	73%, 100% { stroke-dashoffset: 0; }
}

@keyframes rd-loader-upper-node {
	0%, 70% { opacity: 0; transform: scale(.72); }
	76% { opacity: 1; transform: scale(1.1); }
	84%, 100% { opacity: 1; transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
	.rd-home-loader-enabled .rd-home-loader {
		display: none;
	}
}
