/* Reset */
html, head, body, header, main, section,
h1, h2, h3, ul, li, div, p, span, a, button, input, form, pre {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: inherit;
  text-decoration: inherit;
  font-family: inherit;
  font-weight: inherit;
  color: inherit;
  background: transparent; }

a:focus, a:active,
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
select::-moz-focus-inner,
input[type="file"] > input[type="button"]::-moz-focus-inner {
  border: 0;
  outline: 0; }

/* Clearfix */
.group:after {
  content: "";
  display: block;
  clear: both; }

html {
  font-family: "freight-text-pro", Times, Georgia, sans-serif;
  font-size: 1em;
  overflow-y: scroll; }

html, body {
  height: 100%;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: auto; }

.sidebar {
  position: fixed;
  z-index: 5;
  top: 5.5em;
  left: 0;
  color: #33465A;
  background: #F6F6F6;
  width: 17em;
  height: 100%;
  font-size: 1em;
  margin-right: 0.1em; }
  .sidebar ::-webkit-scrollbar {
    display: none;
    background: rgba(255, 255, 255, 0.5); }
  .sidebar .sidebar-list {
    overflow-y: scroll;
    position: absolute;
    background: #F6F6F6;
    width: 17em;
    height: 100%;
    z-index: 10;
    top: 0;
    left: 0;
    list-style: none; }
    .sidebar .sidebar-list * {
      text-decoration: none; }
      .sidebar .sidebar-list *:hover {
        color: #33465A; }

.sidebar-list-item {
  width: 15.5em;
  padding: 1em 0em 0.5em 2em;
  vertical-align: center; }
  .sidebar-list-item > a:hover {
    background: #1B4F78;
    color: #fff; }
  .sidebar-list-item:first-child {
    margin-top: 2em; }

.sidebar-title {
  font-family: 'source-sans-pro', Helvetica, Arial, sans-serif;
  font-size: 1.125em;
  font-weight: 400;
  display: block;
  cursor: pointer; }
  .sidebar-title:hover {
    text-decoration: underline; }
  .sidebar-title i {
    display: block;
    float: right;
    line-height: inherit;
    color: #aaa; }

.sidebar-list-item .subnav {
  padding-bottom: 1em; }

.sidebar__sublist {
  font-family: 'source-sans-pro', Helvetica, Arial, sans-serif;
  font-weight: 400;
  border-left: 2px solid #E7E7E7;
  margin-top: 1em; }

.sidebar-title.reference {
  color: #33465A;
  margin-bottom: 3em; }
  .sidebar-title.reference i {
    display: none; }

.sidebar-title.reference.active i {
  color: #F27C00; }

.sidebar-title.active {
  background: #F6F6F6;
  color: #F27C00;
  font-weight: 700; }
  .sidebar-title.active i {
    color: #F27C00; }
  .sidebar-title.active:hover {
    color: #F27C00; }

.subnav__link.active {
  color: #F27C00;
  font-weight: 700; }
  .subnav__link.active:hover {
    text-decoration: underline;
    color: #F27C00; }

.sidebar-bottom {
  height: 5.5em; }

.subnav {
  margin-left: 1.5em;
  background: #F6F6F6;
  font-size: 1em; }
  .subnav li {
    padding: 0 .5em 1em 0em; }
  .subnav li:first-child {
    padding-top: 1em; }
  .subnav li:last-child {
    padding-bottom: 0.25em; }
  .subnav a:hover {
    text-decoration: underline;
    color: #33465A; }

.sidebar-list-item > .subnav li a {
  text-transform: uppercase; }

.sidebar-trans-appear {
  opacity: 0.01; }

.sidebar-trans-appear.sidebar-trans-appear-active {
  opacity: 1;
  transition: opacity 300ms ease-in; }

.sidebar-trans-enter {
  opacity: 0.01; }

.sidebar-trans-enter.sidebar-trans-enter-active {
  opacity: 1;
  transition: opacity 300ms ease-in; }

.sidebar-trans-leave {
  opacity: 1; }

.sidebar-trans-leave.sidebar-trans-leave-active {
  opacity: 0.01;
  transition: opacity 300ms; }

.main-content {
  left: 17em;
  position: absolute;
  width: calc(100% - 17em);
  margin: 0;
  padding: 0 1em;
  background: #fff;
  list-style: inside; }

.four-oh-four {
  text-align: center;
  width: 30em;
  margin: 10em auto; }
  .four-oh-four img {
    width: 30em;
    margin: auto; }

@media screen and (max-width: 700px) {
  .sidebar {
    height: calc(100% - 5.5em); }
  .main-content {
    left: 0;
    width: 100%;
    margin-left: 0;
    padding: 0; } }
