.elementor-683 .elementor-element.elementor-element-b1bafe1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0em;--padding-bottom:0em;--padding-left:0em;--padding-right:0em;}.elementor-683 .elementor-element.elementor-element-b1bafe1:not(.elementor-motion-effects-element-type-background), .elementor-683 .elementor-element.elementor-element-b1bafe1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#CAF0F8;}.elementor-683 .elementor-element.elementor-element-3978534{--display:flex;--padding-top:4em;--padding-bottom:4em;--padding-left:0em;--padding-right:0em;}.elementor-683 .elementor-element.elementor-element-8a0d23a{text-align:center;}.elementor-683 .elementor-element.elementor-element-8a0d23a .elementor-heading-title{font-weight:700;}.elementor-683 .elementor-element.elementor-element-984cd19{width:100%;max-width:100%;text-align:center;}.elementor-683 .elementor-element.elementor-element-984cd19 .elementor-heading-title{font-family:"Manrope", Sans-serif;font-size:50px;font-weight:600;text-transform:none;font-style:normal;line-height:1.2em;letter-spacing:-2.5px;color:var( --e-global-color-ec25634 );}.elementor-683 .elementor-element.elementor-element-ac903cc{border-radius:20px 20px 20px 20px;}@media(max-width:1024px){.elementor-683 .elementor-element.elementor-element-984cd19 .elementor-heading-title{font-size:52px;line-height:1.2em;}}@media(max-width:767px){.elementor-683 .elementor-element.elementor-element-3978534{--padding-top:4em;--padding-bottom:4em;--padding-left:1em;--padding-right:1em;}.elementor-683 .elementor-element.elementor-element-984cd19 .elementor-heading-title{font-size:37px;line-height:1.1em;}}/* Start custom CSS for html, class: .elementor-element-ac903cc */.steps-process {
  width: 100%;
  padding: 50px 10px 10px 10px;
  background: #fff;
  border-radius: 20px;
}

.steps-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
  gap: 0;
}

.steps-wrapper::before {
  content: "";
  position: absolute;
  top: 65px; /* Adjust to center line on icons */
  left: 6%;
  right: 6%;
  height: 3px;
  background: #5191e5;
  z-index: 0;
}

.step {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  background: transparent;
  position: relative;
  padding: 0 12px;
  z-index: 1;
  opacity: 0;
  transform: translateY(40px);
  animation: fadeInUp 0.7s forwards;
}
.step:nth-child(1) { animation-delay: 0.08s; }
.step:nth-child(2) { animation-delay: 0.18s; }
.step:nth-child(3) { animation-delay: 0.28s; }
.step:nth-child(4) { animation-delay: 0.38s; }

.step-icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90px;
  height: 90px;
  border: 3px solid #5191e5;
  border-radius: 50%;
  background: #fff;
  color: #5191e5;
  font-size: 2.6rem;
  margin: 0 auto 30px auto;
  z-index: 2;
  box-sizing: border-box;
  transition: box-shadow 0.2s;
}
.step-icon i {
  z-index: 2;
  position: relative;
}



/* Alignment for all step titles and descriptions */
.step-title {
  font-size: 1.8rem;
  font-weight: 800;
  margin: 12px 0 10px 0;
  color: #232323;
  letter-spacing: 0.01em;
  text-align: center;
  font-family: inherit;
  line-height: 1;
  min-height: 38px; /* Makes all titles the same height */
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.step-desc {
  color: #3d3d3d;
  font-size: 1.1rem;
  line-height: 1.6;
  margin: 0 auto;
  max-width: 320px;
  text-align: center;
  min-height: 85px; /* Makes all desc the same height */
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

/* Responsive for tablets and below */
@media (max-width: 1000px) {
  .steps-wrapper {
    flex-direction: column;
    gap: 55px;
  }
  .steps-wrapper::before {
    display: none;
  }
  .step {
    max-width: 600px;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 36px;
  }
  .step-icon {
    margin-bottom: 22px;
  }
  .step-title {
    font-size: 1.4rem;
    min-height: 28px; /* Adjust for mobile */
  }
  .step-desc {
    font-size: 1rem;
    min-height: 50px; /* Adjust for mobile */
  }
}

/* Fade-in animation */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .step {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}/* End custom CSS */