.cursor-pointer {
  cursor: pointer;
}

.common_container {
  max-width: 1240px;
  margin: auto;
}

/* common classes */
.common_green_button {
  font-family: "Geologica", sans-serif;
  border: 1px solid var(--color-green);
  font-weight: 600;
  line-height: var(--line-height-113);
  font-size: 16px !important;
  color: var(--color-dark-black);
  background-color: var(--color-green) !important;
  border-radius: 100px;
  padding: 15px 31px;
  transition: all 300ms linear;

  &:hover {
    background-color: var(--color-off-white) !important;
    border-color: var(--color-off-white);
  }
}

.common_border_button {
  font-family: "Geologica", sans-serif;
  border: 1px solid var(--color-off-white);
  font-weight: 600;
  line-height: var(--line-height-113);
  font-size: 16px;
  color: var(--color-off-white);
  background-color: transparent !important;
  border-radius: 100px;
  padding: 15px 31px;
  transition: all 300ms linear;

  &:hover {
    background-color: var(--color-off-white) !important;
    color: var(--color-dark-black);
  }
}

/* hero section */
.hero_section {
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  height: 908px;
  margin: 0 auto;
  overflow-x: clip;

  @media (min-width: 768px) {
    background-image: url(../images/webp/hero-bg-img.webp);
  }

  @media (max-width: 1023.98px) {
    height: 1113px;
  }

  @media (max-width: 767.98px) {
    background-image: url(../images/png/mobile-bg-img.png);
    background-size: 100% 100% !important;
  }

  .hero_img {
    max-width: 576px;
    right: 0;

    @media (min-width: 1441px) {
      display: none !important;
    }

    @media (min-width: 1024px) {
      top: 160px;
    }

    @media (max-width: 1199.98px) {
      width: 48%;
      max-width: none;
    }

    @media (max-width: 1023.98px) {
      bottom: 160px;
      width: 50%;
    }

    @media (max-width: 991.98px) {
      width: 55%;
    }
  }

  .hero_desktop_img_wrapper {
    width: 600px;

    .hero_desktop_img {
      width: 667px;
      height: auto;
        @media (max-width: 2551px) {
      margin-left: 64px;
    }
     @media (max-width: 1441.98px) {
      margin-left: 0px;
    }
    }
  }

  .mobile_hero_img {
    width: 77%;
    right: 0;
    bottom: 110px;

    @media (max-width: 575.98px) {
      max-width: 370px;
      width: 100%;
      bottom: 135px;
    }

    @media (max-width: 499.98px) {
      width: 95%;
      max-width: none;
    }
  }

  .px_20 {
    padding-left: 20px;
    padding-right: 20px;
  }

  nav {
    padding-top: 25px;
    padding-bottom: 24px;
    border-bottom: 1px solid #fefefe29;

    @media (max-width: 767.98px) {
      padding-top: 12px;
      padding-bottom: 12px;
    }

    .nav_logo {
      max-width: 207px !important;

      @media (max-width: 767.98px) {
        max-width: 114px !important;
      }
    }

    .nav_links {
      gap: 28px;

      @media (max-width: 1199.98px) {
        gap: 20px;
      }

      @media (max-width: 1023.98px) {
        display: flex !important;
        flex-direction: column;
        background-image: url(/assets/images/png/navbar-bg-image.png) !important;
        background-repeat: no-repeat !important;
        background-size: cover !important;
        width: 100%;
        min-height: 100vh;
        position: fixed;
        justify-content: center;
        align-items: center;
        gap: 28px;
        bottom: 0;
        right: -100% !important;
        top: 0;
        transition: all 300ms linear !important;
        z-index: 5;
      }

      &.show-navbar {
        @media (max-width: 1023.98px) {
          right: 0 !important;
        }
      }

      .navbar-link {
        font-size: 18px !important;
        position: relative;
        transition: all 300ms linear;

        @media (max-width: 991.98px) {
          font-size: 28px !important;
        }

        @media (max-width: 768px) {
          font-size: 20px !important;
        }
      }

      .navbar-link::after {
        content: "";
        position: absolute;
        bottom: -4px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 2px;
        background-color: var(--color-off-white);
        transition: width 300ms ease;
      }

      .navbar-link:hover::after {
        width: 100%;
      }

      .nav-dropdown {
        display: flex;
        align-items: center;
        gap: 10px;
        cursor: pointer;
        position: relative;

        .navbar-link {
          svg {
            transition: all 0.3s linear;
          }
        }

        &:hover {
          .navbar-link {
            svg {
              transform: rotate(180deg);
            }
          }

          .dropdown-menu-custom {
            opacity: 1;
            visibility: visible;
          }
        }

        .dropdown-menu-custom {
          position: absolute;
          top: 100%;
          left: 0;
          background-color: var(--color-off-white);
          border-radius: 10px;
          padding: 5px;
          display: flex;
          flex-direction: column;
          gap: 5px;
          opacity: 0;
          visibility: hidden;
          transition: all 300ms linear;
          z-index: 10;

          li {
            width: 100%;
          }

          .dropdown-item {
            color: var(--color-dark-black);
            font-size: 16px;
            font-weight: 600;
            line-height: var(--line-height-113);
            padding: 5px 8px;
            border-radius: 5px;
            background: #043b6f33;
            transition: all 300ms linear;
            width: 100%;

            &:hover {
              background-color: var(--color-green);
              color: var(--color-off-white);
            }
          }
        }

        .navbar-link::after {
          display: none;
        }
      }
    }

    .menu-bar {
      @media (min-width: 1024px) {
        display: none !important;
      }
    }

    .z-5 {
      z-index: 5;
    }

    .common-class {
      height: 2px;
      margin-bottom: 4.5px;
      background-color: var(--color-off-white) !important;
      transition: all 300ms linear;
      border-radius: 24px;
      z-index: 10;
      display: flex;
      width: 24px;
      transition: all 300ms linear;

      @media (max-width: 768px) {
        width: 16.5px;
        height: 1px;
      }
    }

    .menu-lines-3 {
      margin-bottom: 0;
    }

    .show-navbar ~ * .menu-lines-1,
    #rotates.color-oranges {
      transform: rotate(45deg) translate(1px, 5px);
    }

    #transparent.color-oranges {
      opacity: 0;
      width: 0 !important;
    }

    #rotates-2.color-oranges {
      transform: rotate(-45deg) translate(4px, -8px);

      @media (max-width: 768px) {
        transform: rotate(-45deg) translate(2px, -7px);
      }
    }
  }

  .mt_104 {
    margin-top: 104px;

    @media (max-width: 1023.98px) {
      margin-top: 60px;
    }

    @media (max-width: 575.98px) {
      margin-top: 120px;
    }
  }

  .hero_left_content {
    max-width: 665px;

    @media (max-width: 1199.98px) {
      max-width: 50%;
    }

    @media (max-width: 1023.98px) {
      max-width: none;
    }

    .gap_10 {
      gap: 10px;
    }

    .line {
      height: 1px;
      width: 40px;
      background: var(--color-off-white);
    }

    .hero_heading {
      max-width: 665px;
      padding-top: 20px;
    }

    .hero_para {
      max-width: 537px;

      @media (max-width: 575.98px) {
        font-size: 14px !important;
      }
    }

    .hero_label {
      @media (max-width: 575.98px) {
        font-size: 12px !important;
      }
    }

    .mt_32 {
      margin-top: 32px;
    }

    .w_sm_100 {
      @media (max-width: 575.98px) {
        width: 100%;
      }
    }
  }
}

