/* ============================================================================
   Hero Banner - Advanced Transition Effects
   ============================================================================ */

/* Flip Horizontal Effect */
.hb-transition-flip-h .hb-slide {
    transition: transform 0.5s ease-in-out;
    transform-style: preserve-3d;
}

.hb-transition-flip-h .hb-slide.active {
    transform: rotateY(0deg);
}

.hb-transition-flip-h .hb-slide.prev,
.hb-transition-flip-h .hb-slide.next {
    transform: rotateY(90deg);
}

/* Flip Vertical Effect */
.hb-transition-flip-v .hb-slide {
    transition: transform 0.5s ease-in-out;
    transform-style: preserve-3d;
}

.hb-transition-flip-v .hb-slide.active {
    transform: rotateX(0deg);
}

.hb-transition-flip-v .hb-slide.prev,
.hb-transition-flip-v .hb-slide.next {
    transform: rotateX(90deg);
}

/* Rotate In Effect */
.hb-transition-rotate-in .hb-slide {
    transition: transform 0.5s ease-in-out;
}

.hb-transition-rotate-in .hb-slide.active {
    transform: rotate(0deg) scale(1);
}

.hb-transition-rotate-in .hb-slide.prev,
.hb-transition-rotate-in .hb-slide.next {
    transform: rotate(45deg) scale(0.5);
}

/* Blur Effect */
.hb-transition-blur .hb-slide {
    transition: filter 0.5s ease-in-out;
}

.hb-transition-blur .hb-slide.active {
    filter: blur(0px);
}

.hb-transition-blur .hb-slide.prev,
.hb-transition-blur .hb-slide.next {
    filter: blur(10px);
}

/* Push Effect */
.hb-transition-push .hb-slide {
    transition: transform 0.5s ease-in-out;
}

.hb-transition-push .hb-slide.active {
    transform: translateX(0);
}

.hb-transition-push .hb-slide.prev {
    transform: translateX(-100%);
}

.hb-transition-push .hb-slide.next {
    transform: translateX(100%);
}

/* Cover Effect */
.hb-transition-cover .hb-slide {
    transition: transform 0.5s ease-in-out;
}

.hb-transition-cover .hb-slide.active {
    transform: scale(1);
    z-index: 2;
}

.hb-transition-cover .hb-slide.prev,
.hb-transition-cover .hb-slide.next {
    transform: scale(0.9);
    z-index: 1;
}

/* Uncover Effect */
.hb-transition-uncover .hb-slide {
    transition: transform 0.5s ease-in-out;
}

.hb-transition-uncover .hb-slide.active {
    transform: scale(1);
    z-index: 2;
}

.hb-transition-uncover .hb-slide.prev,
.hb-transition-uncover .hb-slide.next {
    transform: scale(1.1);
    z-index: 1;
}

/* Glitch Effect */
@keyframes hb-glitch {
    0%, 100% { transform: translate(0); }
    20% { transform: translate(-2px, 2px); }
    40% { transform: translate(-2px, -2px); }
    60% { transform: translate(2px, 2px); }
    80% { transform: translate(2px, -2px); }
}

.hb-transition-glitch .hb-slide {
    transition: opacity 0.5s ease-in-out;
}

.hb-transition-glitch .hb-slide.active {
    opacity: 1;
    animation: hb-glitch 0.3s ease-in-out;
}

.hb-transition-glitch .hb-slide.prev,
.hb-transition-glitch .hb-slide.next {
    opacity: 0;
}

/* Ken Burns Effect (Cinematic Zoom) */
@keyframes hb-ken-burns {
    0% { transform: scale(1) translate(0, 0); }
    100% { transform: scale(1.1) translate(5px, 5px); }
}

.hb-transition-ken-burns .hb-slide {
    transition: opacity 0.5s ease-in-out;
}

.hb-transition-ken-burns .hb-slide.active {
    opacity: 1;
    animation: hb-ken-burns 8s ease-in-out infinite;
}

.hb-transition-ken-burns .hb-slide.prev,
.hb-transition-ken-burns .hb-slide.next {
    opacity: 0;
}

/* Cube Effect */
.hb-transition-cube .hb-slide {
    transition: transform 0.5s ease-in-out;
    transform-style: preserve-3d;
}

.hb-transition-cube .hb-slide.active {
    transform: rotateY(0deg) rotateX(0deg);
}

.hb-transition-cube .hb-slide.prev {
    transform: rotateY(-90deg) rotateX(0deg);
}

.hb-transition-cube .hb-slide.next {
    transform: rotateY(90deg) rotateX(0deg);
}

/* Accessibility: Disable 3D transforms for reduced motion */
@media (prefers-reduced-motion: reduce) {
    .hb-transition-flip-h .hb-slide,
    .hb-transition-flip-v .hb-slide,
    .hb-transition-cube .hb-slide {
        transform-style: flat;
    }
}

