/*basket */
input.opcq  {
	max-width: 70px; 
	text-align: center;
	
}
button.transparentbutton, button.transparentbutton:hover, button.transparentbutton:active {
	border: 0 solid transparent !important; 
	outline: none !important; 
	background: none !important; 
	background-color: transparent !important; 
	
}
#vmMainPageOPC a.deletebtn,#vmMainPageOPC .updatebtn,#vmMainPageOPC .updatebtn:hover {
	color: black !important;
}

#vmMainPageOPC div.moduletable.roundedcornersmodule {
	border: 2px solid #c0dfc0;
	background: none; 
	background-color: #dfffdf;
	border-radius: 5px; 
	padding: 5px 5px 5px 5px; 
}

div.basket_bottom_wrap, div#opc_basket, div.inside, div.black-basket, div.opc_navigation, div.opc_navigation2 {
	float: left; 
	clear: both; 
	width: 100%; 
	box-sizing: border-box; 
}																											   

div.basket_note, div.left_half {
	float: left; 
	width: 50%; 
	clear: left; 
	box-sizing: border-box;
}
div.basket_right, div.right_half {
	float: left; 
	width: 50%; 
	clear: right; 
	box-sizing: border-box;
}


#vmMainPageOPC .btn, #vmMainPageOPC button {
	border: 0px solid transparent !important;
	text-transform: none !important; 
	padding-top: 3px;
	padding-bottom: 3px;
	font-weight: normal; 
	min-height: 26px; 
	line-height: 26px; 
	
}




#vmMainPageOPC  .continuebutton,#vmMainPageOPC  .checkoutbutton {
	font-size: 25px; 
	min-height: 30px; 
	line-height: 40px; 
	height: 40px; 
	vertical-align: middle; 
	 -webkit-transition: background-color 0.2s, color 0.3s !important;
  -moz-transition: background-color 0.2s, color 0.3s !important;
  -o-transition: background-color 0.2s, color 0.3s !important;
  -ms-transition: background-color 0.2s, color 0.3s !important;
  transition: background-color 0.2s, color 0.3s !important;
  
  
}
#vmMainPageOPC .opc_bottom_navigation {
	margin-top: 5px; 
	padding-bottom: 5px; 
}
#vmMainPageOPC .continuebutton {
	float: right;
	margin-right: 10px; 
	/*
	color: white !important; 
	background-color: #37bbe1 !important; 
	*/
	color: #fff !important; 
	background-color: #4a4a4a !important;
}
#vmMainPageOPC .checkoutbutton {
	
	
	
	float: left; 
	margin-left: 10px; 
	color: white !important; 
	
	background-color: #019934 !important; 
	
	
	
}
#vmMainPageOPC .checkoutbutton:hover,#vmMainPageOPC .checkoutbutton:active,#vmMainPageOPC .checkoutbutton:focus {
	/*color: white !important; */
	color: white !important; 
	background-color: #007728 !important;
}
#vmMainPageOPC .continuebutton:hover,#vmMainPageOPC .continuebutton:active,#vmMainPageOPC .continuebutton:focus {
	color: white !important; 
	background-color: #37bbe1 !important;
	text-decoration: none; 
}



/* user fields formatting */
#vmMainPageOPC .invalid
{

 border-color: red !important;
}
div.field_wrap > div {
	min-height: 30px; 
	padding-top: 5px; 
	padding-bottom: 5px; 
	padding-left: 5px; 
	padding-right: 10px; 
}
div.field_wrap  {
	
	
    display: flex;	
	
	align-items: center;
    justify-content:center;
	
	
}
div.field_wrap:empty {
	display: none; 
}



#vmMainPageOPC div.field_wrap div.formLabel {
	width: 30%; 
	float: left; 
	clear: left; 
	padding-left: 5px; 
	padding-right: 10px; 
	text-align: right; 
	
	
    vertical-align: middle;
}



