/* Triple A Welds Custom Styles - Force Overrides */

/* Header Branding */
.site-header {
    background-color: #2c2c2c !important;
    color: #ffffff !important;
}

.site-header a,
.site-header h1,
.site-header .site-title a {
    color: #ffffff !important;
}

/* Navigation Links */
.main-navigation ul li a {
    color: #ffffff !important;
}

.main-navigation ul li a:hover {
    color: #ff6600 !important;
}

/* Footer Branding */
.site-footer {
    background-color: #2c2c2c !important;
    color: #dddddd !important;
}

.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6 {
    color: #ffffff !important;
}

/* Buttons & Accents */
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.added_to_cart,
.widget a.button,
.site-header-cart .cart-contents {
    background-color: #ff6600 !important;
    color: #ffffff !important;
    border-color: #ff6600 !important;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.button:hover,
.added_to_cart:hover,
.widget a.button:hover {
    background-color: #e55c00 !important;
    /* Slightly darker orange */
    color: #ffffff !important;
}

/* Links */
a {
    color: #ff6600;
}

/* Sidebar Layout - Force Right Sidebar on Shop */
body.post-type-archive-product .content-area,
body.tax-product_cat .content-area {
    float: left;
    width: 73.9130434783%;
    margin-right: 4.347826087%;
}

body.post-type-archive-product .widget-area,
body.tax-product_cat .widget-area {
    float: right;
    width: 21.7391304348%;
    display: block !important;
    /* Force visibility */
}

/* Full width fix if container is constrained */
.col-full {
    max-width: 1200px;
}

/* Fix Overflow Issue causing hidden dropdowns */
.site {
    overflow-x: visible !important;
}

/* Widget Styles (Layered Nav) */
.widget_layered_nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0;
    list-style: none;
}

/* Main Navigation Dropdowns - High Specificity Override */
.main-navigation ul.menu ul.sub-menu,
.main-navigation ul.nav-menu ul.sub-menu,
.primary-navigation ul.menu ul.sub-menu,
.primary-navigation ul.nav-menu ul.sub-menu {
    background-color: #2c2c2c !important;
    color: #ffffff !important;
    border: 1px solid #444 !important;
}

.main-navigation ul.menu ul.sub-menu li {
    padding: 0 !important;
}

/* The Links (Text) - DEFAULT STATE */
.main-navigation ul.menu ul li a,
.main-navigation ul.nav-menu ul li a,
.primary-navigation ul.menu ul li a,
.primary-navigation ul.nav-menu ul li a {
    color: #ffffff !important;
    /* Force White */
    background-color: #2c2c2c !important;
    /* Force Dark Grey */
    border-bottom: 1px solid #3d3d3d;
}

/* The Links - HOVER STATE */
.main-navigation ul.menu ul li a:hover,
.main-navigation ul.nav-menu ul li a:hover,
.primary-navigation ul.menu ul li a:hover,
.primary-navigation ul.nav-menu ul li a:hover {
    background-color: #ff6600 !important;
    /* Orange */
    color: #ffffff !important;
}

/* Force Block Buttons to be Orange */
.wp-block-button__link {
    background-color: #ff6600 !important;
    color: #ffffff !important;
    border: none !important;
}

.wp-block-button__link:hover {
    background-color: #e55c00 !important;
    color: #ffffff !important;
}

.widget_layered_nav ul li {
    margin: 0 !important;
}

.widget_layered_nav ul li a {
    display: inline-block;
    padding: 6px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background-color: #f9f9f9;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    transition: all 0.2s ease;
}




/* --- HEADER REFINEMENTS (JUNE.SO SINGLE ROW STYLE - NUCLEAR FIX) --- */

/* 1. Global Header Container Reset */
.site-header {
    background-color: #1a1a1a !important;
    border-bottom: 1px solid #333;
    padding: 0 !important;
    margin-bottom: 0 !important;
    position: relative;
    z-index: 999999;
}

/* Force Flex Row on the main container */
.site-header .col-full {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    max-width: 98% !important;
    width: 98% !important;
    height: 70px !important;
    position: relative;
    overflow: visible !important;
}

/* 2. LOGO - Force it to be small and on the left */
.site-branding {
    order: 1 !important;
    margin: 0 40px 0 0 !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    width: auto !important;
    float: none !important;
    display: block !important;
    text-align: left !important;
}

.site-branding .site-title {
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    margin: 0 !important;
    line-height: 1 !important;
    width: auto !important;
}

.site-branding .site-description {
    display: none !important;
}

/* 3. MENU - Force it to take available space */
.main-navigation {
    order: 2 !important;
    flex-grow: 1 !important;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
}

