/* ==========================================================
   process.css — كيف نعمل (steps + sliding pill)
   ========================================================== */
:root {
  --ebmnt1-process-steps-gap: 0.6em;
  --ebmnt1-process-step-text-color: var(--ebmnt1-color-white);
  --ebmnt1-process-step-border-color: var(--ebmnt1-color-border-faint);
  --ebmnt1-process-step-font-size: clamp(0.9rem, 0.85rem + 0.2vw, 1rem);
  --ebmnt1-process-step-radius: 0.7em;
  --ebmnt1-process-step-active-inset-color: var(--ebmnt1-color-inset-light-strong);
  --ebmnt1-process-step-hover-border-color: var(--ebmnt1-color-primary-soft);
  --ebmnt1-process-pill-transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1), width 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  --ebmnt1-process-pill-bg: var(--ebmnt1-color-surface-purple);

  --ebmnt1-process-icon-ring-color: var(--ebmnt1-color-primary-soft);
  --ebmnt1-process-icon-core-color: var(--ebmnt1-color-text-icon);
  --ebmnt1-process-icon-size: 5.1em;
  --ebmnt1-process-title-color: var(--ebmnt1-color-white);
  --ebmnt1-process-title-font-size: clamp(1.3rem, 1.1rem + 1vw, 1.9rem);
  --ebmnt1-process-text-color: var(--ebmnt1-color-text-soft);
  --ebmnt1-process-panel-bg: linear-gradient(160deg, var(--ebmnt1-color-primary-tint-14), var(--ebmnt1-color-page-bg) 60%);
  --ebmnt1-process-panel-border-color: var(--ebmnt1-color-border-card);
  --ebmnt1-process-number-color: var(--ebmnt1-color-primary);
}

.ebmnt1-process__steps {
  position: relative;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--ebmnt1-process-steps-gap);
}

.ebmnt1-process__pill {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  border-radius: var(--ebmnt1-process-step-radius);
  background-color: var(--ebmnt1-process-pill-bg);
  box-shadow: 1px 1px 7px 0 var(--ebmnt1-process-step-active-inset-color) inset;
  transition: var(--ebmnt1-process-pill-transition);
  pointer-events: none;
}

.ebmnt1-process__step {
  position: relative;
  flex: 1 1 calc(50% - var(--ebmnt1-process-steps-gap));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5em;
  padding-inline: 1.2em;
  border: 1px solid var(--ebmnt1-process-step-border-color);
  border-radius: var(--ebmnt1-process-step-radius);
  color: var(--ebmnt1-process-step-text-color);
  font-size: var(--ebmnt1-process-step-font-size);
  transition: border-color 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
}

.ebmnt1-process__step:hover {
  border-color: var(--ebmnt1-process-step-hover-border-color);
}

.ebmnt1-process__step.ebmnt1-is-active {
  background-color: var(--ebmnt1-process-pill-bg);
  box-shadow: 1px 1px 7px 0 var(--ebmnt1-process-step-active-inset-color) inset;
}

.ebmnt1-process__panels {
  width: 100%;
  display: grid;
}

.ebmnt1-process__panel {
  grid-area: 1 / 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2em;
  padding: 2em 1.4em;
  border: 1px solid var(--ebmnt1-process-panel-border-color);
  border-radius: 1.6em;
  background: var(--ebmnt1-process-panel-bg);
  opacity: 0;
  visibility: hidden;
  transform: translateY(18px);
  transition: opacity 0.45s ease, transform 0.45s ease, visibility 0s linear 0.45s;
}

.ebmnt1-process__panel.ebmnt1-is-active {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition-delay: 0s;
}

.ebmnt1-process__icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--ebmnt1-process-icon-size);
  height: var(--ebmnt1-process-icon-size);
  border: 1px solid var(--ebmnt1-process-icon-ring-color);
  border-radius: 50%;
  color: var(--ebmnt1-process-icon-core-color);
  font-size: clamp(1.5rem, 1.3rem + 0.7vw, 2rem);
}

.ebmnt1-process__icon::after {
  content: "";
  position: absolute;
  inset: -0.5em;
  border: 1px dashed var(--ebmnt1-process-icon-ring-color);
  border-radius: 50%;
  opacity: 0.4;
  animation: ebmnt1-process-ring 20s linear infinite;
}

.ebmnt1-process__number {
  color: var(--ebmnt1-process-number-color);
  font-size: clamp(0.855rem, 0.807rem + 0.2vw, 1.026rem);
  font-weight: 700;
  letter-spacing: 0.1em;
}

.ebmnt1-process__title {
  color: var(--ebmnt1-process-title-color);
  font-size: var(--ebmnt1-process-title-font-size);
}

.ebmnt1-process__text {
  max-width: 42rem;
  color: var(--ebmnt1-process-text-color);
}

@keyframes ebmnt1-process-ring {
  to { transform: rotate(360deg); }
}

@media (min-width: 768px) {
  .ebmnt1-process__steps {
    flex-wrap: nowrap;
    padding: 0.4em;
    border: 1px solid var(--ebmnt1-process-panel-border-color);
    border-radius: calc(var(--ebmnt1-process-step-radius) + 0.4em);
  }

  .ebmnt1-process__pill {
    display: block;
    top: 0.4em;
    height: calc(100% - 0.8em);
  }

  .ebmnt1-process__step {
    flex: 1 1 0;
    border-color: transparent;
  }

  .ebmnt1-process__step.ebmnt1-is-active {
    background-color: transparent;
    box-shadow: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ebmnt1-process__icon::after {
    animation: none;
  }
}
