/* Ostoja — CTA banner (widget: ostoja_cta) */
.ost-cta-wrap { padding-block: 6rem; }
@media (min-width: 1024px) { .ost-cta-wrap { padding-block: 8rem; } }

.ost-cta {
  position: relative; overflow: hidden; border-radius: 2.5rem;
  background: var(--ost-gradient-forest); color: var(--ost-cream);
  padding: 3rem; box-shadow: var(--ost-shadow-glow);
}
@media (min-width: 1024px) { .ost-cta { padding: 5rem; } }

.ost-cta__glow { position: absolute; border-radius: 9999px; filter: blur(48px); pointer-events: none; }
.ost-cta__glow--gold { top: -5rem; right: -5rem; height: 20rem; width: 20rem; background: rgba(212, 168, 106, 0.25); }
.ost-cta__glow--cream { bottom: -8rem; left: -5rem; height: 24rem; width: 24rem; background: rgba(243, 240, 233, 0.05); }

.ost-cta__inner { position: relative; max-width: 36rem; }
.ost-cta__heading { font-size: clamp(2.25rem, 5.5vw, 3.75rem); font-weight: 600; letter-spacing: -0.025em; line-height: 1.05; margin: 0; color: var(--ost-cream); }
.ost-cta__heading .ost-accent-italic { color: var(--ost-gold); }
.ost-cta__text { margin: 1.5rem 0 0; color: rgba(243, 240, 233, 0.75); font-size: 1.125rem; max-width: 32rem; }
.ost-cta__actions { display: flex; flex-direction: column; gap: .75rem; margin-top: 2.5rem; }
@media (min-width: 640px) { .ost-cta__actions { flex-direction: row; } }
