/*
    Layout: One Column
	Theme Name: Vanilla
	Description: Vanilla is a starter shopping cart theme for Infusionsoft.
	Author: Fusetastic
	Author URI: http://www.fusetastic.com
	Version: 1.0

	License: GNU General Public License v2.0 (or later)
	License URI: http://www.opensource.org/licenses/gpl-license.php
	HTML version 2

The following styles control the general layout of your store
===============================================================*/

* {
	margin: 0;
	padding: 0;
}
img, img a {
	border: 0 none;
}
#wrapper {
	/* Wraps around everything and sets the total width of the storefront */
	position: relative;
	/*width: 960px;
	margin: 0 auto;
	padding: 10px 10px 0 10px;*/
	width: 100%;
	padding: 0px;
}
#wrapper #content, #footer #customFooter {
	width: 1140px;
	padding: 0px;
	margin: 0 auto;
	max-width: 100%;
}
#wrapper #header {
}
#wrapper #header #IMAGE {
	display: block;
	clear: both;
	padding: 0px;
	width: 100%;
}
#wrapper #header #IMAGE #companyLogoTopBanner, #wrapper #header #NAVIGATION {
	width: 1140px;
	padding: 0px;
	margin: 0 auto;
	max-width: 100%;
}
#wrapperCheckout {
	/* Wrapper with 25px top margin to compensate for missing topNav on checkout pages */
	position: relative;
	width: 1140px;
	padding: 0px;
	margin: 0 auto;
	max-width: 100%;
}
/* TOP NAVIGATION AND HEADER
===============================================================*/

#topNav {
	/* Contains View Cart link and search field */
	display: block;
	clear: both;
	width: 1140px;
	padding: 10px 0px 0px;
	margin: 0 auto;
	font-size: 12px;
	min-height: 25px;
	text-align: right;
	max-width: 100%;
}
@media (max-width:768px){
	#topNav {
		width: auto;
		padding: 10px 10px 0px;
	}
}
#topNav ul {
	display: block;
	list-style: none;
	margin: 0;
}
#topNav li {
	padding-left: 30px;
	list-style-image: none;
	display: inline;
}
#header {
	/* The main header that contains your banner or logo */
	/*width: 960px;
	margin-bottom: 10px;*/
}
#nav {
	display: block;
	clear: both;
	width: 100%;
	min-height: 68px;
	text-align: right;
	/*width: 960px;
	overflow: hidden;
	margin-top: 10px;
	background: white;*/
}
#nav ul {
	display: block;
	list-style: none;
	margin: 0px;
	padding: 0px;
	text-align: right;
}
#nav li {
	list-style-image: none;
	display: inline-block;
	height: 68px;
	margin: 0px;
	padding: 0px;
}
#nav ul li:first-child, #nav ul li:last-child {
	display: none;
}
#nav ul ul li:first-child {
	display: block;
}
#nav li a {
	display: block;
	line-height: 68px;
	padding: 0px 15px;
}
#nav li a:hover {
	padding: 0px 15px;
}
.navHeader {
	margin: 30px 0 0 10px;
}
@media (max-width:768px){
	#nav ul {
		text-align: left;
	}
	#nav li {
		display: block;
		height: 34px;
	}
	#nav li a {
		display: block;
		line-height: 34px;
		padding: 0px 15px;
	}
}
/* CONTENT / PRODUCT
===============================================================*/

