/**
 * Shared Solution Builder CTA band (homepage + other pages).
 * Markup: assets/partials/solution-builder.html
 */

.home-builder {
  --home-builder: #6b21a8;
  --home-builder-2: #7c3aed;
  background: linear-gradient(135deg, #4c1d95 0%, var(--home-builder) 45%, var(--home-builder-2) 100%);
  color: #fff;
}

.home-builder .section-inner {
  padding-block: clamp(80px, 10vw, 128px);
}

.home-builder-panel {
  max-width: min(64rem, 100%);
  width: 100%;
  margin-inline: auto;
  display: grid;
  gap: 18px;
  justify-items: center;
  text-align: center;
}

.home-builder h2,
.home-builder #home-builder-title {
  margin: 0;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: clamp(28px, 3.5vw, 42px);
  font-weight: 800;
  letter-spacing: -0.03em;
}

.home-builder p {
  margin: 0;
  max-width: min(56ch, 100%);
  line-height: 1.65;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.home-builder-cta {
  margin-top: 10px;
  background: #fff;
  color: #4c1d95;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18);
  min-width: min(280px, 100%);
  justify-content: center;
}

.home-builder-cta:hover,
.home-builder-cta:focus-visible {
  color: #fff;
}

@media (max-width: 768px) {
  .home-builder {
    padding-block: clamp(48px, 12vw, 72px);
  }

  .home-builder .section-inner {
    padding-block: clamp(48px, 12vw, 72px);
  }

  .home-builder h2,
  .home-builder #home-builder-title {
    font-size: clamp(1.125rem, 5vw, 1.25rem) !important;
  }
}
