﻿@keyframes float {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-15px) rotate(3deg); }
        }
        @keyframes float-delay {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(-5deg); }
        }
        @keyframes blob-morph {
            0%, 100% { border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%; }
            34% { border-radius: 70% 30% 50% 50% / 30% 30% 70% 70%; }
            67% { border-radius: 100% 60% 60% 100% / 100% 100% 60% 60%; }
        }
        @keyframes pulse-soft {
            0%, 100% { transform: scale(1); opacity: 0.55; }
            50% { transform: scale(1.08); opacity: 0.8; }
        }
        @keyframes drift {
            0%, 100% { transform: translate3d(0, 0, 0); }
            50% { transform: translate3d(14px, -12px, 0); }
        }
        .animate-float { animation: float 5s ease-in-out infinite; }
        .animate-float-delay { animation: float-delay 6s ease-in-out infinite; animation-delay: 2s; }
        .animate-blob { animation: blob-morph 8s ease-in-out infinite alternate; }
        .animate-pulse-soft { animation: pulse-soft 4.5s ease-in-out infinite; }
        .animate-drift { animation: drift 7s ease-in-out infinite; }

        .reveal {
            opacity: 0;
            transform: translateY(30px) scale(0.98);
            transition: opacity 650ms ease, transform 650ms cubic-bezier(0.22, 1, 0.36, 1);
            will-change: opacity, transform;
        }
        .reveal.is-visible {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
        .reveal-delay-1 { transition-delay: 120ms; }
        .reveal-delay-2 { transition-delay: 220ms; }
        .reveal-delay-3 { transition-delay: 320ms; }

        @media (prefers-reduced-motion: reduce) {
            .animate-float,
            .animate-float-delay,
            .animate-blob,
            .animate-pulse-soft,
            .animate-drift {
                animation: none !important;
            }
            .reveal,
            .reveal.is-visible {
                opacity: 1;
                transform: none;
                transition: none;
            }
        }
        
        /* Hide scrollbar for Chrome, Safari and Opera */
        .hide-scrollbar::-webkit-scrollbar {
            display: none;
        }
        /* Hide scrollbar for IE, Edge and Firefox */
        .hide-scrollbar {
            -ms-overflow-style: none;  /* IE and Edge */
            scrollbar-width: none;  /* Firefox */
        }
