/* ===== ZWP — HFE transparent minimal header + menu (v2) ===== */

/* The actual HFE header renders inside <header id="masthead"> with body class .ehf-header */
body.ehf-header > #page > header#masthead,
body.ehf-header header#masthead.site-header {
    position: absolute !important;
    top: 0; left: 0; right: 0;
    z-index: 100;
    width: 100%;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
}

/* All Elementor sections/containers inside the HFE header — transparent + no border */
header#masthead .elementor[data-elementor-id="22"],
header#masthead [data-element_type="section"],
header#masthead [data-element_type="container"],
header#masthead .elementor-section,
header#masthead .elementor-section-wrap,
header#masthead .e-con,
header#masthead .e-flex,
header#masthead .e-con-boxed,
header#masthead .elementor-element-populated {
    background-color: transparent !important;
    background-image: none !important;
    background: transparent !important;
    border: 0 !important;
    border-style: none !important;
    border-width: 0 !important;
    box-shadow: none !important;
    --background-color: transparent !important;
    --border-color: transparent !important;
    --border-width: 0 !important;
}

/* Astra inserts a `.main-title.bhf-hidden` paragraph — hide it cleanly */
.bhf-hidden, .main-title.bhf-hidden { display: none !important; }

/* === MENU === Dark text on white, gold on hover, subtle animated underline === */
header#masthead .hfe-nav-menu li a,
header#masthead .elementor-nav-menu li a,
header#masthead nav.menu a,
header#masthead .menu li a,
header#masthead .menu-item > a {
    color: #0A0A0A !important;
    font-family: "Manrope", sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    letter-spacing: 0.2px !important;
    text-decoration: none !important;
    padding: 10px 16px !important;
    transition: color 0.18s ease !important;
    position: relative;
    background: transparent !important;
}

header#masthead .hfe-nav-menu li a:hover,
header#masthead .elementor-nav-menu li a:hover,
header#masthead .menu li a:hover,
header#masthead .menu-item.current-menu-item > a,
header#masthead .menu-item.current_page_item > a {
    color: #D4AF37 !important;
}

/* Animated underline on hover */
header#masthead .hfe-nav-menu li > a::after,
header#masthead .elementor-nav-menu li > a::after,
header#masthead .menu-item > a::after {
    content: "";
    position: absolute;
    bottom: 4px;
    left: 16px;
    right: 16px;
    height: 1.5px;
    background: #D4AF37;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.22s ease;
    pointer-events: none;
}
header#masthead .hfe-nav-menu li > a:hover::after,
header#masthead .elementor-nav-menu li > a:hover::after,
header#masthead .menu-item.current-menu-item > a::after,
header#masthead .menu-item > a:hover::after {
    transform: scaleX(1);
}

/* Dropdowns */
header#masthead .sub-menu,
header#masthead .hfe-nav-menu .sub-menu,
header#masthead .elementor-nav-menu .sub-menu {
    background: #FFFFFF !important;
    border: 1px solid #E5E5E5 !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.08) !important;
    padding: 8px !important;
    margin-top: 8px !important;
    min-width: 200px;
}
header#masthead .sub-menu li a {
    border-radius: 6px !important;
    padding: 10px 14px !important;
}
header#masthead .sub-menu li a:hover {
    background: #F8F8F8 !important;
}
header#masthead .sub-menu li a::after { display: none !important; }

/* Site title / brand text */
header#masthead .site-title a,
header#masthead .elementor-heading-title,
header#masthead .hfe-site-title {
    color: #0A0A0A !important;
    font-family: "Manrope", sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -0.2px !important;
}

/* Logo image - clamp size */
header#masthead .elementor-widget-image img,
header#masthead .hfe-site-logo-img {
    max-height: 40px;
    width: auto;
}

/* CTA button in header - gold pill */
header#masthead .elementor-button,
header#masthead a.elementor-button,
header#masthead .hfe-button-wrapper a.elementor-button,
header#masthead button.elementor-button {
    background: #D4AF37 !important;
    background-color: #D4AF37 !important;
    color: #0A0A0A !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 10px 18px !important;
    font-family: "Manrope", sans-serif !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    letter-spacing: 0.2px !important;
    box-shadow: none !important;
    transition: background 0.18s ease, transform 0.18s ease !important;
}
header#masthead .elementor-button:hover {
    background: #E2C45F !important;
    background-color: #E2C45F !important;
    transform: translateY(-1px);
}

/* Mobile hamburger */
header#masthead .hfe-nav-menu-icon,
header#masthead .hfe-menu-toggle,
header#masthead .elementor-menu-toggle,
header#masthead .hfe-nav-menu__toggle {
    color: #0A0A0A !important;
    background: transparent !important;
    border: 1px solid #E5E5E5 !important;
    border-radius: 8px !important;
    padding: 8px 10px !important;
    transition: all 0.2s ease;
}
header#masthead .hfe-nav-menu-icon:hover,
header#masthead .elementor-menu-toggle:hover {
    color: #D4AF37 !important;
    border-color: #D4AF37 !important;
}
header#masthead .hfe-nav-menu-icon svg,
header#masthead .elementor-menu-toggle svg {
    fill: currentColor !important;
}

/* Mobile dropdown panel — solid white when expanded so menu items are readable */
header#masthead .hfe-dropdown,
header#masthead .hfe-nav-menu__layout-horizontal .hfe-dropdown,
header#masthead .elementor-nav-menu--dropdown,
header#masthead .hfe-nav-menu-list.hfe-flex-horizontal-active {
    background: #FFFFFF !important;
    border: 1px solid #E5E5E5 !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 32px rgba(0,0,0,0.08) !important;
    margin-top: 12px !important;
    padding: 8px !important;
}
header#masthead .hfe-dropdown li a,
header#masthead .elementor-nav-menu--dropdown li a {
    border-bottom: 1px solid #F0F0F0 !important;
    padding: 14px 16px !important;
    border-radius: 0 !important;
}
header#masthead .hfe-dropdown li:last-child a {
    border-bottom: none !important;
}
header#masthead .hfe-dropdown li a::after,
header#masthead .elementor-nav-menu--dropdown li a::after { display: none !important; }

/* === BODY / PAGE === ensure white background */
body.page-id-9,
body.elementor-page-9,
body.home {
    background-color: #FFFFFF !important;
}

/* Smooth scroll for #anchor links */
html { scroll-behavior: smooth; }

/* Astra theme leftovers - hide title bar and any stray theme bits */
body.elementor-page .ast-archive-description,
body.elementor-page .ast-content > .ast-container > .entry-header.ast-no-title.ast-no-thumbnail.ast-no-meta { display: none !important; }
