/* 
 * SHOPPINGCART
 */
 
/* Added to cart block */
.added-to-cart { display: none; opacity: 0; position: fixed; width: 300px; height: 300px; top: 50%; left: 50%; margin-left: -100px; margin-top: -100px; z-index: 999; background: #FFF; border: 2px solid #848484; border-radius: 3px; padding: 10px; box-sizing: border-box; transition: opacity .40s ease-in-out; -moz-transition: opacity .40s ease-in-out; -webkit-transition: opacity .40s ease-in-out; }
.added-to-cart .product-added { color: #5b5b5b; text-align: center; width: 100%!important; float: left; font-size: 18px!important; font-weight: 600; margin-bottom: 10px; margin-top: 10px;}
.added-to-cart .added { color: #5b5b5b; text-align: center; width: 100%; float: left; font-size: 16px!important; padding: 0 10px; box-sizing: border-box; }
.added-to-cart .close.button { background-image: url('/mvc/application/views/layouts/images/fancybox/fancybox_sprite.png'); position: absolute; top: -18px; right: -18px; width: 36px; height: 36px; cursor: pointer; z-index: 999998; }
.added-to-cart .continue { position: absolute; left: 50%; margin-left: -55px; bottom: 100px; width: 115px; text-decoration: underline; cursor: pointer; }
.added-to-cart .to-shoppingcart { position: absolute; bottom: 20px; left: 50%; margin-left: -45%; color: #FFF; text-align: center; width: 90%!important; float: left; font-size: 14px!important; line-height: 34px; display: block; /*border: 2px solid #e44235;*/ background-color: #5CB85C; padding: 1px 0 2px 0; text-decoration: none; cursor: pointer; transition: all 0.3s ease; -webkit-transition: all 0.3s ease; -moz-webkit-transition: all 0.3s ease; }
.added-to-cart .to-shoppingcart::before{content: ''; width: 20px; cursor: pointer; height: 20px; background: url(/mvc/application/views/layouts/images/basket-icon-button.png) no-repeat center center; display: inline-block; margin-right: 7px; vertical-align: text-top;}
.added-to-cart .to-shoppingcart:hover { background-color: #3B883B; transition: all 0.1s ease; -webkit-transition: all 0.1s ease; -moz-webkit-transition: all 0.1s ease; }
.custom-overlay { position: absolute; top: 0; left: 0; overflow: hidden; display: none; z-index: 998; background: url('/mvc/application/views/layouts/images/fancybox/fancybox_overlay.png'); }
.custom-overlay.show { width: 100%; height: 100%; display: block; }

/* general */
.hide { display: none; }
.shoppingcart_description { width: 80%; float: left; }
.button-row.small { width: 20%; float: right; }
.payment_image {float: left; width: 100px;}
/* Spinners */
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { opacity:1; }

/* buttons */
.button-row { float: left; position: relative; width: 100%; padding: 0px; margin: 20px 0; box-sizing: border-box; display: block; }
.button-row.top { margin-top: 0; }
.button-row.margin-top { margin: 40px 0 0 0; }
.button-row .button { min-width: 130px; height: 40px; padding: 0 10px; font-size: 16px; background: #5CB85C; opacity: 1; transition: 0.4s ease-in-out; appreance: none; -moz-webkit-appreance: none; -webkit-appreance: none; border: 0; color: #fff; cursor: pointer; text-decoration: none; line-height: 40px; text-align: center; }
.button-row .button:hover { background: #3B883B; transition: 0.1s; }
.button-row .button.next { float: right; text-align: left; padding: 0 0 0 10px; }
.button-row .button.next::after { content: url('/mvc/application/views/layouts/images/arrow-next-white.png'); position: absolute; right: 0px; top: 5px; bottom: 0; width: 25px; height: 25px; }
.button-row .button.previous { float: left; background: #ADADAD; font-size: 15px; }
.button-row .button.previous:hover { float: left; background: #888; }
.button-row .button.large { min-width: 190px; }

 /* Labels */
.shoppingcart-container { float: left; position: relative; width: 100%; padding: 0px; margin: 20px 0 0 0; box-sizing: border-box; display: block; }
.shoppingcart-container .container-labels { float: left; position: relative; width: 100%; padding: 0px; margin: 0; box-sizing: border-box; display: inline-block; border-bottom: 1px dashed #ADADAD; list-style: none}
.shoppingcart-container .container-labels .label { width: 66%; float: left; padding: 0; text-transform: uppercase; position: relative; box-sizing: border-box; color: #444; font-weight: 600; padding-left: 0!important; font-size: 14px!important; }
.shoppingcart-container .container-labels .label:before { display: none; }
.shoppingcart-container .container-labels .label:not(:nth-child(1)) { width: 10%; }
.shoppingcart-container .container-labels .label:nth-child(2) { width: 10%; text-align: right; }
.shoppingcart-container .container-labels .label:nth-child(3) { width: 16%; text-align: right; }
.shoppingcart-container .container-labels .label:nth-child(4) { width: 8%; text-align: right; }

/* Lines */
.shoppingcart-container .shoppingcart-line { float: left; position: relative; width: 100%; padding: 15px 0; margin: 0; box-sizing: border-box; display: inline-block; border-bottom: 1px dashed #ADADAD; list-style: none}
.shoppingcart-container .shoppingcart-line .line-item { width: 66%; float: left; padding: 0;  position: relative; box-sizing: border-box; color: #444!important; font-weight: 400; padding-left: 0!important; }
.shoppingcart-container .shoppingcart-line .line-item:before { display: none; }
.shoppingcart-container .shoppingcart-line .line-item:not(:nth-child(1)) { width: 10%; text-align: right; }
.shoppingcart-container .shoppingcart-line .line-item:nth-child(2) { width: 10%; text-align: right; }
.shoppingcart-container .shoppingcart-line .line-item:nth-child(3) { width: 16%; text-align: right; }
.shoppingcart-container .shoppingcart-line .line-item:nth-child(4) { width: 8%; text-align: right; }
.shoppingcart-container .shoppingcart-line .line-item .item-container { float: left; position: relative; width: 100%; padding: 0; margin: 0; box-sizing: border-box; display: block; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-image { float: left; width: 25%; box-sizing: border-box; padding: 0 10px 0 0; clear: both; position: relative; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-image img { display: block; max-width: 100%; margin: 0 auto; position: relative; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-title { float: left; font-size: 1em; width: 55%; padding-bottom: 10px; display: block; clear: right; position: relative; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-title a { color: #555; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete { position: relative; width: 17.5%; display: block; float: right; text-align: right; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete a { font-family: arial, sans-serif; font-size: 0.8em; color: #555; text-decoration: underline; cursor: pointer; font-weight: 100; text-align: right; width: 100%; float: left; transition: 0.3s; -webkit-transition: 0.3s; moz-webkit-transition: 0.3s; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete a:hover { color: #C91C1F; transition: 0.1s; -webkit-transition: 0.1s; moz-webkit-transition: 0.1s;  }
.shoppingcart-container .shoppingcart-line .line-item .item-container .amount { width: 100%; float: left; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .amount input[type="number"] { float: none; width: 50px; font-size: 14px; line-height: 26px; border: 1px solid #7d7d7d; background-color: #fff; text-align: center; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .amount input[type="number"]:focus { outline: none; }

/* Extra line */
/*.shoppingcart-container .shoppingcart-line .line-item .item-container .item-extra { position: relative; width: 55%; display: block; padding: 0; float: left; margin-top: 10px; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-extra-head { display: inline-block; float: left; width: 100%; background: #555; position: relative; padding: 0 5px; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-extra-head p { color: #fff; font-size: 13px; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-extra-row { display: inline-block; float: left; width: 100%; background: #F1F1F1; position: relative; padding: 5px; border-bottom: 1px dashed #848484; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-extra-row:last-child { border-bottom: 0; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info:before { display: none; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info { display: inline-block; font-size: 13px; float: left; width: 55%; background: #F1F1F1; position: relative; padding: 0 5px; box-sizing: border-box;  }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.title { font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: 0.2s }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.title:hover { white-space: initial; overflow: initial; text-overflow: initial; transition: 0.2s; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.amount { width: 15%; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.amount input[type="number"] { float: right; width: 35px; font-size: 12px; line-height: 34px; height: 28px; border: 1px solid #7d7d7d; background-color: #fff; text-align: center; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.price { width: 20%; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.delete { width: 10%; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.delete a { float: left; height: 20px; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.delete a span { width: 20px; height: 20px; margin: 4px 0; cursor: pointer; background: url('/mvc/application/views/layouts/images/trash.png'); float: left; transition: 0.3s; -webkit-transition: 0.3s; moz-webkit-transition: 0.3s; }
.shoppingcart-container .shoppingcart-line .line-item .item-container .item-info.delete a span:hover { background: url('/mvc/application/views/layouts/images/trash-red.png'); transition: 0.1s; -webkit-transition: 0.1s; moz-webkit-transition: 0.1s; }
.shoppingcart-container .shoppingcart-line .extra-total { position: absolute; right: 0; bottom: 10px; font-size: 14px; line-height: 27px; color: #888; }
.shoppingcart-container .shoppingcart-line .extra-total .price { padding-left: 25px; color: #444;}*/

/* Total price */
.shoppingcart-container .total-price-container { float: right; font-size: 14px; line-height: 27px; min-height: 100px; height: auto; width: 300px; background: #F3F3F3; margin: 20px 0 0 0; box-sizing: border-box; padding: 10px; position: relative; }
.shoppingcart-container .total-price-container .label { float: left; width: 67%; box-sizing: border-box; text-align: left; margin: 0; padding: 0; color: #333; }
.shoppingcart-container .total-price-container .price { float: left; width: 33%; font-size: 14px; box-sizing: border-box; text-align: right; margin: 0; padding: 0; font-weight: 500; color: #333; }
.shoppingcart-container .total-price-container .price.total { color: #333; font-size: 16px; font-weight: 600; }
.shoppingcart-container .total-price-container .price.total,
.shoppingcart-container .total-price-container .label.total {/* margin-top: 10px;*/ }
.shoppingcart-container .total-price-container .label.shipping { font-size: 12px; color: #999; }
.shoppingcart-container .total-price-container .price.shipping { font-size: 12px; color: #5CB85C; }
.shoppingcart-container .total-price-container .notice { margin-top: 20px; float: left; text-align: center; font-weight: 100; font-size: 12px!important; color: #5CB85C!important; line-height: 14px!important; }

/*
 * Shoppingcart steps | general
 */
 
.customer-records,
.delivery-address,
.payment-method { float: left; position: relative; width: 100%; padding: 0px; margin: 0; box-sizing: border-box; display: block; border: 1px solid #DDD; }
.sexy-div { position: relative; float: left; width: 100%; box-sizing: border-box; padding: 50px 0;}
.sexy-div .sexy-line { display:block; border:none; color:white; height:1px; background:black; background: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 350, from(#888), to(#fff)); }

/* Step 2 | Delivery address */
#delivery-address-info { display: none; }

/* Step 3 | Payment method*/
.form-group .payment-issuers span { float: left; padding: 8px 0; }
.form-group .payment-issuers .select-box{width: 120px; display: inline-block; height: auto; float: initial; border: 1px solid #ccc; overflow: hidden; position: relative; background-color: #fff; border-radius: 0; margin: 5px 0 0 10px;}
.form-group .payment-issuers .select-box::after{content: ''; position: absolute; width: 11px; height: 6px; background: url(/mvc/application/views/layouts/images/select-option-arrow.png) no-repeat center center; right: 9px; top: 11px; pointer-events: none;}
.form-group .payment-issuers .select-box::before{content: ''; position: absolute; width: 11px; height: 6px; background: url(/mvc/application/views/layouts/images/select-option-arrow.png) no-repeat center center; right: 9px; top: 11px; pointer-events: none;}
.form-group .payment-issuers .select-box select{background: none; border: none; display: block; outline: none !important; width: 100%; font-size: 13px; -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 5px 25px 5px 10px; color: #000; font-weight: 400; cursor: pointer; margin-left: 0;}
.payment-method img{width: auto; height: auto; max-width: 70px; margin-top: 15px;}
.payment-method .radio {margin-top: 15px;}
.payment-method p {margin-top: 15px;}
.payment-method .text {margin-bottom: 0px!important;}


/* Labels */
.order-overview { float: left; position: relative; width: 100%; padding: 0px; margin: 20px 0 0 0; box-sizing: border-box; display: block; }
.order-overview .overview-labels { float: left; position: relative; width: 100%; padding: 0px; margin: 0; box-sizing: border-box; display: inline-block; border-bottom: 1px dashed #ADADAD; }
.order-overview .overview-labels .label { width: 64%; float: left; padding: 0; text-transform: uppercase; position: relative; box-sizing: border-box; color: #222; font-weight: 600; padding-left: 0!important; font-size: 14px!important; }
.order-overview .overview-labels .label:before { display: none; }
.order-overview .overview-labels .label:not(:nth-child(1)) { width: 10%; text-align: right; }
.order-overview .overview-labels .label:not(:nth-child(1)) { width: 20%; }
.order-overview .overview-labels .label:nth-child(2) { width: 10%; text-align: center; }
.order-overview .overview-labels .label:nth-child(3) { width: 16%; text-align: center; }
.order-overview .overview-labels .label:nth-child(4) { width: 10%; text-align: right; }

/* Lines */
.order-overview .overview-line { float: left; position: relative; width: 100%; padding: 15px 0; margin: 0; box-sizing: border-box; display: inline-block; border-bottom: 1px dashed #ADADAD; }
.order-overview .overview-line .line-item { width: 64%; float: left; padding: 0;  position: relative; box-sizing: border-box; color: #444; font-weight: 400; padding-left: 0!important; }
.order-overview .overview-line .line-item:before { display: none; }
.order-overview .overview-line .line-item:not(:nth-child(1)) { width: 20%; text-align: right; }
.order-overview .overview-line .line-item:nth-child(2) { width: 10%; text-align: center; }
.order-overview .overview-line .line-item:nth-child(3) { width: 16%; text-align: center; }
.order-overview .overview-line .line-item:nth-child(4) { width: 10%; text-align: right; }
.order-overview .overview-line .line-item .item-container { float: left; position: relative; width: 100%; padding: 0; margin: 0; box-sizing: border-box; display: block; }
.order-overview .overview-line .line-item .item-container .item-image { float: left; width: 25%; box-sizing: border-box; padding: 0 10px 0 0; clear: both; position: relative; }
.order-overview .overview-line .line-item .item-container .item-image img { display: block; max-width: 100%; margin: 0 auto; position: relative; }
.order-overview .overview-line .line-item .item-container .item-title { float: left; font-size: 1em; width: 75%; padding-bottom: 10px; display: block; clear: right; position: relative; }

/* Extra line */
.order-overview .overview-line .line-item .item-container .item-extra { position: relative; width: 55%; display: block; padding: 0; float: left; }
.order-overview .overview-line .line-item .item-container .item-extra-head { display: inline-block; float: left; width: 100%; background: #FFF; position: relative; padding: 5px; border-bottom: 1px solid #555; }
.order-overview .overview-line .line-item .item-container .item-extra-head li { display: inline-block; width: 60%; color: #000; font-size: 13px; font-weight: 600; padding: 0; }
.order-overview .overview-line .line-item .item-container .item-extra-head li.amount,
.order-overview .overview-line .line-item .item-container .item-extra-head li.price { width: 18%; text-align: right; }
.order-overview .overview-line .line-item .item-container .item-extra-head li.amount { text-align: center; }
.order-overview .overview-line .line-item .item-container .item-extra-head li:before { display: none; }
.order-overview .overview-line .line-item .item-container .item-extra-row { display: inline-block; float: left; width: 100%; background: #FFF; position: relative; padding: 5px 0 5px 5px; border-bottom: 1px dashed #848484; }
.order-overview .overview-line .line-item .item-container .item-extra-row.last { border-bottom: 0; }
.order-overview .overview-line .line-item .item-container .item-info:before { display: none; }
.order-overview .overview-line .line-item .item-container .item-info { display: inline-block; font-size: 13px; float: left; width: 60%; background: #FFF; position: relative; padding: 0; box-sizing: border-box;  }
.order-overview .overview-line .line-item .item-container .item-info.title { font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: 0.2s }
.order-overview .overview-line .line-item .item-container .item-info.title:hover { white-space: initial; overflow: initial; text-overflow: initial; transition: 0.2s; }
.order-overview .overview-line .line-item .item-container .item-info.amount,
.order-overview .overview-line .line-item .item-container .item-info.price { width: 20%; }
.order-overview .overview-line .line-item .item-container .item-info.price p { text-align: right; font-size: inherit; }
.order-overview .overview-line .line-item .item-container .item-info.amount p { text-align: center; font-size: inherit; }
.order-overview .overview-line .line-item .item-container .item-extra .total-price-extra { float: right; width: 30%; border-top: 2px solid #000; }
.order-overview .overview-line .line-item .item-container .item-extra .total-price-extra span { font-size: 13px; }
.order-overview .overview-line .line-item .item-container .item-extra .total-price-extra span p { font-size: inherit; float: right; }
.order-overview .overview-line .total-extra { position: absolute; right: 0; bottom: 10px; font-size: 14px; line-height: 27px; color: #888; }
.order-overview .overview-line .total-extra p { padding-left: 25px; color: #444; display: inline-block; }

/* Shippingcost notice */
.order-overview .shippingcost-notice { float: left; width: 300px; background: #f5f5f5; color: #555; margin-top: 30px; padding: 10px; position: relative; display: block; box-sizing: border-box; }
.order-overview .shippingcost-notice p { font-size: 14px!important; color: #555; }
.order-overview .shippingcost-notice .green { color: #5CB85C; }

/* Total price */
.order-overview .total-price-container { float: right; font-size: 14px; line-height: 27px; height: auto; width: 300px; background: #FFF; margin: 20px 0 0 0; box-sizing: border-box; padding: 10px 0 10px 10px; position: relative; }
.order-overview .total-price-container .label { float: left; width: 70%; box-sizing: border-box; text-align: left; margin: 0; padding: 0; }
.order-overview .total-price-container .price { float: left; width: 30%; font-size: 14px; box-sizing: border-box; text-align: right; margin: 0; padding: 0; font-weight: 500; }
.order-overview .total-price-container .price.shipping { color: #5CB85C; }
.order-overview .total-price-container .total-price-separator { float: right; width: 25%; position: relative; display: block; border-top: 2px solid #000; margin: 5px 0; margin-left: 75%; }
.order-overview .total-price-container .label.total,
.order-overview .total-price-container .price.total { font-weight: 600; font-size: 16px; }

/* Steps & blocks */
.all-steps { float: left; position: relative; width: 100%; padding: 0px; margin: 0; box-sizing: border-box; display: block; }
.all-steps .block { float: left; width: 23.5%; margin: 1%; position: relative; padding: 10px 20px!important; box-sizing: border-box; border: 1px solid #ADADAD; min-height: 220px; }
.all-steps .block:first-child { margin-left: 0!important; }
.all-steps .block:last-child { margin-right: 0!important; }
.all-steps .block:before { display: none; }
.all-steps .block .title { width: 100%; float: left; position: relative; }
.all-steps .block .title h4 { width: 100%; color: #444; font-size: 16px; text-align: center; padding-bottom: 0px; border-bottom: 3px solid #444; padding: 0 15px 5px 15px; display: table; margin: 0 auto; position: relative; }
.all-steps .block .text { float: left; width: 100%; font-size: 14px; line-height: 20px; padding: 10px 0; }
.all-steps .block .button { position: absolute; bottom: 10px; width: 80%; min-height: 30px; padding: 0 10px; float: left; background: #ADADAD; opacity: 1; transition: 0.4s ease-in-out; -webkit-transition: 0.4s ease-in-out; -moz-webkit-transition: 0.4s ease-in-out; appreance: none; -moz-webkit-appreance: none; -webkit-appreance: none; border: 0; }
.all-steps .block .button:hover { background: #888; transition: 0.1s; -webkit-transition: 0.1s;; -moz-webkit-transition: 0.1s; }
.all-steps .block .button a {color: #fff; cursor: pointer; text-decoration: none; line-height: 30px; text-align: center; font-size: 12px; display: table;}
.all-steps .block .issuer-image { display: block; margin: auto; height: 40px; width: auto}
.date { float: left; width: 100%; font-size: 14px; color: #000; }
.date p { float: left; width: 100%; font-size: inherit!important; line-height: 14px!important; padding: 0; }

/* Remark row */
.remark-row { float: left; position: relative; width: 100%; padding: 0px; margin: 0; box-sizing: border-box; display: block; }
.remark-row .remark-container { float: left; position: relative; width: 100%; padding: 0px; margin: 0; box-sizing: border-box; display: block; }
.remark-row .remark-container .remark { float: left; position: relative; width: 100%; padding: 15px; line-height: 20px; font-family: inherit; margin: 0; box-sizing: border-box; display: block; height: 150px; overflow: hidden; appearance: none; -webkit-appearance: none; -moz-webkit-appearance: none; }
.remark-row .remark-container .remark:focus { outline: none; }
.remark-row .remark-container .label { float: left; font-size: 14px; font-weight: 600; margin-bottom: 5px; }

/* 
 * FORM STYLES
 */
 
 /* Form groups */
.form-groups { float: left; position: relative; width: 100%; padding: 10px; margin: 0; box-sizing: border-box; display: block; }
.form-groups.padding { padding: 20px 0 10px 20px; }
.form-groups.half { width: 50%; }
.form-groups .text { padding-bottom: 20px; }
.form-groups .missing p { color: #A94442; font-size: 13px!important; float: left; margin-left: 25px; }
.form-groups .missing p.left { margin-left: 0; margin-bottom: 20px; }
.form-groups .form-group { float: left; position: relative; width: 50%; padding: 10px; margin: 0; box-sizing: border-box; display: block; }
.form-groups .form-group.locations { float: right; width: 100%; }
.form-groups .form-group.locations p { font-size: 12px!important; color: #888;  }
.form-groups .form-group.disabled { color: #888; }
.form-groups .form-group.half { width: 25%; }
.form-groups .form-group.full { width: 100%; padding: 5px 0; }
.form-groups .form-group .postalcode-message { position: relative; display: none; font-size: 14px; color: #cd1111; float: left; margin: 10px 0 0 0}
.form-groups .form-group .postalcode-message a { color: #cd1111; }
.form-groups .form-group .postalcode-message.show {display: block;}

/* Input types | Form group items */
.form-groups .form-group .input { background: #fff; padding: 0 10px; border: 1px solid #ddd; border-radius: 0; display: block; color: #555; height: 40px; margin: 0; vertical-align: middle; width: 100%; transition: all .2s ease 0s; }
.form-groups .form-group .input::-webkit-input-placeholder { color: #CDCDCD; letter-spacing: 0.2px; }
.form-groups .form-group .input:focus { outline: 1px solid #ADADAD; background: #F5F5F5; }
.form-groups .form-group .input:focus::-webkit-input-placeholder { color: #ADADAD; }  
.form-groups .form-group .input.empty, .form-groups .form-group select.empty { background: #FFE8E8; border: 1px solid #EBCCD1; color: #db1111}
.form-groups .form-group .input.empty::-webkit-input-placeholder { color: #777; }
.form-groups .form-group .input.empty:focus { background: #FFE8E8; color: #777; outline: 1px solid #AB6868; }
.form-groups .form-group .label { float: left; position: relative; width: 100%; padding: 5px 0; margin: 0; box-sizing: border-box; display: block; } 
.form-groups .form-group .missing { display: none; }

/* Radio button */
.form-group .radio-label { display: block; cursor: pointer; line-height: 1.75; font-size: 14px; float: left; font-weight: 600; width:100%; }
.form-group [type="radio"] { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0;  position: absolute; width: 1px;}
.form-group [type="radio"] + span { display: block; float: left; }
.form-group [type="radio"] + span:before { content: ''; display: inline-block; box-shadow: 0 0 0 0.1em #CECECE; width: 15px; height: 15px; vertical-align: -0.25em; border-radius: 1em; box-sizing: border-box; border: 3px solid #fff;  margin-right: 0.75em; transition: all .2s;}
.form-group [type="radio"]:checked + span:before { background: #5CB85C; }
.form-group .radio-label.img { line-height: 2.75; height: 70px; }
.form-group .radio-label p { line-height: 40px!important; float: right; margin-left: 10px; font-weight: 600!important; }
.form-group p.desc,
.form-group .payment-issuers  { line-height: 18px!important; float: left; clear: both; font-size: 14px!important; width: 100%; margin-left: 0px; font-weight: 400!important; margin-bottom: 10px; }
.form-group p.desc.short { margin-left: 25px; }
.form-group .payment-issuers span { font-weight:600; color: #48A748; }
.form-group .payment-issuers select { margin-left: 10px; font-size: 14px; padding: 2.5px 5px; color: #333; font-weight: 400; cursor: pointer;}

.form-groups .form-group.full .establishmentList { margin-left:45px; }

/* Checkbox */
.order-agreed { float: left; position: relative; width: 100%; padding: 0px; margin: 10px 0 0 0; box-sizing: border-box; display: block; }
.order-agreed .input-wrap.checkbox label{width: 100%; position: relative; cursor: pointer; }
.order-agreed .input-wrap.checkbox label:before{content: ""; display: inline-block; border: 1px solid #888; width: 14px; height: 14px; background-color: #fff; margin-right: 18px; position: relative; top: 2px; transition: 0.4s ease-in-out; -webkit-transition: 0.4s ease-in-out; -moz-webkit-transition: 0.4s ease-in-out; }
.order-agreed .input-wrap.checkbox label:hover:before { background: #FFF url("/mvc/application/views/layouts/images/check_transparent.png") no-repeat center center!important; transition:all 0s ease; -webkit-transition: all 0s ease; -moz-webkit-transition:all 0s ease; cursor: pointer; }
.order-agreed input[type=checkbox]{display: none;}
.order-agreed .checkbox label:before{border-radius: 0;}
.order-agreed input[type=checkbox]:checked + label:before{content: ""; background: #FFF url("/mvc/application/views/layouts/images/check_green.png") no-repeat center center!important; cursor: pointer;}
.order-agreed input[type=checkbox]:checked + label:hover:before{content: ""; background: #FFF url("/mvc/application/views/layouts/images/check_green.png") no-repeat center center!important; }

/* Animation(s) */
.grow, .shrink, .border, .box-shadow { transition:all 0.2s ease; -webkit-transition: all 0.2s ease; -moz-webkit-transition:all 0.2s ease; }
.grow:hover, .shrink:hover, .border:hover, .box-shadow:hover { transition:all 0.2s ease; -webkit-transition: all 0.2s ease; -moz-webkit-transition:all 0.2s ease; }
.grow:hover { -webkit-transform: scale(1.05) translate3d(0,0,0); -ms-transform: scale(1.05) translate3d(0,0,0); transform: scale(1.05) translate3d(0,0,0); }
.shrink:hover { -webkit-transform: scale(0.95) translate3d(0,0,0); -ms-transform: scale(0.95) translate3d(0,0,0); transform: scale(0.95) translate3d(0,0,0); }
.border:hover { box-shadow: inset 0 0 0 25px #848484; }
.box-shadow:hover { box-shadow: 2px 2px #848484, 3px 3px #848484, 4px 4px #555; -webkit-transform: translateX(-5px) translate3d(0,0,0); transform: translateX(-5px) translate3d(0,0,0); }

/* tablet landscape */
@media (max-width: 1024px), (max-device-width: 1024px), (min-device-width: 1024px) and (max-width: 1024px) {

	/* 
	 * Shoppingcart general 
	 */
	
	/* Buttons */
	.btn-shoppingcart { font-size: 15px; text-indent: 15px; line-height: 30px; }
	.added-to-cart .to-shoppingcart::before { margin-top: -2.5px; }
	
	/* Layout of steps */
	.form-1 .sidebar, 
	.form-2 .sidebar, 
	.form-3 .sidebar, 
	.form-4 .sidebar { display: none; }
	.form-1 .main-content, 
	.form-2 .main-content, 
	.form-3 .main-content, 
	.form-4 .main-content { width: 100%; }
	
	/* Shoppingcart index */
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete { width: 20%!important; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete a { color: #222!important; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .amount input[type="number"] { border-radius: 0; line-height: 24px!important; height: auto!important; box-sizing: border-box; padding: 0; }
	
	/* Shoppingcart step 2/4 */
	.form-group.locations p.desc.short { max-width: 100%; padding-left: 20px; margin: 0; box-sizing: border-box;}
	/*.form-groups .form-group.half .label { font-size: 12px; min-height: 28px; }*/
	
	/* Shoppingcart step 3/4 */
	.form-group .payment-issuers .select-box{width: auto; height: auto; float: left; overflow: hidden; position: relative; background-color: #fff; border: 1px solid #ccc;; border-radius: 0; margin: 2.5px 0 0 10px;}
	.form-group .payment-issuers .select-box::after{content: ''; position: absolute; width: 11px; height: 6px; background: url(/mvc/application/views/layouts/images/select-option-arrow.png) no-repeat center center; right: 9px; top: 11px; pointer-events: none;}
	.form-group .payment-issuers .select-box::before{content: ''; position: absolute; width: 11px; height: 6px; background: url(/mvc/application/views/layouts/images/select-option-arrow.png) no-repeat center center; right: 9px; top: 11px; pointer-events: none;}
	.form-group .payment-issuers .select-box select{background: none; border: none; display: block; outline: none !important; width: 100%; font-size: 13px; -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 5px 34px 5px 10px; color: #000; font-weight: 400; cursor: pointer;}

	/* Step 4/4 */
	.order-overview .overview-line .line-item .item-container .item-extra-head li,
	.remark-row .remark-container .remark { border: 1px solid #ccc; border-radius: 0; }
}


/* tablet portrait */
@media (max-device-width: 1023px) and (orientation: portrait), (max-device-width: 767px) and (orientation: landscape), (min-device-width: 1024px) and (max-width: 979px), (min-device-width: 1024px) and (max-width: 980px) and (orientation: portrait), (max-width: 767px) {

	/* General */ 
	.form-groups .form-group .label { font-size: 15px; }
	.form-group.clear-left { clear: left; }
	.form-1 .main-content,
	.form-2 .main-content,
	.form-3 .main-content,
	.form-4 .main-content { width: 100%; }
	
	/* Index */
	.main-content.full { width: 100%; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-title { width: 52.5%; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete { width: 22.5%!important; }
	
	/* Step 2 */
	.form-group p.desc { width: 320px; }
	
	/* Step 3 */
	.form-group .payment-issuers { width: 275px; }
	  
	/* Step 4 */
	.all-steps { padding: 0; }
	.form-4 .main-content .top-infomation .breadcrumb span { font-weight: 600; font-size: 15px; margin-bottom: 10px; }
	.order-overview .total-price-container .label { width: 75%; }
	.order-overview .total-price-container .price { width: 25%; } 
	.all-steps .block { padding: 10px 15px!important; min-height: 250px; }
	.all-steps .block .title h4 { font-size: 14px; }
	.all-steps .block .text { font-size: 13px; }
	.all-steps .block .button { padding: 0 2.5px; width: 82.5%; }
	.all-steps .block .button a { font-size: 11px; }
	.all-steps .block .issuer-image { display: block; position: absolute; left: 50%; top: 50%; margin-left: -33px; }
}
  

/* mobile landscape */
@media (max-device-width: 767px) and (orientation: portrait), (max-device-width: 499px) and (orientation: landscape), (max-width: 767px) {

	/* Added to cart */ 	
	.added-to-cart { width: 250px; height: 250px; margin-top: -120px; }
	.added-to-cart .continue { bottom: 70px; }

	/* Shoppingcart index */
	.button-row.small { margin-top: 30px; }
	.shoppingcart-container { font-size: 15px!important; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-title { width: 50%; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete { width: 27.5%; margin-right: 5px; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete a { font-size: 12px; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .amount input[type="number"] { width: 40px; }
	.shoppingcart-container .total-price-container { width: 220px; }
	.shoppingcart-container .total-price-container .price.total, 
	.shoppingcart-container .total-price-container .label.total { font-size: 16px; }
	
	/* Step 2 */
	.form-groups .form-group .label { font-size: 14px; }
	.form-group p.desc { width: 100%; }
	
	/* Step 4 */
	.order-overview .overview-labels .label { width: 60%; }
	.order-overview .overview-labels .label:before { display: none; }
	.order-overview .overview-labels .label:not(:nth-child(1)) { width: 12.5%;}
	.order-overview .overview-labels .label:not(:nth-child(1)) { width: 12.5%; }
	.order-overview .overview-labels .label:nth-child(2) { width: 12.5%; }
	.order-overview .overview-labels .label:nth-child(3),
	.order-overview .overview-labels .label:nth-child(4) { width: 12.5%; }
	.order-overview .overview-line .line-item { width: 60%; }
	.order-overview .overview-line .line-item:before { display: none; }
	.order-overview .overview-line .line-item:not(:nth-child(1)) { width: 12.5%;}
	.order-overview .overview-line .line-item:not(:nth-child(1)) { width: 12.5%; }
	.order-overview .overview-line .line-item:nth-child(2) { width: 12.5%; }
	.order-overview .overview-line .line-item:nth-child(3),
	.order-overview .overview-line .line-item:nth-child(4) { width: 12.5%; }
	.order-overview .shippingcost-notice,
	.order-overview .total-price-container { width: 45%; }
	
	.all-steps .block,
	.all-steps .block:first-child { width: 47%; margin: 10px 1.5%!important; }
}


/* mobile portrait */
@media (max-device-width: 499px) and (orientation: portrait), (max-width: 499px) { 

	/* Added to cart */
 	.added-to-cart { margin-left: -125px; }
	
	/* General */
	.shoppingcart_description { width: 100%; }
	.button-row.small { width: 100%; float: left; margin-top: 15px; }
	.button-row .button.previous { color: #ADADAD; max-width: 50%; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
	.button-row .button.previous::before { content: 'Vorige'; font-size: 15px; max-width: 50%; color: #FFF; text-align: center; }
	
	/* Shoppingcart index */
	.shoppingcart-container { margin-top: 20px; }
	.shoppingcart-container .container-labels .label { width: 35%; font-size: 12px; padding-left: 10px!important; }
	.shoppingcart-container .container-labels .label:nth-child(1) { padding-left: 0!important; }
	.shoppingcart-container .container-labels .label:not(:nth-child(1)) { width: 21%!important; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-title { width: 100%; padding: 5px 0px; line-height: 18px; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-image { display: none; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete { position: absolute; left: 0; margin-bottom: -37.5px; bottom: 0; width: 35%!important; }
	.shoppingcart-container .shoppingcart-line .line-item .item-container .item-delete a { font-size: 11px; text-align: center; }
	.shoppingcart-container .shoppingcart-line .line-item { width: 100%; padding-bottom: 10px; }
	.shoppingcart-container .shoppingcart-line .line-item:nth-child(2) { margin-left: 35%; width: 21%; }
	.shoppingcart-container .shoppingcart-line .line-item:nth-child(3), 
	.shoppingcart-container .shoppingcart-line .line-item:nth-child(4) { width: 21%; float: left; }
	.shoppingcart-container .total-price-container { width: 100%; }
	
	/* Index | Line extra */
	.shoppingcart-container .shoppingcart-line.extra .line-item .item-container .item-delete { margin-bottom: -67.5px; }
	.shoppingcart-container .shoppingcart-line.extra .line-item:nth-child(2),
	.shoppingcart-container .shoppingcart-line.extra .line-item:nth-child(3), 
	.shoppingcart-container .shoppingcart-line.extra .line-item:nth-child(4) { margin-top: 30px; }
	.shoppingcart-container .shoppingcart-line.extra .line-item .item-container .item-extra { width: 100%; }
	.shoppingcart-container .shoppingcart-line.extra .extra-total { position: relative; float: right; bottom: auto; margin-right: 5px; font-size: 14px; margin-top: -70px; }
	.shoppingcart-container .shoppingcart-line.extra .extra-total .price { font-size: 15px; }
	
	/* Step 1 */
	.form-groups .form-group { width: 100%; }
	.form-groups .form-group.half { width: 50%; }
	
	/* Step 2 */
	.delivery-address .form-groups { padding: 0 10px 10px 10px; }
	.delivery-address .form-groups.padding { width: 100%; padding: 10px 0 10px 20px;  }
	.form-groups.date { padding-bottom: 0; }
	.form-groups .form-group p.desc, 
	.form-groups .form-group .payment-issuers { width: auto; }
	.form-groups .form-group .payment-issuers span { display: block; padding: 0; }
	.form-groups .form-group.locations { padding: 0; }
	.form-groups .form-group .postalcode-message { font-size: 11px; }
	
	/* Step 3 */
	.form-group .radio-label.img img { max-width: 40px; padding-top: 10px;}
	.payment-method .form-group p.desc, 
	.form-group .payment-issuers { margin-left: 75px; width: 70%; }
	.form-group .payment-issuers select { margin-left: 0; }
	.form-group .payment-issuers .select-box { display: block; margin-left: 0; }
	
	/* Step 4 */
	.order-overview .overview-labels .label { width: 35%; font-size: 13px; padding-left: 0px!important; }
	.order-overview .overview-labels .label:not(:nth-child(1)) { width: 21%!important; }
	.order-overview .overview-line .line-item .item-container .item-image { display: none; }
	.order-overview .overview-line .line-item .item-container .item-title { width: 100%; padding: 0; }
	.order-overview .overview-line .line-item { width: 100%; }
	.order-overview .overview-line .line-item:nth-child(2) { margin-left: 35%; width: 21%; }
	.order-overview .overview-line .line-item:nth-child(3), 
	.order-overview .overview-line .line-item:nth-child(4) { width: 21%; float: right; } 
	.order-overview .overview-line.extra .line-item:nth-child(2),
	.order-overview .overview-line.extra .line-item:nth-child(3),
	.order-overview .overview-line.extra .line-item:nth-child(4) { margin-top: 30px; }
	.order-overview .overview-line .total-extra { bottom: 45px; }
	.order-overview .shippingcost-notice, 
	.order-overview .total-price-container{ width: 100%; }
	
	.order-overview .overview-line .line-item .item-container .item-extra { width: 100%; margin-top: 5px; padding:0; border: 1px solid #ccc; }
	.order-overview .overview-line .line-item .item-container .item-extra-head { padding: 2.5px 5px; border-bottom: 1px solid #ccc; /*background: #ccc;*/ }
	.order-overview .overview-line .line-item .item-container .item-extra-head li { color: #555; }
	.order-overview .overview-line .line-item .item-container .item-extra-row { /*background: #ededed;*/ padding: 2.5px 5px; }
	.order-overview .overview-line .line-item .item-container .item-info { /*background: #ededed;*/ }
	
	.all-steps .block,
	.all-steps .block:first-child { width: 90%; margin: 10px 5%!important; }
	.all-steps .block .button { width: 85%; }

	.order-agreed .input-wrap.checkbox label { font-size: 12px; }
	.order-agreed .input-wrap.checkbox label:before { margin-right: 3px; }
	.remark-row .button-row .button.previous { min-width: 45%; max-width: 45%; }
	.remark-row .button-row .button.submit { min-width: 54%; max-width: 54%; font-size: 12px; }
}

.shoppingcart-container .shoppingcart-line .line-item .item-container .item-title .item-remark-field { background: #fff; padding: 0 5px; border: 1px solid #ddd; border-radius: 0; display: block; color: #555; height: 27.5px; margin: 5px 0 0 0; vertical-align: middle; width: 100%; transition: all .2s ease 0s; }
.order-overview .overview-line .line-item .item-container .item-title .item-remark-field { background: #fff; padding: 0 5px; border: 1px solid #ddd; border-radius: 0; display: block; color: #555; height: 27.5px; margin: 5px 0 0 0; vertical-align: middle; width: 100%; transition: all .2s ease 0s; }