/**
 * Default template: Call to action partial only.
 * Uses --service-section-bg when set; otherwise root CTA main section colour.
 */
/* Interior card: same style as contact-cta-box */
.default-cta {
  padding: var(--default-spacing-xl);
  border-radius: var(--r, 20px);
  background: var(--service-section-bg, var(--card-bg));
  border: 1px solid var(--card-border);
  text-align: center;
  margin-bottom: var(--default-spacing-xl);
}

.default-cta__heading {
  margin: 0 0 var(--default-spacing-sm);
  font-size: var(--default-font-size-h2);
  font-weight: 700;
  color: var(--service-heading-color, var(--color-text-primary));
}

.default-cta__text {
  margin: 0 0 var(--default-spacing-lg);
  font-size: var(--default-font-size-lead);
  color: var(--service-text-color, var(--color-text-primary));
  max-width: 36ch;
  margin-left: auto;
  margin-right: auto;
}

.default-cta__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--default-spacing-md);
}

.default-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  border-radius: var(--default-radius);
  border: 2px solid transparent;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.default-cta__btn--primary {
  background: var(--color-accent);
  color: var(--color-on-accent, #fff);
  border-color: transparent;
}

.default-cta__btn--primary:hover {
  background: var(--cta-hover, #1d4ed8);
  color: var(--color-on-accent, #fff);
}

.default-cta__btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.default-cta__btn--secondary {
  background: transparent;
  color: var(--color-text-primary);
}

.default-cta__btn.default-cta__btn--secondary span {
  color: inherit;
}

.default-cta__btn--secondary .default-cta__btn-icon {
  color: currentColor;
}

.default-cta__btn-icon {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}
