@keyframes fadeInUp{from{opacity:.3;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{from{opacity:.3;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{from{opacity:.3;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}@keyframes slideDown{from{opacity:.3;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{from{opacity:.3;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(var(--brand-primary-rgb),.4)}50%{box-shadow:0 0 0 10px rgba(var(--brand-primary-rgb),0)}}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}@keyframes resultFlash{0%{background-color:rgba(var(--brand-accent-rgb),.2)}100%{background-color:#fff0}}.animate-on-scroll{opacity:1;transform:none;transition:opacity 0.5s ease,transform 0.5s ease}.animate-on-scroll[data-delay='1']{transition-delay:100ms}.animate-on-scroll[data-delay='2']{transition-delay:200ms}.animate-on-scroll[data-delay='3']{transition-delay:300ms}.animate-on-scroll[data-delay='4']{transition-delay:400ms}.hover-lift{transition:transform 0.2s cubic-bezier(.4,0,.2,1),box-shadow 0.2s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.hover-glow{transition:box-shadow 0.25s ease}.hover-glow:hover{box-shadow:0 0 20px rgba(var(--brand-primary-rgb),.25)}.hover-scale{transition:transform 0.2s ease}.hover-scale:hover{transform:scale(1.03)}.skeleton{background:linear-gradient(90deg,var(--brand-border) 25%,rgba(var(--brand-primary-rgb),.08) 37%,var(--brand-border) 63%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.skeleton-text{height:1em;margin-bottom:.5em;border-radius:4px}.skeleton-heading{height:1.5em;width:60%;margin-bottom:1em}.skeleton-image{aspect-ratio:16/9}@media (prefers-reduced-motion:reduce){.hover-lift:hover{transform:none}.hover-scale:hover{transform:none}.skeleton{animation:none}*,*::before,*::after{animation-duration:0.01ms!important;transition-duration:0.01ms!important}}