
/* ===========================================
   PRODUCT PRICING STYLES - ARCHIVE/LOOP
   (scoped to non-single contexts)
   =========================================== */

body:not(.single-product) .woocommerce .material.product:hover .product-wrap .product-meta .price {
	 opacity:0!important; 
}

body:not(.single-product) .woocommerce ul.products li.product.material .price ins {
	color: #A31111 !important;
}

body:not(.single-product) .woocommerce ul.products .price bdi {font-size: 26px;}
/* Fallback typography sizing for archives/taxonomies and bare lists */
body:not(.single-product) .woocommerce-page ul.products .price bdi,
body.archive ul.products .price bdi,
body.tax-product_cat ul.products .price bdi,
ul.products .price bdi {
    font-size: 26px !important;
}
/* Ensure sale price (ins) is larger than before price (del) */
body:not(.single-product) .woocommerce ul.products .price ins bdi {
    font-size: 22px !important;
    font-weight: 700;
}
body:not(.single-product) .woocommerce-page ul.products .price ins bdi,
body.archive ul.products .price ins bdi,
body.tax-product_cat ul.products .price ins bdi,
ul.products .price ins bdi {
    font-size: 22px !important;
    font-weight: 700;
}
body:not(.single-product) .woocommerce ul.products .price del bdi {
    font-size: 16px !important;
    opacity: 0.7;
}
body:not(.single-product) .woocommerce-page ul.products .price del bdi,
body.archive ul.products .price del bdi,
body.tax-product_cat ul.products .price del bdi,
ul.products .price del bdi {
    font-size: 16px !important;
    opacity: 0.7;
}
/* Increase specificity to beat any broad globals */
body:not(.single-product) .woocommerce ul.products li.product .product-wrap .product-meta .price ins bdi {
    font-size: 26px !important;
    font-weight: 700;
}
body:not(.single-product) .woocommerce-page ul.products li.product .product-wrap .product-meta .price ins bdi,
body.archive ul.products li.product .product-wrap .product-meta .price ins bdi,
body.tax-product_cat ul.products li.product .product-wrap .product-meta .price ins bdi,
ul.products li.product .product-wrap .product-meta .price ins bdi {
    font-size: 26px !important;
    font-weight: 700;
}

body:not(.single-product) .woocommerce ul.products li.product .product-wrap .product-meta .price del bdi {
    font-size: 20px !important;
    opacity: 0.7;
}
body:not(.single-product) .woocommerce-page ul.products li.product .product-wrap .product-meta .price del bdi,
body.archive ul.products li.product .product-wrap .product-meta .price del bdi,
body.tax-product_cat ul.products li.product .product-wrap .product-meta .price del bdi,
ul.products li.product .product-wrap .product-meta .price del bdi {
    font-size: 20px !important;
    opacity: 0.7;
}

@media screen and (max-width: 600px) {
	body:not(.single-product) .woocommerce ul.products .price bdi {
		font-size: 24px !important
	}
    /* Mobile sizes: keep ins bigger than del */
    body:not(.single-product) .woocommerce ul.products .price ins bdi {
        font-size: 24px !important;
    }
    body:not(.single-product) .woocommerce ul.products .price del bdi {
        font-size: 15px !important;
    }
    body:not(.single-product) .woocommerce ul.products li.product .product-wrap .product-meta .price ins bdi {
        font-size: 24px !important;
    }
    body:not(.single-product) .woocommerce ul.products li.product .product-wrap .product-meta .price del bdi {
        font-size: 15px !important;
    }
}

body:not(.single-product) .woocommerce ul.products .price bdi span.woocommerce-Price-currencySymbol {
	font-size: 12px !important;
}
body:not(.single-product) .woocommerce-page ul.products .price bdi span.woocommerce-Price-currencySymbol,
body.archive ul.products .price bdi span.woocommerce-Price-currencySymbol,
body.tax-product_cat ul.products .price bdi span.woocommerce-Price-currencySymbol,
ul.products .price bdi span.woocommerce-Price-currencySymbol {
    font-size: 12px !important;
}

/* Ensure current/sale price color applies on archives */
body:not(.single-product) .woocommerce-page ul.products .price ins bdi,
body.archive ul.products .price ins bdi,
body.tax-product_cat ul.products .price ins bdi,
ul.products .price ins bdi {
    color: #A31111 !important;
}

/* currency symbol size hint intentionally kept commented for future tweak */
/* body:not(.single-product) .woocommerce ul.products .price del bdi span.woocommerce-Price-currencySymbol {} */

