/* Animations */
.orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(100px);
    opacity: 0.2;
    animation: float 20s ease-in-out infinite;
    pointer-events: none;
}

.orb-1 {
    width: 500px;
    height: 500px;
    background: var(--accent-primary);
    top: -100px;
    right: -100px;
    animation-delay: 0s;
}

.orb-2 {
    width: 400px;
    height: 400px;
    background: var(--accent-quaternary);
    bottom: -50px;
    left: -50px;
    animation-delay: -7s;
}

.orb-3 {
    width: 350px;
    height: 350px;
    background: var(--accent-tertiary);
    top: 50%;
    left: 60%;
    animation-delay: -14s;
    opacity: 0.1;
}

@keyframes float {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33% { transform: translate(50px, -50px) scale(1.1); }
    66% { transform: translate(-30px, 30px) scale(0.95); }
}

@keyframes pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.6; transform: scale(1.3); }
}

@keyframes phoneFloat {
    0%, 100% { transform: rotateY(-8deg) rotateX(2deg) translateY(0); }
    50% { transform: rotateY(-8deg) rotateX(2deg) translateY(-20px); }
}

@keyframes swipeAnim {
    0%, 70% { transform: translateX(0) rotate(0deg); }
    85% { transform: translateX(150px) rotate(15deg); opacity: 0; }
    86% { transform: translateX(-150px) rotate(-15deg); opacity: 0; }
    100% { transform: translateX(0) rotate(0deg); opacity: 1; }
}

@keyframes marquee {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

.reveal.active {
    opacity: 1;
    transform: translateY(0) translateX(0) scale(1);
}

/* Premium Reveal (Soft Glass Entry) */
@keyframes revealPremium {
    0% {
        transform: translateY(80px) scale(0.95);
        opacity: 0;
        filter: blur(10px);
    }
    100% {
        transform: translateY(0) scale(1);
        opacity: 1;
        filter: blur(0);
    }
}

.reveal-newspaper {
    opacity: 0;
    transition: none; /* Controlled by animation */
}

.reveal-newspaper.active {
    animation: revealPremium 1.4s var(--ease-silk) forwards;
}

/* Elite Hover State (For cards and interactive elements) */
.hover-elite {
    transition: all 0.6s var(--ease-silk);
}

.hover-elite:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-premium);
    border-color: rgba(196, 164, 108, 0.4);
}

/* Reveal Variants */
.reveal-left {
    transform: translateX(-40px);
}

.reveal-right {
    transform: translateX(40px);
}

.reveal-scale {
    transform: scale(0.95);
}

/* Staggered Delay Classes */
.delay-1 { animation-delay: 0.1s !important; transition-delay: 0.1s !important; }
.delay-2 { animation-delay: 0.2s !important; transition-delay: 0.2s !important; }
.delay-3 { animation-delay: 0.3s !important; transition-delay: 0.3s !important; }
.delay-4 { animation-delay: 0.4s !important; transition-delay: 0.4s !important; }
.delay-5 { animation-delay: 0.5s !important; transition-delay: 0.5s !important; }