/* The List Container */
.main-navigation ul.menu,
.main-navigation ul.nav-menu {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

/* Top Level Items */
.main-navigation ul.menu>li,
.main-navigation ul.nav-menu>li {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    width: auto !important;
    float: none !important;
    /* Kill Storefront floats */
}

.main-navigation ul.menu>li>a,
.main-navigation ul.nav-menu>li>a {
    display: inline-flex !important;
    align-items: center;
    padding: 0 15px !important;
    height: 70px !important;
    color: #ccc !important;
    font-weight: 500;
    font-size: 0.95em;
    background: transparent !important;
    border: none !important;
}

.main-navigation ul.menu>li>a:hover {
    color: #fff !important;
}

/* Icons */
.taw-nav-icon {
    display: inline-flex;
    align-items: center;
    margin-right: 8px;
    margin-bottom: 2px;
}

.taw-nav-icon svg {
    width: 16px;
    height: 16px;
    opacity: 0.7;
}

.main-navigation ul.menu>li>a:hover .taw-nav-icon svg {
    opacity: 1;
}

/* 4. DROPDOWNS - THE GRID KILLER */
.main-navigation ul.menu ul.sub-menu,
.main-navigation ul.nav-menu ul.sub-menu {
    display: none !important;
    position: absolute !important;
    top: 70px !important;
    left: 0 !important;
    background-color: #222 !important;
    border: 1px solid #333 !important;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.5);
    padding: 10px 0 !important;
    width: 240px !important;
    /* Fixed Width */
    min-width: 240px !important;
    z-index: 99999 !important;
    float: none !important;
}

/* Show on hover */
.main-navigation ul.menu li:hover>ul.sub-menu,
.main-navigation ul.nav-menu li:hover>ul.sub-menu {
    display: block !important;
    /* Start with block */
}

/* The Sub-Menu Items (Kill the 50% width) */
.main-navigation ul.menu ul.sub-menu li,
.main-navigation ul.nav-menu ul.sub-menu li {
    width: 100% !important;
    /* Force full width */
    float: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

.main-navigation ul.menu ul.sub-menu li a,
.main-navigation ul.nav-menu ul.sub-menu li a {
    display: block !important;
    /* Block link */
    width: 100% !important;
    padding: 10px 20px !important;
    height: auto !important;
    line-height: 1.4;
    color: #aaa !important;
    border-bottom: 1px solid #2a2a2a !important;
    text-align: left !important;
}

.main-navigation ul.menu ul.sub-menu li a:last-child {
    border-bottom: none !important;
}

.main-navigation ul.menu ul.sub-menu li a:hover,
.main-navigation ul.nav-menu ul.sub-menu li a:hover {
    background-color: #ff6600 !important;
    color: #fff !important;
}

/* 5. SEARCH (Order 3) */
.site-search {
    order: 3 !important;
    margin: 0 15px 0 0 !important;
    width: auto !important;
    float: none !important;
}

.site-search .widget_product_search form input[type="search"],
.site-search .widget_product_search form input[type="text"] {
    background: #2a2a2a;
    border: 1px solid #333;
    border-radius: 20px;
    padding: 8px 35px 8px 15px;
    color: #fff;
    width: 180px;
    transition: width 0.3s ease;
}

.site-search .widget_product_search form input:focus {
    background: #333;
    width: 240px;
    border-color: #555;
}

/* 6. CART (Order 4) */
.site-header-cart {
    order: 4 !important;
    margin: 0 !important;
    width: auto !important;
    float: none !important;
    padding: 0 !important;
}

/* Cart Pill Styling */
.site-header-cart .cart-contents {
    display: flex !important;
    align-items: center;
    background: #222 !important;
    border: 1px solid #333 !important;
    padding: 0 12px !important;
    /* Adjusted padding */
    border-radius: 20px;
    height: 32px;
    /* Fixed height for alignment */
    line-height: 1;
    /* Reset line-height */
}

.site-header-cart .cart-contents:hover {
    background: #ff6600 !important;
    border-color: #ff6600 !important;
    text-decoration: none;
}

.site-header-cart .cart-contents .amount,
.site-header-cart .cart-contents .count {
    color: #fff !important;
    font-weight: 600;
    font-size: 13px;
    margin-left: 5px;
    /* Spacing between icon and text */
}

/* Fix Icon Alignment (Storefront uses ::after for cart icon) */
.site-header-cart .cart-contents::after {
    line-height: 1 !important;
    /* Prevent icon from dropping */
    height: auto !important;
    position: relative;
    top: 1px;
    /* Micro-adjustment */
}

/* Ensure Parent is Relative for Dropdown Positioning */
.site-header-cart {
    position: relative !important;
    /* Essential for absolute dropdown */
}

/* Fix "Squashed" Cart Dropdown & Force Visibility on Top */
.site-header-cart .widget_shopping_cart {
    position: absolute !important;
    top: 100% !important;
    right: 0 !important;
    z-index: 999999 !important;
    /* Nuclear Z-Index */
    width: 300px !important;
    /* Force wider dropdown */
    padding: 20px !important;
    background: #fff !important;
    border: 1px solid #ddd;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    text-align: left;
    /* Reset text align */
    display: none;
    /* Hidden by default */
}

/* Show Dropdown on Hover */
.site-header-cart:hover .widget_shopping_cart,
.site-header-cart.focus .widget_shopping_cart {
    display: block !important;
}

.site-header-cart .widget_shopping_cart .cart_list li {
    padding-left: 0 !important;
    /* Reset padding */
    display: flex;
    /* Flex layout for items */
    align-items: center;
    gap: 10px;
}





/* --- HEADER REFINEMENTS (TAW CUSTOM LAYOUT - SINGLE ROW) --- */

/* 1. The Main Wrapper */
.taw-header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* Spread Layout: Logo -- Nav -- Actions */
    width: 100%;
    height: 60px;
    /* Comfortable single row height */
    padding: 0 20px;
    box-sizing: border-box;
    overflow: visible;
}

/* Remove Storefront's default header spacing */
.site-header {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

.site-header .col-full {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
    height: auto !important;
    /* Override theme default 70px */
}

/* 2. Left Section (Logo) */
.taw-header-left {
    flex: 0 0 auto;
    margin-right: 30px;
}

.taw-header-left .site-branding {
    margin: 0 !important;
    width: auto !important;
    display: block !important;
    line-height: 1 !important;
}

.taw-header-left .site-title {
    font-size: 1.4rem !important;
    margin: 0 !important;
    line-height: 1 !important;
    padding: 0;
}

/* 3. Center Section (Navigation) */
.taw-header-center {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    /* Or center if preferred */
}

.taw-header-center .main-navigation {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
}

/* 4. Right Section (Actions: Currency, Search, Cart) */
.taw-header-right {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
    height: 100%;
}

/* Reuse styles for inputs/cart inside the right section */
.taw-header-right .widget_product_search {
    margin: 0 !important;
    padding: 0 !important;
    order: 1 !important;
}


.taw-header-right .widget_product_search form {
    margin: 0 !important;
}

/* Search Input */
.taw-header-right input[type="search"],
.taw-header-right input[type="text"] {
    display: block;
    width: 180px;
    height: 32px;
    background: #333;
    border: 1px solid #444;
    color: #fff;
    border-radius: 16px;
    padding: 0 15px;
    font-size: 13px;
    line-height: normal;
    transition: width 0.2s ease;
}

.taw-header-right input[type="search"]:focus,
.taw-header-right input[type="text"]:focus {
    width: 220px;
    background: #444;
    border-color: #666;
}

.taw-header-right .site-header-cart {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1;
    order: 2 !important;
}


.taw-header-right .site-header-cart .cart-contents {
    display: flex;
    align-items: center;
    height: 32px;
    padding: 0 12px !important;
    background: transparent !important;
    border: 1px solid #444 !important;
    border-radius: 16px;
    font-size: 13px;
    line-height: 1;
    white-space: nowrap;
}

.taw-header-right .site-header-cart .cart-contents:hover {
    background: #ff6600 !important;
    border-color: #ff6600 !important;
}

/* Currency Switcher */
.taw-header-right .taw-currency-switcher,
.taw-header-right .taw-currency-bar {
    margin: 0 !important;
    display: flex;
    align-items: center;
    order: 3 !important;
}

/* 3. Center Section (Navigation) */
.taw-header-center {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
}

.taw-header-center .main-navigation {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
    padding: 0 !important;
}

.taw-header-center .main-navigation ul.menu {
    display: flex;
    align-items: center;
    margin: 0 !important;
    padding: 0 !important;
}

.taw-header-center .main-navigation ul li {
    display: inline-flex !important;
    align-items: center;
    position: relative;
    padding: 0 !important;
    margin: 0 !important;
}

.taw-header-center .main-navigation ul li a {
    display: inline-flex !important;
    /* Ensure flex centering works */
    align-items: center;
    height: 50px !important;
    /* Fill container */
    padding: 0 12px !important;
    font-size: 0.9em !important;
    line-height: normal !important;
    /* Let flex handle alignment */
}

/* 4. Dropdown Alignments */
.main-navigation ul.menu ul.sub-menu {
    top: 50px !important;
    /* Match new height */
    /* styles preserved */
    display: none;
    position: absolute;
    left: 0;
    width: 240px;
    background: #222;
    border: 1px solid #333;
    z-index: 9999;
    padding: 10px 0 !important;
}

.main-navigation ul.menu li:hover>ul.sub-menu {
    display: block;
}

.main-navigation ul.menu ul.sub-menu li {
    display: block !important;
    width: 100% !important;
}

/* Remove default background from Storefront header if it exists */