/*
Theme Name: Cartful
Theme URI: http://themes.designcrumbs.com/cartful
Description: Cartful is a premium e-commerce WordPress theme built for use with the Cart66 Cloud.
Author: Jake Caputo
Author URI: http://www.designcrumbs.com
Version: 1.1.4
Tags: gray, white, one-column, two-columns, fluid-layout, custom-colors, custom-menu, editor-style, featured-images, flexible-header, full-width-template, theme-options, threaded-comments, translation-ready

License: GNU General Public License v2.0
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/* ============================================== ICON FONTS ============================================== */

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

/* ============================================== BASIC STUFF ============================================== */

* {
    padding: 0;
    margin: 0;
}

body {
    background-color: #F2F2F2;
    -webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body,
input,
textarea,
select {
    color: #4E4E4E;
    font-size: 18px;
    line-height: 1.8em;
    font-family: 'Lato', sans-serif !important;
    font-weight: 400;
}

#the_logo h1,
b,
.the_comment_author,
strong,
#content .strong,
.Cart66AdvancedWidgetCartTable .Cart66SubtotalRow,
.Cart66ProductTitle,
.Cart66ProductSubtotal,
table th {
    font-weight: 700
}

i,
em {
	font-style: oblique;
}

a {
    text-decoration: none;
    outline: none;
    -webkit-transition: color .2s linear;
    -moz-transition: color .2s linear;
    -ms-transition: color .2s linear;
    -o-transition: color .2s linear;
    transition: color .2s linear;
}

a:hover {
    text-decoration: underline
}

p {
    margin: 0 0 15px
}

img {
    border: none;
    max-width: 100% !important;
    height: auto;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

.left {
    float: left
}

.right {
    float: right
}

.clear {
    clear: both
}

.clearfix {
    zoom: 1
}

.clearfix:before,
.clearfix:after {
    content: "";
    display: table;
    line-height: inherit;
}

.clearfix:after {
    clear: both
}

.wp-caption,
.wp-caption-text,
.sticky,
.gallery-caption,
.bypostauthor {
    display: block
}

blockquote,
q {
    font-style: oblique;
    margin: 0 0 15px;
    font-size: 18px;
    padding-left: 25px;
    border-left: 5px solid #494949;
}

	blockquote cite {
		display: block;
		margin-top: 15px;
	}

.hide {
    display: none
}

code,
kbd,
tt {
	display: inline-block;
	font-family: monospace;
}

pre {
	font-family: monospace;
	background-color: #E3E3E3;
	padding: 5px 15px;
	max-width: 100%;
	overflow: auto;
	margin-bottom: 15px;
}

small {
	font-size: 12px;
}

strong,
b,
big {
	font-weight: 700;
}

big {
	font-size: 1.2em;
}

address {
	margin-bottom: 15px;
}

cite,
var {
	font-style: oblique;
	color:#848484;
}

ins {
	text-decoration: underline;
	color:#848484;
}

sub,
sup {
	display: inline-block;
	font-size: .8em;
}

/* ============================================== LISTS & GENERAL THINGS ============================================== */

ul,
ol,
dl,
ul li,
ul li,
dl dt,
dl dd  {
	margin: 0;
	padding: 0;
}

li {
	list-style-type: none;
}

.disc {
    list-style-type: disc
}

dl dt {
	font-weight: 700;
}

dl dd {
	margin-left: 30px;
	margin-bottom: 20px;
}

/* lists inside posts */

.entry-content ul,
.entry-content ol {
    margin-bottom: 15px
}

	.entry-content ul ul,
	.entry-content ol ol,
	.entry-content ul ol,
	.entry-content ol ul {
	    margin-bottom: 0
	}

    .entry-content ul ol {
        margin-left: 0
    }

    .entry-content ul li {
        margin-left: 10px;
        list-style: disc;
        list-style-position: inside;
    }

        .entry-content ul li ol {
            margin-left: 10px
        }

    .entry-content ol li {
        margin-left: 10px;
        list-style: decimal;
        list-style-position: inside;
    }

        .entry-content ol li li,
        .entry-content ul li li {
            margin-left: 20px
        }

table {
	border-collapse: collapse;
	width: 100%;
	text-align: left;
}

	table th {
		border-bottom:1px solid #E3E3E3;
	}

table th,
table td {
	padding:5px 10px;
}

table thead tr,
table th,
table tr:nth-child(2n) {
	background-color:#F4F4F4
}

/* ============================================== HEADINGS ============================================== */

h1,
h2,
h3,
h4,
h5 {
    font-family: 'Lato',sans-serif;
    font-weight: 900;
    padding: 0;
    line-height: 1.4em;
}

h1 {
    margin-bottom: 20px;
    margin-top: 40px;
    font-size: 36px;
}

h2 {
    margin-bottom: 20px;
    margin-top: 35px;
    font-size: 28px;
}

h3 {
    margin-bottom: 15px;
    margin-top: 30px;
    font-size: 22px;
}

h4 {
    margin-bottom: 15px;
    margin-top: 30px;
    font-size: 18px;
}

h5 {
    margin-bottom: 15px;
    font-size: 16px;
}

h6 {
    padding: 0;
    text-align: center;
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 21px;
    font-weight: 300;
}

.post_title,
.widgettitle {
    margin-top: 0
}

.post_title {
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E5E5;
    margin-bottom: 40px;
}

	.post_title a {
	    opacity: 1;
	    -webkit-transition: all .25s ease-in-out;
		-moz-transition: all .25s ease-in-out;
		-ms-transition: all .25s ease-in-out;
		-o-transition: all .25s ease-in-out;
		transition: all .25s ease-in-out;
	}

		.post_title a:hover {
		    text-decoration: none;
		    opacity: .8;
		}

#comments_closed,
#comments {
    margin: 80px 0 20px;
    text-align: center;
}

#leavecomment {
    margin-top: 0
}

/* ============================================== MAIN DIV'S ============================================== */

#site_wrap {
    background-color: #FFFFFF
}

.wrapper {
    margin: 0 auto;
    width: 100%;
}

.container {
    width: 1120px;
    margin: auto;
    position: relative;
    padding: 80px 0;
}

#content {
    overflow: hidden;
    position: relative;
}

/* ============================================== HEADER ============================================== */

#header {
    position: relative;
    z-index: 5;
    text-align: center;
}

    #header a {
        color: #A0A0A0
    }

    #header a:hover {
        color: #252525;
        text-decoration: none;
    }

    #header .container {
        height: auto;
        padding: 40px 0;
        border-bottom: 1px solid #E5E5E5;
    }

    #header.no_border_bottom .container {
	    border-bottom: none;
    }

.img_logo {
    margin: auto;
    display: inline-block;
    text-align: center;
    padding: 30px 0;
    max-width: 100%;
}

.img_logo img {
	display: block;
	margin: auto;
	max-width: 100%;
	height: auto !important;
}

h1.the_logo {
    font-size: 60px;
    margin: 0;
    text-align: center;
    font-weight: 100;
}

img#logo {
    display: block
}

img#logo.retina_logo {
	display: none;
}

/* Cart Links */

#head_cart {
    position: relative;
    float: right;
}

#dc_cart_total-wrap {
	display: inline-block;
}

#dc_cart_total {
	background-color: #9D0000;
	min-width: 16px;
	line-height: 16px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	color:#FFF;
	display: inline-block;
	text-align: center;
	font-size: 10px;
	position: relative;
	top:-2px;
}

/* ============================================== MENUS ============================================== */

/* Hide the mobile menu */
select.select-menu,
span.select {
	display: none;
}

#menu_wrap {
    float: left;
    max-width: 910px;
}

#main_menu,
#main_menu #s,
#cart_links {
    font-family: "Helvetica", sans-serif;
    font-size: 14px;
    font-weight: 400;
}

#main_menu {
    display: block;
    position: relative;
    width: 100% !important;
    background-color:#F9F9F9;
}

    #main_menu .container {
        padding: 0;
        position: relative;
    }

    #main_menu ul {
        margin: 0;
        padding: 0;
    }

        #main_menu ul li {
            margin: 0 30px 0 0;
            padding: 0;
            float: left;
        }

    #main_menu a {
        display: block;
        line-height: 40px;
        padding: 0;
        margin: 0;
        color: #6D6D6D;
    }

    #main_menu a:hover,
    #main_menu li.current-menu-item > a,
    #main_menu li.current_page_item > a,
    #main_menu li.current_page_parent > a,
    #main_menu li.current-menu-parent > a,
    #main_menu li.current-menu-ancestor > a,
    #main_menu li.current_page_ancestor > a {
        color: #292929;
        text-decoration: none;
    }

/* DROP DOWN MENUS */

    #main_menu li li {
        padding: 5px 10px;
        margin: 0;
        width: 150px;
        line-height: 30px;
    }

    #main_menu li:hover li a {
        border: none;
        background: none;
        width: auto;
        line-height: 30px;
    }

    #main_menu ul.menu li {
        position: relative
    }

        #main_menu ul.menu li ul {
            width: auto;
            display: none;
            margin: 0 0 0 -10px;
            padding: 0;
            z-index: 900;
            float: none;
            height: auto;
            position: absolute;
            top: 40px;
            background-color: #F9F9F9;
        }

            #main_menu ul.menu li ul li:hover ul {
                display: block;
                top: 0;
                left: 180px;
            }

            #main_menu ul.menu li ul li {
                position: relative;
                float: none;
                border-top: 1px dotted #DEDEDE;
            }

           #main_menu ul.menu li ul ul {
	           margin-top: -1px;
           }

    #main_menu ul li ul li a {
        margin: 5px 0
    }

    #main_menu ul.menu li ul li a:hover {
        border: none
    }

/* Search Form */

#search_wrap {
    position: relative;
    clear:both;
}

#search_link {
    width: 30px;
    height: 40px;
    cursor: pointer;
    text-align: right;
    display: block;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-transition: color .2s linear;
    -moz-transition: color .2s linear;
    -ms-transition: color .2s linear;
    -o-transition: color .2s linear;
    transition: color .2s linear;
    position: relative;
    z-index: 3;
    float: right;
}

	#search_link:before {
	    font-family: 'FontAwesome';
	    content: "\f002";
	    display: block;
	    font-size: 10px;
	    line-height: 38px;
	}

#search_wrap #searchform {
    position: relative;
    display: none;
    z-index: 2;
    width: 100%;
}

    #search_wrap #searchform #s {
        background-color: #FFFFFF;
	    border: 1px solid #E5E5E5;
	    box-shadow: none;
	    color: #A0A0A0;
	    height: 40px;
	    line-height: 40px;
	    margin: 10px 0 20px;
	    padding: 0 10px;
	    position: relative;
	    -webkit-transition: color .2s linear;
        -moz-transition: color .2s linear;
        -ms-transition: color .2s linear;
        -o-transition: color .2s linear;
        transition: color .2s linear;
	    width: 100%;
	    max-width: 100%;
    }

    #search_link:hover,
    #search_wrap #searchform #s:focus {
        color: #252525
    }

/* ============================================== FOOTER ============================================== */

#footer {
	overflow: hidden;
	margin: auto;
	clear: both;
	float: none;
	padding: 0;
	background-color:#F9F9F9;
	border-top: 5px solid #F2F2F2;
}