#content {
	/* Content wrapper used on browsing pages */
	position: relative;
	width: 960px;
	margin: 10px auto 0 auto;
}
#contentWide {
	/* Content wrapper used on checkout pages */
	position: relative;
	width: 1140px;
	margin: 35px auto 0;
	max-width: 100%;
}
#contentProductDetail {
	/* Content wrapper used on product details page */
	position: relative;
	width: 1140px;
	max-width: 100%;
	margin: 0px auto 15px;
}
@media (max-width:768px){
	#contentWide, #contentProductDetail {
		width: auto;
		padding: 0px 10px;
	}
}
#promoBanner {
	/* Large banner on home page */
	margin-bottom: 20px;
}
#breadcrumbs {
	margin: 0 0 15px 0;
}
#breadcrumbs ul {
	list-style: none;
	margin: 0;
}
#breadcrumbs li {
	padding-right: 10px;
	list-style-image: none;
	display: inline;
}
#breadcrumbs li:after {
	/* Symbol to be displayed between breadcrumbs */
	content: ">";
	margin-left: 10px;
}
#breadcrumbs li:last-child:after {
	/* Removes the > after last breadcrumb */
	content: "";
}
.productGrid {
	margin: 0px -15px;
}
.productGridOneCol {
	/* Container for product image and description in product grid */
	position: relative;
	width: 43%;
	min-height: 200px;
	padding: 13px;
	margin: 0px 2% 15px;
	float: left;
}
.productGrid div.productGridOneCol:nth-child(odd) {
	clear: left;
}
.productGrid div.productGridOneCol:nth-child(even) {
	float: right;
	clear: right;
}
@media (min-width:769px){
	.productGridOneCol a:first-child {
		display: block;
		width: 30%;
		float: left;
	}
	.productGridOneCol a:nth-child(2) {
		display: block;
		width: 65%;
		float: right;
		/*text-indent: 10px;*/
	}
}
@media (max-width:768px){
	.productGridOneCol a:first-child {
		display: block;
		width: 100%;
		clear: both;
	}
	#featured {
		padding: 10px;
	}
	.productGrid {
		margin: 0px;
		padding: 0px;
	}
	.productGrid div.productGridOneCol:nth-child(odd), .productGrid div.productGridOneCol:nth-child(even) {
		float: none;
		clear: both;
	}
	.productGridOneCol {
		/* Container for product image and description in product grid */
		display: block;
		width: auto;
		min-height: auto;
		float: none;
		margin: 0px 0px 15px;
	}
}
.productGridOneCol img {
	width: auto;
	max-width: 100%;
	margin: 0;
	/*float: left;*/
}
.price {
	/* Paragraph on product details page that contains product price */
	margin: 0 0 15px 0;
}
.productImage {
	/* Contains the image that appears in the product grid */
	width: auto;
	max-width: 100%;
	height: auto;
	margin-bottom: 5px;
}
.productImage img {
	/*float: left;*/
	max-width: 100%;
}
img.productLarge { 
	max-width: 100%;
}
#contentProductDetail img.productLarge {
	/* Large image on product details page */
	float: left;
	max-width: 28%;
	margin-bottom: 15px;
}
@media (max-width:768px){
	img.productLarge {
		float: none;
		display: block;
		max-width: 100%;
	}
}
.productQty {
	/* Product quantity field on product details page */
	padding: 4px 2px 4px 6px;
	height: 14px;
	width: 26px;
	display: block;
	text-align: right;
	margin-bottom: 5px;
}
#productDetails {
	width: 70%;
	float: right;
	clear: right;
	/* Container on product details that wraps around everything from product name to add to cart button */
	overflow: hidden;
	padding: 0px;
}
#productDescription {
	/* Contains the long product description on product details page */
	width: 70%;
	float: right;
	padding: 20px 0;
}
@media (max-width:768px){
	#productDetails, #productDescription {
		width: auto;
		float: none;
		clear: both;
	}
}
#productDescription ul {
	margin: 15px 30px 0;
}
.productDescriptionShort {
	/* Paragraph for short product description on product details page */
	margin: 0;
	width: auto;
}
.productDescriptionFront {
	/* Paragraph for product description in product grid */
	margin: 0;
	/*width: auto;
	clear: both;*/
	display: block;
    width: 65%;
    float: right;
}
@media (max-width:768px){
	 .productDescriptionFront {
		display: block;
		float: none;
		width: 100%;
		clear: both;
	}
}
#productDetails ul {
	margin: 15px 0 25px 0;
	width: auto;
}
#productDetails li {
	list-style-type: none;
	width: auto;
}
.productDrop {
	/* Dropdown list for product options */
	margin: 0;
}
.optionName {
	/* Label for product option dropdown */
	width: 60px;
	height: 20px;
	float: left;
}
table.productTable {
	margin: 20px 0 0 10px;
	padding: 4px;
}
.productTable td {
	padding: 4px;
}
td.bottom {
	vertical-align: bottom;
}
/* CART AND CHECKOUT
===============================================================*/

