/* ============================================
   TRANSPARENT HOME HEADER - Header Only
   Scoped exclusively to .transparent-header-active
   and header elements. Never touches footer,
   social icons outside the header, or content.
   ============================================ */

/* Header Background - Transparent */
.transparent-header-active .site-header {
    position: absolute !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: transparent !important;
    box-shadow: none !important;
    border-bottom: none !important;
    transition: all 0.3s ease-in-out;
}

.transparent-header-active .ast-primary-header-bar {
    background: transparent !important;
    border-bottom: none !important;
    transition: all 0.3s ease-in-out;
}

/* Header Container */
.transparent-header-active .site-header .ast-container,
.transparent-header-active .site-header .ast-builder-grid-row {
    background: transparent !important;
}

/* Sticky/Scrolled State - uses CSS variables set by JS (fallback white) */
.transparent-header-active .site-header.scrolled {
    position: fixed !important;
    background: var(--transparent-sticky-bg, #ffffff) !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
    animation: slideDown 0.4s ease-in-out;
}

.transparent-header-active .site-header.scrolled .ast-primary-header-bar {
    background: var(--transparent-sticky-bg, #ffffff) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
}

/* Hover State */
.transparent-header-active .site-header:hover {
    background: var(--transparent-hover-bg, #ffffff) !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
}

.transparent-header-active .site-header:hover .ast-primary-header-bar {
    background: var(--transparent-hover-bg, #ffffff) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
}

/* When both hover and scrolled - keep sticky style */
.transparent-header-active .site-header.scrolled:hover {
    background: var(--transparent-sticky-bg, #ffffff) !important;
}

.transparent-header-active .site-header.scrolled:hover .ast-primary-header-bar {
    background: var(--transparent-sticky-bg, #ffffff) !important;
}

@keyframes slideDown {
    from {
        transform: translateY(-100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Ensure hero section spacing so content does not sit under absolute header */
.transparent-header-active .elementor-section:first-of-type,
.transparent-header-active .e-con:first-of-type {
    margin-top: 0 !important;
    padding-top: 100px !important;
}

@media (max-width: 768px) {
    .transparent-header-active .elementor-section:first-of-type,
    .transparent-header-active .e-con:first-of-type {
        padding-top: 70px !important;
    }
}

/* ============================================
   LOGO - WHITE (Default) → normal on hover/scroll
   ============================================ */
.transparent-header-active .site-header .custom-logo {
    filter: brightness(0) invert(1) !important;
    transition: filter 0.3s ease-in-out;
}

.transparent-header-active .site-header:hover .custom-logo,
.transparent-header-active .site-header.scrolled .custom-logo {
    filter: none !important;
}

/* ============================================
   MENU TEXT - WHITE (Default) → black on hover/scroll
   ============================================ */
.transparent-header-active .site-header .main-header-menu .menu-link,
.transparent-header-active .site-header .main-header-menu a,
.transparent-header-active .site-header .ast-builder-menu-1 .menu-link,
.transparent-header-active .site-header .ast-builder-menu-1 a {
    color: #ffffff !important;
    transition: color 0.3s ease-in-out;
}

.transparent-header-active .site-header .main-header-menu .menu-link:hover,
.transparent-header-active .site-header .main-header-menu a:hover,
.transparent-header-active .site-header .ast-builder-menu-1 .menu-link:hover,
.transparent-header-active .site-header .ast-builder-menu-1 a:hover {
    color: rgba(255, 255, 255, 0.7) !important;
}

.transparent-header-active .site-header:hover .main-header-menu .menu-link,
.transparent-header-active .site-header:hover .main-header-menu a,
.transparent-header-active .site-header:hover .ast-builder-menu-1 .menu-link,
.transparent-header-active .site-header:hover .ast-builder-menu-1 a,
.transparent-header-active .site-header.scrolled .main-header-menu .menu-link,
.transparent-header-active .site-header.scrolled .main-header-menu a,
.transparent-header-active .site-header.scrolled .ast-builder-menu-1 .menu-link,
.transparent-header-active .site-header.scrolled .ast-builder-menu-1 a {
    color: #000000 !important;
}

/* ============================================
   LOGIN / ACCOUNT ICON - WHITE → dark
   ============================================ */
.transparent-header-active .site-header .ast-header-account .ahfb-svg-iconset svg {
    fill: #ffffff !important;
    stroke: #ffffff !important;
    transition: all 0.3s ease-in-out;
}

.transparent-header-active .site-header .ast-header-account .ahfb-svg-iconset svg path {
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

.transparent-header-active .site-header .ast-header-account:hover .ahfb-svg-iconset svg,
.transparent-header-active .site-header .ast-header-account:hover .ahfb-svg-iconset svg path {
    fill: rgba(255, 255, 255, 0.7) !important;
    stroke: rgba(255, 255, 255, 0.7) !important;
}

.transparent-header-active .site-header:hover .ast-header-account .ahfb-svg-iconset svg,
.transparent-header-active .site-header.scrolled .ast-header-account .ahfb-svg-iconset svg,
.transparent-header-active .site-header:hover .ast-header-account .ahfb-svg-iconset svg path,
.transparent-header-active .site-header.scrolled .ast-header-account .ahfb-svg-iconset svg path {
    fill: #000000 !important;
    stroke: #000000 !important;
}

.transparent-header-active .site-header:hover .ast-header-account:hover .ahfb-svg-iconset svg,
.transparent-header-active .site-header.scrolled .ast-header-account:hover .ahfb-svg-iconset svg,
.transparent-header-active .site-header:hover .ast-header-account:hover .ahfb-svg-iconset svg path,
.transparent-header-active .site-header.scrolled .ast-header-account:hover .ahfb-svg-iconset svg path {
    fill: #333333 !important;
    stroke: #333333 !important;
}

/* ============================================
   CART ICON - WHITE → dark
   ============================================ */
.transparent-header-active .site-header .ast-site-header-cart .astra-icon {
    color: #ffffff !important;
    transition: color 0.3s ease-in-out;
}

.transparent-header-active .site-header .ast-site-header-cart .astra-icon svg {
    fill: #ffffff !important;
    transition: fill 0.3s ease-in-out;
}

.transparent-header-active .site-header .ast-site-header-cart .astra-icon svg path {
    fill: #ffffff !important;
}

.transparent-header-active .site-header .ast-site-header-cart:hover .astra-icon {
    color: rgba(255, 255, 255, 0.7) !important;
}

.transparent-header-active .site-header .ast-site-header-cart:hover .astra-icon svg,
.transparent-header-active .site-header .ast-site-header-cart:hover .astra-icon svg path {
    fill: rgba(255, 255, 255, 0.7) !important;
}

.transparent-header-active .site-header:hover .ast-site-header-cart .astra-icon,
.transparent-header-active .site-header.scrolled .ast-site-header-cart .astra-icon {
    color: #000000 !important;
}

.transparent-header-active .site-header:hover .ast-site-header-cart .astra-icon svg,
.transparent-header-active .site-header.scrolled .ast-site-header-cart .astra-icon svg,
.transparent-header-active .site-header:hover .ast-site-header-cart .astra-icon svg path,
.transparent-header-active .site-header.scrolled .ast-site-header-cart .astra-icon svg path {
    fill: #000000 !important;
}

.transparent-header-active .site-header:hover .ast-site-header-cart:hover .astra-icon,
.transparent-header-active .site-header.scrolled .ast-site-header-cart:hover .astra-icon {
    color: #333333 !important;
}

.transparent-header-active .site-header:hover .ast-site-header-cart:hover .astra-icon svg,
.transparent-header-active .site-header.scrolled .ast-site-header-cart:hover .astra-icon svg,
.transparent-header-active .site-header:hover .ast-site-header-cart:hover .astra-icon svg path,
.transparent-header-active .site-header.scrolled .ast-site-header-cart:hover .astra-icon svg path {
    fill: #333333 !important;
}

/* Cart Count */
.transparent-header-active .site-header .ast-site-header-cart .ast-cart-menu-wrap .count {
    color: #ffffff !important;
    border-color: #ffffff !important;
    transition: all 0.3s ease-in-out;
}

.transparent-header-active .site-header:hover .ast-site-header-cart .ast-cart-menu-wrap .count,
.transparent-header-active .site-header.scrolled .ast-site-header-cart .ast-cart-menu-wrap .count {
    color: #000000 !important;
    border-color: #000000 !important;
}

/* ============================================
   SEARCH ICON - WHITE → dark
   ============================================ */
.transparent-header-active .site-header .ast-search-icon .ast-icon,
.transparent-header-active .site-header .ast-search-icon svg {
    color: #ffffff !important;
    fill: #ffffff !important;
    transition: all 0.3s ease-in-out;
}

.transparent-header-active .site-header .ast-search-icon .ast-icon path,
.transparent-header-active .site-header .ast-search-icon svg path {
    fill: #ffffff !important;
}

.transparent-header-active .site-header .ast-search-icon:hover .ast-icon,
.transparent-header-active .site-header .ast-search-icon:hover svg {
    color: rgba(255, 255, 255, 0.7) !important;
    fill: rgba(255, 255, 255, 0.7) !important;
}

.transparent-header-active .site-header .ast-search-icon:hover .ast-icon path,
.transparent-header-active .site-header .ast-search-icon:hover svg path {
    fill: rgba(255, 255, 255, 0.7) !important;
}

.transparent-header-active .site-header:hover .ast-search-icon .ast-icon,
.transparent-header-active .site-header:hover .ast-search-icon svg,
.transparent-header-active .site-header.scrolled .ast-search-icon .ast-icon,
.transparent-header-active .site-header.scrolled .ast-search-icon svg {
    color: #000000 !important;
    fill: #000000 !important;
}

.transparent-header-active .site-header:hover .ast-search-icon .ast-icon path,
.transparent-header-active .site-header:hover .ast-search-icon svg path,
.transparent-header-active .site-header.scrolled .ast-search-icon .ast-icon path,
.transparent-header-active .site-header.scrolled .ast-search-icon svg path {
    fill: #000000 !important;
}

.transparent-header-active .site-header:hover .ast-search-icon:hover .ast-icon,
.transparent-header-active .site-header:hover .ast-search-icon:hover svg,
.transparent-header-active .site-header.scrolled .ast-search-icon:hover .ast-icon,
.transparent-header-active .site-header.scrolled .ast-search-icon:hover svg {
    color: #333333 !important;
    fill: #333333 !important;
}

.transparent-header-active .site-header:hover .ast-search-icon:hover .ast-icon path,
.transparent-header-active .site-header:hover .ast-search-icon:hover svg path,
.transparent-header-active .site-header.scrolled .ast-search-icon:hover .ast-icon path,
.transparent-header-active .site-header.scrolled .ast-search-icon:hover svg path {
    fill: #333333 !important;
}

/* ============================================
   HAMBURGER / MOBILE MENU TOGGLE
   Color is driven by --transparent-icon-color
   (set by JS from sticky/hover background luminance).
   ============================================ */

.transparent-header-active .site-header {
    --transparent-icon-color: #ffffff;
}

.transparent-header-active .site-header.scrolled {
    --transparent-icon-color: var(--transparent-sticky-icon-color, #000000);
}

.transparent-header-active .site-header:hover {
    --transparent-icon-color: var(--transparent-hover-icon-color, #000000);
}

.transparent-header-active .site-header.scrolled:hover {
    --transparent-icon-color: var(--transparent-sticky-icon-color, #000000);
}

@media (prefers-color-scheme: dark) {
    .transparent-header-active .site-header.scrolled,
    .transparent-header-active .site-header:hover {
        --transparent-icon-color: var(--transparent-sticky-icon-color, #ffffff);
    }
}

/* Apply to all known Astra mobile toggle wrappers (header only) */
.transparent-header-active .site-header .menu-toggle,
.transparent-header-active .site-header .ast-mobile-menu-trigger,
.transparent-header-active .site-header .ast-mobile-menu-buttons,
.transparent-header-active .site-header .ast-mobile-header-wrap .mobile-menu-toggle-icon,
.transparent-header-active .site-header .mobile-menu-toggle-icon,
.transparent-header-active .site-header .ast-mobile-svg-iconset {
    color: var(--transparent-icon-color, #ffffff) !important;
    transition: color 0.3s ease-in-out;
}

.transparent-header-active .site-header .menu-toggle svg,
.transparent-header-active .site-header .ast-mobile-menu-trigger svg,
.transparent-header-active .site-header .mobile-menu-toggle-icon svg,
.transparent-header-active .site-header .ast-mobile-svg-iconset svg,
.transparent-header-active .site-header .menu-toggle .ast-icon svg {
    fill: currentColor !important;
    stroke: currentColor !important;
    color: inherit !important;
    transition: fill 0.3s ease-in-out, stroke 0.3s ease-in-out;
}

.transparent-header-active .site-header .menu-toggle svg path,
.transparent-header-active .site-header .menu-toggle svg rect,
.transparent-header-active .site-header .menu-toggle svg line,
.transparent-header-active .site-header .menu-toggle svg circle,
.transparent-header-active .site-header .ast-mobile-menu-trigger svg path,
.transparent-header-active .site-header .mobile-menu-toggle-icon svg path,
.transparent-header-active .site-header .ast-mobile-svg-iconset svg path {
    fill: currentColor !important;
    stroke: currentColor !important;
}

/* Legacy 3-bar hamburger (CSS bars) */
.transparent-header-active .site-header .menu-toggle .menu-toggle-icon span,
.transparent-header-active .site-header .ast-mobile-menu-trigger span:not(.screen-reader-text) {
    background-color: currentColor !important;
}

/* When mobile menu is open, keep solid-header color */
.transparent-header-active .site-header .menu-toggle[aria-expanded="true"] {
    --transparent-icon-color: var(--transparent-sticky-icon-color, #000000);
    color: var(--transparent-sticky-icon-color, #000000) !important;
}

/* ============================================
   IMPORTANT: No rules for footer, social icons
   outside the header, or any other page areas.
   All selectors above are deliberately scoped
   under .site-header (or the first hero section
   for spacing only).
   ============================================ */
