
:root {
	box-sizing: border-box;
	--background-color: #f5f5ff;
	--text-color: #238;
	--primary-color: #459;
	--primary-color-highlight: #56b;
	--primary-color-shadow: #238;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

html {
	margin: 0;
	padding: 0;
	color: var(--text-color);
	background: var(--background-color);
	font-family: system-ui;
}

body {
	margin: 0;
	padding: 0;
}

main {
	margin: 0;
	padding: 2rem;
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
}

h1 {
	margin: 0;
}

img {
	display: block;
	width: 12rem;
	margin: 0.5rem auto;
}

h2 {
	margin: 0 0 1rem;
	font-weight: 200;
	text-align: center;
}

main a {
	font-size: 1.25rem;
	display: table;
	margin: 2em auto;
	text-align: center;
	color: white;
	background: var(--primary-color);
	text-decoration: none;
	padding: 0.5em 1em;
	border-radius: 0.25em;
	font-weight: 300;
	border: thin solid transparent;
}

main a:hover,
main a:active,
main a:focus {
	background: var(--primary-color-highlight);
	outline: 0;
}

main a:focus {
	border: thin solid var(--primary-color-shadow);
	outline: 0;
	text-decoration: underline;
}

section {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 2rem;
	display: none;
}

div.a {
	margin: 3rem auto;
	padding: 0.5rem 1rem  0.5rem 0.75rem;
	color: white;
	background: var(--primary-color);
	border-radius: 0.75rem;
	width: 20rem;
}

div.b {
	margin: 3rem auto;
	padding: 0.5rem 1rem  0.5rem 0.75rem;
	border: thin solid var(--primary-color);
	background: #eef;
	border-radius: 0.75rem;
	width: 20rem;
	box-shadow: 4px 4px 6px 2px #0001;
}

h3 {
	font-weight: 300;
	margin: 0.125rem 0;
	padding: 0 0 0.25rem 0;
	border-bottom: thin solid;
}

p {
	font-weight: 200;
	line-height: 1.4;
	margin: 0.75rem 0;
}

nav {
	position: fixed;
	right: 0;
	left: 0;
}

ul {
	display: flex;
	justify-content: flex-end;
	margin: 0;
	padding: 0.5rem 1.75rem;
}

li {
	display: block;
	margin: 0;
	padding: 0;
}

nav a {
	display: block;
	text-align: center;
	color: inherit;
	padding: 1.5rem;
	text-decoration: none;
	font-size: 1.25rem;
	font-weight: 300;
}

nav a:hover,
nav a:active,
nav a:focus,
nav .selected a {
	text-decoration: underline;
	outline: 0;
}

#mc_embed_signup input[type=email] {
	font-size: 1em;
	width: 20em;
	display: block;
	margin: 1em 0;
	padding: 0.25em;
}

#mc_embed_signup input[type=submit] {
	font-size: 1em;
	display: block;
	margin: 1em 0;
	padding: 0.25em 0.5em;
	cursor: pointer;
}
