/* Shared splash background for every waitlist CTA. */
.cta-splash { position: relative; overflow: hidden; isolation: isolate;
  background: radial-gradient(ellipse 55% 70% at 18% 8%, rgba(111,134,232,.42), transparent 70%), linear-gradient(135deg, #26356F 0%, #141C45 55%, #090D24 100%);
}
.cta-splash::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background-image:
    radial-gradient(1px 1px at 32.7% 16.5%, rgba(255,255,255,.28), transparent),
    radial-gradient(1.6px 1.6px at 53.5% 37.1%, rgba(255,255,255,.63), transparent),
    radial-gradient(1.6px 1.6px at 4.7% 43.6%, rgba(255,255,255,.4), transparent),
    radial-gradient(1.6px 1.6px at 42.6% 81.4%, rgba(255,255,255,.47), transparent),
    radial-gradient(1px 1px at 62.5% 93%, rgba(255,255,255,.39), transparent),
    radial-gradient(1px 1px at 96.7% 6.5%, rgba(255,255,255,.35), transparent),
    radial-gradient(1px 1px at 15.1% 13.3%, rgba(255,255,255,.54), transparent),
    radial-gradient(1px 1px at 18.7% 57.8%, rgba(255,255,255,.38), transparent),
    radial-gradient(1.6px 1.6px at 54.7% 8%, rgba(255,255,255,.46), transparent),
    radial-gradient(1px 1px at 67.7% 43%, rgba(255,255,255,.45), transparent),
    radial-gradient(1px 1px at 88.2% 71.5%, rgba(255,255,255,.5), transparent),
    radial-gradient(1px 1px at 76.4% 22.8%, rgba(255,255,255,.42), transparent),
    radial-gradient(1.6px 1.6px at 27.9% 88.6%, rgba(255,255,255,.36), transparent); }

/* Stacked CTAs use the full available content width. */
@media (max-width: 960px) {
  .cta-splash .cta-inner > div { width: 100%; min-width: 0; }
  .cta-splash .cta-form { width: 100%; }
}
@media (max-width: 1000px) {
  .cta-splash.closing .waitlist-form { width: 100%; }
}

/* Universal waitlist form, shared by homepage and Journal splashes. */
.cta-splash .cta-form, .cta-splash .waitlist-form {
  display: flex; gap: 6px; min-width: 0;
  background: #fff; border: 1px solid #fff; border-radius: 999px;
  padding: 6px 6px 6px 20px; box-shadow: none;
}
.cta-splash .cta-form input, .cta-splash .waitlist-form input {
  flex: 1; min-width: 0; border: 0; outline: none; background: transparent;
}
@media (max-width: 600px) {
  .cta-splash .cta-form, .cta-splash .waitlist-form {
    flex-direction: column; width: 100%; border-radius: 22px; padding: 8px;
  }
  .cta-splash .cta-form input, .cta-splash .waitlist-form input { padding: 10px 12px; }
  .cta-splash .cta-form .btn, .cta-splash .waitlist-form .btn { width: 100%; }
}
