:root {
	--wd-text-font: "Electrolize", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: rgb(0,0,0);
	--wd-text-font-size: 15px;
	--wd-title-font: "Electrolize", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 400;
	--wd-title-color: #242424;
	--wd-entities-title-font: "Electrolize", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 400;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: "Electrolize", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Electrolize", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 400;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Electrolize", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 400;
	--wd-header-el-transform: uppercase;
	--wd-header-el-font-size: 13px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(221,153,51);
	--wd-alternative-color: #fbbc34;
	--btn-default-bgcolor: #f7f7f7;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(38,38,38);
	--btn-accented-bgcolor-hover: rgb(25,25,25);
	--wd-form-brd-width: 2px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: #242424;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(0,0,0);
	background-image: none;
}
:is(.page, .search-no-results, .error404) :is(.wd-page-content, .whb-header) {
	background-color: rgb(255,255,255);
	background-image: none;
}
.woodmart-archive-shop:not(.single-product) :is(.wd-page-content, .whb-header) {
	background-color: rgb(255,255,255);
	background-image: none;
}
.single-product :is(.wd-page-content, .whb-header) {
	background-color: rgb(255,255,255);
	background-image: none;
}
.woodmart-archive-blog :is(.wd-page-content, .whb-header) {
	background-color: rgb(255,255,255);
	background-image: none;
}
.single-post :is(.wd-page-content, .whb-header) {
	background-color: rgb(255,255,255);
	background-image: none;
}
.woodmart-archive-portfolio :is(.wd-page-content, .whb-header) {
	background-color: rgb(255,255,255);
	background-image: none;
}
.single-portfolio :is(.wd-page-content, .whb-header) {
	background-color: rgb(255,255,255);
	background-image: none;
}
.wd .product-label.onsale {
	background-color: rgb(135,135,135);
	color: rgb(255,255,255);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1600px;
--wd-form-brd-radius: 0px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 35px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 35px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--wd-brd-radius: 0px;
}

@media (min-width: 1600px) {
section.elementor-section.wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}


.wd-page-title {
background-color: #0a0a0a;
}

/* ==========================================================================
   MASTER RULES: APPLIES TO MAIN SHOP & ALL CATEGORY PAGES
   ========================================================================== */

/* 1. Remove card borders and shadows */
.post-type-archive-product .product-grid-item,
.tax-product_cat .product-grid-item,
.post-type-archive-product .product-wrapper,
.tax-product_cat .product-wrapper {
    box-shadow: none !important;
    border: none !important;
}

/* 2. BRUTE-FORCE ACTIVE PRICING TO BLACK */
.post-type-archive-product .price, .tax-product_cat .price,
.post-type-archive-product .price *, .tax-product_cat .price *,
.post-type-archive-product .amount, .tax-product_cat .amount,
.post-type-archive-product bdi, .tax-product_cat bdi,
.post-type-archive-product .woocommerce-Price-amount, .tax-product_cat .woocommerce-Price-amount {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
}

/* 3. Keep ONLY the original strikethrough (old retail price) a dim gray */
.post-type-archive-product del, .tax-product_cat del,
.post-type-archive-product del *, .tax-product_cat del *,
.post-type-archive-product del bdi, .tax-product_cat del bdi {
    color: #555555 !important;
    -webkit-text-fill-color: #555555 !important;
    text-decoration: line-through !important;
}

/* 4. Completely hide product category tags site-wide */
.wd-product-cats,
.product-cats,
.wd-product-cats *,
.product-cats * {
    display: none !important;
}


/* ==========================================================================
   HOME PAGE BACKGROUND
   ========================================================================== */
body.home,
body.home #wrapper,
body.home .website-wrapper,
body.home .main-page-wrapper {
    background-color: #000 !important;
}


/* ==========================================================================
   HEADER SEARCH BAR ICON COLOR FIX (BLACK)
   ========================================================================== */
.wd-header-search a,
.wd-search-opener,
.search-button {
    color: #000000 !important;
}

.wd-header-search svg,
.wd-search-opener svg,
.search-button svg,
.wd-header-search svg path,
.wd-search-opener svg path,
.search-button svg path {
    fill: #000000 !important;
    stroke: #000000 !important;
}

.wd-header-search a:hover svg path,
.wd-search-opener:hover svg path {
    fill: #333333 !important;
    stroke: #333333 !important;
}


/* ==========================================================================
   SINGLE PRODUCT PAGE STYLES (MAIN PRODUCT SUMMARY ONLY)
   ========================================================================== */
