/* ==========================================================================
   BuyerBuy Product Card Styles v1.3.1 (2026-08-30)
   - v1.3.1：卡片不显示分类标签；缩略图区去掉灰色底（透明）
   - 评分星级行已从 PHP 层移除（mu-plugin 1.3.0 起不再渲染）
   - 集合页产品卡精修：紧凑排版、小号中量级字体、留白克制
   ========================================================================== */

/* 1. 卡片容器：无边框极简，底部细分隔线 */
body ul.products li.product {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin-bottom: 30px;
    position: relative;
    overflow: visible;
    display: flex;
    flex-direction: column;
}
body ul.products li.product::after {
    display: none !important;
    content: none !important;
}

/* 2. 主图：方形裁切，轻缩放反馈；容器透明（去掉缩略图区灰底） */
body ul.products li.product .astra-shop-thumbnail-wrap {
    position: relative;
    overflow: hidden;
    border-radius: 6px;
    background: transparent;
    margin-bottom: 0;
    width: 100%;
}
body ul.products li.product .astra-shop-thumbnail-wrap a {
    display: block;
    width: 100%;
    background: transparent;
    border-radius: 6px;
    overflow: hidden;
}
body ul.products li.product img,
body ul.products li.product .astra-shop-thumbnail-wrap img {
    border: none;
    outline: none;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    margin: 0;
    border-radius: 6px;
    display: block;
    transition: opacity 0.2s ease, transform 0.35s cubic-bezier(0.25, 1, 0.5, 1);
}
body ul.products li.product .astra-shop-thumbnail-wrap:hover img {
    transform: scale(1.03);
}

/* 3. 缩略图画廊：紧贴主图下方，小尺寸低存在感 */
.bb-card-gallery-wrap {
    margin: 8px 0 0 0;
    display: block;
    width: 100%;
    clear: both;
    background: transparent;
    height: 30px;
    overflow: hidden;
}
.bb-card-gallery-list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    margin: 0;
    padding: 1px 0;
    height: 30px;
    overflow: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.bb-card-gallery-list::-webkit-scrollbar {
    display: none;
}
button.bb-card-thumb-btn,
.bb-card-thumb-btn {
    width: 28px;
    height: 28px;
    min-width: 28px;
    min-height: 28px;
    max-width: 28px;
    max-height: 28px;
    padding: 1px;
    margin: 0;
    border-radius: 4px;
    background: #ffffff;
    background-color: #ffffff;
    border: 1px solid #e4e4e8;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transition: all 0.15s ease;
    outline: none;
    line-height: 0;
    flex-shrink: 0;
    box-shadow: none;
}
button.bb-card-thumb-btn:hover,
.bb-card-thumb-btn:hover {
    border-color: #9a9aa2;
    background: #ffffff;
    background-color: #ffffff;
}
button.bb-card-thumb-btn.is-active,
.bb-card-thumb-btn.is-active {
    border-color: #1a1a1e;
    background: #ffffff;
    background-color: #ffffff;
    box-shadow: 0 0 0 1px #1a1a1e;
}
button.bb-card-thumb-btn img,
.bb-card-thumb-btn img {
    width: 100%;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 2px;
    display: block;
    pointer-events: none;
    margin: 0;
    padding: 0;
    transform: none;
    border: none;
    box-shadow: none;
}

