- padding: 1rem 5%;
- line-height: 1.45;
-}
-header {text-align: center}
-header, section {margin-bottom: 1.7rem}
-#sub {
- color: #444;
- font-size: 0.9rem;
- position: relative;
- top: -0.75rem;
-}
-main {
- max-width: 50rem;
- padding-bottom: 1rem;
-}
-td {padding: 0 0.25rem}
-dl {margin-left: 2.5rem}
-#contact {margin-bottom: 0}
-code {font-size: 14px}
-a:link {
- color: #004caa;
- text-decoration: none;
- border-bottom: 1px solid #ddd;
-}
-a:hover {
- background-color: #004caa;
- color: #ffffff;
-}
-.btable th {
+ /* background: #fffffa; */
+ font-family: sans-serif;
+ line-height: 1.6;
+ padding: 2em;
+}
+
+header, nav, main, footer {
+ margin: auto;
+ max-width: 38rem;
+}
+
+body > header {
+ margin-bottom: 0.25em;
+}
+body > header h1 {
+ margin: 0;
+ font-size: 100%;
+}
+header a {
+ color: inherit;
+}
+nav ul {
+ margin: 0;
+ padding: 0;
+}
+nav li {
+ display: inline;
+ text-transform: lowercase;
+}
+nav li + li {
+ margin-left: 0.5em;
+}
+nav a {
+ color: #333;
+}
+nav, main {
+ margin-bottom: 1.5em;
+}
+header >:not(h1) {
+ font-size: 0.875em;
+}
+header > h1 + p {
+ margin-top: -1em;
+}
+footer {
+ border-top: 1px solid #bbb;
+ font-size: 0.84em;
+ padding-top: 1em;
+}
+footer p {
+ margin: 0;
+}
+
+h1 {
+ font-size: 1.5em;
+}
+h2 {
+ font-size: 1.25em;
+}
+h3 {
+ font-size: 1.125em;
+}
+
+a {
+ color: #036;
+}
+/*
+a:hover, a:focus {
+ color: #005a6a;
+}
+*/
+a:active {
+ outline-offset: 2px;
+}
+
+h4 {
+ margin: 0.75em auto;
+}
+
+article h3 {
+ font-weight: normal;