@keyframes floatOrb {
    0%,
    100% {
        transform: translateY(0) translateX(0) scale(1);
    }
    50% {
        transform: translateY(-16px) translateX(10px) scale(1.03);
    }
}

@keyframes pulseBorder {
    0%,
    100% {
        box-shadow: 0 0 0 0 rgba(235, 94, 40, 0.28);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(235, 94, 40, 0);
    }
}

@keyframes shimmer {
    0% {
        background-position: -120% 0;
    }
    100% {
        background-position: 220% 0;
    }
}

.orb-one {
    animation: floatOrb 12s ease-in-out infinite;
}

.orb-two {
    animation: floatOrb 15s ease-in-out infinite reverse;
}

.metric-card {
    animation: pulseBorder 7s ease-in-out infinite;
}

.project-open {
    background-image: linear-gradient(100deg, transparent 0%, rgba(255, 255, 255, 0.55) 45%, transparent 55%);
    background-size: 220% 100%;
}

.project-open:hover {
    animation: shimmer 0.9s linear 1;
}

@media (prefers-reduced-motion: reduce) {
    * {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important;
    }
}