#footer_widgets {
    width: 1160px;
    margin-right: -40px;
    position: relative;
    zoom: 1;
    text-align: left;
    padding-bottom: 80px;
}

.footer_widget {
    float: left;
    margin: 0 30px 0 0;
    padding: 0 0 80px;
}

	.footer_widget a {
		color:#4E4E4E;
		display: inline-block;
		border-bottom: 1px dotted #4E4E4E;
		max-width: 100%;
	}

		.footer_widget a:hover {
			text-decoration: none;
			color:#212121;
		}

	.footer_widget > ul,
	.footer_widget ul.menu {
		margin-top: -10px;
	}

		.footer_widget ul li {
			padding: 10px 0 0;
		}

			.footer_widget ul li li {
				margin-left: 20px;
			}

.footer_widget_count1 .footer_widget {
    width: 1120px
}

.footer_widget_count2 .footer_widget {
    width: 540px
}

.footer_widget_count3 .footer_widget,
.footer_widget_overflow .footer_widget {
    width: 350px;
    margin-right: 35px;
}

.footer_widget_count4 .footer_widget {
    width: 250px;
    margin: 0 40px 0 0;
}

.footer_widget_overflow .widget:nth-child(3n+1) {
    clear: both
}

.footer_widget .widgettitle {
    margin: 0 0 20px;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding:0 0 20px;
    border-bottom: 1px solid #C6C6C6;
}

#post_footer {
	background-color: #F2F2F2;
	margin:-160px 0 0;
}

#footer_copy {
	text-align: center;
}

#footer_copy a {
	border-bottom: 1px dashed #B7B7B7;
    color: #454545;
    display: inline-block;
}

	#footer_copy a:hover {
		border-bottom: 1px dashed #454545;
		text-decoration: none;
	}

#credit_space {
	display: inline-block;
	margin: 0 10px;
}

#socnets_wrap {
	overflow: hidden;
	width: 100%;
	margin-bottom: 20px;
}

#socnets {
	float:left;
	position: relative;
	left:50%;
}

	#socnets a {
	    float: left;
	    position: relative;
	    right: 50%;
	    margin: 0 5px;
	    display: block;
	    font-family: 'Socialglyphs-Regular';
	    font-weight: normal;
	    color: #6D6D6D;
	    text-decoration: none;
	    -webkit-transition: all .25s linear;
		-moz-transition: all .25s linear;
		-ms-transition: all .25s linear;
		-o-transition: all .25s linear;
		transition: all .25s linear;
		background-color: transparent;
	}

	#socnets a:hover {
		background-color: #FEFEFE;
	}

	    #socnets a:before {
	        display: block;
	        font-size: 30px;
		    line-height: 30px;
		    height: 40px;
		    width: 40px;
		    text-align: center;
	    }

		    #socnets a.socnet-twitter:before {
		        content: "t"
		    }

		    #socnets a.socnet-twitter:hover {
		        color: #00ACED
		    }

		    #socnets a.socnet-facebook:before {
		        content: "f"
		    }

		    #socnets a.socnet-facebook:hover {
		        color: #335795
		    }

		    #socnets a.socnet-google:before {
		        content: "h"
		    }

		    #socnets a.socnet-google:hover {
		        color: #DD4B39
		    }

		    #socnets a.socnet-flickr:before {
		        content: "a"
		    }

		    #socnets a.socnet-flickr:hover {
		        color: #FF0084
		    }

		    #socnets a.socnet-tumblr:before {
		        content: "u"
		    }

		    #socnets a.socnet-tumblr:hover {
		        color: #668195
		    }

		    #socnets a.socnet-vimeo:before {
		        content: "v"
		    }

		    #socnets a.socnet-vimeo:hover {
		        color: #0DADD6
		    }

		    #socnets a.socnet-youtube:before {
		        content: "y"
		    }

		    #socnets a.socnet-youtube:hover {
		        color: #D02525
		    }

		    #socnets a.socnet-pinterest:before {
		        content: "p"
		    }

		    #socnets a.socnet-pinterest:hover {
		        color: #CB2027
		    }

/* ============================================== HOME ============================================== */

/* === SLIDES === */

.slides li,
.flex-control-nav li,
.flex-direction-nav li {
    list-style: none outside none !important;
    margin-left: 0 !important;
}

#slide_parent {
	margin-top: -1px;
    overflow: hidden;
    position: relative;
    z-index: 5;
}

	#slide_parent .container {
		padding: 0;
		position: static;
	}

#slide_wrap {
	padding: 0 9999px;
	margin: 0 -9999px;
	background-color: #292929;
}

#slides {
	overflow: visible;
	padding: 0;
}

#product_bar_wrap #slides {
	position: relative;
}

.slides {
	overflow: hidden;
}

.single_slide {
    position: relative;
    display: none;
}

.flex-direction-nav li a {
    cursor: pointer;
    display: block;
    font-size: 0;
    position: absolute;
    width: 50px;
    height: 50px;
	text-align: center;
    top:50%;
    margin-top: -15px;
    z-index: 10;
    color:#D5D5D5;
    opacity: .2;
    background-color:rgba(0,0,0,0);
    -webkit-transition: all .3s linear;
	-moz-transition: all .3s linear;
	-ms-transition: all .3s linear;
	-o-transition: all .3s linear;
	transition: all .3s linear;
	line-height: 53px;
	text-shadow: none;
	text-decoration: none;
}

	.flex-direction-nav a:hover {
		background-color:rgba(0,0,0,.8);
		opacity: 1;
	}

.flex-direction-nav li .flex-prev {
    left: 0;
}

	.flex-direction-nav li .flex-prev:before {
		font-family: "FontAwesome";
		content:"\f053" !important;
		font-size: 25px;
		height: 50px;
		line-height: 53px;
		width: 50px;
		display: block;
		text-align: center;
	}

.flex-direction-nav li .flex-next {
    right: 0;
}

	.flex-direction-nav li .flex-next:before {
		font-family: "FontAwesome";
		content:"\f054" !important;
		font-size: 25px;
		height: 50px;
		line-height: 53px;
		width: 50px;
		display: block;
		text-align: center;
	}

.slide_content {
	padding: 40px 20px;
}

.slide_image {
	position: absolute;
	left: 20px;
	top:40px;
	width: 500px;
	text-align: center;
	max-width: 100%;
}

	.single_slide:nth-child(2n) .slide_image {
		left: auto;
		right: 20px;
		top:auto;
	}

	.slide_image a,
	.slide_image img {
		margin: auto;
		display: block;
	}

	.slide_image.center_slide {
		position: relative;
		left: auto !important;
		right: auto !important;
		top:auto !important;
		margin: auto;
	}

.slide_title {
	border: none;
	padding: 0;
	margin-bottom: 20px;
}

.slide_desc {
	float: right;
	width: 500px;
	max-width: 100%;
	margin-bottom: 7px;
}

	.single_slide:nth-child(2n) .slide_desc {
		float: left;
	}

	.slide_desc .button {
		margin-top: 5px;
	}

#single_product_page #slides {
	padding: 0;
}

#single_product_page .slides {
	margin: 0;
}

	#single_product_page .slides li {
		text-align: center;
	}

		#single_product_page .slides li img {
			margin:auto;
			display: block;
		}

#single_product_page .flex-direction-nav li .flex-prev {
	left: 10px;
}

#single_product_page .flex-direction-nav li .flex-next {
	right: 10px;
}

ol.flex-control-nav,
ul.flex-direction-nav {
	margin: 0;
}

#single_product_page .flex-control-nav {
    bottom: -47px;
}

/* == LATEST PRODUCTS == */

.products_grid {
    width: 1160px;
    margin-right: -40px;
}

#archive_grid {
    width: 810px;
    margin-right: -30px;
}

	#archive_grid .single_grid_product {
		margin: 0 30px 30px 0;
		width: 240px;
		height: 240px;
	}

h2.latest_products_title,
h3.related_products_title,
h2.archive_title,
.search_results_title {
    padding: 20px;
    margin: 0 0 40px;
    text-align: center;
    background-color: #F9F9F9;
    font-weight: 900;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

.search_results_title {
	padding: 40px 20px;
}

h3.related_products_title {
	margin-top: 60px;
}

.single_grid_product {
    float: left;
    width: 250px;
    height: 250px;
    margin: 0 40px 40px 0;
    position: relative;
    padding:10px;
	background-color: #F9F9F9;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

.single_grid_product .product_med_wrap {
    position: relative;
    display: block;
    height:100%;
    width: 100%;
}

.single_grid_product a {
    height: 100%;
    width: 100%;
    display: block;
}

.single_grid_product img {
    margin: auto;
    height: auto;
    width: auto;
    max-height: 100%;
    max-width: 100%;
    display: block;
}

.single_grid_product h3 {
    text-align: center;
    display: block;
    margin: 0 0 15px;
    font-weight: 100;
    font-size: 14px;
}

    .single_grid_product h3 a {
        display: block;
        padding: 10px 5px;
        color: #A0A0A0;
    }

.single_grid_product:hover h3 a {
    text-decoration: none
}

.single_grid_product .product_meta-wrap {
	position: absolute;
	top:50%;
	left: 50%;
    margin: -25px auto 0;
}

	.single_grid_product .product_meta-wrap span {
		padding: 0;
	}

.single_grid_product .product_meta {
    font-family: "Lato", sans-serif;
    height: 50px;
    line-height: 50px;
    color: #A9A9A9;
    position: relative;
    left: -50%;
    text-align: center;
    text-decoration: none;
}

.single_grid_product .dark_box {
	background-color: #000000;
	position: absolute;
    height: 0px;
    left: 50%;
    top: 50%;
    width: 0px;
    font-size: 0px;
    opacity: 0;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    -webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}

	.single_grid_product:hover .dark_box {
		opacity: .9;
		width: 50%;
		height: 50%;
		left: 25%;
		top: 25%;
		font-size: 18px;
	}

#all_products_call {
    display: block;
    text-align: center;
    padding: 20px;
    text-decoration: none;
    color: #FFFFFF;
    opacity: 1;
    font-weight: 900;
    letter-spacing: 1px;
    -webkit-transition: all .3s linear;
	-moz-transition: all .3s linear;
	-ms-transition: all .3s linear;
	-o-transition: all .3s linear;
	transition: all .3s linear;
}

	#all_products_call:hover {
		opacity: .9;
	}

/* == FEATURED PRODUCTS == */

#featured .products_grid {
	width: 1170px;
	margin-right: -50px;
}

#featured .single_grid_product {
	width: 340px;
	height: 340px;
	margin: 0 50px 0 0;
}

/* == CALL TO ACTION == */

.home_cta {
	background-color: #EDEDED;
	background-repeat: none;
	background-position: center center;
	background-attachment: scroll;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

	.home_cta .container {
		padding: 120px 0;
	}

	.home_cta h1 {
		margin-top: 0;
	}

	.home_cta .container *:last-child {
		margin-bottom: 0;
	}

/* ============================================== SINGLE PRODUCT PAGE ============================================== */

#product_images {
    float: left;
    width: 280px;
    margin: 0 40px 40px 0;
}

    #product_images img {
        display: block;
        margin: auto;
    }

#main_product_image {
    width: 280px;
    text-align: center;
    display: block;
    position: relative;
}

