/**
 * woocommerce.less
 * Governs the general look and feel of WooCommerce sections of stores using themes that do not
 * integrate with WooCommerce specifically.
 */

/**
 * Deprecated
 * Fallback for bourbon equivalent
 */
.clearfix() {
	*zoom: 1;

	&:before,
	&:after {
		content: " ";
		display: table;
	}

	&:after {
		clear: both;
	}
}

@form: #e7e8e8;
//Box sizing
.box-sizing(@x: border-box){
	-webkit-box-sizing: @x;
	-moz-box-sizing: @x;
	box-sizing: @x;
}
//Fonts
@FontAwesome: 'FontAwesome';

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.border_radius(@radius: 4px) {
	border-radius: @radius;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.border_radius_right(@radius: 4px) {
	border-top-right-radius: @radius;
	border-bottom-right-radius: @radius;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.border_radius_left(@radius: 4px) {
	border-top-left-radius: @radius;
	border-bottom-left-radius: @radius;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.border_radius_bottom(@radius: 4px) {
	border-bottom-left-radius: @radius;
	border-bottom-right-radius: @radius;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.border_radius_top(@radius: 4px) {
	border-top-left-radius: @radius;
	border-top-right-radius: @radius;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.opacity( @opacity: 0.75 ) {
	opacity: @opacity;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.box_shadow(@shadow_x: 3px, @shadow_y: 3px, @shadow_rad: 3px, @shadow_in: 3px, @shadow_color: #888) {
	box-shadow: @shadow_x @shadow_y @shadow_rad @shadow_in @shadow_color;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.inset_box_shadow(@shadow_x: 3px, @shadow_y: 3px, @shadow_rad: 3px, @shadow_in: 3px, @shadow_color: #888) {
	box-shadow: inset @shadow_x @shadow_y @shadow_rad @shadow_in @shadow_color;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.text_shadow(@shadow_x: 3px, @shadow_y: 3px, @shadow_rad: 3px, @shadow_color: #fff) {
	text-shadow: @shadow_x @shadow_y @shadow_rad @shadow_color;
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.vertical_gradient(@from: #000, @to: #fff) {
	background-color: @from;
	background: -webkit-linear-gradient(@from, @to);
}

/**
 * Deprecated
 * Vendor prefix no longer required.
 */
.transition(@selector: all, @animation: ease-in-out, @duration: .2s) {
	transition: @selector @animation @duration;
}

/**
 * Deprecated
 * Use bourbon mixin instead `.transform(scale(1.5));`
 */
.scale(@ratio: 1.5) {
	-webkit-transform: scale(@ratio);
	transform: scale(@ratio);
}

/**
 * Deprecated
 * Use bourbon mixin instead `.box-sizing(border-box);`
 */
.borderbox() {
	box-sizing: border-box;
}

.darkorlighttextshadow(@a, @opacity: .8) {
    .text_shadow(0, 1px, 0, rgba(255, 255, 255, @opacity));
}

.rounded(@radius: 2px) {
	-webkit-border-radius: @radius;
	-moz-border-radius: @radius;
	border-radius: @radius;
	-moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;
}

.box-shadow(@arguments) {
	-webkit-box-shadow: @arguments;
	-moz-box-shadow: @arguments;
	box-shadow: @arguments;
}

/**
 * Objects
 */
.menu() {
	.clearfix();

	li {
		display: inline-block;
	}
}

.mediaright() {
	.clearfix();

	img {
		float: right;
		height: auto;
	}
}

.medialeft() {
	.clearfix();

	img {
		float: right;
		height: auto;
	}
}

.ir() {
	display: block;
	text-indent: -9999px;
	position: relative;
	height: 1em;
	width: 1em;
}

.icon( @glyph: "\e001" ) {
	font-family: 'WooCommerce';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	margin: 0;
	text-indent: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	content: @glyph;
}

.iconbefore( @glyph: "\e001" ) {
	font-family: 'WooCommerce';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	margin-right: .618em;
	content: @glyph;
	text-decoration: none;
}

.iconafter( @glyph: "\e001" ) {
	font-family: 'WooCommerce';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	margin-left: .618em;
	content: @glyph;
	text-decoration: none;
}

.loader() {
	&:before {
		height: 1em;
		width: 1em;
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		margin-left: -.5em;
		margin-top: -.5em;
		display: block;
		-webkit-animation: spin 1s ease-in-out infinite;
	    -moz-animation: spin 1s ease-in-out infinite;
	    animation: spin 1s ease-in-out infinite;
	    content: "";
	    background: url(images/icons/loader.svg) center center;
	    background-size: cover;
		line-height: 1;
		text-align: center;
		font-size: 2em;
		color: rgba(0,0,0,0.75);
	}
}
/**
 * WooCommerce CSS Variables
 */

@woocommerce:   	#e03434;
@green:         	#e03434;
@red:           	#a00;
@orange:        	#ffba00;
@blue:          	#2ea2cc;
@yellow: #b53522;
@white: #ffffff;

@primary:           #e03434;                                   // Primary colour for buttons (alt)
@primarytext:       lighten(@primary, 50%);    // Text on primary colour bg

@secondary:         #c8c8c8;    // Secondary buttons
@secondarytext:     darken(@secondary, 60%);   // Text on secondary colour bg

@highlight:         @primary;               // Prices, In stock labels, sales flash
@highlightext:      lighten(@highlight, 50%);  // Text on highlight colour bg

@contentbg:         #fff;                                       // Content BG - Tabs (active state)
@subtext:           #777;                                       // small, breadcrumbs etc
@-moz-keyframes spin {
	100% {
		-moz-transform: rotate(360deg);
	}
}

@-webkit-keyframes spin {
	100% {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes spin {
	100% {
		-webkit-transform: rotate(360deg);
		transform:rotate(360deg);
	}
}
/**
 * _fonts.scss
 * Custom WooCommerce fonts.
 */
@font-face {
	font-family: 'star';
	src: url('../fonts/star.eot');
	src: url('../fonts/star.eot?#iefix') format('embedded-opentype'),
		url('../fonts/star.woff') format('woff'),
		url('../fonts/star.ttf') format('truetype'),
		url('../fonts/star.svg#star') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'WooCommerce';
	src: url('../fonts/WooCommerce.eot');
	src: url('../fonts/WooCommerce.eot?#iefix') format('embedded-opentype'),
		url('../fonts/WooCommerce.woff') format('woff'),
		url('../fonts/WooCommerce.ttf') format('truetype'),
		url('../fonts/WooCommerce.svg#WooCommerce') format('svg');
	font-weight: normal;
	font-style: normal;
}

/**
 * Styling begins
 */
.woocommerce, .woocommerce-page {
	.blog-archive-page .isotope-gutter .item{
		padding: 0;
	}
	/**
	 * General layout styles
	 */
	.col2-set {
		.clearfix();
		width: 100%;

		.col-1 {
			float: left;
			width: 48%;
		}
		.col-2 {
			float: right;
			width: 48%;
		}
	}

	img {
		height: auto;
		max-width: 100%;
	}

	/**
	 * Product page
	 */
	div.product,
	#content div.product {
		div.images {
			float: left;
			width: 48%;
		}

		div.thumbnails {
			.clearfix();

			a {
				float: left;
				width: 30.75%;
				margin-right: 3.8%;
				margin-bottom: 1em;
			}

			a.last {
				margin-right: 0;
			}

			a.first {
				clear: both;
			}

			&.columns-1 {
				a {
					width: 100%;
					margin-right: 0;
					float: none;
				}
			}

			&.columns-2 {
				a {
					width: 48%;
				}
			}

			&.columns-4 {
				a {
					width: 22.05%;
				}
			}

			&.columns-5 {
				a {
					width: 16.9%;
				}
			}
		}

		div.summary {
			float: right;
			width: 48%;
		}

		.woocommerce-tabs {
			clear: both;

			ul.tabs {
				.menu();
			}
		}

		#reviews {
			.comment {
				.mediaright();
			}
		}
	}

	/**
	 * Product loops
	 */
	.related,
	.upsells.products {
		.clearfix();
		clear: both;
		h2{
			text-align: left;
			font-size: 44px;
			font-weight: 600;
		}

		ul.products,
		ul {
			float: none;

			li.product {
				width: 30.8%;

				img {
					width: 100%;
					height: auto;
				}
			}
		}
	}

	ul.products {
		clear: both;
		.clearfix();

		li.product {
			float: left;
			margin: 0 2% 2% 0;
			padding: 0;
			position: relative;
			width: 49%;
			margin-left: 0;
		}

		li.first {
			clear: both;
		}

		li.last {
			margin-right: 0;
		}
	}

	&.columns-1 {
		ul.products {
			li.product {
				width: 100%;
				margin-right: 0;
			}
		}
	}

	&.columns-2 {
		ul.products {
			li.product {
				width: 48%;
			}
		}
	}

	&.columns-3 {
		ul.products {
			li.product {
				width: 30.75%;
			}
		}
	}

	&.columns-5 {
		ul.products {
			li.product {
				width: 16.95%;
			}
		}
	}

	&.columns-6 {
		ul.products {
			li.product {
				width: 13.5%;
			}
		}
	}

	.woocommerce-result-count {
		float: left;
		color: #b2b2b2;
	}
	.woocommerce-ordering {
		float: right;
		.dropdown{
			background: #e7e8e8;
			.selected{
				.rounded(3px);
				color: #5f6062;
			}
			.carat:before{
				color: #ffffff;
			}
		}
	}

	.woocommerce-pagination {
		padding: 40px 0;
		ul.page-numbers {
			.menu();
		}
	}

	/**
	 * Cart page
	 */
	table.cart,
	#content table.cart {
		img {
			height: auto;
		}

		td.actions {
			text-align: right;

			.input-text {
				width: 80px;
			}

			.coupon {
				float: left;

				label {
					display: none;
				}
			}
		}
	}

	.cart-collaterals {
		.clearfix();
		width: 100%;

		.related {
			width: 30.75%;
			float: left;
		}

		.cross-sells {
			width: 100%;
			float: left;

			ul.products {
				float: none;

				li {
					width: 48%;
				}
			}
		}

		.shipping_calculator {
			width: 100%;
			.clearfix();
			clear: right;

			.col2-set {
				.col-1,
				.col-2 {
					width: 47%;
				}
			}
		}

		.cart_totals {
			width: 100%;
		}
	}

	/**
	 * Cart sidebar
	 */
	ul.cart_list,
	ul.product_list_widget {
		li {
			.mediaright();
		}
	}

	/**
	 * Forms
	 */
	form {
		.form-row {
			.clearfix();

			label {
				display: block;

				&.checkbox {
					display: inline;
				}
			}

			select {
				width: 100%;
			}

			.input-text {
				box-sizing: border-box;
				width: 100%;
			}
		}

		.form-row-first,
		.form-row-last {
			float: left;
			width: 47%;
			overflow: visible;
		}

		.form-row-last {
			float: right;
		}

		.form-row-wide {
			clear: both;
		}
	}

	#payment {
		.form-row {
			select {
				width: auto;
			}
		}

		.terms {
			text-align: right;
			padding: 0 1em 0;
		}

		#place_order {
			float: right;
		}
	}
}
/**
 * Global styles
 */
p.demo_store {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	margin: 0;
	width: 100%;
	font-size: 1em;
	padding: 1em 0;
	text-align: center;
	background-color: @primary;
	color: @primarytext;
	z-index: 99998;
	box-shadow: 0 1px 1em rgba(0,0,0,0.2);
}

.admin-bar {
	p.demo_store {
		top: 32px;
	}
}

/**
 * Utility classes
 */
.clear {
	clear: both;
}

/**
 * Main WooCommerce styles
 */
.woocommerce {
	.blockUI.blockOverlay {
		position: relative;
		.loader();
	}

	.loader {
		.loader();
	}

	a.remove {
		display: block;
		font-size: 1.5em;
		height: 1em;
		width: 1em;
		text-align: center;
		line-height: 1;
		border-radius: 100%;
		color: #b53522 ;
		text-decoration: none;
		font-weight: 700;
		border: 0;

		&:hover {
			color: #fff !important;
			background: #b53522;
		}
	}

	.woocommerce-message,
	.woocommerce-error,
	.woocommerce-info {
		font-size: 14px;
		color: #7f7f7f;
		padding: 1em 2em 1em 3.5em !important;
		margin: 0 0 2em !important;
		position: relative;
		background-color: #ffffff;
		border-top: 3px solid @primary;
		list-style: none outside !important;
		.clearfix();
		width: auto;
		line-height: 38px;

		&:before {
			font-family: "WooCommerce";
			content: "\e028";
			display: inline-block;
			position: absolute;
			top: 1em;
			left: 1.5em;
		}

		.button {
			float: right;
		}

		li {
			list-style: none outside !important;
			padding-left: 0 !important;
			margin-left: 0 !important;
			&:before{
				display: none;
			}
		}
	}

	.woocommerce-message {
		border-top-color: #8fae1b;

		&:before {
			content: "\e015";
			color: #8fae1b;
		}
	}

	.woocommerce-info {
		border-top-color: #1e85be;

		&:before {
			color: #1e85be;
		}
	}

	.woocommerce-error {
		border-top-color: #b81c23;

		&:before {
			content: "\e016";
			color: #b81c23;
		}
	}

	small.note {
		display: block;
		color: @subtext;
		font-size: .857em;
		margin-top: 10px;
	}

	.woocommerce-breadcrumb{
		.clearfix();
		margin: 0 0 1em;
		padding: 0;
		font-size: 0.92em;
		color: @subtext;

		a {
			color: @subtext;
		}
	}

	.quantity {
		.qty {
			width: 3.631em;
			text-align: center;
		}
	}

	/**
	 * Product Page
	 */
	div.product {
		margin-bottom: 0;
		position: relative;
		box-sizing: border-box;
		text-align: center;
		img, h3, .star-rating, .price, .button{
			margin-bottom: 20px;
		}

		.product_title {
			clear: none;
			margin-top: 0;
			padding: 0;
			text-align: left;
		}

		span.price,
		p.price {
			color: @highlight;
			font-size: 2em;
			display: block;
			&:after {
				content: " ";
				visibility: hidden;
				display: block;
				height: 0;
				clear: both;
			}

			ins {
				background: inherit;
				font-weight: 700;
			}

			del {
				opacity: 0.5;
				display: block;
			}
		}

		p.stock {
			font-size: 0.92em;
		}

		.stock {
			color: @highlight;
		}

		.out-of-stock {
			color: red;
		}

		.woocommerce-product-rating{
			margin-bottom: 1.618em;
		}

		div.images {
			margin-bottom: 2em;

			img {
				display: block;
				width: 100%;
				height: auto;
				box-shadow: none;
			}

			div.thumbnails {
				padding-top: 1em;
			}
		}

		div.summary {
			margin-bottom: 2em;
			color: #7f7f7f;
			padding-top: 4%;
			.woocommerce-review-link{
				color: @green;
				.transition(all 300ms ease-in-out);
				&:hover{
					color: @secondary;
				}
			}
		}

		div.social {
			text-align: right;
			margin: 0 0 1em;

			span {
				margin: 0 0 0 2px;

				span {
					margin: 0;
				}

				.stButton .chicklets {
					padding-left: 16px;
					width: 0;
				}
			}

			iframe {
				float: left;
				margin-top: 3px;
			}
		}

		.woocommerce-tabs {
			text-align: left;
			margin-bottom: 40px;
			>ul{
				position: relative;
				z-index: 1;
				li{
					&.ui-tabs-active{
						a{
							color: @red;
							border-bottom: 1px solid transparent;
						}
					}
					a{
						display: block;
						font-size: 15px;
						font-weight: 600;
						color: #797979;
						padding: 13px 40px;
						background: @form;
						border: 1px solid #dbdbdb;
						&:hover{
							color: @red;
						}
					}
				}
			}
			.panel{
				background: @form;
				top: -1px;
				position: relative;
				.box-sizing();
				padding: 22px 32px;
				border: 1px solid #dbdbdb;
				ul{
					li{
						width: 33%;
						position: relative;
						.box-sizing();
						padding-left: 18px;
						font-size: 15px;
						color: #797979;
						margin-bottom: 7px;
						&:before{
							content: "\f192";
							font-family: @FontAwesome;
							color: @red;
							position: absolute;
							top: 3px;
							left: 0;
							font-size: 10px;
						}
						span{
							color: #c8c8c8;
						}
					}
				}
			}
		}

		p.cart {
			margin-bottom: 2em;
			.clearfix();
		}

		form.cart {
			margin-bottom: 2em;
			.clearfix();

			div.quantity {
				float: left;
				margin: 0 10px 0 0;
				input{
					height: 34px;
					.rounded(3px);
					border: 1px solid #cccccc;
				}
			}

			table {
				border-width: 0 0 1px 0;

				td {
					padding-left: 0;
				}

				div.quantity {
					float: none;
					margin: 0;
				}

				small.stock {
					display: block;
					float: none;
				}
			}

			.variations {
				margin-bottom: 1em;
				border: 0;

				td,
				th {
					border: 0;
				}

				label {
					font-weight: 700;
					line-height: 38px;
				}

				select {
					width: 100%;
					float: left;
				}
				.dropdown{
					float: left;
					margin-right: 10px;
					.selected{
						background: @primary;
						.rounded(3px);
					}
					.carat:before{
						color: #ffffff;
					}
				}
				.button{
					height: 38px;
				}

				td.label {
					padding-right: 1em;
				}

				td {
					vertical-align: top;
				}
			}
			.single_variation{
				margin-bottom: 20px;
			}
			.button {
				vertical-align: middle;
				float: left;
				height: 38px;
				&:hover{
					background-color: @secondary;
					opacity: 1;
				}
			}

			.group_table {
				td.label {
					padding-right: 1em;
					padding-left: 1em;
				}

				td {
					vertical-align: top;
					padding-bottom: .5em;
					border: 0;
				}
			}
		}
		.product_meta{
			a{
				color: @green;
				.transition(all 300ms ease-in-out);
				&:hover{
					color: @secondary;
				}
			}
		}
	}

	span.onsale {
		min-height: 3.236em;
		min-width: 3.236em;
		padding: .202em;
		font-size: 1em;
		font-weight: 700;
		position: absolute;
		text-align: center;
		line-height: 3.236;
		top: .5em;
		left: .5em;
		margin: 0;
		border-radius: 100%;
		background-color: @highlight;
		color: @highlightext;
		font-size: .857em;
		-webkit-font-smoothing: antialiased;
	}

	/**
	 * Product loops
	 */
	.products ul,
	ul.products {
		margin: 0 0 1em;
		padding: 0;
		list-style: none outside;
		clear: both;
		.clearfix();

		li {
			list-style: none outside;
		}
	}

	ul.products {
		li.product {
			text-align: center;
			.transition();
			&:hover{
				h3, .price,.added_to_cart{
					color: @white;
					.transition();
				}
			}
			.onsale {
				top: 0;
				right: 0;
				left: auto;
				margin: -.5em -.5em 0 0;
			}

			h3 {
				padding: .5em 0;
				margin: 0;
				font-size: 24px;
				text-transform: none;
			}

			.button {
				text-decoration: none;
				margin-bottom: 16px;
			}

			a img {
				width: 100%;
				height: auto;
				display: block;
				box-shadow: none;
			}

			strong {
				display: block;
			}

			.star-rating {
				font-size: 12px;
				margin-bottom: 10px;
				display: inline-block;
			}

			.button {
				margin-top: 1em;
			}

			.price {
				color: @highlight;
				display: block;
				font-weight: normal;
				margin-bottom: 10px;
				font-size: 20px;

				del {
					color: inherit;
					opacity: 0.5;
					display: block;
				}

				ins {
					background: none;
					font-weight: 700;
				}

				.from {
					font-size: 0.67em;
					margin: -2px 0 0 0;
					text-transform: uppercase;
					color: rgba(0,0,0, 0.5);
				}
			}
		}
	}

	.woocommerce-ordering {

		select {
			vertical-align: top;
		}
	}


	/**
	 * Buttons
	 */
	a.button,
	button.button,
	input.button,
	#respond input#submit {
		font-size: 100%;
		margin: 0;
		cursor: pointer;
		position: relative;
		font-family: inherit;
		text-decoration: none;
		overflow: visible;
		font-weight: 700;
		border-radius: 3px;
		left: auto;
		color: #ffffff;
		background-color: @green;
		border: 0;
		white-space: nowrap;
		display: inline-block;
		background-image: none;
		box-shadow: none;
		-webkit-box-shadow: none;
		text-shadow: none;
		padding: 0 1em;
		height: 35px;
		line-height: 35px;
		box-sizing: border-box;
		.transition();

		&.loading {
			opacity: 0.25;
			padding-right: 2.618em;

			&:after {
				font-family: "WooCommerce";
				content: "\e01c";
				vertical-align: top;
				-webkit-font-smoothing: antialiased;
				font-weight: 400;
				position: absolute;
				top: 0;
				right: 1em;
				-webkit-animation: spin 2s linear infinite;
			    -moz-animation: spin 2s linear infinite;
			    animation: spin 2s linear infinite;
			}
		}

		&.added {
			&:after {
				font-family: 'WooCommerce';
				content: "\e017";
				margin-left: .53em;
				vertical-align: bottom;
			}
		}

		&:hover {
			background-color: @secondary;
			text-decoration: none;
			background-image: none;
			color: @white;
		}

		&.alt {
			background-color: @primary;
			color: @primarytext;
			-webkit-font-smoothing: antialiased;

			&:hover {
				background-color: @primary - #111;
				color: @primarytext;
			}

			&.disabled,
			&:disabled,
			&:disabled[disabled],
			&.disabled:hover,
			&:disabled:hover,
			&:disabled[disabled]:hover {
				background-color: @primary;
				color: @primarytext;
			}
		}

		&:disabled,
		&.disabled,
		&:disabled[disabled] {
			color: inherit;
			cursor: not-allowed;
			opacity: 0.5;

			&:hover {
				color: inherit;
				background-color: @secondary;
			}
		}
	}

	.cart .button,
	.cart input.button {
		float: none;
	}

	a.added_to_cart {
		padding-top: .5em;
		padding-left: .5em;
		white-space: nowrap;
		display: inline-block;
		color: @woocommerce;
	}

	/**
	 * Reviews
	 */
	#reviews {
		h2 small {
			float: right;
			color: @subtext;
			font-size: 15px;
			margin: 10px 0 0 0;

			a {
				text-decoration: none;
				color: @subtext;
			}
		}

		h3 {
			margin: 0 0 12px 0;
		}

		#respond {
			margin: 0;
			border: 0;
			padding: 0;
		}

		#comment {
			height: 75px;
		}

		#comments {
			.add_review {
				.clearfix();
			}

			h2 {
				clear: none;
			}

			ol.commentlist {
				.clearfix();
				margin: 0;
				width: 100%;
				background: none;
				list-style: none;

				li {
					padding: 0;
					margin: 0 0 20px;
					border: 0;
					position: relative;
					background: 0;
					border: 0;

					.meta {
						color: @subtext;
						font-size: 0.75em;
					}

					img.avatar {
						float: left;
						position: absolute;
						top: 0;
						left: 0;
						padding: 3px;
						width: 45px;
						height: auto;
						margin: 0;
						box-shadow: none;
						.rounded(100%);
					}

					.comment-text {
						margin: 0 0 0 66px;
						border: 1px solid #cccccc;
						border-radius: 4px;
						padding: 1em 1em 0;
						.clearfix();

						p {
							margin: 0 0 1em;
						}

						p.meta {
							font-size: 0.83em;
							strong{
								font-size: 14px;
							}
						}
					}
				}

				ul.children {
					list-style: none outside;
					margin: 20px 0 0 50px;

					.star-rating {
						display: none;
					}
				}

				#respond {
					border: 1px solid darken( @secondary, 3% );
					border-radius: 4px;
					padding: 1em 1em 0;
					margin: 20px 0 0 50px;
				}
			}

			.commentlist > li:before {
				content: "";
			}
		}
	}

	/**
	 * Star ratings
	 */
	.star-rating {
		overflow: hidden;
		position: relative;
		display: inline-block;
		height: 1em;
		line-height: 1;
		font-size: 1em;
		width: 7.4em;
		font-family: 'star';
		letter-spacing: 4px;

		&:before {
			content: "\73\73\73\73\73";
			color: #b2b2b2;
			float: left;
			top: 0;
			left: 0;
			position: absolute;
		}

		span {
			overflow: hidden;
			float: left;
			top: 0;
			left: 0;
			position: absolute;
			padding-top: 1.5em;
			color: #b53522;
		}

		span:before {
			content: "\53\53\53\53\53";
			top: 0;
			position: absolute;
			left: 0;
		}
	}

	.woocommerce-product-rating {
		.clearfix();
		line-height: 2;
		display: block;

		.star-rating {
			margin: .5em 4px 0 0;
			float: left;
		}
	}

	.products {
		.star-rating {
			margin: 0 0 .5em;
			float: none;
		}
	}

	.hreview-aggregate {
		.star-rating {
			margin: 10px 0 0 0;
		}
	}

	#review_form {
		#respond {
			.clearfix();
			position: static;
			margin: 0;
			width: auto;
			padding: 0 0 0;
			background: transparent none;
			border: 0;

			p {
				margin: 0 0 10px;
			}

			.form-submit {
				input {
					left: auto;
				}
			}

			textarea {
				box-sizing: border-box;
				width: 100%;
			}
		}
	}

	p.stars {
		position: relative;
		font-size: 1em;

		a {
			display: inline-block;
			font-weight: 700;
			margin-right: 1em;
			text-indent: -9999px;
			position: relative;
			border-bottom: 0 !important;
			outline: 0;
			color: #cccccc;

			&:last-child {
				border-right: 0;
			}

			&.star-1,
			&.star-2,
			&.star-3,
			&.star-4,
			&.star-5 {
				border-right: 1px solid #ccc;

				&:after {
					font-family: "WooCommerce";
					text-indent: 0;
					position: absolute;
					top: 0;
					left: 0;
				}

			}

			&.star-1 {
				width: 2em;

				&:after {
					content: "\e021";
				}

				&:hover:after,
				&.active:after {
					content: "\e020"
				}
			}

			&.star-2 {
				width: 3em;

				&:after {
					content: "\e021\e021";
				}

				&:hover:after,
				&.active:after {
					content: "\e020\e020"
				}
			}

			&.star-3 {
				width: 4em;

				&:after {
					content: "\e021\e021\e021";
				}

				&:hover:after,
				&.active:after {
					content: "\e020\e020\e020"
				}
			}

			&.star-4 {
				width: 5em;

				&:after {
					content: "\e021\e021\e021\e021";
				}

				&:hover:after,
				&.active:after {
					content: "\e020\e020\e020\e020"
				}
			}

			&.star-5 {
				width: 6em;
				border: 0;

				&:after {
					content: "\e021\e021\e021\e021\e021";
				}

				&:hover:after,
				&.active:after {
					content: "\e020\e020\e020\e020\e020"
				}
			}
		}
	}

	/**
	 * Tables
	 */
	table.shop_attributes {
		border: 0;
		border-top: 1px dotted rgba(0,0,0,0.1);
		margin-bottom: 1.618em;
		width: 100%;

		th {
			width: 150px;
			font-weight: 700;
			padding: 8px;
			border-top: 0;
			border-bottom: 1px dotted rgba(0,0,0,0.1);
			margin: 0;
			line-height: 1.5;
		}

		td {
			font-style: italic;
			padding: 0;
			border-top: 0;
			border-bottom: 1px dotted rgba(0,0,0,0.1);
			margin: 0;
			line-height: 1.5;

			p {
				margin: 0;
				padding: 8px 0;
			}
		}

		.alt td,
		.alt th {
			background: rgba(0,0,0,0.025);
		}
	}

	table.shop_table {
		border: 1px solid rgba(0,0,0,0.1);
		margin: 0px -1px 24px 0px;
		text-align: left;
		width: 100%;
		border-radius: 5px;

		th {
			font-weight: 700;
			padding: 9px 12px;
		}

		td {
			border-top: 1px solid rgba(0,0,0,0.1);
			padding: 6px 12px;
			vertical-align: middle;

			small {
				font-weight: normal;
			}
			.quantity{
				input{
					height: 38px;
					line-height: 38px;
					box-sizing: border-box;
					border: 1px solid #cccccc;
					.rounded(3px);
				}
			}
		}

		tbody:first-child {
			tr:first-child {
				th,
				td {
					border-top: 0;
				}
			}
		}

		tfoot td,
		tfoot th,
		tbody th {
			font-weight: 700;
			border-top: 1px solid rgba(0,0,0,0.1);
		}
	}

	table.my_account_orders {
		font-size: 0.85em;

		th,
		td {
			padding: 4px 8px;
			vertical-align: middle;
		}

		.button {
			white-space: nowrap;
		}

		.order-actions {
			text-align: right;

			.button {
				margin: .125em 0 .125em .25em;
			}
		}
	}

	td.product-name {
		dl.variation {
			margin: .25em 0;
			.clearfix();

			dt,
			dd {
				display: inline-block;
				float: left;
				margin-bottom: 1em;
			}

			dt {
				font-weight: 700;
				padding: 0 0 .25em 0;
				margin: 0 4px 0 0;
				clear: left;
			}

			dd {
				padding: 0 0 .25em 0;

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

		p.backorder_notification {
			font-size: 0.83em;
		}
	}

	td.product-quantity {
		min-width: 80px;
	}


	/**
	 * Cart sidebar
	 */
	ul.cart_list,
	ul.product_list_widget {
		list-style: none outside;
		padding: 0;
		margin: 0;

		li {
			padding: 4px 0;
			margin: 0;
			.clearfix();
			list-style: none;

			a {
				display: block;
				font-weight: 700;
			}

			img {
				float: right;
				margin-left: 4px;
				width: 32px;
				height: auto;
				box-shadow: none;
			}

			dl {
				margin: 0;
				padding-left: 1em;
				border-left: 2px solid rgba(0,0,0,0.1);
				.clearfix();

				dt,
				dd {
					display: inline-block;
					float: left;
					margin-bottom: 1em;
				}

				dt {
					font-weight: 700;
					padding: 0 0 .25em 0;
					margin: 0 4px 0 0;
					clear: left;
				}

				dd {
					padding: 0 0 .25em 0;

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

			.star-rating {
				float: none;
			}
		}
	}

	&.widget_shopping_cart,
	.widget_shopping_cart {
		.total {
			border-top: 3px double @secondary;
			padding: 4px 0 0;

			strong {
				min-width: 40px;
				display: inline-block;
			}
		}

		.cart_list {
			li {
				padding-left: 2em;
				position: relative;
				padding-top: 0;

				a.remove {
					position: absolute;
					top: 5px;
					left: 0;
				}
			}
		}

		.buttons {
			.clearfix();
		}
	}

	/**
	 * Forms
	 */
	form {
		.form-row {
			padding: 3px;
			margin: 0 0 6px;

			[placeholder]:focus::-webkit-input-placeholder {
				-webkit-transition: opacity 0.5s 0.5s ease;
				-moz-transition: opacity 0.5s 0.5s ease;
				transition: opacity 0.5s 0.5s ease;
				opacity: 0;
			}
			.dropdown-select{
				display: none;
			}

			label {
				line-height: 2;
			}

			label.hidden {
				visibility: hidden;
			}

			label.inline {
				display: inline;
			}

			select {
				cursor: pointer;
				margin: 0;
			}

			.required {
				color: #b53522;
				font-weight: 700;
				border: 0;
			}

			.input-checkbox {
				display: inline;
				margin: -2px 8px 0 0;
				text-align: center;
				vertical-align: middle;
			}

			input.input-text,
			textarea {
				box-sizing: border-box;
				width: 100%;
				margin: 0;
				outline: 0;
				height: 35px;
				.rounded(3px);
			}

			textarea {
				height: 4em;
				line-height: 1.5;
				display: block;
				-moz-box-shadow: none;
				-webkit-box-shadow: none;
				box-shadow: none;
			}

			.select2-container {
				width: 100%;
				line-height: 38px;
			}

			&.woocommerce-invalid {
				.select2-container,
				input.input-text,
				select {
					border-color: @red;
				}
			}

			&.woocommerce-validated {
				.select2-container,
				input.input-text,
				select {
					border-color: @green - #111;
				}
			}

			::-webkit-input-placeholder {
				line-height: normal;
			}

			:-moz-placeholder {
				line-height: normal;
			}

			:-ms-input-placeholder {
				line-height: normal;
			}
		}
	}

	form.login,
	form.checkout_coupon,
	form.register {
		border: 1px solid darken( @secondary, 10% );
		padding: 20px;
		margin: 2em 0 2em 0px;
		text-align: left;
		border-radius: 5px;
	}

	ul#shipping_method {
		list-style: none outside;
		margin: 0;
		padding: 0;

		li {
			margin: 0;
			padding: .25em 0 .25em 22px;
			text-indent: -22px;
			list-style: none outside;
		}

		.amount {
			font-weight: 700;
		}
	}

	p.woocommerce-shipping-contents {
		margin: 0;
	}

	/**
	 * Order page
	 */
	.order_details {
		.clearfix();
		margin: 0 0 1.5em;
		list-style: none;

		li {
			float: left;
			margin-right: 2em;
			text-transform: uppercase;
			font-size: 0.715em;
			line-height: 1;
			border-right: 1px dashed darken( @secondary, 10% );
			padding-right: 2em;

			strong {
				display: block;
				font-size: 1.4em;
				text-transform: none;
				line-height: 1.5;
			}

			&:last-of-type {
				border: none;
			}
		}
	}

	/**
	 * Layered nav widget
	 */
	.widget_layered_nav {
		ul {
			margin: 0;
			padding: 0;
			border: 0;
			list-style: none outside;

			li {
				.clearfix();
				padding: 0 0 1px;
				list-style: none;

				a,
				span {
					padding: 1px 0;
					text-decoration: none;
				}
			}

			li.chosen {
				a {
					&:before {
						.iconbefore( "\e013" );
						color: @red;
					}
				}
			}
		}
	}

	.widget_layered_nav_filters {
		ul {
			margin: 0;
			padding: 0;
			border: 0;
			list-style: none outside;
			overflow: hidden;
			zoom: 1;

			li {
				float: left;
				padding: 0 1px 1px 0;
				list-style: none;

				a {
					text-decoration: none;

					&:before {
						.iconbefore( "\e013" );
						color: @red;
					}
				}
			}
		}
	}

	/**
	 * Price filter widget
	 */
	.widget_price_filter {
		.price_slider {
			margin-bottom: 1em;
		}

		.price_slider_amount {
			text-align: right;
			line-height: 2.4;
			font-size: 0.8751em;

			.button {
				font-size: 1.15em;
			}

			.button {
				float: left;
			}
		}

		.ui-slider {
			position: relative;
			text-align: left;
		}

		.ui-slider .ui-slider-handle {
			position: absolute;
			z-index: 2;
			width: 1em;
			height: 1em;
			background-color: @primary;
			border-radius: 1em;
			cursor: ew-resize;
			outline: none;
			top: -2.9px;

			&:last-child {
				margin-left: -.8em;
			}
		}

		.ui-slider .ui-slider-range {
			position: absolute;
			z-index: 1;
			font-size: .7em;
			display: block;
			border: 0;
			border-radius: 1em;
			background-color: @primary;
		}

		.price_slider_wrapper .ui-widget-content {
			border-radius: 1em;
			background-color: @secondary;
			border: 0;
		}

		.ui-slider-horizontal {
			height: .5em;
		}

		.ui-slider-horizontal .ui-slider-range {
			top: 0;
			height: 100%;
		}

		.ui-slider-horizontal .ui-slider-range-min {
			left: -1px;
		}

		.ui-slider-horizontal .ui-slider-range-max {
			right: -1px;
		}
	}
}

/**
 * Account page
 */
.woocommerce-account {
	.addresses {
		.title {
			.clearfix();

			h3 {
				float: left;
			}

			.edit {
				float: right;
			}
		}
	}

	ol.commentlist.notes {
		li.note {

			p.meta {
				font-weight: 700;
				margin-bottom: 0;
			}

			.description {
				p:last-child {
					margin-bottom: 0;
				}
			}
		}
	}
	ul.digital-downloads {
		margin-left: 0;
		padding-left: 0;

		li {
			list-style: none;
			margin-left: 0;
			padding-left: 0;

			&:before {
				.iconbefore( "\e00a" );
			}

			.count {
				float: right;
			}
		}
	}
}

/**
 * Cart page
 */
.woocommerce-cart {
	table.cart {
		.product-thumbnail {
			min-width: 32px;
		}

		img {
			width: 32px;
			box-shadow: none;
		}

		th,
		td {
			vertical-align: middle;
		}

		td.actions {
			.coupon {
				.input-text {
					float: left;
					-webkit-box-sizing: border-box;
					-moz-box-sizing: border-box;
					box-sizing: border-box;
					padding: 0 5px;
					margin: 0 4px 0 0;
					outline: 0;
					line-height: 1;
					height: 35px;
					line-height: 35px;
					.rounded(3px);
					border: 1px solid #cccccc;
					width: 100px;
				}
			}
		}

		input {
			margin: 0;
			vertical-align: middle;
			line-height: 1;
		}
	}

	.wc-proceed-to-checkout {
		.clearfix;
		padding: 1em 0;

		a.checkout-button {
			display: block;
			text-align: center;
			margin-bottom: 1em;
		}
	}

	.cart-collaterals {
		.shipping_calculator {
			.button {
				width: 100%;
				float: none;
				display: block;
			}

			.shipping-calculator-button {
				&:after {
					.iconafter( "\e019" );
				}
			}
		}

		.cart_totals {
			.dropdown, .dropdown-select{
				background-color: #b3b3b3;
				width: 100%;
			}
			p {
				margin: 0;

				small {
					color: @subtext;
					font-size: 0.83em;
				}
			}

			table {
				border-collapse: separate;
				margin: 0 0 6px;
				padding: 0;
				border-left: 0;

				tr:first-child {
					th,
					td {
						border-top: 0;
					}
				}

				th {
					padding: 6px 12px 0 0;
					width: 25%;
				}

				td {
					padding: 6px 0;
				}

				td,
				th {
					vertical-align: top;
					border-left: 0;
					border-right: 0;
					padding: 6px 0;
				}

				small {
					color: @subtext;
				}

				select {
					width: 100%;
				}
			}

			.discount td {
				color: @highlight;
			}

			tr td,
			tr th {
				border-top: 1px solid @secondary;
			}
		}

		.cross-sells {
			ul.products {
				li.product {
					margin-top: 0;
					&:before{
						display: none;
					}
				}
			}
		}
	}
}

/**
 * Checkout
 */
.woocommerce-checkout {
	.dropdown-select, .dropdown{
		display: none;
	}
	.checkout {
		.col-2 {
			h3#ship-to-different-address {
				float: left;
				clear: none;
			}

			.notes {
				clear: left;
			}

			.form-row-first {
				clear: left;
			}
		}

		.create-account small {
			font-size: 11px;
			color: @subtext;
			font-weight: normal;
		}

		div.shipping-address {
			padding: 0;
			clear: left;
			width: 100%;
		}

		.shipping_address {
			clear: both;
		}
	}

	#payment {
		background: @secondary;
		border-radius: 5px;

		ul.payment_methods {
			.clearfix();
			text-align: left;
			padding: 1em;
			border-bottom: 1px solid rgba(0,0,0,0.1);
			margin: 0;
			list-style: none outside;

			li {
				line-height: 2;
				text-align: left;
				margin: 0;
				font-weight: normal;
				list-style: none;
				&:before{
					display: none;
				}
				label{
					color: @white;
				}

				input {
					margin: 0 1em 0 0;
				}

				img {
					vertical-align: middle;
					margin: -2px 0 0 .5em;
					padding: 0;
					position: relative;
					box-shadow: none;
				}

				img + img {
					margin-left: 2px;
				}
			}
		}

		div.form-row {
			padding: 1em;
		}

		div.payment_box {
			position: relative;
			width: 96%;
			padding: 1em 2%;
			margin: 1em 0 1em 0;
			font-size: 0.92em;
			border-radius: 2px;
			line-height: 1.5;
			background-color: rgba(0,0,0,0.1);
			color: @white;

			input.input-text, textarea {
				border-color: @secondary;
				border-top-color: @secondary;
			}

			::-webkit-input-placeholder {
				color: @secondary;
			}

			:-moz-placeholder {
				color: @secondary;
			}

			:-ms-input-placeholder {
				color: @secondary, 20%;
			}

			.wc-credit-card-form-card-number,
			.wc-credit-card-form-card-expiry,
			.wc-credit-card-form-card-cvc {
				font-size: 1.5em;
				padding: 8px;
				background-repeat: no-repeat;
				background-position: right;

				&.visa {
					background-image: url(images/icons/credit-cards/visa.png);
				}

				&.mastercard {
					background-image: url(images/icons/credit-cards/mastercard.png);
				}

				&.laser {
					background-image: url(images/icons/credit-cards/laser.png);
				}

				&.dinersclub {
					background-image: url(images/icons/credit-cards/diners.png);
				}

				&.maestro {
					background-image: url(images/icons/credit-cards/maestro.png);
				}

				&.jcb {
					background-image: url(images/icons/credit-cards/jcb.png);
				}

				&.amex {
					background-image: url(images/icons/credit-cards/amex.png);
				}
				&.discover {
					background-image: url(images/icons/credit-cards/discover.png);
				}
			}

			span.help {
				font-size: .857em;
				color: @subtext;
				font-weight: normal;
			}

			.form-row {
				margin: 0 0 1em;
			}

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

			&:after {
				content: "";
				display: block;
				border: 8px solid rgba(0,0,0,0.1); /* arrow size / color */
				border-right-color: transparent;
				border-left-color: transparent;
				border-top-color: transparent;
				position: absolute;
				top: -3px;
				left: 0;
				margin: -1em 0 0 2em;
			}
		}

		.payment_method_paypal {
			.about_paypal {
				float: right;
				line-height: 52px;
				font-size: 0.83em;
				color: @white;
			}

			img {
				max-height: 52px;
				vertical-align: middle;
			}
		}
	}
}
@media (max-width: 600px) {
	.woocommerce div.product div.images{
		width: 100%;
		margin-bottom: 4%;
	}
	.woocommerce div.product div.summary{
		width: 100%;
		padding: 2%;
		box-sizing: border-box;
	}
	.woocommerce .related ul.products li.product, .woocommerce-page .related ul.products li.product,
	.woocommerce .upsells.products ul.products li.product, .woocommerce-page .upsells.products ul.products li.product,
	.woocommerce .related ul li.product, .woocommerce-page .related ul li.product, .woocommerce .upsells.products ul li.product,
	.woocommerce-page .upsells.products ul li.product{
		width: 48.1%;
	}
}
@media (max-width: 480px) {
	.woocommerce .related ul.products li.product, .woocommerce-page .related ul.products li.product,
	.woocommerce .upsells.products ul.products li.product, .woocommerce-page .upsells.products ul.products li.product,
	.woocommerce .related ul li.product, .woocommerce-page .related ul li.product, .woocommerce .upsells.products ul li.product,
	.woocommerce-page .upsells.products ul li.product{
		width: 100%;
	}
	.woocommerce div.product .woocommerce-tabs ul.tabs li{
		width: 50%;
	}
	.woocommerce ul.products li.product, .woocommerce-page ul.products li.product{
		width: 100%;
		margin: 0 0 3.8% 0%;
	}
	.woocommerce .woocommerce-ordering{
		margin-right: 2%;
	}
	table.shop_table{
		thead tr {
			position: absolute;
			top: -9999px;
			left: -9999px;
		}
		td,tr,th{
			display: block;
		}
		td:nth-of-type(3):before { content: "Product:"; }
		td:nth-of-type(4):before { content: "Price:"; }
		td:nth-of-type(5):before { content: "Quqntity:"; }
		td:nth-of-type(6):before { content: "Total:"; }
		td:before {
			/* Now like a table header */
			position: relative;
			/* Top/left values mimic padding */
			left: 6px;
			width: 45%;
			white-space: nowrap;
			float: left;
		}
		.actions{
			.coupon{
				width: 100%;
				input, input[type="text"]{
					width: 100%;
					max-width: 100%;
					margin-bottom: 2%;
				}
			}
			>input{
				width: 100%;
				margin-right: 0;
			}
		}
		.quantity{
			margin: 0;
		}
		.product-remove, .product-thumbnail {
			text-align: center;
		}
	}
	.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,
	.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2{
		width: 100%;
	}
	.woocommerce-cart table.cart td.actions .coupon .input-text{
		width: 100%;
		margin-bottom: 2%;
	}
	table.shop_table .actions .coupon input, table.shop_table .actions .coupon input[type="text"]{
		margin-bottom: 2%;
	}
	.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals{
		width: 100%;
	}
}

.woocommerce-filter-top{
	padding: 38px 0;
	p{
		line-height: 50px;
		margin-bottom: 0;
	}
	form{
		margin-bottom: 0;
	}
}