#wrapper,
.wrap {
    padding-bottom: 2.5em;
    max-width: 58.7em;
    margin: 0px auto;
    margin-top: 160px;
}

#header {
    /* The top area that contains your banner or logo */
    /*background: #fff;*/
    /*margin-bottom: 1.875em;*/
    /*box-shadow: 0px 0px 30px 0px rgba(0,0,0,.15);*/
    /*border-top: 4px #000 solid;*/
    position: absolute;
    top: 0; left:0; right: 0;
}

#content {
    /* Content wrapper for main column */
    float: left;
    width: 59.6%;
    background: #fff;
    box-shadow: 0px 0px 4px 0px rgba(0,0,0,.08);
    padding: 1.25em 1.875em 2em;
}

#rightCol {
    /* Content wrapper for right column/HTML area */

    float: right;
    clear: both;
    width: 32%;
    position: relative;
}

/* Removing items
===============================================================*/
#IMAGE{ display: none; }


/* PRODUCT GRID
===============================================================*/

.productImage {
    /* Image in the product grid */
    margin: 8px 0 10px 0;
    border: 1px solid #eee;
}

.price {
    /* Price in the right column of the product grid */
    display: block;
}

.productDescription {
    /* Paragraph for short product description in order form */
    margin-bottom: 13px;
}

.optionsDrop {
    /* Dropdown for product options */
    padding: 4px 4px 4px 6px;
    margin-bottom: 13px;
    width: 200px;
    line-break-after: right;
}

.subscriptionPlan {
    display: block;
}

.qtyField {
    /* Quantity field in product grid */
    padding: 4px 4px 4px 6px;
    width: 30px;
    display: block;
    text-align: right;
    margin: 0 auto;
    margin-bottom: 5px;
}



/* HTML AREAS (Insert custom HTML by going to the HTML area tab)
===============================================================*/

#topCustomHTML {
    /* HTML area below header image. */
    margin: 35px 0 15px 0;
}

#middleCustomHTML {
    /* HTML area below product grid. */
    margin: 35px 0 60px 0;
    clear: both;
}

#bottomCustomHTML {
    /* This is your footer. */
    width: 960px;
    margin: 40px auto 20px auto;
    padding: 15px;
    text-align: center;
    clear: both;
}



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

input {
    margin: 0 0 7px 0;
}

.paymentLabel {
    /* Labels for payment method table */
    display: block;
    font-size: 14px;
}

.choosePlan {
    /* Radio buttons used to choose pay plan or shipping option */
    margin-right: 5px;
}



/* Form fields and labels
---------------------------------------------*/

/*.checkout, .checkoutDone {*/
/* Form fields used in checkout forms */
/*padding: 4px 4px 4px 6px;*/
/*margin: 0;*/
/*width: 135px;*/
/*}*/

/*.checkoutBottom, .checkoutBottomDone {*/
/* Provides bottom padding for last form field in a form */
/*padding: 4px 4px 4px 6px;*/
/*margin: 0 0 20px 0;*/
/*width: 135px;*/
/*}*/

/*.checkoutTop, .checkoutTopDone {*/
/* Provides top padding for first form field in a form */
/*padding: 4px 4px 4px 6px;*/
/*margin: 10px 0 0 0;*/
/*width: 135px;*/
/*}*/

/*.checkoutLabel {*/
/* Checkout form label */
/*padding: 0 0 -3px 0;*/
/*margin: 0 0 -3px 0;*/
/*}*/

/*.checkoutShort {*/
/* Smaller form field */
/*padding: 4px 4px 4px 6px;*/
/*margin: 0;*/
/*width: 135px;*/
/*}*/

/*.promoField {*/
/* Smaller form field */
/*padding: 4px 4px 4px 6px;*/
/*margin: 0 0 0 10px;*/
/*width: 120px;*/
/*}*/


/*.checkoutShortTop {*/
/* Smaller form field */
/*padding: 4px 4px 4px 6px;*/
/*margin: 10px 0 0 0;*/
/*width: 135px;*/
/*}*/

/*.promoLabel {*/
/*padding-top: 3px;*/
/*}*/

/*.checkoutShortest {*/
/* Even smaller form field */
/*padding: 5px;*/
/*margin: 0;*/
/*width: 70px;*/
/*}*/

/*.checkoutShortBottom {*/
/*padding: 4px 4px 4px 6px;*/
/*margin-bottom: 30px;*/
/*width: 135px;*/
/*}*/

/*.addressTableInfo {*/
/*margin-bottom: 0px;*/
/*}*/

/*.paymentIcon {*/
/* Credit card, pay pal and check icons in payment information table */
/*margin: 0 7px -5px 4px;*/
/*}*/


/* Tables
---------------------------------------------*/

.viewCart {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0 60px 0;
    float: left;
    border-radius: 4px;
}

