:root{--hero-bg: #e4e4e4;--hero-g1: #f1f1f1;--hero-g2: #9c9c9c;--hero-g3: #d4d4d4;--motion-ease-out: cubic-bezier(.32, .72, 0, 1);--motion-ease-standard: cubic-bezier(.4, 0, .2, 1);--motion-duration-fast: .15s;--motion-duration-medium: .22s;--motion-duration-slow: .32s}html{scroll-behavior:smooth}.hero-grainient{isolation:isolate;background:var(--hero-bg)}.hero-grainient__base{background-color:var(--hero-bg)}.hero-grainient__noise{opacity:.06;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.45'/%3E%3C/svg%3E");background-size:220px 220px;animation:hero-noise-pan .8s steps(2) infinite;pointer-events:none}.hero-grainient__blob{width:48vmax;height:48vmax;border-radius:9999px;filter:blur(54px);opacity:.72;pointer-events:none;will-change:transform;mix-blend-mode:normal;animation-duration:3.6s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate}.hero-grainient__blob--one{background:var(--hero-g1);top:-18vmax;right:-10vmax;animation-name:hero-blob-one}.hero-grainient__blob--two{background:var(--hero-g2);top:-12vmax;left:-16vmax;animation-name:hero-blob-two;animation-duration:3.1s}.hero-grainient__blob--three{background:var(--hero-g3);bottom:-24vmax;left:26%;animation-name:hero-blob-three;animation-duration:4.2s}@keyframes hero-blob-one{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-22vmax,14vmax,0) scale(1.24)}}@keyframes hero-blob-two{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(26vmax,12vmax,0) scale(1.22)}}@keyframes hero-blob-three{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-16vmax,-22vmax,0) scale(1.2)}}@keyframes hero-noise-pan{0%{transform:translate(0)}to{transform:translate(12px,-10px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-grainient__noise,.hero-grainient__blob{animation:none}.reveal-up{animation:none!important;opacity:1!important;transform:none!important}}.reveal-up{--reveal-delay: 0ms;opacity:0;transform:translate3d(0,14px,0);animation:reveal-up var(--motion-duration-slow) var(--motion-ease-out) forwards;animation-delay:var(--reveal-delay);will-change:opacity,transform}@keyframes reveal-up{0%{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:translateZ(0)}}
