/**
 * Smart Header Reveal - CSS
 * Premium header reveal animation styles with transparent/solid background transitions
 */

/* Base header styles */
.shr-header {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
}

/* Hidden state - slides up out of view */
.shr-header.shr-hidden {
    transform: translateY(-100%);
}

/* Visible state - in natural position */
.shr-header.shr-visible {
    transform: translateY(0);
}

/* Initial state - start visible, no animation */
.shr-header.shr-init {
    transform: translateY(0);
    transition: none !important;
}

/* Prevent layout shift */
body.shr-active {
    padding-top: 0 !important;
}

/* Add top padding to body equal to header height to prevent content jump */
body.shr-active .shr-spacer {
    display: block;
    visibility: hidden;
    pointer-events: none;
}

/* Smooth reveal animation for premium feel */
.shr-header.shr-revealing {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Quick hide animation */
.shr-header.shr-hiding {
    transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Ensure header content doesn't shift during animation */
.shr-header * {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000;
    perspective: 1000;
}

/* Performance optimization for mobile */
@media (max-width: 768px) {
    .shr-header {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}

/* Prevent issues with Elementor headers */
.elementor-location-header.shr-header {
    position: fixed !important;
}

/* Ensure header stays on top of all content */
.shr-header {
    isolation: isolate;
}

/* Background color transition - inline styles added via PHP will handle colors */
.shr-header {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), 
                background-color 0.3s ease !important;
}
