.single-product-page {

	.nps-grade-label {
		position: relative;
		top: 15px;
		left: 15px;
		border-radius: 12px;
		padding: 5px 10px;
		min-width: 50px;
		color: #fff;
		text-align: center;
		text-transform: uppercase;
		word-break: break-all;
		font-weight: 600;
		font-size: 12px;
		line-height: 1.2;
	}

	.grade-a { background-color: rgba(39, 174, 96, 0.72); } 
	.grade-b { background-color: rgba(0, 113, 235, 0.72); } 
	.grade-c { background-color: rgba(241, 196, 15, 0.72); }
	.grade-d { background-color: rgba(236, 35, 35, 0.72); }


	.wd-single-stock-status {
		/* Stock status */
		p.stock {
			color: #54695B;
			font-size: 12px;
			font-weight: 600;
			&::before {
				color: #27C05D;
			}
		}
	}
	.star-rating {
		/* Rating star */
		color: #FF9017;
	}
	p.price {
		/* Price */
		display: flex;
		gap: 2px;
		
		del {
			order: 2;
			align-self: center;
			padding-left: 4px;
		}
	}

	.nps-discount-label-container {
		border-top: 1px solid #e4e4e4;
		border-bottom: 1px solid #e4e4e4;
		padding: 12px 0;
		
		.nps-discount-top-container {
			display: flex;
			align-items: center;
			justify-content: space-between;
			width: 100%;
			gap: 2px;
			user-select: none;
			-webkit-user-select: none; /* Safari */
			-moz-user-select: none;    /* Firefox */
			-ms-user-select: none;     /* IE10+ */
		}
		
		.label-container-left {
			display: flex;
			gap: 10px;
			align-items: center;

			svg {
				width: 21px;
				height: 21px;
			}
		}

		.nps-discount-label {
			margin-bottom: 0;
			font-size: 15px;
			font-weight: 500;
			color: #013c16;
			line-height: 1;
		}
		
		.label-container-right {
			display: flex;
			justify-content: center;
			align-items: center;
		}

		.nps-discount-bottom-container {
			padding-left: 31px;
			padding-top: 0;
			max-height: 0;
			overflow: hidden;
			opacity: 0;
			transition: max-height 0.2s ease , opacity 2s ease;
		}
		
		.nps-discount-bottom-container.expanded {
			max-height: 1000px; 
			opacity: 1;
			transition: max-height 2s ease;
			padding-top: 4px;
		}

		.toggle-icon {
			width: 20px;
			height: 20px;
			transition: transform 0.3s ease;
		}

		.toggle-icon.rotated {
			transform: rotate(180deg);
		}

	}

	.elementor-widget-wd_single_product_add_to_cart {
		.variations {
			/* Variations */
			label {
				color: #284633;
				font-size: 14px;
				font-weight: 500;
			}
			.wd-swatch {
				/* Variation Swatches */
				color: #54695B;
				font-size: 12px;
				font-weight: 400;
				line-height: 30px;
			}
			.wd-swatches-product {
				gap: 10px;
			}
			[class*="wd-swatches"].wd-text-style-4 .wd-swatch.wd-text {
				/* Variation Swatches border */
				border: 1.5px solid #E4E4E4;
				padding-inline: 4px;
			}
			[data-id="pa_uom"] .wd-swatch.wd-text:is(.wd-active,:hover:not(.wd-disabled)), [data-id="pa_uom"] :is(.wd-swatch-wrap a:hover,.wd-swatch-wrap.wd-active) .wd-swatch.wd-text {
				/* Variants Swatch Color during hover and active */
				background-color: #27C05D;
				border-color: #27C05D;
			}
			[data-id="pa_warehouse"] .wd-swatch.wd-text:is(.wd-active,:hover:not(.wd-disabled)), [data-id="pa_warehouse"] :is(.wd-swatch-wrap a:hover,.wd-swatch-wrap.wd-active) .wd-swatch.wd-text {
				/* Warehouse Swatch Color during hover and active */
				background-color: #27C05D;
				border-color: #27C05D;
			}
			.wd-swatch-text {
				text-transform: capitalize;
			}

			/* Hide Clear button */
			.wd-reset-var {
				display: none;
			}
		}
	}
	.wd-nav[class*="wd-style-underline"] .nav-link-text:after {
		/* Tabs */
		background-color: #27C05D;
	}
	.amount {
		/* Related Products */
		color: rgba(95, 95, 95);
		font-weight: 500;
	}
	del .amount {
		color: var(--color-gray-300);
	}
	
}


@media screen and (max-width: 1024px) {
	.single-product-page {
		form.variations_form {
			--wd-var-table-mb: 0px !important;
		}

		.nps-discount-label-container {
			.label-container-left {
				gap: 6px;
			}

			.nps-discount-label {
				font-size: 14px;
			}

			.nps-discount-bottom-container {
				padding-left: 28px;
			}

			.toggle-icon {
				width: 18px;
				height: 18px;
			}
			
			.nps-discount-rule {
				font-size: 13px;
			}
		}
	}
}


@media screen and (max-width: 1024px) and (min-width: 769px) {
    .get-quote-btn-group .elementor-button-icon, .wd-wishlist-btn a::before {
        display: none;
    }
}

@media screen and (max-width: 576px) {
	.single-product-page {
		.nps-grade-label {
			top: 10px;
			left: 10px;
			padding-inline: 5px;
			min-width: 40px;
			font-size: 10px;
		}
	}
}