/* Hide stale rating markup left in cached Elementor product fragments. */
.offside-demo-rating {
	display: none !important;
}

.offside-restored-rating {
	display: inline-flex;
	align-items: center;
	gap: 1px;
	width: max-content;
	max-width: 100%;
	color: #0ea277;
	font-family: Arial, sans-serif;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	text-decoration: none !important;
}

.offside-restored-rating__star {
	display: inline-block;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	color: transparent;
	font-size: 0;
	line-height: 1;
	background: #0ea277;
	-webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 1.5l2.78 5.63 6.22.9-4.5 4.39 1.06 6.2L11 15.7 5.44 18.62l1.06-6.2L2 8.03l6.22-.9L11 1.5z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 1.5l2.78 5.63 6.22.9-4.5 4.39 1.06 6.2L11 15.7 5.44 18.62l1.06-6.2L2 8.03l6.22-.9L11 1.5z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
}

.offside-restored-rating__star.is-empty {
	background: #dfe5e2;
}

.offside-restored-rating__star.is-fraction {
	background: linear-gradient(
		90deg,
		#0ea277 0,
		#0ea277 var(--offside-star-fill),
		#dfe5e2 var(--offside-star-fill),
		#dfe5e2 100%
	);
}

.woocommerce ul.products li.product .astra-shop-summary-wrap .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .astra-shop-summary-wrap .woocommerce-loop-product__title {
	margin-bottom: 0 !important;
}

.woocommerce ul.products li.product .astra-shop-summary-wrap .offside-restored-rating--card,
.woocommerce-page ul.products li.product .astra-shop-summary-wrap .offside-restored-rating--card {
	justify-content: center;
	margin: 4px auto 7px !important;
	text-align: center;
	order: 2 !important;
}

.woocommerce ul.products li.product .astra-shop-summary-wrap .price,
.woocommerce-page ul.products li.product .astra-shop-summary-wrap .price {
	order: 3 !important;
}

.offside-restored-rating--single {
	margin: 6px 0 16px;
	cursor: pointer;
}

.offside-restored-rating--single:not([data-positioned="true"]) {
	display: none;
}

.offside-restored-rating--single .offside-restored-rating__star {
	flex-basis: 18px;
	width: 18px;
	height: 18px;
}

/* Pull WooCommerce archive breadcrumbs closer to the main header. */
body.post-type-archive-product #primary,
body.tax-product_cat #primary,
body.tax-product_tag #primary {
	margin-top: 1.2em;
}

@media (max-width: 921px) {
	body.post-type-archive-product #primary,
	body.tax-product_cat #primary,
	body.tax-product_tag #primary {
		margin-top: 1.1em;
	}
}

.offside-restored-rating--single:hover,
.offside-restored-rating--single:focus-visible {
	color: #0a8060;
}

.offside-restored-rating--single:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
	border-radius: 2px;
}

#customer-photos-reviews {
	scroll-margin-top: 96px;
}

/* Preserve the title-to-controls gap when active filter pills are present. */
body.tax-product_cat:has(.full90-active-filters) .woocommerce-products-header + .full90-catalog {
	margin-top: 30px !important;
}

/* WPVibe's preview utility can collide with Astra's body.columns-4 class. */
body.columns-4 {
	columns: auto !important;
	column-count: auto !important;
	column-width: auto !important;
}

/* Match the New Arrivals mobile heading spacing to the other homepage product sections. */
@media (max-width: 767px) {
	body.home .elementor-element.elementor-element-feed648 {
		margin-top: 34px !important;
		margin-bottom: 26px !important;
	}
}
