.shoppingcart_tabs{margin: 0 0 15px;}
.shoppingcart_tabs .step_item{float: left; width: 25%; padding: 10px 25px 10px 60px; background: #F8F8F8; font-size: 15px; line-height: 34px;}
.shoppingcart_tabs .step_item i{float: left; margin: 0 0 0 -47px; width: 34px; height: 34px; line-height: 34px; text-align: center; border-radius: 100%; background: #fff;}
.shoppingcart_tabs .step_item.done{background: #0C9300; color: #fff;}
.shoppingcart_tabs .step_item.done i{color: #0C9300}
.shoppingcart_tabs .step_item.current{background: rgba(75,182,80,0.5); color: #fff;}
.shoppingcart_tabs .step_item.current i{color: #0C9300}

#shopping_cart{margin: 0 0 30px; position: relative;}
.shopping_cart_container{font-size: 13px;}
.shopping_cart_row {border-bottom: 1px solid #A7ACBD; position: relative; padding: 5px 0; background: white; padding: 20px;}
.shopping_cart_row:first-child{border-top: 1px solid #A7ACBD;}

.shopping_cart_row > .scp-row {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  align-content: flex-start;
  flex-direction: row;
}
.shopping_cart_row > .scp-row .scp-cell {
  flex-basis: auto;
}
.shopping_cart_row > .scp-row .scp-cell-image {
  flex-basis: 70px;
}
.shopping_cart_row > .scp-row .scp-cell-name {
  flex: 1;
  padding: 0 15px;
  display: flex;
  flex-direction: column;
}
.shopping_cart_row > .scp-row .scp-cell-period {
  flex-basis: 190px;
}
.shopping_cart_row > .scp-row .scp-cell-qty {
  flex-basis: 70px;
}
.shopping_cart_row > .scp-row .scp-cell-price {
  flex-basis: 150px;
}
.shopping_cart_row > .scp-row .scp-cell-remove {
  flex-basis: 30px;
  text-align: right;
}

.block_periods span {
	text-align: left;
}

.shopping_cart_row > .first_line {position: relative; width: 100%;}
.shopping_cart_row > .first_line > span .qty_row input {width: 30px; height: 32px; border: 1px solid #D3D7E0; text-align: center; }
.shopping_cart_row > .first_line > span .qty_row a {width: 30px; height: 32px; line-height: 32px; text-align: center; color: #D3D7E0; }
.shopping_cart_row > .first_line > span .qty_row a.active {color: #0C9300; }
.shopping_cart_row > .first_line > span input.datepicker {width: 130px; height: 32px; padding: 0 0 0 25px; border: 1px solid #D3D7E0; background: #fff url(../../img/calendar.png) no-repeat 5px center / 12px auto; cursor: pointer; font-size: 12px;}
.shopping_cart_row > .first_line > span.scp-cell-price .scr_price_product { width: 55%; display: inline-block; vertical-align: middle; text-align: left; }
.shopping_cart_row > .first_line > span.scp-cell-price .scr_price_total { width: 45%; display: inline-block; vertical-align: middle; text-align: right; }
.shopping_cart_row > .first_line > span.scp-cell-remove a {text-align: center;color: #A7ACBD;font-size: 16px;}
.shopping_cart_row > .first_line > span.scp-cell-remove a:hover { color: #ff0000; }
.shopping_cart_row .product_link{color: inherit}
.shopping_cart_row .product_link:hover{text-decoration: underline}
.shopping_cart_row .period { display: inline-block; max-width: 85px; padding-right: 10px; word-break: break-all; text-align: center; }

.shopping_cart_row > .second_line {position: relative; display: block; margin: 10px -10px 0;}
.shopping_cart_row > .second_line .option {position: relative; display: inline-block; width: 100%; padding: 0 10px;}
.shopping_cart_row > .second_line .option label {display: block;font-weight: 400;margin: 10px 0 5px;}
.shopping_cart_row > .second_line .option select {width: 100%; max-width: 250px; display: block;font: inherit;padding: 0 10px;font-size: 14px;color: #0d183e;border: 1px solid #D3D7E0;}

.shopping_cart_totals{background: #F8F8F8; padding: 5px 0;}
.cart_total_inquiry{background: #F8F8F8; padding: 5px 0; display: inline-block; position: relative; width: 100%;}
.shopping_cart_totals.fixed{position: fixed; top: 0; left: 0; right: 0; margin: 0 auto; z-index: 2; background: #fff; -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75); -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75); box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);}
.shopping_cart_totals > span{float: left; width: 100%; text-align: right; padding: 5px 47px;}
.cart_total_inquiry > span {width: 100%; display: inline-block; text-align: right; padding: 5px 20px;}
.cart_total_inquiry > span span, .shopping_cart_totals > span span{display: inline-block; width: 110px;}
.shopping_cart_totals > span.sct_total{font-weight: bold; font-size: 14px; border-top: 1px solid #A7ACBD; padding-top: 10px; margin: 5px 0 0}
.cart_total_inquiry > span.sct_total_inquiry {font-weight: bold; font-size: 14px;}

.sc_form_block{background: #F8F8F8; padding: 30px 30px 15px; font-size: 13px; margin: 0 0 30px;}
.sc_form_block h3{margin: 0 0 15px;}
.sc_form_block h4{margin: 0 0 15px;}
.sc_form_left{float: left; width: 48%;}
.sc_form_right{float: right; width: 48%;}
.sc_form_item{float: left; width: 100%; position: relative; padding: 0 0 0 150px; margin: 0 0 15px;}
.sc_form_item.no_padding{padding: 0!important}
.sc_form_item > span{float: left; width: 150px; position: absolute; left: 0; top: 50%; height: 24px; line-height: 24px; margin: -12px 0 0;}
.sc_form_item input,
.sc_form_item select,
.sc_form_block textarea{float: left; width: 100%; height: 34px; padding: 0 10px; border: 1px solid #D3D7E0; font-size: 13px;}
.sc_form_block textarea{width: 550px; max-width: 100%; padding: 10px; height: 122px}
.sc_form_item input[data-type="postcode_1"]{width: 60px;}
.sc_form_item input[data-type="postcode_2"]{width: 45px; border-left: none;}
.sc_form_block .required{color: red}
.required_info{margin: 10px 0 0; line-height: 16px; font-size: 12px;}

.afleveradres_block{position: relative; display: none}

.radio_box{float: left; width: 100%; margin: 0 0 5px; position: relative; padding: 10px 5px 10px 40px; cursor: pointer;}
.radio_box span{float: left; width: 20px; height: 20px; position: absolute; left: 5px; top: 50%; margin: -10px 0 0; background: #fff; border: 2px solid #1f376c; border-radius: 100%;}
.radio_box input:checked ~ span:after{content: "\00a0"; float: left; width: 10px; height: 10px; border-radius: 100%; position: absolute; left: 0; top: 0; right: 0; bottom: 0; margin: auto; background: #1f376c}
.radio_box input{display: none;}

.checkbox_box{float: left; width: 100%; margin: 0 0 5px; position: relative; padding: 5px 5px 5px 40px; cursor: pointer;}
.checkbox_box span{float: left; width: 20px; height: 20px; position: absolute; left: 5px; top: 50%; margin: -10px 0 0; background: #fff; border: 2px solid #1f376c; border-radius: 4px;}
.checkbox_box input[type="radio"] ~ span{border-radius: 100%;}
.checkbox_box input:checked ~ span:after{content: "\f00c"; font-family: fontawesome; float: left; width: 14px; height: 14px; line-height: 14px; text-align: center; position: absolute; left: 0; top: 0; right: 0; bottom: 0; margin: auto; color: #1f376c}
.checkbox_box input{display: none;}
.checkbox_box a{text-decoration: underline; color: #3aaa35}
.checkbox_box a.link_black {color: #000;}

.error_list{list-style: none; padding: 10px 15px; background: #fff; margin: 0 0 15px; font-size: 12px; display: none;}
.error_list li{color: red; padding: 3px 0;}

.sc_form_block.submit{padding-top: 15px;}
.sc_form_block.submit button{float: right;}

.aflever_overlay,
.sc_overlay{position: absolute; left: 0; top: 0; height: 100%; background: #fff; background: rgba(255,255,255,0.8); display: none;}
.aflever_overlay i,
.sc_overlay i{float: left; width: 50px; height: 50px; line-height: 50px; font-size: 40px; position: absolute; left: 0; top: 0; right: 0; bottom: 0; margin: auto; color: #4C4C4C;}


.order_summary{font-size: 13px;}
.os_prices{background: #fff; padding: 10px 10px 5px;}
.order_summary > span,
.order_summary .os_prices > span{float: left; width: 100%; margin: 0 0 5px;}
.order_summary > span:last-child{margin: 0 0 15px;}
.order_summary > span span,
.order_summary .os_prices > span span{float: right; width: calc(100% - 200px)}
.order_summary .sct_total{font-weight: bold;}
.order_summary_footer .btn{float: left; margin: 0 10px 10px 0;}

h1.aanvr_title {
  padding-top: 65px;
}
.block.period {position: relative; display: block; clear: both; padding: 5px 0; border-bottom: 0px solid #A7ACBD; padding-top: 0px; padding-bottom: 7px;}
.block.period .adb_block.date {position: relative; display: inline-block; width: 50%;}
.block.period input.datepicker_main {max-width: 130px; width: 100%; height: 32px; padding: 0 0 0 25px; border: 1px solid #D3D7E0; background: #fff url(../../img/calendar.png) no-repeat 5px center / 12px auto; cursor: pointer; font-size: 12px; margin-right: 10px;}
.block.period input.datetimepicker_main {max-width: 70px; width: 100%; height: 32px; padding: 0 0 0 25px; border: 1px solid #D3D7E0; background: #fff url(../../img/clock.png) no-repeat 5px center / 12px auto; cursor: pointer; font-size: 12px;}


/**** Media queries ****/
@media screen and (max-width: 900px){
  .sc_form_block{padding: 25px 15px 15px}

  .shoppingcart_tabs .step_item{font-size: 14px; padding: 14px 10px 14px 44px; line-height: 24px;}
  .shoppingcart_tabs .step_item i{width: 24px; height: 24px; line-height: 24px; font-size: 14px; margin: 0 0 0 -34px;}
}

@media screen and (max-width: 730px){
  .shoppingcart_tabs .step_item{font-size: 13px;}

  .shopping_cart_totals.fixed{font-size: 12px; padding: 3px 0}
  .shopping_cart_totals.fixed > span{padding: 3px 15px; line-height: 14px;}
  .shopping_cart_totals.fixed > span.sct_total{padding-top: 6px;}
  .shopping_cart_totals.fixed > span span{font-size: 11px;}

  .sc_form_item{padding: 0;}
  .sc_form_item > span{position: static; width: 100%; margin: 0;}
  .shopping_cart_row > .second_line {margin-top: 30px;}
  .shopping_cart_container .shopping_cart_row:last-of-type {
    padding-bottom: 30px;
  }

  .shopping_cart_row > .scp-row {
    flex-wrap: wrap;
  }
  .shopping_cart_row > .scp-row .scp-cell-name {
    flex-basis: calc(100% - 70px);
  }  
}

@media screen and (max-width: 650px){
  .shoppingcart_tabs .step_item{width: 100%;}
}

@media screen and (max-width: 550px){
  .shopping_cart_totals > span{padding: 5px 15px 5px 0}
  .shopping_cart_totals > span span{width: 95px;}

  .sc_form_left,
  .sc_form_right{width: 100%}

  .sc_form_block h4{margin: 20px 0}

  .order_summary .os_prices > span span,
  .order_summary > span span{width: calc(100% - 180px)}
  .shopping_cart_row > .second_line { margin-top: 40px;}
  .block.period .adb_block.date {width: 100%;}
  .block.period input.datepicker_main {display: block; margin-top: 5px; max-width: 100%; text-align: center;}
  .block.period  .adb_block.date + .adb_block.date {padding-top: 10px;}

  .shopping_cart_row > .scp-row .scp-cell-price {
    flex-basis: 100px;
  }
}

@media screen and (max-width: 480px){
  .shopping_cart_row > .scp-row .scp-cell:not(.scp-cell-name):not(.scp-cell-image) {
    flex-basis: 100%;
  }     
}