/* Reusable color variants for the shared static process section. */

.section.mod--process.is-dark {
  background-color: transparent;
  padding-top: 6rem;
  color: var(--white);
}

.process-heading {
  margin-bottom: 4rem;
  position: relative;
}

.process-heading .heading-center-wrap.mod--process {
  margin-bottom: 0;
  transition: opacity .3s ease, visibility .3s ease;
}

.process-heading__cta {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  gap: 1.5rem;
  position: absolute;
  inset: 0;
}

.process-cta__title {
  max-width: 50rem;
  font-size: 2rem;
  line-height: 1.2;
}

.process-cta__button {
  flex: none;
  margin-top: 0;
}

.process-cta-mobile {
  display: none;
}

[data-process-active-index="4"] .process-heading__default {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

[data-process-active-index="4"] .process-heading__cta {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.section.mod--process.is-dark[data-process-active-index="4"] .process-nav__btn.is-cta-step.active,
.section.mod--process.is-dark[data-process-active-index="4"] .process-nav__btn.is-cta-step.active:hover {
  background-color: var(--white);
  color: var(--blue-dark);
}

.section.mod--process.is-dark[data-process-active-index="4"] .process-nav__btn.is-cta-step.active .process-nav__numb {
  background-color: #02021e;
  color: var(--white);
}

.light-blue-grad {
  background-image: linear-gradient(180deg, #B9D1ED 10.22%, #F5F7FA 50%, #FFF 100%), linear-gradient(180deg, #B9D1ED 15%, #F5F7FA 75%);
}

.section.mod--process.is-dark .swiper-process__card {
  color: var(--blue-dark);
}

.section.mod--process.is-dark .process-graph__line {
  background-image: linear-gradient(180deg, #ffffff33, var(--transparent));
}

.section.mod--process.is-dark .process-graph__line-fill {
  background-image: linear-gradient(var(--white), #ffffff00);
}

.section.mod--process.is-dark .process-nav__btn:hover {
  background-color: #ffffff1a;
}

.section.mod--process.is-dark .process-nav__btn.active,
.section.mod--process.is-dark .process-nav__btn.active:hover {
  background-color: var(--blue);
  color: var(--white);
}

.section.mod--process.is-dark .process-nav__dot,
.section.mod--process.is-dark .process-graph__point {
  background-color: var(--white);
}

.section.mod--process.is-dark .process-graph__tooltip {
  background-color: var(--blue-dark);
  border-color: #ffffff4d;
  color: var(--white);
}

.section.mod--process.is-dark .process-graph__tooltip-arrow {
  display: none;
}

.section.mod--process.is-dark .process-graph__tooltip-arrow-wrap::before {
  content: "";
  background-color: var(--blue-dark);
  border-right: 1px solid #ffffff4d;
  border-bottom: 1px solid #ffffff4d;
  width: .4375rem;
  height: .4375rem;
  transform: rotate(45deg);
}

.section.mod--process.is-dark .process-graph__star {
  filter: brightness(0) invert(1);
}

@media screen and (min-width: 992px) {
  .process-heading .heading-center-wrap.mod--process {
    transition: opacity .35s ease, transform .45s cubic-bezier(.22, 1, .36, 1), visibility .35s ease;
  }

  .process-heading__cta {
    transform: translateY(1.25rem);
  }

  [data-process-active-index="4"] .process-heading__default {
    transform: translateY(-1.25rem);
  }

  [data-process-active-index="4"] .process-heading__cta {
    transform: translateY(0);
  }

  .section.mod--process.is-dark .swiper-process__shape {
    width: 31.25rem;
    max-width: none;
  }
}

@media screen and (max-width: 991px) {
  .section.mod--process.is-dark {
    padding-top: 5rem;
  }

  .process-heading {
    margin-bottom: 3.5rem;
  }
}

@media screen and (max-width: 767px) {
  .section.mod--process.is-dark {
    padding-top: 3rem;
  }

  .process-heading {
    margin-bottom: 2rem;
  }

  .process-heading__cta {
    display: none;
  }

  [data-process-active-index="4"] .process-heading__default {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .process-cta-mobile {
    text-align: center;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    margin-top: 2.5rem;
    display: flex;
  }

  .process-cta__title {
    font-size: 1.5rem;
  }

  .process-cta__button {
    margin-top: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .process-heading .heading-center-wrap.mod--process {
    transition: none;
    transform: none;
  }
}
