/* Shop Page Redesign - Card Grid + Filters
 * Migrated from Fluent Snippets 7-shop-page-redesign.php (verbatim).
 */
body.woocommerce-shop ul.products li.product,
body.tax-product_cat ul.products li.product {
    display: grid;
    grid-template-rows: auto auto auto auto auto;
    grid-template-columns: 1fr;
    background: #FFFCF2;
    border: 1px solid #e9ddc9;
    border-radius: 12px;
    overflow: hidden;
    padding: 0 0 14px;
    margin: 0;
    transition: transform .18s ease, box-shadow .18s ease;
}
body.woocommerce-shop ul.products li.product:hover,
body.tax-product_cat ul.products li.product:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 26px rgba(35,21,8,.14);
}
body.woocommerce-shop ul.products li.product > figure,
body.tax-product_cat ul.products li.product > figure {
    grid-row: 1;
    grid-column: 1;
    margin: 0;
}
body.woocommerce-shop ul.products li.product > .entry-meta,
body.tax-product_cat ul.products li.product > .entry-meta {
    grid-row: 1;
    grid-column: 1;
    align-self: end;
    justify-self: start;
    z-index: 2;
    margin: 0 0 10px 10px;
    list-style: none;
    padding: 0;
}
body.woocommerce-shop ul.products li.product .entry-meta .meta-categories,
body.tax-product_cat ul.products li.product .entry-meta .meta-categories {
    display: block;
}
body.woocommerce-shop ul.products li.product .entry-meta a,
body.tax-product_cat ul.products li.product .entry-meta a {
    background: #B86B0B;
    color: #fff;
    font-size: 11px;
    font-weight: 500;
    text-decoration: none;
    padding: 4px 10px;
    border-radius: 20px;
    white-space: nowrap;
}
body.woocommerce-shop ul.products li.product > .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product > .woocommerce-loop-product__title {
    grid-row: 2;
    grid-column: 1;
    color: #231508;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    margin: 12px 14px 6px;
    padding: 0;
}
body.woocommerce-shop ul.products li.product > .wc-stripe-bnpl-shop-message,
body.tax-product_cat ul.products li.product > .wc-stripe-bnpl-shop-message {
    grid-row: 3;
    grid-column: 1;
    margin: 0 14px 4px;
    font-size: 11px;
    color: #6b5b4a;
}
body.woocommerce-shop ul.products li.product > .price,
body.tax-product_cat ul.products li.product > .price {
    grid-row: 4;
    grid-column: 1;
    color: #B86B0B;
    font-size: 16px;
    font-weight: 600;
    margin: 0 14px 12px;
}
body.woocommerce-shop ul.products li.product > .ct-woo-card-actions,
body.tax-product_cat ul.products li.product > .ct-woo-card-actions {
    grid-row: 5;
    grid-column: 1;
    margin: 0 14px;
}
body.woocommerce-shop ul.products li.product .ct-woo-card-actions .button,
body.tax-product_cat ul.products li.product .ct-woo-card-actions .button {
    display: block;
    width: 100%;
    text-align: center;
    background: #231508;
    color: #FFFCF2;
    border-radius: 8px;
    padding: 10px 0;
    font-size: 13px;
    font-weight: 500;
    transition: background .18s ease;
}
body.woocommerce-shop ul.products li.product .ct-woo-card-actions .button:hover,
body.tax-product_cat ul.products li.product .ct-woo-card-actions .button:hover {
    background: #B86B0B;
    color: #fff;
}
body.woocommerce-shop ul.products li.product .out-of-stock-badge,
body.tax-product_cat ul.products li.product .out-of-stock-badge {
    background: #231508;
    color: #FFFCF2;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: .03em;
    border-radius: 4px;
    padding: 4px 8px;
}
body.woocommerce-shop .ct-sidebar .ct-widget,
body.tax-product_cat .ct-sidebar .ct-widget {
    background: #FFFCF2;
    border: 1px solid #e9ddc9;
    border-radius: 12px;
    padding: 20px 22px;
}
body.woocommerce-shop .ct-sidebar h2.wp-block-heading,
body.tax-product_cat .ct-sidebar h2.wp-block-heading {
    color: #231508;
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 16px;
    padding-bottom: 12px;
    position: relative;
}
body.woocommerce-shop .ct-sidebar h2.wp-block-heading::after,
body.tax-product_cat .ct-sidebar h2.wp-block-heading::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 44px;
    height: 3px;
    background: #B86B0B;
}
body.woocommerce-shop .ct-sidebar h3.wp-block-heading,
body.tax-product_cat .ct-sidebar h3.wp-block-heading {
    color: #231508;
    font-size: 14px;
    font-weight: 500;
    margin: 22px 0 12px;
    padding-top: 20px;
    border-top: 1px solid #e9ddc9;
}
body.woocommerce-shop .ct-sidebar h3.wp-block-heading:first-of-type,
body.tax-product_cat .ct-sidebar h3.wp-block-heading:first-of-type {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}
body.woocommerce-shop .ct-sidebar .wc-block-product-filter-checkbox-list__input,
body.tax-product_cat .ct-sidebar .wc-block-product-filter-checkbox-list__input {
    accent-color: #B86B0B;
}
body.woocommerce-shop .ct-sidebar .wc-block-product-filter-checkbox-list__text,
body.tax-product_cat .ct-sidebar .wc-block-product-filter-checkbox-list__text {
    color: #6b5b4a;
    font-size: 13px;
}
body.woocommerce-shop .ct-sidebar .wc-block-product-filter-checkbox-list__item:hover .wc-block-product-filter-checkbox-list__text,
body.tax-product_cat .ct-sidebar .wc-block-product-filter-checkbox-list__item:hover .wc-block-product-filter-checkbox-list__text {
    color: #B86B0B;
}
body.woocommerce-shop .ct-sidebar .range-bar,
body.tax-product_cat .ct-sidebar .range-bar {
    background: #B86B0B;
}
body.woocommerce-shop .ct-sidebar input[type="range"]::-webkit-slider-thumb,
body.tax-product_cat .ct-sidebar input[type="range"]::-webkit-slider-thumb {
    background: #B86B0B;
    border: 2px solid #FFFCF2;
}
body.woocommerce-shop .ct-sidebar input[type="range"]::-moz-range-thumb,
body.tax-product_cat .ct-sidebar input[type="range"]::-moz-range-thumb {
    background: #B86B0B;
    border: 2px solid #FFFCF2;
}
body.woocommerce-shop .ct-sidebar input[type="text"].min,
body.woocommerce-shop .ct-sidebar input[type="text"].max,
body.tax-product_cat .ct-sidebar input[type="text"].min,
body.tax-product_cat .ct-sidebar input[type="text"].max {
    border: 1px solid #e9ddc9;
    border-radius: 6px;
    color: #231508;
}
body.woocommerce-shop .woocommerce-ordering select,
body.tax-product_cat .woocommerce-ordering select {
    border: 1px solid #e9ddc9;
    border-radius: 8px;
    color: #231508;
    padding: 8px 12px;
}

/* Make the "View cart" link (shown after Add to cart via AJAX) match the full
   width of the "Add to cart" button above it - by default it only sizes to its
   own text + padding, so it looks noticeably narrower/off-center in the card. */
body.woocommerce-shop .ct-woo-card-actions .added_to_cart.wc-forward,
body.tax-product_cat .ct-woo-card-actions .added_to_cart.wc-forward {
    width: 100%;
    box-sizing: border-box;
}