#product_bar_wrap {
	background-color: #292929;
    margin: -80px -9999px 80px;
    overflow: hidden;
    padding: 40px 9999px;
}

.single-product-meta {
	background-color:#F9F9F9;
	font-size: 16px;
	padding:10px 9999px;
	margin:-80px -9999px 40px;
}

	.single-product-meta div {
		display: inline-block;
		margin-right: 20px;
	}

		.single-product-meta div span {
			margin-right: 5px;
		}

		.single-product-meta div a {
			display: inline-block;
			margin: 0 5px;
			padding:0;
			-webkit-transition: all .3s linear;
			-moz-transition: all .3s linear;
			-ms-transition: all .3s linear;
			-o-transition: all .3s linear;
			transition: all .3s linear;
		}

			.single-product-meta div a:hover {
				background-color:#F2F2F2;
				padding: 0 5px;
				margin:0;
				text-decoration: none;
			}

.product_title {
	border-bottom: 1px solid #3A3A3A;
	border-bottom: 1px solid rgba(255,255,255,.1);
    margin: 0;
    padding: 0 9999px 40px 30px;
    width: 240px;
}

/* ============================================== POSTS ============================================== */

.posts-wrap {
    width: 780px
}

.content_right .posts-wrap {
    float: right
}

.content_left .posts-wrap {
    float: left
}

.about_the_author {
    padding: 30px 0;
    margin: 40px 0 0;
    border-bottom: 1px solid #E5E5E5;
    border-top: 1px solid #E5E5E5;
}

    .about_the_author .avatar {
        padding: 4px;
        background: #FFFFFF;
        border: 1px solid #CFCFCF;
        margin: 0 20px 0 0;
        float: left;
        height:70px;
        width:70px;
    }

	.about_the_author .author_info {
	    float: left;
	    width: 680px;
	}

.author_title,
.author_about {
    margin-bottom: 10px
}

    .author_title h3 {
        margin: 0
    }

.post_meta {
    margin: -20px 0 30px;
    font-size: 14px;
    line-height: 25px;
}

.post_meta,
.post_meta a {
	color:#A0A0A0;
}

.meta_block {
    margin: 10px 40px 0 0;
    float: left;
    padding-left: 35px;
    position: relative;
}

    .meta_block:before {
        font-family: "FontAwesome";
        position: absolute;
        left: 0;
        top:1px;
        width: 35px;
        text-align: center;
    }

    .meta_block .avatar {
	    height: 25px;
	    width: 25px;
	    -webkit-border-radius: 20px;
		-moz-border-radius: 20px;
		border-radius: 20px;
		position: absolute;
		left: 0;
		top:0;
    }

.block-category:before {
	content:"\f00b"
}

.block-comments:before {
	content:"\f086";
	top:0;
}

.block-date:before {
	content:"\f073"
}

.single-meta {
    margin: 30px 0 0;
    position: relative;
    padding-left: 35px;
    font-size: 14px;
    line-height: 25px;
}

	.single-meta:before {
	    font-family: "FontAwesome";
        position: absolute;
        left: 0;
        top:1px;
        width: 35px;
        text-align: center;
        content:"\f02b"
	}

.single-meta,
.single-meta a {
	color:#A0A0A0;
}

.post_content {
    position: relative
}

.blog-post {
    position: relative;
    margin: 0 0 80px;
}

a.more-link {
    display: block;
}

#page-links-wrap {
	overflow: hidden;
	width: 100%;
}

#page-links {
	display: block;
	float:left;
	position: relative;
	left:50%;
	margin: 30px auto 0;
	text-align: center;
	height: 30px;
	line-height: 30px;
}

	#page-links > * {
		float:left;
		position: relative;
		right:50%;
	}

	#page-links a:hover span {
		background-color: #F2F2F2;
		-webkit-transition: all .2s linear;
		-moz-transition: all .2s linear;
		-ms-transition: all .2s linear;
		-o-transition: all .2s linear;
		transition: all .2s linear;
	}

	#page-links span {
		min-width: 30px;
		display: block;
		float: left;
		background-color:#F9F9F9;
	}

	#page-links > span {
		background-color:#E5E5E5;
	}

/* ============================================== ARCHIVE ============================================== */

.tax_description {
	margin-bottom: 40px;
}

.post-archive {
    padding: 20px 0 20px 70px;
    position: relative;
    min-height: 50px;
    line-height: 25px;
    border-bottom: 1px dashed #E7E7E7;
}

    .post-archive .archive_image_link {
        display: block;
        position: absolute;
        top: 20px;
        left: 0;
        padding: 1px;
        height: 46px;
        width: 46px;
        background-color: #FFFFFF;
        -webkit-border-radius: 2px;
        -moz-border-radius: 2px;
        border-radius: 2px;
        z-index: 1;
        border: 1px solid #C5C5C5;
    }

h4.archive-entry-title {
    margin: 0;
    line-height: 25px;
}

.archive-meta {
    font-size: 11px;
    color: #555555;
}

.search_results {
    padding: 0 0 4px
}

.search-results #archive_grid,
.search-results .blog-post,
.search-results .page {
	margin: 40px 0;
}

/* ============================================== SIDEBARS & WIDGETS ============================================== */

#sidebar {
    width: 300px;
}

    #sidebar .widgettitle {
        -moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
	    background-color: #F9F9F9;
	    font-weight: 900;
	    margin: 0 0 20px;
	    padding: 10px;
	    text-align: center;
    }

#cart_sidebar {
	background-color: #212121;
	background-color: rgba(0,0,0,.2);
	color:#F9F9F9;
    margin: -40px -9999px -9999px 0;
    padding: 40px 9999px 9999px 0;
    width: 300px;
    max-width: 100%;
    float: right;
}

	#cart_sidebar input[type="text"] {
		width: 100% !important;
		max-width: 100%;
		-moz-box-sizing:border-box !important;
		-webkit-box-sizing:border-box !important;
		box-sizing:border-box !important;
		padding: 4px 14px !important;
		height: 44px !important;
	}

	#cart_sidebar textarea {
		width: 100% !important;
		max-width: 100%;
		-moz-box-sizing:border-box !important;
		-webkit-box-sizing:border-box !important;
		box-sizing:border-box !important;
		padding: 11px 14px !important;
		min-height: 100px !important;
	}

.content_right #sidebar {
    float: left
}

.content_left #sidebar {
    float: right
}

#sidebar .widget {
    margin: 0 0 60px
}

#searchform {
    position: relative
}

.widget #searchform {
    width: 100%;
}

input#s[type="search"] {
    width: 100%;
    color: #777777;
}

#calendar_wrap,
#wp-calendar {
    width: 100%;
    text-align: center;
}

    #calendar_wrap caption {
        margin: 0 0 10px
    }

.tagcloud a {
	display: inline;
	border: none;
}

#sidebar .widget ul li {
    padding: 10px 0;
    border-top: 1px solid #E5E5E5;
}

	#sidebar .widget ul ul {
	    margin-top: 10px;
	}

		#sidebar .widget ul li li {
			margin-left: 20px;
		}

	#sidebar .widget ul.menu > li:first-child,
	#sidebar .widget > ul li:first-child {
	    border: none;
	    padding: 0 0 10px;
	}

	#sidebar .widget ul li:last-child {
	    padding: 10px 0 0
	}

#sidebar #cc_cart_widget {
	text-align: center;
	margin-top: -20px;
	border-right:5px solid #F9F9F9;
	border-bottom:5px solid #F9F9F9;
	border-left:5px solid #F9F9F9;
	padding: 20px;
}

.rsswidget,
.rss-date {
	display: block;
}

.rss-date {
	font-size: 14px;
	color:#A0A0A0;
}

	.rss-date:before {
		font-family: "FontAwesome";
		content:"\f073";
	    position: relative;
	    width: 25px;
	    display: inline-block;
	}

#sidebar #cc_cart_widget .cc_cart_empty {
	color:#BABABA;
}

#sidebar #cc_cart_widget_wrapper #cc_cart_widget_list_item {
	border: none;
	padding: 0;
}

#recent_products {
    margin-bottom: -20px
}

	#recent_products:hover img {
		opacity: .5;
	}

		#recent_products img:hover {
			opacity: 1;
		}

    #recent_products a {
        display: inline-block;
        float: left;
        width: 20%;
        height: auto;
        margin: 10px 6.66%;
        border: 0;
    }

    #recent_products img {
        height: 100%;
        width: 100%;
        -webkit-transition: all .3s linear;
		-moz-transition: all .3s linear;
		-ms-transition: all .3s linear;
		-o-transition: all .3s linear;
		transition: all .3s linear;
    }

/* ============================================== 404-PAGE ============================================== */

.error404 {
    margin: 0;
    width: 100%;
    text-align: center;
}

    .error404 h2 {
        margin: 15px auto
    }

/* ============================================== COMMENTS & FORMS ============================================== */

#content span.wpcf7-not-valid-tip {
    /* for contact form 7 */
    background: none repeat scroll 0 0 transparent;
    border: medium none;
    color: red;
    font-size: 10pt;
    left: 270px;
    padding: 2px;
    position: absolute;
    top: -5px;
    width: 280px;
    z-index: 100;
}

input[type="submit"],
a.button,
.navigation a,
body #content .Cart66ButtonPrimary,
body #content .Cart66ButtonSecondary,
body #content .Cart66ButtonPrimary,
body #content .Cart66ButtonSecondary,
body #content .Cart66CartButton .purAddToCart,
.single-products .gform_wrapper input.button,
.single-cc_product .gform_wrapper input.button,
body #content .gform_wrapper .gform_footer input.button,
body #content .gform_wrapper .gform_footer input[type="submit"],
a.more-link,
.navigation a {
    text-decoration: none;
    border:none;
    font-size: 14px;
    line-height: 40px;
    height: 40px;
    padding: 0 15px;
    font-weight: 900;
    letter-spacing: 1px;
    font-family: 'Lato',sans-serif !important;
    color: #FFFFFF !important;
    text-shadow: none;
    display: inline-block;
    -webkit-appearance: none; /* Corrects inability to style clickable 'input' types in iOS */
    opacity: 1;
    -webkit-transition: all .2s linear;
	-moz-transition: all .2s linear;
	-ms-transition: all .2s linear;
	-o-transition: all .2s linear;
	transition: all .2s linear;
}

	input[type="submit"]:hover,
	a.button:hover,
	.navigation a:hover,
	body #content .Cart66ButtonPrimary:hover,
	body #content .Cart66ButtonSecondary:hover,
	body #content .Cart66ButtonPrimary:hover,
	body #content .Cart66ButtonSecondary:hover,
	body #content .Cart66CartButton .purAddToCart:hover,
	.single-products .gform_wrapper input.button:hover,
	.single-cc_product .gform_wrapper input.button:hover,
	body #content .gform_wrapper .gform_footer input.button:hover,
	body #content .gform_wrapper .gform_footer input[type="submit"]:hover,
	a.more-link:hover,
	.navigation a:hover {
		opacity: .9;
	}
	
.edit_cart a.btn,
.clear-coupon-button {
	color: #FFF !important;
	font-size: 14px !important;
	line-height:40px !important;
	padding:0 15px !important;
	border: none !important;
	letter-spacing: 1px;
	margin-left: 10px !important;
}
	
