@charset "utf-8";
/* CSS Document */

/* Base Rostra Blue Color #005F95 */

body{
	position: relative;
	overflow: scroll;
	overflow-x: hidden;
}


p{
	line-height: 1.3em;
}

.optional{
	margin-top: 30px;
}

#vehicleLayout{
	display: block;
}

.layoutCard{
	display: inline-block;
	width: 31%;
	min-height: 40px;
	margin: 20px 1% 0 0;
	border: 1px solid #999;
	vertical-align: top;
}

form.layoutCard .submitButton{
	width: 40%;
	height: auto;
	margin: 10px 30%;
	text-align: center;
	font-size: .8em;
	color: #005F95;
	border: 1px solid #005F95; 
	background-color: #FFFFFF;
}

form.layoutCard .addToCart{
	width: 40%;
	height: auto;
	margin: 10px 30%;
	padding: 4px 0;
	text-align: center;
	font-size: .8em;
	color: #FFF;
	border: 1px solid #006d0a; 
	background-color: #00a510;
	cursor: pointer;
}

.layoutCard .addToCartGreen{
	width: 40%;
	height: auto;
	margin: 10px 30%;
	padding: 4px 0;
	text-align: center;
	font-size: .8em;
	color: #FFF;
	border: 1px solid #006d0a; 
	background-color: #00a510;
	cursor: pointer;
	vertical-align: middle;
}

.layoutCard .addToCartGreen p{
	margin: 0;
	padding: 0;
	line-height: 1em;
}


.layoutCard img{
	width: 94%;
	margin: 4px 3%;
}

.layoutCard p.layoutCardTitle{
	width: 90%;
	margin: 4px 5%;
	text-align: center;
	font-size: .8em;
}

.layoutCard p.learnMore{
	width: 50%;
	height: auto;
	margin: 4px 25%;
	text-align: center;
	font-size: .8em;
	color: #005F95;
}

.layoutCard p.select{
	width: 40%;
	height: auto;
	margin: 10px 30%;
	text-align: center;
	font-size: .8em;
	color: #005F95;
	border: 1px solid #005F95; 
}



.layoutCard .description{
	margin: 4px 5%;
	width: 90%;
	font-size: .9em;
}

.layoutCard .divider{
	margin: 0 30%;
	padding: 0;
	clear: both;
	width: 40%;
	height: 1px;
	background: #CCCCCC;
}

.needsMore{
	background-color: #F00;
	color: #FFF;
}

.confirm{
	margin: 3em auto;
	width: 200px;
	height: 70px;
}

.questions{
	margin: 4em 0 0;
	padding: 0;
	width: 100%;
	color: #888888;
	text-align: center;
	font-size: .8em;
}

#orderBox{
	width: 98%;
	margin: 10px 0 30px;
	padding: 0;
	box-shadow: 2px 6px 10px #888888;
	border: 1px solid #000;
	border-radius: 8px;
	background-color: #F9F9F9;
}

#orderBox .title{
	margin: 10px 0;
	padding: 0;
	font-weight: bold;
	font-size: 1.5em;
}

#orderForm{
	display: inline-block;
	margin: 0;
	padding: 1%;
	width: 66%;
	vertical-align: top;
}

#orderForm .form-group{
	width: 49%;
	display: inline-block;
	margin: 0 0 10px 0;
	padding: 0;
	font-size: .8em;
}

#orderForm .form-group label{
	font-weight: bold;
	width: 40%;
	font-size: .7em;
}

#orderForm .form-group input{
	margin-top: 10px;
	height: 30px;
	width: 80%;
	border: 1px solid #CCC;
	border-radius: 2px;
	margin-bottom: 20px;
	background-image: url('../images/exclamation.png');
	background-position: 98% 50%;
	background-repeat: no-repeat;
}



#orderForm .form-group select{
	margin-top: 10px;
	height: 30px;
	width: 80%;
	border: 1px solid #CCC;
	border-radius: 2px;
	margin-bottom: 20px;
}

#orderForm input[type=submit]{
  background-color: #2F58AD;
  border-radius: 2px;
  border: medium none;
  color: white;
  padding: 8px 22px;
  text-decoration: none;
  margin: 4px 2px;
  cursor: pointer;
} 

#orderForm p.asterisk{
	margin: 20px 0;
	font-size: .8em;
}

