
div.checkout {
    margin: auto;
    padding: 0 1em;
    max-width: 720px;
}
.button.checkout {
    cursor: pointer;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    border: 0 none;
    padding: 2px 17px 4px;
    color: white;
    font-family: 'MuseoSans',sans-serif;
    font-size: 1.33em;
    display: block;
    clear: both;
}
.checkout .block, #payment_page #po_field {
    margin-bottom: 15px;
    clear: left;
}
.checkout h2 {
    color: #383838; /* red */
    margin-bottom: .5em;
}
.checkout h3, #review thead td {
    font-size: 1.00em;
    font-family: sans-serif;
    font-weight: bold;
}
#main_content .checkout label {
    text-align: left;
}
.newform label {
    width: 81px;
    display: inline-block;
}
.newform input {
    width: 159px;
}
.newform select {
    width: 163px;
}
.checkout form p {
    margin-bottom: 6px;
}

#checkout_nav {
    font-family: 'MuseoSans',sans-serif;
    font-size: 1.42em;
    color: #808080;
    margin-bottom: 1.5em;
    margin-top: 8px;
}
#checkout_nav a {
    color: #808080;
}
#checkout_nav .dk {
    color: #0067AC;
}
#checkout_nav .divider {
    padding: 0 4px;
}
.checkout select {
    border: 1px solid #D3D4D5;
    border-radius: 2px 2px 2px 2px;
    height: 1.65em;
    width: 165px;
}
#addresses.block {
    overflow: hidden;
    margin-bottom: 20px;
}
#addresses div {
    min-width: 140px;
    max-width: 150px;
    margin-right: 20px;
    float: left;
}
#addresses p {
    margin-bottom: 0;
    line-height: 1.3;
}

/*--------- Cart page -----------*/
#cart{
    margin: auto;
}
#cart .main_col {
    float: none;
    margin-left: 1em;
    margin-right: 1em;
    max-width: 620px;
}
#cart .side_col {
    float: left;
    margin: 61px 1em 1em;
}
#cart table {
    width: 100%;
}
#cart table .button {
    float: right;
}
#cart .holiday {
    margin: 1em 0 15px;
}
#cart .message {
    max-width: 460px;
    margin: 1em0 15px;
}
#cart #item_table {
    margin-top: -14px;
}
/* side column on cart page */
#cart .side_col .block {
    margin-bottom: 15px;
    background: #F4F4F4;
    padding: 9px 15px 18px;
    width: 300px;
    box-sizing: border-box;
}
#cart .side_col #setup.block {
    padding-top: 18px;
}
#cart .side_col h2 {
    color: #383838;
    margin-bottom: 1em
}
#cart .side_col h2 a {
    color: #383838;
}
#cart .side_col #login h2 {
    padding: 0px;
}
#cart .side_col #login.block {
    padding-bottom: 14px;
}
#cart .side_col .button {
    padding-top: 1px;
    padding-bottom: 3px;
    vertical-align: bottom;
    background: #1B70A4 url('/static/img/blue_button_gradient.png') bottom repeat-x;
}
#cart .side_col input {
    margin-right: 2px;
}
#quick_add {
    padding-right: 17px;
    overflow: hidden;
}
#quick_add input {
    margin-top: 3px;
}
#quick_add #id_item {
    width: 122px;
}
#quick_add #id_quantity {
    width: 17px;
    padding-left: 2px;
}
#quick_add .button {
    margin-top: 5px;
    float: right;
}
#login, #promo {
    margin-bottom: 20px;
}
#create_div {
    margin-bottom: 30px;
}
#forgot a {
    color: #808080;
}
#login h2 {
    padding-bottom: 4px;
    padding-top: 12px;
}
#main_content #login p {
    margin-top: 2px;
}
#login_div input[type="password"] {
    border: 2px solid #D2D3D5;
    padding: 1px 0 2px 3px;
    height: 15px;
    width: 150px;
}
#main_content #login form .button {
    margin-left: 106px;
}
#main_content #login form #create_div p label {
    width: 79px;
    text-align: right;
    padding-left: 20px;
}
#main_content #login form #login_div .button {
    margin-left: 2px;
}
#main_content #login form p input {
    width: 150px;
}
#main_content #login form p label {
    display: inline-block;
    margin-right: 4px;
    text-align: left;
    width: auto;
}