.edit_cart a.btn {
	color: #FFF !important;
}

label {
	display: block;
	margin:0 0 2px;
}

ul.children {
    margin-left:10px;
}

ul.commentlist, ul.pinglist {
    margin:-5px 0 0;
}

div.reply {
    text-align:right;
	font-size:12px;
	float: right;
	margin-left: 20px;
}

textarea#comment {
    overflow:auto;
}

ul.commentlist li, ul.pinglist li {
	position:relative;
	margin:5px 0 0;
	padding: 19px;
	background-color:#FFFFFF;
	border: 1px solid #E5E5E5;
}

ul.commentlist ul li {
	position:relative;
	padding:20px 0 0 10px;
	margin:20px 0 0 0;
	border-top:1px solid #E5E5E5;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	border-radius: 0;
	border-left:none;
	border-right:none;
	border-bottom:none;
}

ul.commentlist img.avatar {
	background-color: #FFFFFF;
    padding: 4px;
	position:absolute;
	top:0;
	left:0;
	height:50px;
	width:50px;
	border: 1px solid #DCDCDC;
}

.moderation {
	display: block;
	clear: both;
	color:#ABABAB;
	font-weight: 900;
}

.the_comment {
	padding:0 0 0 90px;
	position:relative;
	min-height:60px;
}

.the_comment_author {
	display: block;
	width:auto;
	margin:0 0 20px;
	position: relative;
}

ul.commentlist img.avatar {
    background-color: #FFFFFF;
    padding: 4px;
    position: absolute;
    top: 0px;
    left: 0px;
    height:50px;
    width: 50px;
    border: 1px solid #CFCFCF;
}

li.bypostauthor > div > .the_comment_author {
	    position: relative;
	    padding-left: 20px;
	}

	li.bypostauthor > div > .the_comment_author:before {
	    content: "\f007";
	    font-family: 'FontAwesome';
	    font-size: 14px;
	    left: 0;
	    position: absolute;
	    top: 0;
	    font-weight: normal;
	}

.moderation {
	display: block;
	clear: both;
	color:#37A741;
	font-weight: 900;
	margin-bottom: 5px;
}

.the_comment {
    padding: 0 0 0 90px
}

.the_comment_author {
    font-weight: bold;
    width: auto;
    margin: 0 0 20px;
}

.commentmetadata {
    float: left;
    width: auto;
}

input[type="text"],
input[type="search"],
input[type="password"],
input[type="url"],
input[type="email"],
input[type="tel"],
input[type="number"] {
    height: 40px !important;
    padding: 4px 10px;
    width: 230px;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

select {
	padding: 4px 10px;
	white-space: 100%;
    max-width: 300px;
    height:40px;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

#sidebar select,
.widget select {
	width: 100%;
}

textarea {
    height: 200px;
    padding: 10px;
    width: 100%;
    resize: vertical;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

input[type="text"],
input[type="search"],
input[type="password"],
input[type="url"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea,
select {
    line-height: 25px;
    border: 1px solid #CFCFCF;
    background-color: #FFFFFF;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="url"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus {
    border: 1px solid #9C9C9C
}

#comments_container {
    margin: 60px auto 0;
    background-color: #F9F9F9;
    padding: 20px;
}

	#comments_container #comments {
        margin-top:0;
    }

    #comments_container #respond {
        margin: 0
    }

#respond {
    margin: 20px 0 0
}

	#respond small {
		display: inline-block;
	}

.commentlist #respond h3 {
    margin-top: 0
}

.commentlist #respond,
#comments_container .commentlist #respond {
    margin: 5px 0 0;
    padding: 20px;
}

.commentlist .children #respond {
    border-top: 1px solid #E5E5E5;
    margin: 15px 0 0;
    border-radius: 0;
}

.commentlist #respond textarea,
.commentlist #respond input[type="text"] {
    width: 96% !important;
}

#cancel-comment-reply {
    float: left;
    margin: 0 0 0 20px;
    line-height: 28px;
}

/* ============================================== ALIGNMENTS ==============================================*/

.alignright {
	float: right;
	margin: 0 0 20px 20px;
}

.alignleft {
	float: left;
	margin: 0 20px 20px 0;
}

.aligncenter {
	display: block;
	margin: 20px auto;
	text-align: center;
}

.alignnone {
	margin: 0 0 20px 0;
}

.alignright,
.alignleft,
.aligncenter,
.alignnone,
.attachment-dcs_image  {
	display: block;
	padding:4px;
	background-color: #FFFFFF;
	border:1px solid #E0E0E0;
	width: auto !important;
	max-width: 885px;
}

.alignright img,
.alignleft img,
.aligncenter img,
.alignnone img,
.attachment-dcs_image img {
	display: block;
}

p.wp-caption-text {
    margin: 5px 0 0;
    text-align: center;
    font-size: 12px;
    line-height: 19px;
    padding:10px 0;
}

.wp-caption-dd {
	padding:15px 0 10px;
}

img.wp-smiley {
	display: inline-block;
}

/* ============================================== NAVIGATION ==============================================*/

.navigation {
    height: auto;
    clear: both;
}

.blog .navigation {
    margin-top: -70px
}

.the_archive .navigation a {
    margin: 20px 0 40px;
    display: block;
}

.nav-next {
    float: right;
    text-align: right;
}

.nav-prev {
    float: left;
    text-align: left;
}

.navigation a {
    margin: 30px 0 0;
}

/* ============================================== GRAVITY FORMS ==============================================*/

.entry-content .gform_body ul li.gfield {
	margin: 20px 0 0 0;
}

.entry-content .gform_wrapper input[type="text"],
.entry-content .gform_wrapper input[type="url"],
.entry-content .gform_wrapper input[type="email"],
.entry-content .gform_wrapper input[type="tel"],
.entry-content .gform_wrapper input[type="number"],
.entry-content .gform_wrapper input[type="password"],
.entry-content .gform_wrapper .top_label input.medium,
.entry-content .gform_wrapper .top_label select.medium {
	padding: 4px 10px;
    width: 230px;
    font-size: 15px;
}

.entry-content .gform_wrapper .top_label input.large,
.entry-content .gform_wrapper .top_label select.large,
.entry-content .gform_wrapper .top_label textarea.textarea {
	height: 200px;
    padding: 10px;
    width: 678px;
    font-size: 15px;
}

.recaptchatable {
	background-color:#FFFFFF;
}

.recaptchatable #recaptcha_response_field {
	padding:0;
}

#sidebar .gform_wrapper input[type="text"],
#sidebar .gform_wrapper input[type="url"],
#sidebar .gform_wrapper input[type="email"],
#sidebar .gform_wrapper input[type="tel"],
#sidebar .gform_wrapper input[type="number"],
#sidebar .gform_wrapper input[type="password"],
#sidebar .gform_wrapper textarea {
	width: 94%;
	padding: 3%;
	font-size: 15px;
}

/* ============================================== OPTIONS ============================================== */

/* Button Colors */

.button_dark input[type="submit"],
.button_dark a.button,
.button_dark #content .Cart66ButtonPrimary,
.button_dark #content .Cart66ButtonSecondary,
.button_dark #content .Cart66ButtonPrimary,
.button_dark #content .Cart66ButtonSecondary,
.button_dark #content .Cart66CartButton .purAddToCart,
.button_dark #all_products_call,
.button_dark a.more-link,
.button_dark .navigation a {
    color:#505050 !important;
}

.slide_light .slide_desc,
.slide_light #cart_sidebar,
.slide_light #content .cart66 .ajax_add_to_cart_message .alert,
.slide_light .cart66 .ajax_add_to_cart_message .alert,
.slide_light #content .cart66 .icon-remove,
.slide_light .cart66 .icon-remove {
	color:#D5D5D5 !important;
}

.slide_dark .slide_desc,
.slide_dark #cart_sidebar,
.slide_dark #content .cart66 .ajax_add_to_cart_message .alert,
.slide_dark .cart66 .ajax_add_to_cart_message .alert,
.slide_dark #content .cart66 .icon-remove,
.slide_dark .cart66 .icon-remove {
	color:#3D3D3D !important;
}

.content_right #cart_sidebar {
	margin: -40px 0 -9999px -9999px;
    padding: 40px 0 9999px 9999px;
    float: left;
}

.content_right .product_title {
	margin-left: -9969px;
    padding: 0 30px 40px 9999px;
}

/* ============================================== CART66 CLOUD =========================================== */

#cc_cart_widget_summary {
	padding-bottom: 20px;
}

#content .cart66 .cart66-form select,
.cart66 .cart66-form select {
    width: 100% !important;
}

.ajax_add_to_cart_message .alert .cc_close_message {
    display: block;
    position: absolute;
    right:2px;
    top:2px;
}

#content .cart66 .ajax_add_to_cart_message .alert,
.cart66 .ajax_add_to_cart_message .alert {
	padding: 20px !important;
	margin-bottom: 0 !important;
	background-color: rgba(0,0,0,.1) !important;
	text-shadow: none !important;
	border: none !important;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	margin-top: 30px;
}

#content .cart66 .icon-remove,
.cart66 .icon-remove {
	background-image: none !important;
	position: relative;
}

	#content .cart66 .icon-remove:before,
	.cart66 .icon-remove:before {
		content:"\f00d";
		font-family: "FontAwesome";
		font-style: normal;
	}

.cart66 .cart66-form .ajax_add_to_cart_message .alert .cc_ajax_message {
	line-height: 20px;
	display: block;
	text-align: center;
}

.ajax_add_to_cart_message .ajax_view_cart_button {
    display: block !important;
    width: 100% !important;
    padding:0 !important;
    float:none !important;
    margin:10px 0 0 !important;
}

.cart66 .cart66-form .alert-error {
    padding: 8px 0px !important;
    position: relative;
    -webkit-border-radius: 0 !important;
	-moz-border-radius: 0 !important;
	border-radius: 0 !important;
	background-color: transparent !important;
	border:0 !important;
	text-shadow: none !important;
	padding: 0 !important;
}

	.cart66 .cart66-form .alert-error ul li {
		font-size: 16px !important;
		font-family: 'Lato', sans-serif;
	}

#content .cart66 .cart66-form form,
.cart66 .cart66-form form,
#content .cart66,
.cart66 {
	margin:0 !important;
}

#checkout.btn {
	letter-spacing: 1px;
}

.single-page-slurp #search_link,
.single-page-slurp #head_cart,
.single-page-slurp #socnets_wrap,
.page-template-page-cart66-php #search_link,
.page-template-page-cart66-php #head_cart,
.page-template-page-cart66-php #socnets_wrap {
	display: none;
}

.single-page-slurp .btn,
.single-page-slurp #continue-shopping.btn,
.page-template-page-cart66-php .btn,
.page-template-page-cart66-php #continue-shopping.btn {
	background-image: none !important;
	background-color:#F5F5F5 !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    box-shadow: none !important;
    line-height: 30px !important;
    text-shadow: none !important;
    -webkit-border-radius: 0 !important;
	-moz-border-radius: 0 !important;
	border-radius: 0 !important;
	font-weight: 900 !important;
}

	.single-page-slurp #checkout.btn .icon-arrow-right,
	.page-template-page-cart66-php #checkout.btn .icon-arrow-right {
		display: none !important;
	}

