/* Continuous, gently moving blue washes behind every campaign's content. */
body{isolation:isolate}
.page-ambient{
  position:fixed;
  inset:0;
  z-index:-1;
  overflow:hidden;
  pointer-events:none;
  background:linear-gradient(145deg,#fdfefe 0%,#f8fbff 55%,#fff 100%);
}
.page-ambient::before,.page-ambient::after{
  content:"";
  position:absolute;
  inset:-25%;
  will-change:transform;
}
.page-ambient::before{
  background:
    radial-gradient(ellipse at 22% 28%,var(--voco-tone-b8d8ff70, #b8d8ff70) 0%,var(--voco-tone-cfe5ff35, #cfe5ff35) 24%,transparent 49%),
    radial-gradient(ellipse at 78% 72%,var(--voco-tone-c2e5ff60, #c2e5ff60) 0%,transparent 47%);
  animation:ambient-blue-drift 34s ease-in-out infinite alternate;
}
.page-ambient::after{
  background:
    radial-gradient(ellipse at 72% 24%,var(--voco-tone-d8e4ff65, #d8e4ff65) 0%,transparent 43%),
    radial-gradient(ellipse at 30% 80%,var(--voco-tone-d1efff55, #d1efff55) 0%,transparent 42%);
  animation:ambient-ice-drift 46s ease-in-out infinite alternate;
}
.page-brand,.hero,.intake-section,.customer-ticker-section{background:transparent}
.foundation-strip{background:#fafcffb3}
@keyframes ambient-blue-drift{
  from{transform:translate3d(-4%,-3%,0) scale(1)}
  to{transform:translate3d(6%,5%,0) scale(1.08)}
}
@keyframes ambient-ice-drift{
  from{transform:translate3d(5%,2%,0) scale(1.05)}
  to{transform:translate3d(-6%,-4%,0) scale(1)}
}
@media(prefers-reduced-motion:reduce){
  .page-ambient::before,.page-ambient::after{animation:none;transform:none;will-change:auto}
}
