﻿/* ============================================= */
/* Custom Header Styles for Nail-It Fasteners    */
/* Add this to the END of your style.css       */
/* or in a new CSS file linked AFTER style.css */
/* ============================================= */


/* -------- Top Bar Styling -------- */
.header-top {
    background-color: #f5f7f2; /* Light grey/off-white background */
    color: #333333; /* Default text color (darker than pure black often looks better) */
    padding: 8px 0;
    font-size: 13px; /* Adjust as needed */
    border-bottom: 1px solid #e8e8e8; /* Subtle bottom border */
}

    .header-top .header-top-left .phone-wrap span,
    .header-top .header-top-left .phone-wrap a,
    .header-top .header-top-right .ht-menu > li > span, /* Target direct span like Currency/Language */
    .header-top .header-top-right .ht-menu > li > div > span { /* Target span inside div like Setting/USD/English */
        color: #333333 !important; /* Ensure text is dark */
        font-weight: normal; /* Remove potential bolding from theme */
    }

        .header-top .header-top-left .phone-wrap a:hover {
            color: #007bff !important; /* Optional: Link hover color */
        }

    /* Separators for top right menu items */
    .header-top .header-top-right .ht-menu > li {
        padding-left: 12px;
        margin-left: 12px;
        position: relative; /* Needed for the pseudo-element separator */
    }

        .header-top .header-top-right .ht-menu > li:not(:first-child)::before {
            content: "|";
            position: absolute;
            left: -2px; /* Adjust position */
            top: 50%;
            transform: translateY(-50%);
            color: #cccccc; /* Separator color */
            font-size: 1em; /* Adjust size */
        }

/* Remove separator from the very first item if needed (usually setting) */
/* .header-top .header-top-right .ht-menu > li:first-child {
    padding-left: 0;
    margin-left: 0;
}
.header-top .header-top-right .ht-menu > li:first-child::before {
    display: none;
} */


/* -------- Middle Header Styling -------- */
.header-middle {
    background-color: #ffffff;
    padding-top: 25px; /* Adjust vertical spacing */
    padding-bottom: 25px; /* Adjust vertical spacing */
}

    /* Logo Styling */
    .header-middle .logo {
        padding-bottom: 0 !important; /* Override theme's mobile padding if needed */
        margin-top: 0; /* Reset any negative margins */
        margin-bottom: 0; /* Reset any negative margins */
        display: flex; /* Helps with alignment if needed */
        align-items: center;
    }

        .header-middle .logo .main-logo {
            max-width: 180px; /* Adjust logo width as needed */
            max-height: 180px; /* Adjust logo height as needed */
            width: auto; /* Let it scale based on height/width */
            height: auto; /* Let it scale based on height/width */
            margin-top:-20px;
            margin-bottom:-20px;
        }

/* Wrapper for search and potentially cart/wishlist */
.header-middle-right-area {
    display: flex;
    align-items: center;
    justify-content: flex-end; /* Align items to the right */
}

/* -------- Search Bar Styling -------- */
.hm-searchbox {
    border: 1px solid #cccccc;
    border-radius: 5px;
    display: flex;
    overflow: hidden;
    max-width: 600px; /* Limit search bar width */
    width: 100%; /* Take available width up to max-width */
    margin-left: auto; /* Push search bar towards right if container allows */
    margin-right: 15px; /* Add space if cart/wishlist icons are present */
}

    /* Nice Select Dropdown Styling */
    .hm-searchbox .nice-select {
        border: none;
        border-right: 1px solid #cccccc;
        border-radius: 15px 0 0 15px;
        background-color: #f8f8f8;
        height: 45px; /* Match input/button height */
        line-height: 45px; /* Vertically center text */
        padding: 0px 30px 0px 15px; /* Adjust padding (right padding accounts for arrow) */
        font-size: 14px;
        font-weight: normal;
        color: #555555;
        flex-shrink: 0; /* Prevent dropdown from shrinking too much */
    }

        .hm-searchbox .nice-select:focus,
        .hm-searchbox .nice-select:active {
            outline: none;
            box-shadow: none;
        }

        .hm-searchbox .nice-select .list {
            background-color: #ffffff; /* Dropdown options background */
            border: 1px solid #cccccc;
            border-radius: 0 0 5px 5px;
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        }

        .hm-searchbox .nice-select .option {
            padding: 8px 15px;
            color: #333333;
        }

            .hm-searchbox .nice-select .option:hover,
            .hm-searchbox .nice-select .option.focus,
            .hm-searchbox .nice-select .option.selected.focus {
                background-color: #f0f0f0; /* Hover/selected option background */
            }


    /* Input Field Styling */
    .hm-searchbox input[type="text"] {
        border: none;
        flex-grow: 1; /* Take up remaining space */
        padding: 10px 15px;
        font-size: 14px;
        height: 45px; /* Match dropdown/button height */
        outline: none;
        color: #555555;
    }

        .hm-searchbox input[type="text"]::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
            color: #999999;
            opacity: 1; /* Firefox */
        }

        .hm-searchbox input[type="text"]:-ms-input-placeholder { /* Internet Explorer 10-11 */
            color: #999999;
        }

        .hm-searchbox input[type="text"]::-ms-input-placeholder { /* Microsoft Edge */
            color: #999999;
        }


    /* Search Button Styling */
    .hm-searchbox .li-btn {
        background-color: #ffd700; /* Yellow background */
        border: none;
        color: #333333; /* Dark icon color */
        padding: 0 18px;
        cursor: pointer;
        border-radius: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.2em; /* Icon size */
        height: 45px; /* Match dropdown/input height */
        flex-shrink: 0; /* Prevent button from shrinking */
        transition: background-color 0.3s ease; /* Smooth hover effect */
    }

        .hm-searchbox .li-btn:hover {
            background-color: #e6be00; /* Darker yellow on hover */
            color: #000000;
        }