input {
	margin: 0 0 7px 0;
}
#signinContainer {
	width: 720px;
	margin: 40px auto 0 auto;
	padding-top: 40px;
}
#featured>h3{ display:none; }
/* Cart contents
---------------------------------------------*/

.qtyField {
	/* Quantity field in cart */
	padding: 4px 4px 4px 6px;
	height: 14px;
	width: 25px;
	display: block;
	text-align: right;
	margin: 0 auto;
	margin-bottom: 5px;
}
.cartThumb {
	/* Product thumbnail image in cart */
	float: left;
	margin: 0 10px 0 0;
}
.updateCart {
	font-size: 10px;
}
.updateCart a:link {
	text-decoration: none;
}
.paymentLabel {
	display: block;
}
.choosePlan {
	/* Class for radio buttons */
	margin-right: 5px;
}
.promoCode {
	/* Table that contains promo code field */
	width: auto;
	border-collapse: collapse;
	/* margin-bottom: 40px; */
}
.promoCode td {
	height: 30px;
	vertical-align: top;
}
.shippingOptions {
	/* Radio buttons for shipping options */
	margin: 0 10px 3px 0;
}
.address, .editInfo, .shippingOptions, .cardInfo, .shipInfo {
	margin: 0 0 4px 0;
	display: block;
}
.billName, .billStreet, .billCity, .shipName, .shipStreet, .shipCity {
	margin: 0;
	display: block;
}
/* Form fields and labels
---------------------------------------------*/

.checkout {
	/* Form fields used in checkout forms */
	padding: 4px 4px 4px 6px;
	margin: 0;
	width: 200px;
}
.checkoutBottom {
	/* Provides bottom padding for last form field in a form */
	padding: 4px 4px 4px 6px;
	margin: 0 0 20px 0;
	width: 200px;
	height: 18px;
}
.checkoutTop {
	/* Provides top padding for first form field in a form */
	padding: 4px 4px 4px 6px;
	margin: 10px 0 0 0;
	width: 200px;
	height: 18px;
}
.checkoutTopShort {
	/* Provides top padding for first form field in a form */
	padding: 4px 4px 4px 6px;
	margin: 10px 0 0 0;
	width: 125px;
	height: 18px;
}
.checkoutLabel {
	/* Checkout form label */
	padding: 0 0 -3px 0;
	margin: 0 0 -3px 0;
}
.checkoutShort, .search, .promoField {
	/* Smaller form field */
	padding: 4px;
	margin: 0;
	width: 125px;
}
.promoField {
	margin-left: 15px;
	margin-bottom: 20px;
}
.checkoutShortest {
	/* Even smaller form field */
	padding: 5px;
	margin: 0;
	width: 70px;
}
.signinField {
	/* Shorter form field for sign in table */
	padding: 4px 4px 4px 6px;
	margin: 0 0 0 0;
	width: 160px;
	height: 18px;
}
.signinTop {
	/* Provides top padding for first form field in sign in form */
	padding: 4px 4px 4px 6px;
	margin: 10px 0 0 0;
	width: 160px;
	height: 18px;
}
.signinLabel {
	/* Text label used in sign in table */
	text-align: right;
	width: 150px;
}
.paymentIcon {
	margin: 0 7px -5px 4px;
}
/* Tables
---------------------------------------------*/

