.generic-related {
  margin: 0;
  overflow: hidden;
  position: relative;
  margin-bottom: 50px;

  &__content {
    position: relative;
    margin-bottom: 50px;
    max-width: $max-width;
    margin: 0 auto;
  }

  &__title {
    margin-left: 8.3%;
    margin-bottom: 25px;
    font-size: 3rem;
    line-height: 3.8rem;
    font-weight: 700;
    color: $primary-color;
  }

  &__row-holder {
    padding: 0 $half-gutter;
  }

  &__row {
    display: flex;
    transition: transform 300ms ease-out;
  }

  &__item {
    min-width: 30%;
    padding: 0 $half-gutter;
    transform: translateY(20px);
    opacity: 0.6;
    transition: transform 300ms ease-out, opacity 300ms ease-out;

    &.js-on-display {
      opacity: 1;
      transform: translateY(0px);
    }

    &-title {
      font-family: var(--font-heading);;
      font-size: 2.1rem;
      font-weight: 600;
      line-height: 2.4rem;
      margin: 10px;
    }

    &-tile {
      padding-top: 0;
      overflow: hidden;
    }

    &-bg {
      padding-top: 62%;
      background-size: cover;
    }
  }

  &__nav {
    position: absolute;
    top: -10px;
    right: 20px;
    display: flex;

    a {
      width: 60px;
      height: 60px;
      border-radius: 50%;
      margin: 3px;
      display: flex;
      justify-content: center;
      align-items: center;
      transition: background-color 250ms ease-out;

      &.js-inactive {
        pointer-events: none;
        opacity: 0.4;
      }

      &:after {
        content: ' ';
        height: 10px;
        width: 10px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        border-color: $primary-color;
        display: block;
        transform: rotate(45deg);
        margin-left: -4px;
        transition: border-color 250ms ease-out;
      }

      &:hover {
        background: #002145;

        &:after {
          border-color: #fff;
        }
      }

      &.generic-related__nav-prev:after {
        transform: rotate(-135deg);
        margin-left: -1px;
      }
    }

    @include md {
      display: none;
    }
  }
}
