.reveal{opacity:0;transition:opacity .6s,transform .6s}.reveal.reveal-up{transform:translateY(30px)}.reveal.reveal-left{transform:translateX(-30px)}.reveal.reveal-right{transform:translateX(30px)}.reveal.reveal-scale{transform:scale(.95)}.reveal.visible{opacity:1;transform:none}.delay-100{transition-delay:0.1s}.delay-200{transition-delay:0.2s}.delay-300{transition-delay:0.3s}.delay-400{transition-delay:0.4s}.delay-500{transition-delay:0.5s}.delay-600{transition-delay:0.6s}.count-up{display:inline-block}@keyframes pulse-teal{0%,100%{box-shadow:0 0 0 0 rgba(0,201,167,.4)}50%{box-shadow:0 0 0 12px rgba(0,201,167,0)}}.pulse-badge{animation:2.5s infinite pulse-teal}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:20px;height:20px;border:3px solid rgba(0,201,167,.3);border-top-color:var(--teal);border-radius:50%;animation:.7s linear infinite spin;display:inline-block;vertical-align:middle}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.fade-in{animation:.5s forwards fadeIn}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}.float{animation:4s ease-in-out infinite float}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.gradient-animate{background-size:200% 200%;animation:8s infinite gradientShift}.site-header{transition:box-shadow .3s}.site-header.scrolled{box-shadow:0 4px 20px rgba(0,0,0,.08)}.btn{position:relative;overflow:hidden}.btn::after{content:'';position:absolute;width:0;height:0;background:rgba(255,255,255,.25);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);transition:width .4s,height .4s,opacity .4s;opacity:0}.btn:active::after{width:200px;height:200px;opacity:0}.hover-lift{transition:transform .25s,box-shadow .25s}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.skip-link{position:fixed;top:-100%;left:50%;transform:translateX(-50%);background:var(--teal);color:var(--navy);padding:var(--space-3) var(--space-6);border-radius:0 0 var(--radius) var(--radius);font-weight:700;z-index:10000;transition:top .2s}.skip-link:focus{top:0}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}.reveal{opacity:1;transform:none}}