.woocommerce {

	input[type=text],
	input[type=tel],
	input[type=email],
	input[type=password],
	input[type=email],
	input[type=search],
	input[type=date],
	input[type=range],
	input[type=number],
	input[name="apply_coupon"],
	textarea,
	select {
		padding: 12px;
		margin-bottom: 10px !important;
		font-size: 14px;
		border-radius: 1px;
		box-shadow: none;
		text-shadow: none;
		font-weight: normal;
	}

	a.remove,
	ul.product_list_widget li a.remove{
		font-size: 18px  !important;
		height: 20px;
		width: 20px;
		padding: 0px;
		font-weight: 100;
		line-height: 1em !important;

		&:hover {
			background: @accent-color-1 !important;
		}
	}

	.ul.socialcount {
		margin: 0.4em 0px 0.4em 0 !important;
	}

	.lost_reset_password .button {
		.button-gen-common();
		.button-gen(@accent-color-1);
		.button-gen-hover(@accent-color-2);
	}

	.checkout-breadcrumb {

		.icon.shortcode {
			line-height: 1.15;
			font-size: 20px;
			padding: 0 20px;
			vertical-align: middle !important;
			color: @accent-color-7;
		}

		.title-part-inactive {
			color: @accent-color-7;
		}
	}

	#payment {
		background: none;

		#place_order {
			float: left;
		}

		ul.payment_methods {
			border-bottom: 0;
		}

		ul.payment_methods li input {
		vertical-align: middle;
		border: 0;
		}

		.payment_box {
			background: @accent-color-7;
			p {
				margin: 0;
			}
		}
	}

	h1.page-title,
	div.product .product_title {
		display: none;
	}

	.star-rating {
		float: none;
		color: @accent-color-2;
		font-style: normal;

		&:before {
			color: @accent-color-1;
			font-style: normal;
		}
	}

	.widget.woocommerce span.amount {
		color: @accent-color-3;
	}

	.woocommerce-result-count {
		margin-top: 20px;
		line-height: 15px;
	}

	.woocommerce-ordering {
		margin-bottom: 30px;

		select {
			padding: 10px;
			box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16)!important;
			font-size: 12px;
			line-height: 22px;
		}
	}

	form.login {
			border-radius: 1px;
			border: 3px solid @accent-color-1;
	}

	form.checkout_coupon {
		border-radius: 1px;
		border: 3px solid @accent-color-1;
	}

	.woocommerce-message,
	.woocommerce-error,
	.woocommerce-info {
		margin-bottom: 2em;
		border-top: 0;
		background: transparent;
		box-shadow: none;
		padding: 10px !important;
		text-shadow: none;
		border-radius: 1px;


		&:before {
			display: none;
		}
	}

	.button.wc-forward,
	.button.wc-backward {
		&, a {
			&:after,
			&:before {
				display: none;
			}
		}
	}

	.woocommerce-info,
	.woocommerce-message {
		background-color: @accent-color-7;
	}

	.woocommerce-error {
		background-color: fade(@accent-color-1, 10%);
		color: fade(@accent-color-1, 80%);
		text-shadow: none;
	}

	span.onsale,
	ul.products li.product span.onsale {
		@size: 70px;
		.border-box();
		top: 0;
		right: 0;
		left: auto;
		z-index: 5;
		margin: 0;
		width: @size;
		height: @size;
		border-radius: 1px;
		background: transparent;
		box-shadow: none;
		color: @accent-color-8;
		text-transform: uppercase;
		text-shadow: none;
		font-weight: bold;
		font-style: normal;
		font-size: 13px;
		font-family: @h6-face, sans-serif;
		line-height: @size;

		html.csstransforms & {
			.transform(rotate(45deg));
			.transform(rotate(45deg) translateZ(0));
			margin: -10px -10px 0 0;

			&:before {
				position: absolute;
				top: 0;
				left: -@size/2;
				z-index: -1;
				width: 0;
				height: 0;
				border: @size solid transparent;
				border-top: 0;
				border-bottom-color: @accent-color-1;
				content: "";
			}
		}
	}

	ul.products {
		position: relative;

		li.product-category {
			mark.count {
				display: none;
			}
		}

		li.product {
			clear: none;

			.add_to_cart_button {
				display: none;
			}

			span.amount {
				font-weight: normal;
				font-size: 22px;
			}

			&.first {
				clear: both;
			}

			&.last {
				margin-right: 0;
			}

			.price {
				.wpv-font(h3-);
				margin-bottom: 0;
				color: @accent-color-3;
			}

			.woocommerce-loop-product__title {
				.wpv-font(h4-);
				font-size: 18px;
			}

			a {
				.product-thumbnail {
					position: relative;
					display: block;
					overflow: visible;
					margin-bottom: 5px;
					max-height: none !important;
				}

				img {
					display: block;
					border: 0;
					box-shadow: none;
					.transition(all .3s);
				}

				html.no-touch &:hover {
					img {
						box-shadow: none !important;
						.transform(scale(1.1));
					}
				}
			}

			.aggregateRating {
				margin: 10px 0;
				padding: 10px 0;
				min-height: 1.4em;
				border-top: 1px solid @default-line-color;
				border-bottom: 1px solid @default-line-color;

				.star-rating {
					position: relative;
					top: 2px;
					float: left;
					margin-right: 10px;
					margin-bottom: 0;
					width: 7em;
					color: @accent-color-2;
					letter-spacing: 5px;
					font-size: 14px;

					span {
						display: inline-block;

						strong,
						span.visualhidden {
							display: none;
						}

						&:before {
							font-size: 14px !important;
						}
					}
				}

				a.count {
					position: relative;
					top: -3px;
					margin: 0 0 0 5px;
					color: @accent-color-6;

					span.number {
						color: @accent-color-2;
					}
				}
			}

			span.price span.from {
				.wpv-font(em-);
				.wpv-color(em-);
			}
		}

		div[itemprop="description"] {
			margin: 0 0 5px 0;

			> p:first-child {
				margin-top: 0;
			}
		}
	}

	.related,
	.upsells {
		&.products {
			clear: both;
			margin-top: 100px;

			h2 {
				.wpv-font(h2-);
				position: relative;
				margin: 0;
				margin-bottom: 30px;
				padding: 0 5px 15px 0;
				padding-bottom: 20px;
				border-bottom: 1px solid @default-line-color;
				color: @h3-color;
				text-align: center;

				&:after {
					content: "";
					position: absolute;
					left: 50%;
					bottom: -1px;
					width: 100px;
					height: 1px;
					background: @accent-color-1;
					margin-left: -50px;
				}
			}

			ul,
			ul.products {
				li.product {
					margin-bottom: 60px;
					width: 22.15%;
				}
			}
		}
	}

	.upsells {
		&.products {
			ul,
			ul.products {
				li.product {
					margin-bottom: 0;
				}
			}
		}
	}

	.quantity,
	#quantity {
		input.qty {
			border: 1px solid @default-line-color;
			border-radius: 1px;
			font-weight: normal;
		}
	}

	div.product {
		span.onsale {
			right: 52%;
		}

		p.price {
			margin-bottom: 30px;

			span.from {
				.wpv-font(em-);
				.wpv-color(em-);
			}
		}

		.woocommerce-tabs {
			position: relative;

			> ul.tabs {
				overflow: visible;
				margin: 0;
				margin-top: 10px;
				padding: 0;
				border: 0;
				background: @accent-color-7;
				list-style: none;

				li {
					position: relative;
					z-index: 2;
					display: block;
					float: left;
					margin: 0;
					padding: 0;
					border: 0;
					border-radius: 1px;
					background: @accent-color-7;
					box-shadow: none;
					white-space: nowrap;

					&:before,
					&:after {
						display: none !important;
					}

					a {
						position: relative;
						display: block;
						padding: 25px 16px;
						outline: none;
						color: @accent-color-1;
						text-shadow: none;
						font-weight: normal;
						font-size: 18px;
						line-height: 1;
						cursor: pointer;

						.icon {
							color: @accent-color-8;
							font-style: normal;
						}

						&:hover {
							border: 0;
							border-radius: 1px;
							background-color: @accent-color-1;
							box-shadow: none;
							color: @accent-color-8;
							text-decoration: none;

							.icon {
								color: @accent-color-8 !important;
							}
						}
					}
				}

				li.active {
					padding: 0 !important;
					border: 0;
					border-radius: 1px;
					background-color: @accent-color-1;
					box-shadow: none;
					color: @accent-color-8;
					text-decoration: none;
					white-space: nowrap;
				}
			}

			.panel {
				clear: both;
				margin-bottom: 0 !important;
				padding: 10px 12px 0 12px;
			}

			&,
			&:after,
			> ul:after {
				display: block;
				clear: both;
				content: "";
			}

			#tab-description > h2,
			#tab-reviews h2 {
				display: none;
			}

			#tab-reviews #comments > div .star-rating {
				display: none;
			}
		}

		form.cart {
			margin-top: 60px;
			margin-bottom: 50px;

			.group_table td {
				padding-bottom: 1em;
			}

			> .single_add_to_cart_button {
				padding: .7em 2em;

				border: 2px solid @accent-color-1;
				border-radius: 1px;
				background: transparent;
				box-shadow: none;
				color: @accent-color-1;
				text-transform: uppercase;
				text-shadow: none;
				font-style: normal;
				font-size: 15px;
				&:hover {
					&, span {
						border-color: @accent-color-1;
						background: @accent-color-1;
						color: lighten(@accent-color-1, 90%) ;
						transition: color 0.3s;
					}
				}
			}

			+ .share-btns {
				text-align: left;
				padding: 0 0 20px 0;

				> ul {
					margin-left: 0;
				}

				.sep,
				.sep-2,
				.sep-3 {
					&:first-child {
						display: none;
					}
				}
			}
		}

		.product_meta {
			.posted_in,
			.tagged_as {
				display: block;
			}
		}

		div.images {
			position: relative;
			margin-bottom: @vertical-padding-large*2;

			.bx-wrapper {
				margin-bottom: 0;
			}

			div.thumbnails {
				padding-top: 0;

				a {
					margin-top: 3.8%;
					width: 22.05%;
				}
			}
		}
	}

	&.woocommerce-cart .cart_totals table {
		float: left;
		text-align: left;
	}

	&.woocommerce-checkout {

		.product-subtotal,
		.cart-subtotal,
		.order-total {
			.amount {
				.wpv-font(h5-);
				color: @h5-color;
				font-weight: bold;
			}
		}

		.customer_details {
			dt, dd {
				display: inline;
			}

			dt:before {
				display: block;
				content: "";
			}
		}

		.addresses {
			margin-top: @element-padding;
		}


		table.shop_table,
		table.shop_table th,
		table.shop_table td {
			border: 0;
			font-weight: normal;
			padding: 3px;
		}

		#order_review_heading,
		#payment {

		}


		h3 {
			margin-bottom: .8em;
			.wpv-font(h4-);
		}

		#payment {
			div.payment_box {
				background: @accent-color-7;
				box-shadow: none;

				&:after {
					border-bottom-color: @accent-color-7;
				}
			}
		}

		#shiptobilling {
			line-height: 2.7em;
		}

		.amount {
			color: @accent-color-3;
		}

		#place_order {
			.button-gen-common();
			.button-gen(@accent-color-1);
			.button-gen-hover(@accent-color-2);
		}
	}

	#reviews {
		h3 {
			margin: 0 0 20px;
			font-size: 16px;
		}

		#comments {
			.comments;

			ol.commentlist {
				li {
					margin-bottom: 0;
					padding: 15px 0;
					border-top: 1px dotted @default-line-color;

					img.avatar {
						position: relative;
						float: none;
						width: 60px;
					}

					.comment-meta {
						.wpv-color(primary-font-);

						div.star-rating {
							width: 7em !important;
							letter-spacing: 5px;
							font-size: 14px !important;

							span {
								color: @accent-color-1 !important;
								font-size: 14px !important;

								&:before {
									font-size: 14px !important;
								}
							}
						}
					}
				}
			}

			.add_review {
				margin-top: @element-padding;
			}
		}
	}

	#commentform .form-submit {
		position: static;

		input {
			.submit-button-style;
		}
	}

	html.placeholder & {
		label[for] {
			display: inline;
		}

		form .form-row label[for] {
			display: block;
			padding-bottom: 5px;

			&.checkbox {
				display: inline;
			}
		}
	}

	article img {
		display: inline-block;
	}

	.widget_product_search {
		#searchform {
			label {
				display: none !important;
			}
		}
	}

	.summary {
		form.cart {
			padding-left: 20px;
		}

		> div {
			padding-left: 20px;
		}

		.star-rating {
			margin: 13px 8px 15px 0;
			width: 7em;
			color: @accent-color-1;
			letter-spacing: 5px;
			font-size: 14px;

			span {
				&:before {
					font-size: 14px !important;
				}
			}
		}

		a.count {
			display: inline-block;
			margin: 10px 5px 15px 0;
			color: @accent-color-6;
			font-size: 10px;

			span.number {
				color: @accent-color-2;
			}
		}

		form.variations_form {
			table.variations {
				td {
					display: block;
					padding-bottom: 5px;
					select {
						margin: 0 0 5px 0;
					}
				}
			}

			.single_add_to_cart_button {
				.wpv-font(primary-font-);
				border-radius: 1px;
				background: @accent-color-1;
				color:@accent-color-8;
				text-transform: uppercase;
				font-weight: normal;

				&:hover,
				&:before,
				&:after {
					color: @accent-color-3 !important;
					text-decoration: none;
				}

				&:after {
					top: 2.2em;
					border-top: 1px solid @accent-color-3;
				}
			}
		}

		.share-btns {
			margin: 0 0 0 20px;
			padding: 20px 0 ;
			border-top: 1px solid @default-line-color;
		}

		.product_meta {
			margin: 0 0 0 20px;
			padding-left: 0;
		}

		.price {
			&, ins {
				.amount {
					.wpv-font(h2-);
				}
			}

			del {
				.amount {
					.wpv-font(h5-);
				}
			}
		}
	}

	.price {
		&, ins {
			.amount {
				.wpv-font(h3-);
				font-style: normal;
				color: @accent-color-1;
				text-decoration: none !important;
			}
		}

		del {
			.amount {
				.wpv-font(h5-);
				color: @accent-color-6;
				text-decoration: line-through;
			}
		}
	}

	.images a img {
		box-shadow: none !important;
	}

	.product_meta {
		padding: 15px 0 0 0;
		border-top: 1px solid @default-line-color;

		span {
			line-height: 25px;
		}

		a {
			color: @css_link_color;

			&:hover {
				color: @css_link_hover_color;
			}

			&:visited {
				color: @css_link_visited_color;
			}
		}
	}

	table.shop_table {
		th,
		tfoot th td {
			font-weight: normal;
		}
	}

	&.woocommerce-cart {

		.button {
			padding: 0.3em 0.8em !important;
			text-shadow: none !important;
		}

		.cart-collaterals {
			.button {
				margin: 10px 10px 0 0;
				.button-gen-common();
				.button-gen(@accent-color-7);
				.button-gen-hover(@accent-color-3);
			}

			.checkout-button {
				.button-gen-common();
				.button-gen(@accent-color-1);
				.button-gen-hover(@accent-color-2);
			}
		}

		.coupon {

			margin-top: 30px;
			text-transform: uppercase;
			font-size: 16;
		}

		table.shop_table,
		table.shop_table th,
		table.shop_table td {
			border: 0;
		}

		table.shop_table {
			.product-thumbnail {
				img {
					width: 50px;
				}
			}

			td {
				border-top: 1px solid @default-line-color;
				border-bottom: 0;

				&.product-name a {
					font-size: 15px;
				}
			}

			a.remove:hover {
				background: none;
				color: red;
			}
		}

		.product-subtotal,
		.cart-subtotal,
		.order-total {
			.amount {
				.wpv-font(h5-);
				color: @h5-color;
				font-weight: bold;
			}
		}

		.cart_totals {
			th,
			th strong {
				font-weight: normal;
				padding: 0;
			}
		}



		.cart_totals,
		.shipping_calculator {
			width: auto;
			float: none;
		}

		.shipping-calculator-form {
			.button {
				.button-gen-common();
				.button-gen(@accent-color-7);
				.button-gen-hover(@accent-color-3);
			}
		}

		.cart_totals > h2,
		.shipping_calculator > h2  {
			.wpv-font(h4-);
			text-align: left;
		}

		.cart_totals > h2 {
			margin-top: 0;
		}

		.shipping-calculator-button {
			.wpv-font(h4-);

			select {
				padding: 10px;
				margin-bottom: 10px;
				font-size: 16px;
			}

			span {
				font-style: normal;
			}

			&:hover {
				text-decoration: none;
			}

			&:after {
				display: none;
			}
		}
	}

	.pp_content_container #respond #commentform .form-submit {

		input[type="submit"] {
			.submit-button-style;
			border: none !important;
			box-shadow: none !important;
			text-shadow: none;
		}
	}

	.add_review {
		a.button {
			.button-gen-common();
			.button-gen(@accent-color-1);
			.button-gen-hover(@accent-color-2);
			padding-right: .8em;
			padding-left: .8em;
			box-shadow: none;
			text-shadow: none;
		}
	}

	ul.cart_list a {
		.wpv-font(h5-);
		padding: 5px 0 10px 0;
		font-size: 14px;

	}

	ul.product_list_widget {
		li {
			a {
				.wpv-font(h5-);
				padding: 5px 0 5px 0;
				font-size: 14px;
			}

			img {
				box-shadow: none;
			}
		}

		.star-rating {
			display: none;
			margin: .7em 0;
		}
	}

	ul.product-categories {
		li.current-cat {
			a {
				color: @css_link_hover_color;
			}
		}
	}

	.woocommerce.widget_price_filter {
		.price_slider {
			height: 0.8em;
			background: @accent-color-8;

			> div.ui-slider-range {
				background: @accent-color-7;
				box-shadow: none !important;
			}

			> a.ui-slider-handle {
				width: 0.5em;
				height: 0.5em;
				border: 6px solid @accent-color-1 !important;
				background: #fff;
				box-shadow: none !important;
			}
		}

		.price_slider_amount{
			.button {
				.button-gen-common();
				.button-gen(@accent-color-1);
				.button-gen-hover(@accent-color-2);
				margin-top: 15px;
				padding: 0.3em 0.8em;
				box-shadow: none;
				text-shadow: none;
				font-weight: normal;
				font-style: normal;
			}
		}

		.price_label {
			padding-top: 10px;
		}

		.from,
		.to {
			color: @accent-color-1;
			font-size: 1.3em;
		}
	}

	.myaccount_user {
		padding-bottom: 70px;
	}

	.myaccount_address {
		padding-bottom: 30px;
	}

	#customer_login .lost_password {
		margin-left: 20px;
	}
}

