body {
  margin: 0;
  background: #fff;
  color: #222;
  font: 18px/1.5 Georgia, "Times New Roman", serif;
}

.page {
  max-width: 40em;
  margin: 0 auto;
  padding: 0.5em 1em 2em;
}

a, a:visited { color: #0645ad; }

header {
  border-bottom: 3px double #999;
  margin-bottom: 1.5em;
}

.site-title {
  font-size: 2em;
  margin: 0.4em 0 0.1em;
  color: #1b2d5c;
}
.site-title a, .site-title a:visited { color: inherit; text-decoration: none; }

.nav { margin: 0 0 0.6em; }
.nav a[aria-current] { color: #222; font-weight: bold; text-decoration: none; }

h2 { font-size: 1.4em; color: #1b2d5c; margin: 1.5em 0 0.4em; }
h3 { font-size: 1.15em; margin: 1.2em 0 0.1em; }
main > h2:first-child { margin-top: 0.5em; }

.date { color: #666; font-size: 0.9em; margin-top: 0; }

.scroll { overflow-x: auto; }
table.info { border-collapse: collapse; margin: 1em 0; }
table.info th, table.info td {
  border: 1px solid #aaa;
  padding: 0.3em 0.7em;
  text-align: left;
  vertical-align: top;
}
table.info th { background: #eef1f7; white-space: nowrap; }

.news {
  border: 1px solid #c9b458;
  background: #fffbe6;
  padding: 0 1em;
  margin: 1.5em 0;
}
.news h2 { font-size: 1.15em; margin: 0.6em 0 0.2em; }
.news ul { margin: 0.3em 0; padding-left: 1.2em; }
.news li { margin-bottom: 0.6em; }

.archive li { margin-bottom: 0.6em; }

blockquote { margin: 1em 2em; font-style: italic; }
hr { border: 0; border-top: 1px solid #ccc; margin: 1.5em 0; }
img { max-width: 100%; height: auto; border: 1px solid #ccc; }
iframe { max-width: 100%; }

.pager { margin-top: 2.5em; }
