/*
Theme Name:   	Storefront Child Theme
Theme URI:    	https://github.com/stuartduff/storefront-child-theme
Author:       	Stuart Duff
Author URI:		http://stuartduff.com
Template:     	storefront
Description:  	This is a blank child theme for WooThemes StoreFront theme
Version:      	1.0.0
License:      	GNU General Public License v2 or later
License URI:  	http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  	storefront
Tags:         	black, white, light, two-columns, left-sidebar, right-sidebar, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, featured-images, full-width-template, threaded-comments, accessibility-ready
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
Storefront is based on Underscores http://underscores.me/, (C) 2012-2014 Automattic, Inc.
Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer http://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
FontAwesome License: SIL Open Font License - http://scripts.sil.org/OFL
Images License: GNU General Public License v2 or later
*/
/*
 * Add your own custom css below this text.
 */



/* --RESTRICTED CATEGORIES STYLING-- */

/* Quantity, Add to Cart and restriction message layout */
.single-product form.cart
.woocommerce-variation-add-to-cart:has(
    .category-combination-restrictions-restricted-message
) {
display: flex!important;
flex-wrap: wrap!important;

}


/* Keep quantity and button together */
.single-product form.cart
.woocommerce-variation-add-to-cart:has(
    .category-combination-restrictions-restricted-message
) .quantity,
.single-product form.cart
.woocommerce-variation-add-to-cart:has(
    .category-combination-restrictions-restricted-message
) .single_add_to_cart_button {
    flex: 0 0 auto;
}

/* Restricted product error message */
.single-product form.cart
.category-combination-restrictions-restricted-message {

	flex: 0 0 100% !important;
    width: 100%;
    clear: both;
    order: 99;
    box-sizing: border-box;
    margin: 12px 0 0;
    padding: 12px 16px;
    background: #fff5f2;
    border-left: 3px solid #e2401c;
    border-radius: 4px;
    color: #a52a12;
    font-size: 14px;
    line-height: 1.5;
}

.bfproducts .category-combination-restrictions-restricted-message {
    margin: 10px 15px 15px;
}


/* -- PRODUCT SPAGE STYLING */
/* Product titles and prices */
.bfproducts ul.products li.product h2,
.bfproducts ul.products li.product .product__price,
.bfproducts ul.products li.product .price {
    margin-left: 15px;
    margin-right: 15px;
}

/* Add to Basket button positioning */
.bfproducts .woocommerce-loop-product__buttons {
    padding: 0 15px 15px;
    box-sizing: border-box;
}

.add_to_cart_button {
    margin-right: 10px;
}


/* --PERFECT PAIRS-- */

/* Product titles and prices */
.perfect-pairs ul.products li.product h2,
.perfect-pairs ul.products li.product .price,
.perfect-pairs ul.products li.product .product__price {
    margin-left: 15px;
    margin-right: 15px;
}

/* Add to Basket button spacing */
.perfect-pairs .woocommerce-loop-product__buttons {
    padding: 0 15px 15px;
    box-sizing: border-box;
}

/* Product image container */
.perfect-pairs ul.products li.product img {
    
    object-fit: contain;
    object-position: center;
    display: block;
    margin: 0 auto;
    padding: 0;
}

.perfect-pairs .product img {
    height: 150px;
    object-fit: cover;
}

.perfect-pairs .product {
    min-height: auto;
}




/* Keep cards compact */
.perfect-pairs ul.products li.product {
    min-height: 0; 
}


/* --PRODUCT CARD IMAGES-- */

.bfproducts ul.products li.product img {
    width: 100%;
    max-width: none;
    height: 320px;
    object-fit: cover;
    object-position: center;
    display: block;
    margin: 0;
    padding-bottom: 15px;
}

/* --PRODUCT CARD IMAGES - MOBILE-- */

@media (max-width: 767px) {
    .bfproducts ul.products li.product img {
        height: 180px;
        object-fit: cover;
    }
}

