.reveal-up{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.reveal-up.is-visible{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transform:translate(-24px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.reveal-left.is-visible{opacity:1;transform:translate(0)}.gradient-text{background:linear-gradient(90deg,rgb(var(--primary)),rgb(var(--accent)),rgb(var(--primary)));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:svelte-u0vbhs-gradient-pan 6s linear infinite}@keyframes svelte-u0vbhs-gradient-pan{0%{background-position:0% 50%}to{background-position:200% 50%}}.orb-float{animation:svelte-u0vbhs-orb-float 14s ease-in-out infinite}.orb-delayed{animation-delay:-7s}@keyframes svelte-u0vbhs-orb-float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-30px) scale(1.1)}}.hero-float{animation:svelte-u0vbhs-hero-float 6s ease-in-out infinite}@keyframes svelte-u0vbhs-hero-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.pulse-on-hover{position:relative}.pulse-on-hover:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 rgb(var(--primary) / .5);transition:box-shadow .4s ease-out;pointer-events:none}.pulse-on-hover:hover:after{animation:svelte-u0vbhs-cta-pulse 1.4s ease-out infinite}@keyframes svelte-u0vbhs-cta-pulse{0%{box-shadow:0 0 rgb(var(--primary) / .5)}to{box-shadow:0 0 0 18px rgb(var(--primary) / 0)}}.dot-pattern{background-image:radial-gradient(rgb(var(--foreground) / .08) 1px,transparent 1px);background-size:24px 24px;mask-image:radial-gradient(ellipse at center,black 30%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 70%)}.logo-pulse{animation:svelte-u0vbhs-logo-pulse 4s ease-in-out infinite}@keyframes svelte-u0vbhs-logo-pulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 0 rgb(var(--primary) / 0))}50%{transform:scale(1.03);filter:drop-shadow(0 0 20px rgb(var(--primary) / .4))}}@media (prefers-reduced-motion: reduce){.reveal-up,.reveal-left{transition:none;opacity:1;transform:none}.orb-float,.hero-float,.logo-pulse,.gradient-text{animation:none}}
