/* ═══════════════════════════════════════════════════════════
   MOLECULE: CTA Block
   Heading + paragraph + button. Used as section closer,
   page footer CTA, inline call-to-action.
   ═══════════════════════════════════════════════════════════ */

.cta-block {
  text-align: center;
  padding: var(--space-16) var(--space-page-x);
}

.cta-block__eyebrow {
  margin-bottom: var(--space-4);
}

.cta-block__title {
  font-family: var(--font-heading);
  font-size: clamp(1.5rem, 3.5vw, 2.5rem);
  font-weight: var(--weight-bold);
  letter-spacing: var(--tracking-tight);
  line-height: var(--leading-tight);
  color: var(--color-text-1);
  margin-bottom: var(--space-4);
}

.cta-block__desc {
  font-size: var(--text-lg);
  line-height: var(--leading-relaxed);
  color: var(--color-text-2);
  max-width: var(--max-width-text);
  margin: 0 auto var(--space-8);
}

.cta-block__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-4);
  flex-wrap: wrap;
}


/* ── Variant: with background panel ──────────────────────── */

.cta-block--panel {
  background: var(--color-surface);
  border: 1px solid var(--color-rule);
  border-radius: var(--radius-xl);
  padding: var(--space-16) var(--space-8);
}


/* ── Variant: blue background ────────────────────────────── */

.cta-block--blue {
  background: var(--color-blue);
  border-radius: var(--radius-xl);
  padding: var(--space-16) var(--space-8);
}

.cta-block--blue .cta-block__title {
  color: var(--color-white);
}

.cta-block--blue .cta-block__desc {
  color: rgba(255, 255, 255, 0.75);
}