/* 4. 摘要排版：标题 → 价格（分类标签按设计不显示） */
body .astra-shop-summary-wrap {
    padding-top: 7px;
    display: flex;
    flex-direction: column;
}
body ul.products li.product .ast-woo-product-category {
    display: none;
}
body ul.products li.product .woocommerce-loop-product__title,
body ul.products li.product h2.woocommerce-loop-product__title,
body ul.products li.product h2.woocommerce-loop-category__title {
    font-size: 14px;
    font-weight: 500;
    color: #1a1a1e;
    margin: 0 0 6px;
    padding: 0;
    line-height: 1.45;
    transition: color 0.18s ease;
    overflow-wrap: break-word;
    word-break: break-word;
}
body ul.products li.product:hover .woocommerce-loop-product__title {
    color: #65435c;
}
body ul.products li.product .price {
    font-size: 15px;
    font-weight: 600;
    color: #1a1a1e;
    margin: 0;
    line-height: 1.3;
}
body ul.products li.product .price del {
    opacity: 0.4;
    font-weight: 400;
    font-size: 13px;
    margin-right: 6px;
}
body ul.products li.product .price ins {
    text-decoration: none;
    color: #1a1a1e;
}

/* 5. 隐藏项：原生评分星、变体包装、加购按钮（安全网含旧缓存 HTML 中的星星行） */
body ul.products li.product .wvs-archive-variations-wrapper,
body ul.products li.product .review-rating,
body ul.products li.product .star-rating,
body ul.products li.product .bb-card-stars-row,
body ul.products li.product > a.button,
body ul.products li.product .button.add_to_cart_button,
body ul.products li.product .button.product_type_simple,
body ul.products li.product .button.product_type_variable,
.astra-shop-thumbnail-wrap .ast-on-card-button:not(.ast-onsale-card),
.astra-shop-thumbnail-wrap:hover .ast-on-card-button:not(.ast-onsale-card),
.ast-select-options-trigger,
.ast-on-card-button.add_to_cart_button {
    display: none;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

/* 6. 侧边栏筛选器美化：深色系与勃艮第 */
.widget_price_filter .ui-slider .ui-slider-range {
    background-color: #65435c;
}
.widget_price_filter .ui-slider .ui-slider-handle {
    background-color: #ffffff;
    border: 2px solid #65435c;
    box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}
.widget_price_filter .price_slider_amount .button,
.widget_price_filter .button {
    background-color: #65435c;
    border-color: #65435c;
    color: #ffffff;
    border-radius: 4px;
    font-size: 12.5px;
    padding: 6px 14px;
}

/* 7. 强制等宽网格：minmax(0,1fr) */
body ul.products.columns-2, ul.products.columns-3, ul.products.columns-4,
body ul.products.columns-5, ul.products.columns-6 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 26px 18px;
}
/* 7.1 带侧边栏的归档页（分类页）：内容区收窄，降为 3 列避免卡片过度拥挤 */
body.ast-left-sidebar ul.products.columns-2, body.ast-left-sidebar ul.products.columns-3,
body.ast-left-sidebar ul.products.columns-4, body.ast-left-sidebar ul.products.columns-5,
body.ast-left-sidebar ul.products.columns-6,
body.ast-right-sidebar ul.products.columns-2, body.ast-right-sidebar ul.products.columns-3,
body.ast-right-sidebar ul.products.columns-4, body.ast-right-sidebar ul.products.columns-5,
body.ast-right-sidebar ul.products.columns-6 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 1024px) {
    body ul.products.columns-2, ul.products.columns-3, ul.products.columns-4,
    body ul.products.columns-5, ul.products.columns-6 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 20px 14px;
    }
}
@media (max-width: 768px) {
    body ul.products.columns-2, ul.products.columns-3, ul.products.columns-4,
    body ul.products.columns-5, ul.products.columns-6 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px 10px;
    }
    body.ast-left-sidebar ul.products.columns-2, body.ast-left-sidebar ul.products.columns-3,
    body.ast-left-sidebar ul.products.columns-4, body.ast-left-sidebar ul.products.columns-5,
    body.ast-left-sidebar ul.products.columns-6,
    body.ast-right-sidebar ul.products.columns-2, body.ast-right-sidebar ul.products.columns-3,
    body.ast-right-sidebar ul.products.columns-4, body.ast-right-sidebar ul.products.columns-5,
    body.ast-right-sidebar ul.products.columns-6 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .bb-card-thumb-btn {
        width: 26px;
        height: 26px;
        min-width: 26px;
        min-height: 26px;
        max-width: 26px;
        max-height: 26px;
    }
}
/* ==========================================================================
   Archive Page Title Reset - Hide Default H1 on Collection Pages
   ========================================================================== */
