@font-face {
	font-family: "Lato";
	font-weight: 400;
	font-style: normal;
	src: url(fonts/Lato-Regular.woff2) format("woff2");
}

@font-face {
	font-family: "Lato";
	font-weight: 400;
	font-style: italic;
	src: url(fonts/Lato-Italic.woff2) format("woff2");
}

@font-face {
	font-family: "Lato";
	font-weight: 700;
	font-style: normal;
	src: url(fonts/Lato-Bold.woff2) format("woff2");
}

@font-face {
	font-family: "Lato";
	font-weight: 700;
	font-style: italic;
	src: url(fonts/Lato-BoldItalic.woff2) format("woff2");
}

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

html {
	scroll-behavior: smooth;
	scroll-padding-top: 7em;
}

body {
	background-color: #f9f9f9;
	font-family: "Lato", sans-serif;
	font-size: 19px;
	line-height: 1.5em;
}

body > * {
	max-width: 900px;
}

header {
	position: sticky;
	top: 0;
	padding: 20px 0;
	margin: 0 20px;
	background-color: #f9f9f9;
	border-bottom: 1px solid black;
}

.sitetitle {
	font-size: 1em;
	text-transform: uppercase;
	display: inline-block;
}

.navbar {
	list-style-type: none;
	padding: 10px 0;
	margin: 0;
	column-gap: 1em;
	display: flex;
	flex-wrap: wrap;
}

main {
	padding: 20px 0;
	margin: 20px;
}

p {
	margin: 1em 0;
}

blockquote {
	margin: 0 2em;
}

hr {
	border: none;
	height: 1px;
	background-color: black;
	margin: 1em 0;
}

a {
	color: black;
}

header a {
	text-decoration: none;
}

header a:hover {
	text-decoration: underline;
	text-underline-offset: 5px;
}

main a, footer a {
	text-decoration: underline;
	text-underline-offset: 5px;
}

main h1 {
	font-size: 2em;
	margin: 0 0 1em 0;
}

main h1 a {
	color: black;
	text-decoration: none;
}

main h1 a:hover {
	text-decoration: underline;
	text-underline-offset: 5px;
}

footer {
	text-align: center;
	padding-bottom: 20px;
}

.footer-links {
	list-style-type: none;
}

@media screen and (width >= 30em) {
	nav {
		display: inline-block;
		margin-left: 1em;
	}
}

@media screen and (width >= 940px) {
	header, main, footer {
		margin-inline: auto;
	}
}