/*-------- Cart --------*/

.actions:after{
	visibility: hidden;
	display: block;

	font-size: 0;
	content: " ";

	clear: both;
	height: 0;
}

.product-thumbnail{
	display: inline-block;
	max-width: 100px;
}

.coupon .button{
	background-color: #04E8C2;
	color: black;
	border: solid 1px black;
}

.coupon .button:hover{
	background-color: black;
	color: #04E8C2;
}

#update_cart{
	background-color: #F7F7F7;
	color: #62a8ad;
}

#update_cart:hover{
	background-color: #dedede;
}

.shipping-calculator-button{
	background-color: #F7F7F7;
	color: #62a8ad;

	font-size: 12px;
	text-transform: uppercase;
	text-align: center;

	border-radius: 10px;
}

.shipping-calculator-button,
.update_button{
	display: block;
	width: 100%;
	max-width: 100%;

    background-color: #000000;
    color: #04E8C2;
	box-sizing: border-box;
	padding-top: 5px;
	padding-bottom: 5px;

	border: solid 1px black;
}

.shipping-calculator-button:hover,
.update_button:hover{
	border: solid 1px #04E8C2;
}

.shipping-calculator-form button{
	background-color: black;
	color: #04E8C2;
	border: solid 1px black;
	box-sizing: border-box;
}

.shipping-calculator-form button:hover{
	border: solid 1px #04E8C2;
}

.checkout-button{
	font-size: 20px;
	text-transform: uppercase;
	display: inline-block;
	width: auto;
	text-align: center;
	margin-top: 30px;

	border-radius: 10px;

	margin-top: 30px;

	float: right;
}

.checkout-button:hover{
	background-color: #5ea7ac;
	color: white;
}

.cartsub.button{
	float: right;
	display: inline-block;
	width: auto;
	background-color: rgb(226, 226, 226);
	color: dimgrey;
}

.shop_table.cart{
	width: 100%;
}

.woocommerce .cart-collaterals{
	width: 100%;
	box-sizing: border-box;
}

tr.cart_item{
	border-top: solid 1px #dff8f4
}

.shipping_calculator{
	width: 100%;
	float: none;
}

.cart_totals{
	width: 100%;
	margin-top: 60px;
}

.cart_totals table{
	width: 100%;
}

.cart_totals table th,
.cart_totals table td{
	line-height: 40px;
	width: 50%;
}

#cart_wrap{
	background-color: white;
	padding: 40px;
	border: solid 5px #04E8C2;
	overflow: hidden;
}

.cart_totals tr{
	padding-bottom: 30px;
	border-bottom: solid 1px #dff8f4;
}

.cart-subtotal th,
.shipping th,
.order-total th{
	text-align: left;
}

ul#shipping_method{
	padding: 0;
}

ul#shipping_method li{
	margin: 0;
	padding: 0;

	list-style: none;
}

.cart_item .product-name a{
	text-transform: uppercase;
	font-weight: bold;
}

.cart_item td{
	padding-top: 20px;
	padding-bottom: 20px;
}

.cart_item dl.variation{
	margin: 0;
    margin-top: 5px;

    background-color: transparent;
}

.cart_item dl.variation dt{
	color: black;
	padding: 0;
	clear: none;
    float: none;
    text-align: left;
    width: 27%;
    margin-right: 0;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 12px;
}

.cart_item dl.variation dd{
	border: none;
	padding: 0;
	margin-left: 0;
	width: 100%;
	padding-left: 0;
}

.cart_item dl.variation p{
	margin: 0;
	color: black;
}

.shipping-calculator-button:hover,
.checkout-button:hover{

}

.shipping-calculator-form select,
.shipping-calculator-form input{
	height: 40px;
}

.product-name{
	text-align: left;
}

.cart td.actions{

}

.coupon{
	width: 50%;
	margin: auto;
	float: none;
}

.actions .button{
	width: 45%;
	float: right;
}

.actions .button{
	color: #04E8C2;
	background-color: black;
	border: solid 1px black;
}

.actions .button:hover{
	border: solid 1px #04E8C2;
}

