/* Product page design refresh — 2026-11-10 */
body.single-product { overflow-x: hidden; }

/* keep the builder row inside the viewport (RTL overflow fix) */
body.single-product .product-info .fusion-builder-row,
body.single-product .product-info .fusion-row {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
body.single-product .fusion-fullwidth,
body.single-product .fusion-builder-row { max-width: 100%; }

/* product image as a clean card */
body.single-product .product-right-col .fusion-column-wrapper { padding: 0 !important; }
body.single-product .product-right-col img.imgZoom,
body.single-product #NZoomImg img {
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 10px 40px rgba(0, 22, 137, .10);
	padding: 18px;
	box-sizing: border-box;
	max-width: 100%;
	height: auto;
}

/* title */
body.single-product h1.title-heading-center {
	font-size: 30px !important;
	font-weight: 800 !important;
	line-height: 1.5 !important;
	letter-spacing: -.3px;
}

/* feature chips */
body.single-product .features-wrapper { overflow: hidden; max-width: 100%; }
body.single-product .features-container { max-width: 100%; }
body.single-product .features-container li {
	background: #f2f5fb !important;
	border: 1px solid #e3e9f7;
	border-radius: 14px;
	padding: 10px 6px !important;
}

/* attributes strip */
body.single-product .product-attributes-container {
	background: #f8f9fd;
	border: 1px solid #e8ecf6;
	border-radius: 14px;
	padding: 14px 20px;
	margin-top: 18px;
}
body.single-product .product-attributes-container span { font-size: 14px; }

/* body copy */
body.single-product .fusion-text p,
body.single-product .product-details p,
body.single-product .accordian .panel-body p {
	font-size: 15px;
	line-height: 2;
	color: #3b4152;
}

/* buy buttons */
body.single-product .buy-buttons {
	display: flex !important;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin: 24px 0 !important;
}
body.single-product .buy-buttons .buy-buttons-span {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 230px;
	padding: 14px 28px !important;
	border-radius: 12px !important;
	font-size: 15px !important;
	font-weight: 700;
	border: 1.5px solid #001689 !important;
	transition: all .2s ease;
}
body.single-product .buy-buttons .buy-buttons-span:hover {
	background: #001689 !important;
	color: #fff !important;
}

/* accordion cards */
body.single-product .accordian .panel-default {
	border: 1px solid #e8ecf6 !important;
	border-radius: 14px !important;
	margin-bottom: 10px !important;
	overflow: hidden;
	background: #fff;
}
body.single-product .accordian .panel-heading { padding: 8px 10px !important; background: #fff !important; }
body.single-product .accordian .panel-title { font-size: 15px !important; font-weight: 700; }
body.single-product .accordian .panel-body { padding: 6px 20px 20px !important; }

/* related products */
body.single-product .related-product-section { margin-top: 40px !important; }
body.single-product .related-product-section .fusion-product-wrapper {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 6px 24px rgba(0, 22, 137, .08);
	overflow: hidden;
}
body.single-product .related-product-section .product-title { font-size: 14px !important; }

/* empty leftover section that created a large white gap */
body.single-product .related-article-section { display: none !important; }

@media only screen and (max-width: 767px) {
	body.single-product h1.title-heading-center { font-size: 22px !important; }
	body.single-product .buy-buttons .buy-buttons-span { min-width: 100%; }
	body.single-product .product-right-col img.imgZoom,
	body.single-product #NZoomImg img { padding: 10px; }
	body.single-product .product-info { padding-left: 0 !important; padding-right: 0 !important; }
}

/* Hidden promotional slider inside the product template still forced 1260px width */
body.single-product .layer-slider-div { display: none !important; }



/* Hide buy buttons that have no retailer link (empty anchors created by the template) */
body.single-product .buy-buttons a[href=""] { display: none !important; }
body.single-product .buy-buttons .buy-buttons-span:empty { display: none !important; }

/* Product image: use the column width, capped for quality */
body.single-product .product-right-col img.imgZoom,
body.single-product #NZoomImg img {
	width: 100% !important;
	max-width: 460px;
	margin: 0 auto;
	display: block;
}

/* Keep the related products carousel inside its column */
body.single-product .related-product-section,
body.single-product .related-product-section .fusion-carousel,
body.single-product .related-product-section .fusion-carousel-wrapper { max-width: 100%; overflow: hidden; }

/* Related products on single product page: same image size everywhere */
body.single-product .related-product-section .fusion-product-wrapper .featured-image {
	width: 100%;
	height: 190px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin-bottom: 10px;
}