/* -------- Bottom Navigation Bar Styling -------- */
.header-bottom {
    background-color: #222222; /* Dark background */
}

    .header-bottom.header-sticky.stick { /* When sticky */
        background-color: #222222;
        /* Add other sticky styles if needed (e.g., shadow) */
        /* box-shadow: 0 2px 5px rgba(0,0,0,0.1); */
    }

    .header-bottom .hb-menu nav > ul > li > a {
        color: #ffffff !important;
        padding: 18px 20px; /* Adjust spacing */
        text-transform: uppercase;
        font-weight: bold;
        font-size: 14px; /* Adjust size */
        line-height: normal;
        display: block;
        transition: background-color 0.3s ease; /* Smooth hover effect */
    }

        .header-bottom .hb-menu nav > ul > li > a:hover {
            background-color: #444444; /* Hover background */
            color: #ffffff !important;
        }

    /* Dropdown menu styling */
    .header-bottom .hb-menu nav ul li.dropdown-holder .hb-dropdown {
        background-color: #333333; /* Dropdown background */
        border: 1px solid #444444;
        border-top: none; /* Remove top border if it touches main nav */
        box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        margin-top: 0; /* Adjust if there's a gap */
    }

        .header-bottom .hb-menu nav ul li.dropdown-holder .hb-dropdown li a {
            color: #e0e0e0 !important; /* Dropdown link color */
            padding: 10px 15px; /* Dropdown item padding */
            text-transform: none; /* Usually dropdowns are not uppercase */
            font-weight: normal;
            font-size: 13px;
            border-bottom: 1px solid #444444; /* Separator line */
            transition: background-color 0.3s ease, color 0.3s ease;
        }

        .header-bottom .hb-menu nav ul li.dropdown-holder .hb-dropdown li:last-child a {
            border-bottom: none; /* Remove border from last item */
        }

        .header-bottom .hb-menu nav ul li.dropdown-holder .hb-dropdown li a:hover {
            background-color: #555555; /* Dropdown item hover background */
            color: #ffffff !important; /* Dropdown item hover text color */
        }


/* -------- Responsive Adjustments -------- */

/* Adjustments for Tablets (Example: < 992px) */
@media (max-width: 991.98px) {
    .header-middle .logo .main-logo {
        max-width: 150px; /* Slightly smaller logo */
        max-height: 100px;
    }

    .hm-searchbox {
        max-width: 450px; /* Adjust search width */
        height: 42px;
    }

        .hm-searchbox .nice-select,
        .hm-searchbox input[type="text"],
        .hm-searchbox .li-btn {
            height: 42px;
            font-size: 13px;
        }

        .hm-searchbox .nice-select {
            padding: 0 25px 0 12px;
            line-height: 42px;
        }

        .hm-searchbox .li-btn {
            padding: 0 15px;
        }

    /* Top bar items might need adjustments */
    .header-top .header-top-right .ht-menu > li {
        padding-left: 8px;
        margin-left: 8px;
    }
    .mean-container a.meanmenu-reveal span {
        background: #000000 !important; /* Yahan apna desired color code daalein (e.g., #000000 for black) */
    }

}