.viewCart th, .billingTable th, .shippingTable th, .shipMethodTable th, .paymentMethodTable th, .payplanTable th, .orderSummary th {
    padding: 10px 10px 10px 15px;
    text-align: left;
}

.viewCart td, .shipMethodTable td, .paymentMethodTable td, .payplanTable td, .orderSummary td {
    padding: 10px 10px 10px 15px;
    vertical-align: top;
}

.billingTable td, .shippingTable td {
    padding: 8px 0 0 15px;
    vertical-align: top;
}

.billingTable {
    /* Table for entering billing address */
    width: 620px;
    border-collapse: collapse;
    text-align: left;
    float: left;
    height: 430px;
    margin: 0 20px 20px -30px;
}

.shippingTable {
    /* Table for entering shipping address */
    width: 355px;
    border-collapse: collapse;
    margin: 0 0 20px 0;
    text-align: left;
    float: right;
    height: 500px;
}

.orderSummary {
    /* Table for order form summary */
    position: relative;
    width: 355px;
    border-collapse: collapse;
    margin-bottom: 20px;
    text-align: left;
    float: right;
    clear: right;
}

.shipMethodTable {
    /* Table for shipping options */
    width: 355px;
    border-collapse: collapse;
    margin-bottom: 20px;
    margin-right: 20px;
    text-align: left;
    float: left;
    clear: left;
}

.payplanTable {
    /* Table for choosing pay plan */
    width: 355px;
    border-collapse: collapse;
    margin-bottom: 20px;
    text-align: left;
    float: left;
}

#shipPaymentContainer {
    width: 355px;
    float: left;
}

.tableOption {
    /* Paragraph for shipping or pay plan option */
    margin: 0 0 11px 0;
}

.payplanSummary { /* Box that shows payment schedule for payment plan */
    background-color: #fff;
    width: 200px;
    margin: -12px 0 15px 0;
}

.paymentDate { /* Date shown in .paypanSummary box */
    width: 100px;
    display: inline-block;
    border-bottom: 1px dashed #ddd;
}

.paymentAmount { /* Payment amount shown in .paypanSummary box */
    width: 65px;
    text-align: right;
    display: inline-block;
    border-bottom: 1px dashed #ddd;
}

.financeDate { /* Finance charge label shown in .paypanSummary box */
    color: #777;
    font-style: italic;
    width: 100px;
    display: inline-block;
}

.financeAmount { /* Finance charge amount shown in .paypanSummary box */
    color: #777;
    font-style: italic;
    width: 65px;
    text-align: right;
    display: inline-block;
}

.promoCode {
    /* Table for promo code field */
    width: 453px;
    border-collapse: collapse;
    margin-left: 15px;
}

.promoCode td {
    height: 30px;
}

.paymentMethodTable {
    /* Table for entering payment method */
    width: 530px;
    border-collapse: collapse;
    margin: 0 0 20px -30px
text-align: left;
    float: left;
}

.paymentMethodTable {
    margin-left: -30px;
}

td.pay1 {
    /* First column in .paymentMethodTable */
    display: inline;
    width: 570px;
    padding-bottom: 0px;
    float: left;

    background: url('http://delfinet.s3.amazonaws.com/digitalblueprint/credit-cards.png') 66% 10px no-repeat;
    background-size: auto 20px;
}

.paymentLabel {
    text-align: right;
    float: left;
    position: relative;
    display: block;
    width: 140px;
    margin-right: 10px;
}

td.pay3 .paymentLabel {
    width: 117px;
}

td.pay1 select,
td.pay2 input[type=text],
td.pay3 input[type=text] {
    float: left;
    position: relative;
}

td.pay2 input[type=text],
td.pay3 input[type=text] {
    width: 385px;
}

td.pay2 {
    /* First column in .paymentMethodTable */
    display: inline;
    width: 570px;
    padding-bottom: 0px;
    float: left;
}

td.pay3 {
    /* First column in .paymentMethodTable */
    display: inline;
    width: 570px;
    padding-bottom: 0px;
    float: right;
}

td.pay4 {
    /* First column in .paymentMethodTable */
    display: inline;
    width: 570px;
    padding-bottom: 0px;
    float: left;
}

td.rightAlign {
    text-align: right;
    vertical-align: top;
    padding-top: 10px;
    height: 20px;
    width: 140px;
}

.productCell {
    width: 80%; !important
}

.qtyCell {
    width: 10%; !important
}

.priceCell {
    width: 10%; !important
}

th.rightAlign {
    text-align: right;
}

th.rightAlignTop {
    text-align: right;
    vertical-align: top;
    padding-top: 20px;
    width: 140px;
}

td.rightAlignTop {
    text-align: right;
    padding-top: 20px;
    width: 140px;
    height: 20px;
}

