.services-page {}

.services-hero-grid {
  display: grid;
  grid-template-columns: 45% 55%;
  gap: var(--space-xl);
  align-items: center;
}
.services-hero-text {
  max-width: 560px;
}
.services-hero-image img {
  width: 100%;
}

.services-overview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--space-lg);
}
.services-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.services-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-xl);
  align-items: center;
}
.services-split.reverse {
  grid-template-columns: 1fr 1fr;
}
.services-text {
  max-width: 520px;
}
.services-text.wide {
  max-width: 680px;
}
.services-image img {
  width: 100%;
}
.services-image.small {
  max-width: 420px;
}

.services-process .center {
  text-align: center;
}
.services-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: var(--space-lg);
  margin-top: var(--space-xl);
}
.services-step {
  text-align: center;
}

.services-philosophy-text {
  max-width: 480px;
  margin-inline: auto;
  text-align: center;
}

.services-types-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: var(--space-lg);
}
.services-type {
  border-top: 1px solid var(--color-divider);
  padding-top: var(--space-md);
}

.services-cta-box {
  text-align: center;
  background: var(--color-surface-contrast);
  padding: var(--space-xl);
  border-radius: var(--radius-md);
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  align-items: center;
}

@media (max-width: 900px) {
  .services-hero-grid {
    grid-template-columns: 1fr;
  }
  .services-overview-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .services-split {
    grid-template-columns: 1fr;
  }
  .services-steps {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 600px) {
  .services-overview-grid {
    grid-template-columns: 1fr;
  }
  .services-steps {
    grid-template-columns: 1fr;
  }
  .services-types-grid {
    grid-template-columns: 1fr;
  }
}