.coupon .input-text{
	background-color: white;
	border: solid 1px black;
	color: black;
	width: 40%;
	box-sizing: border-box;
	float: left;
	height: 40px;
}

.coupon .input-text:focus{
	border: solid 1px #04E8C2;
}

.coupon .button,
#update_cart{
	width: 60%;
	box-sizing: border-box;
	float: left;
	text-align: center;
	height: 40px;
}

.coupon .button{
	background-color: black;
	color: #04E8C2;

	box-sizing: border-box;
	border: solid 1px black;
}
.coupon .button:hover{
	box-sizing: border-box;
	border: solid 1px #04E8C2;
}

.actions #update_cart{
	float: right;
	width: 30%;
}

.product-remove a{
	margin: 5px;

	display: block;

	width: 30px;
	height: 30px;
	line-height: 30px;

	text-align: center;

	background-color: #04E8C2;
	color: #fff;
	border-radius: 50px;
}

.product-remove a:hover{
	background-color: #62a8ad;
}

.coupon .coupon_code{

}

.cart_item td{
	vertical-align: middle;
}

.product-remove a:hover{
	background-color: #e5e5e5;
}

.cart_totals h2{
	text-align: center;
	font-size: 40px;
	padding-bottom: 10px;
	margin-bottom: 30px;
	border-bottom: solid 1px #dff8f4;

}

.shop_table.cart thead tr{
	margin-bottom: 40px;
}

.woocommerce-cart .cross-sells{
	display: none;
}

.carttitle{
	xxbackground-color: rgb(255, 252, 241);
	padding-top: 5px;
	padding-bottom: 5px;

	font-size: 28px;
	color: #04E8C2;

	text-transform: uppercase;
	margin-bottom: 50px;

	border-bottom: solid 1px #04E8C2;
}

#cart_wrap ul.variation{
	margin: 0;
}

/*-------- Checkout --------*/

.woocommerce-checkout-review-order-table{
	width: 48%;
	float: left;
	text-align: center;
}

.woocommerce-checkout-review-order-table th.product-total{
	text-align: center;
}

#payment.woocommerce-checkout-payment{
	float: right;
	width: 48%;
}

.checkout_wrap,
.thankyou_checkout{
	width: 100%;
	margin: auto;
	padding: 40px;
	box-sizing: border-box;
	 background-color: #fff;
	border: solid 5px #04E8C2;
}

.woocommerce-checkout input,
#order_comments{

}

.checkout.woocommerce-checkout h3{
	font-size: 24px;
}

ul.payment_methods.methods{
	margin: 0;
	padding: 0;
	margin-bottom: 40px;
}

ul.payment_methods.methods li{
	margin: 0;
	padding: 0;

	list-style: none;
}

#order_review .shop_table th,
#order_review .product-name{
	text-align: left;
    width: 50%;
}

#order_review .product-name{
    color: #04E8C2;
}

#order_review thead tr .product-name{
	color: black;
}

.woocommerce-info,
.checkout_coupon .form-row input.button{
	margin-bottom: 30px;
	display: inline-block;
	padding: 10px;
	line-height: 33px;

	background-color: #04E8C2;
	color: black;
	box-sizing: border-box;

	border-radius: 0;
}

.showcoupon,
.woocommerce-info:hover a{
	color: white;
}

.checkout_coupon .form-row,
.checkout_coupon .form-row input{
	margin: 0;
	height: 50px;
	display: block;
	margin-bottom: 30px;
	margin-top: 0;
}

.checkout_coupon .form-row input{
	margin-top: 0;
}

abbr[title]{
	border-bottom: none;
}

.chosen-container-active.chosen-with-drop a.chosen-single,
.chosen-container a.chosen-single{
	border: none;
	-moz-border-radius-bottomright: 0;
	border-bottom-right-radius: 0;
	-moz-border-radius-bottomleft: 0;
	border-bottom-left-radius: 0;

	background-image: none;

	box-shadow: none;
	background-color: whitesmoke;
	border-radius: 0;
}

