.swpf-product-grid:has(.woocommerce-no-products-found) {
	grid-template-columns: repeat(1, 1fr);
}

@media screen and (max-width:1024px) {}

@media screen and (max-width:767px) {}

.swpf-product {
	position: relative;
	padding-top: var(--swpf-product-padding-top, 0);
	padding-right: var(--swpf-product-padding-right, 0);
	padding-bottom: var(--swpf-product-padding-bottom, 0);
	padding-left: var(--swpf-product-padding-left, 0);
}

.swpf-product-thumb-hover img {
	object-fit: cover;
	height: 100% !important;
	width: 100% !important;
	transform: scale(1.2);
	transition: .3s transform ease;
}

.swpf-product:hover .swpf-product-thumb-hover {
	opacity: 1;
}

.swpf-product:hover .swpf-product-thumb-hover img {
	transform: scale(1);
}

.swpf-badge-h-pos-right .swpf-product-badge {
	right: var(--swpf-badge-offset-right, 0);
	align-items: flex-end;
}

.swpf-badge-h-pos-left .swpf-product-badge {
	left: var(--swpf-badge-offset-left, 0);
	align-items: flex-start;
}

.swpf-badge-v-pos-top .swpf-product-badge {
	top: var(--swpf-badge-offset-top, 10px);
}

.swpf-badge-v-pos-bottom .swpf-product-badge {
	bottom: var(--swpf-badge-offset-bottom, 10px);
}

