/* Safed header (.sw-header) - navbar.php wale pages (home, residential, commercial).
   Pehle header photo ke upar transparent tha aur logo CSS se ulta (safed) kiya jaata tha;
   ab header safed hai aur logo apne asli neele rang mein dikhta hai. */

.sw-header {
    --sw-blue: #4b85f0;
    --sw-blue-dark: #3a72dc;
    --sw-navy: #0f1f3d;
    --sw-ink: #1d2b45;
    background: #fff;
    border-bottom: 1px solid #e8edf5;
    box-shadow: 0 2px 14px rgba(15, 31, 61, 0.05);
}
.sw-header #masthead,
.sw-header .elementor-section {
    background: transparent !important;
}

/* Logo: asli rang */
.sw-header #masthead img.logo {
    filter: none !important;
}

/* Menu links */
.sw-header #masthead .stm_nav_menu ul.menu > li > a {
    position: relative;
    color: var(--sw-ink) !important;
    font-size: 15px;
    font-weight: 400;
    background: transparent !important;
    border-radius: 0 !important;
}
.sw-header #masthead .stm_nav_menu ul.menu > li > a:hover {
    color: var(--sw-blue) !important;
}
.sw-header #masthead .stm_nav_menu ul.menu > li.current-menu-item > a {
    color: var(--sw-blue) !important;
    font-weight: 500;
}
.sw-header #masthead .stm_nav_menu ul.menu > li.current-menu-item > a::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: -2px;
    height: 2px;
    background: var(--sw-blue);
    border-radius: 2px;
}
.sw-header #masthead .stm_nav_menu .dropdown_nav_arrow {
    display: none !important;
}

/* Right side buttons */
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    height: 46px;
    padding: 0 22px !important;
    background: #fff !important;
    border: 1px solid #cfd8e6 !important;
    border-radius: 999px !important;
    color: var(--sw-navy) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button:hover {
    border-color: var(--sw-blue) !important;
    color: var(--sw-blue) !important;
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button .elementor-button-text,
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button .elementor-button-icon {
    color: inherit !important;
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button .sw-ico {
    color: var(--sw-blue);
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button.sw-call {
    background: var(--sw-blue) !important;
    border-color: var(--sw-blue) !important;
    color: #fff !important;
    letter-spacing: 0.5px;
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button.sw-call .sw-ico {
    color: #fff;
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button.sw-call:hover {
    background: var(--sw-blue-dark) !important;
    border-color: var(--sw-blue-dark) !important;
    color: #fff !important;
}

/* Mobile hamburger */
.sw-header #masthead .stm_mobile_switcher span {
    background-color: var(--sw-navy) !important;
}

/* Buttons ka text ek hi line mein */
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-widget-wrap {
    flex-wrap: nowrap;
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button,
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button-content-wrapper {
    white-space: nowrap;
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-button-content-wrapper {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

/* Mobile slide-out menu */
@media (max-width: 1024px) {
    .sw-header #masthead .stm_nav_menu ul.menu > li > a {
        padding-left: 20px !important;
    }
    .sw-header #masthead .stm_nav_menu ul.menu > li.current-menu-item > a::after {
        display: none;
    }
}

/* Theme buttons par upar 22px margin lagati thi, jisse woh header ke neeche kinare se lagte the */
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-widget {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
/* Buttons wala column poori header height le aur buttons beech mein rahein
   (mobile par yeh column theme khud chhupa deti hai, isliye sirf 769px+) */
@media (min-width: 769px) {
    .sw-header #masthead .elementor-element-7ef2b4c2 {
        display: flex !important;
        align-items: center;
    }
}
.sw-header #masthead .elementor-element-7ef2b4c2 > .elementor-column-wrap {
    align-items: center;
}
.sw-header #masthead .elementor-element-7ef2b4c2 .elementor-widget-wrap {
    align-items: center;
    align-content: center;
}

/* Sticky header: scroll karte waqt header upar chipka rahe.
   #page par theme ka overflow:hidden sticky ko rokta tha; overflow:clip dikhne mein wahi hai
   par sticky ko nahi rokta (purane browser mein header bas normal scroll hoga). */
@supports (overflow: clip) {
    #page.site {
        overflow: clip !important;
    }
}
.sw-header {
    position: sticky !important;
    top: 0;
    z-index: 999;
}
/* Theme scroll par .sticky-active lagakar header ko fixed + kaala karti hai; humein safed sticky chahiye */
.header-box.sw-header.sticky-active {
    position: sticky !important;
    top: 0;
    left: auto;
    width: 100%;
    background: #fff !important; /* blur nahi: woh mobile menu (fixed) ko header ke andar band kar deta */
    box-shadow: 0 6px 20px rgba(15, 31, 61, 0.1);
    animation: none;
}
.sticky-active.sw-header .elementor.elementor-8012.header-position_absolute {
    background-color: transparent !important;
}
