/**
 * Bali Green Spa - Shrinking Header Styles with Accessibility
 * Uses variables from variables.css
 *
 * @package Bali Green Spa
 * @since 1.0.0
 */

/* Base header styles - more opaque for better contrast */
.site-header {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999 !important;
    transition: all var(--bali-transition-base);
    background-color: var(--bali-header-bg-transparent);
    width: 100%;
    box-shadow: var(--bali-shadow-sm);
}

/* Logo visibility improvements - just shadow for depth */
.site-header .custom-logo-link img {
    display: block;
    filter: drop-shadow(var(--bali-logo-shadow));
    transition: all var(--bali-transition-base);
}

/* Ensure content doesn't hide behind fixed header */
body:not(.has-hero-section) {
    padding-top: var(--bali-header-height);
}

body:not(.has-hero-section).admin-bar {
    padding-top: calc(var(--bali-header-height) + 32px);
}

/* Remove body padding for hero sections */
body.has-hero-section,
body.has-hero-section.admin-bar {
    padding-top: 0 !important;
}

body.has-hero-section .site-content,
body.has-hero-section #content,
body.has-hero-section #primary,
body.has-hero-section .entry-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Hero section adjustments */
.entry-content > .wp-block-uagb-container.alignfull:first-child,
.entry-content > .uagb-is-root-container.alignfull:first-child,
.wp-block-uagb-container.uagb-block-0b347915.alignfull {
    margin-top: 0 !important;
    position: relative;
    top: 0;
}

.wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
.entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
    padding-top: var(--bali-header-height);
    transition: padding-top var(--bali-transition-base);
}

body.header-is-scrolled .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
body.header-is-scrolled .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
    padding-top: var(--bali-header-height-scrolled);
}

/* Admin bar compensation */
.admin-bar .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
.admin-bar .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
    padding-top: calc(var(--bali-header-height) + 32px);
}

.admin-bar.header-is-scrolled .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
.admin-bar.header-is-scrolled .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
    padding-top: calc(var(--bali-header-height-scrolled) + 32px);
}

/* Main header bar transitions */
.ast-primary-header-bar {
    transition: all var(--bali-transition-base);
    min-height: var(--bali-header-height);
    background-color: transparent;
}

.site-header .ast-site-identity,
.site-header .custom-logo-link img,
.site-header .main-header-menu,
.site-header .ast-builder-button-1,
.site-header .ast-builder-menu-1 {
    transition: all var(--bali-transition-base);
}

/* Scrolled state - even more opaque for maximum contrast */
.site-header.header-scrolled {
    background-color: var(--bali-header-bg-scrolled) !important;
    box-shadow: var(--bali-shadow-lg);
    backdrop-filter: blur(var(--bali-header-backdrop-blur));
    -webkit-backdrop-filter: blur(var(--bali-header-backdrop-blur));
}

.site-header.header-scrolled .ast-primary-header-bar {
    min-height: var(--bali-header-height-scrolled) !important;
    background-color: transparent !important;
    padding: 0.3em 0 !important;
}

/* Shrink logo when scrolled */
.site-header.header-scrolled .custom-logo-link img,
.site-header.header-scrolled .astra-logo-svg {
    max-width: 140px !important;
    width: 140px !important;
    height: auto;
    transform: scale(0.9);
}

/* Menu items when scrolled - only for non-active items */
.site-header.header-scrolled .ast-builder-menu-1 .menu-item:not(.current-menu-item):not(.current-menu-ancestor) > .menu-link {
    color: var(--bali-menu-text) !important;
    padding: 0.4em 1em !important;
    font-size: 15px;
}

/* Button styling when scrolled */
.site-header.header-scrolled .ast-header-button-1 .ast-custom-button {
    background: var(--bali-white) !important;
    color: var(--bali-primary) !important;
    border: 2px solid var(--bali-white) !important;
    padding: 10px 18px !important;
    font-size: var(--bali-text-base) !important;
    font-weight: var(--bali-font-semibold) !important;
    border-radius: var(--bali-radius-sm);
    box-shadow: var(--bali-shadow-sm);
}

.site-header.header-scrolled .ast-header-button-1 .ast-custom-button:hover {
    background: var(--bali-green-100) !important;
    color: var(--bali-green-950) !important;
    border-color: var(--bali-green-100) !important;
    transform: translateY(-1px);
    box-shadow: var(--bali-shadow-md);
}

/* Ensure proper stacking order */
.site-header.header-scrolled {
    z-index: 9999 !important;
}