#vmMainPageOPC div.field_wrap div.formLabel label {
	font-weight: bold; 
	font-size: 1.15em; 
	
}
#vmMainPageOPC span.optional_text {
	font-size: 0.7em; 
	color: #ababa9; 
}
#vmMainPageOPC div.formField {
	width: 60%; 
	float: left; 
	clear: right; 
	
	text-align: left; 
}
#vmMainPageOPC div.op_userfields div.field_wrap.text input:not([type=checkbox]):not([type=radio]) {
	width: 60%; 
}
#vmMainPageOPC div.op_userfields, #vmMainPageOPC div.list_user_fields {
	width: 100%; 
	float: left; 
	clear: both; 
	margin: 0; 
	padding: 0; 
	display:flex;
	flex-wrap: wrap;
	
}
#vmMainPageOPC div.op_userfields  div.field_wrap {
	width: 100%; 
	clear: both; 
}

div.business_wrap  {
  background-color: #f3f3f3;
}

#vmMainPageOPC div.op_userfields input#first_name_field,#vmMainPageOPC div.op_userfields input#shipto_first_name_field {
	width: 30%;
}
#vmMainPageOPC div.op_userfields input#middle_name_field,#vmMainPageOPC div.op_userfields input#middle_first_name_field {
	width: 20%;
}
#vmMainPageOPC div.op_userfields input#last_name_field,#vmMainPageOPC div.op_userfields input#shipto_last_name_field {
	width: 30%;
	width: calc(30% - 15px);
}
#vmMainPageOPC div.op_userfields input#address_1_field,#vmMainPageOPC div.op_userfields input#shipto_address_1_field {
	/*width: 40%; */
}
#vmMainPageOPC div.op_userfields input#house_nr_field,#vmMainPageOPC div.op_userfields input#shipto_house_nr_field {
	width: 20%; 
	width: calc(20% - 15px);
}

div#vmMainPageOPC select {
	box-sizing: border-box; 
}

span.fieldhelpwrap {
	margin-right: 0.5em; 
	color: #0090e3;
}
/*end user fields formatting */

/*shippnig section */
#ajaxshipping,#payment_html {
	display: table; 
}
#vmMainPageOPC .opc_ship_wrap, #vmMainPageOPC .opc_payment_wrap {
	padding: 4px;
	border: 1px solid #ddd; 
	width: 100%; 
	float:left; 
	clear:both;
	margin-bottom:10px; 
	padding-left: 35px; 
	/*display: table-cell; */
	min-height: 45px; 
	 
	display: -webkit-flex;    
  display: -ms-flexbox;
  display: flex;

  -webkit-align-items: center;    
  -ms-flex-align: center;
  align-items: center;  
  
  
  vertical-align: middle;
  border-radius: 2px; 
}
#vmMainPageOPC .opc_ship_wrap label, #vmMainPageOPC .opc_payment_wrap label {
/*
position: relative; 
	top: 50%;
	-webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transform: perspective(1px) translateY(-50%);
	 display: table-cell !important;
	*/
	margin-left: 0; 
	  position: relative; 
	  width: 100%; 
	  
	 vertical-align: middle;
	margin:0 auto;
	
	display: -webkit-flex;    
  display: -ms-flexbox;
  display: flex;

  -webkit-align-items: center;    
  -ms-flex-align: center;
  align-items: center;  
  
  
  
    
}
#vmMainPageOPC .vmshipment_name,#vmMainPageOPC .vmshipment_description,#vmMainPageOPC .vmshipment_cost, 
#vmMainPageOPC .vmpayment_name,#vmMainPageOPC .vmpayment_description,#vmMainPageOPC .vmpayment_cost,
#vmMainPageOPC .vmpayment_name,#vmMainPageOPC .vmpayment_description,#vmMainPageOPC .vmpayment_cost,
#vmMainPageOPC .vmCartShipmentLogo,#vmMainPageOPC .vmCartPaymentLogo {
float: left; 	
	
}

#vmMainPageOPC .vmshipment, #vmMainPageOPC .vmpayment {
	margin-left: -2em; 
}


