/* =========================================================
   SHOP PAGE
   Hide WooCommerce sorting dropdown and product result count
   ========================================================= */

.woocommerce .woocommerce-ordering,
.woocommerce .woocommerce-result-count {
    display: none !important;
}


/* =========================================================
   HOMEPAGE FEATURED PRODUCTS
   ========================================================= */

/* Reduce the space between the Featured Products heading
   and the product row */
.home .wp-block-woocommerce-product-collection {
    margin-top: 20px !important;
    padding-top: 0 !important;
}

.home .wc-block-product-template,
.home .wc-block-grid__products {
    margin-top: 0 !important;
    padding-top: 0 !important;
    row-gap: 32px !important;
}

/* Reduce gap between search and products on Shop page */
.post-type-archive-product ul.products {
    margin-top: 20px !important;
}
/* Create consistent product cards */
.home .wc-block-product,
.home .wc-block-grid__product {
    display: grid !important;
    grid-template-rows: 330px auto auto auto;
    align-content: start !important;
    gap: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 12px !important;
    text-align: center !important;
}


/* Create a consistent image area */
.home .wc-block-components-product-image,
.home .wc-block-grid__product-image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 330px !important;
    min-height: 0 !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #ffffff !important;
}


/* Show the entire product image without cropping */
.home .wc-block-components-product-image img,
.home .wc-block-grid__product-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
}


/* Keep product titles aligned, including two-line titles */
.home .wc-block-components-product-name,
.home .wc-block-grid__product-title {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    min-height: 3.2em !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    line-height: 1.35 !important;
    text-align: center !important;
}


/* Keep prices aligned without forcing large empty gaps */
.home .wc-block-components-product-price,
.home .wc-block-grid__product-price {
    margin: 0 0 14px !important;
    padding: 0 !important;
    text-align: center !important;
}


/* Keep Add to Cart buttons aligned */
.home .wc-block-components-product-button,
.home .wc-block-grid__product-add-to-cart,
.home .wp-block-button {
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
}


/* Remove unexpected spacing inside product cards */
.home .wc-block-product > *,
.home .wc-block-grid__product > * {
    margin-block-start: 0;
}


/* =========================================================
   RESPONSIVE IMAGE HEIGHTS
   ========================================================= */

@media screen and (max-width: 1100px) {
    .home .wc-block-product,
    .home .wc-block-grid__product {
        grid-template-rows: 270px auto auto auto;
    }

    .home .wc-block-components-product-image,
    .home .wc-block-grid__product-image {
        height: 270px !important;
    }
}

@media screen and (max-width: 600px) {
    .home .wc-block-product,
    .home .wc-block-grid__product {
        grid-template-rows: 300px auto auto auto;
        padding: 0 !important;
    }

    .home .wc-block-components-product-image,
    .home .wc-block-grid__product-image {
        height: 300px !important;
    }
/* Reduce Storefront header logo size */
.site-header .site-branding {
    width: 240px !important;
    max-width: 240px !important;
}

.site-header .site-branding img.custom-logo,
.site-header .custom-logo-link img,
.site-header .custom-logo {
    width: 240px !important;
    max-width: 240px !important;
    height: auto !important;
}

/* Reduce excess vertical space around the logo */
.site-header {
    padding-top: 28px !important;
    padding-bottom: 28px !important;
}
}
/* Mobile header cleanup */
@media (max-width: 768px) {

    .site-branding img.custom-logo {
        max-width: 180px !important;
        height: auto !important;
    }

    .site-header {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .site-branding {
        margin-bottom: 0 !important;
    }

    .site-header .custom-logo-link {
        margin-bottom: 0 !important;
    }
}
/* WooCommerce Blocks */
.wp-block-woocommerce-product-collection {
    margin-top: 20px !important;
}/* Center Featured Products grid on homepage */
.home .woocommerce ul.products,
.home ul.products {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    column-gap: 3% !important;
    row-gap: 32px !important;
}

/* Four evenly centered products on desktop */
.home .woocommerce ul.products li.product,
.home ul.products li.product {
    float: none !important;
    clear: none !important;

    width: 22.5% !important;
    margin: 0 !important;

    text-align: center !important;
}

/* Center product images */
.home ul.products li.product img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Mobile: one centered product per row */
@media (max-width: 767px) {

    .home .woocommerce ul.products,
    .home ul.products {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;

        width: 100% !important;
        margin: 0 auto !important;
        padding: 0 20px !important;
        box-sizing: border-box !important;
    }

    .home .woocommerce ul.products li.product,
    .home ul.products li.product {
        width: 100% !important;
        max-width: 360px !important;

        margin-left: auto !important;
        margin-right: auto !important;

        text-align: center !important;
    }
}