body {
	font-size: clamp(1rem, 1.7vw, 1rem);
	
	background:
		radial-gradient(circle at 20% 100%, #440000, transparent 60%),
		radial-gradient(circle at 100% 20%, #000044, transparent 60%),
		radial-gradient(circle at 20% 0%, #004400, transparent 60%),
		black;

    min-height: 100vh;

	margin: 0;
}

.matrix {
	position: absolute;

	top: 0;
	left: 0;

	width: 100%;
	height: 100vh;

	opacity: 0.5;
}

.container:not(.logo) {
	padding-top: 200px;
    margin: 0 auto;

	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	overflow-wrap: anywhere;
	align-items: center;
	
	opacity: 100%;

    animation: siteFadeIn 1s ease-out forwards;

	color: lime;
	font-family: 'Courier New', Courier, monospace;

	filter: drop-shadow(0 0 20px lime) blur(0.4px);
	text-shadow: 0 0 20px lime;
}

.socials {
	margin: 50px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}

.socials a > img {
	width: clamp(1.7rem, 5vw, 3rem);
	height: clamp(1.7rem, 5vw, 3rem);
	cursor: pointer;
}

.socials a {
	display: block;
	cursor: pointer;
	text-decoration: none;
	margin: clamp(0.1rem, 1vw, 1rem);

	transition: opacity 0.2s ease-out;
}

.socials a:hover {
	opacity: 50%;
}

.container .logo {
	font-size: clamp(0.1rem, 1.7vw, 1rem);
	opacity: 75%;
}

.container img {
	width: fit-content;
	height: auto;
}

@keyframes siteFadeIn {
	0% {
		transform: scale(0.9);
		opacity: 0%;
		filter: drop-shadow(0 0 0 lime) blur(5px);
		text-shadow: 0 0 0 lime;
	}
	100% {
		transform: scale(1);
		opacity: 100%;
		filter: drop-shadow(0 0 20px lime) blur(0.4px);
		text-shadow: 0 0 20px lime;
	}
}