.billingTable td.rightAlignTop {
    width: 140px;
    padding-top: 13px;
    float: left;
}

table.billingTable tr {
    display: block;
    overflow: auto;
    zoom: 1;
}

.billingTable tr td:nth-child(2) {
    float: left;
    width: 380px;
}

td.rightAlignBottom {
    text-align: right;
    vertical-align: top;
    padding: 10px 10px 20px 0;
    width: 150px;
}

th.leftAlign {
    text-align: left;
    height: 15px;
}

td.leftAlign {
    text-align: left;
}

td.centerAlign, th.centerAlign {
    text-align: center;
}

td .rightCell {
    text-align: right;
}

/*.checkoutLinks {*/
/* Container for 'Checkout' and 'Continue Shopping' buttons */
/*width: 300px;*/
/*height: 30px;*/
/*margin: 0 0 40px 0;*/
/*text-align: right;*/
/*float: right;*/
/*}*/



/* UPSELLS
===============================================================*/

#upsellContainer {
    /* Contains all upsells */
    width: 750px;
    margin: 0 0 40px 0;
    clear: both;
}

.upsell {
    /* Box that contains single upsell */
    width: 328px;
    float: left;
    margin: 0 20px 20px 0;
    padding: 10px 10px 12px 15px;
}

.upsellImage {
    float: left;
    margin: 6px 15px 0 0;
}

.upsellItem {
    /* Product name */
    font-weight: bold;
    margin-right: 10px;
}

.upsellAdd {
    /* Add to cart button for upsells */
    float: right;
    margin: 7px 7px 0 0;
}

.upsellPrice {
    margin-left: 9px;
}


/* TYPOGRAPHY
===============================================================*/

/*h1 {*/
/* Used for product names */
/*margin: 2px 0 2px 0;*/
/*}*/

/*h2 {*/
/* Used for upsell product names */
/*margin-right: 10px;*/
/*display: inline;*/
/*}*/

/*#upsellContainer h2 {*/
/* Used for upsell product names */
/*margin: 5px 12px 0 0;*/
/*display: inline-block;*/
/*}*/

/*h3 {*/
/* Used for upsell headline */
/*margin: 0 0 5px 0;*/
/*padding-bottom: 3px;*/
/*}*/



/* LINKS AND BUTTONS
===============================================================*/

a {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/*.codeButton {*/
/*padding: 3px 15px 3px 15px;*/
/*margin: 0 0 0 3px;*/
/*cursor: pointer;*/
/*float: right;*/
/*}*/

/*.continueButton {*/
/*padding: 3px 15px 3px 15px;*/
/*margin: 10px 0 20px 10px;*/
/*cursor: pointer;*/
/*}*/

/*.upsellButton {*/
/*margin: 0 0 0 1px;*/
/*padding: 2px 8px 2px 8px;*/
/*cursor: pointer;*/
/*}*/


/* #4 Form
================================================== */

input[type="text"] {
    font-family: "museo-sans",sans-serif;
    width: 100%;
    margin-bottom: .625em;
    font-size: .875em;
    padding: .285714286em;
    border: solid 1px #ccc;
    background: #fff;
    box-shadow: inset 0px 1px 2px 0px rgba(0,0,0,.1);
    -webkit-appearance: none;
    -moz-appearance: none;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
}

input[type="text"]:focus {
    outline: none;
    box-shadow: 0px 0px 4px 0px rgba(255,196,0,0.75);
    border: 1px solid #ccaa01;
}

select {
    margin-bottom: .75em;
}

select.full, span.full select {
    width: 100%;
}
span.half input{
    width: 50%; margin-right: 10px;
}
#verificationCode{
    width: 50%; margin-right: 10px;
    float: left;
}

select:focus {
    outline: none;
    box-shadow: 0px 0px 4px 0px rgba(255,196,0,0.75);
    border: 1px solid #ccaa01;
}

input[type="submit"],
.cta {
    background: #ffd401;
    border: none;
    border-bottom: 2px solid #ccaa01;
    font-size: 1em;
    font-weight: bold;
    color: #000;
    border-radius: 3px;
    padding: .75em;
    cursor: pointer;
    margin-bottom: 1em;
    -webkit-appearance: none;
    -moz-appearance: none;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
}

a.cta {
    margin: 0px auto 1em;
    display: inline-block;
    text-decoration: none;
}

input[type="submit"]:hover,
.cta:hover {
    background: #dbb706;
}

.submit:focus,
.cta:focus {
    outline: none;
}

.submit:active,
.cta:active {
    position: relative;
    top: 1px;
    right: 0px;
    box-shadow: inset 0px 1px 10px 0px rgba(0,0,0,.3);
}

.cta-wraper {
    margin: 0px auto;
    width: 60%;
    max-width: 100%;
}

