/** Shopping Cart **/

#shopping-cart {
    position: relative;
}

#shopping-cart h2,
#checkout_wrapper h2 {
    font-size: 18px;
    font-weight: normal;
    margin-bottom: 28px;
}

#shopping-cart .span_4 {
    float: right;
}

#shopping-cart .messages_box {
    text-align: left;
    padding: 20px 0;
}

#shopping-cart-table { width: 100%; }
#shopping-cart-table th {
    text-transform: uppercase;
    font-size: 11px;
    font-weight: normal;
    padding: 10px 30px 10px 0;
    letter-spacing: 0.1em;
}
#shopping-cart-table td { background-color: #fff; border-bottom: 2px solid #F7F7F7; vertical-align:middle; padding: 0 30px 0 0; font-size: 11px; }
#shopping-cart-table td input { margin: 0; text-align: center; border: 1px solid #E9E9E9; background-color: #E9E9E9; padding: 3px 0; font-size: 11px; }
#shopping-cart-table td input.checkbox { background-color: #fff; border:0;}
#shopping-cart-table td input:focus { border: 1px solid #3CB1E1 }
#shopping-cart-table td h3 { margin-bottom: 5px; text-transform: uppercase; font-weight: normal; }
#shopping-cart-table td h3 a { color: #333; text-decoration: none; }
#shopping-cart-table td h3 a:hover,#shopping-cart-table td h3 a:active,#shopping-cart-table td h3 a:focus { color: #3CB1E1; background-color: transparent;}
#shopping-cart-table a.product-image {
    display: block;
    height: 75px;
    width: 60px;
    text-indent: -9999px;
}
#shopping-cart-table a.product-image:hover,
#shopping-cart-table a.product-image:active,
#shopping-cart-table a.product-image:focus {
    background-color: transparent;
    color: #333;
}
#shopping-cart-table .item-options { font-size: 12px; }
#shopping-cart-table .item-options dt { float: left; width: 40px; }
#shopping-cart-table .item-msg.error { font-size: 11px; color: red; }
#shopping-cart-table .a-center { text-align: center; }
#shopping-cart-table .a-center a:hover,#shopping-cart-table .a-center a:active, #shopping-cart-table .a-center a:focus {background-color: transparent;}
#shopping-cart-table .col_remove { width: 40px; }
#shopping-cart-table .col_productname { text-align: left; }
#shopping-cart-table .col_unit_price { width: 120px; text-align: right; }
#shopping-cart-table .col_quantity { width: 120px; }
#shopping-cart-table .cart-price { text-align: right; font-weight: bold; }
#shopping-cart .buttons { padding-top: 25px; overflow: hidden; }
#shopping-cart .buttons button { float: right; clear: both; }
#shopping-cart .totals { clear: both; text-align: right; padding: 25px 0 0 0; }
#shopping-cart .totals .title { text-transform: uppercase; font-size: 12px; padding-right: 25px; }
#shopping-cart .totals .price { font-size: 35px; font-weight: bold; position: relative; top: 7px; }


#shopping-cart .coupon {
    position: absolute;
    bottom: 100px;
    left: 0;
}

.coupon h3,
.coupon h4 {
    margin-bottom: 15px;
    font-weight: normal;
    text-transform: uppercase;
    font-size: 12px;
}

.discount {
    margin-bottom: 15px;
}

#discount-coupon-form .validation-advice {
    padding-top: 0;
}

#discount-coupon-form label {
    display: block;
    margin-bottom: 10px;
    width: 100%;
}

#discount-coupon-form input#coupon_code {
    margin: 0 10px 3px 0;
    border: 1px solid #fff;
    padding: 4px 0 0 3px;
    width: 185px;
    height: 21px;
}

#discount-coupon-form input#coupon_code:focus {
    border: 1px solid #3CB1E1;
}

#discount-coupon-form input,
#discount-coupon-form button {
    float: left;
    display: inline;
    margin-right: 10px; 
}

.shipping-estimate p,
#discount-coupon-form label {
    font-size: 12px;
}

.shipping-estimate a {
    padding-left: 15px;
    background: transparent url(../images/arrow_right.png) no-repeat left 2px;
}

.shipping-estimate a {
    color: #333;
}

.shipping-estimate p a:hover,
.shipping-estimate p a:active,
.shipping-estimate p a:focus {
    color: #fff;
}

