* {
	box-sizing: border-box;
}

:root {
	--foreground: #1e2030;
	--background: #e9e9e9;
	--link: #0b7285;
	--card-bg: #f8f9fa;
}

@media (prefers-color-scheme: dark) {
	:root {
		--foreground: #cad3f5;
		--background: #4a4c5e;
		--link: #99e9f2;
		--card-bg: #1e2030;
	}
}

body {
	margin: 0;
	padding: 2em;
	height: 100%;
	background: var(--background);
	color: var(--foreground);
	font-family: "Lato", sans-serif;
	font-size: 120%;
	line-height: 160%;
	overflow-wrap: break-word;
}

main {
	display: block;
	max-width: 40em;
	margin: 0 auto;
	padding: 2em;
	border-radius: 1em;
	text-align: center;
	background: var(--card-bg);
	box-shadow: 0 6px 12px -2px rgba(50, 50, 93, 0.25), 0 3px 7px -3px rgba(0, 0, 0, 0.3);
}

h1 {
	margin: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-family: "VC Honey Deck", serif;
}

a {
	color: var(--link);
	text-decoration: none;
}

a:link,
a:visited {
	border-bottom: 1px dotted #000;
}

a:hover,
a:active {
	border-bottom: 2px solid #000;
}

#profile-picture-container {
	margin: 0 auto 1em;
	color: #555;
}

#profile-picture {
	width: 8.7em;
	height: 8.7em;
	border-radius: 10%;
}

#pronouns {
	display: block;
	width: 100%;
	margin: 0 0 1em 0;
	color: var(--foreground);
}

#location, #occupation, .links .metadata {
	display: inline-block;
	margin: .5em;
	padding: 0 .5em;
}

#bio {
	text-align: center;
	font-size: 100%;
	line-height: 140%;
}

#footer {
	display: none;
}

@media screen and (max-width: 635px) {
	#location,
	#occupation,
	.links .metadata {
		margin: 0.2em;
		padding: 0;
	}
}

@media (max-width: 500px) {
	body {
		font-size: 1em;
		padding: 1em;
	}
	main {
		padding: 1.5em;
	}
}

@media (max-width: 480px) {
	h1 {
		font-size: 1.8em;
	}
}
