.woocommerce img, .woocommerce-page img {
	height: auto;
	max-width: 100%;
}

.woocommerce ul.products, .woocommerce-page ul.products {
	display: grid;
	column-gap: 20px;
}

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 0;
	position: relative;
}

.woocommerce ul.products:not(.elementor-grid), .woocommerce-page ul.products:not(.elementor-grid) {
	grid-template-columns: repeat(4, 1fr);
}

.woocommerce ul.products:not(.elementor-grid).columns-1, .woocommerce-page ul.products:not(.elementor-grid).columns-1 {
	grid-template-columns: repeat(1, minmax(0, 1fr));
	width: 100%;
	margin-right: 0;
}

.woocommerce ul.products:not(.elementor-grid).columns-2, .woocommerce-page ul.products:not(.elementor-grid).columns-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.woocommerce ul.products:not(.elementor-grid).columns-3, .woocommerce-page ul.products:not(.elementor-grid).columns-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.woocommerce ul.products:not(.elementor-grid).columns-5, .woocommerce-page ul.products:not(.elementor-grid).columns-5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.woocommerce ul.products:not(.elementor-grid).columns-6, .woocommerce-page ul.products:not(.elementor-grid).columns-6 {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
	float: right;
}