ul.woocommerce-error{
	margin: 0;
	padding: 0;
	margin-bottom: 40px;
}

ul.woocommerce-error li{
	margin: 0;
	padding: 0;

	list-style: none;
}

ul.woocommerce-error li strong{
	color: #FF6C4B;
}

ul.payment_methods.methods li:before{
	content:'';
}

ul.payment_methods.methods li div{
	margin-left: 25px;
}

.payment_method_paypal img{
	display: none;
}

.about_paypal{
	display: inline-block;
	position: relative;
	line-height: 40px;
	padding-left: 55px;
	margin-left: 10px;
}

.about_paypal:before{
	content: "\f1f4";
	font-family: FontAwesome;
	font-size: 35px;
	margin-right: 15px;
	color: black;
	line-height: 40px;
	position: absolute;
	left: 0;
}

#order_review:after{
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

ul.payment_methods{

}

ul.payment_methods li.payment_method_paypal_pro{

}

ul.payment_methods li.payment_method_paypal_pro label:after{
	content: "\f1f0  \f1f1  \f1f3  \f1f2";
	font-family: FontAwesome;
	font-size: 27px;
	margin-left: 15px;
	color: black;
	line-height: 22px;
	position: absolute;
}

ul.payment_methods li.payment_method_paypal_pro label img{
	display: none;
}

#paypal_pro-cc-form label:after{
	content: '';
}

#paypal_pro-cc-form{
	margin-top: 15px;
	margin-bottom: 15px;
}

#paypal_pro-cc-form p{
	margin: 0;
}

/*--- Order confirm ---*/

.order_details tr td,
.order_details tr th{
	text-align: left;
	padding: 5px;
}

.woocommerce-checkout #main header{
	background-image: none;
	border: none;
	padding-bottom:0;
}

.woocommerce-checkout header h2{
	font-size: 33px;
	line-height: 53px;
	font-weight: 700;
	text-transform: uppercase;
	margin-top: 40px;
	margin-bottom: 0;
	display: block;
}

dl.customer_details{
	background-color: transparent;
}

dl.customer_details dt{
	width: auto;

	font-weight: 700;
}

dl.customer_details dd{
	border-bottom: solid 1px whitesmoke;
	width: auto;
	padding-left: 0;
}

ul.order_details{
	margin: 0;
}

ul.order_details li{
	margin: 0;
}

/*--- Thankyou ---*/

ul.order_details{
	padding: 0;
	margin: 0;
}

ul.order_details li{
	list-style: none;
}

ul.order_details li:before{
	content: "\f192";
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;

    color: #62a8ad;
    font-size: 12px;
    padding-right: 0.5em;
}

.thankyou_checkout h2{
	color: #62a8ad;
	font-weight: normal;
	font-size: 25px;
	font-weight: bold;
	text-transform: uppercase;
	line-height: 30px;
}

.thankyou_checkout header{
	background-color: transparent;
}

.thankyou_checkout header h2{
	margin: 0;
	margin-top: 10px;
	margin-bottom: 10px;
}

.col2-set.addresses{
	margin-top: 50px;
}

.col2-set.addresses .col-1,
.col2-set.addresses .col-2{
	padding: 10px;
	box-sizing: border-box;
	border: solid 2px #04E8C2;
}

.col2-set.addresses .col-1 header h3,
.col2-set.addresses .col-2 header h3{
	color: #62a8ad;
	font-weight: normal;
	font-size: 25px;
	font-weight: bold;
	text-transform: uppercase;
	line-height: 30px;
}

.thanks_top{
	text-align: center;
}

.lcol.thanks{
	width: 48%;

	padding: 10px;
	box-sizing: border-box;

	border: solid 3px #04E8C2;
}

.rcol.thanks{
	width: 48%;

	padding: 10px;
	box-sizing: border-box;

	background-color: #f8f8f8;
}

.thanks.notice{
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
}

.col2-set.addresses header.title h3{
	font-size: 15px;
	line-height: 15px;
	border-bottom: solid 1px white;

}

