/* ! Navbar override */
@media screen and (min-width: 576px) {
  .nav-overlay:not(.open) .nav-bar {
    padding-top: 50px !important;
    .hamburger-icon {
      transform: translateX(-39px);
    }
  }
}

/* About us hero section start from here */
.about-us-hero-section {
  background: var(--light-color);
  height: 100svh;
  max-height: 854px;
  position: relative;

  .menu-btn {
    position: absolute;
    width: 43px;
    height: 41px;
    top: 50px;
    right: 88px;
    background: transparent;
    border: none;
  }

  .row {
    --bs-gutter-x: 0px;
  }

  .content {
    padding-inline: 59px;
    padding-block: 56px;
    .title {
      font-family: Outfit;
      font-size: 64px;
      font-weight: 600;
      line-height: 80.64px;
      color: var(--gray_900);
      margin-bottom: 28px;
    }

    .subtitle {
      font-family: Nunito;
      font-size: 32px;
      font-weight: 600;
      line-height: 38.4px;
      letter-spacing: -0.01em;
      margin-bottom: 0px;

      span {
        color: var(--primary-color);
        font-style: italic;
      }
    }
  }

  .bottom-content {
    background: linear-gradient(148.4deg, #545454 -4.16%, #000000 100%);
    padding: 96px 59px;
    .description {
      font-family: Outfit;
      font-size: 20px;
      font-weight: 500;
      line-height: 30px;
      color: var(--color-dim-light);
      padding-bottom: 44px;
      position: relative;
      &::after {
        content: "";
        position: absolute;
        bottom: 0px;
        left: 0px;

        width: 50%;
        max-width: 300.5px;
        height: 3px;
        background: var(--light-color);
      }
    }
  }

  .featured-image-container {
    width: 100%;
    height: 100%;

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }
  }

  @media only screen and (max-width: 991px) {
    height: unset;
    max-height: unset;

    .menu-btn {
      right: 57px;
    }
  }
  @media only screen and (max-width: 768px) {
    .menu-btn {
      top: 50px;
      right: 40px;
    }
    .content {
      padding: 45px 40px;
      .title {
        font-size: 52px;
        margin-bottom: 20px;
        line-height: 70px;
      }
      .subtitle {
        font-size: 24px;
      }
    }
    .bottom-content {
      padding: 45px 40px;

      .description {
        font-size: 18px;
        padding-bottom: 20px;
      }
    }
  }
  @media only screen and (max-width: 576px) {
    .content {
      .title {
        font-size: 42px;
        line-height: 58px;
        margin-bottom: 15px;
      }
      .subtitle {
        font-size: 18px;
        line-height: 28px;
      }
    }
    .bottom-content {
      padding: 45px 40px;

      .description {
        font-size: 16px;
        line-height: 24px;
        padding-bottom: 15px;
      }
    }
  }
}
/* About us hero section end from here */

/* What we do section start from here */
.what-we-do-section {
  padding-top: 120px;
  padding-bottom: 170px;
  padding-right: 53px;
  padding-left: 56px;
  background: var(--light-color);
  .row {
    --bs-gutter-x: 38px;
  }

  .image-wrapper {
    /* width: 100%; */
    height: 400px;
    /* max-width: 400px; */
    aspect-ratio: 1/1;
    box-shadow: 0px 4px 20px 0px #000000;

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }

  .headings {
    display: flex;
    flex-direction: column;
    align-items: end;
    text-align: end;

    h2 {
      font-family: Outfit;
      font-size: 64px;
      font-weight: 500;
      line-height: 80.64px;
      color: var(--black);
      margin-bottom: 39px;
    }

    h6 {
      font-family: Outfit;
      font-size: 48px;
      font-weight: 400;
      line-height: 60px;
      color: #f4c134;

      span {
        color: var(--color-dim-gray);
      }
    }
  }

  .description {
    font-family: Outfit;
    font-size: 24px;
    font-weight: 400;
    line-height: 30.24px;
    color: var(--color-dim-gray);
    padding-right: 18%;
    margin-top: 68px;
  }

  .three-line {
    position: absolute;
    bottom: 0px;
    left: -57px;
    width: 40vw;
    max-width: 504.5px;
    z-index: 1;
    height: unset;
  }

  .big-image-container {
    width: 100%;
    height: 100%;
    max-height: 500px;
    margin-top: 4px;
    box-shadow: 0px 4px 20px 0px #000000;

    float: right;
    position: relative;
    z-index: 2;
    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }

  @media only screen and (max-width: 1200px) {
    .description {
      padding-right: 0px;
      font-size: 28px;
      line-height: 38px;
    }

    .big-image-container {
      width: 90%;
    }
  }
  @media only screen and (max-width: 1024px) {
    .headings {
      h2 {
        font-size: 52px;
        line-height: 70px;
      }
      h6 {
        font-size: 32px;
        line-height: 48px;
      }
    }
  }
  @media only screen and (max-width: 991px) {
    .headings {
      h2 {
        font-size: 42px;
        line-height: 52px;
        margin-bottom: 25px;
      }
      h6 {
        font-size: 24px;
        line-height: 32px;
      }
    }

    .image-wrapper {
      width: 100%;
      height: unset;
    }

    .big-image-container {
      width: 100%;
    }
  }
  @media only screen and (max-width: 768px) {
    padding: 60px 40px;
    .headings {
      text-align: center;
      align-items: center;
      margin-bottom: 25px;
      h2 {
        font-size: 32px;
        line-height: 48px;
        margin-bottom: 15px;
      }
      h6 {
        font-size: 18px;
        line-height: 24px;
      }
    }

    .description {
      font-size: 24px;
      line-height: 32px;
    }

    .three-line {
      display: none;
    }
  }
  @media only screen and (max-width: 576px) {
    padding-inline: 20px;
    .description {
      margin-top: 40px;
      font-size: 18px;
      line-height: 24px;
    }
  }
}
/* What we do section end from here */