#id_promo_code {
    padding-bottom: 3px;
    margin-right: 2px;
    padding-left: 4px;
    width: 88px;
}
#cart .side_col .block#promo {
    padding-right: 5px;
}
#promo .text {
    width: 91px;
}
#promo .button {
    background: #1B70A4 url('/static/img/blue_button_gradient.png') bottom repeat-x;
    vertical-align: bottom;
}
#cart .side_col .errorlist, #cart .side_col .error {
    padding: 5px 0px;
}
#quickzip label {
    display: block;
    padding-bottom: 3px;
}
#quickzip #id_zip_code {
    width: 62px;
}
#quickzip .button {
}
#quickzip #results {
    margin-top: 1em
}
#quickzip .ship-method {
    padding: 4px 0;
}
#quickzip .ship-price {
    float: left;
    text-align: right;
    width: 3.75em;
}
#quickzip .ship-description {
    margin-left: 4.5em;
}

/*--------- Address page -----------*/
#address_page form {
    padding-top: 5px;
}
#address_page .button {
    margin-top: 15px;
}
#address_page input[type="radio"] {
    margin-right: 3px;
    vertical-align: top;
}
#contact_info {
    position: relative;
}
#dup-email {
    background-color: #CCEEDD;
    position: absolute;
    top: -51px;
    left: 296px;
    padding: 7px 1em
    width: 280px;
}
#dup-email label {
    width: 67px;
}
.newform .dup-email input#id_email {
    width: 195px;
}
.newform #dup-email input#id_password {
    width: 120px;
}
#dup-email .button {
    vertical-align: bottom;
    width: auto;
    padding: 1px 7px 3px;
    margin-top: 0;
    margin-left: 7px;
}
p.dup-email {
    background: url('/static/img/big_green_arrow.png') no-repeat 284px 0;
}
#mail_signup {
    padding-left: 86px;
}
#mail_signup p {
    margin-bottom: 0;
}
#mail_signup input {
    width: auto;
    vertical-align: text-bottom;
    margin-right: 4px;
}
#mail_signup label {
    width: auto;
    vertical-align: middle;
}
.chkaddressesmulti {
    margin-left: 20px;
}
.chkaddressesmulti li {
    padding-bottom: 1.1em;
    line-height: 1.35;
}
.chkaddressesmulti li.last {
    padding-bottom: 6px;
}
.chkaddressesmulti li a {
    color: #808080;
}
.chkaddressesmulti input {
    float: left;
    margin-top: 1px;
    margin-left: -20px;
}
#payment_method li {
    margin-bottom: 5px;
}
#payment_method label {
    display: inline-block;
    width: 260px;
}
#shipping {
    padding-bottom: 8px;
}
#address_page #shipping {
    overflow: auto;
}
#shipping p {
    width: 279px;
    float: left;
    clear: left;
}
#shipping p.optional {
    clear: none;
}
#shipping p .error, #shipping p .errorlist {
    display: block;
    padding: 0;
}
#ship_method_error.error {
    padding-left: 0;
}
#shipping label {
    width: 68px;
}
/*--------- Shipping page -----------*/
#shippg_page #same_as_billing{
    width: 20px;
}
#shipping_page input#same_as_billing {
    margin-right: 5px;
    vertical-align: top;
}
#shipping_page input#id_ship_after_date {
    width: 140px;
}
#shipping_page label[for="id_purchase_order_number"]{
    width: 140px;
}
#shipping_page textarea {
    height: 70px;
    max-width: 100%;
}
#shipping_page form {
    padding-right: 5px;
}
#shipping_methods {
    margin-bottom: 16px;
}
#shipping_methods .radio input {
    vertical-align: text-top;
    margin-right: 4px;
}
#shipping_methods .radio li {
    padding-bottom: 7px;
}
#special_instructions img {
    vertical-align: text-bottom;
}
#shipping_forms {
    overflow: auto;
    margin-bottom: 30px;
    margin-top: 15px;
}
#shipping_forms .error, #shipping_forms .errorlist {
    display: block;
    margin-left: 80px;
}
#shipping_page .newform {
    max-width: 340px;
    float: left;
    margin-right: 1em;
}
#shipping_page .newform#notes {
    width: 250px;
}
#shipping_page #notes label {
    width: 100%;
}
#shipping_page p.info {
    max-width: 455px;
    margin-top: 40px;
}
p.upsnote {
    color: #808080;
    margin-top: 86px;
    padding: 3px 1px 0 67px;
    min-height: 58px;
    background: url("/static/img/ups_logo.png") no-repeat;
    font-size: 0.92em;
    line-height: 1.3;
}
#overweight {
    margin-bottom: 20px;
}
/*--------- Payment page -----------*/
#payment_page {
    margin: auto;
}
#payment_page .block {
    margin-bottom: 30px;
}
#payment_page #addresses {
    border-bottom: 1px solid #D3D4D5;
    padding-bottom: 1em;
    margin-bottom: 15px;
}
#payment_page .tabbed {
    padding-left: 20px;
}
#payment_page #review .checkoutsubmit {
    margin-left: 20px;
}
#payment_page .change_promo a {
    color: #808080;
}
#payment_page .change_promo {
    margin-top: 7px;
}
#payment_page .error, #payment_page .errorlist {
    padding: 5px 0;
}
#payment_page #chargelogicerror.error, #payment_page #chargelogicerror.errorlist {
    padding-top: 0px;
}
#totals.block {
    margin-bottom: 40px;
    overflow: hidden;
    float: left;
}
#totals table {
    width: 250px;
}
#totals td {
    border-bottom: 2px solid #F1EEED;
    padding-bottom: 5px;
    padding-top: 5px;
}
#totals .label {
    padding-right: 14px;
    padding-left: 12px;
    text-align: right;
}
#totals .value {
    padding-right: 20px;
    padding-left: 13px;
    text-align: right;
}
#totals .total {
    background: #F1EEED;
    font-size: 1.09em;
    font-weight: bold;
}
#totals .total td {
    padding-bottom: 1px;
    padding-top: 1px;
}
#payment_page #credit_card {
    background-color: #F1EEED;
    padding: 15px 1em 30px 1em;
}
#payment_page #optional_info {
    float: left;
    clear: none;
    margin-left: 54px;
}
#payment_page .radio li {
    padding-bottom: 4px;
}
#payment_page .radio input, #payment_page input.radio {
    vertical-align: text-top;
    margin-right: 1px;
}
#payment_page .newform label, #payment_page #po_field label {
    width: 89px;
}
#to_get_billing {
    margin-top: 2px;
}
#address_form {
    float: left;
    margin-bottom: 15px;
    max-width: 405px;
}
#chargelogic {
    margin: 0 0px 0px;
}
#chargelogic strong {
    font-weight: normal;
}
#review {
    margin-top: 40px;
}
#review table {
    margin-left: -7px;
}
#review thead td {
    padding-bottom: 0;
    padding-top: 0;
}
#review tbody tr {
    border-bottom: #EBEBEB 1px solid;
}
#review tbody tr.last {
    border-bottom: 0 none;
}
#review td {
    padding: 7px 13px 5px 7px;
    width: 60px;
    vertical-align: top;
    text-align: center;
}
#review td.details {
    padding-top: 5px;
    text-align: left;
    width: 214px;
}
#review thead td.price {
    padding-right: 0;
}
#review tbody td.price {
    text-align: right;
    padding-right: 9px;
}