#vmMainPageOPC .vmCartShipmentLogo > img,#vmMainPageOPC .vmCartPaymentLogo > img {
	max-width: 50px; 
	height: auto; 
	max-height: 100px; 
	width: auto; 
}

/* end shipping sectin */


/*confirm spinner*/
#vmMainPageOPC .checkout_loader { 
font-size: 1.2em;
text-align: center; 
color: #4a4a4a;
 } 

 
 #vmMainPageOPC .checkout_step_2 div.basket_note > div {
	 display: none;
	 
 }
 #vmMainPageOPC .checkout_step_2 div.basket_note::after {
	 content: "    "; 
	 white-space: pre;
 }
 
 
 
 /*custom */
 select#multisafepay_ideal_bank_selected_43,.opc_payment_wrap  select 
	{
	 min-width: 250px; 
	 }
 
 
 /*logged in section */
 #vmMainPageOPC a.edit_a_href, #vmMainPageOPC a.edit_a_href:active, #vmMainPageOPC a.edit_a_href:visited {
	 display: inline; 
	 
	 color: white; 
 }
 

 #edit_address_list_st_section {
	 width: 100%; 
	 clear: both; 
	 float: left; 
 }
 #vmMainPageOPC .sectiontableentry2 {
	 width: 90%; 
 }
 #vmMainPageOPC .op_labelwrapper {
	 text-align: center;
 }
 #vmMainPageOPC .select_address_wrap {

 }
 #vmMainPageOPC .a_href_wrap {
	 width: 70%; 
 }
 
 #vmMainPageOPC .hide_on_desktop { display: none; }
 
 #vmMainPageOPC .op_col2_2 .vm-customfield-cart {
	 display: inline; 
	 line-height: 1em; 
	 line-height: 1em;
    clear: both;
    float: left;
    width: 100%;
 }
  #vmMainPageOPC .product-field-type-B,  #vmMainPageOPC .product-field-type-S,  #vmMainPageOPC .product-field-type-I {
	  padding-left: 0; 
	  width: 100%;
  }
  
  
  