/* Milestone section start from here */
.milestone-section {
  margin-bottom: 120px;
  .row {
    --bs-gutter-x: 0px;
  }

  @media only screen and (max-width: 991px) {
    margin-bottom: 80px;
  }
  @media only screen and (max-width: 768px) {
    margin-bottom: 60px;
  }

  .milestone-card {
    --ms-card-bg: var(--color-black);
    --ms-card-gap: 48.7px;
    --ms-card-p: 59px;
    background: var(--ms-card-bg);

    height: 863.36px;
    width: 100%;

    padding: var(--ms-card-p);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--ms-card-gap);

    &.mission {
      --ms-card-bg: var(--color-black);
      --ms-card-gap: 48.7px;
      --ms-card-p: 47px 59px 148px 59px;
    }
    &.vision {
      --ms-card-bg: var(--primary-color);
      --ms-card-gap: 77.47px;
      --ms-card-p: 157px 59px 68px 59px;

      .img-container {
        order: 3;
      }
    }
    &.goal {
      --ms-card-bg: #f4c134;
      --ms-card-gap: 82.26px;
      --ms-card-p: 121px 59px 120px 59px;

      .img-container {
        width: 244.93px;
        height: 246.35px;
      }
    }

    .img-container {
      width: 100%;
      height: 359.96px;
      display: flex;
      justify-content: center;

      img {
        width: 100%;
        height: 100%;
        object-fit: contain;
      }
    }

    .milestone-action {
      height: 60.95px;
      padding: 15.97px 31.95px 15.97px 31.95px;
      border-radius: 39.93px;
      border: 0.8px solid #f8f8f8;
      background: transparent;
      font-family: Inter;
      font-size: 24px;
      font-weight: 600;
      line-height: 28.8px;
      color: #f8f8f8;
    }

    .milestone-description {
      font-family: Inter;
      font-size: 16px;
      font-weight: 400;
      line-height: 30px;
      color: #f8f8f8;

      margin: 0px;
    }

    @media only screen and (max-width: 1140px) {
      & {
        height: 650px;

        .img-container {
          height: 220px;
        }
      }
      &.mission {
        --ms-card-gap: 40px;
        --ms-card-p: 47px 40px 100px 40px;
        /* .milestone-description {
          font-size: 20px;
          line-height: 30px;
        } */
      }
      &.vision {
        --ms-card-gap: 40px;
        --ms-card-p: 100px 40px 40px 40px;
        /* .milestone-description {
          font-size: 20px;
          line-height: 30px;
        } */
      }
      &.goal {
        --ms-card-gap: 40px;
        --ms-card-p: 47px 40px 100px 40px;

        /* .milestone-description {
          font-size: 20px;  
          line-height: 30px;
        } */

        .img-container {
          height: 150px;
        }
      }
    }
    @media only screen and (max-width: 991px) {
    }
    @media only screen and (max-width: 768px) {
      & {
        height: unset;
        gap: 25px;

        .img-container {
          height: auto;
        }

        &.goal {
          .img-container {
            height: auto;
          }
        }

        .milestone-description {
          font-size: 18px;
          line-height: 24px;
          text-align: center;
        }

        .milestone-action {
          font-size: 18px;
          height: 46px;
          padding-block: 8px;
        }
      }
    }
    @media only screen and (max-width: 576px) {
      & {
        /* height: 480px; */
        gap: 15px !important;

        .milestone-description {
          font-size: 16px;
          line-height: 24px;
        }
      }
    }
  }
}
/* Milestone section end from here */