#orderProducts{
	display: inline-block;
	width: 29%;
	padding: 1%;
	vertical-align: top;
}

#orderProducts .subtitle{
	width: 96%;
	margin: 20px 2% 0px;
	font-weight: bold;
	font-size: .9em;
	border-bottom: 1px solid #AAA;
}

#orderProducts .partNumber{
	width: 96%;
	margin: 4px 2% 0px;
	font-size: .9em;
}




/* */
/* */
/* */
/* */
/* */
/* CART ****************************************************************/
/* */
/* */
/* */
/* */
/* */

#cart{
	position: fixed;
	margin: 0;
	padding: 0;
	top: 0px;
	right: -310px;
	width: 354px;
	min-height: 100%;
	transition: right 1s;
	font-family: 'Arimo', Arial, Helvetica, sans-serif;
	z-index: 10;
}

#cart .title{
	float: left;
	margin: 0 0 0 2%;
	padding: 0;
	width: 84%;
	font-weight: 100;
	font-size: 1.6em;
	color: #F2C40E;
}

#cart h4{
	display: block;
	width: 90%;
	margin: 10px 0 0 4%;
	padding: 0;
	color: #ECF0F1;
}

#cart p{
	display: block;
	clear: both;
	width: 90%;
	margin: 4px 0 0 4%;
	padding: 0;
	color: #ECF0F1;
}

#cart p.description{
	display: block;
	width: 90%;
	margin: 4px 0 0 4%;
	padding: 0;
	color: #ECF0F1;
	font-size: .6em;
}

#cartTab{
	float: left;
	margin: 0;
	padding: 0;
	width: 44px;
	height: 180px;
	background-image: url('../images/cart-tab.png');
}

#cartTab button{
	margin: 20px 0 0 2px;
	width: 42px;
	height: 140px;
	background: none;
	border: none;
	cursor: pointer;
}

#cartMain{
	float: left;
	width: 310px;
	height: 100vh;
	margin: 0;
	padding: 24px 0 0 0;
	background-image: url('../images/shopping-cart.jpg');
    background-size: cover; 
}

#cartMain .divider{
	margin-left: 3%;
}

.x{
	float: right;
	margin: 0 2%;
	padding: 0;
	width: 8%;
	font-weight: 100;
	font-size: 1.6em;
	background: none;
	color: #ECF0F1;
	border: medium none;
	cursor: pointer;
}

#cart #x:hover{
	color: #BBBBBB;
	transition: color 1s;
}

#cart .subtitle{
	width: 96%;
	margin: 20px 2% 0px;
	font-weight: bold;
	font-size: .9em;
	border-bottom: 1px solid #AAA;
}

#cart .partNumber{
	width: 96%;
	margin: 4px 2% 0px;
	font-size: .9em;
}

#cartMain #checkout{
	position: fixed;
	bottom: 0px;
	margin: 0;
	padding: 0;
	width: 310px;
	height: 80px;
	border: none;
	background: #F2C40E;
	color: #333333;
	text-align: center;
	vertical-align: middle;
	font-size: 1.6em;
	box-shadow: 0px -10px 8px -6px #111;
}

#cartMain #checkout:hover{
	background: #f9d903;
	box-shadow: 0px -10px 8px -6px #000;
	transition: background 1s, box-shadow 1s;
}


/* */
/* */
/* */
/* */
/* */
/* END CART ****************************************************************/
/* */
/* */
/* */
/* */
/* */

/* */
/* */
/* */
/* */
/* */
/* ORDER FORM ****************************************************************/
/* */
/* */
/* */
/* */
/* */


#cartOrder{
	position: fixed;
	margin: 0;
	padding: 24px 0 0;
	top: 0px;
	right: -315px;
	width: 314px;
	min-height: 100%;
	transition: right 1s;
	font-family: 'Arimo', Arial, Helvetica, sans-serif;
	background-image: url('../images/shopping-cart-order.jpg');
    background-size: cover; 
}

#cartOrder .title{
	float: left;
	margin: 0 0 0 2%;
	padding: 0;
	width: 84%;
	font-weight: 100;
	font-size: 1.6em;
	color: #F2C40E;
}

#cartOrder p{
	width: 96%;
	margin: 4px 2%;
	font-size: .9em;
}