/* 当后台自定义面板关闭标题时，WooCommerce 不输出 h1，header 为空；自动折叠空容器消除多余留白 */
body.woocommerce header.woocommerce-products-header:empty {
    display: none;
    margin: 0;
    padding: 0;
}


/* ==========================================================================
   Elementor wc-archive-products Loop Product Styling
   ========================================================================== */
body ul.products li.product a.woocommerce-LoopProduct-link {
    position: relative;
    overflow: hidden;
    border-radius: 6px;
    background: transparent;
    margin-bottom: 0;
    width: 100%;
    display: block;
}
body ul.products li.product a.woocommerce-LoopProduct-link img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
    transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
body ul.products li.product a.woocommerce-LoopProduct-link:hover img {
    transform: scale(1.03);
}

/* ==========================================================================
   Fix Blue Color & Thumbnail Gallery Dimensions (v1.1.9)
   ========================================================================== */
/* 1. Force Titles to Pure Black #111827 */
body ul.products li.product .woocommerce-loop-product__title,
body ul.products li.product h2.woocommerce-loop-product__title,
body ul.products li.product a .woocommerce-loop-product__title,
body ul.products li.product a:link .woocommerce-loop-product__title,
body ul.products li.product a:visited .woocommerce-loop-product__title,
.elementor-widget-wc-archive-products ul.products li.product .woocommerce-loop-product__title,
.elementor-widget-wc-archive-products ul.products li.product h2,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title {
    color: #111827 !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    margin: 10px 0 6px 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
    transition: color 0.15s ease !important;
}

body ul.products li.product a:hover .woocommerce-loop-product__title,
body ul.products li.product .woocommerce-loop-product__title:hover {
    color: #4b5563 !important;
}

/* 2. Force Prices to Trend Yellow #111827 */
body ul.products li.product .price,
body ul.products li.product span.price,
body ul.products li.product .price .amount,
body ul.products li.product .price ins,
body ul.products li.product .price ins .amount,
body ul.products li.product .price bdi,
body ul.products li.product .price ins bdi,
.elementor-widget-wc-archive-products ul.products li.product .price,
.elementor-widget-wc-archive-products ul.products li.product .price ins,
.elementor-widget-wc-archive-products ul.products li.product .price ins .amount,
.elementor-widget-wc-archive-products ul.products li.product .price .amount,
.elementor-widget-wc-archive-products ul.products li.product .price bdi,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price ins,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price ins .amount,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price > .amount,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price bdi {
    color: #111827 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-block !important;
}

body ul.products li.product .price del,
body ul.products li.product .price del .amount,
body ul.products li.product .price del bdi,
.elementor-widget-wc-archive-products ul.products li.product .price del,
.elementor-widget-wc-archive-products ul.products li.product .price del .amount,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price del,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price del .amount {
    color: #9ca3af !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
    margin-right: 6px !important;
    display: inline-block !important;
}

/* 3. Strict Thumbnail Gallery Sizing (Kill elongated white boxes) */
.bb-card-gallery-wrap {
    margin: 8px 0 6px 0 !important;
    display: block !important;
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    overflow: hidden !important;
    clear: both !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

.bb-card-gallery-list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 30px !important;
    max-height: 30px !important;
    overflow: hidden !important;
    list-style: none !important;
    border: none !important;
    background: transparent !important;
}

.bb-card-gallery-item {
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    flex-shrink: 0 !important;
    border: none !important;
    background: transparent !important;
    height: 28px !important;
    width: 28px !important;
}