body.woocommerce-checkout {
	form.login {
		margin-bottom: 5em;
	}

	.col-2 {
		border: 3px solid @accent-color-1;
		padding: 20px;
		.border-box();
	}
}

.cart-collaterals {
	width: auto !important;
	padding: 20px;
	border: solid 3px @accent-color-1;

	.cart_totals table tr:first-child th {
		width: 69%;
	}

	.cart_totals tr td {
		border: 0;
		padding: 3px !important;
	}
}

body.woocommerce .page-wrapper {
	#review_form #respond .form-submit input,
	#submit,
	a.button,
	input.button,
	input[type=button],
	button.button {
		.button-gen-common();
		.button-gen(@accent-color-1);
		.button-gen-hover(@accent-color-2);
		.wpv-font(primary-font-);
		box-shadow: none;
		text-shadow: none;
	}

	.quantity {
		margin: 0 15px 0 0 !important;
		padding-top: 4px;
	}
}

body.post-type-archive-product,
body.tax-product_cat {
	ul.products {
		margin-bottom: 0;

		li.product {
			margin-bottom: 60px;
			width: (100% - 3.8%*2)/3;

			&.first {
				clear: both;
			}
		}
	}
}

.widget.widget_shopping_cart {
	.widget_shopping_cart_content {
		li {
			overflow: visible;

			&.empty {
				border-bottom: 0;
			}

			a {
				font-size: 18px !important;
			}
		}

		.total {
			strong,
			.amount {
				.wpv-font(h5-);
				color: @h5-color;
			}

			.amount {
				font-weight: bold;
			}
		}

		.quantity .amount {
			.wpv-font(primary-font-);
			color: @primary-font-color;
		}

		p:last-child {
			margin-bottom: 0;
		}

		.buttons {
			a.button {
				margin-right: 10px;
				.button-gen-common();
				.button-gen(@accent-color-7);
				.button-gen-hover(@accent-color-3);
				padding: 0.5em 1em;
				box-shadow: none;
				font-weight: normal;
			}

			a.checkout {
				.button-gen-common();
				.button-gen(@accent-color-1);
				.button-gen-hover(@accent-color-2);
				padding: 0.5em 1em;
				box-shadow: none;
				font-weight: normal;
			}
		}
	}
}

