.calc_container{float: left; width: 100%; max-width: 100%; margin-top: 15px;}
.calc_item{background: #E9F1D3; color: #548b42; padding: 20px; border-radius: 4px; margin: 0 0 15px;}
.calc_item:last-child{margin: 0;}
.calc_form{position: relative;}
.calc_loader{height: 100%; position: absolute; left: 0; top: 0; background: rgba(0,0,0,0.3); display: none; z-index: 1;}
.calc_loader i{font-size: 50px; line-height: 50px; width: 50px; position: absolute; left: 50%; top: 50%; margin: -25px; color: #fff;}
.calc_block{}
.calc_block .h3{margin: 0 0 15px;}
.form_item{padding: 0 0 0 150px; margin: 0 0 15px;}
.form_item_label{float: left; width: 150px; margin: 0 0 0 -150px; line-height: 40px;}
.form_item input,
.form_item select{float: left; width: 150px; max-width: 100%; height: 40px; padding: 0 10px; border: none; border-radius: 4px;}

.calc_block_results{padding: 0 10px; background: #fff; border-radius: 4px; width: 300px; max-width: 100%;}
.calc_block_results td{line-height: 30px;}
.calc_block_results td:first-child{width: 140px;}

.afhaaldiv {padding-left: 40px; padding-top: 10px; display: inline-block; width: 100%}
.afhaaldiv input {
    height: 38px;
    padding: 0 10px;
    border: 1px solid #d9d9d9;
    border-radius: 4px;
}

.payment_afhalen {
	display: none
}

.option_toggle_container{margin: 0 0 15px;}

.option_block{display: none;}
.option_block .h3{margin: 0 0 15px;}
.option_block_item{position: relative; padding: 10px 80px 10px 100px; margin: 5px 0; border-radius: 4px;}
.obi_check{float: left; width: 30px; position: absolute; left: 0; top: 0; height: 100%; cursor: pointer;}
.option_block_list input[type="checkbox"]{display: none;}
.obi_check .checker{float: left; position: absolute; left: 10px; top: 50%; width: 18px; height: 18px; border: 1px solid #c1c1c1; border-radius: 3px; background: #fff; margin: -9px 0 0;}
.option_block_item:hover,
.option_block_list input:checked + .option_block_item{background: rgba(255,255,255,0.3);}
.option_block_list input:checked + .option_block_item .checker{border-color: #548b42;}
.option_block_list input:checked + .option_block_item .checker:after{content: '\f00c'; font-family: fontawesome; float: left; width: 100%; line-height: 16px; font-size: 12px; text-align: center;}
.option_block_list input:checked + .option_block_item .obi_qty input{display: block}
.obi_image{float: left; width: 60px; position: absolute; left: 40px; top: 0; height: 100%;}
.obi_image .obi_image_item{float: left; width: 50px; height: 50px; text-align: center; position: absolute; left: 0; top: 50%; margin: -25px 0 0; border-radius: 4px; background: #c1c1c1}
.obi_title i{color: #f7941e; cursor: pointer;}
.obi_qty{float: left; width: 70px; position: absolute; right: 0; top: 0; height: 100%;}
.obi_qty input{float: left; width: 60px; height: 40px; text-align: center; position: absolute; right: 10px; top: 50%; margin: -20px 0 0; border: none; background: #fff; border-radius: 4px; display: none;}

.form_total{padding: 10px 10px 10px 20px; background: #548b42!important;}
.form_total button{float: left;}
.form_total_price{float: right; line-height: 26px; padding: 10px; background: #fff; border-radius: 4px; font-size: 24px;}
.form_total_price small{font-weight: 400; font-size: 14px;}


/**** Winkelwagen ****/
.item_header{margin: 0 0 30px; text-align: center;}

.box_shadow{padding: 15px; -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1); -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1); box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1); border-bottom: 4px solid #2386be; margin: 0 0 40px;}
.box_shadow.errors{border-color: #be3023}

#shopping_cart_container{width: 100%; box-sizing: border-box; position: relative; overflow: hidden; margin: 15px 0 0;}
#shopping_cart{width: 100%; box-sizing: border-box; border-collapse: collapse; color: #292b28;}
#shopping_cart .cart_item_title{color: #548b42}
#shopping_cart .cart_item_title:hover{color: #90B451}
#shopping_cart a:hover{color: #2386be;}
#shopping_cart thead{font-weight: bold; border-bottom: 1px solid #f4f4f4;}
#shopping_cart thead td{padding: 12px 15px; text-transform: uppercase; text-align: left;}
#shopping_cart thead td.quantity{text-align: center;}
#shopping_cart thead td.total{text-align: right;}
#shopping_cart tbody tr{}
#shopping_cart tbody tr.head_row + tr.spacer td{border: none;}
#shopping_cart tbody tr.spacer td{padding: 15px; border-top: 5px solid #E9F1D3}
#shopping_cart tbody td{padding: 5px 15px;}
#shopping_cart tbody .shopcart_btn{display: inline-block; width: 28px; height: 28px; line-height: 28px; text-align: center; vertical-align: top; font-weight: bold; font-size: 18px; border-radius: 15px; background: #f4f4f4; color: #548b42;}
#shopping_cart tbody .shopcart_btn:hover{text-decoration: none; background: #548b42; color: #fff;}
#shopping_cart tbody input{display: inline-block; width: 40px; height: 28px; text-align: center; vertical-align: top; border: none; background: transparent;}
#shopping_cart tbody tr.head_row{background: #E9F1D3; border-radius: 4px;}
#shopping_cart tbody tr.head_row td{padding: 10px 15px;}
#shopping_cart tbody td{text-align: left; white-space: nowrap;}
#shopping_cart tbody td.quantity{text-align: center;}
#shopping_cart tbody td.total{text-align: right;}
#shopping_cart tbody td:last-child{width: 30px;}
#shopping_cart tbody td a.product_delete{text-align: center; font-size: 14px; color: #be3023;}
#shopping_cart tbody td a.product_delete:hover{background: #be3023!important; color: #fff!important}
#shopping_cart tfoot{border-top: 1px solid #f4f4f4;}
#shopping_cart tfoot tr:last-child{background: #E9F1D3;}
#shopping_cart tfoot tr:last-child td{padding: 10px 15px}
#shopping_cart tfoot td{padding: 6px 15px; text-align: right; font-weight: bold;}
.cart_overlay{float: left; width: 100%; position: absolute; top: 0; left: 0; height: 100%; background: #000; opacity: 0.3; z-index: 2; display: none;}

.features_table{margin: 5px 0 0;}
.features_table td{padding: 0!important; white-space: nowrap; font-size: 13px; text-align: left!important;}
.features_table td:first-child{padding: 0 30px 0 0!important; font-weight: bold}

#coupon_container{background: #E9F1D3; padding: 15px; margin: 30px 0 0; display: flex; align-items: center;}
#coupon_container span{float: left; font-weight: bold; margin: 0 15px 0 0;}
#coupon_container input{float: left; height: 32px; border: 1px solid #fff; border-radius: 4px; padding: 0 10px; width: 200px; margin: 0 10px 0 0;}
#coupon_container button{margin: 0 15px 0 0;}
.coupon_errors{font-size: 90%; color: red;}


#submit_form{float: left; width: 100%; text-align: left;}
.errorlist{float: left; width: 100%; margin: 0; line-height: 25px; font-size: 13px; background: #be3023; color:#fff; text-align: left; padding: 15px 20px; border-radius: 4px;}
#submit_form *{box-sizing: border-box;}
.shoppping_cart_title{margin: 20px 0 5px!important;}
.shoppping_cart_title,
#submit_form h3{margin: 40px 0 15px; background: #548b42; padding: 15px; color: #fff; border-radius: 4px;}
#submit_form .submit_form_left{float: left; width: 46%; margin: 20px 0 15px; padding: 0 20px;}
#submit_form .submit_form_right{float: right; width: 46%; margin: 20px 0 15px; padding: 0 20px;}
#submit_form .submit_form_full{float: left; width: 100%; margin: 20px 0 15px; padding: 0 20px;}
#submit_form .form_item{float: left; width: 100%; margin: 0 0 15px;}
#submit_form .form_item.half label{float: left; width: 56%;}
#submit_form .form_item.half label:last-child{float: right; width: 38%;}
#submit_form .form_item label{float: left; width: 100%; text-align: left;}
#submit_form .form_item span{float: left; width: 150px; line-height: 24px; margin: 7px 0 0 -150px;}
#submit_form .form_item input[type="text"],
#submit_form .form_item input[type="email"],
#submit_form .form_item textarea{float: left; width: 100%; height: 38px; padding: 0 10px; border: 1px solid #d9d9d9; border-radius: 4px;}
#submit_form .form_item textarea{height: 120px; padding: 10px;}
#submit_form .form_payment{float: left; width: 100%; margin: 0 0 15px;}
#submit_form .form_payment > span{float: left; width: 100%; line-height: 24px; font-weight: bold;}
#submit_form .form_payment label{float: left; width: 100%; line-height: 20px; padding: 6px 10px 6px 36px; position: relative; cursor: pointer; border: 1px solid #DBDBDB; border-bottom: 0; margin: 0; background: #fff;}
#submit_form .form_payment label:last-child{border-bottom: 1px solid #DBDBDB;}
#submit_form .form_payment label span{float: left; width: 16px; height: 16px; position: absolute; left: 10px; top: 50%; margin: -8px 0 0; background: #f4f4f4; border-radius: 100%; border: 1px solid #DBDBDB}
#submit_form .form_payment label input{display: none;}
#submit_form .form_payment label input:checked + span:after{content: "\00a0"; float: left; width: 8px; height: 8px; background: #000; border-radius: 100%; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto;}
#submit_form .form_checkboxes{float: left; width: 100%; margin: 0 0 15px;}
#submit_form .form_checkboxes > span{float: left; width: 100%; line-height: 24px; font-weight: bold;}
#submit_form .form_checkboxes label{float: left; width: 100%; line-height: 20px; padding: 10px 10px 10px 36px; position: relative; cursor: pointer; border: 1px solid #DBDBDB; margin: 5px 0; background: #fff; border-radius: 4px;}
#submit_form .form_checkboxes label:last-child{border-bottom: 1px solid #DBDBDB;}
#submit_form .form_checkboxes label span{float: left; width: 16px; height: 16px; position: absolute; left: 10px; top: 50%; margin: -8px 0 0; background: #ECEAEB; border-radius: 100%; border: 1px solid #DBDBDB}
#submit_form .form_checkboxes label input{display: none;}
#submit_form .form_checkboxes label input:checked + span:after{content: "\00a0"; float: left; width: 8px; height: 8px; background: #000; border-radius: 100%; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto;}
#submit_form .form_agv{float: left; width: 100%; margin: 0 0 15px; text-align: left;}
#submit_form .form_agv > span{float: left; width: 100%; line-height: 24px; font-weight: bold;}
#submit_form .form_agv label{float: left; width: 100%; line-height: 20px; padding: 6px 10px 6px 36px; position: relative; cursor: pointer; border: 1px solid #DBDBDB; margin: 0; background: #fff; border-radius: 4px;}
#submit_form .form_agv label span{float: left; width: 16px; height: 16px; position: absolute; left: 10px; top: 50%; margin: -8px 0 0; background: #f4f4f4; border-radius: 3px; border: 1px solid #DBDBDB}
#submit_form .form_agv label input{display: none}
#submit_form .form_agv label input:checked + span:after{content: "\00a0"; float: left; width: 8px; height: 8px; background: #000; border-radius: 2px; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto;}
#submit_form .form_agv label a{color: #535252; text-decoration: underline;}
#agv{display: none; padding: 30px;}
#agv > h1{font-size: 24px; margin: 0 0 15px;}

@media screen and (max-width: 950px){
	#submit_form .form_item{padding-left: 0!important}
	#submit_form .form_item span{margin: 0 0 5px!important; width: 100%;}
}

@media screen and (max-width: 550px){
	#submit_form .submit_form_left,
	#submit_form .submit_form_right{
		width: 100%;
	}
	
	#shopping_cart{float: left; width: 100%; display: block;}
	#shopping_cart thead{display: none;}
	#shopping_cart tbody{display: block; width: 100%}
	#shopping_cart tbody > tr{display: block; float: left; width: 100%; position: relative;}
	#shopping_cart > tbody > tr > td{display: block; float: left; width: 50%;}
	#shopping_cart > tbody > tr > td.quantity{width: 100%; border-bottom: 1px solid #f4f4f4; text-align: left;}
	#shopping_cart > tbody > tr > td:last-child{position: absolute; top: 5px; right: 5px; padding: 0!important;}
	#shopping_cart tbody td.total{display: none;}
	#shopping_cart tbody > tr.spacer td{padding: 15px 0 0!important; position: static!important; width: 100%!important;}
	.features_table{width: 100%;}
	
	#coupon_container{flex-wrap: wrap;}
	#coupon_container span{width: 100%; margin: 0 0 10px}
	#coupon_container input{width: 150px;}
	#coupon_container button{margin: 0;}
	.coupon_errors{float: left; width: 100%;}
	.coupon_errors li:first-child{margin: 10px 0 0;}
}