/* process-steps.css - Styles for process steps section */

.process-steps-section {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  background: #000000;
  padding: 0 var(--space-7xl) var(--space-6xl);
  overflow: hidden;
  position: relative;
}

.process-steps-container {
  max-width: 1600px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--space-6xl);
}

.process-step {
  background: linear-gradient(131deg, #100F18 0%, #181533 80%, #1D1B55 100%);
  border-radius: var(--radius-3xl);
  outline: 1px solid rgba(161, 165, 170, 0.15);
  padding: var(--space-6xl);
}

.process-step-content {
  display: flex;
  flex-direction: column;
  gap: var(--space-6xl);
}

.process-step-header {
  width: 100%;
}

.process-step-title {
  color: var(--primary-purple);
  font-size: var(--fs-4xl);
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1;
  margin: 0;
}

.process-step-features {
  display: flex;
  flex-direction: column;
  gap: var(--space-xl);
}

.process-feature {
  display: flex;
  align-items: flex-start;
  gap: var(--space-xl);
}

.process-feature .feature-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.feature-text {
  color: var(--text-light-gray);
  font-size: var(--fs-xl);
  font-family: var(--font-primary);
  font-weight: var(--fw-normal);
  line-height: 1.3;
}

.process-step-image {
  width: 100%;
  border-radius: var(--radius-xl);
  overflow: hidden;
}

.step-image {
  width: 100%;
  height: auto;
  border-radius: var(--radius-xl);
}

.process-step-buttons {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 47px;
}

.process-cta {
  padding: 17px 65px;
  border-radius: var(--radius-full);
  outline: 1px solid var(--glass-border);
  font-size: var(--fs-base);
  font-family: var(--font-primary);
  font-weight: 700;
  line-height: 1;
  color: var(--text-white);
  text-decoration: none;
  transition: var(--transition-normal);
  display: inline-block;
}

.process-cta.primary {
  background: var(--primary-orange);
}

.process-cta.secondary {
  background: rgba(149, 148, 153, 0.20);
}

.process-cta:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

/* Desktop-specific grid layout */
@media (min-width: 993px) {
  .process-step-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "header image"
      "features image"
      "buttons buttons";
    column-gap: 64px;
    row-gap: var(--space-3xl);
    align-items: start;
  }

  .process-step-header {
    grid-area: header;
  }

  .process-step-features {
    grid-area: features;
  }

  .process-step-image {
    grid-area: image;
    height: 100%;
    display: flex;
    align-items: center;
  }

  .process-step-buttons {
    grid-area: buttons;
    justify-content: center;
  }

  /* Alternate layout for even-numbered steps */
  .process-step:nth-child(even) .process-step-content {
    grid-template-areas:
      "image header"
      "image features"
      "buttons buttons";
  }
}

/* Tablet Styles */
@media (max-width: 992px) {
  .process-steps-section {
    padding: 0 var(--space-6xl) var(--space-6xl);
  }

  .process-step {
    padding: var(--space-3xl);
  }

  .process-step-title {
    font-size: var(--fs-3xl);
  }

  .feature-text {
    font-size: var(--fs-lg);
  }

  .process-cta {
    padding: 15px 45px;
  }
}

/* Mobile Styles */
@media (max-width: 768px) {
  .process-steps-section {
    padding: 0 var(--space-lg) var(--space-3xl);
  }

  .process-steps-container {
    gap: var(--space-3xl);
  }

  .process-step {
    padding: var(--space-2xl);
  }

  .process-step-content {
    gap: var(--space-lg);
  }

  .process-step-title {
    font-size: 17.1px;
    line-height: 1;
  }

  .feature-text {
    font-size: var(--fs-xs);
    line-height: 1.2;
  }

  .desktop-only {
    display: none;
  }

  .process-step-buttons {
    flex-direction: column;
    width: 100%;
    gap: var(--space-md);
  }

  .process-cta {
    width: 100%;
    padding: 13px 0;
    text-align: center;
  }
}

/* Small Mobile Styles */
@media (max-width: 375px) {
  .process-steps-section {
    padding: 0 15px var(--space-2xl);
  }

  .process-step {
    padding: var(--space-xl);
  }
}
