/**
 * File: woocommerce.scss
 * Description : Contains all styling for the WooCommerce in WPLMS
 * Author: Mr.Vibe 
 * Credits: www.VibeThemes.com
 * Project: WPLMS
 * version 2.0
 **/
/*========================================================================*/
/*   TABLE OF CONTENT
/*========================================================================*/
/*
/*    01. GLOBAL STYLING
/*    02. TYPOGRAPHY STYLING
/*    03. FORMS STYLING
/*    04. SELECT DROPDOWN
/*    05. LINKS STYLING
/*    06. LISTS STYLING
/*    07. PAGE BLOCKS
/*    08. MISCELLANEOUS
/*
/*========================================================================*/
/*   01. DEFAULT STYLING 
/*========================================================================*/

@import 'defaults';
/**
 * Main WooCommerce styles
 * Image from WooCommerce.scss from the Main Plugin	
 */



.woocommerce {

	.blockUI.blockOverlay {
		position: relative;
		@include loader();
	}

	.loader {
		@include loader();
	}

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

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

	.woocommerce-message,
	.woocommerce-error,
	.woocommerce-info {
		padding: 1em 2em 1em 3.5em !important;
		margin: 0 0 2em !important;
		position: relative;
		color: $secondarytext;
		border:1px solid $bordercolor;
		border-top: 2px solid $primarybg;
		list-style: none outside !important;
		@include clearfix();
		width: auto;
		word-wrap: break-word;

		&:before {
			font-family: "vicon";
			content: "\e697";
			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;
		    display: inline-block;
    		width: 100%;
    		& + li{
    			margin-top:10px;
    		}
		}
	}

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

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

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

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

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

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

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

	.woocommerce-breadcrumb{
		@include 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;

		.product_title {
			clear: none;
			margin-top: 0;
			padding: 0;
		}
		.cart{
			#duration{
				clear:both;
			}
		}
		.connected_courses{
			margin-bottom:15px;
			h6{
				font-size:16px;
			}
			li{
				padding: 6px 0;
    			border-bottom: 1px dotted $bordercolor;
    			a{
    				font-size: 12px;
				    font-weight: 600;
				    text-transform: uppercase;
				    color: $primarybg;
				    i{
			    	    float: left;
					    font-size: 16px;
					    margin: 2px 10px 0 0;
				    }
    			}
			}
		}
		.product_meta{
			font-size: 11px;
    		text-transform: uppercase;
    		span + span{
    			margin-left:10px;
    		}
		}
		span.price,
		p.price {
			color: $highlight;
			ins {
				background: inherit;
				font-weight: 700;
			}

			del {
				opacity: 0.5;
			}
		}

		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;
				border-radius:2px;
			}

			div.thumbnails {
				padding-top: 1em;

				&.columns-2 {
					a {
						width: 50%;
						display:inline-block;
						img{
							padding:0 10px 0 0;
							border-radius:2px;
						}
					}
				}

				&.columns-3 {
					a {
						width: 33%;
						display:inline-block;
						img{
							padding:0 10px 0 0;
							border-radius:2px;
						}
					}
				}

				&.columns-5 {
					a {
						width: 20%;
						display:inline-block;
						img{
							padding:0 10px 0 0;
							border-radius:2px;
						}
					}
				}

				
				&.woocommerce-product-gallery {
					position: relative;
				}

				.woocommerce-product-gallery__wrapper {
					transition: all cubic-bezier(0.795, -0.035, 0.000, 1.000) .5s;
				}

				.woocommerce-product-gallery__image:nth-child(n+2) {
					width: 25%;
					display: inline-block;
				}

				.woocommerce-product-gallery__trigger {
					position: absolute;
					top: .5em;
					right: .5em;
					font-size: 2em;
					z-index: 9;
					width: 36px;
					height: 36px;
					background: #fff;
					text-indent: -9999px;
					border-radius: 100%;
					box-sizing: content-box;

					&:before {
						content: "";
						display: block;
						width: 10px;
						height: 10px;
						border: 2px solid #000;
						border-radius: 100%;
						position: absolute;
						top: 9px;
						left: 9px;
						box-sizing: content-box;
					}

					&:after {
						content: "";
						display: block;
						width: 2px;
						height: 8px;
						background: #000;
						border-radius: 6px;
						position: absolute;
						top: 19px;
						left: 22px;
						box-sizing: content-box;
					}
				}

				.flex-control-thumbs {
					overflow: hidden;
					zoom: 1;
					margin: 0;
					padding: 0;

					li {
						width: 25%;
						float: left;
						margin: 0;
						list-style: none;

						img {
							cursor: pointer;
							opacity: .5;
							margin: 0;

							&.flex-active,
							&:hover {
								opacity: 1;
							}
						}
					}
				}
			}
		}

		div.summary {
			margin-bottom: 2em;
		}

		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 {
			ul.tabs {
				list-style: none;
				padding: 0 0 0 5px;
				margin: 0 0 1.618em;
				overflow: hidden;
				position: relative;

				li {
					border: 1px solid $bordercolor;
					display: inline-block;
					position: relative;
					background:#FFF;
					z-index: 0;
					border-radius: 4px 4px 0 0;
					margin: 0 -5px;
					padding: 0 1em;

					a {
						display: inline-block;
						padding: 12px 0;
						font-size:12px;
						text-transform:uppercase;
						font-weight:600;
						text-decoration: none;
						&:hover {
							text-decoration: none;
						}
					}
					&:hover,
					&.active {
						background: $primarybg;
						z-index: 2;
						border-color: $primarybg;
						a {
							color: $primarycolor;
							text-shadow: inherit;
						}
					}
					z-index:5;
					& + li {
						z-index:4;
						& + li{
							z-index: 3;
							& + li{
								z-index: 2;
								& + li{
									z-index: 1;
								}
							}
						}
					}
					&.active{
						z-index:9;
					}
				}

				&:before {
					position: absolute;
					content: " ";
					width: 100%;
					bottom: 0;
					left: 0;
					border-bottom: 1px solid $bordercolor;
					z-index: 1;
				}
			}

			.panel {
				margin: 0 0 2em;
				padding: 0;
			}
		}

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

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

			div.quantity {
				float: left;
				margin: 0 4px 0 0;
			}

			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;
				}

				select {
					width: 100%;
					float: left;
				}

				td.label {
					color:#444;
					font-size:14px;
					line-height:36px;
					padding-right: 1em;
				}

				td {
					vertical-align: top;
				}
			}

			.woocommerce-variation-description {
				p {
					margin-bottom: 1em;
				}
			}

			.reset_variations {
				visibility: hidden;
			}

			.wc-no-matching-variations {
				display: none;
			}

			.button {
				vertical-align: middle;
				float: left;
			    padding: 15px 30px;
			}

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

				td {
					vertical-align: top;
					padding-bottom: .5em;
					border: 0;
				}
			}
		}
	}

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

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

		li {
			list-style: none outside;
		}
	}

	ul.products {
		li.product {
			.onsale {
				top: 0;
				right: 0;
				left: auto;
				margin: -.5em -.5em 0 0;
			}

			h3,h2 {
				padding: .5em 0;
				margin: 0;
				font-size: 1em;
			}

			a {
				text-decoration: none;
			}

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

			strong {
				display: block;
			}

			.star-rating {
				font-size: .857em;
			}

			.button {
				margin-top: 1em;
			}

			.price {
				color: $highlight;
				display: block;
				font-weight: normal;
				margin-bottom: .5em;
				font-size: .857em;

				del {
					color: inherit;
					opacity: 0.5;
				}

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

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

	.woocommerce-result-count {
		margin: 0 0 1em;
	}

	.woocommerce-ordering {
		margin: 0 0 1em;

		select {
			vertical-align: top;
		}
	}

	nav.woocommerce-pagination {
		text-align: center;

		ul {
			display: inline-block;
			white-space: nowrap;
			padding: 0;
			clear: both;
			border: 1px solid $bordercolor;
			border-right: 0;
			margin: 1px;

			li {
				border-right: 1px solid $bordercolor;
				padding: 0;
				margin: 0;
				float: left;
				display: inline;
				overflow: hidden;

				a,
				span {
					margin: 0;
					text-decoration: none;
					padding: 0;
					line-height: 1;
					font-size: 1em;
					font-weight: normal;
					padding: .5em;
					min-width: 1em;
					display: block;
				}

				span.current,
				a:hover,
				a:focus {
					background: $secondary;
					color: darken( $secondary, 40% );
				}
			}
		}
	}

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

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

			&:after {
				font-family: "vicon";
				content: "\e619";
				vertical-align: top;
				-webkit-font-smoothing: antialiased;
				font-weight: 400;
				position: absolute;
				top: .618em;
				right: 1em;
			    animation: spin 2s linear infinite;
			}
		}

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

		&:hover {
			background-color: $secondary - #111;
			text-decoration: none;
			background-image: none;
			color: $secondarytext;
		}

		&.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;
		white-space: nowrap;
		display: inline-block;
	}

	/**
	 * 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;
		}

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

		#comment {
			height: 75px;
		}

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

			h2 {
				clear: none;
			}

			ol.commentlist {
				@include 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,img.retina_avatar {
						float: left;
						position: absolute;
						top: 0;
						left: 0;
						padding: 0;
						width: 32px;
						border-radius:50%;
						height: auto;
						margin: 0;
						box-shadow: none;
					}

					.comment-text {
						margin: 0 0 0 50px;
						border: 1px solid darken( $secondary, 3% );
						border-radius: 4px;
						padding: 1em 1em 0;
						@include clearfix();

						p {
							margin: 0 0 1em;
						}

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

				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 {
		float: right;
		overflow: hidden;
		position: relative;
		height: 1em;
		line-height: 1;
		font-size: 1em;
		width: 5.4em;
		&:before {
			content: "★★★★★";
			color: $bordercolor;
			float: left;
			top: 0;
			left: 0;
			position: absolute;
		}

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

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

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

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

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

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

	#review_form {
		#respond {
			@include 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;

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

			&.star-1,
			&.star-2,
			&.star-3,
			&.star-4,
			&.star-5 {
				border-right: 1px solid rgab(0,0,0,0.1);

				&:after {
					text-indent: 0;
					position: absolute;
					top: 0;
					left: 0;
				}

			}

			&.star-1 {
				width: 2em;

				&:after {
					content: "★";
				}

				&:hover:after,
				&.active:after {
					content: "★";
					color:gold;
				}
			}

			&.star-2 {
				width: 3em;

				&:after {
					content: "★★";
				}

				&:hover:after,
				&.active:after {
					color:gold;
					content: "★★"
				}
			}

			&.star-3 {
				width: 4em;

				&:after {
					content: "★★★";
				}

				&:hover:after,
				&.active:after {
					color:gold;
					content: "★★★"
				}
			}

			&.star-4 {
				width: 5em;

				&:after {
					content: "★★★★";
				}

				&:hover:after,
				&.active:after {
					color:gold;
					content: "★★★★"
				}
			}

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

				&:after {
					content: "★★★★★";
				}

				&:hover:after,
				&.active:after {
					color:gold;
					content: "★★★★★"
				}
			}
		}
	}

	/**
	 * 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 {
		margin: 0px -1px 24px 0px;
		text-align: left;
		width: 100%;
		border-collapse: separate;
		th {
			font-weight: 700;
			padding: 9px 12px;
		}
		thead{border-bottom:2px solid $bordercolor;}
		td {
			border-top: 1px solid $bordercolor;
			padding: 15px 0;
			vertical-align: middle;

			small {
				font-weight: normal;
			}
		}

		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;
			@include 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;
			font-size:11px;
		    text-transform: uppercase;
			color: #bbb;
			@include clearfix();
			list-style: none;

			a {
				display: block;
				font-size:12px;
				font-weight: 700;
			}

			img {
				float: left;
			    margin: 2px 10px 0 0;
			    width: 36px;
			    height: auto;
			    box-shadow: none;
			    border-radius: 2px;
			}
			.amount{
				color:$pricecolor;
			}
			dl {
				margin: 0;
				@include 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: 2px solid $bordercolor;
			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: 0;
					left: 0;
				}
			}
		}

		.buttons {
			@include 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;
			}

			label {
				line-height: 2;
			}

			label.hidden {
				visibility: hidden;
			}

			label.inline {
				display: inline;
			}

			select {
				cursor: pointer;
				margin: 0;
			}

			.required {
				color: red;
				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;
				line-height: 1;
			}

			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: 2em;
			}

			&.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 $bordercolor;
		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 {
		@include 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 $bordercolor;
			padding-right: 2em;
			margin-left: 0;
			padding-left: 0;

			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 {
				@include clearfix();
				padding: 0 0 1px;
				list-style: none;

				a,
				span {
					padding: 1px 0;
				}
			}

			li.chosen {
				a {
					&:before {
						@include 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 {
						@include 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;
			margin-left: .5em;
			margin-right: .5em;
		}

		.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: -.3em;

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

		.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: $primary - #444;
			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
 */

.bp-user.my-account,
.woocommerce-account {
	header.title{background:none !important;}
	.woocommerce {
		@include clearfix();
	}

	.woocommerce-MyAccount-navigation {
		float: none;
		display:inline-block;
		width:100%;margin-bottom:30px;
		border-bottom:1px solid $bordercolor;
		li{
			float:left;
			border:1px solid $bordercolor;
			border-right:none;
			border-bottom:none;
			&:last-child{
				border-right:1px solid $bordercolor;
			}
			a{
				text-transform:uppercase;display:block;
				font-size:12px;padding:10px 15px;
				font-weight:600;
			}
			&.is-active{
				a{
					background:$primarybg;
					color:$primarycolor;
				}
			}
		}
	}

	.addresses {
		.title {
			@include 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 {
				@include 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 {
				display:inline-block;
				width:60%;
				label{display:none;}
				.input-text {
					float: left;
					max-width:200px;
					box-sizing: border-box;
					border: 1px solid $bordercolor;
					padding: 7px;
					margin: 0 4px 0 0;
					outline: 0;
					line-height: 1;
				}
				& + .button{float:right;}
			}
		}

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

	.wc-proceed-to-checkout {
		@include clearfix;

		a.checkout-button {
			display: block;
			text-align: center;
		}
	}

	.cart-collaterals {
		padding:30px;
		border:1px solid $bordercolor;
		.shipping_calculator {
			.button {
				width: 100%;
				float: none;
				display: block;
			}

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

		.cart_totals {
			h2{
				margin:0;
				padding:0;
				font-size:16px;
				text-transform:uppercase;
				font-weight:600;
				border-bottom:2px solid $bordercolor;
			    padding-bottom: 10px;
			}
			table{
				width:100%;
				td{text-align:right;}
			}
			p {
				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;
					line-height: 2em;
				}

				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;
				}
			}
		}
	}
}

/**
 * Checkout
 */
.woocommerce-checkout {
	.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 {
		border:1px solid $bordercolor;
		border-radius: 2px;

		ul.payment_methods {
			@include clearfix();
			text-align: left;
			padding: 1em;
			border-bottom: 1px solid $bordercolor;
			margin: 0;
			list-style: none outside;

			li {
				line-height: 2;
				text-align: left;
				margin: 0;
				font-weight: normal;
				@include clearfix;

				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;
			box-sizing: border-box;
			width: 100%;
			padding: 1em;
			margin: 1em 0 1em 0;
			font-size: 0.92em;
			border-radius: 2px;
			line-height: 1.5;
			background-color: $bordercolor;

			.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;
			}

			&:before {
				content: "";
				display: block;
				border: 1em solid $bordercolor; /* arrow size / color */
				border-right-color: transparent;
				border-left-color: transparent;
				border-top-color: transparent;
				position: absolute;
				top: -.75em;
				left: 0;
				margin: -1em 0 0 2em;
			}
		}

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

			img {
				max-height: 52px;
				vertical-align: middle;
			}
		}
	}
}

/*========================================================================*/
/*   01. MISC STYLING 
/*========================================================================*/

h2+.shop_table.order_details th,
h2+.shop_table.order_details td{width:100%;}
.woocommerce-checkout label[for="payment_method_paypal"] {display: initial;}
.woocommerce-checkout #payment ul.payment_methods li input {margin:  1em 0.5em 0 0;}

/*========================================================================*/
/*   01. WPLMS Specific STYLING 
/*========================================================================*/

.woocommerce{
	.shop_products{
		.shop_countsorter{
			margin-bottom:30px;
			.woocommerce-result-count{
				display:inline-block;
				font-size:14px;
    			padding: 8px 15px 0 0;
			}
			.woocommerce-ordering{
				float:right;
			}
		}	
		& > ul.products{
			margin:0 -15px;
			li{
				margin-bottom:30px;
			}
		}
	}
	ul.products{
		margin:0 -15px;
		li.product{
			text-align:center;
			margin-bottom:30px;
			img{
				border-radius:2px;
			}
			.button{
				font-size: 11px;
			    text-transform: uppercase;
			    letter-spacing: 0;
			}
		}
	}
	nav.woocommerce-pagination{
		width: 100%;
	    padding-top: 30px;
	    border-top: 1px solid $bordercolor;
		ul{
			border:none;
			li{
				border:none;
				background:transparent;
				margin-right:5px;
				span.current{
					background:$primarybg;
					border:2px solid $primarybg;
					color:$primarycolor;
					padding:3px 5px;
				}
				a{
					color:#444;
					border:2px solid $bordercolor;
					background:$bordercolor;
					padding:3px 5px;
					border-radius:2px;
					&:hover{
						background:$primarybg;
						color:$primarycolor;
					}
				}
			}
		}
	}
}

.widget{
		ul{
			li.chosen{
				border:none;
				float:left;width:auto;
				margin-right:10px;
				a{
				    padding: 10px;
				    background: #FFF;
				    color:#444;
				    border: 1px solid #DDD;
				    border-radius: 2px;
				    font-size: 11px;
				    text-transform: uppercase;
				    span{
			    	    background: #EEE;
					    padding: 2px 5px;
					    border-radius: 10px;
					    margin-left: 4px;
				    }
				}
			}
		}
		.price_slider{
			position:relative;
			background:#EEE;
			.ui-slider-range{
				height:5px;
				border-radius:5px;
				margin:30px 0;
				opacity:0.8;
				position:relative;
			}
			.ui-slider-handle{
				width: 16px;
			    height: 16px;
			    background: $primarybg;
			    position: absolute;
			    top: -5px;
			    border-radius: 50%;
			}
		}
		.price_slider_amount{
			font-size:12px;
			text-transform:uppercase;
			letter-spacing:1px;
			color:#444;
			button{
				color:$primarycolor;
				background:$primarybg;
			}
			.price_label{
			    line-height: 2.4;
			    margin-left: 15px;
			    display: inline-block;
				span{
					background: #FFF;
					border:1px solid #EEE;
					padding:2px 5px;
					padding: 2px 5px;
				    border-radius: 10px;
				    margin-left: 4px;
				}
			}
		}
	.vibe_carousel{
		.woocommerce{
			.products{
				margin:0 !important;
				li{
					clear:none !important;
				}
			}
			.flex-direction-nav{
				a.flex-prev,a.flex-next{
					top:-54px;
				}
			}
		}
	}
}
/*========================================================================*/
/*   01. PRICE STYLING 
/*========================================================================*/
.price{
	font-size: 120% !important;
    color: #70c989;
    font-weight: bold;
    del{
    	opacity:0.6;
    	display:inline;
    	margin-right:5px;
		font-weight: normal;
    }
    ins{
    	text-decoration: none;
    }
}

/*========================================================================*/
/*   01. MISC STYLING 
/*========================================================================*/

.woocart{
    padding: 0;
    border: 1px solid $bordercolor;
    background:$light-border-color;
    .total{
    	padding:5px 0;
    	.amount{text-align:right;}
    }
    .button{
    	font-size: 11px !important;
		text-transform: uppercase;
    }
}

.widget{
	.woocart{
		background:#FFF;
    	padding: 0;
    	margin-top: 30px;
    	border-radius: 2px;
    	border:none;
    	.widget_shopping_cart{
    		padding:15px;
    		border: 1px solid $bordercolor;
    	}
    	.total{
    		margin-bottom: 15px;
    		padding: 10px 0;
    		border-bottom: 2px solid $bordercolor;
    		.amount{float:right;}
		}
		.buttons{
			.checkout{
				float:right;
			}
		}
	}
}


.product_list_widget img {
    width: 48px;
    height: 48px;
    border-radius: 2px;
    float: left;
    margin-right: 10px;
}
.bp-user .woocommerce header,
div.woocommerce > header{
	background:none !important;
}
.archive.woocommerce.minimal ul.products li.product .button.add_to_cart_button{background:none !important;}

.shopsidebar{ margin-top: 30px;}
.course_order_details{
    margin: 30px 15px;
    padding: 15px;
    border: 1px solid $bordercolor;
    li{
    	padding: 15px 0;
    	border-bottom: 1px solid $bordercolor;
    	strong{
    		float:right;
    	}
    	.button{
    		font-size:11px;
    		text-transform:uppercase;
    		padding:5px 10px;
    	}
    }
}

/*
	MISC CHANGES
*/


.woocommerce-product-gallery {
	position: relative;
	margin-bottom: 3em;

	figure {
		margin: 0;
	}

	.woocommerce-product-gallery__image:nth-child(n+2) {
		width: 25%;
		display: inline-block;
	}

	.flex-control-thumbs {
		li {
			list-style: none;
			float: left;
			cursor: pointer;
		}

		img {
			opacity: .5;

			&:hover,
			&.flex-active {
				opacity: 1;
			}
		}
	}

	img {
		display: block;
	}
}
.woocommerce-mini-cart__empty-message{
    padding: 10px 10px 0;
}
.woocommerce-product-gallery--columns-3 {
	.flex-control-thumbs li {
		width: 33.3333%;
	}
}

.woocommerce-product-gallery--columns-4 {
	.flex-control-thumbs li {
		width: 25%;
	}
}

.woocommerce-product-gallery--columns-5 {
	.flex-control-thumbs li {
		width: 20%;
	}
}

.product.first{clear:none;}
.woocommerce-Reviews .comment-text .description{clear:both;}