.viewCart {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 20px;
	float: left;
}
.viewCart th, .viewCartShort th, .payPlan th, .summaryCart th, .shippingInfo th, .billingInfo th, .billingTable th, .shippingTable th, .paymentInfo th, .signinTable th, .paymentMethodTable th {
	padding: 10px 10px 10px 15px;
    padding: 15px 10px 15px 15px;
	text-align: left;
}
.viewCart td, .viewCartShort td, .payPlan td, .summaryCart td, .billingTable, .shippingInfo td, .billingInfo td, .paymentInfo td, .paymentMethodTable td {
	padding: 10px 10px 10px 15px;
	vertical-align: top;
}
.payPlan {
	/* Table on view cart page that contains available pay plans */
	width: 270px;
	border-collapse: collapse;
	margin: 50px 0 20px 20px;
	text-align: left;
	float: right;
}
.tableContainer {
	/* Wraps around cart table to make it stretch to 100% width when no payment plans are displayed */
	overflow: hidden;
}
.tableContainer > table {
	/* Sets cart table to 100% width when no payment plans are displayed */
	width: 100%;
}
.billingTable {
	/* Table for entering billing address */
    width: 100%;
	max-width: 100%;
	border-collapse: collapse;
	margin: 20px 0px;
	text-align: left;
	float: none;
	clear: both;
}
.shippingTable {
	/* Table for entering shipping address */
    width: 100%;
	max-width: 100%;
	border-collapse: collapse;
	margin: 20px 0 20px 0;
	text-align: left;
	float: none;
}
@media (min-width: 1140px) {
  .billingTable {
      width: 560px;
      margin: 20px 20px 20px 0;
      text-align: left;
      float: left;
  }
  .shippingTable {
      width: 560px;
      margin: 20px 0 20px 0;
      text-align: left;
      float: left;
  }
}
.paymentMethodTable {
	/* Table for entering payment method */
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 20px 0;
	text-align: left;
	float: right;
}
@media (min-width: 768px) {
  td.pay1 {
      /* First column in .paymentMethodTable */
      width: 220px;
      padding-bottom: 20px;
  }
  td.pay2 {
      /* First column in .paymentMethodTable */
      width: 231px;
      padding-bottom: 20px;
  }
  td.pay3 {
      /* First column in .paymentMethodTable */
      width: 162px;
      padding-bottom: 20px;
  }
  td.pay4 {
      /* First column in .paymentMethodTable */
      padding-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .paymentMethodTable tr.cellLow {
    display: block;
    width: 100%;
    border-right: 1px solid #ccc;
  }
  td.pay1, td.pay2, td.pay3, td.pay4 {
      display: block;
      width: auto;
      clear: both;
      padding-bottom: 20px;
  }
  .viewCart th, .viewCart td, .viewCartShort th, .viewCartShort td, .payPlan th, .payPlan td, .summaryCart th, .summaryCart td, .shippingInfo th, .shippingInfo td, .billingInfo th, .billingInfo td, .billingTable th, .billingTable td, .shippingTable th, .shippingTable td, .paymentInfo th, .paymentInfo td, .signinTable th, .signinTable td, .paymentMethodTable th, .paymentMethodTable td, .viewCart th, .viewCart th.rightAlign, .viewCart td, .viewCart td.rightAlign, .promoCode td {
      padding: 5px !important;
      font-size: 14px;
  }
}
.signinTable {
	/* Table for signing in or registering new customer */
	width: 340px;
	border-collapse: collapse;
	margin: 0 0 120px 20px;
	text-align: left;
	float: left;
}
.signinTable td {
	padding: 5px 10px 3px 15px;
	vertical-align: top;
}
.shippingTable td, .billingTable td {
	border: none;
	padding: 5px 0 0 15px;
}
td.rightAlign {
	text-align: right;
	vertical-align: top;
	padding-top: 10px;
}
th.rightAlign {
	text-align: right;
	vertical-align: top;
	padding-top: 15px;
}
td.rightAlignTop, th.rightAlignTop {
	text-align: right;
	vertical-align: top;
	padding-top: 20px;
	width: 150px;
}
td.rightAlignBottom {
	text-align: right;
	vertical-align: top;
	padding: 10px 10px 20px 0;
	width: 150px;
}
td.leftAlign, th.leftAlign {
	text-align: left;
}
td.centerAlign, th.centerAlign {
	text-align: center;
}
td .rightCell {
	text-align: right;
}
.summaryCart {
	/* Table that contains content of shopping cart, displayed on summary page */
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 20px;
	float: left;
}
.shippingInfo {
	/* Table on summary page that contains shipping info */
	width: 293px;
	border-collapse: collapse;
	text-align: left;
	margin: 0 20px 20px 0;
	float: left;
}
.billingInfo {
	/* Table on summary page that contains billing info */
	width: 293px;
	border-collapse: collapse;
	margin: 0 20px 20px 0;
	text-align: left;
	float: left;
}
.paymentInfo {
	/* Table for pay plan info and scheduled payments on summary page */
	width: 293px;
	border-collapse: collapse;
	margin: 0;
	padding: 10px;
	text-align: left;
	float: left;
}
.checkoutLinksTop {
	/* Container for 'Checkout' and 'Continue Shopping' buttons */
	height: 30px;
	margin: 0;
	position: absolute;
	right: 0;
	text-align: right;
	width: 50%;
}
@media (max-width:768px){
	.checkoutLinksTop {
		position: relative;
		display: block;
		width: auto;
		padding: 0px 10px;
	}
}
.checkoutLinks {
	/* Container for 'Checkout' and 'Continue Shopping' buttons */
	width: 300px;
	height: 30px;
	margin: 17px 20px 40px 0;
	text-align: right;
	float: right;
	clear: both;
}
.checkoutLinksBottom {
	/* Container for 'Checkout' and 'Continue Shopping' buttons */
	width: 1140px;
	max-width: 100%;
	min-height: 30px;
	margin: 20px auto;
	text-align: right;
	clear: both;
}
@media (max-width:768px){
	.checkoutLinksBottom {
		width: auto;
		padding: 0px 10px;
	}
}
#checkoutLinksSummary {
	/* Container for 'Checkout' and 'Continue Shopping' buttons on summary page */
	position: absolute;
	top: 570px;
	right: 0;
	width: 300px;
	height: 30px;
	margin: 17px 0 30px 0;
	text-align: right;
	float: right;
}
/* Forgot password
---------------------------------------------*/

