@keyframes cf-float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-14px) rotate(4deg)}}@keyframes cf-drift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(18px,-12px) scale(1.06)}}@keyframes cf-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes cf-pop{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cf-marquee{0%{transform:translateX(0)}to{transform:translateX(50%)}}.anim-float{animation:cf-float 7s ease-in-out infinite}.anim-float-slow{animation:cf-float 11s ease-in-out infinite}.anim-drift{animation:cf-drift 14s ease-in-out infinite}.anim-rise{animation:cf-rise .8s cubic-bezier(.2,.7,.2,1) both}.anim-pop{animation:cf-pop .25s ease-out both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.45s}.marquee-track{animation:cf-marquee 40s linear infinite}.marquee:focus-within .marquee-track,.marquee:hover .marquee-track{animation-play-state:paused}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}.dots-pattern{background-image:radial-gradient(circle,rgb(38 70 83/.12) 1.5px,transparent 1.6px);background-size:22px 22px}.dots-pattern-light{background-image:radial-gradient(circle,rgb(255 255 255/.12) 1.5px,transparent 1.6px);background-size:22px 22px}.text-balance{text-wrap:balance}@media (prefers-reduced-motion:reduce){.anim-drift,.anim-float,.anim-float-slow,.marquee-track{animation:none!important}.reveal{opacity:1;transform:none;transition:none}}@media print{.no-print,footer,header{display:none!important}body{background:#fff}}