/** Teaser **/
.box { font-size: 12px; background-color: #fff; margin-bottom: 2px; }
.box h3 { text-transform: uppercase; font-weight: normal; padding: 10px; margin: 0; font-size: 12px; color: #333; }
.box_content { padding: 0 10px 10px 10px; line-height: 15px; }

/** Buttons **/
#shopping-cart button {
    margin-bottom: 10px;
    padding: 0px 40px 0px 10px;
    height: 27px; 
    background: #fff url(../images/button_arrow_blue.png) no-repeat right center;
    border-top: 1px solid #e3e3e3;
    border-left: 1px solid #e3e3e3;
    border-bottom: 2px solid #adadad;
    border-right: 2px solid #adadad;
    overflow: visible;
    cursor: pointer;
}

#shopping-cart button:hover,
#shopping-cart button:active,
#shopping-cart button:focus {
    background-color: #fff;
    border-top: 2px solid #adadad;
    border-left: 2px solid #adadad;
    border-bottom: 1px solid #e3e3e3;
    border-right: 1px solid #e3e3e3;
}

#shopping-cart button span {
    text-transform: uppercase;
    font-size: 14px;
    color: #3cb1e1;
    font-weight: bold;
    font-family: arial;
}

#shopping-cart button.master {
    padding: 5px 60px 5px 10px;
    height: 40px;
    background: #fff url(../images/button_arrow_blue.png) no-repeat right 12px;
    border-top: 1px solid #e3e3e3;
    border-left: 1px solid #e3e3e3;
    border-bottom: 2px solid #adadad;
    border-right: 2px solid #adadad;
    overflow: visible;
}
#shopping-cart button.master:hover { background-color: #fff; border-top: 2px solid #adadad; border-left: 2px solid #adadad; border-bottom: 1px solid #e3e3e3; border-right: 1px solid #e3e3e3; }
#shopping-cart button.master span { text-transform: uppercase;  font-size: 20px; color: #3cb1e1; font-weight: bold; font-family: arial; }

/** Forms - All **/
#checkoutSteps fieldset { width: 505px; }
#checkoutSteps legend { display: none; }
#checkoutSteps select { width: 160px; }
#checkoutSteps label { display: block; font-size: 11px; margin: 15px 0 5px 0; }
#checkoutSteps input.input-text { width: 220px; border: 1px solid #e9e9e9; background-color: #e9e9e9; padding: 3px; }
#checkoutSteps input.input-text:focus { border: 1px solid #3CB1E1 }
#checkoutSteps input.radio,
#checkoutSteps input.checkbox { float: left; }
#checkoutSteps .shipping { overflow: hidden; }
#checkoutSteps .shipping .span_2 { width: 250px; padding-top: 15px; }
#checkoutSteps .shipping label { display:inline; margin: 5px 0; line-height: 22px;}
#checkoutSteps .form-fields li { overflow: hidden; }
#checkoutSteps .form-fields .span_2 { width: 250px; }
#checkoutSteps .form-fields .span_4 { width: 505px; }
#checkoutSteps p.required { clear: both; text-align: right; margin: 20px 0; font-size: 11px; }
#checkoutSteps .billing_address { padding: 10px 0 0 0; }
#checkoutSteps .billing_address input.checkbox { margin-right: 5px; }
#checkoutSteps .billing_address label {
    display:inline;
    float: left;
    margin: 5px 0 0 0;
}

/** Step 1 Login **/

#checkout-step-opc-login .alt h3 {
    font-weight: normal;
    width: 50%;
}
#checkout-step-opc-login .alt h3 span{
    font-weight: bold;
}

#checkout-step-opc-login .span_5 {
    background-color: #fff;
    width: 408px;
    padding: 20px 35px;
    height: 300px;
    position: relative;
}
#checkout-step-opc-login .alt {
    background-color: transparent;
}
#checkout-step-opc-login .buttons-set {
    position: absolute;
    right: 35px;
    bottom: 35px;
}
#checkout-step-opc-login p {
    margin: 10px 0;
}
#checkout-step-opc-login .form-list {
    width: 200px;
}
#checkout-step-opc-login .form-list li {
    line-height: 20px;
}
#checkout-step-opc-login .form-list input.radio {
    float: left;
}
#checkout-step-opc-login .form-list input.input-text {
    width: 150px;
    border: 1px solid #e9e9e9;
    background-color: #e9e9e9;
    padding: 3px;
}
#checkout-step-opc-login .form-list label {
    display: block;
    margin: 5px 0 10px 0;
    font-size: 11px;
}

