.features-section {
  @media (max-width: 749px) {
      flex-direction: column;
      .swiper {
        margin-bottom: 30px;
      }
  }
  .slideshow {
    @media (min-width: 750px) {
      width: 55%;
      flex: 0 0 55%;
    }
  }
  .banner:after {
    display: none;
  }
  .product--features, .general-features {
    @media (min-width: 750px) {
      width: calc(45% / 2);
      flex: 0 0 calc(45% / 2);
    }
    position: relative;
    h2 {
      margin: 0;
      font-size: 3.5rem;
      line-height: 3.8rem;
      font-family: var(--font-body-family);
      font-style: var(--font-body-style);
      font-weight: var(--font-body-weight);
      margin-bottom: 1rem;
      &:before {
        content: '';
        display: block;
        background-image: var(--accent-image);
        background-repeat: no-repeat;
        width: 14px;
        height: 14px;
        margin: 0 auto 10px;
      }
    }
    p {
      font-size: 1.6rem;
      line-height: 2.5rem;
      margin: 0 0 9.3rem;
      @media (max-width: 749px) {
        display: none;
      }
    }
    .feature {
      width: 100%;
      @media (min-width: 750px) {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        padding: 25px;
        &.visible {
          opacity: 1;
        }
      }
      @media (max-width: 749px) {
        display: none;
        flex-direction: column;
        align-items: flex-start;
        padding: 0;
        gap: 20px;
        h2 {
          font-size: 24px;
          line-height: 26px;
          margin-bottom: 0;
          &:before {
            display: none;
          }
        }
        &.visible {
          display: flex;
        }
        > div {
          width: 100%;
          display: flex;
          gap: 20px;
          align-items: center;
          margin-bottom: 0px;
          justify-content: center;
        }
      }
      transition: .3s all ease-in-out;
      padding: 25px;
    }
  }
  .banner__buttons {
    display: none;
    &.visible {
      display: block;
    }
    .button {
      text-transform: uppercase;
      font-weight: 800;
      font-size: 2.5rem;
      line-height: 1em;
      min-width: 280px;
      height: 72px;
      margin: 0 38px;
      @media (max-width: 749px) {
        min-width: 220px;
        margin: 0 20px;
        height: 60px;
        font-size: 2rem;
      }
      &:before, &:after {
        display: none;
      }
    }
  }
}

.features__desktop-nav {
  .slide__buttons {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-bottom: 60px;
    .button {
      height: 7.5rem;
      padding: 0 5rem;
      &:before, &:after {
        display: none;
      }
    }
  }
  .banner__buttons:not(.visible) {
    .button {
      background-color: #F2EEE1 !important;
      color: #1D170C !important;
    }
  }
}
