/* CSS Custom Properties for dynamic values */
:root {
    --stupid-global-duration: 1.5s; /* Default, overridden by JS */
    --stupid-start-opacity: 0; /* Default, overridden by inline styles */
}

/* ========== SAFE MODE ANIMATIONS ========== */
/* These animations preserve existing transforms and only animate opacity */

/* Safe fade animation - preserves all transforms */
[data-aos='safe-fade']:not(.aos-animate),
.aos-safe-animation:not(.aos-animate) {
    opacity: var(--stupid-start-opacity, 0) !important;
    /* Preserve existing transforms */
    transform: inherit !important;
    writing-mode: inherit !important;
    text-orientation: inherit !important;
}

[data-aos='safe-fade'].aos-animate,
.aos-safe-animation.aos-animate {
    animation: safeFadeIn var(--stupid-global-duration) ease-out forwards !important;
    /* Preserve existing transforms during animation */
    transform: inherit !important;
    writing-mode: inherit !important;
    text-orientation: inherit !important;
}

@keyframes safeFadeIn {
    from {
        opacity: var(--stupid-start-opacity, 0);
    }
    to {
        opacity: 1;
    }
}

/* Ensure safe mode elements preserve their original transforms */
.aos-safe-animation {
    transform-origin: inherit !important;
}

/* Special handling for elements with vertical text */
[data-aos-safe="true"] {
    /* Preserve any existing transforms */
    transform-box: fill-box !important;
    transform-style: preserve-3d !important;
}

/* Override any transform-based animations for safe mode elements */
.aos-safe-animation.aos-animate,
[data-aos='safe-fade'].aos-animate {
    /* Only opacity should animate, not transforms */
    transition: opacity var(--stupid-global-duration) ease-out !important;
    animation-fill-mode: forwards !important;
}