#checkout-step-opc-login .alt .form-list label {
    font-weight: bold;
}
#checkout-step-opc-login .f-left {
    background: transparent url(../images/arrow_right.png) no-repeat left center;
    padding-left: 15px;
    font-size: 12px;
    color: #333;
    text-decoration: none;
}
#checkout-step-opc-login .f-left:hover span,
#checkout-step-opc-login .f-left:active span,
#checkout-step-opc-login .f-left:focus span {
    color: #fff;
    background-color: #333;
}
.dott {
    list-style-type: square;
    list-style-position: inside;
    padding-left: 10px;
    margin-bottom: 15px;
    font-size: 12px;
}

.dott li {
    margin: 5px 0;
}

/** Step 2 Billing **/

#checkoutSteps #co-billing-form  p.required {
    margin: 0;
}

#billing-buttons-container button {
    float: right;
}
#billing-buttons-container div {
    width: 352px;
    clear: both;
}
#co-billing-form #billing-address-select,
#co-shipping-form #shipping-address-select {
    width: auto;
    max-width: 500px;
}

/** Step 3 Shipping **/
#shipping-buttons-container { overflow: hidden; line-height:25px; }
#shipping-buttons-container button {float: right;}
#shipping-buttons-container div { width: 352px; clear: both; }


/** Step 4 Shipping Method **/
#co-shipping-method-form {
    height: 300px;
}
#co-shipping-method-form .sp-methods dd {
    line-height: 20px;
}
#co-shipping-method-form .sp-methods label {
    display: inline;
}

/** Step 5 Payment **/
#co-payment-form {
    height: 300px;
}
#co-payment-form dt {
    line-height: 20px;
}
#co-payment-form dd {
    padding-left: 25px;
    font-size: 12px;
}
#co-payment-form .sp-methods label {
    display: inline;
}
#co-payment-form .input-box {
    padding: 1px;
}


/** Step 6 Review **/
#checkout-review-table { font-size: 12px; width: 100%; }
#checkout-review-table thead th { text-transform: uppercase; font-weight: normal; padding-bottom: 20px; }
#checkout-review-table tbody td { border-top: 2px solid #E9E9E9; padding: 7px 0; vertical-align: middle } 
#checkout-review-table .a-center { text-align: center; }
#checkout-review-table .a-left { text-align: left; }
#checkout-review-table .a-right,
#checkout-review-table .cart-price { text-align: right; }
#checkout-review-table .va-middle { vertical-align: middle; }
#checkout-review-table .va-base { vertical-align: baseline; }
#checkout-review-table .va-top { vertical-align: top; }
#checkout-review-table .va-base img { position:relative; top:2px; }
#checkout-review-table .va-top img { position:relative; top:-2px; }
#checkout-review-table tfoot th { font-weight: normal; text-transform: uppercase; }

#checkout-review-table tfoot th,
#checkout-review-table tfoot td {
    padding-top: 10px;
}

#checkout-review-table tfoot .first th,
#checkout-review-table tfoot .first td {
    padding-top: 20px;
}

#checkout-review-table .item-options dt { float: left; display: block; padding-right: 10px; }
#checkout-review-table th,
#checkout-review-table td { padding-right: 0px; }

#review-footer { overflow: hidden; padding: 25px 0; font-size: 12px; line-height: 20px; }
#review-footer a {
    background: transparent url(../images/arrow_right.png) no-repeat right center;
    padding-right: 15px;
    font-weight: bold;
    font-size: 12px;
    color: #333;
    text-decoration: none;
}

#review-footer a:hover span, 
#review-footer a:active span, 
#review-footer a:focus span {
    color: #fff;
    background-color: #333;
}

.review-info { display:block; float:left; font-size:11px; line-height:12px; padding-top:2px; width:157px; }

