/**
 * Rubber Ducky Parallax Styles
 */

/* Base styles for parallax elements */
.rd-parallax-1,
.rd-parallax-2,
.rd-parallax-3,
.rd-parallax-4 {
    position: relative;
    overflow: hidden;
    will-change: transform;
}

/* Default transition for non-slippery elements */
.rd-parallax-1:not(.rd-slippery),
.rd-parallax-2:not(.rd-slippery),
.rd-parallax-3:not(.rd-slippery),
.rd-parallax-4:not(.rd-slippery) {
    transition: transform 0.1s;
}

/* Default transition for slippery elements */
.rd-parallax-1.rd-slippery,
.rd-parallax-2.rd-slippery,
.rd-parallax-3.rd-slippery,
.rd-parallax-4.rd-slippery {
    transition: transform 0.5s;
}

/* Individual layer customizations (these are defaults that will be overridden by JS) */
.rd-parallax-1 {
    z-index: 1;
}

.rd-parallax-2 {
    z-index: 2;
}

.rd-parallax-3 {
    z-index: 3;
}

.rd-parallax-4 {
    z-index: 4;
}

/* Optional helper classes */

/* Force elements to render on GPU for better performance */
.rd-gpu {
    transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

/* Helper to reverse the parallax direction */
.rd-reverse {
    transform-origin: center center;
}