body {
	display: flex;
	justify-content: center;
	font-family: 'Barlow', sans-serif;
}

main {
	max-width: 75ch;
	color: #333;
	width: 100%;
}

main > * {
	padding: 1.5rem;
	margin: 0 1.5rem;
}

header {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 16px;
	color: #AE132A;
	font-size: min(5.653rem, 16vw);
	font-family: 'Inter', sans-serif;
	font-weight: 200;
	padding-bottom: 0;
}

header img {
	width: min(128px, 20vw);
	height: min(128px, 20vw);
}

nav {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	align-items: center;
	border-bottom: 1px solid #333;
}

nav a {
	text-decoration: none;
	color: #333;
}

nav a:visited {
	color: #333;
}

nav a:hover {
	color: #AE132A;
}

nav a.selected {
	color: #AE132A;
	text-decoration: underline;
}

section {
	padding-bottom: 0;
}

section > * {
	margin-bottom: 1.5rem;
}

section a {
	color: #AE132A;
}

section a:visited {
	color: #680B19;
}

footer {
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 16px;
	border-top: 1px solid #333;
}

footer a {
	text-decoration: none;
	color: #333;
}

footer a:visited {
	color: #333;
}

footer a:hover {
	color: #AE132A;
}

aside {
	display: flex;
	flex-direction: column;
	max-width: 12rem;
	padding: 1.5rem;
	padding-left: 0;
	margin-top: 4rem;
}

aside > * {
	padding-bottom: 1.5rem;
}

aside strong {
	font-family: 'Inter', sans-serif;
	font-weight: 600;
}

aside a {
	color: #333;
	font-style: italic;
}

aside a:visited {
	color: #333;
}

aside a:hover {
	color: #AE132A;
}

@media screen and (max-width: 768px) {
  aside {
    display: none;
  }
}

button {
	background-color: white;
	border: 1px solid #AE132A;
	padding: 4px 16px;
	color: #AE132A;
}

button:hover {
	background-color: #AE132A;
	color: white;
}

form input, form textarea {
	border: 1px solid #AE132A;
	padding: 4px;
}

form *:focus {
	outline: 1px solid #AE132A;
}

h1, h2 {
	font-family: 'Inter', sans-serif;
        font-weight: 300;
}
