@mixin divider-bottom {
  padding-bottom: 1em;
  border-bottom: 1px solid $border-color;
  margin-bottom: 1em;
}

@mixin divider-top {
  padding-top: 1em;
  border-top: 1px solid $border-color;
  margin-top: 1em;
}

@mixin divider-right {
  padding-right: 1em;
  border-right: 1px solid $border-color;
  margin-right: 1em;
}

@mixin divider-left {
  padding-left: 1em;
  border-left: 1px solid $border-color;
  margin-left: 1em;
}

@mixin divider-none {
  padding: 0;
  border: 0 none;
  margin: 0;
}

@mixin button {
  @include border-radius(4px);
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  color: $background-color;
  background-color: $link-color;
  &:hover,
  &:focus {
    text-decoration: none;
    background-color: $link-color-hover;
    color: $background-color;
  }
}

@mixin button-highlight {
  @include button;
  background-color: $highlight-color;
  &:hover,
  &:focus {
    background-color: $highlight-color-hover;
  }
}

@mixin button-subtle {
  @include button;
  background-color: $background-color;
  color: $link-color;
  border: 1px solid $border-color;
  &:hover,
  &:focus {
    color: $link-color;
    background-color: $background-color-subtle;
  }
}

@mixin button-reverse {
  @include button;
  background-color: $background-color-subtle;
  color: $link-color;
  &:hover,
  &:focus {
    color: $link-color-hover;
    background-color: $background-color;
  }
}

@mixin button-form {
  @include button;
  border: 0 none;
  font-size: 1em;
  &:hover,
  &:focus {
    cursor: pointer;
  }
}

@mixin screenreader-text {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

@mixin not-visually-hidden {
  border: inherit;
  clip: inherit;
  height: inherit;
  margin: inherit;
  overflow: inherit;
  padding: inherit;
  position: inherit;
  width: inherit;
}

@mixin reset-list {
  margin-left: 0;
  margin-top: 0;
  li {
    list-style-type: none;
  }
}

@mixin inline-list {
  margin-bottom: 1.5em;

  li {
    display: inline;
    margin-right: 0.25em;
    
    &:last-of-type {
      margin-right: 0;
    }
  }
}