.bio-pattern-aurora{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.bio-pattern-aurora .blob{filter:blur(120px);opacity:.28;will-change:transform;border-radius:50%;width:46vmax;height:46vmax;position:absolute}.bio-pattern-aurora .blob--a{background:radial-gradient(circle,#c084fc,#0000 70%);animation:34s ease-in-out infinite alternate bioAuroraA;top:-12%;left:-10%}.bio-pattern-aurora .blob--b{background:radial-gradient(circle,#38bdf8,#0000 70%);animation:42s ease-in-out infinite alternate bioAuroraB;bottom:-16%;right:-12%}.bio-pattern-aurora .blob--c{opacity:.18;background:radial-gradient(circle,#ec4899,#0000 70%);width:36vmax;height:36vmax;animation:50s ease-in-out infinite alternate bioAuroraC;top:28%;left:38%}@keyframes bioAuroraA{0%{transform:translate(0)scale(1)}to{transform:translate(7vw,8vh)scale(1.12)}}@keyframes bioAuroraB{0%{transform:translate(0)scale(1)}to{transform:translate(-7vw,-6vh)scale(1.08)}}@keyframes bioAuroraC{0%{transform:translate(-4vw,3vh)scale(.95)}to{transform:translate(5vw,-5vh)scale(1.1)}}@media (max-width:560px){.bio-pattern-aurora .blob{filter:blur(80px);width:70vmax;height:70vmax}}@media (prefers-reduced-motion:reduce){.bio-pattern-aurora .blob{animation:none}}.bio-pattern-mesh,.bio-pattern-waves,.bio-pattern-rays,.bio-pattern-bubbles,.bio-pattern-stripes,.bio-pattern-silk,.bio-pattern-halftone{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.bio-pattern-mesh>span{filter:blur(52px);mix-blend-mode:screen;will-change:transform;border-radius:50%;position:absolute}.bio-pattern-mesh>span:first-child{width:78%;height:72%;animation:24s ease-in-out infinite alternate bioMeshA;top:-14%;left:-12%}.bio-pattern-mesh>span:nth-child(2){width:68%;height:66%;animation:31s ease-in-out infinite alternate bioMeshB;top:8%;left:auto;right:-16%}.bio-pattern-mesh>span:nth-child(3){width:84%;height:70%;animation:27s ease-in-out infinite alternate bioMeshC;bottom:-18%;left:6%}@keyframes bioMeshA{0%{transform:translate(0,0)scale(1)}to{transform:translate(18%,12%)scale(1.18)}}@keyframes bioMeshB{0%{transform:translate(0,0)scale(1.1)}to{transform:translate(-16%,20%)scale(.92)}}@keyframes bioMeshC{0%{transform:translate(0,0)scale(.95)}to{transform:translate(12%,-16%)scale(1.22)}}.bio-pattern-waves>svg{mix-blend-mode:screen;width:200%;height:46%;animation-name:bioWaveSlide;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;left:-50%}@keyframes bioWaveSlide{0%{transform:translate(0)}to{transform:translate(-25%)}}.bio-pattern-rays>span{filter:blur(20px);mix-blend-mode:screen;transform-origin:50% 30%;width:200%;height:200%;animation:60s linear infinite bioRaySpin;position:absolute;top:-60%;left:-50%}@keyframes bioRaySpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.bio-pattern-bubbles>span{mix-blend-mode:screen;border-radius:50%;animation-name:bioBubbleRise;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;bottom:-30%}@keyframes bioBubbleRise{0%{opacity:0;transform:translate(0,0)scale(.8)}14%{opacity:1}50%{transform:translate(6%,-65vh)scale(1.05)}86%{opacity:1}to{opacity:0;transform:translate(-4%,-140vh)scale(1.2)}}.bio-pattern-stripes{background-image:repeating-linear-gradient(45deg, var(--stripe-a) 0 1.5px, transparent 1.5px 9px, var(--stripe-b) 9px 10.5px, transparent 10.5px 20px);animation:18s linear infinite bioStripeSlide}@keyframes bioStripeSlide{0%{background-position:0 0}to{background-position:56.6px 56.6px}}.bio-pattern-silk>span{filter:blur(38px);mix-blend-mode:screen;transform-origin:50%;width:180%;animation-name:bioSilkDrift;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate;position:absolute;left:-40%}@keyframes bioSilkDrift{0%{transform:rotate(var(--silk-rot,0deg)) translateX(-8%) scaleY(1)}to{transform:rotate(var(--silk-rot,0deg)) translateX(8%) scaleY(1.25)}}.bio-pattern-silk>span{transform:rotate(var(--silk-rot,0deg))}.bio-pattern-halftone{background-image:radial-gradient(var(--halftone-color) 1.1px, transparent 1.4px);background-size:16px 16px;animation:16s ease-in-out infinite alternate bioHalftoneWave;-webkit-mask-image:linear-gradient(115deg,#0000 12%,#000 34% 52%,#0000 76%);mask-image:linear-gradient(115deg,#0000 12%,#000 34% 52%,#0000 76%);-webkit-mask-size:260% 260%;mask-size:260% 260%}@keyframes bioHalftoneWave{0%{-webkit-mask-position:0 0;mask-position:0 0}to{-webkit-mask-position:100% 100%;mask-position:100% 100%}}@media (prefers-reduced-motion:reduce){.bio-pattern-mesh>span,.bio-pattern-waves>svg,.bio-pattern-rays>span,.bio-pattern-bubbles>span,.bio-pattern-stripes,.bio-pattern-halftone,.bio-pattern-silk>span{animation:none}}.bio-pattern-icons{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.bio-pattern-icons .bio-pattern-icon{transform:rotate(var(--icon-rot,0deg)) scale(var(--icon-scale,1));animation-duration:var(--icon-dur,20s);will-change:transform;line-height:1;animation-timing-function:linear;animation-iteration-count:infinite;display:block;position:absolute}.bio-pattern-icons[data-motion=float] .bio-pattern-icon{animation-name:bioIconFloat}@keyframes bioIconFloat{0%{transform:translateY(60vh) rotate(var(--icon-rot)) scale(var(--icon-scale));opacity:0}12%{opacity:var(--icon-op,1)}88%{opacity:var(--icon-op,1)}to{transform:translateY(-70vh) rotate(calc(var(--icon-rot) + 40deg)) scale(var(--icon-scale));opacity:0}}.bio-pattern-icons[data-motion=fall] .bio-pattern-icon{animation-name:bioIconFall}@keyframes bioIconFall{0%{transform:translateY(-70vh) rotate(var(--icon-rot)) scale(var(--icon-scale))}to{transform:translateY(70vh) rotate(calc(var(--icon-rot) + 180deg)) scale(var(--icon-scale))}}.bio-pattern-icons[data-motion=drift] .bio-pattern-icon{animation-name:bioIconDrift;animation-timing-function:ease-in-out;animation-direction:alternate}@keyframes bioIconDrift{0%{transform:translate(-6vw, -3vh) rotate(var(--icon-rot)) scale(var(--icon-scale))}to{transform:translate(6vw, 3vh) rotate(calc(var(--icon-rot) + 18deg)) scale(var(--icon-scale))}}.bio-pattern-icons[data-motion=pulse] .bio-pattern-icon{animation-name:bioIconPulse;animation-timing-function:ease-in-out;animation-direction:alternate}@keyframes bioIconPulse{0%{transform:rotate(var(--icon-rot)) scale(calc(var(--icon-scale) * .72))}to{transform:rotate(var(--icon-rot)) scale(calc(var(--icon-scale) * 1.28))}}.bio-pattern-icons[data-motion=spin] .bio-pattern-icon{animation-name:bioIconSpin}@keyframes bioIconSpin{0%{transform:rotate(var(--icon-rot)) scale(var(--icon-scale))}to{transform:rotate(calc(var(--icon-rot) + 360deg)) scale(var(--icon-scale))}}.bio-pattern-icons[data-motion=still] .bio-pattern-icon{animation:none}@media (prefers-reduced-motion:reduce){.bio-pattern-icons .bio-pattern-icon{animation:none}}