button.bb-card-thumb-btn,
.bb-card-thumb-btn {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    max-width: 28px !important;
    max-height: 28px !important;
    padding: 1px !important;
    margin: 0 !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #e4e4e8 !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    outline: none !important;
    line-height: 0 !important;
    flex-shrink: 0 !important;
    box-shadow: none !important;
    vertical-align: middle !important;
}

button.bb-card-thumb-btn img,
.bb-card-thumb-btn img {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-width: 24px !important;
    max-height: 24px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    border-radius: 2px !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    border: none !important;
}

button.bb-card-thumb-btn.is-active,
.bb-card-thumb-btn.is-active {
    border-color: #111827 !important;
    box-shadow: 0 0 0 1px #111827 !important;
}

/* ==========================================================================
   Product Card Fix: No Blue Text, No Duplicate Swatches, Crisp Thumbnails
   ========================================================================== */
/* 1. Title Color: Pure Black #111827 */
body ul.products li.product .woocommerce-loop-product__title,
body ul.products li.product h2.woocommerce-loop-product__title,
body ul.products li.product a.woocommerce-LoopProduct-link,
body ul.products li.product a,
body ul.products li.product a:link,
body ul.products li.product a:visited,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product h2,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product a {
    color: #111827 !important;
    text-decoration: none !important;
}

body ul.products li.product a:hover,
body ul.products li.product a:hover .woocommerce-loop-product__title {
    color: #4b5563 !important;
}

/* 2. Price Color: Trend Yellow #111827 */
body ul.products li.product .price,
body ul.products li.product span.price,
body ul.products li.product .price *,
.elementor-widget-wc-archive-products ul.products li.product .price,
.elementor-widget-wc-archive-products ul.products li.product .price *,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price * {
    color: #111827 !important;
}

body ul.products li.product .price del,
body ul.products li.product .price del *,
.elementor-widget-wc-archive-products ul.products li.product .price del,
.elementor-widget-wc-archive-products ul.products li.product .price del * {
    color: #9ca3af !important;
}

/* 3. Hide redundant / empty swatch wrapper from swatch plugin on archive cards ONLY */
body ul.products li.product .woo-variation-items-wrapper,
body ul.products li.product .wvs-archive-variation-wrapper,
.elementor-widget-wc-archive-products ul.products li.product .woo-variation-items-wrapper,
.elementor-widget-wc-archive-products ul.products li.product .wvs-archive-variation-wrapper {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ensure single product detail page swatches are ALWAYS visible */
body.single-product .woo-variation-items-wrapper,
body.single-product td.woo-variation-items-wrapper,
.single-product .variable-items-wrapper,
.single-product .variable-item {
    visibility: visible !important;
}
body.single-product .woo-variation-items-wrapper,
body.single-product td.woo-variation-items-wrapper {
    display: block !important;
    height: auto !important;
}
body.single-product .variable-items-wrapper {
    display: flex !important;
    height: auto !important;
}

/* 4. Ensure Thumbnail Gallery buttons stay strictly 28x28 with no white box */
.bb-card-gallery-wrap {
    margin: 8px 0 6px 0 !important;
    display: block !important;
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    overflow: hidden !important;
    clear: both !important;
    background: transparent !important;
    border: none !important;
}
.bb-card-gallery-list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 30px !important;
    list-style: none !important;
    border: none !important;
}
.bb-card-gallery-item {
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    flex-shrink: 0 !important;
    height: 28px !important;
    width: 28px !important;
}
button.bb-card-thumb-btn,
.bb-card-thumb-btn {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    max-width: 28px !important;
    max-height: 28px !important;
    padding: 1px !important;
    margin: 0 !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    border: 1px solid #e4e4e8 !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    line-height: 0 !important;
    box-shadow: none !important;
}
button.bb-card-thumb-btn img,
.bb-card-thumb-btn img {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-width: 24px !important;
    max-height: 24px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    border-radius: 2px !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ==========================================================================
   Price Black & Thumbnail Closer to Main Image (v1.2.1)
   ========================================================================== */
body ul.products li.product .price,
body ul.products li.product span.price,
body ul.products li.product .price *,
.elementor-widget-wc-archive-products ul.products li.product .price,
.elementor-widget-wc-archive-products ul.products li.product .price *,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price * {
    color: #111827 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-block !important;
}

body ul.products li.product a.woocommerce-LoopProduct-link {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
body ul.products li.product a.woocommerce-LoopProduct-link img {
    margin-bottom: 0 !important;
}

.bb-card-gallery-wrap {
    margin: 3px 0 6px 0 !important;
    display: block !important;
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    overflow: hidden !important;
    clear: both !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

/* ==========================================================================
   Enforce 3-Column CSS Grid on All Product Loops (v1.2.3)
   ========================================================================== */
ul.products,
body ul.products,
.woocommerce ul.products,
.elementor-widget-wc-archive-products ul.products,
ul.products.elementor-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 32px 24px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    float: none !important;
    margin: 0 0 40px 0 !important;
    padding: 0 !important;
    list-style: none !important;
    clear: both !important;
}

ul.products::before,
ul.products::after {
    display: none !important;
    content: none !important;
}

ul.products li.product,
body ul.products li.product,
.woocommerce ul.products li.product,
.elementor-widget-wc-archive-products ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    position: relative !important;
    clear: none !important;
}

ul.products li.product > a.woocommerce-LoopProduct-link:first-child,
body ul.products li.product > a.woocommerce-LoopProduct-link:first-child {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 6px !important;
    aspect-ratio: 1 / 1 !important;
    margin-bottom: 0 !important;
}

ul.products li.product img,
body ul.products li.product img,
ul.products li.product a.woocommerce-LoopProduct-link img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 6px !important;
    margin: 0 !important;
}

