#masthead {
    background: #FCDF00 !important;
}

.main-navigation ul.menu>li>a,
.main-navigation ul.nav-menu>li>a,
.site-header-cart .cart-contents {
    color: #713e11 !important;
}

.woocommerce-product-search .search-field::placeholder {
    color: #713e11;
    opacity: 1;
    /* This ensures the color is solid, not faded */
}

.widget_search form:not(.wp-block-search)::before,
.widget_product_search form:not(.wp-block-search)::before {
    color: #713e11;
}

a:focus,
a:active {
    outline: none !important;
    box-shadow: none !important;
}


.site-header .site-branding,
.site-header .site-search,
.site-header .custom-logo-link {
    margin-bottom: 0;
}



header.site-header {
    padding-top: 1.75em;
    padding-bottom: 0;
    border-bottom: none !important;
}



@media(max-width:1100px) {
    header#masthead {
        padding-left: 20px;
        padding-right: 20px;
    }
}





















@media(max-width: 767px) {
    header.site-header {
        padding-top: 1.2em;
        padding-bottom: 1.2em;
    }

    .site-header .custom-logo-link img {
        width: 100%;
        max-width: 195px !important;
    }
}



@media (max-width: 550px) {

    /* 1. Reduce the general header padding on the left */
    header#masthead {
        padding-left: 20px;
    }

    .storefront-primary-navigation .col-full {
        margin-left: 0;
        margin-right: 0;
    }

    /* Remove default Storefront margins and padding to fix logo spacing */
    header#masthead>.col-full {
        padding-left: 0;
        padding-right: 0;
        margin-left: 0;
        margin-right: 0;
    }
}




@media (min-width: 1000px) and (max-width: 1110px) {

    /* Using !important guarantees this will beat the main theme */
    .main-navigation ul.menu>li>a,
    .main-navigation ul.nav-menu>li>a {
        font-size: 14px !important;
    }
}

/* Force mobile header layout for screens up to 1000px */
@media (max-width: 1000px) {

    /* 1. Make the header a Grid container */
    header.site-header {
        position: relative !important; /* Required for absolute positioning of dropdown */
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        /* Left col takes remaining space, right col hugs button */
        align-items: center !important;
        padding: 1.2em 2.617924em !important;
        /* Move side padding up from col-full */
    }

    /* Remove clearfixes from header */
    header.site-header::before,
    header.site-header::after {
        display: none !important;
    }

    /* 2. Flatten all intermediate wrappers */
    header.site-header>.col-full,
    .storefront-primary-navigation,
    .storefront-primary-navigation>.col-full,
    .main-navigation {
        display: contents !important;
    }

    /* Remove clearfixes from flattened containers */
    .col-full::before,
    .col-full::after,
    .storefront-primary-navigation::before,
    .storefront-primary-navigation::after,
    .main-navigation::before,
    .main-navigation::after {
        display: none !important;
    }

    /* 3. Hide unwanted desktop elements (and skip links), and prevent default mobile menu duplication */
    .site-search,
    .site-header-cart,
    .storefront-product-search,
    .skip-link,
    .handheld-navigation {
        display: none !important;
        grid-column: none !important;
    }

    /* 4. Logo Layout (Grid Column 1) */
    .site-branding {
        display: block !important;
        grid-column: 1 / 2 !important;
        grid-row: 1 !important;
        justify-self: stretch !important;
        /* Fill the 1fr column */
        width: 100% !important;
        max-width: 195px !important;
        min-width: 120px !important;
        /* Prevent excessive shrinking on tiny screens */
        margin: 0 !important;
    }

    .site-header .custom-logo-link {
        display: block !important;
        width: 100% !important;
    }

    .site-header .custom-logo-link img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    /* 5. Menu Button (Grid Column 2) */
    button.menu-toggle {
        display: block !important;
        grid-column: 2 / 3 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        margin: 0 !important;
        padding: .618em 1em .618em 2.618em !important;
        /* Large left padding prevents icon overlapping text */
        background-color: #fff !important;
        color: #333 !important;
        border: 1px solid #333 !important;
        float: none !important;
        width: auto !important;
    }

    /* Hide the desktop menu items initially */
    .primary-navigation,
    div.menu {
        display: none !important;
    }


    /* 6. Toggled Dropdown Menu (Overlays the slider instead of pushing) */
    .main-navigation.toggled .primary-navigation,
    .main-navigation.toggled div.menu {
        display: block !important;
        position: absolute !important;
        top: 100% !important; /* Starts exactly at the bottom of the header */
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: 100vh !important; /* Fills the entire screen height below the header */
        background-color: #FCDF00 !important; /* Match header color */
        z-index: 9999 !important; /* Ensure it stays above the slider */
        padding: 0 2.617924em 1em 2.617924em !important; /* Match header side padding */
        box-shadow: 0 4px 6px rgba(0,0,0,0.1) !important; /* Optional: adds a slight shadow to separate it from the slider */
    }

    /* Lock page scrolling when the mobile menu is open */
    body:has(.main-navigation.toggled) {
        overflow: hidden !important;
    }

    /* Force menu items to stack vertically */
    .main-navigation.toggled ul.menu>li,
    .main-navigation.toggled ul.nav-menu>li {
        display: block !important;
        width: 100% !important;
        float: none !important;
        text-align: left !important;
    }

    .main-navigation.toggled ul.menu>li>a,
    .main-navigation.toggled ul.nav-menu>li>a {
        display: block !important;
        padding: 1em 0 !important;
        border-bottom: 1px solid rgba(113, 62, 17, 0.1) !important;
    }
}

/* 7. Adjust side padding for very small mobile screens */
@media (max-width: 568px) {
    header.site-header {
        padding: 1.2em 20px !important;
    }
    
    .main-navigation.toggled .primary-navigation,
    .main-navigation.toggled div.menu {
        padding: 0 20px 1em 20px !important;
    }
}