.woocommerce-page #review_form #respond p {
	margin: 0 0 10px;
}

.vamtam-cart-dropdown-link {
	position: relative;
	display: block;
	margin-top: -1px;
	margin-left: 2px;
	padding: 4px 0 4px 8px;
	width: 40px;
	height: 43px;
	background: transparent;
	color: @accent-color-6;
	text-align: center;
	font-size: 35px;
	line-height: 40px;
	cursor: pointer;
	transition: color .4s;

	body.sticky-header-type-over.sticky-header.wpv-not-scrolled &,
	body.sticky-header-type-half-over.sticky-header.wpv-not-scrolled .layout-standard & {
		color: @main-menu-sticky-color;
	}

	.products {
		.border-box();
		position: absolute;
		top: 5px;
		right: 0px;
		z-index: 1;
		display: block;
		padding: 5px;
		width: 20px;
		height: 20px;
		border-radius: 100px;
		background: @accent-color-2;
		color: @accent-color-6;
		text-align: center;
		font-style: normal;
		font-size: 10px;
		font-family: @primary-font-face;
		line-height: 1;

		&.cart-empty {
			background: @accent-color-7;
			.readable-color( @accent-color-7 );
		}
	}

	.icon {
		position: relative;
		top: 5px;
		float: left;
		font-size: 21px;
	}

	&:hover {
		text-decoration: none;
	}
}

.fixed-header-box {
	.cart-dropdown {
		display: table-cell;
		min-width: 50px;
		vertical-align: middle;

		&.hidden {
			display: none;
		}

		&:hover {
			.vamtam-cart-dropdown-link {
				z-index: 9999;
			}
		}

		&:not(:last-child) {
			.cart-dropdown-inner {
				width: 62px;
			}

			.vamtam-cart-dropdown-link {
				padding-right: 5px;
				padding-left: 15px;

				.products {
					right: 5px;
				}
			}

			.widget {
				width: 262px;
			}
		}

		.cart-dropdown-inner {
			width: 50px;
			height: 50px;
		}

		.widget {
			position: absolute;
			display: none;
			margin-left: -230px;
			padding: 15px;
			width: 250px;
			background-color: @accent-color-8;
			box-shadow: 0 2px 4px 2px rgba(0, 0, 0, 0.09);

			img {
				box-shadow: none;
			}
		}
	}
}