.button_light.single-page-slurp #checkout.btn,
.button_light.single-page-slurp #cart66-place-order.btn,
.button_light.page-template-page-cart66-php #checkout.btn,
.button_light.page-template-page-cart66-php #cart66-place-order.btn {
	color:#FFFFFF !important;
}

.button_dark.single-page-slurp #checkout.btn,
.button_dark.single-page-slurp #cart66-place-order.btn,
.button_dark.page-template-page-cart66-php #checkout.btn,
.button_dark.page-template-page-cart66-php #cart66-place-order.btn {
	color:#505050 !important;
}

.single-page-slurp #cart66-place-order.btn,
.page-template-page-cart66-php #cart66-place-order.btn {
	height: 50px !important;
}

.single-page-slurp textarea,
.page-template-page-cart66-php textarea {
	width: 100% !important;
}

.single-page-slurp select,
.page-template-page-cart66-php select {
	height: 38px !important;
    line-height: 38px !important;
    padding: 8px 5px !important;
    min-width: 50%;
}

	.page-template-page-cart66-php #content select#order_credit_card_expiration_month,
	.page-template-page-cart66-php #content select#order_credit_card_expiration_year {
		min-width: 24% !important;
	    width:24% !important;
		background-color:pink !important;
		margin-right:1.7%
	}

.single-page-slurp input[type="text"],
.single-page-slurp input[type="password"],
.single-page-slurp input[type="url"],
.single-page-slurp input[type="email"],
.single-page-slurp input[type="tel"],
.single-page-slurp input[type="number"],
.page-template-page-cart66-php input[type="text"],
.page-template-page-cart66-php input[type="password"],
.page-template-page-cart66-php input[type="url"],
.page-template-page-cart66-php input[type="email"],
.page-template-page-cart66-php input[type="tel"],
.page-template-page-cart66-php input[type="number"] {
	-moz-box-sizing:border-box !important;
	-webkit-box-sizing:border-box !important;
	box-sizing:border-box !important;
	min-width: 50%;
}

.single-page-slurp #content .cart66 .table-condensed th,
.single-page-slurp .cart66 .table-condensed th,
.single-page-slurp #content .cart66 .table-condensed td,
.single-page-slurp .cart66 .table-condensed td,
.page-template-page-cart66-php #content .cart66 .table-condensed th,
.page-template-page-cart66-php .cart66 .table-condensed th,
.page-template-page-cart66-php #content .cart66 .table-condensed td,
.page-template-page-cart66-php .cart66 .table-condensed td {
	padding: 10px 5px !important;
}

.single-page-slurp .cart66 .cart66-form .order-summary legend,
.single-page-slurp .cart66 .cart66-form .payment-methods legend,
.page-template-page-cart66-php .cart66 .cart66-form .order-summary legend,
.page-template-page-cart66-php .cart66 .cart66-form .payment-methods legend {
	margin-bottom: 20px !important;
}

.single-page-slurp .cart66 .cart66-form > fieldset legend,
.page-template-page-cart66-php .cart66 .cart66-form > fieldset legend {
	border-bottom: none !important;
}

.single-page-slurp .cart66 .order-summary .table tr:first-child td,
.single-page-slurp .cart66 .payment-methods .table tr:first-child td,
.page-template-page-cart66-php .cart66 .order-summary .table tr:first-child td,
.page-template-page-cart66-php .cart66 .payment-methods .table tr:first-child td {
	border-top: none !important;
}

/* ============================================== CART66 ============================================== */

#viewCartTable {
    margin: 12px 0px 12px 0px;
    border: 1px solid #CCCCCC;
    width: 100%;
    clear: both;
    border-collapse: collapse;
}

    #viewCartTable th {
        border-bottom: 1px solid #CCCCCC
    }

    #viewCartTable td,
    #viewCartTable th {
        padding: 5px 5px 5px 5px;
        margin: 0px;
        vertical-align: middle;
        line-height: 1.5em;
    }

    #viewCartTable th {
        background-color: #EEEEEE;
        vertical-align: middle;
    }

    #viewCartTable td.noBorder,
    #viewCartTable tr.subtotal,
    #viewCartTable tr.subtotal td,
    #viewCartTable tr.shipping td,
    #viewCartTable tr.tax-row td,
    #viewCartTable tr.total td,
    .noBorder td {
        border-top: none !important;
        border: none !important;
    }

#content #viewCartTable .cart66-align-right {
    text-align: right
}

.cart66-align-center {
    text-align: left
}

.alignRight {
    text-align: right !important
}

.alignLeft {
    text-align: left !important
}

.strong {
    font-weight: bold !important
}

#viewCartTableNav {
    margin: 0px;
    width: 100%;
    border: none !important;
    display: table;
}

#continueShopping,
#checkoutShopping {
    display: inline-block;
    *display: inline;
    zoom: 1;
}

#continueShopping {
    float: left
}

#checkoutShopping {
    float: right
}

#Cart66CheckoutReplacementText {
    width: 50%;
    margin: 10px auto;
    font-weight: bold;
}

.Cart66TermsOfServiceWrapper {
    width: 50%;
    margin: 0 auto;
    border: 1px solid #cccccc;
    background-color: #efefef;
}

    .Cart66TermsOfServiceWrapper div {
        margin: 10px
    }

    .Cart66TermsOfServiceWrapper .Cart66AcceptTermsButton {
        display: block;
        width: 200px;
        margin: 20px auto;
    }

.Cart66TermsTitle {
    font-style: italic
}

#viewCartTable a,
#viewCartTable tbody,
#viewCartTable img,
#viewCartTableNav a,
#viewCartTableNav tr,
#viewCartTableNav th,
#viewCartTableNav td,
#viewCartTableNav tbody,
#viewCartTableNav img {
    border: none !important
}

#continueShopping {
    border: none
}

input[type=submit] {
    cursor: pointer
}

#paypalCheckout {
    width: 145px
}

.Cart66Error {
    background-color: #FEE;
    border: 1px solid red;
    padding: 15px;
    margin: 15px 0px;
    clear: both;
}

#Cart66ForgotPassword {
    display: none
}

#Cart66ReceiptExpectation {
    margin-top: 7px;
    font-style: italic;
}

.Cart66NewsletterList .Cart66CheckboxList,
#Cart66ExpressReview ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.Cart66Price {
    font-weight: bold;
    font-size: 1.2em;
    margin: 3px 7px 4px 0px;
    display: inline-block;
}

a .Cart66Price {
    display: inline
}

.Cart66UserQuantity {
    display: inline-block
}

.Cart66PriceBlock,
.Cart66PriceDescription {
    display: block
}

.Cart66CustomFieldDesc {
    color: #777;
    font-style: italic;
    display: block;
    padding: 0px;
    margin: 0px;
}

.Cart66CustomTextField {
    width: 225px
}

.Cart66CustomTextarea {
    width: 225px;
    height: 90px;
}

.Cart66TableMed {
    width: auto;
    border: 0px;
    border-collapse: collapse;
}

    .Cart66TableMed th,
    .Cart66TableMed td {
        margin: 0px;
        text-align: left;
        border: none;
        padding: 3px 7px;
    }

    .Cart66TableMed td {
        border-top: 1px solid #CFCFCF
    }

    .Cart66TableMed td.canceled {
        color: #858585
    }

.Cart66Note {
    color: #888
}

.Cart66GravityFormDisplay {
    display: block
}

.Cart66RemoveFormLink {
    display: inline-block;
    width: 100%;
    text-align: right;
}

.Cart66ProRequired {
    font-weight: normal;
    color: #B33;
    font-size: 11px;
    background-color: #FEE;
    border: 2px solid #B33;
    padding: 3px;
    text-align: center;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

    .Cart66ProRequired a {
        color: #933;
        font-weight: bold;
    }

.Cart66Unavailable h2 {
    line-height: 1.5em !important
}

.Cart66Unavailable p {
    line-height: 1.2em !important
}

.Cart66OutOfStock {
    color: #70091A;
    font-weight: bold;
    font-size: 16px;
}

.Cart66AjaxWarning {
    color: #C00;
    border: 1px solid #C55;
    background-color: #EEE;
    width: 200px;
    padding: 7px;
}

.inventoryCountTableModal {
    margin: 5px 0px;
    padding: 10px;
    width: 100%;
    border-collapse: collapse;
}

    .inventoryCountTableModal td {
        padding: 3px 5px;
        border-bottom: 1px solid #CCC;
    }

/* Cart66 Widget CSS */

#Cart66WidgetCartLink {
    display: block
}

/* Cart66 Button CSS */

.Cart66ButtonPrimary,
.Cart66ButtonSecondary,
#content .Cart66ButtonPrimary,
#content .Cart66ButtonSecondary,
.Cart66CartButton .purAddToCart {
    display: inline-block;
    font-size: 12px;
    line-height: 20px;
    height: 20px;
    padding: 0 1em;
    border: 1px solid #454545;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    cursor: pointer;
}

.Cart66CartButton input[type="text"],
.Cart66CartButton input[type="password"],
.Cart66CartButton input[type="url"],
.Cart66CartButton input[type="email"],
.Cart66CartButton input[type="tel"],
.Cart66CartButton input[type="number"],
.Cart66CartButton select {
	max-width: 100%;
	min-height: 40px !important;
	line-height: 40px !important;
}

	.Cart66CartButton input[type="text"].input-mini {
		min-width: 80px;
	}

.Cart66CartButton textarea {
	max-width: 100%;
}

.ajaxPurAddToCart {
    color: #888 !important;
    background-color: #fff !important;
    border-color: #ccc !important;
}

.Cart66ButtonSecondary {
    background-color: #2C3538
}

#Cart66CheckoutButtonDiv .Cart66ButtonPrimary {
    margin: 20px 30px
}

#couponCode,
#updateCart {
    display: block;
    float: right;
    margin: 0;
    clear: both;
}

a.Cart66ButtonPrimary,
a.Cart66ButtonSecondary {
    text-decoration: none;
    color: #FFFFFF;
}

/* Cart66 Form CSS */

.Cart66Success,
.Cart66Error,
.Cart66Warning {
    background-color: #FEE;
    border: 1px solid red;
    margin: 10px 0px;
    padding: 5px 20px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    color: #633;
}

#minAmountMessage.Cart66Error {
    width: auto
}

.Cart66Success {
    background-color: #EFE;
    border: 1px solid green;
    color: #252;
}

    .Cart66Success h1 {
        color: #BCB
    }

.Cart66Error h1 {
    color: #CBB;
    font-size: 1.5em;
}

.Cart66Warning {
    background-color: #FDF5E3;
    border: 1px solid #FDEE54;
}

.phorm2 {
    clear: both;
}

    .phorm2 .errorField {
        border: 1px solid red;
        background-color: #FEE;
    }

#ccInfo h2 {
    font-size: 20px;
    margin: 20px 0 0;
}

#ccInfo ul {
    margin: 0
}

#ccInfo li {
    clear: none
}

.phorm2 ul {
    margin: 0px;
    padding: 0px;
}

    .phorm2 ul li {
        list-style: none !important;
        background-image: none;
        margin: 0px;
        padding: 10px 0 !important;
    }

    	.phorm2 ul li.hide-tax-block {
	    	padding:0 !important;
    	}

        .phorm2 ul li label {
            display: inline-block;
            width: 135px;
            text-align: left;
            vertical-align: top;
            margin-top: 3px;
            margin-right: 3px;
            float: none;
        }

        .phorm2 ul li input {
            margin: 0
        }

        .phorm2 ul li label.short {
            width: 80px
        }

