/* =============================================
   CTA HOMEPAGE SECTION — fs-cta-homepage
   ============================================= */
.fs-cta-homepage {
  box-sizing: border-box;
  background:
    linear-gradient(#241A30 1px, transparent 1px),
    linear-gradient(90deg, #241A30 1px, transparent 1px),
    radial-gradient(ellipse at 50% 0%, #3D0A50 0%, transparent 60%),
    #0A0118;
  background-size: 80px 80px, 80px 80px, auto, auto;
  position: relative;
  padding: 80px 20px;
  overflow: hidden;
}

.fs-cta-homepage__inner {
  position: relative;
  z-index: 1;
  max-width: 620px;
  margin: 0 auto;
  text-align: center;
}

.fs-cta-homepage__title {
  font-family: 'Outfit', sans-serif;
  font-weight: 600;
  font-size: clamp(28px, 4vw, 42px);
  color: #FFFFFF;
  line-height: 1.2;
  margin: 0 0 32px;
}

.fs-cta-homepage__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 40px;
}

.fs-cta-homepage__body p {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  color: #ECE9F2;
  line-height: 1.65;
  margin: 0;
}

.fs-cta-homepage__body strong {
  color: #FFFFFF;
  font-weight: 700;
}

.fs-cta-homepage__body a {
  color: #FF7FC2;
  text-decoration: none;
}

.fs-cta-homepage__btn {
  display: inline-block;
  background: linear-gradient(120deg, #b47cfd 0%, #ff7fc2 100%);
  border-radius: 30px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #FFFFFF;
  text-decoration: none;
  padding: 18px 28px;
  transition: transform 0.2s ease;
}

.fs-cta-homepage__btn:hover {
  color: inherit !important;
  transform: scale(1.02);
}

/* ── Responsive Mobile ── */
@media (max-width: 768px) {
  .fs-cta-homepage {
    padding: 60px 20px;
  }

  .fs-cta-homepage__body p {
    font-size: 15px;
  }
}