div.product-line
{
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin: 70px 0px;
}

	div.product-line-cell
	{
		position: relative;
		width: 830px;
	}
	
	div.product-line-cell:last-child
	{
		margin: 0px;
	}
	
		a.product-img-link
		{
			display: block;
			height: 500px;
			padding: 20px;
			border: 1px solid #d9d9d9;
			border-radius: 20px;
			box-sizing: border-box;
			overflow: hidden;
		}
		
			a.product-img-link img
			{
				display: block;
				object-fit: contain;
				width: 100%;
				height: 100%;
				border-radius: 10px;
			}
	
		div.product-photos
		{
			float: left;
			width: 100%;
			margin-top: 30px;
			overflow: hidden;
		}
		
			div.product-photo
			{
				position: relative;
				height: 150px;
			}
			
				a.product-photo-link
				{
					position: relative;
					float: left;
					width: 100%;
					height: 100%;
					padding: 10px;
					border: 1px solid #d9d9d9;
					border-radius: 15px;
					box-sizing: border-box;
					overflow: hidden;
					transition: 0.2s;
					-o-transition: 0.2s;
					-webkit-transition: 0.2s;
				}
				
				a.product-photo-link:hover,
				a.product-photo-link.active
				{
					border: 1px solid #3b9246;
				}

					a.product-photo-link img
					{
						display: block;
						object-fit: contain;
						width: 100%;
						height: 100%;
						border-radius: 8px;
					}
					
		div.wrap-info-line
		{
			float: left;
			width: 100%;
			margin-bottom: 20px;
		}
		
		div.wrap-info-line:last-child
		{
			margin: 0px;
		}
		
		div.wrap-info-line.four
		{
			display: grid;
			grid-template-columns: 1fr 1fr 1fr 1fr;
			column-gap: 40px;
		}
		
		div.wrap-info-line.eight
		{
			display: grid;
			grid-template-columns: 2fr 1fr 1fr 1fr 1fr 1fr 1fr;
			column-gap: 20px;
		}
		
			div.wrap-info-cell
			{
				float: left;
				width: 100%;
				box-sizing: border-box;
			}
			
			div.wrap-info-line.two div.wrap-info-cell
			{
				width: 50%;
			}
			
			div.wrap-info-line.two div.wrap-info-cell:nth-child(1)
			{
				padding-right: 20px;
			}
			
			div.wrap-info-line.two div.wrap-info-cell:nth-child(2)
			{
				padding-left: 20px;
			}
			
				span.product-helper
				{
					display: block;
					font-size: 15px;
					color: #9d9d9d;
				}
				
				span.product-helper.big
				{
					font-size: 18px;
					font-weight: 600;
					color: #111;
				}
				
				span.product-helper-required
				{
					margin-left: 5px;
					font-weight: 400;
					color: #ea3131;
				}
				
				span.product-price
				{
					font-size: 25px;
					font-weight: 600;
					color: #111;
				}
				
				span.product-price.discount
				{
					color: #ea3131;
				}
				
				span.product-price-old
				{
					font-size: 16px;
					font-weight: 600;
					color: #111;
					margin-left: 10px;
					text-decoration: line-through;
					vertical-align: top;
				}
				
				div.product-field-wrap
				{
					margin: 10px 0px;
				}
					
					div.product-field-wrap div.dropdown-menu
					{
						width: 100%;
					}
				
					div.dropdown.product-field-wrap a.dropdown-toggle i
					{
						transform: rotate(0deg);
						transition: 0.2s;
						-o-transition: 0.2s;
						-webkit-transition: 0.2s;
					}
					
					div.dropdown.product-field-wrap.show a.dropdown-toggle i
					{
						transform: rotate(180deg);
					}
				
					.product-field
					{
						display: flex;
						justify-content: space-between;
						align-items: center;
						width: 100%;
						height: 52px;
						padding: 8px 10px;
						border: 1px solid #ddd;
						border-radius: 5px;
						box-sizing: border-box;
						background: #fff;
						font-size: 18px;
						font-weight: 400;
						color: #111;
						transition: 0.2s;
						-o-transition: 0.2s;
						-webkit-transition: 0.2s;
					}
					
					input.dropdown-addon.error + .product-field
					{
						border: 1px solid #f26d4f;
						background: #f1c9c0;
					}
					
						span.addon-placeholder
						{
							display: flex;
							justify-content: space-between;
							width: 95%;
							color: #aaa;
						}
						
							span.addon-placeholder span.addon-name
							{
								text-overflow: ellipsis;
								overflow: hidden;
								color: #111;
							}
							
							span.addon-placeholder span.addon-price
							{
								color: #111;
							}
					
						a.addon-item
						{
							display: flex;
							justify-content: space-between;
						}
						
							span.addon-price
							{
								font-weight: 600;
								white-space: nowrap;
							}
	
						button.product-buy
						{
							display: block;
							width: 100%;
							padding: 16px 30px;
							font-size: 14px;
							line-height: 20px;
							font-weight: 700;
							color: #fff;
							background: linear-gradient(90deg, #46ab53 0%, #3b7d43 50%, #3b7d43 100%);
							background-size: 200% 100%;
							background-position: 2% 0%;
							border: none;
							border-radius: 5px;
							cursor: pointer;
							transition: 0.2s;
							-o-transition: 0.2s;
							-webkit-transition: 0.2s;
						}
						
						button.product-buy:hover
						{
							background-position: 98% 0%;
						}
						
						button.product-buy:active
						{
							background-position: 2% 0%;
						}
						
		div.product-desc-wrap
		{
			float: left;
			width: 680px;
		}
		
			div.product-desc-line
			{
				float: left;
				width: 100%;
				margin-bottom: 40px;
			}
			
				span.product-desc-title
				{
					display: block;
					font-size: 24px;
					font-weight: 700;
					color: #111;
				}
				
				ul.product-features-list
				{
					width: 600px;
					margin: 20px 0px;
					list-style-type: none;
					columns: 2;
					-webkit-columns: 2;
					-moz-columns: 2;
				}
				
					ul.product-features-list li
					{
						display: flex;
						align-items: center;
						margin: 5px 0px;
					}
					
						ul.product-features-list li i
						{
							font-size: 18px;
							color: #3b9246;
							margin-right: 5px;
						}
						
						ul.product-features-list li span
						{
							font-size: 16px;
							color: #111;
						}
						
	div.products-container
	{
		float: left;
		width: 100%;
		margin-top: 40px;
		padding-bottom: 100px;
		overflow: hidden;
	}
	
	div.popover-addon-block
	{
		position: relative;
		margin: 10px;
	}
	
		span.popover-addon-img
		{
			display: block;
			width: 100%;
			padding-top: 100%;
			background-size: contain;
			background-position: center;
			background-repeat: no-repeat;
		}
		
		span.popover-addon-name
		{
			position: absolute;
			display: block;
			width: 100%;
			left: 0px;
			bottom: 0px;
			padding: 5px 10px;
			background: rgb(255 255 255 / 50%);
			box-sizing: border-box;
		}