/* ===================================
   SCROLL ANIMATIONS - ROYALTECH
   =================================== */

/* Intersection Observer Animations */
.fade-in-up {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in-up.visible {
    opacity: 1;
    transform: translateY(0);
}

.fade-in-left {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in-left.visible {
    opacity: 1;
    transform: translateX(0);
}

.fade-in-right {
    opacity: 0;
    transform: translateX(40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in-right.visible {
    opacity: 1;
    transform: translateX(0);
}

.scale-in {
    opacity: 0;
    transform: scale(0.8);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.scale-in.visible {
    opacity: 1;
    transform: scale(1);
}

/* Stagger delays for children */
.stagger-children>*:nth-child(1) {
    transition-delay: 0.1s;
}

.stagger-children>*:nth-child(2) {
    transition-delay: 0.2s;
}

.stagger-children>*:nth-child(3) {
    transition-delay: 0.3s;
}

.stagger-children>*:nth-child(4) {
    transition-delay: 0.4s;
}

.stagger-children>*:nth-child(5) {
    transition-delay: 0.5s;
}

/* Smooth scroll behavior */
html {
    scroll-behavior: smooth;
}

/* Parallax effect */
.parallax {
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}