.side-menu {
  line-height: 1.4;
  font-size: .875rem;
}

.side-menu__section + .side-menu__section {
  margin-top: 2rem;
}

.side-menu__section-title {
  font-weight: 700;
}

.side-menu__subsection {
  margin-top: 1.125rem;
}

.side-menu__subsection-title {
  font-size: .625rem;
  //font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 0 0 .56rem 1rem;
  color: #1C1C1C;
}

.side-menu__link {
  a {
    position: relative;
    color: inherit;
    display: block;
    text-decoration: none;
    padding: .10rem 1rem;
    border-left: 2px solid transparent;
    transition: border-color .15s;

    &:hover {
      border-color: #0A7307;
    }
  }

  & + &,
  ul {
    margin-top: .4rem;
  }

  &--active a {
    border-color: #0A7307;
    color: #35812F;
    font-weight: 700;
  }

  ul .side-menu__link a {
    padding-left: 2rem;
  }
}

.side-menu__subsection-content {
  position: relative;

  &:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    border-left: 1px solid #bababa;
  }
}