.reveal{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transform:translateY(20px);transition:opacity .4s ease,transform .4s ease}.reveal-stagger.visible>*:nth-child(1){transition-delay:.1s}.reveal-stagger.visible>*:nth-child(2){transition-delay:.15s}.reveal-stagger.visible>*:nth-child(3){transition-delay:.2s}.reveal-stagger.visible>*:nth-child(4){transition-delay:.25s}.reveal-stagger.visible>*:nth-child(5){transition-delay:.3s}.reveal-stagger.visible>*:nth-child(6){transition-delay:.35s}.reveal-stagger.visible>*:nth-child(7){transition-delay:.4s}.reveal-stagger.visible>*:nth-child(8){transition-delay:.45s}.reveal-stagger.visible>*:nth-child(9){transition-delay:.5s}.reveal-stagger.visible>*:nth-child(10){transition-delay:.55s}.reveal-stagger.visible>*:nth-child(n+11){transition-delay:.6s}.reveal-stagger.visible>*{opacity:1;transform:translateY(0)}.reveal-fade{opacity:0;transition:opacity .6s ease}.reveal-fade.visible{opacity:1}.reveal-scale{opacity:0;transform:scale(.95);transition:opacity .5s ease,transform .5s ease}.reveal-scale.visible{opacity:1;transform:scale(1)}.reveal-left{opacity:0;transform:translateX(-30px);transition:opacity .6s ease,transform .6s ease}.reveal-left.visible{opacity:1;transform:translateX(0)}.reveal-right{opacity:0;transform:translateX(30px);transition:opacity .6s ease,transform .6s ease}.reveal-right.visible{opacity:1;transform:translateX(0)}@media(prefers-reduced-motion:reduce){.reveal,.reveal-stagger>*,.reveal-fade,.reveal-scale,.reveal-left,.reveal-right{opacity:1;transform:none;transition:none}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1)infinite}.animate-float{animation:float 3s ease-in-out infinite}.skeleton{background:linear-gradient( 90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75% );background-size:200% 100%;animation:shimmer 1.5s infinite}