.btn {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  margin: 1rem 0.5rem 10px 0;
  @include focusable();
  border-radius: 5px;
  font-size: $base_font_size;
  padding: 0.75rem 2rem;
  min-width: 100px;
  cursor: pointer;
  box-shadow: 2px 3px 3px rgba($grey_darkest, 0.25);
  position: relative;

  &:disabled {
    background-color: var(--greyscale-5);
    opacity: 0.5;
    font-style: italic;
  }

  &:active {
    box-shadow: none;
    position: relative;
    &::before {
      content: '';
      pointer-events: none;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.2);
    }
  }

  &.loading {
    color: transparent !important;
  }
}

.btn-loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