#vmMainPageOPC #basket_container div div div div div div div div div.op_basket_header.op_basket_row div.op_col7 {

	margin-right: 5px; 
}


  
  /*fixes*/
  .post_payment_payment_name .vmCartPaymentLogo { display: none; }
  .payment_inner_html, .payment_inner_html > div,div#vmMainPageOPC .opc_payment_wrap, div#vmMainPageOPC .opc_ship_wrap  {
	  float: left; 
	  width: 100%; 
	  box-sizing: border-box; 
  }
  .thank_you_a { float: right; }
  
  @media screen and (min-width: 731px)  {
  
		#vmMainPageOPC .opc_bottom_navigation {
	  margin-top: 15px; 
  }
	  
  
  
  #estimator_virtuemart_country_id_div {
	  float: left;
	  clear: left; 
  }
  #estimator_virtuemart_country_id_div > label {
	  line-height: 30px; 
	  margin-right: 30px; 
  }
  #estimator_virtuemart_country_id_input {
	  float: left; 
	  clear: right; 
  }
  #estimator_virtuemart_country_id_div, #estimator_virtuemart_country_id_input {
	  width: auto; 
	  
  }
 
 
  }
 
  
  
  /*estimator styling */
  span.estimator_title {
  }
  
  .estimator_wrap input[type="radio"] {
	  display: none; 
  }
  #vmMainPageOPC .estimator_wrap .opc_ship_wrap input[type=radio]:checked + label > span:before, #vmMainPageOPC .estimator_wrap .opc_payment_wrap input[type=radio]:checked + label > span:before, #vmMainPageOPC .estimator_wrap .opc_ship_wrap input[type=radio] + label > span:before, #vmMainPageOPC .estimator_wrap .opc_payment_wrap input[type=radio] + label > span:before {
	  display: none; 
  }
  #vmMainPageOPC .estimator_wrap .opc_ship_wrap label, 
  #vmMainPageOPC .estimator_wrap .opc_payment_wrap label {
	  margin-left: 0; 
	  position: relative; 
	  width: 100%; 
	
	  cursor: default !important; 
	   
  }
  
  #vmMainPageOPC .estimator_wrap .opc_ship_wrap label, 
  #vmMainPageOPC .estimator_wrap .opc_payment_wrap label {
	  cursor: default !important; 
  }
  
  #vmMainPageOPC .opc_ship_wrap {  
	
	}
  #vmMainPageOPC .estimator_wrap .opc_ship_wrap { max-width: 50%; }
  #vmMainPageOPC .estimator_wrap .vmshipment_cost, #vmMainPageOPC .opc_ship_wrap .vmshipment_cost { position: absolute; top: 0px; right: 10px; }
  #vmMainPageOPC .estimator_wrap .vmshipment_description { margin-left: 25px; }
  
  
  /* subtotal adjustment */
  #vmMainPageOPC div.opc_basket_sep.subtotal {
	  display:none;
  }
  
  #vmMainPageOPC div.checkout_step_0 div#tt_order_subtotal_div_basket div {
	  font-weight: bold; 
  }
  
  #vmMainPageOPC div.checkout_step_2 #ajaxshipping,#vmMainPageOPC div.checkout_step_0 #ajaxshipping,
  #vmMainPageOPC  div.checkout_step_0 #tt_shipping_rate_div_basket,
  #vmMainPageOPC  div.checkout_step_0 .dynamic_lines  {
	  display: none !important; 
  }
  
  
  #vmMainPageOPC div.checkout_step_0 div.opc_basket_sep.subtotal {
	  display: block; 
  }
  
  #vmMainPageOPC div.checkout_step_0 div.opc_basket_sep.total {
	  display: none; 
  }
  
  #vmMainPageOPC div.checkout_step_0 div#tt_total_basket_div_basket {
	  display: none; 
  }
  /* agree and customer note*/
  #vmMainPageOPC .agreed_wrap {
	  float: left; 
	  width: 100%; 
	  clear: both; 
	  
	  display: -webkit-flex;    
  display: -ms-flexbox;
  display: flex;
  
    -webkit-align-items: center;    
  -ms-flex-align: center;
  align-items: center;  
  
  align-items: center;
  justify-content: center
  }
  #vmMainPageOPC center.agreed_inner_wrap {
	  margin-left: auto; 
	  margin-right: auto; 
	 
	  float: left; 
	  clear: both; 
	 
  }
  
  
  
  /*bootstrap override*/
  #vmMainPageOPC label { margin-bottom: 0; }
  
  
  #vmMainPageOPC  input.invalid,#vmMainPageOPC  select.invalid {
	  -webkit-box-shadow: none !important; 
	  box-shadow: none !important; 
	  border: 1px solid rgba(204, 0, 0, 0.5) !important;
  }
  
  span.vmshipment_cost .bracket, span.vmshipment_cost .sign, span.vmshipment_cost .feetitle  {
	  display: none; 
  }
  
  
  
  #vmMainPageOPC.bt_c_150 div.op_userfields div.address_1_wrap { order: 100 !important; } 
  
  div.dob1 > div.field_wrapper {
	  float: left; 
	  width: 100%; 
	  display: flex; 
	  flex-wrap: nowrap; 
	  flex-direction: column;
	  justify-content: center; 
	  align-items: center; 
  }
  div.dob1 > div.field_wrapper .opc_calccaptcha {
	  max-width: 80%; 
  }
  
  #vmMainPageOPC #estimator_shipping_rates_come_here .opc_ship_wrap input[type=radio] + label > span:before, 
  #vmMainPageOPC #estimator_shipping_rates_come_here .opc_payment_wrap input[type=radio] + label > span:before {
	  display: none; 
  }
  
  #vmMainPageOPC div.registration_wrapper button#confirmbtn_button {
	border: 1px solid #cecece !important; 
}