.archive span.price > span.devnet_fsl-label,
.archive p.price > span.devnet_fsl-label {
    margin: 25px 0 -12px;
    padding: 10px;
    font-size: 15px;
	position: relative !important;
    bottom: -40px !important;
    width: 100% !important;
}

body:not(.single-product) .woocommerce ul.products li.product span.price,
body:not(.single-product) .woocommerce-page ul.products li.product span.price,
body.archive ul.products li.product span.price,
body.tax-product_cat ul.products li.product span.price,
ul.products li.product span.price {
    min-height: 0;
    margin-top: 5px;
    margin-bottom: 30px;
    flex-direction: column !important;
    align-items: flex-start;
    row-gap: 2px;
}

body:not(.single-product) .woocommerce ul.products li.product span.price > span {
	margin-top: auto;
}

@media screen and (max-width: 999px) {
	body:not(.single-product) ul.products > li.product .product-add-to-cart {
		border: 0;
		opacity: unset !important;
	    position: relative !important;
	    padding: 0 !important;
		bottom: 15px !important;
	}

	body:not(.single-product) ul.products > li.product .product-add-to-cart > span.price {
		display: none !important;
		padding: 0 !important;
		border: none;
	}

	body:not(.single-product) ul.products > li.product .product-add-to-cart > span.text {
		margin-top: 3px;
	}

	body:not(.single-product) .woocommerce .material.product .product-wrap .product-add-to-cart a>span {
		font-size: 10px !important;
	}

	body:not(.single-product) .woocommerce ul.products .price del bdi {
    	font-size: 15px !important;
	}

    /* mobile price del overrides live elsewhere */
}

body:not(.single-product) .woocommerce ul.products li.product .price del,
body:not(.single-product) .woocommerce-page ul.products li.product .price del,
body.archive ul.products li.product .price del,
body.tax-product_cat ul.products li.product .price del,
ul.products li.product .price del {
    text-decoration-line: line-through;
    text-decoration-thickness: 2px;
    text-decoration-color: rgba(0,0,0,.6);
    text-decoration-skip-ink: none;
}

/* Ensure perfectly centered strike-through in archive tiles by targeting the text node */
body:not(.single-product) .woocommerce ul.products li.product .price del,
body:not(.single-product) .woocommerce-page ul.products li.product .price del,
body.archive ul.products li.product .price del,
body.tax-product_cat ul.products li.product .price del,
ul.products li.product .price del {
	text-decoration: none !important;
}
body:not(.single-product) .woocommerce ul.products li.product .price del bdi,
body:not(.single-product) .woocommerce-page ul.products li.product .price del bdi,
body.archive ul.products li.product .price del bdi,
body.tax-product_cat ul.products li.product .price del bdi,
ul.products li.product .price del bdi {
	position: relative;
	display: inline-block;
	line-height: 1;
}
body:not(.single-product) .woocommerce ul.products li.product .price del bdi::after,
body:not(.single-product) .woocommerce-page ul.products li.product .price del bdi::after,
body.archive ul.products li.product .price del bdi::after,
body.tax-product_cat ul.products li.product .price del bdi::after,
ul.products li.product .price del bdi::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	height: 0.1em;
	background-color: currentColor;
	opacity: 0.7;
	pointer-events: none;
}

body:not(.single-product) .woocommerce .material.product .product-wrap .product-meta .price {
    margin-top: auto;
}

/* Ensure stacked layout also inside add-to-cart button price block */
body:not(.single-product) .woocommerce ul.products li.product .product-add-to-cart .price {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start;
    row-gap: 2px;
}
body:not(.single-product) .woocommerce ul.products li.product .product-add-to-cart .price del,
body:not(.single-product) .woocommerce-page ul.products li.product .product-add-to-cart .price del,
body.archive ul.products li.product .product-add-to-cart .price del,
body.tax-product_cat ul.products li.product .product-add-to-cart .price del,
ul.products li.product .product-add-to-cart .price del {
    text-decoration-line: line-through;
    text-decoration-thickness: 2px;
    text-decoration-color: rgba(0,0,0,.6);
    text-decoration-skip-ink: none;
}