#forgotPasswordWindow {
	/* Container for forgot password information */
	width: 400px;
	margin: 40px auto 0 auto;
	padding: 20px;
}
p.forgotPassword {
	/* Explanation in forgot password window */
	margin: 10px 0 0 0;
	padding: 0;
}
.forgotPasswordTable th {
	text-align: left;
	padding-left: 15px;
}
.forgotPasswordTable td {
	padding: 5px 10px 3px 15px;
}
.forgotPasswordTable input {
	/* Form fields in forgot password window */
	padding: 4px 4px 4px 6px;
	margin: 0 0 0 0;
	width: 160px;
	height: 28px;
}
/* UPSELLS
===============================================================*/

#upsellContainer {
	/* Contains all upsells */
	width: 940px;
	clear: both;
	margin: 20px 0 0 0;
	padding-bottom: 40px;
}
#upsellContainer li {
	display: inline;
	margin-right: 20px;
}
.upsell {
	/* Box that contains single upsell */
	width: 245px;
	padding: 10px 20px 20px 20px;
	float: left;
	margin: 0 20px 10px 0;
}
.upsellImage {
	float: left;
	margin: 3px 15px 0 0;
}
.upsellItem {
	font-size: 15px;
	font-weight: bold;
	margin-right: 10px;
}
.subscriptionPrice {
	margin: 0;
}
.upsellAdd {
	/* Add to cart button for upsells */
	float: right;
	margin: 10px 15px 0 0;
}
/* TYPOGRAPHY
===============================================================*/

h1 {
	/* Used for product and page headers */
	margin: 0 0 15px 0;
}
h3 {
	/* Used for product grid headline */
	margin: 0 0 15px 0;
	padding-bottom: 3px;
}
h4 {
	margin: 20px 0 5px 0;
}
h5 {
	margin: 2px 0 5px 5px;
}
#upsellContainer h4 {
	margin: 0 0 5px 0;
}
.tableHeader {
	margin: 20px 0 5px 0;
	display: block;
}
p.homeLink {
	float: right;
	margin-bottom: 40px;
}
.shippingOptions {
	/* Radio buttons for shipping options */
	margin: 0 10px 3px 0;
}
.address, .editInfo, .shippingOptions, .cardInfo, .shipInfo {
	margin: 0 0 4px 0;
	display: block;
}
.billName, .billStreet, .billCity, .shipName, .shipStreet, .shipCity {
	margin: 0;
	display: block;
}
p.signupInfo {
	margin: 0 0 20px 0;
}
/* LINKS AND BUTTONS
===============================================================*/

