.about-hero-section {
  background: #fafafa;
  overflow-x: clip;

  .about-hero-title {
    margin: 0 0 20px;
    color: var(--dark-blue-gray);
    font-family: "Satoshi", "Poppins", sans-serif;
    font-size: 40px;
    font-size: var(--fs-2xl);
    font-weight: 700;
  }

  .about-hero-text {
    margin: 0 0 32px;
    color: var(--medium-gray);
    font-family: "Poppins", sans-serif;
    font-size: var(--fs-base);
    font-weight: 400;
  }

  img {
    width: 100%;
    max-width: 650px;
    height: auto;
    display: block;
    margin-left: auto;
    object-fit: contain;
  }

  /* Mobile */
  @media (max-width: 767px) {
    .custom-icon-btn {
      width: 100%;
      justify-content: center;
    }
  }
}

.about-hero-section img,
.contact-section__panel[data-aos] {
  transform-origin: center center;
}

.hero-slide__content {
  transform-origin: left center;
}

.hero-slide__content .outline-secondary-badge,
.hero-slide__content .hero-slide__title,
.hero-slide__content .hero-slide__text,
.hero-slide__content .hero-slide__actions,
.hero-slide__media {
  opacity: 0;
  will-change: transform, opacity;
}

.swiper-slide-active .hero-slide__content .outline-secondary-badge,
.swiper-slide-duplicate-active .hero-slide__content .outline-secondary-badge {
  animation: heroFadeUp 0.7s ease-out 0.08s both;
}

.swiper-slide-active .hero-slide__content .hero-slide__title,
.swiper-slide-duplicate-active .hero-slide__content .hero-slide__title {
  animation: heroFadeUp 0.8s ease-out 0.18s both;
}

.swiper-slide-active .hero-slide__content .hero-slide__text,
.swiper-slide-duplicate-active .hero-slide__content .hero-slide__text {
  animation: heroFadeUp 0.8s ease-out 0.28s both;
}

.swiper-slide-active .hero-slide__content .hero-slide__actions,
.swiper-slide-duplicate-active .hero-slide__content .hero-slide__actions {
  animation: heroFadeUp 0.8s ease-out 0.38s both;
}

.swiper-slide-active .hero-slide__media,
.swiper-slide-duplicate-active .hero-slide__media {
  animation: heroFadeLeft 0.95s ease-out 0.16s both;
}

