/* Shared product-card typography, including homepage and recommendations. */
body .products .product-title,
body .products .product-title a,
body .products .woocommerce-loop-product__title,
body .tp-bs-card__title,
body .tp-bs-card__title a,
body .tp-product-card h3,
body .tp-product-card h3 a,
body .tp-pair-copy > a,
body .tpmh-search-suggestion__title {
	display: block !important;
	min-width: 0 !important;
	min-height: 0 !important;
	max-width: 100%;
	height: auto !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	-webkit-line-clamp: unset !important;
	font-weight: 400 !important;
}
body .tp-product-card__copy,
body .tp-card-body,
body .tp-pair-copy { min-width: 0; }
/* Override the catalog's previous two-line title reservation. */
body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #main .products .product-title {
	display: block !important;
	min-height: 0 !important;
	white-space: nowrap !important;
	-webkit-line-clamp: unset;
}
@media (max-width: 767px) {
	body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #main .tp-shop-heading { margin-bottom: 20px; }
	body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #wrapper .catalog-ordering {
		margin: 0 0 24px;
	}
	body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #wrapper .orderby-order-container {
		justify-content: flex-end;
		gap: 8px;
	}
	body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #wrapper .catalog-ordering .order-dropdown.orderby {
		flex: 0 1 230px;
	}
	body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #wrapper .catalog-ordering .order-dropdown .current-li {
		display: flex !important;
		align-items: center !important;
		justify-content: center;
		padding: 0 30px 0 10px;
		border-color: #e8e8e8;
		border-radius: 6px;
	}
	body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #wrapper .catalog-ordering .current-li a {
		display: flex !important;
		align-items: center !important;
		justify-content: center;
		gap: 4px;
		width: 100%;
		position: static;
		margin: 0 !important;
		padding: 0 !important;
		height: 42px !important;
		min-height: 0;
		line-height: 1.3 !important;
		white-space: nowrap;
	}
	body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #wrapper .catalog-ordering .order li a {
		border-color: #e8e8e8;
		border-radius: 6px;
	}
	body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #wrapper .catalog-ordering .current-li-content {
		display: block;
		width: 100%;
		height: 100%;
		padding: 0;
	}
}