a {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
.codeButton {
	padding: 7px 15px 5px 15px;
	margin: 0 0 0 15px;
	cursor: pointer;
}
.continueButton, .formButton {
	padding: 7px 15px 5px 15px;
	margin: 10px 0 0 10px;
	cursor: pointer;
}
.cartButton, .continueButton, .formButton {
	padding: 7px 15px 5px 15px;
	margin-top: 10px;
	cursor: pointer;
}
.newsButton {
	margin-left: 85px;
	padding: 7px 15px 5px 15px;
	cursor: pointer;
}
.searchButton {
	margin: 1px 0 0 5px;
	padding: 4px 9px 4px 9px;
	cursor: pointer;
}
.upsellButton {
	margin: 1px 0 0 5px;
	padding: 4px 9px 4px 9px;
	cursor: pointer;
}
.buttonRight a:hover, .buttonLeft a:hover {
	text-decoration: none;
}
/* FOOTER
===============================================================*/

#footer {
	position: relative;
	/*margin-top: 40px;
	padding-top: 30px;*/
	margin: 0px;
	padding: 30px 0px;
	width: 100%;
	/*height: 50px;*/
	clear: both;
}
#footer .row {
	margin: 0px;
}
#footer .footerLeft {
	width: 50%;
	float: left;
	font-size: 14px;
	font-style: italic;
	padding: 3% 0px 2%;
}
#footer .footerRight {
	width: 50%;
	float: right;
	text-align: right;
	padding: 3% 0px 2%;
}
#footer .footerRight ul {
	list-style: none;
	margin: 0px 0px 10px;
}
#footer .footerRight ul li {
	list-style: none !important;
	display: inline-block !important;
	margin: 0px;
	padding: 0px;
}
#footer .footerRight ul li a {
	font-size: 16px;
	line-height: 23px;
	padding: 4px 8px;
	color: #928D85;
	text-decoration: none;
}
#footer .footerRight ul li a:hover {
	color: #FFFFFF;
}
@media (max-width:768px){
	#footer {
		width: auto;
		padding: 30px 10px;
	}
	#footer .footerLeft {
		width: auto;
		float:  none;
		text-align: center;
	}
	#footer .footerRight {
		width: auto;
		float:  none;
		text-align: center;
	}
}
/* HTML AREAS
===============================================================*/

#customCheckoutBottom {
	clear: both;
}
#customHomeProductGridTop {
	width: 740px;
	margin-bottom: 20px;
}
/* MISC
===============================================================*/

.payPalImage {
	margin: 0 0 -5px 0;
}
p.successMessage {
	margin: 20px 0 20px 0;
}
.checkoutWithPayPalLink {
	cursor: pointer;
	display: inline-block;
}
.checkoutWithPayPalImg {
	display: block;
	margin: 0 0 -8px;
}
.payPalPayWithCardInstead, .creditCardPayWithPayPalInstead {
	cursor: pointer;
}
.payPalPaymentInfoImage {
	margin: 10px 0 0 0;
}
.payPalPaymentInfoMessage {
	width: 440px;
}
/* PAYPAL LIGHTBOX
===============================================================*/

.payPalLightboxIcon {
	float: right;
	padding: 20px;
}
.payPalMessage {
	padding: 55px 30px 0;
}
.closePayPalLightbox {
	margin-right: 30px;
	margin-top: 50px;
	float: right;
}
.payPalGo {
	-moz-border-bottom-colors: none;
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	-moz-border-top-colors: none;
	background: url("https://www.paypalobjects.com/en_US/i/pui/core/btn_bg_sprite.gif") repeat-x scroll left 17.5% #FFA822;
	border-color: #D5BD98 #935E0D #935E0D #D5BD98;
	border-image: none;
	border-style: solid;
	border-width: 1px;
	cursor: pointer;
	font-size: 14px;
	margin-left: 30px;
	margin-top: 10px;
	padding: 1px;
}/* PAYPAL CHECKOUT===============================================================*/.checkoutPaypalSmartPaymentButtons { margin: 0 20px 40px 0; float: right; clear: both; background: #fff; padding: 10px;}.checkoutButtonList { float: right; clear: both; width: 960px;}.payPalOption td { width: 220px;}.payPalOption td div { float: left; clear: both;}