@keyframes heroFadeUp {
  from {
    opacity: 0;
    transform: translate3d(0, 30px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes heroFadeLeft {
  from {
    opacity: 0;
    transform: translate3d(32px, 0, 0) scale(0.98);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}

.recruitment-stats-section {
  position: relative;
  padding: 100px 0;
  background-image: url("../../img/recruitment-stats-bg.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  .recruitment-stats-card {
    text-align: center;
    color: var(--brand-white);
  }

  .recruitment-stats-value {
    margin: 0 0 8px;
    color: var(--brand-white);
    font-size: 56px;
    font-weight: 700;
    display: inline-block;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum";
  }

  .recruitment-stats-label {
    margin: 0;
    color: var(--brand-white);
    font-size: var(--fs-base);
    font-weight: 400;
  }

  @media (max-width: 991px) {
    padding: 80px 0;

    .recruitment-stats-value {
      font-size: 46px;
    }
  }

  @media (max-width: 767px) {
    padding: 64px 0;

    .recruitment-stats-value {
      font-size: 28px;
      margin-bottom: 6px;
    }

    .recruitment-stats-label {
      font-size: 14px;
    }
  }
}

.service-section {
  background: #fafafa;

  .service-section__header {
    margin: 0 auto 48px;
  }
}

.service-card[data-aos],
.content-grid-card[data-aos],
.country-recruitment-card[data-aos],
.process-card[data-aos],
.site-accordion__item[data-aos],
.contact-info-card[data-aos],
.contact-form-card[data-aos],
.recruitment-stats-card[data-aos] {
  backface-visibility: hidden;
  will-change: transform, opacity;
}

.country-recruitment-card.aos-animate,
.service-card.aos-animate,
.content-grid-card.aos-animate,
.process-card.aos-animate,
.site-accordion__item.aos-animate,
.contact-info-card.aos-animate {
  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.recruitment-section {
  position: relative;
  padding: 6rem 0;
  margin-top: 4rem;
  background:
    radial-gradient(circle at top left, #0f6b4d38 0%, transparent 28%),
    radial-gradient(circle at bottom right, #0f6b4d20 0%, transparent 24%),
    linear-gradient(180deg, #0d5b43 0%, #094532 100%);

  &::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
      linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
    background-size: 36px 36px;
    pointer-events: none;
  }

  .recruitment-section__header {
    position: relative;
    z-index: 1;
    margin: 0 auto 48px;
  }

  .outline-secondary-badge {
    border: none;
    background: #0f6b4d;
    color: #d7f15c;
    font-weight: 700;
  }

  .section-intro-title {
    color: #ffffff;

    span {
      color: #ffffff;
    }
  }

  .section-intro-text {
    max-width: 760px;
    margin-inline: auto;
    color: #b7d1c7;
  }

  .country-recruitment-card {
    position: relative;
    z-index: 1;
    height: 100%;
    min-height: 310px;
    padding: 30px;
    border-radius: 34px;
    background:
      radial-gradient(circle at top right, #ffffff12 0%, transparent 26%),
      linear-gradient(180deg, #ffffff10 0%, #ffffff0a 100%);
    border: 1px solid #ffffff12;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    transition:
      background 0.3s ease,
      box-shadow 0.3s ease,
      border-color 0.3s ease,
      outline-color 0.3s ease;

    outline: 1px solid transparent;
    outline-offset: -1px;

    &:hover {
      background:
        radial-gradient(circle at top right, #ffffff16 0%, transparent 24%),
        linear-gradient(180deg, #ffffff14 0%, #ffffff0e 100%);
      box-shadow:
        inset 0 0 0 1px #ffffff14,
        0px 16px 34px 0px #04291d40;
      border-color: #ffffff2f;
      outline-color: #ffffff12;
    }

    .country-recruitment-card__flag-wrap {
      width: 64px;
      height: 64px;
      margin: 0 0 24px;
      padding: 4px;
      border-radius: 50%;
      background: #ffffff1a;
      border: 1px solid #ffffff24;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .country-recruitment-card__flag {
      width: 56px;
      height: 56px;
      object-fit: cover;
      display: block;
      border-radius: 50%;
    }

    .country-recruitment-card__body {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    .country-recruitment-card__eyebrow {
      position: absolute;
      right: 20px;
      display: inline-flex;
      align-self: flex-end;
      margin: -4px 0 22px;
      padding: 7px 14px;
      border-radius: 999px;
      background: #ffffff;
      color: #163239;
      font-size: 12px;
      font-weight: 600;
      text-transform: uppercase;
    }

    .country-recruitment-card__title {
      margin: 0 0 14px;
      color: #ffffff;
      font-family: "Satoshi", "Poppins", sans-serif;
      font-size: var(--fs-lg);
      font-weight: 700;
    }

    .country-recruitment-card__text {
      margin: 0 0 24px;
      color: #a9c9be;
      font-size: var(--fs-base);
      font-weight: 400;
    }

    .country-recruitment-card__footer {
      width: 100%;
      margin-top: auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      flex-wrap: wrap;
    }

    .country-recruitment-card__meta {
      color: #cce66a;
      font-size: 14px;
      font-weight: 700;
      text-transform: uppercase;
      display: inline-flex;
      align-items: center;
      gap: 8px;

      .bi {
        font-size: 14px;
      }
    }

    .country-recruitment-card__link {
      padding: 11px 16px;
      border-radius: 999px;
      border: 1px solid #ffffff24;
      background: linear-gradient(180deg, #ffffff20 0%, #ffffff10 100%);
      color: #ffffff;
      font-size: var(--fs-xs);
      font-weight: 700;
      letter-spacing: 0.02em;
      text-decoration: none;
      text-transform: uppercase;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease;

      .bi {
        font-size: 14px;
        transition: transform 0.3s ease;
      }

      &:hover {
        color: #163239;
        border-color: #d7f15c;
        background: linear-gradient(180deg, #e4fb74 0%, #cce66a 100%);
        box-shadow: 0 12px 24px #04291d30;
        transform: translateY(-2px);

        .bi {
          transform: translate(2px, -2px);
        }
      }
    }
  }

  @media (max-width: 991px) {
    .recruitment-section__header {
      margin-bottom: 40px;
    }

    .country-recruitment-card {
      min-height: 290px;
      padding: 30px 24px 26px;
    }
  }

  @media (max-width: 767px) {
    padding-top: 28px;

    &::before {
      background-size: 24px 24px;
    }

    .recruitment-section__header {
      margin-bottom: 34px;
    }

    .country-recruitment-card {
      min-height: 280px;
      border-radius: 26px;
      padding: 24px 20px;

      .country-recruitment-card__flag-wrap {
        width: 58px;
        height: 58px;
        margin-bottom: 22px;
      }

      .country-recruitment-card__flag {
        width: 50px;
        height: 50px;
      }

      .country-recruitment-card__eyebrow {
        padding: 6px 12px;
        font-size: 11px;
      }

      .country-recruitment-card__link {
        padding: 10px 14px;
      }
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-slide__content .outline-secondary-badge,
  .hero-slide__content .hero-slide__title,
  .hero-slide__content .hero-slide__text,
  .hero-slide__content .hero-slide__actions,
  .hero-slide__media {
    opacity: 1;
    animation: none !important;
  }

  [data-aos] {
    transition: none !important;
  }
}

.recruitment-section--legacy {
  display: none;
}

.process-section {
  position: relative;
  overflow: hidden;
  padding-bottom: 28px;

  &::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("../../img/testimonial-map.webp");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    pointer-events: none;
  }

  .container {
    position: relative;
    z-index: 1;
  }

  .process-section__header {
    margin: 0 auto 54px;
  }

  .process-section__timeline {
    position: absolute;
    left: 50%;
    top: 248px;
    width: min(1180px, calc(100% - 120px));
    transform: translateX(-50%);
    pointer-events: none;
    z-index: 0;
    opacity: 0.88;
  }

  .process-section__line {
    width: 100%;
    display: block;
  }
}

.process-card {
  position: relative;
  height: 100%;
  text-align: center;
  padding: 0 8px;

  .process-card__icon-wrap {
    margin: 0 auto 24px;
    width: fit-content;
  }

  .process-card__icon {
    position: relative;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    border: 3px dashed #60d940;
    background: #ffffff;
    color: #60d940;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 62px;
    box-shadow:
      0 24px 40px rgba(255, 178, 178, 0.2),
      0 8px 20px rgba(17, 39, 27, 0.08);
    transition:
      transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1),
      background 0.45s cubic-bezier(0.22, 1, 0.36, 1),
      color 0.45s cubic-bezier(0.22, 1, 0.36, 1),
      border-color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .process-card__icon-check {
    position: absolute;
    top: 0px;
    right: -10px;
    width: 33px;
    height: 33px;
    border-radius: 50%;
    background: #60d940;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    box-shadow: 0 10px 24px rgba(96, 217, 64, 0.24);
  }

  .process-card__body {
    position: relative;
    z-index: 1;
    height: 100%;
    padding: 0;
    padding-top: 1rem;
    transition:
      box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1),
      color 0.45s cubic-bezier(0.22, 1, 0.36, 1);

    .content {
      padding: 24px;
      border-radius: 12px;
      background: #ffffff;
      transition: margin-top 0.45s cubic-bezier(0.22, 1, 0.36, 1);

      &::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 0;
        height: 0;
        opacity: 0;
        transform: translateY(-5px);
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-bottom: 20px solid #ffffff;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
      }
    }
  }

  .process-card__arrow {
    position: absolute;
    top: 80%;
    transform: translateY(-80%);
    right: -47px;
    z-index: 3;
    opacity: 0.72;
    transition:
      transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .process-card__step {
    display: inline-block;
    margin-bottom: 14px;
    color: #60d940;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    transition: color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .process-card__title {
    margin: 0 0 16px;
    color: var(--darkest-blue-gray);
    font-family: "Satoshi", "Poppins", sans-serif;
    font-size: var(--fs-lg);
    font-weight: 700;
    transition: color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .process-card__text {
    margin: 0;
    color: #4d4d4d;
    font-size: var(--fs-base);
    transition: color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  }

  &:hover {
    .process-card__icon {
      transform: translateY(-4px);
      background: linear-gradient(135deg, #60d940 0%, #53c93b 100%);
      color: #ffffff;
      border-color: transparent;
    }

    .process-card__body .content {
      margin-top: 15px;
      background: #ffffff;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);

      &::before {
        opacity: 1;
        transform: translateY(0);
      }
    }

    .process-card__arrow {
      opacity: 1;
      /* transform: scale(1); */
    }

    .process-card__step {
      color: #53c93b;
    }

    .process-card__title,
    .process-card__text {
      color: inherit;
    }
  }

  @media (max-width: 767px) {
    .process-card__title {
      font-size: var(--fs-md);
    }
    .process-card__text {
      font-size: var(--fs-sm);
    }
  }
  @media (max-width: 567px) {
    /* .process-card__title {
      font-size: var(--fs-base);
    } */
    .process-card__text {
      font-size: var(--fs-xs);
    }
  }
}

.faq-section {
  background:
    linear-gradient(rgba(38, 48, 56, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(38, 48, 56, 0.04) 1px, transparent 1px);
  background-size: 34px 34px;

  .faq-section__header {
    margin: 0 auto 48px;
  }

  .section-intro-text {
    max-width: 760px;
    margin-inline: auto;
  }

  .faq-section__media {
    overflow: hidden;
  }

  .faq-section__image {
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
    display: block;
  }

  @media (max-width: 767px) {
    background-size: 26px 26px;

    .faq-section__image {
      min-height: 280px;
    }
  }
}

.contact-section {
  overflow-x: clip;
  .contact-section__panel {
    position: relative;
    padding: 36px 0 0;
    background:
      linear-gradient(rgba(38, 48, 56, 0.04) 1px, transparent 1px),
      linear-gradient(90deg, rgba(38, 48, 56, 0.04) 1px, transparent 1px);
    background-size: 34px 34px;
  }

  .contact-section__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 6px 16px;
    margin-bottom: 24px;
    border-radius: 999px;
    background: #eef4ea;
    color: #0d6b4d;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
  }

  .contact-section__intro .section-intro-title {
    margin: 0 0 24px;
    color: #0f5d46;
  }

  .contact-section__intro .section-intro-text {
    margin: 0 0 34px;
    color: var(--dark-blue-gray);
  }

  .contact-section__info-list {
    display: grid;
    gap: 22px;
  }

  .contact-info-card {
    padding: 22px 24px;
    border-radius: 22px;
    background: #ffffff;
    border: 1px solid #e5ebea;
    box-shadow: 0px 12px 26px 0px #2630380d;
  }

  .contact-info-card__top {
    display: flex;
    align-items: flex-start;
    gap: 16px;
  }

  .contact-info-card__icon {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: var(--fs-base);
  }

  .contact-info-card__icon--primary {
    background: #0f6b50;
    color: #ffffff;
  }

  .contact-info-card__icon--secondary {
    background: #d7f15c;
    color: #0f6b50;
  }

  .contact-info-card__label {
    display: block;
    margin: 2px 0 10px;
    color: #5d7b6f;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
  }

  .contact-info-card__value {
    margin: 0;
    color: var(--darkest-blue-gray);
    font-family: "Satoshi", "Poppins", sans-serif;
    font-size: var(--fs-base);
    font-weight: 700;
    text-decoration: none;
  }

  .contact-info-card__meta {
    margin: 8px 0 0;
    color: var(--dark-blue-gray);
    font-size: 14px;
    font-weight: 400;
  }

  .contact-form-card {
    padding: 40px;
    border-radius: 26px;
    background: #ffffff;
    border: 1px solid #e4ecee;
    box-shadow: 0px 16px 34px 0px #26303812;
  }

  .contact-form-card__field {
    display: block;
  }

  .contact-form-card__select {
    appearance: none;
    background-image:
      linear-gradient(45deg, transparent 50%, #66767d 50%),
      linear-gradient(135deg, #66767d 50%, transparent 50%);
    background-position:
      calc(100% - 22px) calc(50% - 3px),
      calc(100% - 16px) calc(50% - 3px);
    background-size:
      6px 6px,
      6px 6px;
    background-repeat: no-repeat;
    padding-right: 48px;
  }

  .contact-form-card__textarea {
    height: auto;
    padding: 16px 18px;
    resize: vertical;
  }

  .contact-form-card__submit {
    width: 100%;
    padding: 0.9rem;
    border: none;
    border-radius: 16px;
    background: #0d5b43;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-family: "Satoshi", "Poppins", sans-serif;
    font-size: var(--fs-base);
    font-weight: 700;
    transition:
      transform 0.25s ease,
      background 0.25s ease,
      box-shadow 0.25s ease;

    &:hover {
      transform: translateY(-2px);
      background: #084a36;
      box-shadow: 0px 14px 28px 0px #0d5b4320;
    }

    .bi {
      font-size: 20px;
    }
  }

  @media (max-width: 991px) {
    .contact-section__panel {
      padding-top: 24px;
    }

    .contact-section__intro {
      max-width: none;
    }

    .contact-form-card {
      padding: 30px 24px;
    }
  }

  @media (max-width: 767px) {
    .contact-section__panel {
      padding-top: 18px;
      background-size: 26px 26px;
    }

    .contact-info-card {
      padding: 20px 18px;
      border-radius: 18px;
    }

    .contact-info-card__icon {
      width: 44px;
      height: 44px;
    }

    .contact-form-card {
      padding: 24px 18px;
      border-radius: 20px;
    }

    .contact-form-card__submit {
      & .bi {
        font-size: var(--fs-sm);
      }
    }
  }
  @media (max-width: 567px) {
    .contact-form-card__submit {
      & .bi {
        font-size: var(--fs-sm);
      }
    }
  }
}

.industries-section {
  background: #fafafa;

  .industries-section__header {
    margin: 0 auto 42px;
  }
}

.global-region-section {
  background: #fafafa;

  .region-section__header {
    margin: 0 auto 42px;
  }

  & .custom-icon-btn {
    padding: 10px 18px;
  }
}
