.cta-banner {
  padding-block: clamp(50px, 10vw, 80px);
  background: var(--color-dark);
  background-image: radial-gradient(ellipse at center top, rgba(43, 108, 238, 0.08) 0%, transparent 60%);
  color: var(--color-on-dark);
  text-align: center;
}

.cta-banner__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.cta-banner__pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--radius-pill);
  font-size: 13px;
  font-weight: var(--fw-medium);
  color: var(--color-on-dark);
  background: rgba(255, 255, 255, 0.04);
}

.cta-banner__pill svg {
  width: 14px;
  height: 14px;
  color: var(--color-on-dark);
}

.cta-banner__title {
  margin-top: 22px;
  max-width: 950px;
  font-size: clamp(34px, 5vw, 56px);
  font-weight: var(--fw-bold);
  line-height: 1.12;
  letter-spacing: -0.025em;
  color: var(--color-on-dark);
}

.cta-banner__subtitle {
  margin-top: 18px;
  max-width: 600px;
  font-size: clamp(15px, 1.2vw, 17px);
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.7);
}

.cta-banner__cta {
  margin-top: 32px;
  padding: 16px 28px;
  font-size: 15px;
  font-weight: var(--fw-semibold);
}

.cta-banner__bullets {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  justify-content: center;
  align-items: center;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.7);
}

.cta-banner__bullets li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.cta-banner__bullets svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: rgba(255, 255, 255, 0.85);
}