.single-product .elementor-widget-woocommerce-product-title {
    text-align: center;
}

/* Scoped strictly to the main product block so it doesn't inflate related products */
.single-product .summary .price,
.single-product .entry-summary .price {
    text-align: center;
    font-size: 34px !important;
    margin-bottom: 25px;
}

.single-product .woocommerce-product-details__short-description {
    text-align: center;
    line-height: 2;
    font-size: 17px;
}

.single-product .variations {
    justify-content: center;
}

.single-product .single_add_to_cart_button {
    background: #707070;
    padding: 15px 40px;
    border-radius: 0;
}

.single-product .quantity {
    margin-right: 15px;
}


/* ==========================================================================
   CUSTOM QUANTITY BUTTONS (+ / - PILL SHAPES IN BLACK)
   ========================================================================== */
.quantity {
    border: none !important;
    background: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
}

.quantity input[type="number"] {
    background: transparent !important;
    border: none !important;
    width: 35px !important;
    font-size: 16px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.quantity input.plus, 
.quantity input.minus,
.quantity .plus,
.quantity .minus {
    color: #ffffff !important;
    background-color: #000000 !important;
    border: none !important;
    border-radius: 50px !important;
    width: 42px !important;
    height: 42px !important;
    font-size: 18px !important;
    font-weight: bold !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease-in-out !important;
}

.quantity input.plus:hover, 
.quantity input.minus:hover,
.quantity .plus:hover,
.quantity .minus:hover {
    background-color: #222222 !important;
}


/* ==========================================================================
   RELATED PRODUCTS PRICE & TEXT FIX (REDUCE OVERSIZED FONTS)
   ========================================================================== */
.single-product .related.products .price,
.single-product .related.products .price *,
.single-product .related.products .amount,
.single-product .related.products bdi {
    font-size: 18px !important;
    line-height: 1.3 !important;
}

.single-product .related.products del,
.single-product .related.products del * {
    font-size: 14px !important;
}

.single-product .related.products .wd-entities-title a {
    font-size: 14px !important;
}


/* ==========================================================================
   BULLETPROOF CENTER DESIGN FOR ALL PRODUCTS (DESKTOP, TABLET, PHONE)
   ========================================================================== */

/* 1. Force the main product info footer container to center everything block-by-block */
.product-grid-item .wd-product-footer,
.product-grid-item .wd-product-content,
.product-inner .wd-product-footer {
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
}

/* 2. Force product title lines to snap directly into the center */
.product-grid-item .wd-entities-title,
.product-grid-item .wd-entities-title a {
    text-align: center !important;
    justify-content: center !important;
    display: flex !important;
    width: 100% !important;
    margin-bottom: 8px !important;
}

/* 3. RESET PRICING FLEX: Forces old price, currency symbols, and sale price to stick together in the center */
.product-grid-item .price,
.product-grid-item .price *,
.product-grid-item .amount {
    display: inline !important;
    text-align: center !important;
    float: none !important;
}

/* 4. Enforce clean centering and horizontal spacing between elements inside the pricing wrapper */
.product-grid-item .price {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
}

/* Keep the previous price (del) and the active price (ins) sitting side-by-side with a nice gap */
.product-grid-item .price del,
.product-grid-item .price ins {
    display: inline-block !important;
    margin: 0 6px !important;
    float: none !important;
}


/* ==========================================================================
   HEADER & NAVIGATION CLEANUP
   ========================================================================== */
.wd-page-title .wd-nav-product-cat,
.wd-products-tabs,
.wd-btn-show-cat {
    display: none !important;
}

.woocommerce-page .title-size-default {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
}

.woocommerce-page .page-title {
    font-size: 60px !important;
    line-height: 1.1;
}


/* ==========================================================================
   MOBILE UNIFORM BUTTON SPACING FIX (SIMPLE + VARIABLE MATCH)
   ========================================================================== */
@media (max-width: 767px) {
    
    /* Force form blocks and sub-wrappers to use a vertical grid stack */
    form.cart,
    .single_variation_wrap,
    .woocommerce-variation-add-to-cart {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100% !important;
        justify-items: center !important;
        row-gap: 16px !important;
    }

    /* Completely collapse WoodMart's extra empty dynamic variation container box */
    .woocommerce-variation.single_variation {
        display: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Center the quantity pill selection row */
    form.cart .quantity,
    .woocommerce-variation-add-to-cart .quantity {
        display: inline-flex !important;
        margin: 0 auto !important;
    }

    /* Standardize the full width layout for ADD TO CART button on mobile */
    .single_add_to_cart_button,
    form.cart .single_add_to_cart_button,
    .woocommerce-variation-add-to-cart .single_add_to_cart_button {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        height: 48px !important;
    }

    /* Standardize the full width layout for BUY NOW button on mobile */
    .wd-buy-now-btn,
    .wd-buy-now-btn button,
    .single_variation_wrap .wd-buy-now-btn {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        height: 48px !important;
    }

    /* Product short description width fix */
    .elementor-widget-woocommerce-product-short-description,
    .elementor-widget-woocommerce-product-short-description p {
        width: 100% !important;
        max-width: 100% !important;
        white-space: normal !important;
        text-align: left;
        line-height: 1.8;
    }
}@media (max-width: 576px) {
	/* ==========================================================================
   ULTIMATE FLEX-GAP FIXED RESPONSIVE BLOCK FOR VARIABLE PRODUCTS
   ========================================================================== */
@media (max-width: 767px) {
    
    /* 1. Center alignment and spacing for variation attributes */
    table.variations,
    table.variations tbody,
    table.variations tr,
    table.variations td {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        width: 100% !important;
        margin: 0 auto !important;
    }

    /* Sets the specific layout gap between the variation swatches and the button blocks below */
    table.variations {
        margin-bottom: 28px !important; 
    }
    
    /* Center the swatches container wrapper list */
    .variations td.value,
    .wd-swatches-product,
    .wd-swatches {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
        margin: 0 auto !important;
    }

    /* Force the "X Clear" link selection to break below swatches and center cleanly */
    .variations .reset_variations {
        display: block !important;
        text-align: center !important;
        margin: 10px auto 0 auto !important;
        width: 100% !important;
    }

    /* 2. Force the dynamic variable form wrapper to act as a strict vertical column stack */
    .woocommerce-variation-add-to-cart,
    .single_variation_wrap,
    form.cart .variations_button,
    form.cart {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 0 !important; /* Reset layout defaults */
    }

    /* 3. Standardize the Quantity Pill spacing */
    .entry-summary .quantity,
    form.cart .quantity,
    .woocommerce-variation-add-to-cart .quantity {
        display: inline-flex !important;
        width: auto !important;
        min-width: 140px !important;
        margin: 0 auto 24px auto !important; /* Forces the perfect gap below minus/plus icons */
        float: none !important;
    }

    /* 4. Style the ADD TO CART button to push down away from its sibling */
    .single_add_to_cart_button,
    form.cart .single_add_to_cart_button,
    .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    button.wd-add-cart-btn {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: 48px !important;
        margin-top: 0 !important;
        margin-bottom: 16px !important; /* This forces the absolute spacing gap right above Buy Now */
    }

    /* 5. Force the BUY NOW container button block to sit cleanly underneath */
    .wd-buy-now-btn,
    .wd-buy-now-btn button,
    div.wd-buy-now-btn,
    .woocommerce-variation-add-to-cart + .wd-buy-now-btn,
    .single_variation_wrap .wd-buy-now-btn {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 6. Clean out any empty dynamic variation text boxes causing extra spaces */
    .woocommerce-variation.single_variation {
        margin: 0 !important;
        padding: 0 !important;
    }
}






/* ==========================================================================
   MOBILE FULL-WIDTH EDGE-TO-EDGE PRODUCT IMAGES
   ========================================================================== */
@media (max-width: 767px) {
    
    /* 1. Force the product image column to stretch edge-to-edge */
    .woocommerce-product-gallery,
    .wd-single-images,
    .product-images,
    .single-product-page .col-md-6:first-child,
    .single-product-page .col-sm-12:first-child {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: calc(-50vw + 50%) !important;
        margin-right: calc(-50vw + 50%) !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* 2. Ensure the main image track inside the slider conforms to edge borders */
    .wd-carousel-inner,
    .owl-stage-outer,
    .slick-list,
    .woocommerce-product-gallery__image img,
    .wd-gallery-images img {
        width: 100% !important;
        max-width: 100% !important;
        border-radius: 0 !important; /* Strips out rounded corners for a sharp bleed */
    }

    /* 3. Keep thumbnails nicely scaled edge-to-edge if they sit inside the wrapper */
    .thumbnails,
    .wd-images-thumbnails {
        width: 100% !important;
        padding-left: 15px !important;  /* Gives thumbnails a tiny bit of breathing room on the edges */
        padding-right: 15px !important;
        box-sizing: border-box !important;
    }
}
}

