.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_title,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_loop_title_price,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_switcher,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_buttons {
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
}

.woocommerce ul.products li.product {
	margin-bottom: 56px;
}

.woocommerce ul.products li.product .product_loop_title_price {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	gap: 8px 14px;
	width: 100%;
	margin-top: 0;
}

.woocommerce ul.products li.product .product_loop_title_price h3 {
	grid-column: 1;
	min-width: 0;
	margin-top: 0;
	margin-bottom: 0;
	line-height: 1.08;
}

.woocommerce ul.products li.product .product_loop_title_price .product_after_shop_loop_price {
	grid-column: 2;
	align-self: start;
	justify-self: end;
	display: flex !important;
	align-items: flex-start;
	justify-content: flex-end;
	margin: 0;
	padding-top: 0 !important;
	text-align: right;
	transform: translateY(-2px);
	line-height: 1.08;
	white-space: nowrap;
}

.woocommerce ul.products li.product .product_loop_title_price .price,
.woocommerce ul.products li.product .product_loop_title_price .price .amount {
	display: block;
	margin: 0;
	padding-top: 0 !important;
	line-height: 1.08 !important;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity > a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	gap: 8px 14px;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > img,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > picture,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > .thb-placeholder {
	grid-column: 1 / -1;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link .woocommerce-loop-product__title {
	grid-column: 1;
	grid-row: 2;
	min-width: 0;
	margin-top: 0;
	margin-bottom: 0;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > .price,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > .product_after_shop_loop_price {
	grid-column: 2;
	grid-row: 2;
	align-self: start;
	justify-self: end;
	display: flex !important;
	align-items: flex-start;
	justify-content: flex-end;
	margin: 0;
	padding-top: 0 !important;
	text-align: right;
	line-height: 1.08;
	white-space: nowrap;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > .price .amount,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > .product_after_shop_loop_price .amount {
	line-height: 1.08 !important;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	gap: 8px 14px;
	width: 100%;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_switcher,
.woocommerce ul.products li.product.dm-product-loop-has-quantity:hover .product_after_shop_loop_switcher {
	position: static !important;
	display: contents !important;
	transform: none !important;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop > a:not(.button),
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop > h2,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop > h3,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-loop-product__title {
	grid-column: 1;
	min-width: 0;
	margin-top: 0;
	margin-bottom: 0;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_price,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_title,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_buttons {
	position: static !important;
	transform: none !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_price,
.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop .price {
	grid-column: 2;
	grid-row: 1;
	justify-self: end;
	margin: 0;
	text-align: right;
	white-space: nowrap;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_buttons {
	grid-column: 1 / -1;
	width: 100%;
	margin-top: 4px;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_title {
	width: 100%;
	margin-top: 4px;
}

.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_buttons > a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 42px;
	margin: 4px 0 0 !important;
	text-align: center;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 46px;
	align-items: stretch;
	justify-content: stretch;
	gap: 8px;
	width: 100%;
	margin-top: 4px;
}

.woocommerce ul.products li.product .dm-product-loop-quantity {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	min-height: 42px;
	width: 100%;
	overflow: hidden;
	border: 1px solid rgba(0, 0, 0, 0.16);
	border-radius: 999px;
	background: #fff;
}

.woocommerce ul.products li.product .dm-product-loop-quantity .quantity {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	margin: 0;
}

.woocommerce ul.products li.product .dm-product-loop-quantity__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	min-width: 38px;
	height: 42px;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
}

.woocommerce ul.products li.product .dm-product-loop-quantity__button:disabled {
	opacity: 0.35;
	cursor: not-allowed;
}

.woocommerce ul.products li.product .dm-product-loop-quantity .qty {
	width: 100%;
	max-width: 70px;
	height: 42px;
	min-height: 42px;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: center;
	-moz-appearance: textfield;
}

.woocommerce ul.products li.product .dm-product-loop-quantity .qty::-webkit-outer-spin-button,
.woocommerce ul.products li.product .dm-product-loop-quantity .qty::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	min-width: 46px;
	min-height: 42px;
	padding: 0 !important;
	margin: 0;
	border: 0 !important;
	border-color: transparent !important;
	border-style: none !important;
	border-width: 0 !important;
	border-radius: 999px !important;
	background: #1f1f1f !important;
	background-clip: padding-box;
	background-image: none !important;
	box-shadow: none !important;
	color: #fff !important;
	font-size: 0 !important;
	line-height: 1;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button:hover,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button:focus,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button:active,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button:visited,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button.loading,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button.added {
	border: 0 !important;
	border-color: transparent !important;
	border-style: none !important;
	border-width: 0 !important;
	background: #f4511e !important;
	background-clip: padding-box;
	background-image: none !important;
	box-shadow: none !important;
	color: #fff !important;
	font-size: 0 !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.loading,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.loading:hover,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.loading:focus,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.loading:active,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.added,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.added:hover,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.added:focus,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.added:active,
.woocommerce ul.products li.product a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart.dm-product-loop-add-to-cart__button.loading,
.woocommerce ul.products li.product a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart.dm-product-loop-add-to-cart__button.added {
	padding: 0 !important;
	overflow: hidden;
	border: 0 !important;
	border-bottom: 0 !important;
	border-color: transparent !important;
	border-style: none !important;
	border-width: 0 !important;
	outline: 0;
	box-shadow: none !important;
	font-size: 0 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
	transform: none !important;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button::before,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button::after,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.loading::before,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.loading::after,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.added::before,
.woocommerce ul.products li.product a.button.dm-product-loop-add-to-cart__button.added::after,
.woocommerce ul.products li.product a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart.dm-product-loop-add-to-cart__button.loading::before,
.woocommerce ul.products li.product a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart.dm-product-loop-add-to-cart__button.loading::after,
.woocommerce ul.products li.product a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart.dm-product-loop-add-to-cart__button.added::before,
.woocommerce ul.products li.product a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart.dm-product-loop-add-to-cart__button.added::after {
	display: none !important;
	content: none !important;
	width: 0 !important;
	height: 0 !important;
	opacity: 0 !important;
	animation: none !important;
	transform: none !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
	background: none !important;
	box-shadow: none !important;
	border: 0 !important;
	border-bottom: 0 !important;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart--disabled .dm-product-loop-quantity,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart--disabled .dm-product-loop-add-to-cart__button {
	opacity: 0.5;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button:disabled,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button--disabled,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button--disabled:hover,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button--disabled:focus,
.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button--disabled:active {
	border: 0 !important;
	border-color: transparent !important;
	border-style: none !important;
	border-width: 0 !important;
	background: #1f1f1f !important;
	color: #fff !important;
	cursor: not-allowed;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart .added_to_cart,
.woocommerce ul.products li.product.dm-product-loop-has-quantity a.added_to_cart {
	display: none !important;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
}

.woocommerce ul.products li.product .dm-product-loop-add-to-cart__icon svg {
	display: block;
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

@media (max-width: 480px) {
	.woocommerce ul.products li.product {
		margin-bottom: 42px;
	}

	.woocommerce ul.products li.product .dm-product-loop-add-to-cart {
		grid-template-columns: minmax(0, 1fr) 44px;
		gap: 7px;
	}

	.woocommerce ul.products li.product .dm-product-loop-quantity {
		min-height: 40px;
	}

	.woocommerce ul.products li.product .dm-product-loop-quantity__button {
		width: 36px;
		min-width: 36px;
		height: 40px;
	}

	.woocommerce ul.products li.product .dm-product-loop-quantity .qty {
		max-width: 60px;
		height: 40px;
		min-height: 40px;
	}

	.woocommerce ul.products li.product .dm-product-loop-add-to-cart__button {
		width: 44px;
		min-width: 44px;
		min-height: 40px;
	}
}

@media (max-width: 360px) {
	.woocommerce ul.products li.product .product_loop_title_price,
	.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce ul.products li.product .product_loop_title_price .product_after_shop_loop_price,
	.woocommerce ul.products li.product .product_loop_title_price .price,
	.woocommerce ul.products li.product.dm-product-loop-has-quantity .product_after_shop_loop_price,
	.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > .price,
	.woocommerce ul.products li.product.dm-product-loop-has-quantity .woocommerce-LoopProduct-link > .product_after_shop_loop_price,
	.woocommerce ul.products li.product.dm-product-loop-has-quantity .price {
		grid-column: 1;
		grid-row: auto;
		text-align: left;
		transform: none;
	}
}