/* all in one section */
.all_in_one_section {
  padding: 100px 20px 120px 20px;
  overflow-x: clip;

  @media (max-width: 991.98px) {
    padding: 80px 20px 90px 20px;
  }

  @media (max-width: 575.98px) {
    padding: 60px 20px 60px 20px;
  }

  .all_in_one_left_content {
    max-width: 574px;
    width: 100%;

    @media (max-width: 1199.98px) {
      max-width: 500px;
    }

    .gap_10 {
      gap: 10px;
    }

    .blue-line {
      height: 1px;
      width: 40px;
      background: var(--color-neavy-blue);
    }

    .all_in_one_heading {
      padding-top: 20px;

      @media (max-width: 575.98px) {
        padding-top: 10px;
      }
    }

    .all_in_one_para {
      color: #010101b2;

      @media (max-width: 576px) {
        font-size: 14px !important;
      }
    }
  }

  .gap_20 {
    gap: 20px;

    @media (max-width: 767.98px) {
      gap: 60px;
    }
  }

  .all_in_one_img_box {
    max-width: 412px;
    width: 100%;

    @media (max-width: 575.98px) {
      max-width: 334px;
    }
  }

  .mt_60 {
    margin-top: 60px;

    @media (max-width: 767.98px) {
      margin-top: 50px;
    }
  }

  .all_in_one_card {
    max-width: 397px;
    padding: 23px;
    border: 1px solid #043b6f1f;
    border-radius: 16px;
    transition: all 300ms linear;

    @media (max-width: 575.98px) {
      padding: 23px 19px 23px 23px;
    }

    .icon-box {
      height: 60px;
      width: 60px;
      border-radius: 100%;
      background: var(--color-neavy-blue);
      transition: background-color 300ms ease;

      svg {
        transition: color 300ms ease;
        color: #fefefe;

        path {
          fill: currentColor;
          transition: fill 300ms ease;
        }
      }
    }

    .white-blur-box {
      height: 140px;
      top: -50px;
      right: -65px;
      pointer-events: none;
      width: 140px;
      background: var(--color-off-white);
      border-radius: 100%;
      filter: blur(100px);
    }

    .all_in_one_card_heading {
      font-size: 24px !important;
      transition: all 300ms ease;
    }

    .custom_list {
      margin-top: 12px;
      list-style-type: disc !important;
      padding-left: 28px;

      li {
        font-size: 18px !important;
        color: #010101b2 !important;
        transition: color 300ms ease;
      }
    }

    &:hover {
      background-color: var(--color-neavy-blue);
      border-color: #043b6f1f;
      box-shadow: 4px 4px 17.5px 0px #043b6f40;

      .icon-box {
        background: var(--color-off-white);

        svg {
          color: var(--color-neavy-blue);
        }
      }

      .all_in_one_card_heading {
        color: var(--color-off-white) !important;
      }

      .custom_list li {
        color: var(--color-off-white) !important;
      }
    }
  }

  /* slider */
  .all_in_one_swiper {
    .swiper-slide {
      height: auto;

      .all_in_one_card {
        max-width: none;
        height: 100%;
      }
    }

    .swiper-slide.swiper-slide-active {
      .all_in_one_card {
        background-color: var(--color-neavy-blue);
        border-color: #043b6f1f;
        box-shadow: 4px 4px 17.5px 0px #043b6f40;

        .icon-box {
          background: var(--color-off-white);

          svg {
            color: var(--color-neavy-blue);
          }
        }

        .all_in_one_card_heading {
          color: var(--color-off-white) !important;
        }

        .custom_list li {
          color: var(--color-off-white) !important;
        }
      }
    }

    .all_in_one_swiper_dots {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 14px;
      margin-top: 24px;

      @media (max-width: 575.98px) {
        margin-top: 40px;
        gap: 8px;
      }

      .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
        border-radius: 100px;
        background-color: #043b6f1a;
        transition: all 300ms linear;
        cursor: pointer;
        opacity: 100%;
        margin: 0 !important;
      }

      .swiper-pagination-bullet-active {
        /* width: 12px;
        height: 12px; */
        background-color: #043b6f66;
      }
    }
  }
}