/*--------- Receipt page -----------*/
#receipt {
    max-width: 460px;
}
#receipt h2 {
    margin-bottom: 3px;
}
#create_account {
    background: #F9F8F8;
    margin: 13px 0 22px;
    padding: 13px 19px 19px;
    overflow: hidden;
}
#create_account h2 {
    color: #409A3C;
}
#create_account fieldset {
    margin: 13px 0 0 52px;
}
#create_account label {
    display: inline-block;
    width: 101px;
}
#create_account input {
    width: 155px;
}
#create_account .button {
    width: auto;
    float: right;
    padding-right: 8px;
    padding-left: 8px;
    margin-right: 106px;
}
#downloads {
    display: inline-block;
    margin-bottom: 30px;
}
#email_list {
    margin: 15px 0;
}
#order_id {
    margin: 15px 0 15px;
}
#receipt #totals table {
    width: 220px;
    float: left;
    margin-right: 20px;
}
#method_details {
    width: 220px;
    float: left;
    margin-top: -4px;
}
#method_details h3 {
    padding-top: 5px;
}
#receipt #review table {
    margin: 0 -20px;
    max-width: 500px;
}
#receipt #review td {
    padding-left: 1em;
    padding-right: 1em;
    width: 60px;
}
#receipt #review td.details {
    padding-left: 20px;
    width: auto;
}
#receipt #review td.price {
    padding-right: 20px;
}