/* Mobile header adjustments */
@media (max-width: 921px) {
    body:not(.has-hero-section) {
        padding-top: var(--bali-header-height-mobile);
    }

    body:not(.has-hero-section).admin-bar {
        padding-top: calc(var(--bali-header-height-mobile) + 46px);
    }

    /* Mobile inner content padding for hero sections */
    .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
    .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
        padding-top: var(--bali-header-height-mobile);
    }

    body.header-is-scrolled .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
    body.header-is-scrolled .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
        padding-top: var(--bali-header-height-scrolled-mobile);
    }

    .admin-bar .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
    .admin-bar .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
        padding-top: calc(var(--bali-header-height-mobile) + 46px);
    }

    .admin-bar.header-is-scrolled .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
    .admin-bar.header-is-scrolled .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
        padding-top: calc(var(--bali-header-height-scrolled-mobile) + 46px);
    }

    .site-header.header-scrolled .ast-primary-header-bar {
        min-height: var(--bali-header-height-scrolled-mobile) !important;
        padding: 0.2em 0 !important;
    }

    .site-header.header-scrolled .custom-logo-link img {
        max-width: 120px !important;
        width: 120px !important;
        transform: scale(0.85);
    }

    /* Mobile menu button styling when scrolled */
    .site-header.header-scrolled .menu-toggle.main-header-menu-toggle {
        background: var(--bali-white) !important;
        color: var(--bali-primary) !important;
        border: none !important;
        padding: var(--bali-space-sm) var(--bali-space-md) !important;
        border-radius: var(--bali-radius-sm);
        font-weight: var(--bali-font-semibold);
    }

    .site-header.header-scrolled .mobile-menu-toggle-icon svg {
        fill: var(--bali-primary) !important;
        width: 18px !important;
        height: 18px !important;
    }

    /* Mobile navigation background when scrolled */
    .site-header.header-scrolled .ast-mobile-header-content {
        background-color: var(--bali-header-bg-scrolled) !important;
        border-top: var(--bali-border-width) solid rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(var(--bali-header-backdrop-blur));
        -webkit-backdrop-filter: blur(var(--bali-header-backdrop-blur));
    }

    .site-header.header-scrolled .ast-mobile-header-content .menu-item:not(.current-menu-item):not(.current-menu-ancestor) .menu-link {
        color: var(--bali-menu-text) !important;
        border-bottom-color: rgba(255, 255, 255, 0.1) !important;
    }
}

/* Small mobile devices */
@media (max-width: 544px) {
    body:not(.has-hero-section) {
        padding-top: 65px;
    }

    .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
    .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
        padding-top: 65px;
    }

    body.header-is-scrolled .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
    body.header-is-scrolled .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
        padding-top: 45px;
    }

    .admin-bar .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
    .admin-bar .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
        padding-top: 97px;
    }

    .admin-bar.header-is-scrolled .wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
    .admin-bar.header-is-scrolled .entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
        padding-top: 77px;
    }

    .site-header.header-scrolled .ast-primary-header-bar {
        min-height: 40px !important;
    }

    .site-header.header-scrolled .custom-logo-link img {
        max-width: 110px !important;
        width: 110px !important;
    }

    .site-header.header-scrolled .ast-header-button-1 .ast-custom-button {
        padding: var(--bali-space-sm) 15px !important;
        font-size: var(--bali-text-sm) !important;
    }
}

/* Ensure transparent header still works initially on specific pages */
.ast-theme-transparent-header .site-header:not(.header-scrolled) {
    background-color: var(--bali-header-bg-transparent) !important;
}

.ast-theme-transparent-header .site-header:not(.header-scrolled) .ast-primary-header-bar {
    background-color: transparent !important;
    border-bottom: none !important;
}

/* Smooth animation for all interactive elements */
.site-header *,
.site-header .ast-builder-grid-row,
.site-header .site-header-section,
.wp-block-uagb-container.uagb-block-0b347915 .uagb-container-inner-blocks-wrap,
.entry-content > .wp-block-uagb-container.alignfull:first-child .uagb-container-inner-blocks-wrap {
    transition: all var(--bali-transition-base);
}

/* Header container adjustments */
.site-header.header-scrolled .ast-container {
    transition: all var(--bali-transition-base);
}

/* Touch device optimizations */
.touch-device .site-header {
    -webkit-overflow-scrolling: touch;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .site-header,
    .site-header *,
    .wp-block-uagb-container .uagb-container-inner-blocks-wrap {
        transition: none !important;
        animation: none !important;
    }
}

/* High contrast mode */
@media (prefers-contrast: high) {
    .site-header {
        background-color: var(--bali-header-bg-transparent) !important;
        border-bottom: var(--bali-border-width-thick) solid var(--bali-white);
    }
}