.cta-hero { min-height: 420px; }
.cta-hero .cta-hero__bg { position:absolute; inset:0; z-index:0; }
.cta-hero .cta-hero__image {
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  filter: brightness(0.65);
}
.cta-hero .cta-hero__gradient {
  position:absolute; inset:0;
  background: radial-gradient(120% 120% at 0% 0%, rgba(0,186,189,.25), transparent 40%),
              radial-gradient(120% 120% at 100% 100%, rgba(164,0,252,.25), transparent 40%);
}
.cta-hero .hero-float { animation: floatY 6s ease-in-out infinite; }
@keyframes floatY { 0%,100% { transform: translateY(0) } 50% { transform: translateY(-8px) } }