.phorm2 ul.shortLabels li label {
    width: 120px
}

.phorm2 ul li span.description,
.phorm2 ul li p.description {
    color: #858585;
    font-style: italic;
    margin: 0px 0px 0px 160px;
    padding: 2px 0px 3px 0px;
    line-height: 1.2em !important;
}

.phorm2 ul li span.description {
    margin: 0px 0px 0px 7px
}

.phorm2 ul.shortLabels li p.description {
    margin-left: 90px
}

.phorm2 .button {
    width: 75px
}

.phorm2 .Cart66ErrorField,
input.Cart66ErrorField {
    background-color: #FEE;
    border: 1px solid #F75;
    padding: 3px;
}

.phorm2 .stateField {
    width: 25px !important;
    margin-left: 2px;
}

.phorm2 input[type=text],
.phorm2 input[type=password] {
    width: 130px
}

.phorm2 p {
    margin-bottom: 2px !important
}

.state_text_field {
    display: none
}

/* Gravity Forms Cart View Styles */

table .entry-details {
    width: 100%
}

    table .entry-details tbody {
        padding: 0px;
        margin: 0px;
        background-color: #fff;
    }

#viewCartTable td .entry-view-field-name {
    font-weight: bold;
    background-color: #eee;
    margin: 0px;
    border: none;
}

td .entry-view-field-value {
    padding-left: 25px !important;
    border: none !important;
}

#ccInfo input[type=text],
#accountInfo input[type=text],
#accountInfo input[type=password] {
    width: 45%
}

#ccInfo #payment-securityId {
    width: 30px
}

#ccInfo input[type="checkbox"] {
	position: relative;
	top:2px;
}

#paypalexpresscheckout {
    clear: both;
    float: right;
    margin: 10px 10px 0px 0px;
}

#PayPalExpressCheckoutButton {
    margin-right: 7px;
    text-align: left;
}

/* checkout-form.php */

#payment-cardExpirationYear {
    margin: 0
}

li .description {
    color: #757575
}

.Cart66Hidden {
    visibility: hidden
}

.noBottomBorder {
    border-bottom: none
}

span.subscriptionOrMembership {
    padding: 0px 1px 0px 10px;
    display: inline-block;
    width: 35px;
    background-color: transparent;
}

.itemQuantity {
    width: 35px;
    margin-left: 5px;
}

#emptyCartMsg {
    text-align: center
}

#set_shipping_zip_row th,
#shipping_to_row th {
    text-align: right
}

.haveCoupon,
.promoMessage {
    margin-bottom: 0;
    padding: 0;
}

.promoMessage {
    float: right;
    clear: both;
    margin: 5px 0;
    padding: 5px 10px;
    color: #746e0a;
    border: 1px dashed #d7cc1c;
    background-color: #fefbbc;
}

.haveCoupon input {
    margin-bottom: 0
}

.phorm2 h2 {
    clear: none
}

#ccInfo {
	float: left;
}

#billingInfo,
#shippingInfo,
#paymentInfo,
#accountInfo,
#Cart66CheckoutButtonDiv {
    float: left;
    width: 50%;
}

#Cart66ExpressReview {
    overflow: hidden
}

    #Cart66ExpressReview #shippingInfo {
        float: none;
        margin-left: 51%;
        width: auto;
    }

#createAccountDiv {
    margin-top: 20px
}

/* because IE7 misbehaves */

*:first-child+html #billingInfo {
    margin: 0 -1% 0 0
}

*:first-child+html #shippingInfo {
    clear: both
}

#shippingAddress {
    display: none
}

/* TOS Styles */

.Cart66ShortcodeTOS {

}

.Cart66CartTOS {

}

.Cart66TermsOfServiceWrapper {
    clear: both;
    padding: 10px 0px;
}

.Cart66TermsTitle {

}

.Cart66TermsText {

}

.Cart66TermsAcceptance {

}

.Cart66AcceptTermsButton {

}

/* Advanced widget styles */

.Cart66AdvancedWidgetCartTable {
    width: 100%
}

    .Cart66AdvancedWidgetCartTable td,
    .Cart66AdvancedWidgetCartTable th,
    .Cart66AdvancedWidgetCartTable tbody {
        border: none
    }

    .Cart66AdvancedWidgetCartTable tr {
        border-bottom: 1px solid #efefef
    }

    .Cart66AdvancedWidgetCartTable .Cart66ShippingToRow {
        border-bottom: none
    }

    .Cart66AdvancedWidgetCartTable .Cart66SubtotalRow,
    .Cart66AdvancedWidgetCartTable .Cart66ShippingRow {
        border: none;
        line-height: 35px;
        height: 35px;
        text-align: right;
        font-weight: bold;
    }

.Cart66ProductTitle,
.Cart66ProductSubtotal {
    font-weight: bold
}

.Cart66QuanPrice {
    display: block;
    font-style: italic;
}

.Cart66ProductSubtotalColumn,
.Cart66ShippingRow td {
    text-align: right
}

.Cart66WidgetViewCartCheckoutItems,
.Cart66WidgetViewCartCheckoutEmpty {
    text-align: center
}

#wp-admin-bar-cart66 {
    width: 55px !important;
}

#wpadminbar .cart66AdminBarIcon {
    position: absolute;
    margin: -20px 0px 0px 10px;
    width: 36px !important;
    height: 12px !important;
    background-image: url('../../plugins/cart66/images/cart66_admin_button.png');
    background-repeat: no-repeat;
}

#wp-admin-bar-cart66.hover .cart66AdminBarIcon {
    background-image: url('../../plugins/cart66/images/cart66_tiny_type.png')
}

/************************************************************
* Alert Messages
************************************************************/

.summary-message {
    background-color: lightYellow;
    border: 1px solid #E6DB55;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    padding: .3em;
}

.alert ul {
	margin: 0 0 0 20px !important;
}

.cart66 .cart66-form .ajax_add_to_cart_message .alert .cc_ajax_message {
	display: block;
	line-height: 20px;
}

.cart66 .cart66-form a.ajax_view_cart_button {
	display: block !important;
	margin: 10px auto 0 !important;
}

.ajax_add_to_cart_message {
	position: relative;
}

.alert-message.alert-danger,
.alert-message.alert-danger:hover,
.alert-message.alert-error,
.alert-message.alert-error:hover,
.alert-message.success,
.alert-message.success:hover,
.alert-message.info,
.alert-message.info:hover,
.alert-message .header {
    color: white
}

.alert-message .close {
    position: relative;
    top: -2px;
    right: -5px;
    line-height: 18px;
}

.alert-message .close {
    float: right;
    font-size: 20px;
    font-weight: bold;
    line-height: 18px;
    color: #000000;
    text-shadow: 0 1px 0 #ffffff;
    opacity: 0.2;
    filter: alpha(opacity=20);
}

.alert-message .close:hover {
    color: #000000;
    text-decoration: none;
    opacity: 0.4;
    filter: alpha(opacity=40);
    cursor: pointer;
}

.alert-message ul {
    margin:10px 0 0;
}

