.hero-cta-label { position: relative; }

@media (prefers-reduced-motion: no-preference) {
  .hero-cta-label:has(.hero-cta-cascade:not([hidden])) .hero-cta-label-text {
    opacity: 0;
  }

  .hero-cta-cascade:not([hidden]) {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    pointer-events: none;
  }

  /* Layout utilities expected by Componentry’s unmodified component. */
  .hero-cta-cascade .inline-flex { display: inline-flex; }
  .hero-cta-cascade .inline-block { display: inline-block; }
  .hero-cta-cascade .relative { position: relative; }
  .hero-cta-cascade .absolute { position: absolute; }
  .hero-cta-cascade .inset-0 { inset: 0; }
  .hero-cta-cascade .items-center { align-items: center; }
  .hero-cta-cascade .justify-center { justify-content: center; }
  .hero-cta-cascade .whitespace-pre { white-space: pre; }
  .hero-cta-cascade .select-none { user-select: none; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-cta-cascade { display: none; }
}
