@import url(https://use.typekit.net/kqi7puf.css);

:root {
  --primary-color: #16406e;
}

body,
html {
  box-sizing: border-box;
  color: var(--primary-color);
  background-color: #f9f9f9;
  background-attachment: fixed;
  font: normal normal 16px/1.35 nimbus-sans, Helvetica, sans-serif;
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
}
@media screen and (max-width: 768px) {
  body,
  html {
    font-size: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1440px) {
  body,
  html {
    font-size: calc(14px + 2 * ((100vw - 768px) / 672));
  }
}
@media screen and (min-width: 1440px) {
  body,
  html {
    font-size: 16px;
  }
}

header,
footer {
  background-color: #f9f9f9;
  padding: 1rem;
}

main {
  background-color: #fefefe;
  padding: 1rem;
}

.inner {
  display: flex;
  flex-flow: row nowrap;
  max-width: 960px;
  margin: 0 auto;
}

main > .inner {
  flex-flow: column nowrap;
}

.push-left {
  margin-left: auto;
}

#site-title {
  font-size: 1.4rem;
  margin-bottom: 2rem;
}
#site-title a,
#site-title a:active,
#site-title a:link,
#site-title a:visited {
  color: var(--primary-color);
  text-decoration: none;
}
#site-title a:hover {
  text-decoration: none;
}
#site-subtitle {
  border-top: 2px solid var(--primary-color);
  max-width: 30rem;
  padding-right: 1rem;
  padding-top: 1rem;
}
.section-title {
  font-style: italic;
}

.header-block {
  max-width: 17em;
  min-width: 10em;
  margin-bottom: 0.3em;
}
.header-block p:first-child {
  margin-top: 0;
}

*,
:after,
:before {
  box-sizing: inherit;
}
a,
a:active,
a:link,
a:visited {
  color: inherit;
  text-decoration: underland;
}
a:hover {
  color: #2e5af8;
  text-decoration: underline;
}
.no-list-style-type {
  margin: 0;
  padding: 0;
}
.no-list-style-type li {
  list-style-type: none;
  padding: 0;
}

.with-space li {
  margin-bottom: 1em;
}
.left-indent li {
  position: relative; /* Needed for positioning the pseudo-element */
  padding-left: 1em;
  margin-left: 1em;
}
.right-indent li {
  margin-right: 3em;
}

h1,
h2 {
  margin-top: 0;
}
h1 {
  font-size: 1.6rem;
}

h2 {
  font-size: 1rem;
}

section {
  margin-bottom: 2.4rem;
}

hr {
  border-color: var(--primary-color);
  border-style: solid;
  border-width: 1px;
}