.alert-message.alert-danger,
.alert-message.alert-error {
    background-color: #c43c35;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35));
    background-image: -webkit-linear-gradient(#ee5f5b, #c43c35);
    background-image: -moz-linear-gradient(#ee5f5b, #c43c35);
    background-image: -o-linear-gradient(#ee5f5b, #c43c35);
    background-image: -ms-linear-gradient(#ee5f5b, #c43c35);
    background-image: linear-gradient(#ee5f5b, #c43c35);
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    border-color: #c43c35 #c43c35 #882a25;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.alert-message.success {
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #62c462), color-stop(100%, #57a957));
    background-image: -webkit-linear-gradient(#62c462, #57a957);
    background-image: -moz-linear-gradient(#62c462, #57a957);
    background-image: -o-linear-gradient(#62c462, #57a957);
    background-image: -ms-linear-gradient(#62c462, #57a957);
    background-image: linear-gradient(#62c462, #57a957);
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    border-color: #57a957 #57a957 #3d773d;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.alert-message.info {
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5bc0de), color-stop(100%, #339bb9));
    background-image: -webkit-linear-gradient(#5bc0de, #339bb9);
    background-image: -moz-linear-gradient(#5bc0de, #339bb9);
    background-image: -o-linear-gradient(#5bc0de, #339bb9);
    background-image: -ms-linear-gradient(#5bc0de, #339bb9);
    background-image: linear-gradient(#5bc0de, #339bb9);
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    border-color: #339bb9 #339bb9 #22697d;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.alert-message.hint {
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ececec), color-stop(100%, #efefef));
    background-image: -webkit-linear-gradient(#ececec, #efefef);
    background-image: -moz-linear-gradient(#ececec, #efefef);
    background-image: -o-linear-gradient(#ececec, #efefef);
    background-image: -ms-linear-gradient(#ececec, #efefef);
    background-image: linear-gradient(#ececec, #efefef);
    text-shadow: none;
    border-color: #ececec #ececec #efefef;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

:root .alert-message,
:root .btn {
    border-radius: 0 \0
}

.alert-message {
    position: relative;
    padding: 7px 15px!important;
    margin-bottom: 18px;
    margin-right: 25px;
    color: #404040;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fceec1), color-stop(100%, #eedc94));
    background-image: -webkit-linear-gradient(#fceec1, #eedc94);
    background-image: -moz-linear-gradient(#fceec1, #eedc94);
    background-image: -o-linear-gradient(#fceec1, #eedc94);
    background-image: -ms-linear-gradient(#fceec1, #eedc94);
    background-image: linear-gradient(#fceec1, #eedc94);
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    border-color: #eedc94 #eedc94 #e4c652;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    border-width: 1px;
    border-style: solid;
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    -o-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
}

    .alert-message a {
        font-weight: bold;
        color: #404040;
    }

    .alert-message.alert-danger p a,
    .alert-message.alert-error p a,
    .alert-message.success p a,
    .alert-message.info p a,
    .alert-message.info h1 a,
    .alert-message.info h2 a,
    .alert-message h1,
    .alert-message h2,
    .alert-message h3,
    .alert-message .header {
        color: white
    }

    .alert-message h5 {
        line-height: 18px
    }

    .alert-message p {
        margin-bottom: 0;
        margin-top: 0;
    }

    .alert-message div {
        margin-top: 5px;
        margin-bottom: 2px;
    }

    .alert-message .btn {
        -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
        -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
        -o-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
    }

.alert-message.block-message {
    background-image: none;
    background-color: #fdf5d9;
    padding: 14px!important;
    border-color: #fceec1;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
    box-shadow: none;
}

    .alert-message.block-message ul,
    .alert-message.block-message p {
        margin-right: 30px
    }

    .alert-message.block-message ul {
        margin-bottom: 0
    }

    .alert-message.block-message li {
        color: #404040
    }

    .alert-message.block-message .alert-actions {
        margin-top: 5px
    }

.alert-message.block-message.alert-error,
.alert-message.block-message.success,
.alert-message.block-message.info {
    color: #404040;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
}

.alert-message.block-message.alert-error {
    background-color: #fddfde;
    border-color: #fbc7c6;
}

.alert-message.block-message.success {
    background-color: #d1eed1;
    border-color: #bfe7bf;
}

.alert-message.block-message.info {
    background-color: #ddf4fb;
    border-color: #c6edf9;
}

    .alert-message.block-message.alert-danger p a,
    .alert-message.block-message.alert-error p a,
    .alert-message.block-message.success p a,
    .alert-message.block-message.info p a {
        color: #404040
    }

.show-tax-row {
    display: table-row
}

.show-tax-block {
    display: block
}

.hide-tax-block,
.hide-tax-row,
.ajax-spin {
    display: none
}

table.order-summary {
    margin: 0;
    border: none;
    width: 90%;
}

    table.order-summary td {
        border: none;
        padding: 0 10px 0 0;
    }

.tax-update {
    display: none
}

.tax-update-message {
    display: inline-block
}

textarea#checkout-custom-field-multi {
    width: 100%;
    height: 100px;
}

input#checkout-custom-field-single {
    width: 250px
}

/* overrides */

#Cart66WidgetCartContents,
#Cart66AdvancedSidebarAjax {
    background-color: #F8F8F8;
    border-top: 3px solid #E5E5E5;
    padding: 10px;
}

#Cart66WidgetCartEmpty {
    text-align: center
}

.single-products .gfield_price .gfield_label,
.single-cc_product .gfield_price .gfield_label,
.single-products .ginput_product_price_label,
.single-cc_product .ginput_product_price_label {
    display: none
}

#Cart66WidgetCartContents:after {
	content:'';
	display: block;
	clear:both;
}

#Cart66WidgetViewCart,
#Cart66WidgetCheckout {
	margin-top: 10px;
	color:#A2A2A2;
}

#Cart66WidgetViewCart {
	float: left;
}

#Cart66WidgetCheckout {
	float: right;
}

#Cart66WidgetLinkSeparator {
	display: none;
}

/* Add To Cart */

.Cart66CartButton {
    line-height: 30px
}

.single-products #content .Cart66CartButton,
.single-cc_product #content .Cart66CartButton,
.single-products .gform_wrapper,
.single-cc_product .gform_wrapper {
    line-height: 30px;
    width: 100%;
    padding:0;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

.single-products .gform_wrapper,
.single-cc_product .gform_wrapper {
    text-align: center
}

.Cart66UserQuantity {
    display: block;
    margin: 0 10px 10px 0;
    float: left;
    width: 140px;
}

.single-products .Cart66UserQuantity,
.single-cc_product .Cart66UserQuantity {
    margin: 0 0 10px
}

.Cart66UserQuantity label {
    float: left;
    margin: 0;
}

.Cart66UserQuantity input,
.single-products .gform_wrapper input,
.single-cc_product .gform_wrapper input {
    height: 20px;
    padding: 4px 10px;
    width: 30px;
    line-height: 20px;
    border: 1px solid #E5E5E5;
    background-color: #FFFFFF;
    float: right;
}

.Cart66CartButton select,
.single-products .gform_wrapper select,
.single-cc_product .gform_wrapper select {
    height: 42px !important;
    padding: 10px !important;
    width: 100%;
    line-height: 20px;
    border: 1px solid #E5E5E5;
    background-color: #FFFFFF;
    margin: 0 0 10px;
    -webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

.Cart66UserQuantity input:focus,
.single-products .gform_wrapper input:focus,
.single-cc_product .gform_wrapper input:focus {
    border: 1px solid #9C9C9C
}

#content .Cart66Price,
.single-products .ginput_product_price,
.single-cc_product .ginput_product_price,
.single-products .ginput_total,
.single-cc_product .ginput_total {
    display: block;
    font-size: 40px;
    padding: 5px 0;
    font-weight: normal;
}

.single-products .ginput_total,
.single-cc_product .ginput_total {
    display: block;
    font-size: 20px;
    line-height: 20px;
    padding: 5px 0;
    font-weight: normal;
}

#content .Cart66PriceDescription {
    display: block;
    font-size: 22px;
    padding: 5px 0;
    font-weight: normal;
}

#content .Cart66Price .Cart66DecimalSep {
    position: relative;
    top: -12px;
    font-size: 22px;
    left: 2px;
}

#content .Cart66Price .Cart66PostDecimal {
    position: relative;
    top: -12px;
    font-size: 22px;
    left: 2px;
}

#content .Cart66Price .Cart66CurrencySymbol {
	font-size: 22px;
    left: -1px;
    position: relative;
    top: -11px;
}

.single-products #content .Cart66Price,
.single-cc_product #content .Cart66Price,
.single-products #content .Cart66PriceDescription,
.single-cc_product #content .Cart66PriceDescription,
.single-products .ginput_product_price,
.single-cc_product .ginput_product_price,
.single-products .ginput_total,
.single-cc_product .ginput_total,
.single-products .cart66_shortcode_wrap,
.single-cc_product .cart66_shortcode_wrap {
	line-height: 1em;
    padding: 20px 30px 10px;
    margin: 0;
    width: 100%;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

.single-products .ginput_product_price,
.single-cc_product .ginput_product_price,
.single-products .ginput_total,
.single-cc_product .ginput_total {
	border-bottom:1px dotted #CBCBCB;
}

.single-cc_product .Cart66Price.Cart66PriceBlock,
.single-products #content .Cart66Price.Cart66PriceBlock {
    padding-bottom: 10px;
    padding-top: 40px;
}

.Cart66CartButton input[type="submit"],
.Cart66CartButton .Cart66ButtonPrimary,
.single-products .gform_wrapper input.button,
.single-cc_product .gform_wrapper input.button {
    width: 100% !important;
    text-align: center;
    margin-top: 10px !important;
    height: 40px;
    line-height: 40px;
    font-size: 16px !important;
}

#aff_info_wrap {
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	width: 100%;
	padding:20px 30px;
}

	#aff_info_wrap .Cart66Price {
		padding: 10px 0 0 !important;
	}

	#aff_info_wrap .Cart66ButtonPrimary {
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		margin-top: 30px !important;
	}

.Cart66CartButton .aff_info {
    background-color: #1A1A1A;
    background-color: rgba(0, 0, 0, 0.2);
    font-size: 12px;
    line-height: 1.8em;
    margin: 30px 0 0;
    padding: 9px;
    text-align: center;
    width: 100%;
    -moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

.Cart66PriceLabel {
    display: none
}

.cart66_edit_product_link {
    display: none
}

.Cart66UserPrice {
	padding-top: 12px;
	display: block;
}

.Cart66UserPrice:after {
	content:'';
	clear:both;
}

.Cart66UserPrice input {
    height: 20px;
    padding: 4px 10px;
    width: 100px;
    float: right;
    line-height: 20px;
    border: 1px solid #CFCFCF;
    background: none repeat scroll 0 0 #FFFFFF;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin-left: 2px;
    margin-bottom: 10px;
}

.ginput_container:after {
    content: '';
    display: block;
    height: 0;
    width: 0;
    clear: both;
}

/* Login */

#Cart66AccountLogin {
    float: left;
    width: 370px;
    min-width: 310px;
}

    #Cart66AccountLogin input[type="text"],
    #Cart66AccountLogin input[type="password"],
    #Cart66ForgotPassword input[type="text"],
    #Cart66ForgotPassword input[type="password"] {
        width: 160px
    }

    #Cart66AccountLogin ul li label,
    #Cart66ForgotPassword ul li label {
        margin: 0;
        text-align: left;
        line-height: 30px;
        width: 90px;
    }

    #Cart66AccountLogin ul li {
        position: relative
    }

    #Cart66AccountLogin #forgotLink {
        font-size: 12px;
        position: absolute;
        right: 75px;
        top: 7px;
    }

    #Cart66AccountLogin .Cart66ButtonPrimary,
    #Cart66ForgotPassword .Cart66ButtonPrimary {
        float: none !important
    }

#Cart66ForgotPassword .Cart66ButtonPrimary {
    position: absolute;
    left: 305px;
    top: -34px;
}

#Cart66ForgotPassword {
    border-top: 1px dashed #E7E7E7;
    padding-top: 20px;
    margin-top: 20px;
}

    #Cart66ForgotPassword ul {
        margin-top: 10px
    }

        #Cart66ForgotPassword ul li {
            position: relative
        }

#content .Cart66Error {
    text-align: center;
    margin: 30px 0;
}

#Cart66ExpressReview {
    padding-top: 30px
}

    #Cart66ExpressReview ul li {
        list-style: none outside none;
        margin: 0;
    }

#createAccountDiv {
    margin-top: 40px !important
}

.phorm2 input[type="text"],
.phorm2 input[type="password"] {
    width: 180px !important
}

/* Checkout */

#shippingAddressCheckbox label[for=sameAsBilling] {
    width: 185px !important;
}

#shippingAddressCheckbox input #sameAsBilling {
    margin: 7px 0 0 0 !important
}

#content #viewCartTable {
    border: 1px solid #E0E0E0;
    background: #FFFFFF;
}

#Cart66CheckoutButtonDiv {
    margin: 0 !important;
    clear: both !important;
}

    #Cart66CheckoutButtonDiv #Cart66CheckoutButton {
        margin-left: 0 !important
    }

#content #viewCartTable th {
	text-align: left;
    background-color: #f1f1f1;
	background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(245, 245, 245)), to(rgb(238, 238, 238)));
	background-image: -webkit-linear-gradient(top, rgb(245, 245, 245), rgb(238, 238, 238));
	background-image: -moz-linear-gradient(top, rgb(245, 245, 245), rgb(238, 238, 238));
	background-image: -o-linear-gradient(top, rgb(245, 245, 245), rgb(238, 238, 238));
	background-image: -ms-linear-gradient(top, rgb(245, 245, 245), rgb(238, 238, 238));
	background-image: linear-gradient(top, rgb(245, 245, 245), rgb(238, 238, 238));
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f5f5f5', EndColorStr='#eeeeee');
}

#viewCartTable td,
#viewCartTable th {
    padding: 10px !important
}

#content #viewCartTable tr.subtotal {
    background-color: #F1F1F1;
    border-bottom: 1px solid #E0E0E0 !important;
    border-top: 1px solid #E0E0E0 !important;
}

#viewCartTable span.subscriptionOrMembership {
    padding: 0 1px 0 17px;
    width: 44px;
}

input[type="text"].itemQuantity {
    width: 35px
}

#emptyCartMsg h3 {
    margin-bottom: 30px
}

#emptyCartMsg .Cart66ButtonSecondary {
    float: none !important;
    margin: auto;
}

.Cart66Success h2,
.Cart66Error h2,
.Cart66Warning h2 {
    margin-top: 0
}

.promoMessage {
    margin: 10px 0 15px !important;
    padding: 5px 10px !important;
}

.haveCoupon {
    text-align: left
}

#couponCode {
    margin-right: 20px !important
}

    #couponCode input[type="text"] {
        width: 87px
    }

#updateCart {
    float: left !important;
    clear: none !important;
}

#couponCode {
    float: left !important
}

#continueShopping .Cart66ButtonSecondary,
#updateCart .Cart66ButtonSecondary,
.subtotal .Cart66ButtonSecondary {
    background-color: #BABABA !important;
    color: #343434 !important;
    text-shadow: 0 1px 0 #AAAAAA !important;
}

