.hero {
  padding: 30px 30px 0;

  @media screen and (max-width: 1680px) {
    padding: 20px 20px 0;
  }

  @media screen and (max-width: 1440px) {
    padding: 16px 16px 0;
  }

  @media (max-width: 1024px) {
    padding: 0;
  }

  .hero-slider-wrap {
    position: relative;

    .hero-slider {
      z-index: 1;

      .swiper-slide {
        position: relative;

        figure {
          z-index: 1;

          @media (max-width: 1024px) {
            position: relative;
            height: 100vh;
          }

          &:before {
            display: block;
            position: absolute;
            content: '';
            width: 100%;
            height: 100%;
            left: 0;
            top: 0;
            background-color: var(--color-black);
            opacity: 0.4;
            z-index: 2;
          }

          img {
            width: 100%;
            z-index: 2;

            @media (max-width: 1024px) {
              position: absolute;
              height: 100%;
              left: 0;
              top: 0;
              object-fit: cover;
            }
          }
        }

        .container-wide {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          color: var(--color-white);
          z-index: 2;

          @media (max-width: 1280px) {
            width: 100%;
            margin: 0;
            padding: 0 20px;
            text-align: center;
          }

          h1 {
            margin-bottom: 20px;
          }

          h2 {
            margin: 0 0 50px;
            font-weight: 100;
          }

          .cta {
            display: flex;

            @media (max-width: 1280px) {
              justify-content: center;
            }
          }
        }
      }
    }

    .hero-slider-pagination {
      display: flex;
      position: absolute;
      width: auto;
      left: 50%;
      bottom: 80px;
      transform: translateX(-50%);
      z-index: 2;

      @media (max-width: 1680px) {
        bottom: 70px;
      }

      @media (max-width: 1600px) {
        bottom: 60px;
      }

      @media (max-width: 1440px) {
        bottom: 50px;
      }

      @media (max-width: 1366px) {
        bottom: 40px;
      }

      @media (max-width: 1280px) {
        bottom: 30px;
      }

      .swiper-pagination-bullet {
        position: relative;
        width: 30px;
        height: 30px;
        border-radius: 0;
        background-color: transparent;

        @media (max-width: 1024px) {
          width: 16px;
          height: 16px;
        }

        &:before {
          display: block;
          position: absolute;
          content: '';
          width: 2px;
          height: 30px;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%) rotate(45deg);
          background-color: var(--color-white);
          opacity: 0.2;
          border-radius: 0;
        }

        &.swiper-pagination-bullet-active {
          &:before {
            opacity: 1;
          }
        }
      }
    }
  }
}