#cartOrderBox{
	width: 100%;
}

#cartOrderBox .title{
	font-weight: bold;
	font-size: 1.5em;
}

#cartOrderForm{
	display: inline-block;
	margin: 0;
	padding: 1%;
	width: 98%;
	vertical-align: top;
}

#cartOrderForm .form-group{
	width: 96%;
	display: block;
	margin: 0;
	padding: 10px 2% 0;
}

#cartOrderForm .form-group label{
	font-weight: bold;
	width: 40%;
	font-size: .9em;
	color: #ECF0F1;
}

#cartOrderForm .form-group input.required{
	margin: 10px 0;
	height: 30px;
	width: 96%;
	border: 1px solid #CCC;
	border-radius: 2px;
	background-image: url('../images/exclamation.png');
	background-position: 98% 50%;
	background-repeat: no-repeat;
}



#cartOrderForm .form-group input.optional{
	margin: 10px 0;
	height: 30px;
	width: 96%;
	border: 1px solid #CCC;
	border-radius: 2px;
}

#cartOrderForm .form-group select{
	margin: 10px 0;
	height: 30px;
	width: 96%;
	border: 1px solid #CCC;
	border-radius: 2px;
}

#cartOrderForm input[type=submit]{
  background-color: #2F58AD;
  border-radius: 2px;
  border: medium none;
  color: white;
  padding: 8px 22px;
  text-decoration: none;
  margin: 4px 0 0 6px;
  cursor: pointer;
} 

#cartOrderForm p{
	width: 96%;
	display: block;
	margin: 0;
	padding: 10px 2% 0;
}

#cartOrderForm p.asterisk{
	margin: 10px 0;
	font-size: .8em;
}

#cartOrderProducts{
	display: inline-block;
	width: 98%;
	padding: 1%;
	vertical-align: top;
}

#cartOrderProducts .subtitle{
	width: 96%;
	margin: 20px 2% 0px;
	font-weight: bold;
	font-size: .9em;
	border-bottom: 1px solid #AAA;
}

#cartOrderProducts .partNumber{
	width: 96%;
	margin: 4px 2% 0px;
	font-size: .9em;
}


/* */
/* */
/* */
/* */
/* */
/* END ORDER FORM ****************************************************************/
/* */
/* */
/* */
/* */
/* */













#cartFinal{
	width: 90%;
	padding: 20px 5%;
	border: 1px solid #666;
	box-shadow: 2px 6px 10px #888888;
}

#cartFinal .title{
	margin: 0 0 0 6px;
	padding: 0;
	font-weight: bold;
	font-size: 1.2em;
}

#cartFinal .column{
	display: inline-block;
	margin: 0 1%;
	padding: 0;
	width: 27%;
	vertical-align: top;
}

#cartFinal .subtitle{
	width: 96%;
	margin: 20px 2% 0px;
	font-weight: bold;
	font-size: .9em;
	border-bottom: 1px solid #AAA;
}

#cartFinal .partNumber{
	width: 96%;
	margin: 4px 2% 0px;
	font-size: .9em;
}










#orderSubmitSocial{
	margin: 30px 5%;
	width: 90%;
	padding: 10px 0;
}

#orderSubmitSocial #title{
	margin-top: 30px;
	width: 100%;
	padding: 10px 0;
	border-bottom: 1px solid #666;
	text-align: center;
}

#orderSubmitSocial .column{
	width: 17%;
	margin: 0 1%;
	display: inline-block;
}

#orderSubmitSocial .column img{
	width: 30%;
	margin: 0 40%;
}


















.productCardLarge{
	display: inline-block;
	width: 31%;
	min-height: 40px;
	margin: 20px 1% 0 0;
	padding: 4px 0;
	border: 1px solid #CCCCCC;
	vertical-align: top;
}

.productCardLarge:hover{
	border-radius: 8px;
	box-shadow: 0px 2px 4px #888888;
	transition: border-radius 1s, box-shadow 1s;
}

.productCardLargeTitle{
	width: 100%;
	margin: 0;
	text-align: center;
	font-weight: bold;
}

.productCardLarge img{
	width: 80%;
	margin: 10px 10%;
}

.productCardLarge p.learnMore{
	width: 50%;
	height: auto;
	margin: 4px 25%;
	text-align: center;
	font-size: .8em;
	color: #005F95;
}