/* Same centering inside add-to-cart inline price */
body:not(.single-product) .woocommerce ul.products li.product .product-add-to-cart .price del,
body:not(.single-product) .woocommerce-page ul.products li.product .product-add-to-cart .price del,
body.archive ul.products li.product .product-add-to-cart .price del,
body.tax-product_cat ul.products li.product .product-add-to-cart .price del,
ul.products li.product .product-add-to-cart .price del {
	text-decoration: none !important;
}
body:not(.single-product) .woocommerce ul.products li.product .product-add-to-cart .price del bdi,
body:not(.single-product) .woocommerce-page ul.products li.product .product-add-to-cart .price del bdi,
body.archive ul.products li.product .product-add-to-cart .price del bdi,
body.tax-product_cat ul.products li.product .product-add-to-cart .price del bdi,
ul.products li.product .product-add-to-cart .price del bdi {
	position: relative;
	display: inline-block;
	line-height: 1;
}
body:not(.single-product) .woocommerce ul.products li.product .product-add-to-cart .price del bdi::after,
body:not(.single-product) .woocommerce-page ul.products li.product .product-add-to-cart .price del bdi::after,
body.archive ul.products li.product .product-add-to-cart .price del bdi::after,
body.tax-product_cat ul.products li.product .product-add-to-cart .price del bdi::after,
ul.products li.product .product-add-to-cart .price del bdi::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	height: 0.1em;
	background-color: currentColor;
	opacity: 0.7;
	pointer-events: none;
}

/* Prevent double lines by suppressing the generic del::after in this scope */
body:not(.single-product) .woocommerce ul.products li.product .price del::after,
body:not(.single-product) .woocommerce ul.products li.product .product-add-to-cart .price del::after,
body:not(.single-product) .woocommerce-page ul.products li.product .price del::after,
body:not(.single-product) .woocommerce-page ul.products li.product .product-add-to-cart .price del::after,
body.archive ul.products li.product .price del::after,
body.archive ul.products li.product .product-add-to-cart .price del::after,
body.tax-product_cat ul.products li.product .price del::after,
body.tax-product_cat ul.products li.product .product-add-to-cart .price del::after,
ul.products li.product .price del::after,
ul.products li.product .product-add-to-cart .price del::after {
	content: none !important;
}

body:not(.single-product) .woocommerce ul.products li.product.material .price ins {
    display: flex;
}

/* ===========================================
   PRODUCT TITLE CLAMP - ARCHIVE/LOOP
   Limit product titles to max 3 lines
   =========================================== */
body:not(.single-product) .woocommerce ul.products li.product .woocommerce-loop-product__title,
body:not(.single-product) .woocommerce ul.products li.product .woocommerce-loop-product__title a {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	line-clamp: 2;
	line-height: 1.25em !important;
	max-height: 3em !important;
	height: 3em !important;
	overflow-wrap: anywhere;
}
body:not(.single-product) .woocommerce ul.products li.product h2._custom-mobile-title,
body:not(.single-product) .woocommerce ul.products li.product h2._custom-mobile-title a {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	line-clamp: 2;
	line-height: 1.25em !important;
	max-height: 3em !important;
	height: 3em !important;
	overflow-wrap: anywhere;
}

/* Stronger specificity for Salient material cards to guarantee 3-line clamp */
body:not(.single-product) .woocommerce .material.product .product-wrap h2.woocommerce-loop-product__title,
body:not(.single-product) .woocommerce .material.product .product-wrap h2.woocommerce-loop-product__title a,
body:not(.single-product) .woocommerce .material.product .product-wrap h2._custom-mobile-title,
body:not(.single-product) .woocommerce .material.product .product-wrap h2._custom-mobile-title a {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	line-clamp: 2 !important;
	white-space: normal !important;
	word-break: break-word;
	line-height: 1.25em !important;
	max-height: 3em !important;
	height: 3em !important;
}

/* ===========================================
   VISIBILITY: ensure only one title shows per viewport
   - Desktop: hide the custom mobile title
   - Mobile: hide the default title (keep the custom mobile title)
   =========================================== */
@media screen and (min-width: 1000px) {
	body:not(.single-product) .woocommerce ul.products li.product h2._custom-mobile-title,
	body:not(.single-product) .woocommerce .material.product .product-wrap h2._custom-mobile-title {
		display: none !important;
	}
}

@media screen and (max-width: 999px) {
	body:not(.single-product) .woocommerce ul.products li.product h2.woocommerce-loop-product__title:not(._custom-mobile-title),
	body:not(.single-product) .woocommerce .material.product .product-wrap h2.woocommerce-loop-product__title:not(._custom-mobile-title) {
		display: none !important;
	}
}

/* ===========================================
   MOBILE - HIDE ADD-TO-CART INLINE PRICE TO AVOID DUPLICATE
   Ensure only the main .product-meta > .price shows on mobile
   =========================================== */
@media screen and (max-width: 999px) {
	body:not(.single-product) .woocommerce ul.products li.product .product-add-to-cart a > span.price,
	body:not(.single-product) .woocommerce ul.products li.product .product-add-to-cart .price {
		display: none !important;
	}
}