/* Media for anything with a max width of 1140px. Mostly smaller laptops and desktops */
@media
only screen and (min-width: 1025px) and (max-width: 1140px) {

	.container {
		width:940px;
	}

	.posts-wrap {
		width: 700px;
	}

	#sidebar {
		width: 200px;
	}

	/* Slides */

	.slide_image,
	.slide_desc {
		width: 400px;
	}

	.slide_image.center_slide {
		width: 500px;
	}

	/* Product Grids */

	.products_grid {
		width:960px;
		margin-right: -20px;
	}

	.single_grid_product {
		width:220px;
		height:220px;
		margin: 0 20px 20px 0;
	}

	#archive_grid {
		width:720px;
		margin: -20px -20px 0 0;
	}

		#archive_grid .single_grid_product {
			width:220px;
			height:220px;
			margin: 20px 20px 0 0;
		}

	/* Featured Products */

	#featured .products_grid {
		width: 990px;
		margin-right: -50px;
	}

	#featured .single_grid_product {
		width: 280px;
		height: 280px;
	}

	/* Products */

	#product_bar_wrap .posts-wrap {
		width: 610px;
	}

	/* Blog */

	img.alignright,
	img.alignleft,
	img.aligncenter,
	img.alignnone {
		max-width: 690px;
	}

	.about_the_author .author_info {
		width: 600px;
	}

	/* Footer */

	#footer_widgets,
	#footer_widgets.footer_widget_count4 {
	    width: 980px;
	    margin-right: -40px;
	}

	.footer_widget_count1 .footer_widget {
	    width: 940px
	}

	.footer_widget_count2 .footer_widget,
	.footer_widget_count4 .footer_widget {
	    width: 450px;
	    margin-right: 40px;
	}

	.footer_widget_count3 .footer_widget,
	.footer_widget_overflow .footer_widget {
	    width: 290px;
	    margin-right: 35px;
	}

	.footer_widget_count4 .footer_widget:nth-child(2n+1),
	.footer_widget_overflow .footer_widget:nth-child(3n+1) {
	    clear: both
	}

}

/* Media for anything with a max width of 960px. Mostly large tablets such as the iPad */
@media
only screen and (min-width: 768px) and (max-width: 1024px) {

	.container {
		width:740px;
	}

	.posts-wrap {
		width: 500px;
	}

	#sidebar {
		width: 200px;
	}

	/* Slides */

	.slide_image,
	.slide_desc {
		width: 320px;
	}

	.slide_image.center_slide {
		width: 500px;
	}

	/* Product Grids */

	.products_grid {
		width: 760px;
		margin-right: -20px;
	}

	.single_grid_product {
		width:170px;
		height:170px;
		margin:0 20px 20px 0;
	}

	#archive_grid {
		width:525px;
		margin: -25px -25px 0 0;
	}

		#archive_grid .single_grid_product {
			width:240px;
			height:240px;
			margin: 0 20px 20px 0;
		}

	/* Featured Products */

	#featured .products_grid {
		width: 780px;
		margin-right: -40px;
	}

	#featured .single_grid_product {
		width: 220px;
		height: 220px;
		margin-right: 40px;
	}

	/* Products */

	#product_bar_wrap .posts-wrap {
		width: 440px;
	}

	#cart_sidebar {
		width: 270px;
	}

	.product_title {
		width: 210px;
		font-size: 18px;
	}

	.single-products #content .Cart66CartButton,
	.single-cc_product #content .Cart66CartButton,
	.single-cc_product .gform_wrapper,
	.single-products .gform_wrapper {
		position: relative;
		float:right;
		margin:0 0 40px 40px;
	}

	/* Checkout */

	.phorm2 ul li label.Cart66Hidden {
		display: none;
	}

	/* Blog */

	img.alignright,
	img.alignleft,
	img.aligncenter,
	img.alignnone {
		max-width: 510px;
	}

	.about_the_author .author_info {
	    width: 400px;
	}

	/* Footer */

	#footer_widgets,
	#footer_widgets.footer_widget_count4 {
	    width: 780px;
	    margin-right: -40px;
	}

	.footer_widget_count1 .footer_widget {
	    width: 740px
	}

	.footer_widget_count2 .footer_widget,
	.footer_widget_count4 .footer_widget {
	    width: 350px;
	    margin-right: 40px;
	}

	.footer_widget_count3 .footer_widget,
	.footer_widget_overflow .footer_widget {
	    width: 220px;
	    margin-right: 40px;
	}

	.footer_widget_count4 .footer_widget:nth-child(2n+1),
	.footer_widget_overflow .footer_widget:nth-child(3n+1) {
	    clear: both
	}

	/* Forms */

	.entry-content .gform_wrapper .top_label input.large,
	.entry-content .gform_wrapper .top_label select.large,
	.entry-content .gform_wrapper .top_label textarea.textarea,
	textarea {
		width:100%;
	}

}

/* Media for anything with a max width of 767px. Mostly small tablets and iPhones & Smartphones */
@media
only screen and (min-width: 0px) and (max-width: 767px) {

	.container {
		width:280px;
	}

	.posts-wrap,
	#sidebar {
		width:100%;
	}

	/* Header */

	.the_logo,
	.the_logo img {
		float:none;
		text-align: center;
		margin: auto;
	}

	#head_cart {
		text-align: center;
		background-color: #F2F2F2;
		width: 80%;
	}

	/* Mobile Menu */

	#main_menu {
		padding: 20px 0;
	}

	#main_menu #menu_wrap {
		height: auto;
		margin:0;
	}

	#main_menu form div {
		position: relative;
	}

	select.select-menu {
		display: block;
		width: 100%;
	}

	#main_menu select.select-menu {
		display: block;
	    position: relative;
	    z-index: 10;
	    width: 280px;
	    height: 40px;
	    line-height: 26px;
	    top:0;
	    margin-bottom: 20px;
	    -webkit-appearance: menulist-button;
	}

	#main_menu span.select {
		display: block;
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 280px;
	    height: 40px;
	    line-height: 40px;
	    font-size: 14px;
	    color: #6D6D6D;
	    text-indent: 50px;
	    background-color: #F2F2F2;
	    background-size:250px 43px;
	    cursor: default;
	    z-index: 1;
	    overflow: hidden;
	}

	#main_menu span.select:before {
        font-family: 'FontAwesome';
        content: "\f03a";
        position: absolute;
        left: -40px;
        top: 0px;
        display: block;
        font-size: 24px;
	}

	#main_menu ul {
	    display: none;
	}

	#search_link {
		width: 15%;
		text-align: center;
	}

	#search_link:before {
		font-size: 14px;
		line-height: 40px;
	}

	#search_wrap #searchform #s {
		margin: 20px 0 0;
		width: 100% !important;
	}

	#head_cart {
		float: left;
	}

	/* end Mobile Menu */

	/* Slides */

	.slide_image,
	.slide_desc {
		position: relative;
		width: 100%;
		left: auto !important;
		right: auto !important;
		top: auto !important;
	}

	.slide_desc {
		margin-top: 40px;
	}

	.slide_image.center_slide {
		width: 100%;
	}

	/* Product Grids */

	.single_grid_product,
	#featured .single_grid_product,
	#archive_grid .single_grid_product {
		width:280px;
		height:280px;
		margin:0 0 20px;
	}

	#featured .products_grid,
	.products_grid,
	#archive_grid {
		width: 100%;
		margin:0;
	}

	/* Products */

	.single-products #content .Cart66CartButton,
	.single-cc_product #content .Cart66CartButton,
	.single-products .gform_wrapper,
	.single-cc_product .gform_wrapper {
		position: relative;
		float:none;
		margin:0;
		padding:0;
		clear:both;
	}

    #content .cart66 .cart66-form input[type="text"].cart66-text,
    .cart66 .cart66-form input[type="text"].cart66-text {
        width: 100% !important;
    }

	#response_warning,
	#response_error,
	#response_success {
		margin:0 0 30px;
		width: auto;
	}

	#comments_container {
	    margin: 20px -9999px -100px;
	    padding: 20px 9999px 120px;
	}

	#cart_sidebar {
		margin: 40px -9999px -40px;
		padding: 40px 9999px;
	}

	.product_title {
		padding:0 9999px 40px;
		margin:0 -9999px;
		width: 100%;
	}

	/* Blog */

	.post_title {
		text-align: center;
	}

	img.alignright,
	img.alignleft,
	img.aligncenter,
	img.alignnone {
		max-width: 270px;
	}

	.about_the_author {
		padding: 15px;
		background-color:#F5F5F5;
	}

		.about_the_author .avatar {
	        float: none;
	        display: none;
	    }

		.about_the_author .author_info {
		    clear:both;
		    float: none;
		    width: 100%;
		}

		.about_the_author .author_links a {
			margin: 0;
			float:right;
		}

		.about_the_author .author_links a:first-child {
			float: left;
		}

	.the_comment {
		padding: 0;
	}

	ul.commentlist img.avatar {
		display: none;
	}

	/* Sidebar */

	#sidebar {
		background-color: #FCFCFC;
	    border-bottom: 5px solid #F2F2F2;
	    border-top: 5px solid #F2F2F2;
	    margin: 60px -9999px -80px;
	    padding: 60px 9999px 20px;
	}

	#recent_products {
		margin-right: -20px;
	}

		#recent_products a {
			width:80px;
			height:80px;
			margin:0 20px 20px 0;
		}

	/* Footer */

	#footer_widgets {
	    width: 100%;
	}

	#footer_widgets .footer_widget {
		float: none;
		width: 100%;
		margin: 0;
	}

	/* Forms */

	.entry-content .gform_wrapper input[type="text"],
	.entry-content .gform_wrapper input[type="url"],
	.entry-content .gform_wrapper input[type="email"],
	.entry-content .gform_wrapper input[type="tel"],
	.entry-content .gform_wrapper input[type="number"],
	.entry-content .gform_wrapper input[type="password"],
	.entry-content .gform_wrapper .top_label input.medium,
	.entry-content .gform_wrapper .top_label select.medium,
	input[type="text"],
	input[type="password"],
	input[type="url"],
	input[type="email"],
	input[type="tel"],
	input[type="number"] {
		width:100% !important;
	}
	
	.page-template-page-cart66-php #content select#order_credit_card_expiration_month,
	.page-template-page-cart66-php #content select#order_credit_card_expiration_year {
		width: 100% !important;
		margin-right: 0 !important;
	}
	
	.page-template-page-cart66-php #content select#order_credit_card_expiration_month {
		margin-bottom: 10px !important;
	}

	.entry-content .gform_wrapper .top_label input.large,
	.entry-content .gform_wrapper .top_label select.large,
	.entry-content .gform_wrapper .top_label textarea.textarea,
	.entry-content .gform_wrapper .left_label input.large,
	.entry-content .gform_wrapper .left_label select.large,
	.entry-content .gform_wrapper .left_label textarea.textarea,
	.entry-content .gform_wrapper .right_label input.large,
	.entry-content .gform_wrapper .right_label select.large,
	.entry-content .gform_wrapper .right_label textarea.textarea,
	textarea {
		width:100%;
		padding:10px;
	}

	#recaptcha_widget_div {
		max-width: 100%;
	}

}