label {
    font-size: .875em;
    /*font-weight: bold;*/
}

label .optional {
    color: #999;
}

.optin-error {
    color: red;
    display: none;
    font-size: .888888889em;
}

.small {
    font-style: italic;;
    color: #999;
    margin-top: -5px;
    margin-bottom: .625em;
    font-size: .75em;
}

.small a {
    color: inherit;
    float: left;
    line-height: 2.916666667em;
    text-decoration: underline;
}

hr {
    background: #f5f5f5;
    height: 4px;
    border: none;
    margin: 2em 0px;
}

img.credit-cards {
    margin-top: 1em;
}

.side-by-side-inputs {
    width: 48%;
    float: left;
}

.side-by-side-inputs:first-child {
    margin-right: 4%;
}




/* #6 Clearing and Misc
================================================== */

img {
    max-width: 100%;
}

.center {
    text-align: center;
}

.left {
    float: left;
}

.right {
    float: right;
}

.centered {
    margin-right: auto;
    margin-left: auto;
}


/* Media Object */

.media { margin: 0px; }
.media, .bd {overflow:hidden; _overflow:visible; zoom:1;}
.media .media-image { float: left; margin-right: 20px; }
#rightCol .media .media-image img {
    border-radius: 9999px;
}
.media .media-image img { display: block; }
.media .media-imageExt { float: right; margin-left: 20px; }


/* Self Clearing Floats */

.group:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

* html .group { /* for IE6 */
    height: 1%
}
*:first-child+html .group { /* IE7 */
    min-height: 1px
}


/* KEITH EDITS
===============================================================*/

/* Move around the Product list to be more stylish */
/*#ORDER_FORM_PRODUCT_LIST{ position: relative; visibility: hidden; }*/
/*#ORDER_FORM_PRODUCT_LIST .cartThumb{*/
/*position: absolute;*/
/*top: 0; right: 0;*/
/*visibility: visible;*/
/*max-width: 120px;*/
/*}*/
/*#ORDER_FORM_PRODUCT_LIST h1{*/
/*position: absolute;*/
/*top: 0; left: 0;*/
/*visibility: visible;*/
/*width: 400px;*/
/*}*/
/*#ORDER_FORM_PRODUCT_LIST .productDescription{*/
/*position: absolute;*/
/*top: 80px;*/
/*left: 0;*/
/*visibility: visible;*/
/*width: 400px;*/
/*}*/
/*#ORDER_FORM_PRODUCT_LIST .price{*/
/*position: absolute;*/
/*top: 35px;*/
/*left: 0;*/
/*visibility: visible;*/

/*font-size: 1.125em;*/
/*line-height: 1.6em;*/
/*}*/

/* Remove all traces of being a table */
.billingTable{ display: block; }
.billingTable tr, .billingTable td, .billingTable th{ display: inline; }

/* Remove Unneeded items */
#ORDER_FORM_SUMMARY{
    display: none;
}

table#paymentSelection th,
table.billingTable th.leftAlign {
    background: #4e96d1;
    color: white;
    display: block;
    font-size: 18px;
    font-weight: bold;
    padding: 15px 42px;
    height: 35px;
    line-height: 35px;
}

#paymentSelection {
    margin-bottom: 40px;
}

tr:nth-child(2) {
    margin-top: 20px;
}


table.paymentMethodTable tr,
table.billingTable tr {
    display: block;
    width: 620px;
}

.billingTable tr, .billingTable td, .billingTable th { display: block; }

.billingTable {
    height: 580px;
}

table.billingTable tr td:nth-child(1){
    float: left;
}

#paymentSelection tbody tr:nth-child(2),
#paymentSelection tbody tr:nth-child(3),
#paymentSelection tbody tr:nth-child(4) {
    width: 570px;
}

#paymentSelection tbody tr:nth-child(2) td,
#paymentSelection tbody tr:nth-child(3) td,
#paymentSelection tbody tr:nth-child(4) td {
    width: 570px;
    text-align: center;
}
#customHeader { background: #fff }/* PAYPAL SMARTBUTTONS===============================================================*/.checkoutButtonList { /* Container for the checkout links and PayPal smart payment buttons, if the smart payment buttons are present */ float: right; clear: both; padding-right: 30px;}.checkoutPaypalSmartPaymentButtons { /* Container for the PayPal smart payment buttons */ float: right; clear: both;}.payPalOption td { /* PayPal option in the Payment Information */ width: 220px;}.payPalOption td div { /* Container for the PayPal smart payment buttons in the PayPal option in the Payment Information */ clear: both; float: left;}#payPalButtons { /* PayPal initial order form page when multiple payment option */ background-color: #ffffff; padding: 16px;}#payPalOptionButtons { /* Container for the PayPal smart payment buttons */ float: right; clear: both; width: 220px;}
