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

body {
	background: hsl(0, 0%, 97%);
	color: hsl(0, 0%, 14%);
	font-family: -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui,
		helvetica neue, helvetica, Ubuntu, roboto, noto, arial, sans-serif;
	min-height: 100vh;
	display: flex;
}

::selection {
	background-color: hsl(0, 0%, 78%, 0.5);
}

#root {
	max-width: 42rem;
	width: 95vw;
	margin-inline: auto;
	margin-block: 0.5rem;
}

#root > * + * {
	margin-block-start: 0.8em;
}

header > * + * {
	margin-block-start: 0.5em;
}

h1 {
	max-width: 40ch;
	font-size: 1.68rem;
}

p {
	max-width: 65ch;
	line-height: 1.5;
}

ul,
ul li {
	display: inline;
}

ul li::after {
	content: ", ";
}

ul li:last-of-type::before {
	content: "and ";
}

ul li:last-of-type::after {
	content: ".";
}

li span {
	font-size: 0.85rem;
}

svg {
	display: block;
	max-width: 42rem;
	width: 100%;
	height: auto;
}

form {
	text-align: center;
}

select {
	background: none;
	border: 0.12rem solid currentColor;
	padding: 0.5rem 0.75rem;
	font-family: inherit;
	font-size: 0.9rem;
}

select:focus {
	outline-offset: 0.12rem;
	outline: 0.12rem solid currentColor;
}