/* Adjustments for Mobile (Example: < 768px) */
@media (max-width: 767.98px) {
    .header-top {
        font-size: 12px; /* Smaller font */
    }

        .header-top .header-top-left,
        .header-top .header-top-right {
            /* Stack top bar items if needed by theme, or adjust layout */
            text-align: center;
            width: 100%;
            margin-bottom: 5px;
        }

            .header-top .header-top-right .ht-menu {
                justify-content: center; /* Center align menu items */
            }

                .header-top .header-top-right .ht-menu > li {
                    padding-left: 8px;
                    margin-left: 8px;
                }


    .header-middle .row {
        align-items: center; /* Keep logo and potential mobile toggle aligned */
    }

    .header-middle .col-lg-3 { /* Logo column */
        width: auto; /* Let logo define width */
        flex-grow: 0;
    }

    .header-middle .col-lg-9 { /* Search Area column */
        width: 100%;
        flex-grow: 1;
        padding-left: 15px !important; /* Ensure some space */
        padding-right: 15px !important;
        margin-top: 15px; /* Add space below logo/toggle */
    }

    .header-middle-right-area {
        justify-content: center; /* Center search on mobile */
    }

    .hm-searchbox {
        max-width: none; /* Allow full width */
        margin-right: 0;
        height: 40px;
    }

        .hm-searchbox .nice-select,
        .hm-searchbox input[type="text"],
        .hm-searchbox .li-btn {
            height: 40px;
            font-size: 12px;
        }

        .hm-searchbox .nice-select {
            padding: 0 20px 0 10px;
            line-height: 40px;
        }

        .hm-searchbox .li-btn {
            padding: 0 12px;
        }


    /* Mobile Menu (MeanMenu) Styling Adjustments (if needed) */
    /* MeanMenu default styles are in meanmenu.css, override here if necessary */
    .mean-container .mean-nav {
        background-color: #333333; /* Match desktop dropdown background */
        margin-top: 0; /* Adjust spacing */
    }

        .mean-container .mean-nav ul li a {
            color: #e0e0e0; /* Match dropdown link color */
            border-top: 1px solid #444444; /* Separator */
            font-size: 13px;
        }

            .mean-container .mean-nav ul li a:hover {
                background: #555555;
                color: #ffffff;
            }

    .mean-container .mean-bar {
        background: #f8f8f8; /* Background for the bar holding the toggle */
        padding: 7px 2px; /* Adjust padding */
        min-height: auto;
        

    }

    .mean-container a.meanmenu-reveal {
        color: #333333; /* Hamburger icon color */
        border: 1px solid #cccccc;
        padding: 5px 8px; /* Adjust padding */
    }

        .mean-container a.meanmenu-reveal span {
            background: #333333; /* Hamburger icon lines color */
        }
}

@media (max-width: 991.98px) {

    /* Step 1: Header middle container ko relative position dein taake toggle iske hisaab se position ho */
    .header-middle .container {
        position: relative;
        /* Agar pehle se relative hai to is line ki zaroorat nahi */
    }

    /* Step 2: MeanMenu ke toggle button (.meanmenu-reveal) ko position karein */
    /* Note: Agar aapka toggle button ka class alag hai to use yahan likhein */
    .mean-container a.meanmenu-reveal {
        position: absolute; /* Isko container ke hisab se position karein */
        top: 50%; /* Upar se 50% neeche */
        right: 15px; /* Right side se 15px door */
        transform: translateY(-50%); /* Vertically bilkul center mein laayein */
        margin-top: 0 !important; /* MeanMenu ka default margin override karein */
        /* Aap iski default styling (color, background, border) ko nahi chedenge, sirf position theek karenge */
        z-index: 99; /* Ensure karein ke yeh search bar ke upar aaye (agar zaroorat ho) */
    }

    /* Step 3: (Optional) Agar toggle logo ke qareeb aa raha hai, to logo ko thoda space dein */
    .header-middle .logo {
        /* Example: padding-right: 45px; */ /* Adjust value if needed */
    }

    /* Step 4: Search bar wali column ko adjust karein taake woh toggle se na takraye */
    /* Aksar yeh zaroori nahi hota agar toggle bilkul right par ho, lekin check kar lein */
    .header-middle .col-lg-9 { /* Column containing search */
        /* Shayad isko thoda right padding deni parhe agar content overlap ho raha hai */
        /* Example: padding-right: 60px; */ /* Adjust if needed */
    }

    .header-middle .hm-searchbox {
        margin-right: 0; /* Ensure search box doesn't have extra margin pushing it */
    }
}
