@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes reviewFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes breathe1{0%{transform:scale(.82) rotate(0deg);opacity:.65}35%{transform:scale(1.22) rotate(10deg);opacity:1}65%{transform:scale(.92) rotate(-6deg);opacity:.78}to{transform:scale(.82) rotate(0deg);opacity:.65}}@keyframes breathe2{0%{transform:scale(1.1) rotate(-6deg);opacity:.6}40%{transform:scale(.78) rotate(8deg);opacity:1}72%{transform:scale(1.18) rotate(-4deg);opacity:.72}to{transform:scale(1.1) rotate(-6deg);opacity:.6}}@keyframes breathe3{0%{transform:scale(.88) rotate(12deg);opacity:.45}50%{transform:scale(1.32) rotate(-10deg);opacity:.95}to{transform:scale(.88) rotate(12deg);opacity:.45}}@keyframes slotWordIn{0%{opacity:0;transform:translateY(36px) skewY(3deg)}to{opacity:1;transform:translateY(0) skewY(0deg)}}.orb-breathe-1{animation:breathe1 9s ease-in-out infinite}.orb-breathe-2{animation:breathe2 13s ease-in-out infinite}.orb-breathe-3{animation:breathe3 7s ease-in-out infinite}.hero-slot-word{display:block;animation:slotWordIn .55s cubic-bezier(.16,1,.3,1) both}.marquee-track{animation:marquee 30s linear infinite;display:inline-flex;width:-moz-max-content;width:max-content}:where(.js.motion-ok) .anim{opacity:0;transform:translateY(32px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}:where(.js.motion-ok) .anim.animate-in{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.26s}.delay-3{transition-delay:.42s}.anim.anim.delay-1{transition-delay:.12s}.anim.anim.delay-2{transition-delay:.26s}.anim.anim.delay-3{transition-delay:.42s}@keyframes photoDiagReveal{0%{clip-path:polygon(16% 100%,100% 100%,100% 100%,0 100%);opacity:0}to{clip-path:polygon(16% 0,100% 0,100% 100%,0 100%);opacity:1}}.photo-diag-reveal{animation:photoDiagReveal 1.1s cubic-bezier(.16,1,.3,1) .4s both}@media (max-width:768px){:where(.js.motion-ok) .anim.anim:not(.animate-in){transform:translateY(20px)}:where(.js.motion-ok) .anim.anim{transition-duration:.7s}}@media (prefers-reduced-motion:reduce){.anim{opacity:1;transform:none;transition:none}.hero-slot-word,.marquee-track,.orb-breathe-1,.orb-breathe-2,.orb-breathe-3{animation:none}}