/* Showcase section start from here */
.showcase-section {
  position: relative;

  background: linear-gradient(180deg, #202020 0%, #000000 100%);
  padding: 107px 55px 53px 55px;
  .container {
    position: relative;
    z-index: 2;
  }
  .row {
    --bs-gutter-x: 0px;
  }

  &::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    bottom: 0px;
    width: 50%;
    height: 100%;
    background: linear-gradient(149.05deg, #545454 -4.44%, #000000 110.61%);
    z-index: 1;
  }

  .showcase-featued-img {
    width: 100%;
    height: 832px;
    max-height: 832px;
    box-shadow: 0px 5.33px 26.63px 0px #000000;
    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }

  .title {
    font-family: Outfit;
    font-size: 64px;
    font-weight: 600;
    line-height: 106.52px;
    color: var(--light-color);

    margin-top: 36.97px;
    margin-bottom: 168px;
  }

  .subtitle {
    font-family: Poppins;
    font-size: 20px;
    font-weight: 300;
    line-height: 30px;
    color: var(--light-color);
    max-width: 401px;
    margin: 0px;
    padding-bottom: 10px;
    border-bottom: 3.99px solid var(--light-color);
  }

  .description {
    font-family: Outfit;
    font-size: 24px;
    font-weight: 400;
    line-height: 30.24px;
    color: var(--light-color);

    padding-left: 85.17px;
    margin-top: 45.86px;
    margin-bottom: 110px;
  }

  .three-lines {
    position: absolute;
    bottom: -25.2px;
    right: 0px;

    width: 45%;
    max-width: 639.84px;
  }

  @media only screen and (max-width: 991px) {
    .showcase-featued-img {
      height: unset;
    }

    .title {
      font-size: 52px;
      line-height: 90px;
      margin-bottom: 60px;
    }

    .description {
      padding: 0px;
      font-size: 18px;
      line-height: 24px;
      margin-top: 30px;
    }
  }
  @media only screen and (max-width: 768px) {
    padding: 60px 40px;

    .title {
      font-size: 42px;
      line-height: 60px;
      margin-bottom: 40px;
    }

    .subtitle {
      font-size: 18px;
      line-height: 24px;
    }

    .description {
      font-size: 16px;
      line-height: 24px;
      margin-top: 20px;
      margin-bottom: 60px;
    }
  }
  @media only screen and (max-width: 576px) {
    padding-inline: 20px;

    .title {
      font-size: 32px;
      line-height: 42px;
      margin-bottom: 35px;
    }
  }
}
/* Showcase section end from here */

/* Highlights section start from here */
.highlights-section {
  padding: 120px 57px;

  .container {
    max-width: 1326px;
  }
  .highlights-section-row {
    gap: 24px;
    display: flex;
  }

  .left {
    width: 40%;
    max-width: 364px;
  }

  .right {
    width: 100%;
  }

  .get-started-card {
    width: 100%;
    /* height: 308px; */
    height: 100%;
    border-radius: 24px;
    padding: 62px 24px;
    background: var(--primary-color);
    position: relative;
    &::after {
      content: "";
      position: absolute;
      bottom: 0px;
      left: 0px;
      right: 0px;
      width: 100%;
      height: 182px;
      border-radius: 50% 50% 0 0 / 100% 100% 0 0;
      background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.17) 0%,
        rgba(255, 255, 255, 0) 100%
      );
    }
    .inner-content {
      position: relative;
      z-index: 2;
    }

    h6 {
      font-family: Outfit;
      font-size: 20px;
      font-weight: 400;
      line-height: 25.2px;
      color: #e4e4e4;
      margin-bottom: 12px;
    }
    h4 {
      font-family: Outfit;
      font-size: 40px;
      font-weight: 400;
      line-height: 50.4px;
      color: var(--light-color);
      margin-bottom: 16px;
    }
    p {
      font-family: Outfit;
      font-size: 20px;
      font-weight: 400;
      line-height: 28px;
      color: #e4e4e4;
      margin: 0px;
    }
  }

  .our-achievements-card {
    width: 100%;
    /* height: 308px; */
    height: 100%;

    padding: 48px 40px 56px 40px;
    border-radius: 24px;
    background: #f4c134;
    display: flex;
    align-items: baseline;
    column-gap: 44px;

    .title {
      font-family: Outfit;
      font-size: 40px;
      font-weight: 400;
      line-height: 50.4px;
      color: #2d2d2d;
      margin-bottom: 20px;
    }

    p {
      font-family: Asap;
      font-size: 20px;
      font-weight: 400;
      line-height: 28px;
      color: var(--light-color);
      margin: 0px;
    }

    .left-side {
      max-width: 235px;
    }

    .numbers {
      display: flex;
      align-items: flex-end;
      gap: 10px;
      margin-top: auto;
      flex-wrap: wrap;
      width: 100%;
      justify-content: space-between;

      .number {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 16px;
        text-align: center;
        width: fit-content;
        flex-basis: auto;
        flex-shrink: 0;
        h6 {
          font-family: Outfit;
          font-size: 40px;
          font-weight: 400;
          line-height: 50.4px;
          color: var(--primary-color);
          margin: 0px;
          flex-shrink: 1;
        }
      }
    }
  }

  @media only screen and (max-width: 1024px) {
    .highlights-section-row {
      flex-direction: column;
    }

    .left {
      width: 100%;
      max-width: unset;
    }

    .right {
      width: 100%;
    }
  }
  @media only screen and (max-width: 991px) {
    .get-started-card {
      h6 {
        font-size: 16px;
        line-height: 24px;
        margin-bottom: 5px;
      }
      h4 {
        font-size: 32px;
        line-height: 42px;
        margin-bottom: 10px;
      }
      p {
        font-size: 16px;
        line-height: 24px;
      }
    }
    .our-achievements-card {
      gap: 15px;
      .title {
        font-size: 32px;
        line-height: 42px;
        margin-bottom: 15px;
      }
      p {
        font-size: 16px;
        line-height: 24px;
      }

      .numbers {
        .number {
          gap: 10px;
          h6 {
            font-size: 32px;
            line-height: 42px;
          }
        }
      }
    }
  }
  @media only screen and (max-width: 768px) {
    padding: 60px 40px;
    .our-achievements-card {
      flex-direction: column;
      padding: 35px 25px;
      gap: 20;

      .numbers {
        width: 100%;
        flex-basis: 100%;
        .number {
          h6 {
            font-size: 24px;
            line-height: 32px;
          }
        }
      }
    }
  }
  @media only screen and (max-width: 576px) {
    padding: 60px 20px;
  }
}
/* Highlights section end here */

