/* Layout: One Column
Theme: Basic Gray

Layout.css contains the layout properties for your order form,
including width, height, margin, padding, position, float,
display and text-align.

NOTE: There are additional classes that are not listed here
because they currently have no attributes. You can locate
these by downloading and using Firebug.
===============================================================*/
#wrapper,
.wrap {
    padding-bottom: 2.5em;
    max-width: 58.7em;
    margin: 0px auto;
    margin-top: 120px;
}
#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, 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('https://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, 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, 0.3);
}
.cta-wraper {
    margin: 0px auto;
    width: 60%;
    max-width: 100%;
}
label, td.rightAlign {
    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: #fa5c2f;
    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;
}
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;
}
.paymentIcon {
    display: none;
}
.checkoutLinks .codeButton,
.checkoutLinks .continueButton {
    width: 90%;
    padding: 20px;
    font-size: 27px;
    margin: 0 5%;
    display: inline-block;
    font-weight: bold;
}
.checkoutLinks {
    width: 100% !important;
}
span.smallHeader {
    display: none;
}
.payPalGo {
    margin: 0em;
    font: -webkit-small-control;
    letter-spacing: normal;
    word-spacing: normal;
    text-transform: none;
    text-indent: 0px;
    text-shadow: none;
    display: inline-block;
    align-items: flex-start;
    text-align: center;
    background: #fa5c2f;
    border: none;
    border: 1px solid #e24e23;
    font-size: 1em;
    font-weight: bold;
    color: #FFFFFF;
    border-radius: 3px;
    padding: .75em;
    cursor: pointer;
    margin-bottom: 1em;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    box-shadow: inset 0px 1px 0px 0px rgba(255, 255, 255, 0.25);
}
#payPalLightBox .continueButton {
    background: #fa5c2f;
    border-color: #fa5c2f;
}
#payPalLightBox {
    padding: 10px 30px;
}
a#checkoutWithPayPalLink {
    margin: 20px auto;
    display: block;
    text-align: center;
}
#paymentSelection a#checkoutWithPayPalLink {
    margin: 20px auto;
    display: inline-block;
    text-align: center;
    background: #cdcdcd;
    border: 1px solid #b4b4b4;
    padding: 10px 30px;
    color: white !important;
    text-decoration: none;
    cursor: pointer;
}
#cardNumber,
#verificationCode {
    width: 287px !important;
}
/* 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;}
