body {
  font-family: 'Open Sans', sans-serif;
  color: #333;
  line-height: 1.4;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0.7em 0 0.3em 0;
  font-weight: 300;
}

h1 {
  font-size: 3em;
}

h2 {
  font-size: 2.5em;
}

h3 {
  font-size: 2em;
  font-weight: 400;
}

h4 {
  font-size: 1.5em;
  font-weight: 700;
}

h5 {
  font-size: 1.17em;
  font-weight: 700;
}

h6 {
  font-size: 1em;
  font-weight: 700;
}

.extra-info {
  font-size: 0.7em;
  color: #666;
}

.heading-extra-info {
  font-size: 0.7em; /* Fallback for browsers that don't support rem */
  font-size: 0.7rem;
  font-weight: normal;
  color: #666;
  margin-left: 1em;
}

div.heading-extra-info {
  margin-left: 0;
}

a:link,
a:visited {
  color: #0979C6;
}

a:hover,
a:active {
  color: #0C71AA;
}

.bold {
  font-weight: 600;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

sub {
  vertical-align: sub;
  font-size: smaller;
}

.break-word {
  word-wrap: break-word;
}

.screen-reader-only {
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}