body.single-product .related-product-section .fusion-product-wrapper .featured-image a.product-images {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

body.single-product .related-product-section .fusion-product-wrapper .featured-image img {
	max-width: 100% !important;
	max-height: 100% !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain;
}

body.single-product .related-product-section .fusion-product-wrapper {
	display: flex;
	flex-direction: column;
	height: 100%;
}

body.single-product .related-product-section .product-title {
	min-height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin-bottom: 8px;
}

@media only screen and (max-width: 767px) {
	body.single-product .related-product-section .fusion-product-wrapper .featured-image { height: 140px; }
}

/* Related cards: clean white card, no blue block behind the photo */
body.single-product .related-product-section .fusion-carousel-item-wrapper,
body.single-product .related-product-section li.product,
body.single-product .related-product-section .fusion-product-wrapper,
body.single-product .related-product-section .featured-image {
	background: #fff !important;
}

body.single-product .related-product-section .fusion-carousel-item-wrapper {
	border-radius: 14px;
	padding: 10px 10px 14px;
	box-shadow: 0 4px 18px rgba(0, 22, 137, .07);
}

/* Related products: navy cards (brand colour) */
body.single-product .related-product-section .fusion-carousel-item-wrapper {
	background: #001689 !important;
	border-radius: 14px !important;
	padding: 12px 12px 16px !important;
	box-shadow: 0 6px 20px rgba(0, 22, 137, .18) !important;
	border: 0 !important;
}

/* keep the product photo on a clean white tile inside the navy card */
body.single-product .related-product-section .fusion-product-wrapper,
body.single-product .related-product-section .featured-image {
	background: #fff !important;
	border-radius: 10px !important;
	overflow: hidden;
}

body.single-product .related-product-section .featured-image {
	height: 170px;
	display: flex;
	align-items: center;
	justify-content: center;
}

body.single-product .related-product-section .product-title,
body.single-product .related-product-section .product-title a {
	color: #fff !important;
}

body.single-product .related-product-section .product-title {
	min-height: 46px;
	margin: 10px 0 0 !important;
}

/* Related products: product photo sits directly on the navy card (transparent PNG) */
body.single-product .related-product-section .fusion-product-wrapper,
body.single-product .related-product-section .featured-image {
	background: transparent !important;
	border-radius: 0 !important;
}

body.single-product .related-product-section .fusion-carousel-item-wrapper {
	padding: 16px 14px 18px !important;
}

body.single-product .related-product-section .featured-image img {
	filter: drop-shadow(0 6px 12px rgba(0, 0, 0, .18));
}

/* Related products: back to white cards (client request) */
body.single-product .related-product-section .fusion-carousel-item-wrapper {
	background: #fff !important;
	border: 1px solid #eef1f8 !important;
	box-shadow: 0 4px 18px rgba(0, 22, 137, .07) !important;
}

body.single-product .related-product-section .product-title,
body.single-product .related-product-section .product-title a {
	color: #001689 !important;
}

body.single-product .related-product-section .featured-image img {
	filter: none !important;
}

/* kill any leftover dark background inside related product cards */
body.single-product .related-product-section .fusion-product-wrapper,
body.single-product .related-product-section .fusion-product-wrapper *,
body.single-product .related-product-section .featured-image,
body.single-product .related-product-section .featured-image * {
	background-color: transparent !important;
	background-image: none !important;
}

body.single-product .related-product-section .fusion-carousel-item-wrapper {
	background: #fff !important;
}

/* Feature chips: caption was clipped outside the box (max-height:80px on .feature-item) */
body.single-product .features-container .feature-item {
	max-height: none !important;
	height: auto !important;
	min-height: 104px;
	justify-content: center !important;
	gap: 6px;
	padding: 10px 8px !important;
	box-sizing: border-box;
}

body.single-product .features-container .feature-item img {
	max-width: 34px !important;
	width: 34px !important;
	height: auto !important;
	margin-bottom: 4px !important;
}

body.single-product .features-container .feature-caption {
	font-size: 11px !important;
	line-height: 1.7 !important;
	min-width: 0 !important;
	max-width: 100%;
	text-align: center;
	white-space: normal;
	color: #001689 !important;
}

@media only screen and (max-width: 767px) {
	body.single-product .features-container .feature-item { min-height: 92px; }
	body.single-product .features-container .feature-caption { font-size: 10px !important; }
}
