html {
	font-family: monospace;
	font-size: large;
	background: linear-gradient(to bottom right, turquoise, teal);
	min-height: 100%;
}

header,
footer,
article,
aside {
	border: 3px black solid;
	background: turquoise;
	margin: 5px;
	box-shadow: 5px 5px 5px;
}

header {
	display: flex;
	align-items: center;
}

footer {
	text-align: center;
}

#headerimg {
	border-right: 3px solid black;
	max-height: 128px;
	flex: initial;
}

#headermain {
	text-align: center;
	flex: auto;
}

#headermain a {
	color: blue;
	text-decoration: none;
	text-transform: uppercase;
	text-align: center;
}

#headermain a:hover {
	text-decoration: underline;
}

#homelink {
	font-size: xx-large;
	font-weight: bold;
	text-decoration: none;
}

nav {
	font-size: x-large;
}

nav ul,
footer ul {
	padding: 0;
}

nav ul li,
footer ul li {
	display: inline;
}

nav ul li + li::before,
footer ul li + li::before {
	content: " | ";
}

aside {
	padding: 10px;
}

article {
	padding: 20px;
	text-align: justify;
	hyphens: auto;
	display: flow-root;
}

h1, h2, h3, h4, h5, h6 {
	text-align: left;
}

ul {
	padding-left: 2ch;
}

ol {
	padding-left: 3ch;
}

ol ol {
	list-style: lower-alpha
}

ol ol ol {
	list-style: lower-roman
}

#usbimg {
	width: 256px;
	max-width: 100%;
	margin-right: 10px;
	float: left;
}

@media screen and (min-width: 80ch) {
	body {
		display: grid;
		place-content: center;
	}

	main {
		min-width: 100%;
		display: flex;
		align-items: start;
	}

	aside {
		width: 30ch;
		flex: auto;
		position: sticky;
		top: 10px;
	}

	article {
		width: 80ch;
		max-width: 80ch;
		flex: auto;
	}
}