#checkoutSteps .go-back { float: left; }
#checkoutSteps .checkout-agreements { float: right; }
#checkoutSteps .checkout-agreements .agree input { margin-right: 7px; }
#checkoutSteps .checkout-agreements .agree label { float: left; width: 240px; margin: 3px 0px; }
.agree { line-height: 14px; overflow: hidden; margin-bottom: 5px; }

#checkout-agreements p {
    float: right;
    text-align: right;
}
#checkout-agreements p.agree {
    text-align: left;
}

#checkoutSteps .checkout-agreements label { margin: 5px 0; }




/** Global Styles **/
.headline {
    height: 38px;
}
.buttons-set {
    position: absolute;
    bottom: 35px;
    right: 35px;
    overflow: hidden;
    line-height: 30px;
}
.span_4 .buttons-set {
    width: 353px;
}
.span_6 .buttons-set {
    width: 505px;
}
.buttons-set button {
    float: right;
}

.validation-advice {
    font-size: 11px;
    color: red;
    line-height: 14px;
    padding: 3px 0 0 0;
}
.validation-failed {
    border: 1px solid red!important;
}

.container.span_2 {
    background-color: #fff;
    padding: 20px 35px;
    width: 120px;
}
.container.span_4 {
    padding: 20px 35px;
    width: 312px;
}
.container.span_6 {
    background-color: #fff;
    padding: 20px 35px 60px 35px;
    width: 502px;
    position: relative;
}

.please-wait {
    font-size: 12px;
    padding-left: 20px;
    float: left;
    background: transparent url(../images/ajax-loader.gif) no-repeat left center;
}
.please-wait img {
    display: none;
}

.checkout-onepage-index a {
    color: #3CB1E1;
    text-decoration: none;
}
.checkout-onepage-index a:hover,
.checkout-onepage-index a:active,
.checkout-onepage-index a:focus {
    color: #fff;
}


#checkoutStepsNavi { overflow: hidden; margin-bottom: 15px;  width: 100%; }
#checkoutStepsNavi li { display: inline; }
#checkoutStepsNavi li span { display: block; height: 20px; float: left; padding-right: 5px; }
#checkoutStepsNavi li a { float: left; display: block; line-height: 13px; background-color: #e9e9e9; text-decoration: none; font-size: 11px; letter-spacing: 0.05em; text-transform: uppercase; width: 138px; height: 25px; color: #afafaf; margin: 0 1px; padding: 5px 10px; cursor: default; }
#checkoutStepsNavi li.allow a { background-color: #e9e9e9; color: #333; cursor: pointer; }
#checkoutStepsNavi li.active a { background-color: #fff; color: #333; cursor: pointer; font-weight: bold; }


#opc-review a
{
    width:150px!important;
    padding:5px 7px!important;
}

#checkoutStepsNavi #opc-shipping a {width:130px;}

/** Checkout Progress **/
.checkout-progress-wrapper h3 {
    letter-spacing: 0px;
}
#checkout_wrapper .checkout-progress-wrapper h4 {
    letter-spacing: 0px;
    font-size: 13px;
    font-weight: bold;
}
.checkout-progress-wrapper .complete-headline {
    overflow: hidden;
    margin-bottom: 15px;
}
.checkout-progress-wrapper a.change { 
    float: right;
    background: transparent url(../images/arrow_right.png) no-repeat right center;
    padding-right: 15px;
    text-transform: lowercase;
    color: #000;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
    line-height: 14px;
}
.checkout-progress-wrapper a.change:hover span,
.checkout-progress-wrapper a.change:active span,
.checkout-progress-wrapper a.change:focus span {
    color: #fff;
    background-color: #333;
}
.checkout-progress-wrapper .complete-content {
    font-size: 12px;
    line-height: 14px;
    margin-bottom: 30px;
}



#checkoutSteps {
    float: left;
}
#checkoutSteps .step-title {
    display: none;
}


#checkout_wrapper h3,
#checkout_wrapper h4 {
    text-transform: uppercase;
}
#checkout_wrapper .step-title h3 {
    margin: 5px 0;
    color: #8f8f8f;
}
#checkout_wrapper .allow .step-title h3 {
    margin: 5px 0;
    color: #333333;
}
#checkout_wrapper h4 {
    font-weight: normal;
}
#checkout_wrapper h4 span {
    font-weight: bold;
}

.agreement_agb_link {
    padding-left: 25px;
}

.agreement_agb_link a {
    font-weight: normal;
}