.swpf-product-badge span.swpf-onsale {
	background: var(--swpf-onsale-bg-color, #7f54b3);
	color: var(--swpf-onsale-color, #fff);
}

.swpf-product-badge span.swpf-out-of-stock {
	background: var(--swpf-out-of-stock-bg-color, #7f54b3);
	color: var(--swpf-out-of-stock-color, #fff);
}

.swpf-product-badge span.swpf-featured {
	background: var(--swpf-hot-bg-color, #7f54b3);
	color: var(--swpf-hot-color, #fff);
}

.swpf-product-image .swpf-product-buttons {
	position: absolute;
	display: flex;
	flex-direction: var(--swpf-hover-buttons-orientation, row);
	gap: var(--swpf-hover-buttons-space, 8px);
	opacity: 0;
	z-index: 9;
}

.swpf-product:hover .swpf-product-image .swpf-product-buttons {
	opacity: 1;
}

.swpf-hover-buttons-h-pos-left .swpf-product-image .swpf-product-buttons {
	left: var(--swpf-hover-buttons-offset-left, 0);
}

.swpf-hover-buttons-h-pos-center .swpf-product-image .swpf-product-buttons {
	left: 0;
	right: 0;
	align-items: center;
	justify-content: center;
}

.swpf-hover-buttons-h-pos-right .swpf-product-image .swpf-product-buttons {
	right: var(--swpf-hover-buttons-offset-right, 0);
}

.swpf-hover-buttons-v-pos-top .swpf-product-image .swpf-product-buttons {
	top: var(--swpf-hover-buttons-offset-top, 0);
}

.swpf-hover-buttons-v-pos-middle .swpf-product-image .swpf-product-buttons {
	top: 0;
	bottom: 0;
	align-items: center;
	justify-content: center;
}

.swpf-hover-buttons-v-pos-bottom .swpf-product-image .swpf-product-buttons {
	bottom: var(--swpf-hover-buttons-offset-bottom, 0);
}

.swpf-product .swpf-product-icon {
	position: relative;
	opacity: 1 !important;
}

.swpf-product .swpf-product-icon a {
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	height: var(--swpf-hover-buttons-size, 40px);
	width: var(--swpf-hover-buttons-size, 40px);
	font-size: var(--swpf-hover-buttons-icon-size, 14px);
	border-style: var(--swpf-hover-buttons-border-type, none);
	border-top-width: var(--swpf-hover-buttons-border-top, 1px);
	border-right-width: var(--swpf-hover-buttons-border-right, 1px);
	border-bottom-width: var(--swpf-hover-buttons-border-bottom, 1px);
	border-left-width: var(--swpf-hover-buttons-border-left, 1px);
	border-color: var(--swpf-hover-buttons-border-color, #eee);
	box-shadow: var(--swpf-hover-buttons-box-shadow-x, 0) var(--swpf-hover-buttons-box-shadow-y, 0) var(--swpf-hover-buttons-box-shadow-blur, 0) var(--swpf-hover-buttons-box-shadow-spread, 0) var(--swpf-hover-buttons-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-hover-buttons-border-radius-top, 0);
	border-top-right-radius: var(--swpf-hover-buttons-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-hover-buttons-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-hover-buttons-border-radius-left, 0);
	background: var(--swpf-hover-buttons-bg-color, #7f54b3);
	color: var(--swpf-hover-buttons-icon-color, #fff);
}

.swpf-product .swpf-product-icon:hover a {
	background: var(--swpf-hover-buttons-hover-bg-color, var(--swpf-hover-buttons-bg-color, #7f54b3));
	color: var(--swpf-hover-buttons-hover-icon-color, var(--swpf-hover-buttons-icon-color, #fff));
}

.swpf-product-grid-style5 .swpf-product-cart-button .swpf-add-to-cart.loading::before, .swpf-product-cart.swpf-product-icon .swpf-add-to-cart.loading:after, .swpf-product-icon .blockUI.blockOverlay {
	position: absolute;
	width: 60% !important;
	height: 60% !important;
	border-radius: 50% !important;
	background: #fff !important;
	left: 50% !important;
	top: 50% !important;
	transform: translate(-50%, -50%);
	opacity: .6 !important;
	animation: swpf-loader-pulse 1s ease-in-out infinite;
}

.swpf-product-grid-style5 .swpf-product-cart-button .swpf-add-to-cart.loading::before, .swpf-product-cart.swpf-product-icon .swpf-add-to-cart.loading:after {
	content: "";
}

.swpf-product .swpf-product-tooltip {
	position: absolute;
	white-space: nowrap;
	z-index: 10;
	opacity: 0;
	visibility: hidden;
	transition: 350ms ease 0s;
	border-radius: 5px;
	padding-top: var(--swpf-tooltip-padding-top, 5px);
	padding-bottom: var(--swpf-tooltip-padding-bottom, 5px);
	padding-left: var(--swpf-tooltip-padding-left, 10px);
	padding-right: var(--swpf-tooltip-padding-left, 10px);
	border-top-left-radius: var(--swpf-tooltip-border-radius-top, 0);
	border-top-right-radius: var(--swpf-tooltip-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-tooltip-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-tooltip-border-radius-left, 0);
	font-family: var(--swpf-tooltip-typography-font-family, inherit);
	font-style: var(--swpf-tooltip-typography-font-style, inherit);
	font-weight: var(--swpf-tooltip-typography-font-weight, inherit);
	text-transform: var(--swpf-tooltip-typography-text-transform, uppercase);
	text-decoration: var(--swpf-tooltip-typography-text-decoration, inherit);
	font-size: var(--swpf-tooltip-typography-font-size, 12px);
	letter-spacing: var(--swpf-tooltip-typography-letter-spacing, inherit);
	line-height: var(--swpf-tooltip-typography-line-height, 1);
	background: var(--swpf-tooltip-bg-color, #7f54b3);
	color: var(--swpf-tooltip-color, #fff);
}

.swpf-product .swpf-product-tooltip::after {
	content: "";
	width: 0;
	height: 0;
	position: absolute;
}

.swpf-product .swpf-product-icon:hover .swpf-product-tooltip {
	opacity: 1;
	visibility: visible;
}

.swpf-hover-buttons-orientation-row.swpf-hover-buttons-v-pos-bottom .swpf-product-tooltip, .swpf-hover-buttons-orientation-row.swpf-hover-buttons-v-pos-middle .swpf-product-tooltip {
	left: 50%;
	bottom: 100%;
	transform: translate(-50%, -10px);
}

.swpf-hover-buttons-orientation-row.swpf-hover-buttons-v-pos-bottom .swpf-product-tooltip:after, .swpf-hover-buttons-orientation-row.swpf-hover-buttons-v-pos-middle .swpf-product-tooltip:after {
	left: 50%;
	top: 100%;
	bottom: auto;
	border-right: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid transparent;
	border-top: 5px solid var(--swpf-tooltip-bg-color, #7f54b3);
	transform: translateX(-50%);
}

.swpf-hover-buttons-orientation-row.swpf-hover-buttons-v-pos-top .swpf-product-tooltip {
	left: 50%;
	top: 100%;
	transform: translate(-50%, 10px);
}

.swpf-hover-buttons-orientation-row.swpf-hover-buttons-v-pos-top .swpf-product-tooltip:after {
	left: 50%;
	bottom: 100%;
	border-right: 5px solid transparent;
	border-bottom: 5px solid var(--swpf-tooltip-bg-color, #7f54b3);
	border-left: 5px solid transparent;
	border-top: 5px solid transparent;
	transform: translateX(-50%);
}

.swpf-hover-buttons-orientation-column.swpf-hover-buttons-h-pos-center .swpf-product-tooltip, .swpf-hover-buttons-orientation-column.swpf-hover-buttons-h-pos-left .swpf-product-tooltip {
	left: 100%;
	top: 50%;
	transform: translate(10px, -50%);
}

.swpf-hover-buttons-orientation-column.swpf-hover-buttons-h-pos-center .swpf-product-tooltip:after, .swpf-hover-buttons-orientation-column.swpf-hover-buttons-h-pos-left .swpf-product-tooltip:after {
	top: 50%;
	right: 100%;
	bottom: auto;
	border-right: 5px solid var(--swpf-tooltip-bg-color, #7f54b3);
	border-bottom: 5px solid transparent;
	border-left: 5px solid transparent;
	border-top: 5px solid transparent;
	transform: translateY(-50%);
}

.swpf-hover-buttons-orientation-column.swpf-hover-buttons-h-pos-right .swpf-product-tooltip {
	right: 100%;
	top: 50%;
	transform: translate(-10px, -50%);
}

.swpf-hover-buttons-orientation-column.swpf-hover-buttons-h-pos-right .swpf-product-tooltip:after {
	top: 50%;
	left: 100%;
	bottom: auto;
	border-right: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid var(--swpf-tooltip-bg-color, #7f54b3);
	border-top: 5px solid transparent;
	transform: translateY(-50%);
}

.swpf-product .swpf-product-category {
	color: var(--swpf-category-color, inherit);
	margin-top: var(--swpf-category-margin-top, 15px);
	margin-bottom: var(--swpf-category-margin-bottom, 0);
	margin-left: var(--swpf-category-margin-left, 0);
	margin-right: var(--swpf-category-margin-left, 0);
	font-family: var(--swpf-category-typography-font-family, inherit);
	font-weight: var(--swpf-category-typography-font-weight, inherit);
	font-style: var(--swpf-category-typography-font-style, inherit);
	text-transform: var(--swpf-category-typography-text-transform, inherit);
	text-decoration: var(--swpf-category-typography-text-decoration, inherit);
	font-size: var(--swpf-category-typography-font-size, 12px);
	letter-spacing: var(--swpf-category-typography-letter-spacing, inherit);
	line-height: var(--swpf-category-typography-line-height, 1);
}

.swpf-product .swpf-product-category a {
	color: inherit;
}

.swpf-product .swpf-product-title {
	margin-top: var(--swpf-title-margin-top, 15px);
	margin-bottom: var(--swpf-title-margin-bottom, 0);
	margin-left: var(--swpf-title-margin-left, 0);
	margin-right: var(--swpf-title-margin-left, 0);
}

.swpf-product .swpf-product-title .swpf-product-header {
	color: var(--swpf-title-color, inherit);
	font-family: var(--swpf-title-typography-font-family, inherit);
	font-style: var(--swpf-title-typography-font-style, inherit);
	font-weight: var(--swpf-title-typography-font-weight, inherit);
	text-transform: var(--swpf-title-typography-text-transform, inherit);
	text-decoration: var(--swpf-title-typography-text-decoration, inherit);
	font-size: var(--swpf-title-typography-font-size, inherit);
	letter-spacing: var(--swpf-title-typography-letter-spacing, inherit);
	line-height: var(--swpf-title-typography-line-height, 1.3);
}

.swpf-product .swpf-product-title .swpf-product-header:hover {
	color: var(--swpf-title-hover-color, var(--swpf-title-color, inherit));
}

.swpf-product .swpf-product-title .swpf-product-header a {
	color: inherit;
}

.swpf-product .swpf-product-rating {
	margin-top: var(--swpf-rating-margin-top, 15px);
	margin-bottom: var(--swpf-rating-margin-bottom, 0);
	margin-left: var(--swpf-rating-margin-left, 0);
	margin-right: var(--swpf-rating-margin-left, 0);
}

.swpf-product .swpf-product-rating i {
	color: var(--swpf-rating-color, #ff8220);
	font-size: var(--swpf-rating-size, 16px);
}

.swpf-product .swpf-product-price {
	font-family: var(--swpf-price-typography-font-family, inherit);
	font-weight: var(--swpf-price-typography-font-weight, inherit);
	font-style: var(--swpf-price-typography-font-style, inherit);
	text-transform: var(--swpf-price-typography-text-transform, uppercase);
	text-decoration: var(--swpf-price-typography-text-decoration, inherit);
	font-size: var(--swpf-price-typography-font-size, inherit);
	letter-spacing: var(--swpf-price-typography-letter-spacing, inherit);
	line-height: var(--swpf-price-typography-line-height, 1);
	margin-top: var(--swpf-price-margin-top, 15px);
	margin-bottom: var(--swpf-price-margin-bottom, 0);
	margin-left: var(--swpf-price-margin-left, 0);
	margin-right: var(--swpf-price-margin-left, 0);
	color: var(--swpf-price-regular-color, inherit);
}

.swpf-product .swpf-product-price del {
	color: var(--swpf-price-sale-color, var(--swpf-price-regular-color, inherit));
}

.swpf-product-grid:not(.swpf-product-grid-style7) .swpf-product .swpf-product-cart-button {
	margin-top: var(--swpf-cart-button-margin-top, 15px);
	margin-bottom: var(--swpf-cart-button-margin-bottom, 0);
	margin-left: var(--swpf-cart-button-margin-left, var(--swpf-product-content-padding-left, 0));
	margin-right: var(--swpf-cart-button-margin-left, var(--swpf-product-content-padding-right, 0));
}

.swpf-product-grid:not(.swpf-product-grid-style7) .swpf-product .swpf-product-cart-button a.swpf-add-to-cart {
	font-family: var(--swpf-cart-button-typography-font-family, inherit);
	font-style: var(--swpf-cart-buutton-typography-font-style, inherit);
	font-weight: var(--swpf-cart-button-typography-font-weight, inherit);
	text-transform: var(--swpf-cart-button-typography-text-transform, inherit);
	text-decoration: var(--swpf-cart-button-typography-text-decoration, inherit);
	font-size: var(--swpf-cart-button-typography-font-size, inherit);
	letter-spacing: var(--swpf-cart-button-typography-letter-spacing, inherit);
	line-height: var(--swpf-cart-button-typography-line-height, 1.3);
	padding-top: var(--swpf-cart-button-padding-top, 10px);
	padding-bottom: var(--swpf-cart-button-padding-bottom, 10px);
	padding-left: var(--swpf-cart-button-padding-left, 15px);
	padding-right: var(--swpf-cart-button-padding-left, 15px);
	border-style: var(--swpf-cart-button-border-type, none);
	border-top-width: var(--swpf-cart-button-border-top, 1px);
	border-right-width: var(--swpf-cart-button-border-right, 1px);
	border-bottom-width: var(--swpf-cart-button-border-bottom, 1px);
	border-left-width: var(--swpf-cart-button-border-left, 1px);
	border-color: var(--swpf-cart-button-border-color, #7f54b3);
	box-shadow: var(--swpf-cart-button-box-shadow-x, 0) var(--swpf-cart-button-box-shadow-y, 0) var(--swpf-cart-button-box-shadow-blur, 0) var(--swpf-cart-button-box-shadow-spread, 0) var(--swpf-cart-button-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-cart-button-border-radius-top, 3px);
	border-top-right-radius: var(--swpf-cart-button-border-radius-right, 3px);
	border-bottom-right-radius: var(--swpf-cart-button-border-radius-bottom, 3px);
	border-bottom-left-radius: var(--swpf-cart-button-border-radius-left, 3px);
	display: inline-flex;
	gap: .6em;
	align-items: center;
	margin: 0;
	text-align: left;
	background: var(--swpf-cart-button-bg-color, #7f54b3);
	color: var(--swpf-cart-button-text-color, #fff);
	--swpf-cart-button-box-shadow: var(--swpf-cart-button-box-shadow-x, 0) var(--swpf-cart-button-box-shadow-y, 0) var(--swpf-cart-button-box-shadow-blur, 0) var(--swpf-cart-button-box-shadow-spread, 0) var(--swpf-cart-button-box-shadow-color, transparent);
	--swpf-cart-button-box-shadow-hover: var(--swpf-cart-button-box-shadow-hover-x) var(--swpf-cart-button-box-shadow-hover-y) var(--swpf-cart-button-box-shadow-hover-blur) var(--swpf-cart-button-box-shadow-hover-spread) var(--swpf-cart-button-box-shadow-hover-color);
}

.swpf-product-grid:not(.swpf-product-grid-style7) .swpf-product .swpf-product-cart-button a.swpf-add-to-cart:hover {
	background: var(--swpf-cart-button-bg-color-hover, var(--swpf-cart-button-bg-color, #7f54b3));
	color: var(--swpf-cart-button-text-color-hover, var(--swpf-cart-button-text-color, #fff));
	border-color: var(--swpf-cart-button-border-color-hover, var(--swpf-cart-button-border-color, #7f54b3));
	box-shadow: var(--swpf-cart-button-box-shadow-hover, var(--swpf-cart-button-box-shadow, none));
}

.swpf-product-cart-button .swpf-add-to-cart.loading::after {
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	border: .15em solid rgba(0, 0, 0, .1);
	border-top-color: var(--swpf-cart-button-text-color, #fff);
	animation: swpf-add-to-cart-spin .3s linear infinite;
	box-sizing: border-box;
}

.swpf-product-cart-button .added_to_cart {
	display: none !important;
}

.swpf-product-pagination .woocommerce-pagination {
	display: flex;
	justify-content: center;
}

.swpf-product-pagination .woocommerce-pagination ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .5em;
}

.swpf-product-pagination .woocommerce-pagination ul li .page-numbers {
	font-family: var(--swpf-pagination-button-typography-font-family, inherit);
	font-style: var(--swpf-pagination-button-typography-font-style, inherit);
	font-weight: var(--swpf-pagination-button-typography-font-weight, inherit);
	text-transform: var(--swpf-pagination-button-typography-text-transform, inherit);
	text-decoration: var(--swpf-pagination-button-typography-text-decoration, inherit);
	font-size: var(--swpf-pagination-button-typography-font-size, inherit);
	letter-spacing: var(--swpf-pagination-button-typography-letter-spacing, inherit);
	line-height: var(--swpf-pagination-button-typography-line-height, 1.3);
	padding-top: var(--swpf-pagination-button-padding-top, 10px);
	padding-bottom: var(--swpf-pagination-button-padding-bottom, 10px);
	padding-left: var(--swpf-pagination-button-padding-left, 15px);
	padding-right: var(--swpf-pagination-button-padding-left, 15px);
	border-style: var(--swpf-pagination-button-border-type, none);
	border-top-width: var(--swpf-pagination-button-border-top, 1px);
	border-right-width: var(--swpf-pagination-button-border-right, 1px);
	border-bottom-width: var(--swpf-pagination-button-border-bottom, 1px);
	border-left-width: var(--swpf-pagination-button-border-left, 1px);
	border-color: var(--swpf-pagination-button-border-color, #7f54b3);
	box-shadow: var(--swpf-pagination-button-box-shadow-x, 0) var(--swpf-pagination-button-box-shadow-y, 0) var(--swpf-pagination-button-box-shadow-blur, 0) var(--swpf-pagination-button-box-shadow-spread, 0) var(--swpf-pagination-button-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-pagination-button-border-radius-top, 3px);
	border-top-right-radius: var(--swpf-pagination-button-border-radius-right, 3px);
	border-bottom-right-radius: var(--swpf-pagination-button-border-radius-bottom, 3px);
	border-bottom-left-radius: var(--swpf-pagination-button-border-radius-left, 3px);
	display: inline-flex;
	gap: .9em;
	align-items: center;
	margin: 0;
	background: var(--swpf-pagination-button-bg-color, #7f54b3);
	color: var(--swpf-pagination-button-text-color, #fff);
	--swpf-pagination-button-box-shadow: var(--swpf-pagination-button-box-shadow-x, 0) var(--swpf-pagination-button-box-shadow-y, 0) var(--swpf-pagination-button-box-shadow-blur, 0) var(--swpf-pagination-button-box-shadow-spread, 0) var(--swpf-pagination-button-box-shadow-color, transparent);
}

.swpf-product-pagination .woocommerce-pagination ul li .page-numbers:hover {
	background: var(--swpf-pagination-button-bg-color-hover, var(--swpf-pagination-button-bg-color, #7f54b3));
	color: var(--swpf-pagination-button-text-color-hover, var(--swpf-pagination-button-text-color, #fff));
	border-color: var(--swpf-pagination-button-border-color-hover, var(--swpf-pagination-button-border-color, #7f54b3));
}

.swpf-product-pagination .woocommerce-pagination ul li .page-numbers.current {
	background: var(--swpf-pagination-button-bg-color-active, #000);
	color: var(--swpf-pagination-button-text-color-active, var(--swpf-pagination-button-text-color, #fff));
	border-color: var(--swpf-pagination-button-border-color-active, var(--swpf-pagination-button-border-color, #7f54b3));
}

.swpf-product-pagination .swpf-ajax-pagination .swpf-shop-load-more {
	font-family: var(--swpf-loadmore-button-typography-font-family, inherit);
	font-weight: var(--swpf-loadmore-button-typography-font-weight, inherit);
	font-style: var(--swpf-loadmore-button-typography-font-style, inherit);
	text-transform: var(--swpf-loadmore-button-typography-text-transform, inherit);
	text-decoration: var(--swpf-loadmore-button-typography-text-decoration, inherit);
	font-size: var(--swpf-loadmore-button-typography-font-size, inherit);
	letter-spacing: var(--swpf-loadmore-button-typography-letter-spacing, inherit);
	line-height: var(--swpf-loadmore-button-typography-line-height, 1.3);
	padding-top: var(--swpf-loadmore-button-padding-top, 10px);
	padding-bottom: var(--swpf-loadmore-button-padding-bottom, 10px);
	padding-left: var(--swpf-loadmore-button-padding-left, 15px);
	padding-right: var(--swpf-loadmore-button-padding-left, 15px);
	border-style: var(--swpf-loadmore-button-border-type, none);
	border-top-width: var(--swpf-loadmore-button-border-top, 1px);
	border-right-width: var(--swpf-loadmore-button-border-right, 1px);
	border-bottom-width: var(--swpf-loadmore-button-border-bottom, 1px);
	border-left-width: var(--swpf-loadmore-button-border-left, 1px);
	border-color: var(--swpf-loadmore-button-border-color, #7f54b3);
	box-shadow: var(--swpf-loadmore-button-box-shadow-x, 0) var(--swpf-loadmore-button-box-shadow-y, 0) var(--swpf-loadmore-button-box-shadow-blur, 0) var(--swpf-loadmore-button-box-shadow-spread, 0) var(--swpf-loadmore-button-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-loadmore-button-border-radius-top, 3px);
	border-top-right-radius: var(--swpf-loadmore-button-border-radius-right, 3px);
	border-bottom-right-radius: var(--swpf-loadmore-button-border-radius-bottom, 3px);
	border-bottom-left-radius: var(--swpf-loadmore-button-border-radius-left, 3px);
	display: inline-flex;
	gap: .9em;
	align-items: center;
	margin: 0;
	background: var(--swpf-loadmore-button-bg-color, #7f54b3);
	color: var(--swpf-loadmore-button-text-color, #fff);
	--swpf-loadmore-button-box-shadow: var(--swpf-loadmore-button-box-shadow-x, 0) var(--swpf-loadmore-button-box-shadow-y, 0) var(--swpf-loadmore-button-box-shadow-blur, 0) var(--swpf-loadmore-button-box-shadow-spread, 0) var(--swpf-loadmore-button-box-shadow-color, transparent);
}

.swpf-product-pagination .swpf-ajax-pagination .swpf-shop-load-more:hover {
	background: var(--swpf-loadmore-button-bg-color-hover, var(--swpf-loadmore-button-bg-color, #7f54b3));
	color: var(--swpf-loadmore-button-text-color-hover, var(--swpf-loadmore-button-text-color, #fff));
	border-color: var(--swpf-loadmore-button-border-color-hover, var(--swpf-loadmore-button-border-color, #7f54b3));
}

.swpf-loading:after, .swpf-loading:before {
	border-color: var(--swpf-loadmore-button-loader-color, #7f54b3);
}

.swpf-big-loading:after, .swpf-big-loading:before {
	border-color: var(--swpf-infinite-loader-color, #7f54b3);
}

.swpf-product-grid-style1 .swpf-product {
	border-style: var(--swpf-product-border-type, solid);
	border-top-width: var(--swpf-product-border-top, 1px);
	border-right-width: var(--swpf-product-border-right, 1px);
	border-bottom-width: var(--swpf-product-border-bottom, 1px);
	border-left-width: var(--swpf-product-border-left, 1px);
	border-color: var(--swpf-product-border-color, rgba(0, 0, 0, .05));
	box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-product-border-radius-top, 0);
	border-top-right-radius: var(--swpf-product-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-product-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-product-border-radius-left, 0);
	background: var(--swpf-product-bg-color, transparent);
	--swpf-product-box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	--swpf-product-box-shadow-hover: var(--swpf-product-hover-box-shadow-x) var(--swpf-product-hover-box-shadow-y) var(--swpf-product-hover-box-shadow-blur) var(--swpf-product-hover-box-shadow-spread) var(--swpf-product-hover-box-shadow-color);
}

.swpf-product-grid-style1 .swpf-product:hover {
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, transparent));
	border-color: var(--swpf-product-hover-border-color, var(--swpf-product-border-color, rgba(0, 0, 0, .05)));
	box-shadow: var(--swpf-product-box-shadow-hover, var(--swpf-product-box-shadow, none));
}

.swpf-product-grid-style1 .swpf-product-image {
	border-bottom: 1px var(--swpf-product-border-type, solid) var(--swpf-product-border-color, rgba(0, 0, 0, .05));
}

.swpf-product-grid-style1 .swpf-product:hover .swpf-product-image {
	border-bottom: 1px var(--swpf-product-border-type, solid) var(--swpf-product-hover-border-color, var(--swpf-product-border-color, transparent));
}

.swpf-product-grid-style1 .swpf-product-content {
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style2 .swpf-product-content {
	position: relative;
	margin: 0;
	border-style: var(--swpf-product-border-type, solid);
	border-top-width: var(--swpf-product-border-top, 1px);
	border-right-width: var(--swpf-product-border-right, 1px);
	border-bottom-width: var(--swpf-product-border-bottom, 1px);
	border-left-width: var(--swpf-product-border-left, 1px);
	border-color: var(--swpf-product-border-color, rgba(0, 0, 0, .05));
	border-top-left-radius: var(--swpf-product-border-radius-top, 0);
	border-top-right-radius: var(--swpf-product-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-product-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-product-border-radius-left, 0);
	background: var(--swpf-product-bg-color, #fafafa);
	--swpf-product-box-shadow: var(--swpf-product-box-shadow-x) var(--swpf-product-box-shadow-y) var(--swpf-product-box-shadow-blur) var(--swpf-product-box-shadow-spread) var(--swpf-product-box-shadow-color);
	--swpf-product-box-shadow-hover: var(--swpf-product-hover-box-shadow-x) var(--swpf-product-hover-box-shadow-y) var(--swpf-product-hover-box-shadow-blur) var(--swpf-product-hover-box-shadow-spread) var(--swpf-product-hover-box-shadow-color);
	box-shadow: var(--swpf-product-box-shadow, rgba(0, 0, 0, .1) 0px 20px 25px -5px, rgba(0, 0, 0, .04) 0px 10px 10px -5px);
}

.swpf-product-grid-style2 .swpf-product-content:hover {
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, #fafafa));
	border-color: var(--swpf-product-hover-border-color, var(--swpf-product-border-color, transparent));
	box-shadow: var(--swpf-product-box-shadow-hover, var(--swpf-product-box-shadow, rgba(0, 0, 0, .1) 0px 20px 25px -5px, rgba(0, 0, 0, .04) 0px 10px 10px -5px));
}

.swpf-product-grid-style2 .swpf-product-buttons {
	display: flex;
	margin-bottom: 15px;
	gap: var(--swpf-hover-buttons-space, 4px);
}

.swpf-product-grid-style2 .swpf-product-buttons .swpf-product-icon {
	flex-grow: 1;
	position: relative;
}

.swpf-product-grid-style2 .swpf-product-buttons .swpf-product-icon a {
	margin: 0;
	line-height: 1;
	width: 100%;
	border: none;
	border-radius: 0;
	box-shadow: none;
	height: var(--swpf-hover-buttons-size, 40px);
	font-size: var(--swpf-hover-buttons-icon-size, 14px);
	border-top-left-radius: var(--swpf-hover-buttons-border-radius-top, 0);
	border-top-right-radius: var(--swpf-hover-buttons-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-hover-buttons-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-hover-buttons-border-radius-left, 0);
}

.swpf-product-grid-style2 .swpf-product-tooltip {
	left: 50%;
	bottom: 100%;
	transform: translate(-50%, -10px);
}

.swpf-product-grid-style2 .swpf-product-tooltip:after {
	left: 50%;
	top: 100%;
	bottom: auto;
	border-right: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid transparent;
	border-top: 5px solid var(--swpf-tooltip-bg-color, #7f54b3);
	transform: translateX(-50%);
}

.swpf-product-grid-style2 .swpf-product-content {
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style3 .swpf-product {
	border-style: var(--swpf-product-border-type, solid);
	border-top-width: var(--swpf-product-border-top, 1px);
	border-right-width: var(--swpf-product-border-right, 1px);
	border-bottom-width: var(--swpf-product-border-bottom, 1px);
	border-left-width: var(--swpf-product-border-left, 1px);
	border-color: var(--swpf-product-border-color, rgba(0, 0, 0, .05));
	box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-product-border-radius-top, 0);
	border-top-right-radius: var(--swpf-product-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-product-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-product-border-radius-left, 0);
	background: var(--swpf-product-bg-color, transparent);
	--swpf-product-box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	--swpf-product-box-shadow-hover: var(--swpf-product-hover-box-shadow-x) var(--swpf-product-hover-box-shadow-y) var(--swpf-product-hover-box-shadow-blur) var(--swpf-product-hover-box-shadow-spread) var(--swpf-product-hover-box-shadow-color);
}

.swpf-product-grid-style3 .swpf-product:hover {
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, transparent));
	border-color: var(--swpf-product-hover-border-color, var(--swpf-product-border-color, transparent));
	box-shadow: var(--swpf-product-box-shadow-hover, var(--swpf-product-box-shadow, none));
}

.swpf-product-grid-style3 .swpf-product-content {
	position: relative;
	background: var(--swpf-product-bg-color, #fff);
	transition: .3s transform ease;
}

.swpf-product-grid-style3 .swpf-product:hover .swpf-product-content {
	transform: translateY(calc(-1 * var(--swpf-button-height)));
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, #fff));
}

.swpf-product-grid-style3 .swpf-product .swpf-product-cart-button {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style3 .swpf-product .swpf-product-cart-button a.swpf-add-to-cart {
	opacity: 0;
	transform: .3s opacity ease;
}

.swpf-product-grid-style3 .swpf-product:hover .swpf-product-cart-button a.swpf-add-to-cart {
	opacity: 1;
}

.swpf-product-grid-style3 .swpf-product-content {
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style4 .swpf-product {
	border-style: var(--swpf-product-border-type, solid);
	border-top-width: var(--swpf-product-border-top, 1px);
	border-right-width: var(--swpf-product-border-right, 1px);
	border-bottom-width: var(--swpf-product-border-bottom, 1px);
	border-left-width: var(--swpf-product-border-left, 1px);
	border-color: var(--swpf-product-border-color, rgba(0, 0, 0, .05));
	box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-product-border-radius-top, 0);
	border-top-right-radius: var(--swpf-product-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-product-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-product-border-radius-left, 0);
	background: var(--swpf-product-bg-color, transparent);
	--swpf-product-box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	--swpf-product-box-shadow-hover: var(--swpf-product-hover-box-shadow-x) var(--swpf-product-hover-box-shadow-y) var(--swpf-product-hover-box-shadow-blur) var(--swpf-product-hover-box-shadow-spread) var(--swpf-product-hover-box-shadow-color);
}

.swpf-product-grid-style4 .swpf-product:hover {
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, transparent));
	border-color: var(--swpf-product-hover-border-color, var(--swpf-product-border-color, transparent));
	box-shadow: var(--swpf-product-box-shadow-hover, var(--swpf-product-box-shadow, none));
}

.swpf-product-grid-style4 .swpf-product-content {
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style4 .swpf-product .swpf-product-cart-button {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	overflow: hidden;
	margin: 0;
	padding: 15px 0;
}

.swpf-product-grid-style4 .swpf-product .swpf-product-cart-button a.swpf-add-to-cart {
	align-items: center;
	transition: .3s transform ease;
	transform: translateY(100px);
}

.swpf-product-grid-style4 .swpf-product:hover .swpf-product-cart-button a.swpf-add-to-cart {
	transform: translateY(0);
}

.swpf-product-grid-style5 .swpf-product {
	border-style: var(--swpf-product-border-type, solid);
	border-top-width: var(--swpf-product-border-top, 1px);
	border-right-width: var(--swpf-product-border-right, 1px);
	border-bottom-width: var(--swpf-product-border-bottom, 1px);
	border-left-width: var(--swpf-product-border-left, 1px);
	border-color: var(--swpf-product-border-color, rgba(0, 0, 0, .05));
	box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-product-border-radius-top, 0);
	border-top-right-radius: var(--swpf-product-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-product-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-product-border-radius-left, 0);
	background: var(--swpf-product-bg-color, transparent);
	--swpf-product-box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	--swpf-product-box-shadow-hover: var(--swpf-product-hover-box-shadow-x) var(--swpf-product-hover-box-shadow-y) var(--swpf-product-hover-box-shadow-blur) var(--swpf-product-hover-box-shadow-spread) var(--swpf-product-hover-box-shadow-color);
}

.swpf-product-grid-style5 .swpf-product:hover {
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, transparent));
	border-color: var(--swpf-product-hover-border-color, var(--swpf-product-border-color, transparent));
	box-shadow: var(--swpf-product-box-shadow-hover, var(--swpf-product-box-shadow, none));
}

.swpf-product-grid-style5 .swpf-product-content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style5.swpf-text-align-left .swpf-product-content {
	flex-direction: row;
	gap: 20px;
}

.swpf-product-grid-style5.swpf-text-align-right .swpf-product-content {
	flex-direction: row-reverse;
	gap: 20px;
}

.swpf-product-grid-style5.swpf-text-align-left .swpf-product-elements, .swpf-product-grid-style5.swpf-text-align-right .swpf-product-elements {
	flex: calc(100% - 80px);
}

.swpf-product-grid-style5 .swpf-product-cart-button a.swpf-add-to-cart {
	position: relative;
	height: 60px;
	width: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.swpf-product-grid-style5 .swpf-product-cart-button a.swpf-add-to-cart span {
	position: absolute;
	left: 50%;
	top: 100%;
}

.swpf-product-grid-style5 .swpf-product-cart-button a.swpf-add-to-cart span {
	background: var(--swpf-cart-button-bg-color, #7f54b3);
	font-size: 12px;
	line-height: 1;
	white-space: nowrap;
	position: absolute;
	padding: 5px 10px;
	left: 50%;
	bottom: 100%;
	transform: translate(-50%, -30px);
	z-index: 10;
	opacity: 0;
	visibility: hidden;
	transition: 350ms ease 0s;
	border-radius: 5px;
	color: var(--swpf-cart-button-text-color, #fff);
	top: auto;
}

.swpf-product-grid-style5 .swpf-product-cart-button a.swpf-add-to-cart span:after {
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	left: 50%;
	top: 100%;
	bottom: auto;
	border-right: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 6px solid transparent;
	border-top: 5px solid var(--swpf-cart-button-bg-color, #7f54b3);
	transform: translateX(-50%);
}

.swpf-product-grid-style5 .swpf-product-cart-button a.swpf-add-to-cart:hover span {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, -10px);
}

.swpf-product-grid-style5 .swpf-product-cart-button .swpf-add-to-cart.loading::after {
	display: none;
}

.swpf-product-grid-style6 .swpf-product {
	border-style: var(--swpf-product-border-type, solid);
	border-top-width: var(--swpf-product-border-top, 1px);
	border-right-width: var(--swpf-product-border-right, 1px);
	border-bottom-width: var(--swpf-product-border-bottom, 1px);
	border-left-width: var(--swpf-product-border-left, 1px);
	border-color: var(--swpf-product-border-color, rgba(0, 0, 0, .05));
	box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-product-border-radius-top, 0);
	border-top-right-radius: var(--swpf-product-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-product-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-product-border-radius-left, 0);
	background: var(--swpf-product-bg-color, transparent);
	--swpf-product-box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	--swpf-product-box-shadow-hover: var(--swpf-product-hover-box-shadow-x) var(--swpf-product-hover-box-shadow-y) var(--swpf-product-hover-box-shadow-blur) var(--swpf-product-hover-box-shadow-spread) var(--swpf-product-hover-box-shadow-color);
}

.swpf-product-grid-style6 .swpf-product:hover {
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, transparent));
	border-color: var(--swpf-product-hover-border-color, var(--swpf-product-border-color, transparent));
	box-shadow: var(--swpf-product-box-shadow-hover, var(--swpf-product-box-shadow, none));
}

.swpf-product-grid-style6 .swpf-product-content {
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style6 .swpf-product-footer {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: var(--swpf-hover-buttons-space, 10px);
	margin-top: 20px;
}

.swpf-product-grid-style6.swpf-text-align-right .swpf-product-footer {
	align-items: flex-end;
}

.swpf-product-grid-style6.swpf-text-align-left .swpf-product-footer {
	align-items: flex-start;
}

.swpf-product-grid-style6 .swpf-product-buttons {
	display: flex;
	align-items: center;
	gap: var(--swpf-hover-buttons-space, 10px);
}

.swpf-product-grid-style6 .swpf-product-buttons .swpf-product-icon a {
	margin: 0;
	line-height: 1;
	border: none;
	border-radius: 0;
	box-shadow: none;
	height: var(--swpf-hover-buttons-size, 40px);
	width: var(--swpf-hover-buttons-size, 40px);
	font-size: var(--swpf-hover-buttons-icon-size, 14px);
	border-top-left-radius: var(--swpf-hover-buttons-border-radius-top, 0);
	border-top-right-radius: var(--swpf-hover-buttons-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-hover-buttons-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-hover-buttons-border-radius-left, 0);
}

.swpf-product-grid-style6 .swpf-product-tooltip {
	left: 50%;
	bottom: 100%;
	transform: translate(-50%, -10px);
}

.swpf-product-grid-style6 .swpf-product-tooltip:after {
	left: 50%;
	top: 100%;
	bottom: auto;
	border-right: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid transparent;
	border-top: 5px solid var(--swpf-tooltip-bg-color, #7f54b3);
	transform: translateX(-50%);
}

.swpf-product-grid-style6 .swpf-product-content {
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid.swpf-product-grid-style6 .swpf-product .swpf-product-cart-button {
	margin: 0;
}

.swpf-product-grid-style7 .swpf-product {
	border-style: var(--swpf-product-border-type, solid);
	border-top-width: var(--swpf-product-border-top, 1px);
	border-right-width: var(--swpf-product-border-right, 1px);
	border-bottom-width: var(--swpf-product-border-bottom, 1px);
	border-left-width: var(--swpf-product-border-left, 1px);
	border-color: var(--swpf-product-border-color, rgba(0, 0, 0, .05));
	box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-product-border-radius-top, 0);
	border-top-right-radius: var(--swpf-product-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-product-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-product-border-radius-left, 0);
	background: var(--swpf-product-bg-color, transparent);
	--swpf-product-box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	--swpf-product-box-shadow-hover: var(--swpf-product-hover-box-shadow-x) var(--swpf-product-hover-box-shadow-y) var(--swpf-product-hover-box-shadow-blur) var(--swpf-product-hover-box-shadow-spread) var(--swpf-product-hover-box-shadow-color);
}

.swpf-product-grid-style7 .swpf-product:hover {
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, transparent));
	border-color: var(--swpf-product-hover-border-color, var(--swpf-product-border-color, transparent));
	box-shadow: var(--swpf-product-box-shadow-hover, var(--swpf-product-box-shadow, none));
}

.swpf-product-grid-style7 .swpf-product-content {
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style7 .swpf-product-footer {
	position: relative;
}

.swpf-product-grid-style7 .swpf-product .swpf-product-cart-button {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	display: flex;
	visibility: hidden;
	transform: translateY(100%);
	transition: all .3s ease-in-out;
	margin: 0;
}

.swpf-product-grid-style7.swpf-text-align-center .swpf-product .swpf-product-cart-button {
	justify-content: center;
}

.swpf-product-grid-style7.swpf-text-align-right .swpf-product .swpf-product-cart-button {
	justify-content: flex-end;
}

.swpf-product-grid-style7 .swpf-product .swpf-product-price {
	opacity: 1;
	transform: translateY(0);
	transition: all .3s ease-in-out;
}

.swpf-product-grid-style7 .swpf-product:hover .swpf-product-price {
	transform: translateY(-100%);
	opacity: 0;
}

.swpf-product-grid-style7 .swpf-product:hover .swpf-product-cart-button {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
}

.swpf-product-grid-style7 .swpf-product .swpf-product-cart-button a.swpf-add-to-cart {
	font-family: var(--swpf-cart-button-s7-typography-font-family, inherit);
	font-weight: var(--swpf-cart-button-s7-typography-font-weight, inherit);
	font-style: var(--swpf-cart-button-s7-typography-font-style, inherit);
	text-transform: var(--swpf-cart-button-s7-typography-text-transform, inherit);
	text-decoration: var(--swpf-cart-button-s7-typography-text-decoration, inherit);
	font-size: var(--swpf-cart-button-s7-typography-font-size, inherit);
	letter-spacing: var(--swpf-cart-button-s7-typography-letter-spacing, inherit);
	line-height: var(--swpf-cart-button-s7-typography-line-height, 1.3);
	padding: 0;
	border: none;
	box-shadow: none;
	border-radius: 0;
	display: inline-flex;
	gap: .6em;
	align-items: center;
	margin: 0;
	background: none;
	color: var(--swpf-cart-button-s7-text-color, inherit);
	text-align: left;
}

.swpf-product-grid-style7 .swpf-product .swpf-product-cart-button a.swpf-add-to-cart:hover {
	color: var(--swpf-cart-button-s7-text-color-hover, var(--swpf-cart-button-s7-text-color, inherit));
}

.swpf-product-grid-style8 .swpf-product {
	overflow: hidden;
	border-style: var(--swpf-product-border-type, solid);
	border-top-width: var(--swpf-product-border-top, 1px);
	border-right-width: var(--swpf-product-border-right, 1px);
	border-bottom-width: var(--swpf-product-border-bottom, 1px);
	border-left-width: var(--swpf-product-border-left, 1px);
	border-color: var(--swpf-product-border-color, rgba(0, 0, 0, .05));
	box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	border-top-left-radius: var(--swpf-product-border-radius-top, 0);
	border-top-right-radius: var(--swpf-product-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-product-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-product-border-radius-left, 0);
	background: var(--swpf-product-bg-color, transparent);
	--swpf-product-box-shadow: var(--swpf-product-box-shadow-x, 0) var(--swpf-product-box-shadow-y, 0) var(--swpf-product-box-shadow-blur, 0) var(--swpf-product-box-shadow-spread, 0) var(--swpf-product-box-shadow-color, transparent);
	--swpf-product-box-shadow-hover: var(--swpf-product-hover-box-shadow-x) var(--swpf-product-hover-box-shadow-y) var(--swpf-product-hover-box-shadow-blur) var(--swpf-product-hover-box-shadow-spread) var(--swpf-product-hover-box-shadow-color);
}

.swpf-product-grid-style8 .swpf-product:hover {
	background: var(--swpf-product-hover-bg-color, var(--swpf-product-bg-color, transparent));
	border-color: var(--swpf-product-hover-border-color, var(--swpf-product-border-color, transparent));
	box-shadow: var(--swpf-product-box-shadow-hover, var(--swpf-product-box-shadow, none));
}

.swpf-product-grid-style8 .swpf-product-content {
	text-align: var(--swpf-product-align, center);
}

.swpf-product-grid-style8 .swpf-product {
	position: relative;
}

.swpf-product-grid-style8 .swpf-product-buttons {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--swpf-hover-buttons-space, 10px);
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	padding-top: var(--swpf-product-content-padding-top, 0);
	padding-right: var(--swpf-product-content-padding-right, 0);
	padding-bottom: var(--swpf-product-content-padding-bottom, 0);
	padding-left: var(--swpf-product-content-padding-left, 0);
	z-index: 99;
	background: #fff;
	transform: translateY(10%);
	transition: transform .3s ease-in-out;
}

.swpf-product-grid-style8 .swpf-product:hover .swpf-product-buttons {
	transform: translateY(-100%);
}

.swpf-product-grid-style8.swpf-text-align-left .swpf-product-buttons {
	justify-content: flex-start;
}

.swpf-product-grid-style8.swpf-text-align-right .swpf-product-buttons {
	justify-content: flex-end;
}

.swpf-product-grid-style8 .swpf-product-buttons .swpf-product-icon a {
	margin: 0;
	padding: 0;
	line-height: 1;
	border: none;
	border-radius: 0;
	box-shadow: none;
	height: var(--swpf-hover-buttons-size, 40px);
	width: var(--swpf-hover-buttons-size, 40px);
	font-size: var(--swpf-hover-buttons-icon-size, 14px);
	border-top-left-radius: var(--swpf-hover-buttons-border-radius-top, 0);
	border-top-right-radius: var(--swpf-hover-buttons-border-radius-right, 0);
	border-bottom-right-radius: var(--swpf-hover-buttons-border-radius-bottom, 0);
	border-bottom-left-radius: var(--swpf-hover-buttons-border-radius-left, 0);
}

.swpf-product-grid-style8 .swpf-product-tooltip {
	left: 50%;
	bottom: 100%;
	transform: translate(-50%, -10px);
}

.swpf-product-grid-style8 .swpf-product-tooltip:after {
	left: 50%;
	top: 100%;
	bottom: auto;
	border-right: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid transparent;
	border-top: 5px solid var(--swpf-tooltip-bg-color, #7f54b3);
	transform: translateX(-50%);
}

.swpf-product-grid-style8 .swpf-product .swpf-product-cart-button {
	margin: 0;
}

.swpf-product-grid-style8 .swpf-product-buttons .swpf-product-cart.swpf-product-icon a.added_to_cart {
	display: none !important;
}

.swpf-product-sorting .woocommerce-result-count {
	margin: 0;
}

.swpf-product-sorting .swpf-orderby {
	max-width: 50%;
}

.swpf-product-grid.swpf-text-align-left table.cfvsw-shop-variations tr td, .swpf-product-grid.swpf-text-align-left table.cfvsw-shop-variations .cfvsw-swatches-container {
	justify-content: flex-start;
}

.swpf-product-grid.swpf-text-align-center table.cfvsw-shop-variations tr td, .swpf-product-grid.swpf-text-align-center table.cfvsw-shop-variations .cfvsw-swatches-container {
	justify-content: center;
}

.swpf-product-grid.swpf-text-align-right table.cfvsw-shop-variations tr td, .swpf-product-grid.swpf-text-align-right table.cfvsw-shop-variations .cfvsw-swatches-container {
	justify-content: flex-end;
}

[data-id=""].swpf-woo-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 40px;
}

.woocommerce ul.products.swpf-product-grid::after, .woocommerce ul.products.swpf-product-grid::before {
	display: none;
}

body.swpf-pagination-loading .swpf-woo-container:has([data-pagination-type="ajax-pagination"]) {
	opacity: .6;
}

.swpf-product-buttons .wcboost-wishlist-button__icon, .swpf-product-buttons .wcboost-products-compare-button__icon {
	margin: 0;
}

.swpf-qv-popup-container {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, .8);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 99999;
}

.swpf-qv-loading .swpf-qv-loader {
	display: block;
}

.swpf-qv-loader {
	display: none;
	width: 50px;
	--b: 8px;
	aspect-ratio: 1;
	border-radius: 50%;
	padding: 1px;
	background: conic-gradient(rgba(0, 0, 0, 0) 10%, #fff) content-box;
	-webkit-mask: repeating-conic-gradient(rgba(0, 0, 0, 0) 0deg, #000 1deg 20deg, rgba(0, 0, 0, 0) 21deg 36deg), radial-gradient(farthest-side, rgba(0, 0, 0, 0) calc(100% - var(--b) - 1px), #000 calc(100% - var(--b)));
	-webkit-mask-composite: destination-in;
	mask-composite: intersect;
	animation: swpf-qv-loader-animation 1s infinite steps(10);
}

.swpf-qv-close {
	position: absolute;
	right: 5px;
	top: 5px;
	width: 40px;
	height: 40px;
	border: none;
	cursor: pointer;
	background: #eee;
	z-index: 99;
}

.swpf-qv-close::before, .swpf-qv-close::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20px;
	height: 2px;
	background-color: #333;
	transform-origin: center;
}

.swpf-qv-close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.swpf-qv-close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.swpf-qv-close:hover::before, .swpf-qv-close:hover::after {
	background-color: #e63946;
}

.swpf-qv-product {
	display: flex;
	gap: 40px;
	align-items: flex-start;
}

.swpf-qv-image {
	position: relative;
	flex: 0 0 50%;
	overflow: hidden;
}

ul.swpf-qv-slides {
	list-style: none;
	margin: 0;
	padding: 0;
}

ul.swpf-qv-slides li {
	list-style: none;
	margin: 0;
	padding: 0;
}

.swpf-qv-image .flex-direction-nav, .swpf-qv-image .flex-direction-nav li {
	list-style: none;
	margin: 0;
	padding: 0;
}

.swpf-qv-image .flex-direction-nav li a {
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: -20px 0 0;
	position: absolute;
	top: 50%;
	z-index: 10;
	overflow: hidden;
	opacity: 0;
	cursor: pointer;
	color: rgba(0, 0, 0, .8);
	transition: all .3s ease;
	background: rgba(0, 0, 0, .2);
	border-radius: 50%;
}

.swpf-qv-image .flex-direction-nav .flex-prev {
	left: -60px;
}

.swpf-qv-image .flex-direction-nav .flex-next {
	right: -60px;
}

.swpf-qv-image .flex-direction-nav .flex-prev:before, .swpf-qv-image .flex-direction-nav .flex-next:before {
	content: "";
	display: inline-block;
	width: 12px;
	height: 12px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.swpf-qv-image .flex-direction-nav .flex-prev:before {
	transform: rotate(-135deg);
	margin-right: -5px;
}

.swpf-qv-image .flex-direction-nav .flex-next:before {
	transform: rotate(45deg);
	margin-left: -5px;
}

.swpf-qv-image:hover .flex-direction-nav .flex-prev {
	opacity: 1;
	left: 0;
}

.swpf-qv-image:hover .flex-direction-nav .flex-next {
	opacity: 1;
	right: 0;
}

.swpf-qv-added-msg {
	margin-top: 20px;
	border: 1px dashed green;
	padding: 10px;
	text-align: center;
	font-size: .9em;
}

.swpf-qv-added-msg a {
	text-decoration: underline;
}

@media screen and (max-width:768px) {
	.swpf-qv-product {
		flex-direction: column;
	}
}