.lcol.thanks h3,
.rcol.thanks h3{
	padding-bottom: 10px;
	border-bottom: solid 1px whitesmoke;
}

/*--- Paging ---*/

.page-numbers li:before{
	content: ' ';
	padding: 0;
}

/*--- Messages ---*/

.woocommerce-message a.button{
	background-color: transparent;
	color: #04E8C2;
	font-weight: bold;
	text-decoration: underline;
	border: none;
}

.woocommerce-message a.button:hover{
	background-color: transparent;
	color: black;
	text-decoration: underline;
}


.single-product .woocommerce-error,
.single-product .woocommerce-message,
.single-product .woocommerce-info{
	max-width: 600px;
	margin-bottom: 50px;
}

.single-product .woocommerce-error a,
.single-product .woocommerce-message a,
.single-product .woocommerce-info a{
	font-size: 14px;
}

.woocommerce-error li{
	font-size: 14px;
	line-height: 170%;
}

.woocommerce-error,
.woocommerce-message,
.woocommerce-info{
	max-width: auto;
	width: auto;

	display: block;
	margin: auto;
	margin-bottom: 50px;
	padding: 6px;
	position: relative;
	background-color: rgb(247, 247, 247);

	text-align: left;

	font-size: 20px;
	line-height: 200%;
	color: #575757;

	padding: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	border-radius: 0;

	text-align: center;
}

.woocommerce-error:before,
.woocommerce-message:before,
.woocommerce-info:before{
	font-family: FontAwesome;

	font-size: 25px;
	line-height: 51px;

	color: white;
	background-color: rgb(255, 108, 75);

	width: 40px;
	height: 40px;
	line-height: 40px;

	text-align: center;
	border-radius: 50px;

	display: block;
	margin: auto;
	margin-bottom: 15px;
}

.woocommerce-error:before{
	content: "\f071";
	color: #04E8C2;
}

.woocommerce-message:before{
	content: "\f0a2";
	color: #04E8C2;
	top: 23px;
}

.woocommerce-info:before {
	content: "\f0a2";
	color: #04E8C2;
}

/*---- Responsive ----*/


@media screen and (max-width: 768px) {

	.coupon {
    	width: 69%;
    }

    .woocommerce-page table.cart td.actions input.button{
	    width: 69%;
	    margin: auto;
	    float: none;
	    box-sizing: border-box;
	    margin-bottom: 10px;
	}

	.woocommerce-page table.cart td.actions .coupon{
		margin-top: 50px;
	}

    .coupon .input-text,
    .woocommerce-page table.cart td.actions .coupon input{
	    width: 50%;
    }

}

