body { margin: 0 0 0 0; font-family: Arial, Helvetica, sans-serif; font-size: 12px;background:#e3eaed;color:#40484a; line-height: 150%;  }
a, a:visited { text-decoration: none; color: #40484a; }
a:hover 	 { text-decoration: underline; }
a img 		 { border: none; }
h1 { color: #461d50; font-size: 14px; font-weight: Bold; }

/* sitewide classes */
.input1 { height: 20px; line-height: 20px; padding: 0 5px; width: 156px; border: 1px solid #6d7678 }
.grid_over tr:hover { background-color: #fffdc9; }
.login_error { background: url(login_error1.png) no-repeat scroll left top transparent; color:#FF0000; font-size:10px; font-weight:bold; height:34px; 
				line-height:34px; margin:-4px 0 0 -10px; padding-left:25px; position:absolute; width:179px; z-index:1000 }

.padding_left_15 { padding-left: 15px }
.border_TB_9 { display: block; padding: 2px 10px; border: 1px solid #ccc; }

.rebates_rebate { margin: 20px 0; padding: 15px 5px; border: 1px solid #ccc; } 

span.error {color:red;font-weight:bold}

/* yourlens Basic Login   */
        .login_left { height: 258px; background: url(login_left.png) top left no-repeat;  }
        .login_mid  { width: 464px; height: 258px; display: block; float: left; margin-left: 16px;
                    background: url(login_mid.png) top left repeat-x; }
        .login_lock { background: url(Login_lock.png) right 2px no-repeat; width: 410px;
                        margin-left: 30px; margin-top: 15px; }
        .login_right { width: 16px; height: 258px; display: block; float: left; background: url(login_right.png) top left no-repeat; }
        
        .login_label{display: block;width: 75px;float: left;text-align: right;font-size: 12px;color: #fff;line-height: 25px;}
        .login_input{margin-left: 10px; width: 250px;}
        .login_links { height: 45px; }
            .login_links a { display: block; margin-left: 75px; color: #fff;  }
        
        .login_btn{height: 59px; margin: 0 0 0 223px; background:#000 url(../YourlensBasic/open-an-account-gray.svg) 10px center no-repeat;border: none;cursor: pointer;color:#fff;background-size:32px;width:102px;text-align:right;font-weight:bold;padding-right:10px;}
        .login_ret_btn{height: 25px; width: 102px; margin: 0 0 0 235px; background: url(login_ret_btn.png) top left no-repeat;border: none;cursor: pointer;}
        
        .resetLink a { color: #fff; text-decoration: none; }
        .resetLink a:visited {color: #fff; text-decoration: none;}
        .login_dislcaimer {font-size: 11px;color: #666;line-height: 25px;}
        .login_dislcaimer a, .login_dislcaimer a:visited{color: #03C;}
        .error_pass{position: absolute;z-index: 1000; width: 179px; margin: -4px 0 0 -10px; line-height: 34px; height: 34px; font-size: 10px;
            font-weight: bold; padding-left: 25px; color: #f00; background: url(login_error1.png) top left no-repeat;
        }
        .error_pass2{ position: absolute; z-index: 1000; width: 357px; margin: -65px 0 0 35px; line-height: 33px;
            height: 33px; font-size: 10px; font-weight: bold; text-align: center; color: #f00; background: url(login_error2.png) top left no-repeat;
        }

/* ~~~~~~~~~ Modal popup ~~~~~~~~~~~ */
  .modalDiv { padding: 2em 2em 0; width: 42em; position: relative; }
    .modalDiv#paymentConfirmation { width: auto; }
  .modalControlDiv { background: #fff; box-shadow: .1em .2em .5em rgba(0,0,0,.3); border-radius: 1em; padding: 10em 1em 1em; position: relative;
    margin-top: 1em; text-align: left; height: 15em; }
  #paymentConfirmation .modalControlDiv { padding: 2em 3em; height: auto;}
    #paymentConfirmation .modalControlDiv .eg_btn_submit { margin: 2em 1em 0 0; }

.modalDiv#paymentConfirmation { width: auto;padding:0; }
.modalDiv#paymentConfirmation h1 { margin-top:0;}
#paymentConfirmation ul {list-style:none;margin:0;padding:0 0 0 1em;box-shadow:1px 1px 2px #ccc;height:150px;overflow:hidden;}
#paymentConfirmation ul.j_scroller {overflow:auto;height:250px;}
#paymentConfirmation li { border-bottom: 1px dashed #DFDBD8;clear:both; }
#paymentConfirmation li:first-child { border-bottom:none; }
#paymentConfirmation li:first-child dl.product { padding:0 0 1em 0; }
#paymentConfirmation hr {-moz-box-sizing: content-box;box-sizing: content-box;height: 0;clear:both;display: block;height: 1px;border: 0;margin: 1em 0;padding: 0;}
dl.product {padding:1em 0;}
dl.product, #paymentConfirmation dt, #paymentConfirmation dd {width:49.9%;float:left;}
dl.product + dl.product {float:right;}
.product dt {font-weight:bold;width:30% !important;}
#paymentConfirmation dd, #paymentConfirmation dt {margin:0;}
.totals {width:35%;float:right;margin-left:65%;}
.totals dt {color:#000;font-weight:normal;}
.totals dd {text-align:right;}

/* form buttons */
.btn1_submit, a.btn1_submit:visited, .eg_btn_submit { line-height: 23px; padding: 2px 10px 9px 10px; font-size: 10px; color: #fff; cursor: pointer; font-weight: normal; background: #0f5c8a ; border: 1px solid #0f5c8a; height: 30px;  }
.btn2_submit { line-height: 23px; padding:2px 10px 9px 10px; font-size: 10px; color: #0F5C8A; cursor: pointer; font-weight: normal; background: #e7e7e7; border: 1px solid #e7e7e7; height: 30px;  }

/* Data Classes */
.account_name h2 { color: #461d50; font-size: 14px; font-weight: bold; margin: 0; padding: 0; }
.tagline h2	     { color: #461d50; font-size: 13px; font-weight: bold; margin: 0; padding: 0; }
.our_practice h2 { color: #461d50; font-size: 13px; font-weight: bold; margin: 0; padding: 0; }
.product_side_cart { font-size: 10px; border-bottom: 1px dashed #dfdbd8; padding-bottom: 10px; margin-bottom: 10px }
.totals_side_cart {  }
.order_steps { width: 500px; } 
.contact_info { font-size: 11px; }
.neworder_btn  { margin-top: 10px; margin-bottom: -5px; }
.cart_items_cnt { display: block; width: 65px; float: right; font-size: 10px; text-align: right; padding-right: 10px; }

/* design 
.MAIN, .left, .center, .right{ border: 1px solid red; }
.HEADER, .body, .FOOTER { border: 1px solid green; }*/

/* MAIN LAYOUT */
.MAIN { width: 960px; margin-left: auto; margin-right: auto; }
	.HEADER { height: 140px; }
		.HEADER .ttop { height: 94px; width: 952px; margin: 10px 5px; background: red url(basic_top.png) top left no-repeat; }
		.HEADER .ylenslogo { width: 219px; height: 88px; background: transparent url(yourLensLogo.png) top left no-repeat;  }
		.main_top { width: 960px; display: block; float: left; }
		.tagline_1 { color: #444444; font-weight: bold; font-size: 20px; }
		
	.menu_bar_container { height: 24px; line-height: 26px; }
		.login_top, .loggedin_top { width: 210px; margin-left: 5px; display: block; float: left; }
		.login_top {  background: url(login_top.png) top left no-repeat;  }
		.loggedin_top {  background: url(loggedin_top.png) top left no-repeat; }
			.loggedin_top ul { width: 210px; }
			.loggedin_top li { display: block; float: left; list-style: none; }
			.loggedin_top a   { color: #444444; }
		.login_btm { width: 210px; min-height: 165px; background: url(login_btm.png) bottom left no-repeat;  }
			.login_btm label, .login_btm  a { color: #fff; }
				.forgot_pass { font-size: 11px; padding-right: 10px; }
		.main_menu_bar { font-size: 12px; text-transform: uppercase; height: 24px; line-height: 24px; width: 740px; display: block; float: left; border: 1px solid #75b7d9;
							background: #d9f4fe; 
						}	
			.main_menu_bar ul { margin: 0; padding: 0; }
			.main_menu_bar li { display: inline; padding: 0 15px; }
			.main_menu_bar li a { color: #444444; font-size: 11px; line-height: 25px; text-align: center; }
		

	.body_3_col { padding: 0 5px; }
		.body_3_col .left   { display: block; float: left; min-height: 150px; width: 210px; /*background: blue;*/}
		.body_3_col .center { display: block; float: left; min-height: 150px; width: 480px; margin-left: 5px; /*background: green;*/}
					.center .pad { padding: 10px; }
		.body_3_col .right  { display: block; float: left; min-height: 150px; width: 250px; margin-left: 5px;/* background: red; */}
	
	.body_2_col { padding: 0 5px; }
		.body_2_col .center { display: block; float: left; min-height: 150px; width: 690px; margin-left: 5px; /*background: green;*/}
		.body_2_col .right  { display: block; float: left; min-height: 150px; width: 250px; margin-left: 5px;/* background: red; */}
	

/* Module Boxes */
	/* mod1 - wide on left used on two column layout, example: my prescriptions */
	.mod1_a { width: 685px; margin-top: 10px; }
		.mod1_a .top { width: 685px; height: 26px; background: url(mod1_a_top.png) top left no-repeat;  }
			.mod1_a .top span { font-size: 13px; line-height: 26px; padding-left: 10px; font-weight: bold; color: #fff;  }
		.mod1_a .mid { border-left: 1px solid #dfdbd8; border-right: 1px solid #dfdbd8;  }
		.mod1_a .pad { padding: 10px; line-height: 150%;  }
		.mod1_a .pad p { margin: 0; padding: 0; }
		.mod1_a .btm { height: 10px; width: 685px; background: url(mod1_btm.png) top left no-repeat;  }
		
	/* mod2 - on right side used on two/three column layout, example: services */
	.mod2_a { width: 250px; margin-top: 10px; }
		.mod2_a .top { width: 250px; height: 26px; background: url(mod2_a_top.png) top left no-repeat;  }
			.mod2_a .top span { font-size: 13px; line-height: 26px; padding-left: 10px; font-weight: bold; color: #fff;  }
		.mod2_a .mid { border-left: 1px solid #dfdbd8; border-right: 1px solid #dfdbd8;  }
		.mod2_a .pad { padding: 10px; line-height: 150%;  }
		.mod2_a .pad p { margin: 0; padding: 0; }
		.mod2_a .btm { height: 10px; width: 250px; background: url(mod2_btm.png) top left no-repeat;  }
		
	.mod2_b { width: 250px; margin-top: 10px; }
		.mod2_b .top { width: 250px; height: 26px; background: url(mod2_b_top.png) top left no-repeat;  }
			.mod2_b .top span { font-size: 13px; line-height: 26px; padding-left: 10px; font-weight: bold; color: #444444;  }
		.mod2_b .mid { border-left: 1px solid #dfdbd8; border-right: 1px solid #dfdbd8;  }
		.mod2_b .pad { padding: 10px; line-height: 150%;  }
		.mod2_b .pad p { margin: 0; padding: 0; }
		.mod2_b .btm { height: 10px; width: 250px; background: url(mod2_btm.png) top left no-repeat;  }
		
		
	/* mod3 - on left side used on three column layout, example: products */
	.mod3_a { width: 210px; margin-top: 10px; }
		.mod3_a .top { width: 210px; height: 26px; background: url(mod3_a_top.png) top left no-repeat;  }
			.mod3_a .top span { font-size: 13px; line-height: 26px; padding-left: 10px; font-weight: bold; color: #444444;  }
		.mod3_a .mid { border-left: 1px solid #dfdbd8; border-right: 1px solid #dfdbd8;  }
		.mod3_a .pad { padding: 10px; line-height: 150%;  }
		.mod3_a .pad p { margin: 0; padding: 0; }
		.mod3_a .btm { height: 10px; width: 210px; background: url(mod3_btm.png) top left no-repeat;  }
	
	/* mod4 - on home page used on three column layout, example: hours, location, contact info */
	 .triple { display: block; float: left; margin: 10px 3px 10px 5px; }
	 .mod4_a { width: 150px; margin-top: 10px; }
		.mod4_a .top { width: 150px; height: 26px; background: url(mod4_a_top.png) top left no-repeat;  }
			.mod4_a .top span { font-size: 13px; line-height: 26px; padding-left: 10px; font-weight: bold; color: #fff;  }
		.mod4_a .mid { border-left: 1px solid #dfdbd8; border-right: 1px solid #dfdbd8;  }
		.mod4_a .pad { padding: 5px; line-height: 150%;  }
		.mod4_a .pad p { margin: 0; padding: 0; }
		.mod4_a .btm { height: 10px; width: 150px; background: url(mod4_btm.png) top left no-repeat;  }
		

/* orders page */
.special_title { font-size: 13px; font-weight: bold;  }

/* modal box properites */
.modalBackground
{
    background-color:Gray;
    opacity: 0.5;
    filter:Alpha(opacity=50);
}

.modalpopup
{
    background-color:White;
    padding:6px 6px 6px 6px;
    border: 3px solid #0f5c8a;
}

.addressValidation {
	line-height: 100%;
}


.addressValidation h3 {
  font-size:        140%;
  border-collapse:  collapse;
  margin-top:		5px;
  margin-bottom:	5px;
}

.addressValidation h4 {
  font-size: 100%;
  border-collapse: collapse;
  color: #FF6F20;
}

.addressValidation p {
	margin-top: 5px;
	margin-bottom: 5px;
}

.addressValidationButton {
  background-color:   #FF6F20;
  line-height: 23px; 
  padding: 0px 5px 3px 5px;  
  font-size: 10px; 
  color: white;  
  cursor: pointer; 
  font-weight: normal; 
  background: #e7e7e7 
  url(btn_green.png); 
  border: 0px solid #FF6F20; height: 25px; 
}

.addressValidation .dxgvHeader {
  background-color: #00539f;
  color: white;
}

.addressValidation .dxgvHeader table {
  color: white;
}

.invalidAddress {
  color: red;
  padding-top: 7px;
  padding-bottom: 15px;
  border-collapse: collapse;
  line-height: 100%;
}

/* reorder contacts */
.product_image {vertical-align:middle;}

/* javascripting rules */
.j_hide { display: none; }

/* globals */
.reset {margin:0;padding:0;list-style:none;}

/*********** new branding **********/
/***********************************/

/* login page */
.header__top--yl {
	background-color: #1b75bb;
	padding-top:1rem;
}
.header__logo {
	margin:0 1rem 1rem;
}
.header__bottom {
	background-color: #414141;
	height: 46px;
}

.login-error {
	display: block;
	padding: 5px;
	border: 1px solid red;
	color: Red;
	text-align: center;
	margin-top: 32px;
}
.login {
	background-color: rgb(27, 117, 187);
	width:480px;
	margin:auto;
	padding:2rem;
  margin-top: 32px;
}
.login_lock {margin-bottom:2rem;}