@media (max-width: 921px) {
    ul.products,
    body ul.products,
    .elementor-widget-wc-archive-products ul.products,
    ul.products.elementor-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 20px 16px !important;
    }
}
@media (max-width: 544px) {
    ul.products,
    body ul.products,
    .elementor-widget-wc-archive-products ul.products,
    ul.products.elementor-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}

/* ==========================================================================
   Product Card Links & Typography (v1.2.7)
   ========================================================================== */

/* Title Link (Any link that is not the first-child thumbnail) */
ul.products li.product a.woocommerce-LoopProduct-link:not(:first-child),
body ul.products li.product a.woocommerce-LoopProduct-link:not(:first-child),
ul.products li.product a.woocommerce-LoopProduct-link:nth-of-type(2),
body ul.products li.product a.woocommerce-LoopProduct-link:nth-of-type(2),
a.bb-loop-title-link,
.bb-loop-title-link {
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    margin: 8px 0 4px 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
    overflow: visible !important;
    border-radius: 0 !important;
}

/* Title Text Styling */
ul.products li.product a.woocommerce-LoopProduct-link:not(:first-child) h2,
ul.products li.product a.woocommerce-LoopProduct-link:not(:first-child) .woocommerce-loop-product__title,
body ul.products li.product .woocommerce-loop-product__title,
body ul.products li.product h2.woocommerce-loop-product__title {
    margin: 0 !important;
    padding: 0 !important;
    color: #111827 !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    display: block !important;
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
}

ul.products li.product a.woocommerce-LoopProduct-link:not(:first-child):hover h2,
ul.products li.product a.woocommerce-LoopProduct-link:not(:first-child):hover .woocommerce-loop-product__title {
    color: #4b5563 !important;
}

/* Price Positioning: Directly Under Title */
body ul.products li.product .price,
body ul.products li.product span.price,
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price {
    margin: 2px 0 16px 0 !important;
    padding: 0 !important;
    color: #111827 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    display: block !important;
}

body ul.products li.product .price del,
body ul.products li.product span.price del {
    color: #9ca3af !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    margin-right: 6px !important;
}

body ul.products li.product .price ins,
body ul.products li.product span.price ins {
    color: #111827 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}
