/* ===================================================================
   mk-process.css
   Styles for the one global process section ("A simple process. Every
   time.") rendered by the [mk_process] shortcode. Extracted from
   mk-about.css so the section looks identical on every page. All rules
   are scoped to .mk-sec-approach, the CSS class on the section itself.
   =================================================================== */

.mk-sec-approach .elementor-widget-heading .elementor-heading-title { margin: 0; }
.mk-sec-approach .elementor-widget-text-editor p { margin-top: 0; }
.mk-sec-approach .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.mk-sec-approach .elementor-icon svg {
  fill: none !important;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* heading with the gold rule underneath */
.mk-sec-approach .mk-h-lg-a .elementor-heading-title { font-size: clamp(1.9rem, 3.4vw, 2.6rem) !important; line-height: 1.14 !important; letter-spacing: -0.015em !important; }
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .mk-sec-approach .mk-h-lg-a .elementor-heading-title {
    background-image: linear-gradient(96deg, #062b6f 0%, #013c80 44%, #005b9e 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}
.mk-sec-approach .mk-h-lg-a .elementor-heading-title::after {
  content: "";
  display: block;
  width: 78px;
  height: 2px;
  margin-top: 17px;
  border-radius: 2px;
  -webkit-text-fill-color: initial;
  background: linear-gradient(90deg, rgba(125, 106, 46, 0) 0%, rgba(125, 106, 46, .85) 26%, #a58f4c 50%, rgba(125, 106, 46, .85) 74%, rgba(125, 106, 46, 0) 100%);
}
.mk-sec-approach .mk-section-head-a .mk-h-lg-a .elementor-heading-title::after { margin-left: auto; margin-right: auto; }
.mk-sec-approach .mk-section-head-a .mk-eyebrow .elementor-heading-title { justify-content: center; }

/* the four steps: ring, icon, number badge and the connecting line */
.mk-sec-approach .mk-step-ico { line-height: 0; }
.mk-sec-approach .mk-step-ico .elementor-icon { display: block; margin: 0 auto; }
.mk-sec-approach .mk-step-item, .mk-sec-approach .mk-step-item .elementor-widget { text-align: center; }
.mk-sec-approach .mk-step-art { position: relative; width: 78px; height: 78px; border-radius: 50%; border: 1px solid #007cc2; background: #fff; overflow: visible; }
.mk-sec-approach .mk-step-art .mk-step-ico { line-height: 0; }
.elementor .mk-sec-approach .mk-step-num {
  position: absolute !important; top: -7px; left: 50%; right: auto; transform: translateX(-50%);
  display: flex !important; align-items: center; justify-content: center;
  width: 24px !important; height: 24px !important; margin: 0 !important; padding: 0;
  border-radius: 50%;
  font-size: 0.73rem; font-weight: 700; line-height: 1;
  background-color: #062b6f;
  background-image: linear-gradient(140deg, #082f78 0%, #013c80 55%, #005b9e 100%);
  border: 1px solid rgba(201, 171, 99, .6);
  box-shadow: 0 0 0 4px rgba(201, 171, 99, .1);
  z-index: 2;
}
.elementor .mk-sec-approach .mk-step-num .elementor-heading-title { color: #fff; font-size: inherit; line-height: 1; margin: 0; }
.mk-sec-approach .mk-approach-row > .e-con { position: relative; }
.mk-sec-approach .mk-approach-row > .e-con + .e-con::before {
  content: "";
  position: absolute;
  top: 39px;
  right: calc(50% + 46px);
  left: calc(-50% + 46px);
  height: 1px;
  background: #007cc2;
  opacity: .5;
}
@media (max-width: 1040px) {
  .mk-sec-approach .mk-approach-row > .e-con { flex: 1 1 50% !important; }
  .mk-sec-approach .mk-approach-row > .e-con + .e-con::before { display: none; }
}
@media (max-width: 620px) {
  .mk-sec-approach .mk-approach-row > .e-con { flex: 1 1 100% !important; }
}
/* Stacked steps: keep each number badge clear of the previous step's text */
@media (max-width: 1040px) {
  .elementor .mk-sec-approach .mk-approach-row { --row-gap: 44px; row-gap: 44px; }
}
@media (max-width: 620px) {
  .elementor .mk-sec-approach .mk-approach-row { --row-gap: 48px; row-gap: 48px; }
}
