/*
 * AlphaLabs single-product redesign.
 * Scope: body.alpx-redesign-single-product only.
 */

body.alpx-redesign-single-product {
	--alpx-sp-ink: #0b3d45;
	--alpx-sp-deep: #05333a;
	--alpx-sp-teal: #078b8e;
	--alpx-sp-teal-soft: #eaf8f7;
	--alpx-sp-orange: #ee781a;
	--alpx-sp-orange-dark: #c95e10;
	--alpx-sp-orange-soft: #fff1e5;
	--alpx-sp-warm: #fffdf9;
	--alpx-sp-canvas: #fbfaf8;
	--alpx-sp-line: #e1e9e8;
	--alpx-sp-muted: #61777a;
	--alpx-sp-shadow: 0 22px 60px rgba(5, 51, 58, .09);
	background: var(--alpx-sp-canvas);
	color: var(--alpx-sp-ink);
}

body.alpx-redesign-single-product #primary,
body.alpx-redesign-single-product #main,
body.alpx-redesign-single-product .site-main,
body.alpx-redesign-single-product .content-area {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.alpx-redesign-single-product .woocommerce-notices-wrapper {
	width: min(1280px, calc(100% - 48px));
	margin: 18px auto 0;
}

body.alpx-redesign-single-product .woocommerce-message,
body.alpx-redesign-single-product .woocommerce-info,
body.alpx-redesign-single-product .woocommerce-error {
	border: 1px solid rgba(7, 139, 142, .2) !important;
	border-top: 0 !important;
	border-radius: 14px !important;
	background: #fff !important;
	box-shadow: 0 12px 35px rgba(5, 51, 58, .07);
	color: var(--alpx-sp-ink) !important;
}

/* Breadcrumb */
body.alpx-redesign-single-product .bread-crumb {
	background: linear-gradient(90deg, rgba(7, 139, 142, .94), rgba(7, 139, 142, .73)) !important;
	border: 0 !important;
	min-height: 42px;
	display: flex;
	align-items: center;
}

body.alpx-redesign-single-product .bread-crumb .container {
	width: min(1280px, calc(100% - 48px)) !important;
	max-width: 1280px !important;
	padding: 0 !important;
	font-size: 13px;
	line-height: 1.45;
	color: rgba(255, 255, 255, .74) !important;
}

body.alpx-redesign-single-product .bread-crumb a,
body.alpx-redesign-single-product .bread-crumb span,
body.alpx-redesign-single-product .bread-crumb span a,
body.alpx-redesign-single-product .bread-crumb span a span {
	color: #fff !important;
	-webkit-text-fill-color: currentColor !important;
}

/* Main product grid: full-bleed sections stay full-width, hero remains centered. */
body.alpx-redesign-single-product div[id^="product-"] {
	position: relative;
	display: grid !important;
	grid-template-columns: minmax(24px, 1fr) minmax(0, 610px) minmax(0, 610px) minmax(24px, 1fr);
	column-gap: clamp(34px, 4vw, 64px);
	row-gap: 0;
	align-items: start;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(42px, 5vw, 74px) 0 0 !important;
	background:
		radial-gradient(circle at 8% 2%, rgba(7, 139, 142, .08), transparent 24%),
		radial-gradient(circle at 92% 4%, rgba(238, 120, 26, .09), transparent 22%),
		linear-gradient(180deg, #fff 0, #fff 620px, #fbfaf8 620px, #fbfaf8 100%);
	box-sizing: border-box;
}

body.alpx-redesign-single-product div[id^="product-"] > * {
	grid-column: 1 / -1;
	min-width: 0;
}

body.alpx-redesign-single-product div[id^="product-"] > div:first-of-type {
	grid-column: 2;
	align-self: start;
	display: flex;
	min-width: 0;
}

body.alpx-redesign-single-product div[id^="product-"] > .summary.entry-summary {
	grid-column: 3;
	align-self: stretch;
	min-width: 0;
}

body.alpx-redesign-single-product div[id^="product-"] > div:first-of-type > .container {
	display: flex !important;
	width: 100% !important;
	height: auto;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Product gallery */
body.alpx-redesign-single-product .woocommerce-product-gallery {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 14px !important;
	border: 1px solid rgba(7, 139, 142, .15) !important;
	border-radius: 26px !important;
	background: rgba(255, 255, 255, .94) !important;
	box-shadow: var(--alpx-sp-shadow);
	overflow: visible !important;
	display: flex !important;
	flex-direction: column;
	height: auto;
	box-sizing: border-box;
}

body.alpx-redesign-single-product .woocommerce-product-gallery__wrapper {
	border-radius: 19px;
	overflow: hidden;
	background: #fff !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery__image,
body.alpx-redesign-single-product .woocommerce-product-gallery__image a {
	display: block;
	width: 100%;
	border-radius: 19px;
	overflow: hidden;
}

body.alpx-redesign-single-product .woocommerce-product-gallery__image img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	border-radius: 19px;
	transition: transform .45s cubic-bezier(.2, .8, .2, 1), filter .35s ease;
}

/* Keep the approved product image stable on hover. The lightbox remains available
 * through the expand control, while WooCommerce's magnified hover layer is hidden. */
body.alpx-redesign-single-product .woocommerce-product-gallery img.zoomImg {
	display: none !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

@media (hover: hover) and (pointer: fine) {
	body.alpx-redesign-single-product .woocommerce-product-gallery__image:hover img:not(.zoomImg) {
		transform: none !important;
		filter: none !important;
	}

	body.alpx-redesign-single-product .woocommerce-product-gallery__wrapper:hover {
		box-shadow: inset 0 0 0 1px rgba(7, 139, 142, .13);
	}
}

body.alpx-redesign-single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	top: 26px !important;
	right: 26px !important;
	width: 46px !important;
	height: 46px !important;
	border: 1px solid rgba(7, 139, 142, .18) !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, .94) !important;
	box-shadow: 0 10px 25px rgba(5, 51, 58, .12) !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger::before,
body.alpx-redesign-single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger::after {
	color: var(--alpx-sp-deep) !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs {
	display: flex !important;
	flex-wrap: wrap;
	gap: 12px;
	margin: 14px 0 0 !important;
	padding: 3px 3px 5px !important;
	list-style: none !important;
	overflow: visible !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs li,
body.alpx-redesign-single-product .woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
	float: none !important;
	clear: none !important;
	width: 82px !important;
	max-width: 82px !important;
	height: 82px !important;
	margin: 0 !important;
	padding: 4px !important;
	border: 1px solid var(--alpx-sp-line);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 20px rgba(5, 51, 58, .06);
	overflow: visible;
	box-sizing: border-box;
	transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs li:hover {
	border-color: rgba(7, 139, 142, .45);
	box-shadow: 0 10px 24px rgba(7, 139, 142, .12);
}

body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs li.is-active,
body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active) {
	border-color: transparent !important;
	background: #fff !important;
	box-shadow: 0 0 0 2px var(--alpx-sp-teal), 0 10px 24px rgba(7, 139, 142, .14) !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs img {
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	border-radius: 10px;
	object-fit: cover;
	opacity: .76;
	overflow: hidden;
}

body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active {
	opacity: 1;
}

/* Product summary card */
body.alpx-redesign-single-product .summary.entry-summary {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(26px, 2.5vw, 34px) !important;
	border: 1px solid rgba(7, 139, 142, .14);
	border-radius: 26px;
	background: rgba(255, 255, 255, .96);
	box-shadow: var(--alpx-sp-shadow);
	display: flex !important;
	flex-direction: column;
	box-sizing: border-box;
}

body.alpx-redesign-single-product .summary.entry-summary::before {
	content: "ALPHALABS RESEARCH MATERIAL";
	order: 0;
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	margin: 0 0 14px;
	padding: 7px 12px;
	border-radius: 999px;
	background: var(--alpx-sp-teal-soft);
	color: var(--alpx-sp-teal);
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .09em;
}

body.alpx-redesign-single-product .summary.entry-summary > h2,
body.alpx-redesign-single-product .summary.entry-summary > h2:has(.product_title) {
	order: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	font: inherit !important;
	line-height: inherit !important;
}

body.alpx-redesign-single-product h1.product_title.entry-title {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--alpx-sp-ink) !important;
	-webkit-text-fill-color: currentColor !important;
	background: none !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: clamp(30px, 3vw, 46px) !important;
	font-weight: 800 !important;
	line-height: 1.08 !important;
	letter-spacing: -.035em;
}

body.alpx-redesign-single-product .summary.entry-summary > .woocommerce-product-details__short-description {
	order: 2 !important;
	margin: 14px 0 0 !important;
	padding: 0 !important;
	color: var(--alpx-sp-muted);
	font-size: 16px;
	line-height: 1.65;
}

body.alpx-redesign-single-product .summary.entry-summary .woocommerce-product-details__short-description,
body.alpx-redesign-single-product .summary.entry-summary .woocommerce-product-details__short-description p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* Tested-for chips */
body.alpx-redesign-single-product .summary.entry-summary .tested_for {
	order: 3 !important;
	margin: 18px 0 0 !important;
	padding: 15px !important;
	border: 1px solid rgba(7, 139, 142, .13);
	border-radius: 18px;
	background: linear-gradient(135deg, rgba(234, 248, 247, .92), rgba(255, 255, 255, .96));
}

body.alpx-redesign-single-product .summary.entry-summary .tested_for > span {
	display: block !important;
	margin: 0 0 10px !important;
	color: var(--alpx-sp-ink) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.alpx-redesign-single-product .summary.entry-summary .tested_for ul {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary .tested_for li {
	display: inline-flex !important;
	align-items: center;
	gap: 7px;
	min-height: 34px;
	margin: 0 !important;
	padding: 8px 11px !important;
	border: 1px solid rgba(7, 139, 142, .14);
	border-radius: 999px;
	background: #fff;
	color: var(--alpx-sp-deep) !important;
	font-size: 13px !important;
	font-weight: 700;
	line-height: 1 !important;
	letter-spacing: .01em;
	text-transform: capitalize !important;
}

body.alpx-redesign-single-product .summary.entry-summary .tested_for li::before {
	content: "✓";
	display: grid;
	place-items: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--alpx-sp-teal);
	color: #fff;
	font-size: 11px;
	font-weight: 900;
}

/* Price */
body.alpx-redesign-single-product .summary.entry-summary > p.price {
	order: 4 !important;
	display: flex !important;
	align-items: flex-start;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 5px;
	margin: 19px 0 0 !important;
	padding: 0 !important;
	color: var(--alpx-sp-orange) !important;
	font-size: 30px !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
}

body.alpx-redesign-single-product .summary.entry-summary > p.price::before {
	content: "Price";
	flex-basis: 100%;
	color: var(--alpx-sp-muted);
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.alpx-redesign-single-product .summary.entry-summary .price .amount,
body.alpx-redesign-single-product .summary.entry-summary .price .amount bdi,
body.alpx-redesign-single-product .summary.entry-summary .price ins,
body.alpx-redesign-single-product .summary.entry-summary .price ins .amount,
body.alpx-redesign-single-product .summary.entry-summary .price ins bdi {
	color: var(--alpx-sp-orange) !important;
	-webkit-text-fill-color: currentColor !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary .price ins {
	order: 3;
	display: block !important;
	margin: 0 !important;
}

body.alpx-redesign-single-product .summary.entry-summary .price del {
	order: 2;
	display: block !important;
	margin: 0 !important;
	color: #8d9a9f !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	opacity: .88 !important;
	text-decoration-line: line-through !important;
	text-decoration-thickness: 1.5px !important;
	text-decoration-color: currentColor !important;
	text-decoration-skip-ink: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary .price del .amount,
body.alpx-redesign-single-product .summary.entry-summary .price del bdi {
	color: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	text-decoration: inherit !important;
}

/* Add to cart */
body.alpx-redesign-single-product .summary.entry-summary form.cart {
	order: 5 !important;
	display: grid !important;
	grid-template-columns: 142px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
	width: 100% !important;
	margin: 14px 0 0 !important;
	padding: 0 !important;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart .qib-button-wrapper {
	grid-column: 1 !important;
	grid-row: 1 !important;
	display: grid !important;
	grid-template-columns: 42px minmax(42px, 1fr) 42px !important;
	align-items: center !important;
	width: 100% !important;
	height: 50px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(7, 139, 142, .2) !important;
	border-radius: 14px !important;
	background: var(--alpx-sp-teal-soft) !important;
	overflow: hidden !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart .qib-button-wrapper .quantity,
body.alpx-redesign-single-product .summary.entry-summary form.cart .qib-button-wrapper .wqpmb_quantity {
	display: block !important;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: #fff !important;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart input.qty,
body.alpx-redesign-single-product .summary.entry-summary form.cart .wqpmb_input_text {
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 0 4px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--alpx-sp-ink) !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 48px !important;
	text-align: center !important;
	appearance: textfield;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart button.qib-button,
body.alpx-redesign-single-product .summary.entry-summary form.cart .minus.qib-button,
body.alpx-redesign-single-product .summary.entry-summary form.cart .plus.qib-button {
	position: static !important;
	display: grid !important;
	place-items: center !important;
	float: none !important;
	width: 42px !important;
	height: 48px !important;
	min-width: 42px !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--alpx-sp-teal-soft) !important;
	box-shadow: none !important;
	color: var(--alpx-sp-deep) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 20px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	cursor: pointer;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart button.qib-button:hover,
body.alpx-redesign-single-product .summary.entry-summary form.cart button.qib-button:focus-visible {
	background: var(--alpx-sp-teal) !important;
	color: #fff !important;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart .single_add_to_cart_button,
body.alpx-redesign-single-product .summary.entry-summary form.cart button.single_add_to_cart_button.button.alt {
	grid-column: 2 !important;
	grid-row: 1 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 50px !important;
	margin: 0 !important;
	padding: 13px 24px !important;
	border: 1px solid var(--alpx-sp-deep) !important;
	border-radius: 14px !important;
	background: var(--alpx-sp-deep) !important;
	box-shadow: 0 12px 26px rgba(5, 51, 58, .18) !important;
	color: #fff !important;
	-webkit-text-fill-color: currentColor !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	letter-spacing: .01em;
	text-transform: none !important;
	transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart .single_add_to_cart_button::after {
	content: "→";
	margin-left: 10px;
	font-size: 18px;
	line-height: 1;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart .single_add_to_cart_button:hover,
body.alpx-redesign-single-product .summary.entry-summary form.cart .single_add_to_cart_button:focus-visible {
	transform: translateY(-2px);
	border-color: var(--alpx-sp-orange) !important;
	background: var(--alpx-sp-orange) !important;
	box-shadow: 0 15px 30px rgba(238, 120, 26, .22) !important;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart > div[style*="width:93"],
body.alpx-redesign-single-product .summary.entry-summary form.cart .trustedsite-trustmark {
	grid-column: 1 / -1 !important;
	grid-row: 2 !important;
	width: 100% !important;
	max-width: 100%;
}

body.alpx-redesign-single-product .summary.entry-summary form.cart > div[style*="width:93"] {
	margin-top: 2px;
}

/* Variable, grouped, and composite products retain native controls. */
body.alpx-redesign-single-product .summary.entry-summary form.variations_form,
body.alpx-redesign-single-product .summary.entry-summary form.grouped_form,
body.alpx-redesign-single-product .summary.entry-summary form.composite_form {
	display: block !important;
}

body.alpx-redesign-single-product .summary.entry-summary .variations,
body.alpx-redesign-single-product .summary.entry-summary .group_table {
	width: 100% !important;
	margin: 0 0 16px !important;
	border: 1px solid var(--alpx-sp-line) !important;
	border-radius: 16px;
	background: #fff;
	overflow: hidden;
}

body.alpx-redesign-single-product .summary.entry-summary .variations th,
body.alpx-redesign-single-product .summary.entry-summary .variations td,
body.alpx-redesign-single-product .summary.entry-summary .group_table td {
	padding: 12px !important;
	border-bottom: 1px solid var(--alpx-sp-line) !important;
}

body.alpx-redesign-single-product .summary.entry-summary .variations select {
	width: 100% !important;
	min-height: 48px;
	border: 1px solid var(--alpx-sp-line) !important;
	border-radius: 12px;
	background: #fff;
	color: var(--alpx-sp-ink);
}

body.alpx-redesign-single-product .summary.entry-summary .woocommerce-variation-add-to-cart {
	display: grid !important;
	grid-template-columns: 142px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
}

/* Metadata and research notice */
body.alpx-redesign-single-product .summary.entry-summary .product_meta {
	display: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary .keypoints_desc {
	order: 6 !important;
	margin: 16px 0 0 !important;
	padding: 14px 16px 14px 46px !important;
	border: 1px solid rgba(238, 120, 26, .18);
	border-radius: 16px;
	background: var(--alpx-sp-orange-soft);
	color: #6d4c35;
	font-size: 12px;
	line-height: 1.6;
	position: relative;
}

body.alpx-redesign-single-product .summary.entry-summary .keypoints_desc::before {
	content: "i";
	position: absolute;
	left: 17px;
	top: 17px;
	display: grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--alpx-sp-orange);
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	font-style: normal;
}

body.alpx-redesign-single-product .summary.entry-summary .keypoints_desc p {
	margin: 0 !important;
}

body.alpx-redesign-single-product .summary.entry-summary .keypoints_desc a {
	color: var(--alpx-sp-orange-dark) !important;
	font-weight: 800;
}

/* Delivery/support panel */
body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box {
	order: 8 !important;
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 0 !important;
	margin: 18px 0 0 !important;
	padding: 4px 18px !important;
	border: 1px solid rgba(7, 139, 142, .13) !important;
	border-radius: 18px !important;
	background: linear-gradient(135deg, #f1faf9, #fffaf5) !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box > .icon-box {
	display: grid !important;
	grid-template-columns: 40px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	width: 100% !important;
	margin: 0 !important;
	padding: 14px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(7, 139, 142, .1) !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box > .icon-box:last-child {
	border-bottom: 0 !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box .icon {
	display: grid !important;
	place-items: center !important;
	width: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 8px !important;
	border: 1px solid rgba(7, 139, 142, .14) !important;
	border-radius: 13px !important;
	background: #fff !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box .icon img {
	width: 24px !important;
	height: 24px !important;
	object-fit: contain;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box .icon-box-text,
body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box .icon-box-text p {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 11px !important;
	line-height: 1.45 !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box .icon-box-text p span:first-child {
	display: inline-block;
	margin-bottom: 2px;
	color: var(--alpx-sp-ink) !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

/* Balanced trust strip moved below the two hero cards by single-product.js. */
body.alpx-redesign-single-product .alpx-sp-trust-strip {
	grid-column: 2 / 4 !important;
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 12px !important;
	width: 100% !important;
	margin: 22px 0 0 !important;
	padding: 14px !important;
	border: 1px solid rgba(7, 139, 142, .13) !important;
	border-radius: 20px !important;
	background: linear-gradient(135deg, #f1faf9, #fffaf5) !important;
	box-shadow: 0 14px 36px rgba(5, 51, 58, .05) !important;
}

body.alpx-redesign-single-product .alpx-sp-trust-strip > .icon-box {
	display: grid !important;
	grid-template-columns: 42px minmax(0, 1fr);
	align-items: center;
	gap: 11px;
	min-width: 0;
	margin: 0 !important;
	padding: 12px 14px !important;
	border: 1px solid rgba(7, 139, 142, .1) !important;
	border-radius: 15px !important;
	background: rgba(255, 255, 255, .78) !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .alpx-sp-trust-strip .icon {
	display: grid !important;
	place-items: center !important;
	width: 42px !important;
	height: 42px !important;
	margin: 0 !important;
	padding: 8px !important;
	border: 1px solid rgba(7, 139, 142, .14) !important;
	border-radius: 13px !important;
	background: #fff !important;
}

body.alpx-redesign-single-product .alpx-sp-trust-strip .icon img {
	width: 24px !important;
	height: 24px !important;
	object-fit: contain;
}

body.alpx-redesign-single-product .alpx-sp-trust-strip .icon-box-text,
body.alpx-redesign-single-product .alpx-sp-trust-strip .icon-box-text p {
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 10px !important;
	line-height: 1.45 !important;
}

body.alpx-redesign-single-product .alpx-sp-trust-strip .icon-box-text p span:first-child {
	display: block;
	margin-bottom: 2px;
	color: var(--alpx-sp-ink) !important;
	font-size: 12px !important;
	font-weight: 800 !important;
}

/* Tabs */
body.alpx-redesign-single-product .woocommerce-tabs.nw_vc {
	width: 100% !important;
	margin: clamp(54px, 7vw, 92px) 0 0 !important;
	padding: clamp(44px, 6vw, 76px) 0 !important;
	background: linear-gradient(180deg, #f7fbfa, #fbfaf8) !important;
}

body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container {
	width: min(1280px, calc(100% - 48px)) !important;
	max-width: 1280px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs {
	display: inline-flex !important;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 14px !important;
	padding: 6px !important;
	border: 1px solid var(--alpx-sp-line) !important;
	border-radius: 16px !important;
	background: #fff !important;
	box-shadow: 0 12px 32px rgba(5, 51, 58, .07);
}

body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs::before,
body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs::after,
body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li::before,
body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li::after {
	display: none !important;
	content: none !important;
}

body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li {
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 12px !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 11px 18px !important;
	border-radius: 11px;
	color: var(--alpx-sp-muted) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
}

body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li.active,
body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li:hover {
	background: var(--alpx-sp-deep) !important;
}

body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li.active a,
body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li:hover a {
	color: #fff !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
	margin: 0 !important;
	padding: clamp(26px, 4vw, 48px) !important;
	border: 1px solid var(--alpx-sp-line) !important;
	border-radius: 22px !important;
	background: #fff !important;
	box-shadow: 0 18px 52px rgba(5, 51, 58, .07);
	color: var(--alpx-sp-muted);
	font-size: 15px;
	line-height: 1.75;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel > h2:first-child {
	display: none !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel h2,
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel h3 {
	margin-top: 0;
	color: var(--alpx-sp-ink) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-weight: 800 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes {
	width: 100% !important;
	margin: 0 !important;
	border: 1px solid var(--alpx-sp-line) !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	border-radius: 16px;
	overflow: hidden;
}

body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes tr:nth-child(odd) {
	background: #f7fbfa !important;
}

body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes th,
body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes td {
	padding: 15px 18px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--alpx-sp-line) !important;
	background: transparent !important;
	font-style: normal !important;
}

body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes tr:last-child th,
body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes tr:last-child td {
	border-bottom: 0 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes th {
	width: 28%;
	color: var(--alpx-sp-ink) !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes td,
body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes td p {
	margin: 0 !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 13px !important;
	line-height: 1.55 !important;
}

/* Service cards */
body.alpx-redesign-single-product sectoin.ezp-container,
body.alpx-redesign-single-product section.ezp-container {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: clamp(42px, 6vw, 74px) 0 !important;
	background: #fbfaf8 !important;
}

body.alpx-redesign-single-product .ezp_services_grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 14px !important;
	width: min(1280px, calc(100% - 48px)) !important;
	max-width: 1280px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.alpx-redesign-single-product .ezp_service_card {
	display: flex !important;
	flex-direction: column;
	align-items: flex-start;
	min-height: 190px;
	margin: 0 !important;
	padding: 24px !important;
	border: 1px solid var(--alpx-sp-line) !important;
	border-radius: 20px !important;
	background: #fff !important;
	box-shadow: 0 14px 38px rgba(5, 51, 58, .06) !important;
	text-align: left !important;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

body.alpx-redesign-single-product .ezp_service_card:hover {
	transform: translateY(-4px) !important;
	border-color: rgba(7, 139, 142, .3) !important;
	box-shadow: 0 20px 45px rgba(5, 51, 58, .1) !important;
}

body.alpx-redesign-single-product .ezp_service_icon {
	display: grid !important;
	place-items: center;
	width: 48px;
	height: 48px;
	margin: 0 0 20px !important;
	border: 1px solid rgba(7, 139, 142, .14);
	border-radius: 15px;
	background: var(--alpx-sp-teal-soft);
	color: var(--alpx-sp-teal);
	font-size: 0 !important;
}

body.alpx-redesign-single-product .ezp_service_icon svg {
	width: 25px;
	height: 25px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
}

body.alpx-redesign-single-product .ezp_service_card h3 {
	margin: 0 0 8px !important;
	color: var(--alpx-sp-ink) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
}

body.alpx-redesign-single-product .ezp_service_card p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
	margin: 0 !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 12px !important;
	line-height: 1.55 !important;
}

/* Related products */
body.alpx-redesign-single-product section.related.products {
	width: 100% !important;
	margin: 0 !important;
	padding: clamp(24px, 4vw, 48px) 0 clamp(72px, 8vw, 112px) !important;
	background: #fbfaf8 !important;
}

body.alpx-redesign-single-product section.related.products > .container {
	width: min(1280px, calc(100% - 48px)) !important;
	max-width: 1280px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.alpx-redesign-single-product section.related.products > .container > h2 {
	margin: 0 0 28px !important;
	padding: 0 !important;
	background: none !important;
	color: var(--alpx-sp-ink) !important;
	-webkit-text-fill-color: currentColor !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: clamp(30px, 3.4vw, 46px) !important;
	font-weight: 800 !important;
	line-height: 1.08 !important;
	letter-spacing: -.035em;
}

body.alpx-redesign-single-product section.related.products > .container > h2::before {
	content: "EXPLORE MORE";
	display: block;
	margin-bottom: 9px;
	color: var(--alpx-sp-teal);
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .1em;
}

body.alpx-redesign-single-product section.related.products > .container > h2::after {
	content: "Complementary research materials from the AlphaLabs catalog.";
	display: block;
	max-width: 620px;
	margin-top: 10px;
	color: var(--alpx-sp-muted);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.55;
	letter-spacing: 0;
}

body.alpx-redesign-single-product section.related.products ul.products,
body.alpx-redesign-single-product section.related.products ul.products.columns-4 {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 18px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.alpx-redesign-single-product section.related.products ul.products::before,
body.alpx-redesign-single-product section.related.products ul.products::after {
	display: none !important;
	content: none !important;
}

body.alpx-redesign-single-product section.related.products li.product.alpx-catalog-card {
	float: none !important;
	clear: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 0;
	margin: 0;
	border: 1px solid var(--alpx-sp-line);
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 14px 38px rgba(5, 51, 58, .07);
	overflow: hidden;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
	transform: translateZ(0);
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner:hover,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner:focus-within {
	transform: translateY(-6px);
	border-color: rgba(7, 139, 142, .26);
	box-shadow: 0 24px 58px rgba(5, 51, 58, .13);
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__media {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	margin: 0;
	border: 0;
	border-radius: 22px 22px 0 0;
	background: #fff !important;
	overflow: hidden;
	isolation: isolate;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__media::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	border-radius: inherit;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.35);
	z-index: 1;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__media::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(125deg, transparent 22%, rgba(255,255,255,.3) 48%, transparent 70%);
	transform: translateX(-120%);
	transition: transform .7s ease;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner:hover .alpx-catalog-card__media::after {
	transform: translateX(120%);
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__media img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	border-radius: inherit;
	object-fit: cover !important;
	object-position: center;
	transition: transform .45s cubic-bezier(.2,.8,.2,1);
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner:hover .alpx-catalog-card__media img {
	transform: scale(1.035);
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__badges {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 3;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-height: 28px;
	padding: 7px 10px;
	border-radius: 999px;
	box-shadow: 0 8px 18px rgba(5, 51, 58, .12);
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .03em;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__badge--new {
	background: #0bb889;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__badge--sale {
	background: var(--alpx-sp-orange);
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 0;
	padding: 18px;
	background: #fff;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__summary {
	display: flex;
	flex-direction: column;
	gap: 7px;
	margin: 0;
}

body.alpx-redesign-single-product section.related.products .woocommerce-loop-product__title {
	min-height: 2.1em;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--alpx-sp-ink) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	text-align: left !important;
}

body.alpx-redesign-single-product section.related.products .woocommerce-loop-product__title a {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	color: inherit !important;
	text-decoration: none !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price-wrap {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 10px;
	margin: 0;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price-wrap > span {
	color: var(--alpx-sp-muted);
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .06em;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price {
	color: var(--alpx-sp-ink);
	font-size: 17px;
	font-weight: 800;
	line-height: 1.1;
	text-align: right;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price del {
	display: inline-block;
	margin-right: 5px;
	color: #8c9da0 !important;
	font-size: 12.5px !important;
	font-weight: 650 !important;
	line-height: 1.1 !important;
	text-decoration-line: line-through !important;
	text-decoration-thickness: 1.25px !important;
	text-decoration-color: currentColor !important;
	text-decoration-skip-ink: none !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price del .woocommerce-Price-amount,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price del bdi {
	color: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	text-decoration: inherit !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price ins {
	color: var(--alpx-sp-orange) !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__category {
	min-height: 1.4em;
	margin: 8px 0 0 !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 12.5px !important;
	line-height: 1.4 !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__footer {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: auto;
	padding-top: 12px;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row {
	display: grid !important;
	grid-template-columns: 104px minmax(0, 1fr);
	gap: 8px;
	align-items: stretch;
	width: 100%;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row.no-quantity {
	grid-template-columns: 1fr;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper {
	width: 100% !important;
	margin: 0 !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper {
	display: grid !important;
	grid-template-columns: 30px minmax(34px, 1fr) 30px !important;
	height: 42px !important;
	border: 1px solid rgba(7, 139, 142, .2) !important;
	border-radius: 12px !important;
	background: var(--alpx-sp-teal-soft) !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper .quantity,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper .wqpmb_quantity {
	display: block !important;
	width: 100% !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: #fff !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity input.qty,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .wqpmb_input_text {
	width: 100% !important;
	height: 40px !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--alpx-sp-ink) !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 40px !important;
	text-align: center !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity button.qib-button,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity button.minus,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity button.plus {
	position: static !important;
	display: grid !important;
	place-items: center !important;
	float: none !important;
	width: 30px !important;
	height: 40px !important;
	min-width: 30px !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--alpx-sp-teal-soft) !important;
	box-shadow: none !important;
	color: var(--alpx-sp-deep) !important;
	font-size: 15px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .button {
	width: 100% !important;
	margin: 0 !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .button,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .add_to_cart_button,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .product_type_simple,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .product_type_variable,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .product_type_grouped,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .product_type_external {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 44px !important;
	padding: 11px 12px !important;
	border: 1px solid var(--alpx-sp-deep) !important;
	border-radius: 12px !important;
	background: var(--alpx-sp-deep) !important;
	background-image: none !important;
	box-shadow: none !important;
	color: #fff !important;
	-webkit-text-fill-color: currentColor !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 12.5px !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: normal;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .button:hover,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .button:focus-visible {
	border-color: var(--alpx-sp-orange) !important;
	background: var(--alpx-sp-orange) !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__learn-more,
body.alpx-redesign-single-product section.related.products a.alpx-catalog-card__learn-more {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 42px;
	margin: 0 !important;
	padding: 9px 10px !important;
	border: 1px solid var(--alpx-sp-line) !important;
	border-radius: 11px !important;
	background: #fff !important;
	color: var(--alpx-sp-teal) !important;
	font-size: 12.5px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__learn-more svg {
	width: 15px;
	height: 15px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

body.alpx-redesign-single-product section.related.products .alpx-catalog-card__learn-more:hover,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__learn-more:focus-visible {
	border-color: rgba(7, 139, 142, .25) !important;
	background: var(--alpx-sp-teal-soft) !important;
}

body.alpx-redesign-single-product section.related.products .added_to_cart {
	display: block;
	margin-top: 7px;
	color: var(--alpx-sp-teal) !important;
	font-size: 11px;
	font-weight: 800;
	text-align: center;
}

/* Keep approved bottom section untouched; only guarantee full-width placement. */
body.alpx-redesign-single-product .excellence {
	grid-column: 1 / -1 !important;
}

/* Tablet */
@media (max-width: 1099px) {
	body.alpx-redesign-single-product div[id^="product-"] {
		grid-template-columns: minmax(24px, 1fr) minmax(0, 520px) minmax(0, 520px) minmax(24px, 1fr);
		column-gap: 28px;
	}

	body.alpx-redesign-single-product .summary.entry-summary {
		padding: 28px !important;
	}

	body.alpx-redesign-single-product .ezp_services_grid,
	body.alpx-redesign-single-product section.related.products ul.products,
	body.alpx-redesign-single-product section.related.products ul.products.columns-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* Stack hero */
@media (max-width: 860px) {
	body.alpx-redesign-single-product div[id^="product-"] {
		display: block !important;
		padding: 34px 20px 0 !important;
		background:
			radial-gradient(circle at 5% 2%, rgba(7, 139, 142, .08), transparent 22%),
			radial-gradient(circle at 95% 3%, rgba(238, 120, 26, .09), transparent 22%),
			#fbfaf8;
	}

	body.alpx-redesign-single-product div[id^="product-"] > div:first-of-type,
	body.alpx-redesign-single-product div[id^="product-"] > .summary.entry-summary {
		width: 100% !important;
		max-width: 680px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	body.alpx-redesign-single-product div[id^="product-"] > .summary.entry-summary {
		margin-top: 24px !important;
	}

	body.alpx-redesign-single-product .alpx-sp-trust-strip {
		width: 100% !important;
		max-width: 680px !important;
		margin: 18px auto 0 !important;
		grid-template-columns: 1fr !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc,
	body.alpx-redesign-single-product sectoin.ezp-container,
	body.alpx-redesign-single-product section.ezp-container,
	body.alpx-redesign-single-product section.related.products,
	body.alpx-redesign-single-product .excellence {
		width: 100% !important;
		max-width: 100% !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
	}

	body.alpx-redesign-single-product section.related.products ul.products,
	body.alpx-redesign-single-product section.related.products ul.products.columns-4 {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

/* Mobile */
@media (max-width: 600px) {
	body.alpx-redesign-single-product .woocommerce-notices-wrapper,
	body.alpx-redesign-single-product .bread-crumb .container,
	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container,
	body.alpx-redesign-single-product .ezp_services_grid,
	body.alpx-redesign-single-product section.related.products > .container {
		width: min(100% - 28px, 1280px) !important;
	}

	body.alpx-redesign-single-product .bread-crumb {
		min-height: 38px;
	}

	body.alpx-redesign-single-product .bread-crumb .container {
		font-size: 10px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	body.alpx-redesign-single-product div[id^="product-"] {
		padding: 24px 14px 0 !important;
	}

	body.alpx-redesign-single-product .woocommerce-product-gallery {
		padding: 8px !important;
		border-radius: 20px !important;
	}

	body.alpx-redesign-single-product .woocommerce-product-gallery__wrapper,
	body.alpx-redesign-single-product .woocommerce-product-gallery__image,
	body.alpx-redesign-single-product .woocommerce-product-gallery__image a,
	body.alpx-redesign-single-product .woocommerce-product-gallery__image img {
		border-radius: 15px;
	}

	body.alpx-redesign-single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
		top: 17px !important;
		right: 17px !important;
		width: 44px !important;
		height: 44px !important;
	}

	body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs {
		gap: 8px;
		margin-top: 10px !important;
	}

	body.alpx-redesign-single-product .woocommerce-product-gallery .flex-control-thumbs li,
	body.alpx-redesign-single-product .woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
		width: 66px !important;
		max-width: 66px !important;
		height: 66px !important;
		padding: 3px !important;
		border-radius: 11px;
	}

	body.alpx-redesign-single-product .summary.entry-summary {
		margin-top: 16px !important;
		padding: 22px !important;
		border-radius: 20px;
	}

	body.alpx-redesign-single-product .summary.entry-summary::before {
		margin-bottom: 11px;
		font-size: 9px;
	}

	body.alpx-redesign-single-product h1.product_title.entry-title {
		font-size: 30px !important;
	}

	body.alpx-redesign-single-product .summary.entry-summary > .woocommerce-product-details__short-description {
		font-size: 14px;
		line-height: 1.55;
	}

	body.alpx-redesign-single-product .summary.entry-summary .tested_for {
		margin-top: 18px !important;
		padding: 14px !important;
	}

	body.alpx-redesign-single-product .summary.entry-summary .tested_for li {
		min-height: 33px;
		padding: 7px 10px !important;
		font-size: 11.5px !important;
	}

	body.alpx-redesign-single-product .summary.entry-summary > p.price {
		margin-top: 20px !important;
		font-size: 27px !important;
	}

	body.alpx-redesign-single-product .summary.entry-summary form.cart,
	body.alpx-redesign-single-product .summary.entry-summary .woocommerce-variation-add-to-cart {
		grid-template-columns: 126px minmax(0, 1fr);
		gap: 9px;
	}

	body.alpx-redesign-single-product .alpx-sp-trust-strip {
		padding: 10px !important;
		border-radius: 17px !important;
	}

	body.alpx-redesign-single-product .summary.entry-summary .keypoints_desc {
		padding: 14px 14px 14px 44px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc,
	body.alpx-redesign-single-product sectoin.ezp-container,
	body.alpx-redesign-single-product section.ezp-container,
	body.alpx-redesign-single-product section.related.products,
	body.alpx-redesign-single-product .excellence {
		width: 100% !important;
		max-width: 100% !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
	}

	body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li a {
		width: 100%;
		padding: 10px 8px !important;
		font-size: 11px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
		padding: 22px !important;
		font-size: 13px;
		line-height: 1.65;
	}

	body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes th,
	body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes td {
		display: block;
		width: 100% !important;
		padding: 11px 14px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes th {
		padding-bottom: 4px !important;
		border-bottom: 0 !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs table.shop_attributes td {
		padding-top: 4px !important;
	}

	body.alpx-redesign-single-product .ezp_services_grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	body.alpx-redesign-single-product .ezp_service_card {
		min-height: 180px;
		padding: 17px !important;
		border-radius: 16px !important;
	}

	body.alpx-redesign-single-product .ezp_service_icon {
		width: 42px;
		height: 42px;
		margin-bottom: 14px !important;
		border-radius: 13px;
	}

	body.alpx-redesign-single-product .ezp_service_card h3 {
		font-size: 13px !important;
	}

	body.alpx-redesign-single-product .ezp_service_card p {
		-webkit-line-clamp: 5;
		font-size: 10px !important;
	}

	body.alpx-redesign-single-product section.related.products ul.products,
	body.alpx-redesign-single-product section.related.products ul.products.columns-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	body.alpx-redesign-single-product section.related.products > .container > h2 {
		margin-bottom: 20px !important;
		font-size: 31px !important;
	}

	body.alpx-redesign-single-product section.related.products > .container > h2::after {
		font-size: 12px;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner {
		border-radius: 16px;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__body {
		padding: 12px;
	}

	body.alpx-redesign-single-product section.related.products .woocommerce-loop-product__title {
		min-height: 3.2em;
		font-size: 13px !important;
		line-height: 1.28 !important;
	}

	body.alpx-redesign-single-product section.related.products .woocommerce-loop-product__title a {
		-webkit-line-clamp: 3;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price-wrap {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price {
		font-size: 14px;
		text-align: left;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__category {
		font-size: 11.5px !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row.no-quantity {
		grid-template-columns: 1fr;
		gap: 7px;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper {
		grid-template-columns: 34px minmax(34px, 1fr) 34px !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity button.qib-button,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity button.minus,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity button.plus {
		width: 34px !important;
		min-width: 34px !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .button,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__learn-more {
		font-size: 12.5px !important;
	}
}

@media (max-width: 390px) {
	body.alpx-redesign-single-product .summary.entry-summary form.cart,
	body.alpx-redesign-single-product .summary.entry-summary .woocommerce-variation-add-to-cart {
		grid-template-columns: 1fr;
	}

	body.alpx-redesign-single-product .summary.entry-summary form.cart .qib-button-wrapper {
		grid-column: 1 !important;
		grid-row: 1 !important;
		max-width: none;
	}

	body.alpx-redesign-single-product .summary.entry-summary form.cart .single_add_to_cart_button,
	body.alpx-redesign-single-product .summary.entry-summary form.cart button.single_add_to_cart_button.button.alt {
		grid-column: 1 !important;
		grid-row: 2 !important;
	}

	body.alpx-redesign-single-product .summary.entry-summary form.cart > div[style*="width:93"],
	body.alpx-redesign-single-product .summary.entry-summary form.cart .trustedsite-trustmark {
		grid-row: 3 !important;
	}

	body.alpx-redesign-single-product .ezp_service_card {
		padding: 14px !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__body {
		padding: 10px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.alpx-redesign-single-product *,
	body.alpx-redesign-single-product *::before,
	body.alpx-redesign-single-product *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}


/* ==========================================================
 * v1.4.18 — hero benefits placement + contained image viewer
 * ========================================================== */

/* Keep the shipping/support benefits inside the right-hand product card. */
body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits {
	order: 8 !important;
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 8px !important;
	width: 100% !important;
	margin: 16px 0 0 !important;
	padding: 10px !important;
	border: 1px solid rgba(7, 139, 142, .13) !important;
	border-radius: 18px !important;
	background: linear-gradient(135deg, #f1faf9, #fffaf5) !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits > .icon-box {
	display: grid !important;
	grid-template-columns: 34px minmax(0, 1fr) !important;
	align-items: center !important;
	gap: 8px !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 9px !important;
	border: 1px solid rgba(7, 139, 142, .1) !important;
	border-radius: 13px !important;
	background: rgba(255, 255, 255, .82) !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon {
	width: 34px !important;
	height: 34px !important;
	padding: 7px !important;
	border-radius: 11px !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon img {
	width: 20px !important;
	height: 20px !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon-box-text,
body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon-box-text p {
	min-width: 0 !important;
	font-size: 9px !important;
	line-height: 1.35 !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon-box-text p span:first-child {
	display: block !important;
	margin: 0 0 2px !important;
	font-size: 10px !important;
	line-height: 1.2 !important;
}

/* The grid already stretches both cards to the same row height. */
@media (min-width: 861px) {
	body.alpx-redesign-single-product div[id^="product-"] > div:first-of-type,
	body.alpx-redesign-single-product div[id^="product-"] > .summary.entry-summary,
	body.alpx-redesign-single-product .woocommerce-product-gallery {
		height: 100% !important;
	}
}

/* Replace the harsh native PhotoSwipe view with an AlphaLabs-contained viewer. */
html.alpx-sp-viewer-open,
body.alpx-sp-viewer-open {
	overflow: hidden !important;
}

body.alpx-redesign-single-product .alpx-sp-viewer[hidden] {
	display: none !important;
}

body.alpx-redesign-single-product .alpx-sp-viewer {
	position: fixed;
	inset: 0;
	z-index: 1000000;
	display: grid;
	place-items: center;
	padding: 20px;
	opacity: 0;
	visibility: hidden;
	transition: opacity .18s ease, visibility .18s ease;
}

body.alpx-redesign-single-product .alpx-sp-viewer.is-open {
	opacity: 1;
	visibility: visible;
}

body.alpx-redesign-single-product .alpx-sp-viewer__backdrop {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 18% 12%, rgba(7, 139, 142, .24), transparent 36%),
		radial-gradient(circle at 84% 88%, rgba(238, 120, 26, .18), transparent 34%),
		rgba(5, 29, 34, .82);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

body.alpx-redesign-single-product .alpx-sp-viewer__dialog {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	width: min(1120px, calc(100vw - 40px));
	max-height: calc(100vh - 40px);
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 28px;
	background: #f7fbfa;
	box-shadow: 0 38px 100px rgba(0, 0, 0, .34);
	overflow: hidden;
	transform: translateY(10px) scale(.985);
	transition: transform .2s ease;
}

body.alpx-redesign-single-product .alpx-sp-viewer.is-open .alpx-sp-viewer__dialog {
	transform: translateY(0) scale(1);
}

body.alpx-redesign-single-product .alpx-sp-viewer__toolbar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto 48px;
	align-items: center;
	gap: 16px;
	min-height: 76px;
	padding: 14px 16px 14px 22px;
	border-bottom: 1px solid rgba(7, 139, 142, .1);
	background: rgba(255, 255, 255, .92);
}

body.alpx-redesign-single-product .alpx-sp-viewer__heading {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

body.alpx-redesign-single-product .alpx-sp-viewer__heading > span {
	color: var(--alpx-sp-teal);
	font-size: 9px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .1em;
	text-transform: uppercase;
}

body.alpx-redesign-single-product .alpx-sp-viewer__heading > strong {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	color: var(--alpx-sp-ink);
	font-size: 17px;
	font-weight: 800;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.alpx-redesign-single-product .alpx-sp-viewer__status {
	min-width: 58px;
	padding: 8px 11px;
	border-radius: 999px;
	background: var(--alpx-sp-teal-soft);
	color: var(--alpx-sp-teal);
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	text-align: center;
}

body.alpx-redesign-single-product .alpx-sp-viewer__close,
body.alpx-redesign-single-product .alpx-sp-viewer__nav {
	display: grid;
	place-items: center;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(7, 139, 142, .14);
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 25px rgba(5, 51, 58, .11);
	color: var(--alpx-sp-deep);
	cursor: pointer;
	transition: transform .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease;
}

body.alpx-redesign-single-product .alpx-sp-viewer__close {
	width: 48px;
	height: 48px;
	border-radius: 15px;
}

body.alpx-redesign-single-product .alpx-sp-viewer__close svg,
body.alpx-redesign-single-product .alpx-sp-viewer__nav svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
}

body.alpx-redesign-single-product .alpx-sp-viewer__close:hover,
body.alpx-redesign-single-product .alpx-sp-viewer__close:focus-visible,
body.alpx-redesign-single-product .alpx-sp-viewer__nav:hover,
body.alpx-redesign-single-product .alpx-sp-viewer__nav:focus-visible {
	transform: translateY(-1px);
	border-color: var(--alpx-sp-teal);
	background: var(--alpx-sp-teal);
	color: #fff;
	outline: none;
}

body.alpx-redesign-single-product .alpx-sp-viewer__stage {
	position: relative;
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) 58px;
	align-items: center;
	gap: 18px;
	min-height: 0;
	padding: 22px 24px;
	background:
		radial-gradient(circle at 15% 20%, rgba(7, 139, 142, .11), transparent 34%),
		radial-gradient(circle at 86% 78%, rgba(238, 120, 26, .1), transparent 32%),
		linear-gradient(135deg, #eef8f7, #fffaf5);
}

body.alpx-redesign-single-product .alpx-sp-viewer--single .alpx-sp-viewer__stage,
body.alpx-redesign-single-product .alpx-sp-viewer__stage.alpx-sp-viewer__stage--single {
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 0 !important;
}

body.alpx-redesign-single-product .alpx-sp-viewer--single .alpx-sp-viewer__image-shell,
body.alpx-redesign-single-product .alpx-sp-viewer__stage.alpx-sp-viewer__stage--single .alpx-sp-viewer__image-shell {
	grid-column: 1 / -1 !important;
	width: 100% !important;
}

body.alpx-redesign-single-product .alpx-sp-viewer__nav[hidden],
body.alpx-redesign-single-product .alpx-sp-viewer__thumbs[hidden] {
	display: none !important;
}

body.alpx-redesign-single-product .alpx-sp-viewer__nav {
	width: 58px;
	height: 58px;
	border-radius: 18px;
}

body.alpx-redesign-single-product .alpx-sp-viewer__image-shell {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 0;
	height: min(68vh, 720px);
	padding: 18px;
	border: 1px solid rgba(7, 139, 142, .12);
	border-radius: 22px;
	background: rgba(255, 255, 255, .9);
	box-shadow: 0 18px 48px rgba(5, 51, 58, .09);
	overflow: hidden;
}

body.alpx-redesign-single-product .alpx-sp-viewer__image {
	display: block;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 100% !important;
	margin: 0 !important;
	border-radius: 16px;
	object-fit: contain;
	box-shadow: 0 14px 36px rgba(5, 51, 58, .12);
	opacity: 1;
	transition: opacity .16s ease;
}

body.alpx-redesign-single-product .alpx-sp-viewer__image.is-loading {
	opacity: .18;
}

body.alpx-redesign-single-product .alpx-sp-viewer__loader {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 38px;
	height: 38px;
	margin: -19px 0 0 -19px;
	border: 3px solid rgba(7, 139, 142, .18);
	border-top-color: var(--alpx-sp-teal);
	border-radius: 50%;
	animation: alpxSpViewerSpin .7s linear infinite;
}

@keyframes alpxSpViewerSpin {
	to { transform: rotate(360deg); }
}

body.alpx-redesign-single-product .alpx-sp-viewer__thumbs {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 96px;
	padding: 12px 18px 16px;
	border-top: 1px solid rgba(7, 139, 142, .1);
	background: rgba(255, 255, 255, .94);
	overflow-x: auto;
}

body.alpx-redesign-single-product .alpx-sp-viewer__thumb {
	flex: 0 0 auto;
	width: 64px;
	height: 64px;
	margin: 0;
	padding: 3px;
	border: 1px solid rgba(7, 139, 142, .14);
	border-radius: 13px;
	background: #fff;
	box-shadow: none;
	cursor: pointer;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.alpx-redesign-single-product .alpx-sp-viewer__thumb:hover,
body.alpx-redesign-single-product .alpx-sp-viewer__thumb:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(7, 139, 142, .5);
	outline: none;
}

body.alpx-redesign-single-product .alpx-sp-viewer__thumb.is-active {
	border-color: var(--alpx-sp-teal);
	box-shadow: 0 0 0 2px rgba(7, 139, 142, .18);
}

body.alpx-redesign-single-product .alpx-sp-viewer__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 9px;
	object-fit: cover;
}

@media (max-width: 860px) {
	body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer {
		padding: 12px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__dialog {
		width: calc(100vw - 24px);
		max-height: calc(100vh - 24px);
		border-radius: 22px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__stage {
		grid-template-columns: 46px minmax(0, 1fr) 46px;
		gap: 10px;
		padding: 14px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__nav {
		width: 46px;
		height: 46px;
		border-radius: 14px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__image-shell {
		height: min(64vh, 620px);
		padding: 10px;
	}
}

@media (max-width: 600px) {
	body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits {
		grid-template-columns: 1fr !important;
		gap: 7px !important;
	}

	body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits > .icon-box {
		padding: 9px 10px !important;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__toolbar {
		grid-template-columns: minmax(0, 1fr) 44px;
		gap: 10px;
		min-height: 66px;
		padding: 10px 10px 10px 15px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__status {
		display: none;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__close {
		width: 44px;
		height: 44px;
		border-radius: 13px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__heading > strong {
		font-size: 14px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__stage {
		grid-template-columns: 1fr;
		padding: 10px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__image-shell {
		height: min(66vh, 560px);
		border-radius: 17px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__nav {
		position: absolute;
		top: 50%;
		z-index: 3;
		width: 44px;
		height: 44px;
		margin-top: -22px;
		background: rgba(255, 255, 255, .94);
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__nav--prev {
		left: 18px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__nav--next {
		right: 18px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__thumbs {
		justify-content: flex-start;
		min-height: 82px;
		padding: 10px 12px 12px;
	}

	body.alpx-redesign-single-product .alpx-sp-viewer__thumb {
		width: 56px;
		height: 56px;
	}
}


/* ==========================================================
 * v1.4.20.1 — compact and responsive Related Products mobile layout
 * Built on the approved v1.4.20 rounded-media card treatment.
 * ========================================================== */
@media (max-width: 600px) {
	body.alpx-redesign-single-product section.related.products {
		padding-top: 34px !important;
		padding-bottom: 64px !important;
	}

	body.alpx-redesign-single-product section.related.products > .container {
		width: calc(100% - 24px) !important;
	}

	body.alpx-redesign-single-product section.related.products ul.products,
	body.alpx-redesign-single-product section.related.products ul.products.columns-4 {
		align-items: stretch !important;
		gap: 12px !important;
	}

	/* When WooCommerce returns one related product, let it use the mobile width. */
	body.alpx-redesign-single-product section.related.products ul.products.alpx-related--single,
	body.alpx-redesign-single-product section.related.products ul.products.columns-4.alpx-related--single {
		grid-template-columns: minmax(0, 1fr) !important;
		justify-items: center !important;
	}

	body.alpx-redesign-single-product section.related.products ul.products.alpx-related--single > li.product,
	body.alpx-redesign-single-product section.related.products ul.products.columns-4.alpx-related--single > li.product {
		width: min(100%, 390px) !important;
		max-width: 390px !important;
		grid-column: 1 / -1 !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner {
		min-height: 0 !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__body {
		padding: 12px !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__summary {
		gap: 6px !important;
	}

	body.alpx-redesign-single-product section.related.products .woocommerce-loop-product__title {
		min-height: 2.4em !important;
		font-size: 13px !important;
		line-height: 1.3 !important;
	}

	body.alpx-redesign-single-product section.related.products .woocommerce-loop-product__title a {
		-webkit-line-clamp: 2 !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__price-wrap {
		gap: 3px !important;
		margin-top: 0 !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__category {
		min-height: 0 !important;
		margin-top: 4px !important;
		font-size: 11.5px !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__footer {
		gap: 8px !important;
		margin-top: 10px !important;
		padding-top: 0 !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row.no-quantity {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 7px !important;
	}

	/* Protect all three quantity controls from plugin/global width rules. */
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper {
		min-width: 0 !important;
		max-width: none !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper {
		display: grid !important;
		grid-template-columns: 36px minmax(0, 1fr) 36px !important;
		height: 42px !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper > .minus,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper > .plus,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper > button.qib-button {
		position: static !important;
		display: grid !important;
		width: 36px !important;
		min-width: 36px !important;
		max-width: 36px !important;
		height: 40px !important;
		margin: 0 !important;
		transform: none !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper > .quantity,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper > .wqpmb_quantity {
		min-width: 0 !important;
		max-width: none !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .button {
		min-height: 42px !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__learn-more {
		min-height: 38px !important;
	}

	/* A single wider card can use a compact horizontal purchase row. */
	body.alpx-redesign-single-product section.related.products ul.products.alpx-related--single .woocommerce-loop-product__title {
		min-height: 0 !important;
		font-size: 14px !important;
	}

	body.alpx-redesign-single-product section.related.products ul.products.alpx-related--single .alpx-catalog-card__price-wrap {
		align-items: flex-end !important;
		flex-direction: row !important;
		justify-content: space-between !important;
		gap: 12px !important;
	}

	body.alpx-redesign-single-product section.related.products ul.products.alpx-related--single .alpx-catalog-card__purchase-row {
		grid-template-columns: 118px minmax(0, 1fr) !important;
		align-items: stretch !important;
	}
}

@media (max-width: 360px) {
	body.alpx-redesign-single-product section.related.products ul.products.alpx-related--single .alpx-catalog-card__purchase-row {
		grid-template-columns: 1fr !important;
	}
}


/* ==========================================================
 * v1.4.20.2 — full-width Related Products on phones
 * ========================================================== */
@media (max-width: 600px) {
	body.single-product.alpx-redesign-single-product section.related.products > .container {
		width: calc(100% - 24px) !important;
		max-width: none !important;
		margin-inline: auto !important;
		padding: 0 !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products ul.products,
	body.single-product.alpx-redesign-single-product section.related.products ul.products.columns-4,
	body.single-product.alpx-redesign-single-product section.related.products ul.products.alpx-related--single,
	body.single-product.alpx-redesign-single-product section.related.products ul.products.alpx-related--multiple {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-auto-flow: row !important;
		gap: 16px !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products ul.products > li.product.alpx-catalog-card,
	body.single-product.alpx-redesign-single-product section.related.products ul.products.columns-4 > li.product.alpx-catalog-card,
	body.single-product.alpx-redesign-single-product section.related.products ul.products > li.product.alpx-catalog-card:first-child:last-child {
		float: none !important;
		clear: none !important;
		display: block !important;
		grid-column: 1 !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner {
		width: 100% !important;
		max-width: none !important;
		min-height: 0 !important;
		border-radius: 18px !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__media {
		width: 100% !important;
		aspect-ratio: 1 / 1 !important;
		margin: 0 !important;
		border-radius: 18px 18px 0 0 !important;
		overflow: hidden !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__media img {
		width: 100% !important;
		height: 100% !important;
		margin: 0 !important;
		border-radius: inherit !important;
		object-fit: cover !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__body {
		padding: 16px !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .woocommerce-loop-product__title {
		min-height: 0 !important;
		font-size: 15px !important;
		line-height: 1.35 !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__price-wrap {
		align-items: flex-end !important;
		flex-direction: row !important;
		justify-content: space-between !important;
		gap: 12px !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row.no-quantity {
		display: grid !important;
		grid-template-columns: minmax(122px, .8fr) minmax(0, 1.2fr) !important;
		gap: 10px !important;
		align-items: stretch !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .button {
		width: 100% !important;
		max-width: none !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper {
		display: grid !important;
		grid-template-columns: 38px minmax(0, 1fr) 38px !important;
		height: 44px !important;
		overflow: hidden !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper > .minus,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper > .plus,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .qib-button-wrapper > button.qib-button {
		position: static !important;
		display: grid !important;
		place-items: center !important;
		width: 38px !important;
		min-width: 38px !important;
		max-width: 38px !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		transform: none !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .quantity,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity .wqpmb_quantity,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__quantity input.qty {
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__cart-wrap .button {
		min-height: 44px !important;
		font-size: 12.5px !important;
	}

	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__learn-more {
		min-height: 42px !important;
		font-size: 12.5px !important;
	}
}

@media (max-width: 360px) {
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row,
	body.single-product.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row.no-quantity {
		grid-template-columns: 1fr !important;
	}
}


/* ==========================================================
 * v1.4.20.3 — source-level horizontal overflow correction
 * ========================================================== */
body.alpx-redesign-single-product {
	overflow-x: clip;
	max-width: 100%;
}

body.alpx-redesign-single-product div[id^="product-"],
body.alpx-redesign-single-product div[id^="product-"] > *,
body.alpx-redesign-single-product .woocommerce-tabs.nw_vc,
body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container,
body.alpx-redesign-single-product sectoin.ezp-container,
body.alpx-redesign-single-product section.ezp-container,
body.alpx-redesign-single-product .ezp_services_grid,
body.alpx-redesign-single-product section.related.products,
body.alpx-redesign-single-product section.related.products > .container,
body.alpx-redesign-single-product section.related.products ul.products,
body.alpx-redesign-single-product section.related.products li.product,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__body,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__footer,
body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row,
body.alpx-redesign-single-product .excellence {
	box-sizing: border-box !important;
	min-width: 0 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs.nw_vc,
body.alpx-redesign-single-product sectoin.ezp-container,
body.alpx-redesign-single-product section.ezp-container,
body.alpx-redesign-single-product section.related.products,
body.alpx-redesign-single-product .excellence {
	position: relative;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	transform: none;
}

body.alpx-redesign-single-product section.related.products {
	overflow-x: clip !important;
}

body.alpx-redesign-single-product section.related.products > .container {
	max-width: 1280px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

@media (max-width: 860px) {
	body.alpx-redesign-single-product section.related.products > .container {
		width: 100% !important;
		max-width: 680px !important;
		padding: 0 !important;
	}

	body.alpx-redesign-single-product section.related.products ul.products,
	body.alpx-redesign-single-product section.related.products ul.products.columns-4,
	body.alpx-redesign-single-product section.related.products ul.products.alpx-related--single,
	body.alpx-redesign-single-product section.related.products ul.products.alpx-related--multiple {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-auto-flow: row !important;
		gap: 16px !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
	}

	body.alpx-redesign-single-product section.related.products ul.products > li.product.alpx-catalog-card,
	body.alpx-redesign-single-product section.related.products ul.products.columns-4 > li.product.alpx-catalog-card {
		float: none !important;
		clear: none !important;
		grid-column: 1 !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__purchase-row.no-quantity {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

@media (max-width: 600px) {
	body.alpx-redesign-single-product section.related.products > .container,
	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container,
	body.alpx-redesign-single-product .ezp_services_grid {
		width: 100% !important;
		max-width: 100% !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner {
		box-shadow: 0 8px 22px rgba(5, 51, 58, .07) !important;
	}
}

/* Touch devices should not retain the desktop lift/shadow state after tapping. */
@media (hover: none), (pointer: coarse) {
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner:hover,
	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner:focus-within {
		transform: none !important;
		box-shadow: 0 8px 22px rgba(5, 51, 58, .07) !important;
	}

	body.alpx-redesign-single-product section.related.products .alpx-catalog-card__inner:hover .alpx-catalog-card__media img {
		transform: none !important;
	}
}

/* Emergency fallback for older browsers without overflow-x: clip. */
@supports not (overflow: clip) {
	body.alpx-redesign-single-product {
		overflow-x: hidden;
	}
}


/* ==========================================================
 * v1.4.20.3.1 — refined research notice + support panel
 * ========================================================== */
body.alpx-redesign-single-product .summary.entry-summary .keypoints_desc.alpx-sp-notice--enhanced {
	order: 6 !important;
	position: relative !important;
	display: grid !important;
	grid-template-columns: 44px minmax(0, 1fr) !important;
	align-items: start !important;
	gap: 14px !important;
	margin: 18px 0 0 !important;
	padding: 18px 20px !important;
	border: 1px solid rgba(238, 120, 26, .2) !important;
	border-left: 4px solid var(--alpx-sp-orange) !important;
	border-radius: 17px !important;
	background: linear-gradient(135deg, #fffaf5 0%, #fff 74%) !important;
	box-shadow: 0 12px 28px rgba(114, 65, 24, .055) !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

body.alpx-redesign-single-product .summary.entry-summary .keypoints_desc.alpx-sp-notice--enhanced::before {
	content: none !important;
	display: none !important;
}

body.alpx-redesign-single-product .alpx-sp-notice__icon {
	display: grid !important;
	place-items: center !important;
	width: 44px !important;
	height: 44px !important;
	border: 1px solid rgba(238, 120, 26, .2) !important;
	border-radius: 14px !important;
	background: var(--alpx-sp-orange-soft) !important;
	color: var(--alpx-sp-orange-dark) !important;
	font-size: 19px !important;
	font-weight: 900 !important;
	font-style: normal !important;
	line-height: 1 !important;
}

body.alpx-redesign-single-product .alpx-sp-notice__content {
	min-width: 0 !important;
}

body.alpx-redesign-single-product .alpx-sp-notice__eyebrow {
	display: block !important;
	margin: 1px 0 7px !important;
	color: var(--alpx-sp-orange-dark) !important;
	font-size: 10px !important;
	font-weight: 850 !important;
	line-height: 1 !important;
	letter-spacing: .09em !important;
	text-transform: uppercase !important;
}

body.alpx-redesign-single-product .keypoints_desc.alpx-sp-notice--enhanced p {
	margin: 0 !important;
	padding: 0 !important;
}

body.alpx-redesign-single-product .alpx-sp-notice__primary {
	color: var(--alpx-sp-ink) !important;
	font-size: 13px !important;
	font-weight: 750 !important;
	line-height: 1.42 !important;
}

body.alpx-redesign-single-product .alpx-sp-notice__secondary {
	margin-top: 5px !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 12px !important;
	line-height: 1.48 !important;
}

body.alpx-redesign-single-product .keypoints_desc.alpx-sp-notice--enhanced a {
	color: var(--alpx-sp-orange-dark) !important;
	font-weight: 800 !important;
	text-decoration: underline !important;
	text-decoration-thickness: 1px !important;
	text-underline-offset: 3px !important;
}

body.alpx-redesign-single-product .alpx-sp-notice__coa {
	margin-top: 7px !important;
}

body.alpx-redesign-single-product .alpx-sp-notice__coa a {
	display: inline-flex !important;
	align-items: center !important;
	color: var(--alpx-sp-teal-dark) !important;
	font-size: 12px !important;
	font-weight: 850 !important;
	text-decoration: underline !important;
	text-decoration-thickness: 1px !important;
	text-underline-offset: 3px !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits {
	order: 8 !important;
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 0 !important;
	width: 100% !important;
	margin: 14px 0 0 !important;
	padding: 0 18px 4px !important;
	border: 1px solid rgba(7, 139, 142, .15) !important;
	border-radius: 18px !important;
	background: linear-gradient(145deg, #f4fbfa 0%, #fff 72%, #fffaf5 100%) !important;
	box-shadow: 0 12px 30px rgba(5, 51, 58, .045) !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .alpx-sp-benefits-heading {
	display: flex !important;
	align-items: baseline !important;
	justify-content: space-between !important;
	gap: 12px !important;
	padding: 15px 0 11px !important;
	border-bottom: 1px solid rgba(7, 139, 142, .11) !important;
}

body.alpx-redesign-single-product .alpx-sp-benefits-heading > span {
	color: var(--alpx-sp-teal) !important;
	font-size: 9px !important;
	font-weight: 850 !important;
	line-height: 1 !important;
	letter-spacing: .09em !important;
	text-transform: uppercase !important;
}

body.alpx-redesign-single-product .alpx-sp-benefits-heading > strong {
	color: var(--alpx-sp-ink) !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits > .icon-box {
	display: grid !important;
	grid-template-columns: 42px minmax(0, 1fr) !important;
	align-items: center !important;
	gap: 13px !important;
	min-width: 0 !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 13px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(7, 139, 142, .09) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits > .icon-box:last-child {
	border-bottom: 0 !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon {
	display: grid !important;
	place-items: center !important;
	width: 42px !important;
	height: 42px !important;
	margin: 0 !important;
	padding: 9px !important;
	border: 1px solid rgba(7, 139, 142, .14) !important;
	border-radius: 13px !important;
	background: #fff !important;
	box-shadow: 0 7px 16px rgba(5, 51, 58, .055) !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon img {
	width: 23px !important;
	height: 23px !important;
	object-fit: contain !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon-box-text,
body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon-box-text p {
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 10.5px !important;
	line-height: 1.42 !important;
}

body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits .icon-box-text p span:first-child {
	display: block !important;
	margin: 0 0 3px !important;
	color: var(--alpx-sp-ink) !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
}

@media (max-width: 600px) {
	body.alpx-redesign-single-product .summary.entry-summary .keypoints_desc.alpx-sp-notice--enhanced {
		grid-template-columns: 38px minmax(0, 1fr) !important;
		gap: 12px !important;
		padding: 15px !important;
		border-radius: 15px !important;
	}

	body.alpx-redesign-single-product .alpx-sp-notice__icon {
		width: 38px !important;
		height: 38px !important;
		border-radius: 12px !important;
		font-size: 17px !important;
	}

	body.alpx-redesign-single-product .alpx-sp-benefits-heading {
		align-items: flex-start !important;
		flex-direction: column !important;
		gap: 4px !important;
	}

	body.alpx-redesign-single-product .summary.entry-summary > .icon-box.featured-box.alpx-sp-summary-benefits {
		padding-right: 15px !important;
		padding-left: 15px !important;
	}
}


/* ==========================================================
 * v1.4.20.3.2 — connected tabs + premium research benefits
 * ========================================================== */
body.alpx-redesign-single-product .woocommerce-tabs.nw_vc {
	margin: 28px 0 0 !important;
	padding: 28px 0 16px !important;
	background:
		radial-gradient(circle at 8% 0%, rgba(7,139,142,.055), transparent 24%),
		radial-gradient(circle at 94% 12%, rgba(238,120,26,.05), transparent 22%),
		#f8fbfa !important;
}

body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container {
	width: min(1180px, calc(100% - 48px)) !important;
	max-width: 1180px !important;
}

body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs {
	display: inline-flex !important;
	position: relative;
	z-index: 2;
	gap: 4px !important;
	margin: 0 0 10px !important;
	padding: 5px !important;
	border-radius: 15px !important;
	box-shadow: 0 10px 28px rgba(5,51,58,.065) !important;
}

body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs li a {
	min-height: 40px !important;
	padding: 9px 16px !important;
	font-size: 12px !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
	padding: clamp(24px, 3vw, 34px) !important;
	border-radius: 20px !important;
	box-shadow: 0 14px 38px rgba(5,51,58,.055) !important;
	font-size: 14px !important;
	line-height: 1.68 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel h2,
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel h3 {
	margin-bottom: 10px !important;
	font-size: clamp(22px, 2.1vw, 28px) !important;
	line-height: 1.2 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel p {
	margin-bottom: 16px !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel p:last-child {
	margin-bottom: 0 !important;
}

body.alpx-redesign-single-product sectoin.ezp-container,
body.alpx-redesign-single-product section.ezp-container {
	padding: 14px 0 42px !important;
	background:
		linear-gradient(180deg, #f8fbfa 0%, #fbfaf8 100%) !important;
}

body.alpx-redesign-single-product .ezp_services_grid {
	width: min(1180px, calc(100% - 48px)) !important;
	max-width: 1180px !important;
	gap: 12px !important;
}

body.alpx-redesign-single-product .ezp_service_card {
	position: relative;
	display: grid !important;
	grid-template-columns: 46px minmax(0, 1fr);
	grid-template-rows: auto auto;
	column-gap: 14px;
	row-gap: 5px;
	align-content: center;
	min-height: 142px !important;
	padding: 20px !important;
	border-radius: 18px !important;
	background:
		linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,255,255,.92)) !important;
	box-shadow: 0 12px 30px rgba(5,51,58,.055) !important;
	overflow: hidden;
	isolation: isolate;
	transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease !important;
}

body.alpx-redesign-single-product .ezp_service_card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	opacity: 0;
	transition: opacity .24s ease;
}

body.alpx-redesign-single-product .ezp_service_card:nth-child(1)::before {
	background: linear-gradient(135deg, rgba(7,139,142,.12), rgba(230,248,247,.72));
}

body.alpx-redesign-single-product .ezp_service_card:nth-child(2)::before {
	background: linear-gradient(135deg, rgba(238,120,26,.13), rgba(255,242,229,.8));
}

body.alpx-redesign-single-product .ezp_service_card:nth-child(3)::before {
	background: linear-gradient(135deg, rgba(87,166,55,.12), rgba(241,249,235,.82));
}

body.alpx-redesign-single-product .ezp_service_card:nth-child(4)::before {
	background: linear-gradient(135deg, rgba(40,139,191,.12), rgba(235,247,253,.82));
}

body.alpx-redesign-single-product .ezp_service_card:hover,
body.alpx-redesign-single-product .ezp_service_card:focus-within {
	transform: translateY(-4px) !important;
	border-color: rgba(7,139,142,.24) !important;
	box-shadow: 0 20px 44px rgba(5,51,58,.11) !important;
}

body.alpx-redesign-single-product .ezp_service_card:hover::before,
body.alpx-redesign-single-product .ezp_service_card:focus-within::before {
	opacity: 1;
}

body.alpx-redesign-single-product .ezp_service_icon {
	grid-column: 1;
	grid-row: 1 / span 2;
	width: 46px !important;
	height: 46px !important;
	margin: 0 !important;
	border-radius: 14px !important;
	background: #eefafa !important;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.7);
	transition: transform .24s ease, color .24s ease, background .24s ease !important;
}

body.alpx-redesign-single-product .ezp_service_card:nth-child(1) .ezp_service_icon { color: #087f86 !important; background: #e9f8f7 !important; }
body.alpx-redesign-single-product .ezp_service_card:nth-child(2) .ezp_service_icon { color: #e56c0a !important; background: #fff2e7 !important; }
body.alpx-redesign-single-product .ezp_service_card:nth-child(3) .ezp_service_icon { color: #4f9d2f !important; background: #eff8ea !important; }
body.alpx-redesign-single-product .ezp_service_card:nth-child(4) .ezp_service_icon { color: #247fae !important; background: #ebf6fc !important; }

body.alpx-redesign-single-product .ezp_service_card:hover .ezp_service_icon,
body.alpx-redesign-single-product .ezp_service_card:focus-within .ezp_service_icon {
	transform: scale(1.07) rotate(-2deg);
	background: #fff !important;
}

body.alpx-redesign-single-product .ezp_service_icon svg {
	width: 23px !important;
	height: 23px !important;
}

body.alpx-redesign-single-product .ezp_service_card h3 {
	grid-column: 2;
	grid-row: 1;
	align-self: end;
	margin: 0 !important;
	font-size: 14px !important;
	line-height: 1.25 !important;
}

body.alpx-redesign-single-product .ezp_service_card p {
	grid-column: 2;
	grid-row: 2;
	align-self: start;
	-webkit-line-clamp: 3 !important;
	font-size: 11px !important;
	line-height: 1.5 !important;
}

@media (max-width: 860px) {
	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc {
		margin-top: 20px !important;
		padding: 22px 0 12px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container,
	body.alpx-redesign-single-product .ezp_services_grid {
		width: min(680px, calc(100% - 32px)) !important;
		max-width: 680px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs {
		margin-bottom: 8px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
		padding: 20px !important;
		border-radius: 17px !important;
	}

	body.alpx-redesign-single-product sectoin.ezp-container,
	body.alpx-redesign-single-product section.ezp-container {
		padding: 10px 0 32px !important;
	}

	body.alpx-redesign-single-product .ezp_services_grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	body.alpx-redesign-single-product .ezp_service_card {
		grid-template-columns: 42px minmax(0, 1fr);
		min-height: 132px !important;
		padding: 16px !important;
		column-gap: 11px;
		border-radius: 16px !important;
	}

	body.alpx-redesign-single-product .ezp_service_icon {
		width: 42px !important;
		height: 42px !important;
		border-radius: 13px !important;
	}
}

@media (max-width: 560px) {
	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container,
	body.alpx-redesign-single-product .ezp_services_grid {
		width: calc(100% - 24px) !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs ul.tabs.wc-tabs {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
		padding: 18px !important;
		font-size: 13px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel h2,
	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel h3 {
		font-size: 21px !important;
	}

	body.alpx-redesign-single-product .ezp_services_grid {
		grid-template-columns: 1fr !important;
	}

	body.alpx-redesign-single-product .ezp_service_card {
		min-height: 0 !important;
		padding: 15px !important;
	}
}

@media (hover: none), (pointer: coarse) {
	body.alpx-redesign-single-product .ezp_service_card:hover,
	body.alpx-redesign-single-product .ezp_service_card:focus-within {
		transform: none !important;
		box-shadow: 0 12px 30px rgba(5,51,58,.055) !important;
	}
}


/* ==========================================================
 * v1.4.20.3.3 — remove abrupt full-width tabs color band
 * ========================================================== */
body.alpx-redesign-single-product .woocommerce-tabs.nw_vc {
	margin-top: 20px !important;
	padding: 18px 0 12px !important;
	background: transparent !important;
}

body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container {
	position: relative !important;
	isolation: isolate;
	padding: 0 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: -18px -24px -16px;
	pointer-events: none;
	border-radius: 30px;
	background:
		radial-gradient(circle at 8% 8%, rgba(7,139,142,.065), transparent 30%),
		radial-gradient(circle at 94% 15%, rgba(238,120,26,.055), transparent 28%);
	filter: blur(2px);
}

@media (max-width: 860px) {
	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc {
		margin-top: 14px !important;
		padding: 14px 0 10px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc > .container::before {
		inset: -12px -10px -12px;
		border-radius: 22px;
	}
}

@media (max-width: 600px) {
	body.alpx-redesign-single-product .woocommerce-tabs.nw_vc {
		margin-top: 10px !important;
		padding-top: 10px !important;
	}
}


/* ==========================================================
 * v1.4.20.3.4 — balanced product-tab typography
 * ========================================================== */
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description {
	font-size: 14px !important;
	line-height: 1.62 !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-widget-container,
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-wrapper,
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content {
	font-size: inherit !important;
	line-height: inherit !important;
}

/* Main content heading: Description */
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:first-child {
	margin: 0 0 7px !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	letter-spacing: -.02em !important;
	color: var(--alpx-sp-ink) !important;
}

/* Product name immediately below Description */
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:first-child + p {
	margin: 0 0 22px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	color: var(--alpx-sp-muted) !important;
}

/* Product Care and Product Note */
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:not(:first-child) {
	margin: 22px 0 7px !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	line-height: 1.28 !important;
	letter-spacing: -.015em !important;
	color: var(--alpx-sp-ink) !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > p {
	font-family: Inter, Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.62 !important;
	letter-spacing: 0 !important;
	color: var(--alpx-sp-muted) !important;
}

body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > p:last-child {
	margin-bottom: 0 !important;
}

/* Keep Additional Information visually aligned with Description. */
body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--additional_information {
	font-size: 14px !important;
	line-height: 1.6 !important;
}

@media (max-width: 860px) {
	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description {
		font-size: 13.5px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:first-child {
		font-size: 20px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:not(:first-child) {
		margin-top: 19px !important;
		font-size: 17px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > p,
	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:first-child + p {
		font-size: 13.5px !important;
		line-height: 1.58 !important;
	}
}

@media (max-width: 560px) {
	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:first-child {
		font-size: 19px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:not(:first-child) {
		font-size: 16px !important;
	}

	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > p,
	body.alpx-redesign-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .elementor-icon-box-content > h3:first-child + p {
		font-size: 13px !important;
		line-height: 1.56 !important;
	}
}


/* ==========================================================
 * v1.4.20.3.7 — source-level composite Build Kit rebuild
 * ========================================================== */

/* Let the gallery and summary size from their own content. This prevents a
 * one-image gallery from inheriting the full height of a long composite list. */
body.alpx-redesign-single-product div[id^="product-"].product-type-composite {
	align-items: start !important;
}

body.alpx-redesign-single-product div[id^="product-"].product-type-composite > div:first-of-type,
body.alpx-redesign-single-product div[id^="product-"].product-type-composite > .summary.entry-summary,
body.alpx-redesign-single-product div[id^="product-"].product-type-composite > div:first-of-type > .container,
body.alpx-redesign-single-product div[id^="product-"].product-type-composite .woocommerce-product-gallery:not(.woocommerce-product-gallery--wooco) {
	position: relative !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	inset: auto !important;
	transform: none !important;
	align-self: start !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
}

body.alpx-redesign-single-product div[id^="product-"].product-type-composite > div:first-of-type {
	z-index: auto !important;
}

body.alpx-redesign-single-product div[id^="product-"].product-type-composite > div:first-of-type > .container {
	display: flex !important;
	align-items: flex-start !important;
	align-content: flex-start !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery.alpx-gallery--single .flex-control-thumbs {
	display: none !important;
}

/* Compact rail for images generated by WPC Composite when selections change. */
body.alpx-redesign-single-product .product-type-composite .woocommerce-product-gallery:not(.woocommerce-product-gallery--wooco) {
	flex: 1 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.alpx-redesign-single-product .alpx-composite-selected-heading {
	display: none;
	flex: 1 0 100%;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 2px 2px -2px;
	color: var(--alpx-sp-ink);
	font-size: 12px;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: .02em;
}

body.alpx-redesign-single-product .alpx-composite-selected-heading small {
	color: var(--alpx-sp-muted);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0;
}

body.alpx-redesign-single-product .alpx-has-composite-selected-galleries > .alpx-composite-selected-heading {
	display: flex;
}

body.alpx-redesign-single-product .woocommerce-product-gallery.woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item {
	position: relative !important;
	flex: 0 0 78px !important;
	width: 78px !important;
	max-width: 78px !important;
	height: 78px !important;
	min-height: 78px !important;
	max-height: 78px !important;
	margin: 0 !important;
	padding: 4px !important;
	border: 1px solid rgba(7,139,142,.19) !important;
	border-radius: 15px !important;
	background: #fff !important;
	box-shadow: 0 8px 22px rgba(5,51,58,.07) !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item .woocommerce-product-gallery__wrapper,
body.alpx-redesign-single-product .woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item .woocommerce-product-gallery__image,
body.alpx-redesign-single-product .woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item .woocommerce-product-gallery__image > a {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	border-radius: 11px !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item .woocommerce-product-gallery__image:not(:first-child),
body.alpx-redesign-single-product .woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item .flex-control-thumbs,
body.alpx-redesign-single-product .woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item .woocommerce-product-gallery__trigger,
body.alpx-redesign-single-product .woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item .zoomImg {
	display: none !important;
}

body.alpx-redesign-single-product .woocommerce-product-gallery--wooco.alpx-composite-selected-gallery-item .woocommerce-product-gallery__image:first-child img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 11px !important;
	object-fit: cover !important;
	transform: none !important;
}

/* ----- Composite structure reset ----------------------------------------- */
body.alpx-redesign-single-product .product-type-composite > .summary.entry-summary {
	min-width: 0 !important;
	padding: clamp(22px, 2vw, 30px) !important;
	overflow: visible !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_wrap,
body.alpx-redesign-single-product .product-type-composite .wooco-wrap,
body.alpx-redesign-single-product .product-type-composite .wooco_components,
body.alpx-redesign-single-product .product-type-composite .wooco-components,
body.alpx-redesign-single-product .product-type-composite .wooco_component,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list {
	display: block !important;
	float: none !important;
	clear: both !important;
	position: relative !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box !important;
	transform: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product {
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_name {
	display: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_desc {
	margin: 0 0 16px !important;
	padding: 0 !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1.55 !important;
}

/* ----- Toolbar ----------------------------------------------------------- */
body.alpx-redesign-single-product .product-type-composite .alpx-composite-tools {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	gap: 12px 16px !important;
	align-items: center !important;
	width: 100% !important;
	margin: 0 0 14px !important;
	padding: 16px !important;
	border: 1px solid rgba(7,139,142,.17) !important;
	border-radius: 18px !important;
	background:
		radial-gradient(circle at 6% 0%, rgba(7,139,142,.1), transparent 38%),
		radial-gradient(circle at 96% 100%, rgba(238,120,26,.075), transparent 34%),
		linear-gradient(145deg, #f8fdfc, #fffdf9) !important;
	box-shadow: 0 12px 30px rgba(5,51,58,.055) !important;
	box-sizing: border-box !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-tools__head {
	grid-column: 1 / -1 !important;
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 14px !important;
	min-width: 0 !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-tools__copy {
	min-width: 0 !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-tools__copy strong {
	display: block !important;
	margin: 0 !important;
	color: var(--alpx-sp-ink) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-tools__copy span {
	display: block !important;
	margin-top: 3px !important;
	color: var(--alpx-sp-muted) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 10.5px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-available {
	flex: 0 0 auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 28px !important;
	padding: 5px 9px !important;
	border: 1px solid rgba(7,139,142,.15) !important;
	border-radius: 999px !important;
	background: rgba(255,255,255,.78) !important;
	color: var(--alpx-sp-teal) !important;
	font-size: 9.5px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-search {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-search svg {
	position: absolute !important;
	left: 13px !important;
	width: 17px !important;
	height: 17px !important;
	fill: none !important;
	stroke: var(--alpx-sp-teal) !important;
	stroke-width: 2 !important;
	pointer-events: none !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-search input[type="search"] {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 14px 0 40px !important;
	border: 1px solid rgba(7,139,142,.18) !important;
	border-radius: 13px !important;
	background: #fff !important;
	box-shadow: 0 6px 18px rgba(5,51,58,.035) !important;
	color: var(--alpx-sp-ink) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	outline: none !important;
	box-sizing: border-box !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-search input[type="search"]:focus {
	border-color: rgba(7,139,142,.5) !important;
	box-shadow: 0 0 0 3px rgba(7,139,142,.1) !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-status {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	justify-content: center !important;
	min-width: 128px !important;
	color: var(--alpx-sp-ink) !important;
	text-align: right !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-status strong {
	font-size: 10.5px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-status span {
	margin-top: 2px !important;
	color: var(--alpx-sp-muted) !important;
	font-size: 9px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-progress {
	grid-column: 1 / -1 !important;
	position: relative !important;
	display: block !important;
	width: 100% !important;
	height: 5px !important;
	margin: -3px 0 0 !important;
	border-radius: 999px !important;
	background: rgba(7,139,142,.09) !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .product-type-composite .alpx-composite-progress::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 auto 0 0 !important;
	width: var(--alpx-composite-progress, 0%) !important;
	border-radius: inherit !important;
	background: linear-gradient(90deg, #078b8e, #2db79f) !important;
	transition: width .25s ease !important;
}

/* ----- Full-width scrollable selector ----------------------------------- */
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection {
	margin: 0 !important;
	padding: 9px !important;
	border: 1px solid rgba(7,139,142,.16) !important;
	border-radius: 18px !important;
	background: linear-gradient(155deg, rgba(238,249,248,.78), rgba(255,255,255,.96)) !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 12px 30px rgba(5,51,58,.045) !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection::before,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list::before {
	display: none !important;
	content: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list {
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
	max-height: 590px !important;
	padding: 1px 6px 1px 1px !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	overscroll-behavior: contain !important;
	scrollbar-gutter: stable !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list::-webkit-scrollbar {
	width: 8px !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list::-webkit-scrollbar-track {
	border-radius: 999px !important;
	background: rgba(7,139,142,.055) !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list::-webkit-scrollbar-thumb {
	border: 2px solid transparent !important;
	border-radius: 999px !important;
	background: rgba(7,139,142,.34) !important;
	background-clip: padding-box !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item {
	display: grid !important;
	grid-template-columns: 34px 54px minmax(0, 1fr) 126px !important;
	grid-template-areas: "choose image info qty" !important;
	align-items: center !important;
	gap: 10px !important;
	position: relative !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 78px !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 10px 11px !important;
	border: 1px solid rgba(7,139,142,.14) !important;
	border-radius: 15px !important;
	background: #fff !important;
	box-shadow: 0 5px 16px rgba(5,51,58,.035) !important;
	box-sizing: border-box !important;
	overflow: visible !important;
	transform: none !important;
	transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item:hover {
	border-color: rgba(7,139,142,.3) !important;
	box-shadow: 0 10px 24px rgba(5,51,58,.07) !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item.alpx-composite-row--selected {
	border-color: rgba(24,166,94,.52) !important;
	background: linear-gradient(135deg, rgba(238,251,243,.98), #fff) !important;
	box-shadow: 0 10px 24px rgba(24,166,94,.09) !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item.alpx-composite-row--filtered {
	display: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item > * {
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose {
	grid-area: choose !important;
	position: relative !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 34px !important;
	min-width: 34px !important;
	max-width: 34px !important;
	height: 34px !important;
	min-height: 34px !important;
	max-height: 34px !important;
	padding: 0 !important;
	border: 1px solid rgba(7,139,142,.22) !important;
	border-radius: 10px !important;
	background: #f4fbfa !important;
	box-shadow: none !important;
	cursor: pointer !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose span {
	display: block !important;
	width: 16px !important;
	height: 16px !important;
	margin: 0 !important;
	border: 1px solid rgba(7,139,142,.26) !important;
	border-radius: 5px !important;
	background: #fff !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item.alpx-composite-row--selected .wooco_component_product_selection_list_item_choose {
	border-color: #17a65d !important;
	background: #17a65d !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item.alpx-composite-row--selected .wooco_component_product_selection_list_item_choose span {
	position: relative !important;
	border-color: transparent !important;
	background: transparent !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item.alpx-composite-row--selected .wooco_component_product_selection_list_item_choose span::after {
	content: "" !important;
	position: absolute !important;
	left: 4px !important;
	top: 1px !important;
	width: 6px !important;
	height: 10px !important;
	border: solid #fff !important;
	border-width: 0 2px 2px 0 !important;
	transform: rotate(45deg) !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_image {
	grid-area: image !important;
	position: static !important;
	display: block !important;
	width: 54px !important;
	min-width: 54px !important;
	max-width: 54px !important;
	height: 54px !important;
	min-height: 54px !important;
	max-height: 54px !important;
	padding: 3px !important;
	border: 1px solid rgba(7,139,142,.15) !important;
	border-radius: 12px !important;
	background: #f4fbfa !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_image img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 9px !important;
	object-fit: cover !important;
	transform: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_info {
	grid-area: info !important;
	position: static !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;
	float: none !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	text-align: left !important;
	overflow: visible !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_name {
	display: -webkit-box !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	color: var(--alpx-sp-ink) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	text-align: left !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: anywhere !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_desc,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_desc * {
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--alpx-sp-muted) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	text-align: left !important;
	white-space: normal !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_desc {
	display: block !important;
	margin-top: 3px !important;
}

/* Quantity plugin is heavily opinionated. Reset every wrapper in the selector
 * and then build a predictable three-cell control. */
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty {
	grid-area: qty !important;
	position: static !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: 126px !important;
	min-width: 126px !important;
	max-width: 126px !important;
	padding: 0 !important;
	overflow: visible !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wooco-qty-input,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .qib-button-wrapper {
	display: grid !important;
	grid-template-columns: 36px 54px 36px !important;
	align-items: stretch !important;
	width: 126px !important;
	min-width: 126px !important;
	max-width: 126px !important;
	height: 38px !important;
	min-height: 38px !important;
	max-height: 38px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(7,139,142,.2) !important;
	border-radius: 11px !important;
	background: #f6fbfa !important;
	box-shadow: none !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .quantity,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wqpmb_quantity {
	display: block !important;
	float: none !important;
	position: static !important;
	width: 54px !important;
	min-width: 54px !important;
	max-width: 54px !important;
	height: 36px !important;
	min-height: 36px !important;
	max-height: 36px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: #fff !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty input.qty,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wqpmb_input_text {
	display: block !important;
	float: none !important;
	width: 54px !important;
	min-width: 54px !important;
	max-width: 54px !important;
	height: 36px !important;
	min-height: 36px !important;
	max-height: 36px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--alpx-sp-ink) !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 36px !important;
	text-align: center !important;
	appearance: textfield !important;
	-moz-appearance: textfield !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty input.qty::-webkit-outer-spin-button,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty input.qty::-webkit-inner-spin-button {
	margin: 0 !important;
	appearance: none !important;
	-webkit-appearance: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty button.qib-button {
	display: flex !important;
	float: none !important;
	position: static !important;
	align-items: center !important;
	justify-content: center !important;
	width: 36px !important;
	min-width: 36px !important;
	max-width: 36px !important;
	height: 36px !important;
	min-height: 36px !important;
	max-height: 36px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #087f86 !important;
	box-shadow: none !important;
	color: #fff !important;
	font-family: Inter, Arial, sans-serif !important;
	font-size: 17px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-indent: 0 !important;
	cursor: pointer !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty button.qib-button:hover,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty button.qib-button:focus-visible {
	background: #056b72 !important;
	color: #fff !important;
}

/* Totals and validation stay outside the scroll frame and remain plugin-owned. */
body.alpx-redesign-single-product .product-type-composite .wooco_summary,
body.alpx-redesign-single-product .product-type-composite .wooco-summary {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	width: 100% !important;
	margin: 14px 0 0 !important;
	padding: 12px 14px !important;
	border: 1px solid rgba(7,139,142,.18) !important;
	border-radius: 14px !important;
	background: linear-gradient(135deg, #f3fbfa, #fffdf9) !important;
	color: var(--alpx-sp-ink) !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	box-sizing: border-box !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_total,
body.alpx-redesign-single-product .product-type-composite .wooco-total {
	color: #e96f10 !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_alert,
body.alpx-redesign-single-product .product-type-composite .wooco-alert {
	width: 100% !important;
	margin: 10px 0 0 !important;
	padding: 11px 13px !important;
	border: 1px solid rgba(238,120,26,.27) !important;
	border-radius: 13px !important;
	background: #fff7ef !important;
	color: #9b4e0e !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	box-sizing: border-box !important;
}

body.alpx-redesign-single-product .product-type-composite .summary.entry-summary > form.cart {
	width: 100% !important;
	margin-top: 12px !important;
}

body.alpx-redesign-single-product .product-type-composite .summary.entry-summary > form.cart .single_add_to_cart_button {
	width: 100% !important;
	min-height: 48px !important;
	border-radius: 13px !important;
	box-shadow: 0 12px 28px rgba(5,51,58,.13) !important;
}

/* ----- Responsive selector rows ----------------------------------------- */
@media (max-width: 1180px) and (min-width: 861px) {
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item {
		grid-template-columns: 32px 50px minmax(0, 1fr) !important;
		grid-template-areas:
			"choose image info"
			". . qty" !important;
		row-gap: 8px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty {
		justify-self: end !important;
	}
}

@media (max-width: 860px) {
	body.alpx-redesign-single-product .product-type-composite .alpx-composite-tools {
		grid-template-columns: minmax(0, 1fr) auto !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list {
		max-height: 540px !important;
	}
}

@media (max-width: 600px) {
	body.alpx-redesign-single-product .product-type-composite .alpx-composite-tools {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 10px !important;
		padding: 14px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .alpx-composite-tools__head,
	body.alpx-redesign-single-product .product-type-composite .alpx-composite-search,
	body.alpx-redesign-single-product .product-type-composite .alpx-composite-status,
	body.alpx-redesign-single-product .product-type-composite .alpx-composite-progress {
		grid-column: 1 / -1 !important;
	}

	body.alpx-redesign-single-product .product-type-composite .alpx-composite-status {
		align-items: flex-start !important;
		min-width: 0 !important;
		text-align: left !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection {
		padding: 7px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list {
		max-height: 500px !important;
		padding-right: 4px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item {
		grid-template-columns: 30px 48px minmax(0, 1fr) !important;
		grid-template-areas:
			"choose image info"
			". qty qty" !important;
		gap: 8px !important;
		min-height: 104px !important;
		padding: 10px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose {
		width: 30px !important;
		min-width: 30px !important;
		max-width: 30px !important;
		height: 30px !important;
		min-height: 30px !important;
		max-height: 30px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_image {
		width: 48px !important;
		min-width: 48px !important;
		max-width: 48px !important;
		height: 48px !important;
		min-height: 48px !important;
		max-height: 48px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty {
		justify-self: end !important;
	}
}

@media (hover: none), (pointer: coarse) {
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item:hover {
		border-color: rgba(7,139,142,.14) !important;
		box-shadow: 0 5px 16px rgba(5,51,58,.035) !important;
	}
}

/* ==========================================================
 * v1.4.20.3.8 — clean composite checkbox + one-image gallery
 * ========================================================== */

/* A product with only one primary image must size from that image instead of
 * inheriting the height of the summary card beside it. Multi-image galleries
 * keep their existing balanced desktop treatment. */
body.alpx-redesign-single-product div[id^="product-"].alpx-product-gallery--single {
	align-items: start !important;
}

body.alpx-redesign-single-product div[id^="product-"].alpx-product-gallery--single > div:first-of-type,
body.alpx-redesign-single-product div[id^="product-"].alpx-product-gallery--single > div:first-of-type > .container,
body.alpx-redesign-single-product div[id^="product-"].alpx-product-gallery--single .woocommerce-product-gallery.alpx-gallery--single {
	align-self: start !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
}

body.alpx-redesign-single-product div[id^="product-"].alpx-product-gallery--single > div:first-of-type > .container {
	align-items: flex-start !important;
	align-content: flex-start !important;
}

/* WPC Composite draws its own checkbox pseudo-elements. Remove every native
 * layer and use one centered control so selected and unselected states cannot
 * overlap or drift. */
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose {
	position: relative !important;
	display: grid !important;
	place-items: center !important;
	width: 34px !important;
	min-width: 34px !important;
	max-width: 34px !important;
	height: 34px !important;
	min-height: 34px !important;
	max-height: 34px !important;
	padding: 0 !important;
	border: 1px solid rgba(7,139,142,.25) !important;
	border-radius: 10px !important;
	background: #f6fbfa !important;
	background-image: none !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.9) !important;
	overflow: hidden !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose::before,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose::after,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose span::before {
	content: none !important;
	display: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose span {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: inherit !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item.alpx-composite-row--selected .wooco_component_product_selection_list_item_choose,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose.selected,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose.active {
	border-color: #17a65d !important;
	background: #17a65d !important;
	background-image: none !important;
	box-shadow: 0 5px 12px rgba(23,166,93,.2) !important;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item.alpx-composite-row--selected .wooco_component_product_selection_list_item_choose span::after,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose.selected span::after,
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose.active span::after {
	content: "" !important;
	position: absolute !important;
	left: 50% !important;
	top: 50% !important;
	display: block !important;
	width: 7px !important;
	height: 12px !important;
	margin: 0 !important;
	border: solid #fff !important;
	border-width: 0 2.5px 2.5px 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	transform: translate(-50%, -58%) rotate(45deg) !important;
	transform-origin: center !important;
}

@media (max-width: 600px) {
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose {
		width: 32px !important;
		min-width: 32px !important;
		max-width: 32px !important;
		height: 32px !important;
		min-height: 32px !important;
		max-height: 32px !important;
	}
}


/* ==========================================================
 * v1.4.20.3.9 — natural-height gallery + checkbox quantity toggle
 * ========================================================== */
/* Every primary gallery, including products with thumbnails, must end after
 * its actual gallery content rather than stretching to the summary height. */
body.alpx-redesign-single-product div[id^="product-"] {
	align-items: start !important;
}

body.alpx-redesign-single-product div[id^="product-"] > div:first-of-type {
	align-self: start !important;
	height: auto !important;
	min-height: 0 !important;
}

body.alpx-redesign-single-product div[id^="product-"] > div:first-of-type > .container {
	align-items: flex-start !important;
	align-content: flex-start !important;
	height: auto !important;
	min-height: 0 !important;
}

body.alpx-redesign-single-product div[id^="product-"] .woocommerce-product-gallery:not(.woocommerce-product-gallery--wooco) {
	align-self: flex-start !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
}

/* The Build Kit selector checkbox is now an explicit, keyboard-accessible
 * quantity toggle rather than a decorative status indicator. */
body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose {
	cursor: pointer !important;
	touch-action: manipulation;
}

body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose:focus-visible {
	outline: 3px solid rgba(7,139,142,.24) !important;
	outline-offset: 3px !important;
}


/* ==========================================================
 * v1.4.20.3.14 — compact mobile Build Kit quantity controls
 * ========================================================== */
@media (max-width: 600px) {
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item {
		grid-template-columns: 30px 48px minmax(0, 1fr) 112px !important;
		grid-template-areas: "choose image info qty" !important;
		align-items: center !important;
		column-gap: 7px !important;
		row-gap: 0 !important;
		min-height: 72px !important;
		padding: 8px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_info {
		align-self: center !important;
		min-width: 0 !important;
		padding-right: 1px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_name {
		font-size: 11.5px !important;
		line-height: 1.22 !important;
		-webkit-line-clamp: 2 !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_desc,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_desc * {
		font-size: 9.5px !important;
		line-height: 1.2 !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty {
		grid-area: qty !important;
		align-self: center !important;
		justify-self: end !important;
		width: 112px !important;
		min-width: 112px !important;
		max-width: 112px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wooco-qty-input,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .qib-button-wrapper {
		grid-template-columns: 34px 44px 34px !important;
		width: 112px !important;
		min-width: 112px !important;
		max-width: 112px !important;
		height: 38px !important;
		min-height: 38px !important;
		max-height: 38px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .quantity,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wqpmb_quantity,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty input.qty,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wqpmb_input_text {
		width: 44px !important;
		min-width: 44px !important;
		max-width: 44px !important;
		height: 36px !important;
		min-height: 36px !important;
		max-height: 36px !important;
		line-height: 36px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty button.qib-button {
		width: 34px !important;
		min-width: 34px !important;
		max-width: 34px !important;
		height: 36px !important;
		min-height: 36px !important;
		max-height: 36px !important;
		font-size: 16px !important;
	}
}

@media (max-width: 380px) {
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item {
		grid-template-columns: 28px 44px minmax(0, 1fr) 104px !important;
		column-gap: 6px !important;
		padding: 7px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_choose {
		width: 28px !important;
		min-width: 28px !important;
		max-width: 28px !important;
		height: 28px !important;
		min-height: 28px !important;
		max-height: 28px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_image {
		width: 44px !important;
		min-width: 44px !important;
		max-width: 44px !important;
		height: 44px !important;
		min-height: 44px !important;
		max-height: 44px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wooco-qty-input,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .qib-button-wrapper {
		width: 104px !important;
		min-width: 104px !important;
		max-width: 104px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wooco-qty-input,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .qib-button-wrapper {
		grid-template-columns: 32px 40px 32px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .quantity,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wqpmb_quantity,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty input.qty,
	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty .wqpmb_input_text {
		width: 40px !important;
		min-width: 40px !important;
		max-width: 40px !important;
	}

	body.alpx-redesign-single-product .product-type-composite .wooco_component_product_selection_list_item_qty button.qib-button {
		width: 32px !important;
		min-width: 32px !important;
		max-width: 32px !important;
	}
}
