@keyframes fadeInUp{0%{opacity:0;transform:translateY(var(--space-32))}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.scroll-reveal{opacity:0;transform:translateY(40px)}.scroll-reveal.is-visible{animation:fadeInUp .8s var(--ease-standard) forwards}.scroll-reveal:first-child{animation-delay:0s}.scroll-reveal:nth-child(2){animation-delay:.1s}.scroll-reveal:nth-child(3){animation-delay:.2s}.scroll-reveal:nth-child(4){animation-delay:.3s}.scroll-reveal:nth-child(5){animation-delay:.4s}.scroll-reveal:nth-child(6){animation-delay:.5s}.card-hover{box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-standard)}.card-hover:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px) scale(1.02)}.btn-hover{transition:all var(--duration-fast) var(--ease-standard)}.btn-hover:hover:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(-2px)}.btn-hover:active:not(:disabled){box-shadow:none;transform:translateY(0)}.link-hover{color:var(--color-primary);position:relative;transition:color var(--duration-fast) var(--ease-standard)}.link-hover:after{background:currentColor;bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:width var(--duration-normal) var(--ease-standard);width:0}.link-hover:hover{color:var(--color-primary-hover)}.link-hover:hover:after{width:100%}@keyframes iconSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.icon-spin{animation:iconSpin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.spinner{animation:spin .8s linear infinite;border:3px solid var(--color-secondary);border-radius:var(--radius-full);border-top-color:var(--color-primary);display:inline-block;height:20px;width:20px}.skeleton-loader{animation:shimmer 2s infinite;background:linear-gradient(90deg,rgba(var(--color-teal-500-rgb),.08) 25%,rgba(var(--color-teal-500-rgb),.15) 50%,rgba(var(--color-teal-500-rgb),.08) 75%);background-size:1000px 100%;border-radius:var(--radius-base)}@keyframes textFadeIn{0%{letter-spacing:.1em;opacity:0}to{letter-spacing:var(--letter-spacing-tight);opacity:1}}.text-animate{animation:textFadeIn .8s var(--ease-standard)}@keyframes titleBounce{0%{opacity:1;transform:translateY(0)}50%{opacity:.8;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.title-animate{animation:fadeInUp .8s var(--ease-standard) forwards,titleBounce 3s ease-in-out .8s infinite}@keyframes focusGlow{0%{box-shadow:0 0 0 2px var(--color-focus-ring)}50%{box-shadow:var(--focus-ring)}to{box-shadow:0 0 0 2px var(--color-focus-ring)}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{animation:focusGlow 1s ease-in-out;outline:var(--focus-outline);outline-offset:2px}@keyframes gradientFlow{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.gradient-animate{animation:gradientFlow 6s ease infinite;background-size:200% 200%}@keyframes pulseGlow{0%,to{box-shadow:0 0 20px rgba(var(--color-teal-500-rgb),.3)}50%{box-shadow:0 0 40px rgba(var(--color-teal-500-rgb),.6)}}.glow-pulse{animation:pulseGlow 2s ease-in-out infinite}@keyframes pageIn{0%{opacity:0}to{opacity:1}}@keyframes pageOut{0%{opacity:1}to{opacity:0}}.page-transition{animation:pageIn var(--duration-normal) var(--ease-standard)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalSlideOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(50px) scale(.95)}}.modal-open{animation:modalSlideIn var(--duration-normal) var(--ease-standard);background-color:var(--color-surface);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.modal-close{animation:modalSlideOut var(--duration-normal) var(--ease-standard)}@keyframes notificationSlideIn{0%{opacity:0;transform:translateX(-100px)}to{opacity:1;transform:translateX(0)}}@keyframes notificationSlideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100px)}}.notification{animation:notificationSlideIn var(--duration-normal) var(--ease-standard);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);box-shadow:var(--shadow-md);padding:var(--space-16)}.notification.closing{animation:notificationSlideOut var(--duration-normal) var(--ease-standard)}.parallax{overflow:hidden;position:relative}.parallax-element{transition:transform .1s linear}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:480px){.scroll-reveal.is-visible{animation:fadeInUp .5s var(--ease-standard) forwards}.card-hover:hover{transform:translateY(-4px) scale(1.01)}.scroll-reveal:first-child{animation-delay:0s}.scroll-reveal:nth-child(2){animation-delay:.05s}.scroll-reveal:nth-child(3){animation-delay:.1s}.scroll-reveal:nth-child(4){animation-delay:.15s}.scroll-reveal:nth-child(5){animation-delay:.2s}.scroll-reveal:nth-child(6){animation-delay:.25s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(var(--space-20))}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.btn-hover:hover:not(:disabled){transform:translateY(-1px)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(var(--space-24)) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.notification{max-width:calc(100vw - var(--space-32));padding:var(--space-12)}@keyframes pulseGlow{0%,to{box-shadow:0 0 10px rgba(var(--color-teal-500-rgb),.2)}50%{box-shadow:0 0 20px rgba(var(--color-teal-500-rgb),.4)}}}@media (max-width:768px){.scroll-reveal.is-visible{animation:fadeInUp .6s var(--ease-standard) forwards}.card-hover:hover{transform:translateY(-6px) scale(1.015)}.scroll-reveal:first-child{animation-delay:0s}.scroll-reveal:nth-child(2){animation-delay:.05s}.scroll-reveal:nth-child(3){animation-delay:.1s}.scroll-reveal:nth-child(4){animation-delay:.15s}.scroll-reveal:nth-child(5){animation-delay:.2s}.scroll-reveal:nth-child(6){animation-delay:.25s}.spinner{border-width:2px;height:18px;width:18px}}.btn-hover,.card-hover,.modal-open,.notification,.scroll-reveal{will-change:transform}.scroll-reveal.is-visible{will-change:transform,opacity}.scroll-reveal.animation-complete{will-change:auto}