:root {
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

body {
  margin: 0;
}

.content {
  margin: 16px;
  max-width: 64rem;
}

h3 {
  color: #649bd0;
  font-weight: 600;
  font-size: 16px;
  margin: 1.8em 0 0 0;
}

header h2 {
  background-color: #649bd0;
  color: white;
  font-weight: 600;
  text-align: center;
  font-size: 24px;
  margin: 0;
}

p, ul {
  margin: .8em 0;
}

h3 + p, h3 + ul {
  margin-top: 0;
}

ul {
  padding: 0;
}

li {
  margin-left: 1em;
  line-height: 1.7;
}

img.fit {
  max-width: 100%;
}

a {
  -webkit-transition: all .1s ease-in;
  -o-transition: all .1s ease-in;
  transition: all .1s ease-in;
}

a {
  color: #1e5aa3;
  border-bottom: 1px solid #1e5aa3;
  text-decoration: none;
}

a:hover {
  color: #123662;
  border-bottom: none;
}

h2 a, h3 a {
  color: #649bd0;
  border-bottom: 1px solid #649bd0
}

h2 a:hover, h3 a:hover {
  color: #649bd0;
}

ol {
  padding: 0;
  counter-reset: section;
  list-style-type: none;
}

ol li {
  line-height: 1.4em;
  padding-left: 3em;
  margin-left: 0;
  margin-top: 1em;
  font-weight: normal;
}

ol li::before {
  display: inline-block;
  width: 3em;
  margin-left: -3em;
  font-weight: normal;
  counter-increment: section;
  content: counters(section,".") " ";
}


ol ol ol ol {
  counter-reset: list;
}

ol ol ol ol li::before {
  content: "(" counter(list, lower-alpha) ") ";
  counter-increment: list;
}

.bold-headings > ol > li {
    font-weight: bold;
}