.description{
	width: 92%;
	margin: 10px 4%;
	font-size: .9em;
}

.productCardLarge .divider{
	margin: 0 30%;
	padding: 0;
	clear: both;
	width: 40%;
	height: 1px;
	background: #CCCCCC;
	
}

.productCardLarge .select{
	display: block;
	width: 40%;
	padding: 4px;
	margin: 10px 30%;
	border: 1px solid #999;
	border-radius: 4px 0px;
	text-align: center;
	font-size: .9em;
}

button.addToCartGreen{
	width: 40%;
	height: auto;
	padding: 4px;
	margin: 10px 30%;
	text-align: center;
	font-size: .8em;
	color: #FFF;
	border-radius: 4px 0px;
	border: 1px solid #006d0a; 
	background-color: #00a510;
	cursor: pointer;
	vertical-align: middle;
}



button.addToCartGreen p{
	margin: 0;
	padding: 0;
	line-height: 1em;
}























.productCard{
	display: inline-block;
	width: 20%;
	min-height: 40px;
	margin: 20px 1% 0 0;
	border: 1px solid #CCCCCC;
	vertical-align: top;
}

.productCard:hover{
	border-radius: 8px;
	box-shadow: 0px 2px 4px #888888;
	transition: border-radius 2s, box-shadow 1s;
}

.productCardTitle{
	width: 100%;
	margin: 4px 0;
	padding: 0;
	text-align: center;
	font-weight: bold;
	font-size: .8em;
}

.productCard img{
	width: 80%;
	margin: 10px 10%;
}

.learnMore{
	width: 100%;
	text-align: center;
}

.description{
	width: 92%;
	margin: 10px 4%;
	font-size: .9em;
}

.productCard .divider{
	margin: 0 30%;
	padding: 0;
	clear: both;
	width: 40%;
	height: 1px;
	background: #CCCCCC;
	
}

.productCard .select{
	display: block;
	width: 60%;
	margin: 10px 19%;
	padding: 4px;
	border: 1px solid #999;
	border-radius: 4px 0px;
	text-align: center;
	font-size: .8em;
}

.productCard input{
	display: none;
}

#demo{
	display: block;
	position: fixed;
	top: 10px;
	width: 98%;
	height: 20px;
	background: #000;
	color: #FFF;
}

#demob{
	display: block;
	position: fixed;
	top: 50px;
	width: 98%;
	height: 20px;
	background: #F00;
	color: #000;
}

#demob p{
	display: inline-block;
	margin: 0;
	padding: 0;
	width: 20px;
	height: 20px;
	background: #F0F;
	
}



#monitor, #camera, #interface, #relocation, #accessories{
	visibility: hidden;
	display: block;
	position: relative;
	height: 0px;
	font-size: 1.2em;
	color: #FFFFFF;
	opacity: 0;
	transition: opacity 1s, height 1s;
}


#WindshieldAdapter, #Accessory1, #Accessory2, #Accessory3, #Accessory4, #Accessory5{
	visibility: hidden;
	display: block;
	position: relative;
	margin: 4px 1%;
	height: 0px;
	width: 98%;
	font-size: 1.2em;
	color: #FFFFFF;
	opacity: 0;
	transition: opacity 1s, height 1s;
}

.remove{
	position: absolute;
	right: 10px;
	top: 10px;
	width: 15px;
	height: 15px;
	background: url('/cb/images/x.png');
	background-size: contain;
	cursor: pointer;
}

.quantity{
	display: flex;
	flex-direction: row;
	width: 50%;
	height: 30px;
	margin: 10px auto;
	padding: 0;
	color: #333;
	text-align: center;
}

.quantityMinus{
	margin: auto 0;
	padding: 0;
	float: left;
	width: 30px;
	height: 30px;
	cursor: pointer;
}

.quantityTotal{
	margin: auto 5%;
	padding: 0;
	float: left;
	width: 50%;
	height: 24px;
	background-image: linear-gradient(#DDD, #FFF, #DDD);
	border-radius: 2px;
	border-left: 1px solid #333;
	border-right: 1px solid #333;
}


.quantityPlus{
	margin: auto 0;
	padding: auto;
	float: left;
	width: 30px;
	height: 30px;
	cursor: pointer;
}