@media screen and (max-width: 600px) {

	.woocommerce-page form .form-row-last,
	.woocommerce-page form .form-row-first{
		float: none;
		width: 100%;
	}

	.woocommerce-checkout-review-order-table,
	#payment.woocommerce-checkout-payment{
		width: 100%;
		padding-bottom: 15px;
	}

	/* Force table to not be like tables anymore */
	.woocommerce-page table.shop_table,
	.woocommerce-page table.shop_table thead,
	.woocommerce-page table.shop_table tbody,
	.woocommerce-page table.shop_table th,
	.woocommerce-page table.shop_table td,
	.woocommerce-page table.shop_table tr {
	    display: block;
	}

	/* Hide table headers (but not display: none;, for accessibility) */
	.woocommerce-page table.shop_table thead tr {
	    position: absolute;
	    top: -9999px;
	    left: -9999px;
	}

	.woocommerce-page table.shop_table tr {
	    border: 1px solid #d2d3d3;
		margin-bottom: 10px;
	}

	.woocommerce-page table.shop_table td {
	    position: relative;

		padding-left: 5px;
		padding-top: 35px;
		padding-bottom: 5px;

		box-sizing: border-box;

		text-align: left;
	}

	.woocommerce-page table.shop_table td.product-total{
		border-top: solid 1px #D2D3D3;
	    background-color: whitesmoke;
	}

	.woocommerce-page table.shop_table {
	    border: none;
	}

	.woocommerce-page table.shop_table td.product-spacer {
	    border-color: #FFF;
	    height: 10px;
	}

	.woocommerce-page table.shop_table td:before {
	    position: absolute;
	    top: 6px;
	    left: 6px;
	    width: 25%;
	    padding-right: 10px;
	    white-space: nowrap;
	}

	.product-remove a {
	    float: right;
	    margin-top: -30px;
	}

	.woocommerce-page table.shop_table td.product-remove{
		background-color: whitesmoke;
	}

	.woocommerce-page table.shop_table td.product-remove:before {
	    content: "DELETE";
	    font-weight: bold;
		color: black;

		line-height: 29px;
	}

	.woocommerce-page table.shop_table td.product-thumbnail:before {
	    content: "IMAGE";
	    font-weight: bold;
		color: black;
	}

	.woocommerce-page table.shop_table td.product-name:before {
	    content: "PRODUCT";
	    font-weight: bold;
		color: black;
	}

	.woocommerce-page table.shop_table td.product-price:before {
	    content: "PRICE";
	    font-weight: bold;
		color: black;
	}

	.woocommerce-page table.shop_table td.product-quantity:before {
	    content: "QUANTITY";
	    font-weight: bold;
		color: black;
	}

	.woocommerce-page table.shop_table td.product-subtotal:before {
	    content: "SUBTOTAL";
	    font-weight: bold;
		color: black;
	}

	.woocommerce-page table.shop_table td.product-total:before {
	    content: "TOTAL";
	    font-weight: bold;
	    color: black;
	}

	#order_review .shop_table th,
	#order_review .product-name{
		width: 100%;
	}

	.woocommerce .quantity,
	.woocommerce #content .quantity,
	.woocommerce-page .quantity,
	.woocommerce-page #content .quantity {
	    margin: 0;
	}

	.woocommerce-page table.cart td.actions,
	.woocommerce-page #content table.cart td.actions {
	    text-align: left;
	    border:0;
	    padding: 10px 5px;
	    box-sizing: border-box;
	}

	.woocommerce-page table.cart td.actions .button.alt,
	.woocommerce-page #content table.cart td.actions .button.alt {
	    float: left;
	    margin-top: 10px;
	}

	.woocommerce-page table.cart td.actions div,
	.woocommerce-page #content table.cart td.actions div,
	.woocommerce-page table.cart td.actions input,
	.woocommerce-page #content table.cart td.actions input {
	    margin-bottom: 10px;
	}

	.woocommerce-page .cart-collaterals .cart_totals {
	    float: left;
	    width: 100%;
	    text-align: left;
	}

	.woocommerce-page .cart-collaterals .cart_totals th,
	.woocommerce-page .cart-collaterals .cart_totals td {
	    border:0;
	}

	.woocommerce-page .cart-collaterals .cart_totals table tr.cart-subtotal td,
	.woocommerce-page .cart-collaterals .cart_totals table tr.shipping td,
	.woocommerce-page .cart-collaterals .cart_totals table tr.total td {
	    padding: 10px 5px;
	    box-sizing: border-box;
	}

	.woocommerce-page table.shop_table tr.cart-subtotal td,
	.woocommerce-page table.shop_table tr.shipping td,
	.woocommerce-page table.shop_table tr.total td,
	.woocommerce-page table.shop_table.order_details tfoot th,
	.woocommerce-page table.shop_table.order_details tfoot td {
	    border:0;
	    padding: 10px 5px;
	}

	.woocommerce-page table.shop_table tbody {
	    padding-top: 10px;
	}

	.woocommerce-page table.shop_table tr.cart-subtotal,
	.woocommerce-page table.shop_table tr.order-total{
	    background-color: #000000;
		color: white;
    	padding: 5px;
    }

	.woocommerce-page table.shop_table tr.order-total{
	    background-color: #04E8C2;
		color: black;
	}

    .woocommerce-page table.shop_table tr.cart-subtotal td,
    .woocommerce-page table.shop_table tr.order-total td{
	    padding: 10px 0 0;
    }

	.woocommerce .col2-set .col-1,
	.woocommerce-page .col2-set .col-1,
	.woocommerce .col2-set .col-2,
	.woocommerce-page .col2-set .col-2,
	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last,
	.woocommerce-page form .form-row-first,
	.woocommerce-page form .form-row-last {
	    float: none;
	    width: 100%;
	}

	.woocommerce .order_details ul,
	.woocommerce-page .order_details ul,
	.woocommerce .order_details,
	.woocommerce-page .order_details {
	    padding:0;
	}

	.woocommerce .order_details li,
	.woocommerce-page .order_details li {
	    clear: left;
	    margin-bottom: 10px;
	    border:0;
	}

	/* make buttons full width, text wide anyway, improves effectiveness */
	#content table.cart td.actions .button,
	.woocommerce #content table.cart td.actions .input-text,
	.woocommerce #content table.cart td.actions input,
	.woocommerce table.cart td.actions .button,
	.woocommerce table.cart td.actions .input-text,
	.woocommerce table.cart td.actions input,
	.woocommerce-page #content table.cart td.actions .button,
	.woocommerce-page #content table.cart td.actions .input-text,
	.woocommerce-page #content table.cart td.actions input,
	.woocommerce-page table.cart td.actions .button,
	.woocommerce-page table.cart td.actions .input-text,
	.woocommerce-page table.cart td.actions input {
	    width: 100%;
	}

	/* keep coupon at 50% */
	#content table.cart td.actions .coupon .button,
	.woocommerce #content table.cart td.actions .coupon .input-text,
	.woocommerce #content table.cart td.actions .coupon input,
	.woocommerce table.cart td.actions .coupon .button,
	.woocommerce table.cart td.actions .coupon .input-text,
	.woocommerce table.cart td.actions .coupon input,
	.woocommerce-page #content table.cart td.actions .coupon .button,
	.woocommerce-page #content table.cart td.actions .coupon .input-text,
	.woocommerce-page #content table.cart td.actions .coupon input,
	.woocommerce-page table.cart td.actions .coupon .button,
	.woocommerce-page table.cart td.actions .coupon .input-text,
	.woocommerce-page table.cart td.actions .coupon input {
	    width: 48%;
	}

	/* clean up how coupon inputs display */
	#content table.cart td.actions .coupon,
	.woocommerce table.cart td.actions .coupon,
	.woocommerce-page #content table.cart td.actions .coupon,
	.woocommerce-page table.cart td.actions .coupon {
	    margin-top: 1.5em;
	}

	#content table.cart td.actions .coupon .input-text,
	.woocommerce table.cart td.actions .coupon .input-text,
	.woocommerce-page #content table.cart td.actions .coupon .input-text,
	.woocommerce-page table.cart td.actions .coupon .input-text {
	    margin-bottom: 1em;
	}

	/* remove cross sells, they interfere with flow between cart and cart totals + shipping calculator */
	.woocommerce .cart-collaterals .cross-sells,
	.woocommerce-page .cart-collaterals .cross-sells {
	    display: none;
	}

	.checkout-button{
		width: 100%;
	}

	.woocommerce-page .cart_totals  tr th{
		display: none;
	}

	.woocommerce-page .cart_totals tr.cart-subtotal td:before{
		content: 'Subtotal';
		display: block;
		font-weight: bold;
	}

	.woocommerce-page .cart_totals tr.shipping td:before{
		content: 'Shipping';
		display: block;
		font-weight: bold;
	}

	.woocommerce-page .cart_totals tr.shipping td p{
		line-height:  20px;
	}

	.woocommerce-page .cart_totals tr.order-total td:before{
		content: 'TOTAL';
		display: block;
		font-weight: bold;
		color: #04E8C2;
	}

	.checkout-button {
    	font-size: 16px;
    }

    .cart_totals h2{
	    font-size: 30px;
    }

}

@media screen and (max-width: 550px){

	.coupon .input-text, .woocommerce-page table.cart td.actions .coupon input,
	.woocommerce-page table.cart td.actions input.button,
	.coupon {
	    width: 100%;
	}

}
