@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.animate-fade-in{animation:fadeIn .6s ease-out forwards}.slide-in{animation:slideIn .6s ease-out forwards;opacity:0}.parallax-bg{transition:transform .2s ease-out}.agent-card{transition:all .3s ease}.agent-card:hover{transform:translateY(-8px);box-shadow:0 12px 24px -8px rgba(0,0,0,.15)}.gradient-text{background-size:200% auto;animation:gradient 4s ease infinite}@keyframes gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.shine-effect{position:relative;overflow:hidden}.shine-effect:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);transform:rotate(45deg);transition:all .3s;opacity:0}.shine-effect:hover:after{opacity:1;transform:rotate(45deg) translate(50%,50%)}.scroll-fade-in{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.scroll-fade-in.visible{opacity:1;transform:translateY(0)}.button-hover{position:relative;transition:transform .3s ease}.button-hover:hover{transform:translateY(-2px)}.button-hover:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;border-radius:9999px;opacity:0;z-index:-1;box-shadow:0 0 0 2px currentColor;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1);opacity:.8}70%{transform:scale(1.1);opacity:0}to{transform:scale(1.2);opacity:0}}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.icon-container:hover svg{animation:iconBounce .6s ease;color:#fff}@keyframes softRotate{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.rotate-hover:hover{animation:softRotate 1.5s ease-in-out infinite}.text-heading{transition:color .3s ease}.dark .text-heading{color:#f1f5f9}