.nsw-pagination {
  @include font-stack('heading');
  @include nsw-spacing(margin, sm none none none);
  @include nsw-spacing(padding-left, none);
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;

  &__item {
    @include nsw-spacing(margin, none none none xs);

    &--next-page {
      @include nsw-spacing(margin, none none none md);
    }

    &--prev-page {
      @include nsw-spacing(margin, none md none none);

      + .nsw-pagination__item {
        @include nsw-spacing(margin-left, none);
      }
    }
  }

  &__link {
    position: relative;
    display: inline-flex;
    text-decoration: none;
    vertical-align: middle;
    padding: rem(4px) rem(8px);
    color: $dark80;
    text-align: center;
    min-width: rem(24px);

    &:hover {
      @include nsw-hover;
    }

    &:focus {
      @include nsw-focus($offset: false);
    }

    &.is-current::after {
      position: absolute;
      content: '';
      bottom: 0;
      width: 80%;
      left: 50%;
      transform: translateX(-50%);
      height: 2px;
      background-color: $nsw-primary-blue;
    }
  }

  &__text {
    vertical-align: middle;
  }
}