/* --PRODUCT VARIATIONS-- */

/* Variation dropdown table */
.bfproducts .woocommerce-loop-product__buttons .variations {
    width: auto;
    margin: 0 0 12px;
    padding: 0;
    background: #fff;
}

/* Remove nested variation spacing */
.bfproducts .woocommerce-loop-product__buttons .variations tbody,
.bfproducts .woocommerce-loop-product__buttons .variations tr,
.bfproducts .woocommerce-loop-product__buttons .variations td {
    padding: 0;
    background: #fff;
}

/* Quantity and Add to Basket alignment */
.bfproducts .woocommerce-loop-product__buttons
.single_variation_wrap .woocommerce-variation-add-to-cart {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0;
    margin: 0;
}

/* Spacing between variation label and dropdown */
.bfproducts .woocommerce-loop-product__buttons
.variations td.label {
    padding-right: 12px;
}

/* --PRODUCT VARIATIONS - MOBILE-- */

@media (max-width: 767px) {

    /* Stack Weight label and dropdown */
    .bfproducts .woocommerce-loop-product__buttons
    .variations td.label,
    .bfproducts .woocommerce-loop-product__buttons
    .variations td.value {
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 0;
    }

    /* Space between label and dropdown */
    .bfproducts .woocommerce-loop-product__buttons
    .variations td.label {
        padding-bottom: 6px;
    }

    /* Prevent dropdown exceeding its container */
    .bfproducts .woocommerce-loop-product__buttons
    .variations select {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    /* Allow quantity and button to stack if needed */
    .bfproducts .woocommerce-loop-product__buttons
    .single_variation_wrap .woocommerce-variation-add-to-cart {
        flex-wrap: wrap;
    }
}

/* --PRODUCT BUTTONS-- */

/* All product Add to Basket buttons */
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product button.button,
.woocommerce ul.products li.product .single_add_to_cart_button {
    color: #fff !important;
    white-space: nowrap;
}

/* Mobile button adjustments */
@media (max-width: 767px) {

    .woocommerce ul.products li.product a.button,
    .woocommerce ul.products li.product button.button,
    .woocommerce ul.products li.product .single_add_to_cart_button {
        font-size: 12px;
        padding: 12px 10px;
        white-space: nowrap;
    }
}

/*-- 50 MINIMUM SPEND --*/

.bf-minimum-spend {
    background: #f5f0e6;
    border-radius: 8px;
    padding: 15px;
    margin: 15px 0;
    color: #005f50;
    font-size: 13px;
    line-height: 1.5;
}

.bf-minimum-spend strong {
    display: block;
    font-size: 14px;
    margin-bottom: 6px;
}

.bf-minimum-spend p {
    margin: 0 0 12px;
}

.bf-minimum-progress {
    height: 6px;
    background: #d8cda8;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 7px;
}

.bf-minimum-progress > div {
    height: 100%;
    background: #006b57;
    border-radius: 20px;
}

.bf-minimum-spend small {
    display: block;
    font-size: 11px;
    opacity: 0.8;
}

/* View basket button */
.woocommerce a.added_to_cart {
    margin: 10px 0px;
    border-radius: 8px;
    display: inline-block;
}


/*-- DEPOSIT WORDING CSS --*/

.bf-deposit-notice {
    background-color: #006b57;
    color: #ffffff;
    padding: 18px 22px;
    border-radius: 8px;
    margin: 0 0 24px;
    font-size: 14px;
    line-height: 1.6;
    box-sizing: border-box;
}

.bf-deposit-notice strong {
    display: block;
    color: #ffffff;
    font-size: 16px;
    margin-bottom: 5px;
}

.bf-deposit-notice p {
    color: #ffffff;
    margin: 0;
}

/* -- Hide different delivery address for pickup -- */
body.bf-pickup #ship-to-different-address {
    display: none !important;
}
