#login {
	height: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 1rem;
}

#login input, #login button {
	all: unset;
}

#login input {
	padding: 1rem;
	width: 12rem;
	border: 0.0625rem solid #ddd;
	font-size: 1rem;

}

#login input:hover {
	border: 0.0625rem solid #bbb;
}

#login input:focus {
	border: 0.0625rem solid #0026ff;
}

#login button {
	padding: 0.625rem 1.25rem;
	background: #eee;
	cursor: pointer;
}

#content {
	display: none;
}


/*
----------------------------------------------------------------------
*/


.fade-up {
	opacity: 0;
	transform: translateY(0.625rem);
	animation: fadeUp 0.6s ease forwards;
	animation-delay: calc(var(--i) * 0.1s);
}

@keyframes fadeUp {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/*
----------------------------------------------------------------------
*/


video, img {
	width: 100%;
	height: auto;
}


/*
----------------------------------------------------------------------
*/


h1, h2, h3, h4, p, a {
	font-size: inherit;
	font-weight: inherit;
}


/*
----------------------------------------------------------------------
*/


* {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

html {
	font-size: 16px;
	background: #fff;
}

body {
	background: #fff;
	font-family: "Geist Mono", monospace;
	font-size: 0.75rem;
	font-weight: 300;
	color: #808080;
	text-transform: uppercase;
}

main {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	padding: 2rem;
	margin: 0 auto;
	margin-top: 4rem;
}


/*
----------------------------------------------------------------------
*/


header {
	position: fixed;
	top: 1rem;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 1rem;
	padding: 0.75rem;
	background:  rgba(255, 255, 255, 0.25);
	backdrop-filter: blur(1rem);
	-webkit-backdrop-filter: blur(1rem);
	border-radius: 2rem;
	box-shadow: 0 0.25rem 1rem rgba(34, 34, 34, 0.1);
	z-index: 99;
}

.info {
	display: flex;
	gap: 0.5rem;
}

.info span {
	background: #f1f1f1;
	padding: 0.5rem 1rem;
	border-radius: 1rem;
	border: 0.0625rem solid #eee;
	white-space: nowrap;
}

footer {
	display: flex;
	gap: 1rem;
	justify-content: center;
	padding: 3rem;
}


/*
----------------------------------------------------------------------
*/


.grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-row-gap: 3rem;
	grid-column-gap: 1rem;
	justify-items: center;
}

.card {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}


/*
----------------------------------------------------------------------
*/


.mobile {
	display: none;
}


/*
----------------------------------------------------------------------
*/


@media (max-width: 768px) {

	.grid {
		grid-template-columns: repeat(3, 1fr);
	}
}


/*
----------------------------------------------------------------------
*/


@media (max-width: 576px) {

	.grid {
		grid-template-columns: repeat(1, 1fr);
	}
	
	.desktop {
		display: none;
	}
	
	.mobile {
		display: inline;
	}
}