/* Ensure excluded elements are always visible and unchanged */
[data-aos-exclude="true"] {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

/* Let AOS handle opacity for its default animations */
/* Only apply custom opacity to our custom animations */
[data-aos^='crazy-']:not(.aos-animate),
[data-aos^='wacky-']:not(.aos-animate),
[data-aos^='silly-']:not(.aos-animate),
[data-aos^='bouncy-']:not(.aos-animate),
[data-aos^='swirl-']:not(.aos-animate),
[data-aos='slide-crazy']:not(.aos-animate),
[data-aos^='rainbow-']:not(.aos-animate),
[data-aos^='ultra-']:not(.aos-animate),
[data-aos^='psycho-']:not(.aos-animate),
[data-aos^='mega-']:not(.aos-animate),
[data-aos^='hyper-']:not(.aos-animate),
[data-aos^='absurd-']:not(.aos-animate),
[data-aos^='bonkers-']:not(.aos-animate),
[data-aos^='insanity-']:not(.aos-animate),
[data-aos^='seizure-']:not(.aos-animate),
[data-aos^='earthquake-']:not(.aos-animate),
[data-aos^='nuclear-']:not(.aos-animate),
[data-aos^='apocalypse-']:not(.aos-animate),
[data-aos^='reality-']:not(.aos-animate),
[data-aos^='wtf-']:not(.aos-animate),
[data-aos='flip-up']:not(.aos-animate),
[data-aos='flip-down']:not(.aos-animate) {
    opacity: var(--stupid-start-opacity);
    position: relative;
}

/* Allow AOS default animations to work */
[data-aos='fade-up'],
[data-aos='fade-down'],
[data-aos='fade-left'],
[data-aos='fade-right'],
[data-aos='slide-up'],
[data-aos='slide-down'],
[data-aos='zoom-in'],
[data-aos='zoom-out'],
[data-aos='zoom-in-up'],
[data-aos='zoom-in-down'],
[data-aos='flip-left'],
[data-aos='flip-right'],
[data-aos='zoom-in-left'] {
    /* These use AOS built-in animations, don't override */
}

/* Only override opacity for our custom animations */
[data-aos^='crazy-'],
[data-aos^='wacky-'],
[data-aos^='silly-'],
[data-aos^='bouncy-'],
[data-aos^='swirl-'],
[data-aos^='slide-crazy'],
[data-aos^='rainbow-'],
[data-aos^='ultra-'],
[data-aos^='psycho-'],
[data-aos^='mega-'],
[data-aos^='hyper-'],
[data-aos^='absurd-'],
[data-aos^='bonkers-'],
[data-aos^='insanity-'],
[data-aos^='seizure-'],
[data-aos^='earthquake-'],
[data-aos^='nuclear-'],
[data-aos^='apocalypse-'],
[data-aos^='reality-'],
[data-aos^='wtf-'],
[data-aos^='quantum-'],
[data-aos^='matrix-'],
[data-aos^='dimension-'],
[data-aos^='timeline-'],
[data-aos^='spacetime-'],
[data-aos^='copyright-'],
[data-aos^='trademark-'],
[data-aos^='patent-'],
[data-aos^='cease-'],
[data-aos^='class-'],
[data-aos^='insider-'],
[data-aos^='pump-'],
[data-aos^='market-'],
[data-aos^='ponzi-'],
[data-aos^='crypto-'],
[data-aos^='lawsuit-'],
[data-aos^='dmca-'],
[data-aos^='bankruptcy-'],
[data-aos^='ceo-'],
[data-aos^='regulatory-'],
[data-aos='flip-up'],
[data-aos='flip-down'] {
    /* Custom animations that need opacity control */
}

/* When custom animations are ready to animate */
[data-aos].aos-animate {
    /* Let animations control their own opacity */
}

/* ========== Custom 'Stupid' animations ========== */

/* 1) Spin Left/Right */
[data-aos='crazy-spin-left'].aos-animate {
    animation: crazySpinLeft var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes crazySpinLeft { 
    0% { opacity: var(--stupid-start-opacity); transform: rotate(0deg) scale(0.5); } 
    50% { opacity: 1; transform: rotate(-720deg) scale(1.2); } 
    100% { opacity: 1; transform: rotate(0deg) scale(1); } 
}

[data-aos='crazy-spin-right'].aos-animate {
    animation: crazySpinRight var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes crazySpinRight { 
    0% { opacity: var(--stupid-start-opacity); transform: rotate(0deg) scale(0.5); } 
    50% { opacity: 1; transform: rotate(720deg) scale(1.2); } 
    100% { opacity: 1; transform: rotate(0deg) scale(1); } 
}

/* 2) Wacky Shake */
[data-aos='wacky-shake'].aos-animate {
    animation: wackyShake var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes wackyShake { 
    0% { opacity: var(--stupid-start-opacity); transform: translateX(0) scale(0.7); } 
    20% { opacity: 0.8; transform: translateX(-15px) scale(0.9); } 
    40% { opacity: 1; transform: translateX(15px) scale(1.1); } 
    60% { opacity: 1; transform: translateX(-15px) scale(0.95); } 
    80% { opacity: 1; transform: translateX(15px) scale(1.05); } 
    100% { opacity: 1; transform: translateX(0) scale(1); } 
}

/* 3) Silly Tilt */
[data-aos='silly-tilt'].aos-animate {
    animation: sillyTilt var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes sillyTilt { 
    0% { opacity: var(--stupid-start-opacity); transform: rotate(0deg) scale(0.8); } 
    25% { opacity: 0.7; transform: rotate(-15deg) scale(0.9); } 
    50% { opacity: 1; transform: rotate(15deg) scale(1.1); } 
    75% { opacity: 1; transform: rotate(-10deg) scale(0.95); } 
    100% { opacity: 1; transform: rotate(0deg) scale(1); } 
}

/* 4) Flip Up/Down - Note: These are custom, not AOS defaults */
[data-aos='flip-up'].aos-animate {
    animation: flipUp var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes flipUp { 
    0% { opacity: var(--stupid-start-opacity); transform: rotateX(90deg) scale(0.8); } 
    50% { opacity: 0.8; transform: rotateX(-20deg) scale(1.1); } 
    100% { opacity: 1; transform: rotateX(0deg) scale(1); } 
}

[data-aos='flip-down'].aos-animate {
    animation: flipDown var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes flipDown { 0% { opacity: 0; transform: rotateX(-90deg) scale(0.8); } 50% { opacity: 0.8; transform: rotateX(20deg) scale(1.1); } 100% { opacity: 1; transform: rotateX(0deg) scale(1); } }

/* 5) Bouncy Zoom */
[data-aos='bouncy-zoom'].aos-animate {
    animation: bouncyZoom var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes bouncyZoom { 0% { opacity: 0; transform: scale(0.6); } 40% { opacity: 1; transform: scale(1.3); } 70% { opacity: 1; transform: scale(0.8); } 100% { opacity: 1; transform: scale(1); } }

/* 6) Swirl Around */
[data-aos='swirl-around'].aos-animate {
    animation: swirlAround var(--stupid-global-duration) ease forwards;
}
@keyframes swirlAround { 0% { opacity: 0; transform: scale(0.5) rotate(0deg); } 50% { opacity: 1; transform: scale(1.3) rotate(360deg); } 100% { opacity: 1; transform: scale(1) rotate(0deg); } }

/* 7) Slide Crazy */
[data-aos='slide-crazy'].aos-animate {
    animation: slideCrazy var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes slideCrazy { 0% { opacity: 0; transform: translateX(0); } 25% { opacity: 0.7; transform: translateX(-50px); } 50% { opacity: 1; transform: translateX(100px); } 75% { opacity: 1; transform: translateX(-30px); } 100% { opacity: 1; transform: translateX(0); } }

/* ========== Custom 'Effen Stupid' animations ========== */

/* 1) Rainbow Puke - MAXIMUM RAINBOW CHAOS */
[data-aos='rainbow-puke'].aos-animate {
    animation: rainbowPuke var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes rainbowPuke {
    0% { opacity: 0; transform: scale(0.5) rotate(0deg); filter: hue-rotate(0deg) saturate(100%) contrast(1); }
    10% { opacity: 0.8; transform: scale(1.5) rotate(36deg); filter: hue-rotate(180deg) saturate(500%) brightness(1.5) contrast(1.5); }
    20% { opacity: 1; transform: scale(0.7) rotate(-72deg); filter: hue-rotate(360deg) saturate(800%) brightness(1.8) contrast(2); }
    30% { opacity: 1; transform: scale(1.3) rotate(108deg); filter: hue-rotate(540deg) saturate(1000%) brightness(1.3) contrast(1.2); }
    40% { opacity: 1; transform: scale(0.8) rotate(-144deg); filter: hue-rotate(720deg) saturate(700%) brightness(1.6) contrast(1.8); }
    50% { opacity: 1; transform: scale(1.2) rotate(180deg); filter: hue-rotate(900deg) saturate(900%) brightness(1.4) contrast(1.5); }
    60% { opacity: 1; transform: scale(0.9) rotate(-216deg); filter: hue-rotate(1080deg) saturate(600%) brightness(1.7) contrast(1.3); }
    70% { opacity: 1; transform: scale(1.1) rotate(252deg); filter: hue-rotate(1260deg) saturate(800%) brightness(1.2) contrast(1.6); }
    80% { opacity: 1; transform: scale(0.95) rotate(-288deg); filter: hue-rotate(1440deg) saturate(500%) brightness(1.5) contrast(1.4); }
    90% { opacity: 1; transform: scale(1.05) rotate(324deg); filter: hue-rotate(1620deg) saturate(300%) brightness(1.3) contrast(1.2); }
    100% { opacity: 1; transform: scale(1) rotate(0deg); filter: none; }
}

/* 2) Seizure Mode */
[data-aos='seizure-mode'].aos-animate {
    animation: seizureMode var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes seizureMode {
    0% { opacity: 0.1; transform: scale(0.3) rotate(0deg); }
    10% { opacity: 0.2; transform: scale(1.2) rotate(10deg); }
    20% { opacity: 1; transform: scale(0.8) rotate(-10deg); }
    30% { opacity: 0.5; transform: scale(1.1) rotate(5deg); }
    40% { opacity: 1; transform: scale(0.9) rotate(-5deg); }
    50% { opacity: 0.3; transform: scale(1.15) rotate(8deg); }
    60% { opacity: 1; transform: scale(0.85) rotate(-8deg); }
    70% { opacity: 0.6; transform: scale(1.05) rotate(3deg); }
    80% { opacity: 1; transform: scale(0.95) rotate(-3deg); }
    90% { opacity: 0.8; transform: scale(1.02) rotate(1deg); }
    100% { opacity: 1; transform: scale(1) rotate(0deg); }
}

/* 3) Psycho Wiggle */
[data-aos='psycho-wiggle'].aos-animate {
    animation: psychoWiggle var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes psychoWiggle {
    0% { opacity: 0; transform: translateX(-50px) rotate(-10deg) scale(0.5); }
    10% { opacity: 0.5; transform: translateX(-20px) rotate(-5deg) scale(0.8); }
    20% { opacity: 1; transform: translateX(20px) rotate(5deg) scale(1.2); }
    30% { opacity: 1; transform: translateX(-15px) rotate(-3deg) translateY(-10px) scale(0.9); }
    40% { opacity: 1; transform: translateX(15px) rotate(3deg) translateY(10px) scale(1.1); }
    50% { opacity: 1; transform: translateX(-25px) rotate(-6deg) translateY(-5px) scale(0.95); }
    60% { opacity: 1; transform: translateX(25px) rotate(6deg) translateY(5px) scale(1.05); }
    70% { opacity: 1; transform: translateX(-10px) rotate(-2deg) translateY(-8px) scale(0.98); }
    80% { opacity: 1; transform: translateX(10px) rotate(2deg) translateY(8px) scale(1.02); }
    90% { opacity: 1; transform: translateX(-5px) rotate(-1deg) scale(0.99); }
    100% { opacity: 1; transform: translateX(0) rotate(0deg) scale(1); }
}

/* 4) WTF Rotation */
[data-aos='wtf-rotation'].aos-animate {
    animation: wtfRotation var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes wtfRotation {
    0% { opacity: 0; transform: rotate(-180deg) scale(0.3); }
    25% { opacity: 0.7; transform: rotate(90deg) scale(1.2); }
    50% { opacity: 1; transform: rotate(180deg) scale(0.8); }
    75% { opacity: 1; transform: rotate(270deg) scale(1.1); }
    100% { opacity: 1; transform: rotate(0deg) scale(1); }
}

/* 5) Mega Bounce */
[data-aos='mega-bounce'].aos-animate {
    animation: megaBounce var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes megaBounce {
    0% { opacity: 0; transform: translateY(100px) scale(0.2); }
    10% { opacity: 0.8; transform: translateY(-50px) scale(1.1, 0.9); }
    20% { opacity: 1; transform: translateY(0) scale(0.9, 1.1); }
    30% { opacity: 1; transform: translateY(-30px) scale(1.05, 0.95); }
    40% { opacity: 1; transform: translateY(0) scale(0.95, 1.05); }
    50% { opacity: 1; transform: translateY(-40px) scale(1.08, 0.92); }
    60% { opacity: 1; transform: translateY(0) scale(0.92, 1.08); }
    70% { opacity: 1; transform: translateY(-20px) scale(1.03, 0.97); }
    80% { opacity: 1; transform: translateY(0) scale(0.97, 1.03); }
    90% { opacity: 1; transform: translateY(-10px) scale(1.01, 0.99); }
    100% { opacity: 1; transform: translateY(0) scale(1); }
}

/* 6) Hyper Glitch */
[data-aos='hyper-glitch'].aos-animate {
    animation: hyperGlitch var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes hyperGlitch {
    0% { opacity: 0; transform: skew(20deg) scale(0.5); filter: blur(5px); }
    10% { opacity: 0.5; transform: skew(5deg) translateX(-10px) scale(0.8); filter: blur(2px); }
    20% { opacity: 1; transform: skew(-5deg) translateX(10px) scale(1.2); filter: blur(0); }
    30% { opacity: 0.8; transform: skew(3deg) translateY(-5px) scale(0.9); filter: blur(1px); }
    40% { opacity: 1; transform: skew(-3deg) translateY(5px) scale(1.1); filter: blur(0); }
    50% { opacity: 0.9; transform: skew(7deg) translateX(-15px) scale(0.95); filter: blur(3px); }
    60% { opacity: 1; transform: skew(-7deg) translateX(15px) scale(1.05); filter: blur(0); }
    70% { opacity: 1; transform: skew(2deg) translateY(-3px) scale(0.98); filter: blur(0.5px); }
    80% { opacity: 1; transform: skew(-2deg) translateY(3px) scale(1.02); filter: blur(0); }
    90% { opacity: 1; transform: skew(1deg) scale(0.99); filter: blur(0); }
    100% { opacity: 1; transform: skew(0deg) scale(1); filter: blur(0); }
}

/* 7) Absurd Wobble */
[data-aos='absurd-wobble'].aos-animate {
    animation: absurdWobble var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes absurdWobble {
    0% { opacity: 0; transform: rotate(-30deg) translateX(-40px) scale(0.4); }
    15% { opacity: 0.6; transform: rotate(-15deg) translateX(-20px) scale(0.7); }
    30% { opacity: 1; transform: rotate(15deg) translateX(20px) scale(1.2); }
    45% { opacity: 1; transform: rotate(-10deg) translateX(-15px) translateY(-10px) scale(0.9); }
    60% { opacity: 1; transform: rotate(10deg) translateX(15px) translateY(10px) scale(1.1); }
    75% { opacity: 1; transform: rotate(-5deg) translateX(-10px) translateY(-5px) scale(0.95); }
    90% { opacity: 1; transform: rotate(5deg) translateX(10px) translateY(5px) scale(1.05); }
    100% { opacity: 1; transform: rotate(0deg) translateX(0) scale(1); }
}

/* 8) Bonkers Entrance */
[data-aos='bonkers-entrance'].aos-animate {
    animation: bonkersEntrance var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes bonkersEntrance {
    0% { transform: scale(0) rotate(720deg); opacity: 0; }
    25% { transform: scale(1.5) rotate(540deg); opacity: 0.5; }
    50% { transform: scale(0.5) rotate(360deg); opacity: 1; }
    75% { transform: scale(1.2) rotate(180deg); opacity: 0.8; }
    100% { transform: scale(1) rotate(0deg); opacity: 1; }
}

/* 9) Ultra Rainbow - PSYCHEDELIC OVERLOAD */
[data-aos='ultra-rainbow'].aos-animate {
    animation: ultraRainbow var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes ultraRainbow {
    0% { opacity: 0; transform: scale(0.3) rotate(-45deg) skewX(20deg); filter: hue-rotate(0deg) brightness(0.5) contrast(0.5) blur(5px); }
    5% { opacity: 0.5; transform: scale(2) rotate(-360deg) skewX(-20deg); filter: hue-rotate(360deg) brightness(2) contrast(2) blur(0); box-shadow: 0 0 50px rgba(255,0,0,0.8); }
    10% { opacity: 0.7; transform: scale(0.6) rotate(-30deg) skewY(10deg); filter: hue-rotate(720deg) brightness(1.2) contrast(1.1) saturate(500%); box-shadow: 0 0 50px rgba(255,165,0,0.8); }
    20% { opacity: 1; transform: scale(1.2) rotate(-15deg) skewX(-10deg); filter: hue-rotate(1080deg) brightness(0.8) contrast(1.2) saturate(800%); box-shadow: 0 0 50px rgba(255,255,0,0.8); }
    30% { opacity: 1; transform: scale(0.8) rotate(0deg) skewY(-15deg); filter: hue-rotate(1440deg) brightness(1.3) contrast(0.9) saturate(1000%); box-shadow: 0 0 50px rgba(0,255,0,0.8); }
    40% { opacity: 1; transform: scale(1.1) rotate(15deg) skewX(15deg); filter: hue-rotate(1800deg) brightness(0.7) contrast(1.3) saturate(700%); box-shadow: 0 0 50px rgba(0,0,255,0.8); }
    50% { opacity: 1; transform: scale(0.9) rotate(30deg) skewY(20deg); filter: hue-rotate(2160deg) brightness(1.4) contrast(0.8) saturate(900%); box-shadow: 0 0 50px rgba(75,0,130,0.8); }
    60% { opacity: 1; transform: scale(1.05) rotate(15deg) skewX(-20deg); filter: hue-rotate(2520deg) brightness(0.6) contrast(1.4) saturate(600%); box-shadow: 0 0 50px rgba(238,130,238,0.8); }
    70% { opacity: 1; transform: scale(0.95) rotate(0deg) skewY(-10deg); filter: hue-rotate(2880deg) brightness(1.1) contrast(1.1) saturate(800%); box-shadow: 0 0 30px rgba(255,0,0,0.5); }
    80% { opacity: 1; transform: scale(1.02) rotate(-15deg) skewX(10deg); filter: hue-rotate(3240deg) brightness(0.9) contrast(1.2) saturate(500%); box-shadow: 0 0 20px rgba(255,255,0,0.3); }
    90% { opacity: 1; transform: scale(0.98) rotate(-5deg) skewY(5deg); filter: hue-rotate(3600deg) brightness(1.2) contrast(0.9) saturate(300%); box-shadow: 0 0 10px rgba(0,255,0,0.2); }
    100% { opacity: 1; transform: scale(1) rotate(0deg) skew(0); filter: none; box-shadow: none; }
}

/* 10) Insanity Mode */
[data-aos='insanity-mode'].aos-animate {
    animation: insanityMode var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes insanityMode {
    0% { opacity: 0; transform: scale(0.1) rotate(-360deg) translateX(-100px) translateY(-100px); filter: blur(10px) hue-rotate(0deg); }
    10% { opacity: 0.7; transform: scale(1.2) rotate(36deg) translateX(-20px) translateY(10px); filter: blur(2px) hue-rotate(36deg); }
    20% { opacity: 1; transform: scale(0.8) rotate(-72deg) translateX(20px) translateY(-10px); filter: blur(0) hue-rotate(72deg); }
    30% { opacity: 0.9; transform: scale(1.1) rotate(108deg) translateX(-15px) translateY(15px); filter: blur(1px) hue-rotate(108deg); }
    40% { opacity: 1; transform: scale(0.9) rotate(-144deg) translateX(15px) translateY(-15px); filter: blur(0) hue-rotate(144deg); }
    50% { opacity: 0.8; transform: scale(1.3) rotate(180deg) translateX(-25px) translateY(20px); filter: blur(3px) hue-rotate(180deg); }
    60% { opacity: 1; transform: scale(0.7) rotate(-216deg) translateX(25px) translateY(-20px); filter: blur(0) hue-rotate(216deg); }
    70% { opacity: 1; transform: scale(1.05) rotate(252deg) translateX(-10px) translateY(5px); filter: blur(0.5px) hue-rotate(252deg); }
    80% { opacity: 1; transform: scale(0.95) rotate(-288deg) translateX(10px) translateY(-5px); filter: blur(0) hue-rotate(288deg); }
    90% { opacity: 1; transform: scale(1.02) rotate(324deg) translateX(-5px) translateY(2px); filter: blur(0) hue-rotate(324deg); }
    100% { opacity: 1; transform: scale(1) rotate(0deg) translateX(0) translateY(0); filter: none; }
}

/* ========== New Level 7-10 Animations ========== */

/* Level 7: What The F*ck Mode */
[data-aos='quantum-glitch'].aos-animate {
    animation: quantumGlitch var(--stupid-global-duration) linear forwards;
}
@keyframes quantumGlitch {
    0% { transform: scale(0.1) skew(45deg); opacity: 0; }
    10%, 30%, 50%, 70%, 90% { transform: scale(1.1) skew(10deg); opacity: 0; }
    20%, 40%, 60%, 80% { transform: scale(0.9) skew(-10deg); opacity: 1; }
    100% { transform: scale(1) skew(0deg); opacity: 1; }
}

[data-aos='reality-break'].aos-animate {
    animation: realityBreak var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes realityBreak {
    0% { opacity: 0; transform: rotateY(-180deg) rotateX(-180deg) scale(0.2); }
    25% { opacity: 0.5; transform: rotateY(180deg) rotateX(180deg) scale(0.5); }
    50% { opacity: 1; transform: rotateY(360deg) rotateX(360deg) scale(1.5); }
    75% { opacity: 1; transform: rotateY(540deg) rotateX(540deg) scale(0.75); }
    100% { opacity: 1; transform: rotateY(0deg) rotateX(0deg) scale(1); }
}

[data-aos='matrix-fail'].aos-animate {
    animation: matrixFail var(--stupid-global-duration) steps(10) forwards;
}
@keyframes matrixFail {
    0% { opacity: 0; transform: translateY(100vh) scale(0.1); filter: brightness(0); }
    50% { opacity: 0.5; transform: translateY(-100vh) scale(2); filter: brightness(0) sepia(1) hue-rotate(90deg); }
    100% { opacity: 1; transform: translateY(0) scale(1); filter: brightness(1); }
}

[data-aos='dimension-hop'].aos-animate {
    animation: dimensionHop var(--stupid-global-duration) cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
}
@keyframes dimensionHop {
    0% { transform: translateZ(0) rotateZ(0deg); opacity: 1; }
    25% { transform: translateZ(-500px) rotateZ(90deg); opacity: 0.5; }
    50% { transform: translateZ(500px) rotateZ(180deg); opacity: 0.2; }
    75% { transform: translateZ(-250px) rotateZ(270deg); opacity: 0.7; }
    100% { transform: translateZ(0) rotateZ(0deg); opacity: 1; }
}

[data-aos='timeline-fracture'].aos-animate {
    animation: timelineFracture var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes timelineFracture {
    0%, 20%, 40%, 60%, 80%, 100% { transform: translateX(0); }
    10% { transform: translateX(-100px); }
    30% { transform: translateX(100px); }
    50% { transform: translateX(-50px); }
    70% { transform: translateX(50px); }
    90% { transform: translateX(-25px); }
}

[data-aos='spacetime-rupture'].aos-animate {
    animation: spacetimeRupture var(--stupid-global-duration) linear forwards;
}
@keyframes spacetimeRupture {
    0% { transform: scale(1) rotate(0deg); filter: blur(0); }
    25% { transform: scale(0.5) rotate(180deg); filter: blur(5px); }
    50% { transform: scale(2) rotate(360deg); filter: blur(10px); }
    75% { transform: scale(0.75) rotate(540deg); filter: blur(5px); }
    100% { transform: scale(1) rotate(0deg); filter: blur(0); }
}

/* Level 8: Call a Lawyer */
[data-aos='copyright-infringement'].aos-animate {
    animation: copyrightInfringement var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes copyrightInfringement {
    0% { opacity: 0; transform: skewX(45deg) scale(0.3); filter: blur(10px); }
    25% { opacity: 0.7; transform: skewX(20deg) scale(0.7); filter: blur(2px) contrast(0.5); }
    50% { opacity: 1; transform: skewX(-20deg) scale(1.2); filter: blur(4px) contrast(0.3); }
    75% { opacity: 1; transform: skewX(10deg) scale(0.9); filter: blur(2px) contrast(0.7); }
    100% { opacity: 1; transform: skewX(0deg) scale(1); filter: blur(0); }
}

[data-aos='trademark-violation'].aos-animate {
    animation: trademarkViolation var(--stupid-global-duration) steps(5) forwards;
}
@keyframes trademarkViolation {
    0% { transform: scale(1); filter: invert(0); }
    20% { transform: scale(0.9); filter: invert(1); }
    40% { transform: scale(1.1); filter: invert(0); }
    60% { transform: scale(0.8); filter: invert(1); }
    80% { transform: scale(1.2); filter: invert(0); }
    100% { transform: scale(1); filter: invert(0); }
}

[data-aos='patent-pending'].aos-animate {
    animation: patentPending var(--stupid-global-duration) cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}
@keyframes patentPending {
    0% { transform: rotate(0deg) scale(1); opacity: 1; }
    50% { transform: rotate(180deg) scale(0.5); opacity: 0.3; }
    100% { transform: rotate(0deg) scale(1); opacity: 1; }
}

[data-aos='cease-desist'].aos-animate {
    animation: ceaseDesist var(--stupid-global-duration) ease-out forwards;
}
@keyframes ceaseDesist {
    0% { transform: translateY(-100vh) rotate(0deg); }
    50% { transform: translateY(0) rotate(180deg); }
    75% { transform: translateY(-20px) rotate(270deg); }
    100% { transform: translateY(0) rotate(0deg); }
}

[data-aos='class-action'].aos-animate {
    animation: classAction var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes classAction {
    0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
        transform: translate(0, 0);
    }
    5% { transform: translate(-10px, -10px); }
    15% { transform: translate(10px, 10px); }
    25% { transform: translate(-10px, 10px); }
    35% { transform: translate(10px, -10px); }
    45% { transform: translate(-5px, -5px); }
    55% { transform: translate(5px, 5px); }
    65% { transform: translate(-5px, 5px); }
    75% { transform: translate(5px, -5px); }
    85% { transform: translate(-2px, -2px); }
    95% { transform: translate(2px, 2px); }
    100% { transform: translate(0, 0); }
}

/* Level 9: SEC Investigation */
[data-aos='insider-trading'].aos-animate {
    animation: insiderTrading var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes insiderTrading {
    0% { transform: translateX(-100vw) scale(0.1); opacity: 0; }
    10% { transform: translateX(0) scale(1); opacity: 1; }
    90% { transform: translateX(0) scale(1); opacity: 1; }
    95% { transform: translateX(50px) scale(0.8); opacity: 0.8; }
    100% { transform: translateX(0) scale(1); opacity: 1; }
}

[data-aos='pump-dump'].aos-animate {
    animation: pumpDump var(--stupid-global-duration) cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}
@keyframes pumpDump {
    0% { transform: scale(0.1) translateY(100px); opacity: 0; }
    50% { transform: scale(3) translateY(-100px); opacity: 1; }
    75% { transform: scale(0.5) translateY(50px); opacity: 1; }
    100% { transform: scale(1) translateY(0); opacity: 1; }
}

[data-aos='market-manipulation'].aos-animate {
    animation: marketManipulation var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes marketManipulation {
    0%, 100% { transform: scaleY(1); }
    25% { transform: scaleY(2); }
    50% { transform: scaleY(0.5); }
    75% { transform: scaleY(1.5); }
}

[data-aos='ponzi-scheme'].aos-animate {
    animation: ponziScheme var(--stupid-global-duration) linear forwards;
}
@keyframes ponziScheme {
    0% { transform: scale(0.1) rotate(0deg); }
    100% { transform: scale(1) rotate(0deg); }
}

[data-aos='crypto-rugpull'].aos-animate {
    animation: cryptoRugpull var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes cryptoRugpull {
    0% { transform: scale(1) translateY(-100vh); opacity: 0; }
    10% { transform: scale(1) translateY(0); opacity: 1; }
    80% { transform: scale(1) translateY(0); opacity: 1; }
    90% { transform: scale(0.1) translateY(100px); opacity: 0.5; }
    100% { transform: scale(1) translateY(0); opacity: 1; }
}

/* Level 10: Litigation Mode */
[data-aos='lawsuit-pending'].aos-animate {
    animation: lawsuitPending var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes lawsuitPending {
    0% { transform: rotate(-90deg) scale(0.2); filter: grayscale(1) blur(10px); }
    50% { transform: rotate(180deg) scale(0.5); filter: grayscale(1) blur(5px); }
    100% { transform: rotate(0deg) scale(1); filter: grayscale(0); }
}

[data-aos='dmca-takedown'].aos-animate {
    animation: dmcaTakedown var(--stupid-global-duration) steps(10) forwards;
}
@keyframes dmcaTakedown {
    0% { opacity: 1; }
    50% { opacity: 0; }
    100% { opacity: 1; filter: pixelate(10); }
}

[data-aos='bankruptcy-spiral'].aos-animate {
    animation: bankruptcySpiral var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes bankruptcySpiral {
    0% { transform: rotate(0deg) scale(0.1); opacity: 0; }
    50% { transform: rotate(720deg) scale(0.5) translateY(100px); opacity: 0.8; filter: grayscale(1) brightness(0.3) blur(5px); }
    80% { transform: rotate(1080deg) scale(1.2); opacity: 1; filter: grayscale(0.5) brightness(0.7) blur(2px); }
    100% { transform: rotate(0deg) scale(1) translateY(0); opacity: 1; filter: grayscale(0) brightness(1) blur(0); }
}

[data-aos='ceo-meltdown'].aos-animate {
    animation: ceoMeltdown var(--stupid-global-duration) linear forwards;
}
@keyframes ceoMeltdown {
    0% { opacity: 0; transform: scale(0.5); }
    10%, 20%, 30%, 40%, 50%, 60%, 70%, 80% { 
        opacity: 1;
        transform: translateX(-2px) translateY(-2px) rotate(0.5deg) scale(1); 
    }
    5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85% { 
        opacity: 1;
        transform: translateX(2px) translateY(2px) rotate(-0.5deg) scale(1); 
    }
    90% {
        opacity: 1;
        transform: translateX(0) translateY(25px) rotate(90deg) scale(0.8); 
        filter: hue-rotate(180deg) contrast(2) brightness(0.5);
    }
    100% { 
        opacity: 1;
        transform: translateX(0) translateY(0) rotate(0deg) scale(1); 
        filter: hue-rotate(360deg) contrast(1) brightness(1);
    }
}

[data-aos='regulatory-nightmare'].aos-animate {
    animation: regulatoryNightmare var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes regulatoryNightmare {
    0% { transform: scale(0.1) rotate(-180deg); opacity: 0; filter: grayscale(1) blur(10px) brightness(0); }
    50% { transform: scale(1.5) rotate(90deg); opacity: 0.8; filter: grayscale(0.5) blur(5px) brightness(0.5); }
    80% { transform: scale(0.8) rotate(180deg); opacity: 1; filter: grayscale(0.2) blur(2px) brightness(0.8); }
    100% { transform: scale(1) rotate(0deg); opacity: 1; filter: grayscale(0) blur(0) brightness(1); }
}

/* ========== LEVEL 10 MAXIMUM CHAOS ANIMATIONS ========== */

/* Earthquake Shake - The ground is literally shaking */
[data-aos='earthquake-chaos'].aos-animate {
    animation: earthquakeChaos var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes earthquakeChaos {
    0% { transform: translate(0, 0) rotate(0deg) scale(0.5); opacity: 0; filter: hue-rotate(0deg); }
    5% { transform: translate(-30px, 20px) rotate(5deg) scale(1.2); opacity: 1; filter: hue-rotate(180deg) brightness(2); }
    10% { transform: translate(25px, -30px) rotate(-5deg) scale(0.8); filter: hue-rotate(360deg) contrast(3); }
    15% { transform: translate(-20px, 25px) rotate(8deg) scale(1.3); filter: hue-rotate(540deg) saturate(5); }
    20% { transform: translate(30px, -20px) rotate(-8deg) scale(0.9); filter: hue-rotate(720deg) brightness(3); }
    25% { transform: translate(-35px, 30px) rotate(10deg) scale(1.1); filter: hue-rotate(900deg) contrast(2); }
    30% { transform: translate(20px, -35px) rotate(-10deg) scale(0.7); filter: hue-rotate(1080deg) saturate(8); }
    35% { transform: translate(-25px, 20px) rotate(7deg) scale(1.4); filter: hue-rotate(1260deg) brightness(2); }
    40% { transform: translate(35px, -25px) rotate(-7deg) scale(0.85); filter: hue-rotate(1440deg) contrast(4); }
    45% { transform: translate(-30px, 35px) rotate(12deg) scale(1.2); filter: hue-rotate(1620deg) saturate(6); }
    50% { transform: translate(25px, -30px) rotate(-12deg) scale(0.95); filter: hue-rotate(1800deg) brightness(1.5); }
    55% { transform: translate(-20px, 25px) rotate(6deg) scale(1.15); filter: hue-rotate(1980deg) contrast(1.5); }
    60% { transform: translate(30px, -20px) rotate(-6deg) scale(0.9); filter: hue-rotate(2160deg) saturate(4); }
    65% { transform: translate(-15px, 30px) rotate(9deg) scale(1.25); filter: hue-rotate(2340deg) brightness(1.3); }
    70% { transform: translate(20px, -15px) rotate(-9deg) scale(0.8); filter: hue-rotate(2520deg) contrast(1.2); }
    75% { transform: translate(-25px, 20px) rotate(4deg) scale(1.1); filter: hue-rotate(2700deg) saturate(2); }
    80% { transform: translate(15px, -25px) rotate(-4deg) scale(0.95); filter: hue-rotate(2880deg) brightness(1.1); }
    85% { transform: translate(-10px, 15px) rotate(3deg) scale(1.05); filter: hue-rotate(3060deg) contrast(1.1); }
    90% { transform: translate(10px, -10px) rotate(-3deg) scale(0.98); filter: hue-rotate(3240deg) saturate(1.5); }
    95% { transform: translate(-5px, 5px) rotate(1deg) scale(1.02); filter: hue-rotate(3420deg) brightness(1); }
    100% { transform: translate(0, 0) rotate(0deg) scale(1); opacity: 1; filter: none; }
}

/* Rainbow Flash for earthquake - removed as it persists */

/* Seizure Rainbow Strobe */
[data-aos='seizure-rainbow-strobe'].aos-animate {
    animation: seizureRainbowStrobe var(--stupid-global-duration) linear forwards;
}
@keyframes seizureRainbowStrobe {
    0% { opacity: 0; transform: scale(0.1); background: #ff0000; }
    5% { opacity: 1; transform: scale(2) rotate(45deg); background: #ff8800; box-shadow: 0 0 100px #ff8800; }
    10% { opacity: 0.2; transform: scale(0.5) rotate(-90deg); background: #ffff00; box-shadow: 0 0 100px #ffff00; }
    15% { opacity: 1; transform: scale(1.5) rotate(135deg); background: #00ff00; box-shadow: 0 0 100px #00ff00; }
    20% { opacity: 0.3; transform: scale(0.8) rotate(-180deg); background: #00ffff; box-shadow: 0 0 100px #00ffff; }
    25% { opacity: 1; transform: scale(1.2) rotate(225deg); background: #0088ff; box-shadow: 0 0 100px #0088ff; }
    30% { opacity: 0.1; transform: scale(0.6) rotate(-270deg); background: #8800ff; box-shadow: 0 0 100px #8800ff; }
    35% { opacity: 1; transform: scale(1.8) rotate(315deg); background: #ff00ff; box-shadow: 0 0 100px #ff00ff; }
    40% { opacity: 0.5; transform: scale(0.4) rotate(-360deg); background: #ff0088; box-shadow: 0 0 100px #ff0088; }
    45% { opacity: 1; transform: scale(1.6) rotate(405deg); background: #88ff00; box-shadow: 0 0 100px #88ff00; }
    50% { opacity: 0.2; transform: scale(0.7) rotate(-450deg); background: #00ff88; box-shadow: 0 0 100px #00ff88; }
    55% { opacity: 1; transform: scale(1.3) rotate(495deg); background: #ff8800; box-shadow: 0 0 100px #ff8800; }
    60% { opacity: 0.4; transform: scale(0.9) rotate(-540deg); background: #8800ff; box-shadow: 0 0 100px #8800ff; }
    65% { opacity: 1; transform: scale(1.1) rotate(585deg); background: #ff0000; box-shadow: 0 0 100px #ff0000; }
    70% { opacity: 0.6; transform: scale(0.5) rotate(-630deg); background: #00ff00; box-shadow: 0 0 100px #00ff00; }
    75% { opacity: 1; transform: scale(1.4) rotate(675deg); background: #ffff00; box-shadow: 0 0 100px #ffff00; }
    80% { opacity: 0.3; transform: scale(0.8) rotate(-720deg); background: #ff00ff; box-shadow: 0 0 100px #ff00ff; }
    85% { opacity: 1; transform: scale(1.2) rotate(765deg); background: #00ffff; box-shadow: 0 0 50px #00ffff; }
    90% { opacity: 0.9; transform: scale(0.9) rotate(-810deg); background: transparent; box-shadow: 0 0 20px rgba(255,255,255,0.5); }
    95% { opacity: 1; transform: scale(1.05) rotate(855deg); background: transparent; box-shadow: none; }
    100% { opacity: 1; transform: scale(1) rotate(0deg); background: transparent; box-shadow: none; }
}

/* Nuclear Rainbow Explosion */
[data-aos='nuclear-rainbow'].aos-animate {
    animation: nuclearRainbow var(--stupid-global-duration) ease-out forwards;
}
@keyframes nuclearRainbow {
    0% { 
        transform: scale(0.01) rotate(0deg); 
        opacity: 0;
        box-shadow: 0 0 0 rgba(255,0,0,0);
    }
    20% { 
        transform: scale(3) rotate(720deg); 
        opacity: 1;
        box-shadow: 0 0 200px #ff0000, 0 0 400px #ff8800, 0 0 600px #ffff00;
    }
    40% { 
        transform: scale(0.5) rotate(1440deg); 
        box-shadow: 0 0 200px #00ff00, 0 0 400px #00ffff, 0 0 600px #0088ff;
    }
    60% { 
        transform: scale(2) rotate(2160deg); 
        box-shadow: 0 0 200px #8800ff, 0 0 400px #ff00ff, 0 0 600px #ff0088;
    }
    80% { 
        transform: scale(0.8) rotate(2880deg); 
        box-shadow: 0 0 100px #ffffff, 0 0 200px #000000, 0 0 300px #ffffff;
    }
    100% { 
        transform: scale(1) rotate(0deg); 
        opacity: 1;
        box-shadow: none;
        filter: none;
    }
}

/* Apocalypse Mode - Everything is ending */
[data-aos='apocalypse-mode'].aos-animate {
    animation: apocalypseMode var(--stupid-global-duration) ease-in-out forwards;
}
@keyframes apocalypseMode {
    0% { 
        transform: scale(10) rotate(-1800deg) translateY(-200vh); 
        opacity: 0;
        filter: blur(50px) hue-rotate(0deg);
    }
    10% { 
        transform: scale(0.1) rotate(-1440deg) translateY(100vh); 
        opacity: 1;
        filter: blur(0) hue-rotate(360deg) brightness(5);
    }
    20% { 
        transform: scale(5) rotate(-1080deg) translateX(-100vw); 
        filter: blur(20px) hue-rotate(720deg) contrast(5);
    }
    30% { 
        transform: scale(0.5) rotate(-720deg) translateX(100vw); 
        filter: blur(0) hue-rotate(1080deg) saturate(1000%);
    }
    40% { 
        transform: scale(3) rotate(-360deg) translateY(-50vh); 
        filter: blur(10px) hue-rotate(1440deg) brightness(0.1);
    }
    50% { 
        transform: scale(0.2) rotate(0deg) translateY(50vh); 
        filter: blur(0) hue-rotate(1800deg) brightness(10);
    }
    60% { 
        transform: scale(2) rotate(360deg) translateX(-50vw); 
        filter: blur(5px) hue-rotate(2160deg) invert(1);
    }
    70% { 
        transform: scale(0.8) rotate(720deg) translateX(50vw); 
        filter: blur(0) hue-rotate(2520deg) invert(0);
    }
    80% { 
        transform: scale(1.5) rotate(1080deg) skewX(45deg); 
        filter: blur(3px) hue-rotate(2880deg) contrast(0.5);
    }
    90% { 
        transform: scale(0.9) rotate(1440deg) skewX(-45deg); 
        filter: blur(1px) hue-rotate(3240deg) contrast(1.5);
    }
    100% { 
        transform: scale(1) rotate(0deg) skew(0) translateX(0) translateY(0); 
        opacity: 1;
        filter: none;
        background: transparent;
    }
}

/* Reality Glitch Matrix */
[data-aos='reality-glitch-matrix'].aos-animate {
    animation: realityGlitchMatrix var(--stupid-global-duration) steps(20) forwards;
}
@keyframes realityGlitchMatrix {
    0% { 
        transform: matrix(0.1, 0.5, -0.5, 0.1, -100, -100); 
        opacity: 0;
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
    10% { 
        transform: matrix(2, 0.3, -0.3, 2, 50, -50); 
        opacity: 0.5;
        clip-path: polygon(20% 0, 80% 0, 100% 100%, 0 100%);
    }
    20% { 
        transform: matrix(0.5, -0.8, 0.8, 0.5, -30, 30); 
        opacity: 1;
        clip-path: polygon(0 20%, 100% 0, 80% 100%, 20% 80%);
    }
    30% { 
        transform: matrix(1.5, 0.2, -0.2, 1.5, 0, 0); 
        clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
    }
    40% { 
        transform: matrix(0.8, -0.6, 0.6, 0.8, 40, -40); 
        clip-path: polygon(25% 0, 75% 0, 100% 100%, 0 100%);
    }
    50% { 
        transform: matrix(1.2, 0.4, -0.4, 1.2, -20, 20); 
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
    60% { 
        transform: matrix(0.9, -0.3, 0.3, 0.9, 30, -30); 
        clip-path: polygon(10% 10%, 90% 10%, 90% 90%, 10% 90%);
    }
    70% { 
        transform: matrix(1.1, 0.1, -0.1, 1.1, -10, 10); 
        clip-path: polygon(0 30%, 100% 0, 70% 100%, 30% 70%);
    }
    80% { 
        transform: matrix(0.95, -0.05, 0.05, 0.95, 5, -5); 
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
    90% { 
        transform: matrix(1.02, 0.02, -0.02, 1.02, -2, 2); 
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
    100% { 
        transform: matrix(1, 0, 0, 1, 0, 0); 
        opacity: 1;
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
}
/* Removed infinite matrixRainbow keyframes */

/* CRITICAL: Force all animations to end at full visibility */
[data-aos].aos-animate {
    animation-fill-mode: forwards !important;
}

/* Ensure elements are ALWAYS visible and normal after animation completes */
[data-aos].aos-animate {
    /* After animation, force normal state */
    animation-fill-mode: forwards !important;
}

/* CRITICAL: Remove ALL effects after animation completes */
[data-aos].aos-animate:not(:animating) {
    filter: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    background: initial !important;
    border-color: initial !important;
}

/* Extra safety - force visibility after animations */
@keyframes ensureVisible {
    to {
        opacity: 1 !important;
        transform: translate(0,0) scale(1) rotate(0deg) rotateX(0deg) rotateY(0deg) skew(0) !important;
        filter: none !important;
        background: transparent !important;
        clip-path: none !important;
        box-shadow: none !important;
    }
}

/* Apply to any element that might be broken */
[data-aos].aos-animate {
    animation-name: inherit, ensureVisible !important;
    animation-duration: inherit, 0.1s !important;
    animation-delay: inherit, var(--stupid-global-duration) !important;
}

/* Force all animations to complete at normal state */
[data-aos] {
    animation-fill-mode: both !important;
}

/* Ensure animated elements stay visible after animation */
[data-aos].aos-animate {
    animation-fill-mode: forwards !important;
}

/* Fix for elements that might get stuck */
[data-aos]:not(.aos-animate) {
    transition: opacity 0.3s ease-in-out;
}

/* Remove debug helper that was blocking AOS */

/* Fallback only for elements that really aren't animating */
@keyframes aosFallback {
    to {
        opacity: 1;
    }
}

/* Only apply fallback to stuck elements */
[data-aos]:not(.aos-animate):not(.aos-init) {
    animation: aosFallback 0.5s ease-in-out 5s forwards;
}

/* Accessibility mode for reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    [data-aos] {
        animation: none !important;
        transition: none !important;
        opacity: 1 !important;
    }
}/* CRITICAL FIX: Force AOS animations to work */
[data-aos][data-aos][data-aos="fade-up"].aos-animate,
[data-aos][data-aos][data-aos="fade-down"].aos-animate,
[data-aos][data-aos][data-aos="fade-left"].aos-animate,
[data-aos][data-aos][data-aos="fade-right"].aos-animate,
[data-aos][data-aos][data-aos="fade-up-right"].aos-animate,
[data-aos][data-aos][data-aos="fade-up-left"].aos-animate,
[data-aos][data-aos][data-aos="fade-down-right"].aos-animate,
[data-aos][data-aos][data-aos="fade-down-left"].aos-animate,
[data-aos][data-aos][data-aos="zoom-in"].aos-animate,
[data-aos][data-aos][data-aos="zoom-in-up"].aos-animate,
[data-aos][data-aos][data-aos="zoom-in-down"].aos-animate,
[data-aos][data-aos][data-aos="zoom-in-left"].aos-animate,
[data-aos][data-aos][data-aos="zoom-in-right"].aos-animate,
[data-aos][data-aos][data-aos="zoom-out"].aos-animate,
[data-aos][data-aos][data-aos="zoom-out-up"].aos-animate,
[data-aos][data-aos][data-aos="zoom-out-down"].aos-animate,
[data-aos][data-aos][data-aos="zoom-out-left"].aos-animate,
[data-aos][data-aos][data-aos="zoom-out-right"].aos-animate,
[data-aos][data-aos][data-aos="slide-up"].aos-animate,
[data-aos][data-aos][data-aos="slide-down"].aos-animate,
[data-aos][data-aos][data-aos="slide-left"].aos-animate,
[data-aos][data-aos][data-aos="slide-right"].aos-animate,
[data-aos][data-aos][data-aos="flip-up"].aos-animate,
[data-aos][data-aos][data-aos="flip-down"].aos-animate,
[data-aos][data-aos][data-aos="flip-left"].aos-animate,
[data-aos][data-aos][data-aos="flip-right"].aos-animate {
    transform: translate(0) scale(1) \!important;
    opacity: 1 \!important;
}

/* Ensure AOS animations are visible during animation */
[data-aos].aos-animate {
    pointer-events: auto \!important;
}

/* Fix for elements not in viewport - force them to animate after delay */
@keyframes forceVisible {
    to {
        transform: translate(0) scale(1) \!important;
        opacity: 1 \!important;
    }
}

[data-aos]:not(.aos-animate) {
    animation: forceVisible 0.5s ease-out 1.5s forwards;
}

/* IMMEDIATE fix for AOS default animations */
[data-aos="fade-up"]:not(.aos-animate),
[data-aos="fade-down"]:not(.aos-animate),
[data-aos="fade-left"]:not(.aos-animate),
[data-aos="fade-right"]:not(.aos-animate),
[data-aos="zoom-in"]:not(.aos-animate),
[data-aos="zoom-out"]:not(.aos-animate),
[data-aos="slide-up"]:not(.aos-animate),
[data-aos="slide-down"]:not(.aos-animate) {
    transition: transform 0.5s ease-out 1s, opacity 0.5s ease-out 1s;
}

/* After 1 second, start transitioning to visible */
body.aos-initialized [data-aos]:not(.aos-animate) {
    transform: translate(0) scale(1) !important;
    opacity: 1 !important;
}

/* NUCLEAR OPTION: Custom animations for AOS defaults */
@keyframes stupidFadeUp {
    from { opacity: 0; transform: translateY(100px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes stupidFadeDown {
    from { opacity: 0; transform: translateY(-100px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes stupidFadeLeft {
    from { opacity: 0; transform: translateX(100px); }
    to { opacity: 1; transform: translateX(0); }
}
@keyframes stupidFadeRight {
    from { opacity: 0; transform: translateX(-100px); }
    to { opacity: 1; transform: translateX(0); }
}
@keyframes stupidZoomIn {
    from { opacity: 0; transform: scale(0.5); }
    to { opacity: 1; transform: scale(1); }
}
@keyframes stupidZoomOut {
    from { opacity: 0; transform: scale(1.5); }
    to { opacity: 1; transform: scale(1); }
}

/* Apply our animations instead of AOS */
[data-aos="fade-up"] {
    opacity: 0;
    animation: stupidFadeUp var(--stupid-global-duration, 1.5s) ease-out forwards;
    animation-play-state: paused;
}
[data-aos="fade-down"] {
    opacity: 0;
    animation: stupidFadeDown var(--stupid-global-duration, 1.5s) ease-out forwards;
    animation-play-state: paused;
}
[data-aos="fade-left"] {
    opacity: 0;
    animation: stupidFadeLeft var(--stupid-global-duration, 1.5s) ease-out forwards;
    animation-play-state: paused;
}
[data-aos="fade-right"] {
    opacity: 0;
    animation: stupidFadeRight var(--stupid-global-duration, 1.5s) ease-out forwards;
    animation-play-state: paused;
}
[data-aos="zoom-in"] {
    opacity: 0;
    animation: stupidZoomIn var(--stupid-global-duration, 1.5s) ease-out forwards;
    animation-play-state: paused;
}
[data-aos="zoom-out"] {
    opacity: 0;
    animation: stupidZoomOut var(--stupid-global-duration, 1.5s) ease-out forwards;
    animation-play-state: paused;
}

/* Play animation when visible */
[data-aos].aos-animate,
[data-aos].aos-init {
    animation-play-state: running !important;
}


/* ===== SIMPLE ANIMATION SYSTEM OVERRIDE ===== */
/* This overrides all the complex AOS stuff above */

/* Reset all data-aos elements */
[data-aos] {
    opacity: 0 \!important;
    transform: none \!important;
    transition: none \!important;
    animation: none \!important;
}

/* ===== KADENCE BACKGROUND & OVERLAY FIXES ===== */

/* Ensure proper stacking context for animated backgrounds */
[data-aos].kt-row-has-bg,
[data-aos].kb-row-layout-wrap {
    position: relative;
    z-index: 0;
    overflow: visible !important;
}

/* Keep content above background during animation */
[data-aos] .kt-row-column-wrap {
    position: relative;
    z-index: 1;
}

/* Hide overlays completely during animation phase */
[data-aos]:not(.aos-animate) .kt-row-layout-overlay,
[data-aos]:not(.aos-animate) .kb-section-overlay {
    opacity: 0 !important;
    background-color: transparent !important;
    transition: opacity 0.3s ease-in-out !important;
}

/* After animation completes, original styles take over (no rules needed) */

/* Simple animations when activated */
[data-aos].stupidwp-animated {
    opacity: 1 \!important;
    transition: all var(--stupid-global-duration, 1.5s) ease-out \!important;
}

/* Simple fade animations */
[data-aos="fade-up"].stupidwp-animated {
    animation: simpleFadeUp var(--stupid-global-duration, 1.5s) ease-out forwards \!important;
}

[data-aos="fade-down"].stupidwp-animated {
    animation: simpleFadeDown var(--stupid-global-duration, 1.5s) ease-out forwards \!important;
}

[data-aos="fade-left"].stupidwp-animated {
    animation: simpleFadeLeft var(--stupid-global-duration, 1.5s) ease-out forwards \!important;
}

[data-aos="fade-right"].stupidwp-animated {
    animation: simpleFadeRight var(--stupid-global-duration, 1.5s) ease-out forwards \!important;
}

[data-aos="zoom-in"].stupidwp-animated,
[data-aos="zoom-out"].stupidwp-animated {
    animation: simpleZoomIn var(--stupid-global-duration, 1.5s) ease-out forwards \!important;
}

/* Reuse existing custom animations */
[data-aos="crazy-spin-left"].stupidwp-animated {
    animation: crazySpinLeft var(--stupid-global-duration, 1.5s) ease-out forwards \!important;
}

[data-aos="crazy-spin-right"].stupidwp-animated {
    animation: crazySpinRight var(--stupid-global-duration, 1.5s) ease-out forwards \!important;
}

/* Continue for other custom animations... */
