/* =====================================================================
   CTA INTERMEDIO
   Fondo: var(--color-fondo) blanco
   ===================================================================== */

.bloque-cta {
  background: var(--color-fondo);
}

.cta-wrap {
  display: flex;
  flex-direction: column;
  gap: 28px;
  border-left: 5px solid var(--color-acento);
  padding-left: 24px;
}

/* Lado izquierdo — textos */

.cta-izquierda {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.cta-pretitle {
  font-size: 12px;
  font-weight: var(--peso-semibold);
  color: var(--color-acento);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin: 0;
}

.cta-h2 {
  font-size: 22px;
  font-weight: var(--peso-bold);
  color: var(--color-primario);
  line-height: 1.3;
  margin: 0;
  text-align: left;
}

.cta-p {
  font-size: 14px;
  color: var(--color-texto-secundario);
  line-height: 1.7;
  margin: 0;
}

/* Lado derecho — botones */

.cta-acciones {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Botón primario */

.btn-primario {
  background: var(--color-acento);
  color: #fff;
  border-color: var(--color-acento);
  font-size: 14px;
  padding: 13px 22px;
  justify-content: center;
}

.btn-primario svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.btn-primario:hover {
  background: var(--color-primario-claro);
  border-color: var(--color-primario-claro);
}

/* Botón secundario */

.btn-secundario {
  background: transparent;
  color: var(--color-primario);
  border-color: var(--color-primario);
  font-size: 14px;
  padding: 13px 22px;
  justify-content: center;
}

.btn-secundario svg {
  width: 16px;
  height: 16px;
  color: var(--color-acento);
  flex-shrink: 0;
}

.btn-secundario:hover {
  background: var(--color-primario);
  color: #fff;
  border-color: var(--color-primario);
}

.btn-secundario:hover svg {
  color: var(--color-acento-claro);
}

/* ----- Desktop ----- */

@media (min-width: 768px) {

  .cta-wrap {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 48px;
  }

  .cta-h2 {
    font-size: 24px;
  }

  .cta-acciones {
    min-width: 200px;
    flex-shrink: 0;
  }

  .btn-primario,
  .btn-secundario {
    justify-content: flex-start;
  }
}
