/* =============================================================
   CTA-FINAL — Sección de llamada a la acción final
   ============================================================= */

.cta-final {
  border-top: 1px solid var(--blk-border, var(--c-dark-border));
}

.cta-final__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  text-align: center;
  max-width: 900px;
  margin-inline: auto;
  padding: var(--pad-section) var(--pad-x);
}

/* ── Título ──────────────────────────────────────────────────── */
.cta-final__title {
  font-family: var(--f-heading);
  font-size: var(--text-8xl);
  line-height: 1.06;
  color: var(--blk-text, var(--c-white));
}

/* ── Subtítulo ───────────────────────────────────────────────── */
.cta-final__sub {
  font-family: var(--f-body);
  font-size: var(--text-lg);
  line-height: 1.65;
  color: var(--blk-text, var(--c-text-3));
  max-width: 560px;
}

/* ── Botones ─────────────────────────────────────────────────── */
.cta-final__btns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.875rem;
  flex-wrap: wrap;
}

.cta-final__btns .btn--accent,
.cta-final__btns .btn--outline-light,
.cta-final__btns .btn--outline-dark {
  font-size: var(--text-lg);
  padding: 0.875rem 2.25rem;
}

/* ── Esquemas de color ───────────────────────────────────────── */

/* Dark (default) */
.cta-final.is-style-dark {
  background-color: var(--dark-bg, #0D0D0D);
  border-color: #333333;
}
.cta-final.is-style-dark .cta-final__title { color: #FFFFFF; }
.cta-final.is-style-dark .cta-final__sub   { color: #94A3B8; }
.cta-final.is-style-dark .eyebrow          { color: var(--dark-accent, #2EA3F1); }
.cta-final.is-style-dark .eyebrow__line    { background-color: var(--dark-accent, #2EA3F1); }
.cta-final.is-style-dark .btn--accent {
  background-color: #FFFFFF;
  color: #0D0D0D;
  border-color: #FFFFFF;
}

/* Gray */
.cta-final.is-style-gray {
  background-color: var(--gray-bg, #F4F4F4);
  border-color: var(--c-border, #E8E8E8);
}
.cta-final.is-style-gray .cta-final__title { color: #0D0D0D; }
.cta-final.is-style-gray .cta-final__sub   { color: #64748B; }
.cta-final.is-style-gray .eyebrow          { color: #0D0D0D; }
.cta-final.is-style-gray .eyebrow__line    { background-color: #0D0D0D; }
.cta-final.is-style-gray .btn--accent {
  background-color: #0D0D0D;
  color: #FFFFFF;
  border-color: #0D0D0D;
}

/* Light */
.cta-final.is-style-light {
  background-color: var(--light-bg, #FFFFFF);
  border-color: var(--c-border, #E8E8E8);
}
.cta-final.is-style-light .cta-final__title { color: #0D0D0D; }
.cta-final.is-style-light .cta-final__sub   { color: #64748B; }
.cta-final.is-style-light .eyebrow          { color: #0D0D0D; }
.cta-final.is-style-light .eyebrow__line    { background-color: #0D0D0D; }
.cta-final.is-style-light .btn--accent {
  background-color: #0D0D0D;
  color: #FFFFFF;
  border-color: #0D0D0D;
}

/* ── Responsive ──────────────────────────────────────────────── */
@media (max-width: 768px) {
  .cta-final__title {
    font-size: var(--text-6xl);
  }

  .cta-final__btns {
    flex-direction: column;
  }
}

@media (max-width: 480px) {
  .cta-final__title {
    font-size: var(--text-5xl);
  }
}