/* Team section start from here */
.team-section {
  background: #202020;
  padding: 44px 54px 79px 54px;

  .row {
    --bs-gutter-x: 76px;
    --bs-gutter-y: 20px;
  }

  .left {
    width: calc(45% + var(--bs-gutter-x));
    max-width: calc(560px + var(--bs-gutter-x));
    height: calc(45% + var(--bs-gutter-x));
    max-width: calc(560px + var(--bs-gutter-x));
    align-self: 1/1;
  }

  .title {
    font-family: Outfit;
    font-size: 64px;
    font-weight: 600;
    line-height: 80.64px;
    color: var(--light-color);
    margin-bottom: 116px;
    text-align: end;
  }

  .featued-img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1/1;

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }

  .right {
    .content .description {
      text-align: left;
    }
  }

  .content {
    .name {
      font-family: Outfit;
      font-size: 48px;
      font-weight: 600;
      line-height: 60.48px;
      color: var(--light-color);
      margin-bottom: 10px;
    }
    .category {
      font-family: Outfit;
      font-size: 24px;
      font-weight: 600;
      line-height: 30.24px;
      color: #909090;
      margin-bottom: 40px;
    }
    .description {
      font-family: Outfit;
      font-size: 20px;
      font-weight: 400;
      line-height: 30px;
      color: #909090;
      margin-bottom: 190px;
    }
  }

  .row:nth-child(even) {
    margin-top: -137px;
    .content {
      text-align: end;
      padding-top: 238px;

      .description {
        margin-bottom: 0px;
      }
    }
    .right {
      order: -1;
    }
  }

  .three-line {
    position: absolute;
    top: 0px;
    left: -60px;
    width: 45%;
    max-width: 639.84px;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
  }

  @media only screen and (max-width: 1024px) {
  }
  @media only screen and (max-width: 991px) {
    .row:nth-child(even) {
      margin-top: 20px;

      .right {
        order: 1;

        .content {
          padding: 0px;
          text-align: start;
        }
      }
    }

    .content {
      .description {
        margin-bottom: 0px;
      }
    }
    .left {
      width: 100%;
      max-width: unset;
    }
  }
  @media only screen and (max-width: 768px) {
    padding: 60px 40px;
    .title {
      font-size: 52px;
      line-height: 70px;
    }
    .content {
      .name {
        font-size: 32px;
        line-height: 42px;
        margin-bottom: 5px;
      }
      .category {
        font-size: 18px;
        line-height: 24px;
        margin-bottom: 20px;
      }
      .description {
        font-size: 18px;
        line-height: 24px;
      }
    }
  }
  @media only screen and (max-width: 576px) {
    padding: 60px 20px;
    .three-line {
      top: 55px;
    }

    .title {
      font-size: 42px;
      line-height: 52px;
    }
    .content {
      .name {
        font-size: 24px;
        line-height: 32px;
        margin-bottom: 2px;
      }
      .category {
        font-size: 16px;
        line-height: 24px;
        margin-bottom: 15px;
      }
      .description {
        font-size: 16px;
        line-height: 24px;
      }
    }
  }
}
/* Team section end here */
