body { margin: 0px; padding: 0px; background: #ccc; }
body { line-height: 1.5em; font-family: 'Cabin', sans-serif; font-size: 14px; color: #231F20; }

html { -webkit-text-size-adjust:none; }


td { font-size: 100%; padding: 0px; vertical-align: top; text-align: left; }

h1,h2,h3,h4,h5,h6,p,form { margin: 0px; padding: 0px; }
h1,h2,h3{ margin-bottom: 15px; }
h2,h3 { margin:10px 0 20px 0; }

h2 { font-size: 21px; font-weight: 400; }
h3 { font-weight:700; color:#C53C44; margin: 0 0 22px 0; }
h4 { font-weight: 700; }
h1 { font-size: 22px; color: #C53C44; font-weight: 400; border-bottom: 2px solid #C53C44; padding-bottom: 10px; }
h4 { margin-bottom: 5px; font-size: 15px; }

a { outline: none; text-decoration: none; color: #C53C44; }
a:hover { text-decoration: underline; }
a img { border: 0px; }

img { display: inline-block; }

p { margin-bottom: 18px; }

p iframe { margin-bottom: 22px; }

.image_left { float: left; margin-right: 10px; }
.image_right { float: right; margin-left: 10px; }

.white { background: #fff; padding-bottom: 0px; }
.wrapper { width: 960px; margin: 0px auto; }
.wrapper:after,
#header:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; } 

.wrapper .left { float: left; }
.wrapper .right { float: right; }

.hide { display: none; }

#blue-ribbon { position: absolute; height: 58px; width: 100%; top: 160px; background: #C53C44; }

#header { padding: 22px 0px 8px 0px; min-height: 77px; }
#header .top { float:left; margin-top:10px }
#header .center { padding-top: 10px; float:left; margin-left:150px;}
#header .center a{ color:#000;}
#header .right { padding-top: 10px; }
#header #search { background-color: #cccccc; clear: right; float: right; height: 25px; line-height: 25px; width: 220px; }
#header #search input { background-color: transparent; border: medium none; color: #fff; font-size: 12px; margin: 0 0 10px 5px; padding: 0 0 0 5px; width: 180px; }
#header #search .search-icon { float:right; }
#header #search .member-login { margin:10px 10px 0 0; float:right; }
#header form { float: right; }
#header form input[type=text] { padding:6px; border-radius: 3px; border: 1px solid #ccc; }
#header form input[type=submit] { padding:6px;  }
#header #logo { display: block; width: 320px; height: 110px; background: url("/template/logo.png") no-repeat; background-size: contain; text-indent:-9999px; float:left; }
#header #top-nav { display:block; float:right; height: 25px; line-height: 25px; width:400px; }    
#header #top-nav a { font-family: 'Cabin',sans-serif; font-size:13px; text-decoration:none; color:#000; margin-left:30px; } 
#header #top-nav a:hover { text-decoration:underline; } 
#header #social { display:block; float:right; margin-top:15px; clear: right; width: 250px; }
#header #social p { line-height: 24px; }

#nav-primary { height:58px; list-style: none; z-index: 999; position: relative; }
#nav-primary > li > a:hover,
#nav-primary { }
#nav-primary > li {  background: #C53C44; width: 16.6%; }
#nav-primary > li > a { text-align: center; text-shadow: 1px 1px 0px #333; width: 300px /* somehow fixes table-cell */; vertical-align: middle; height: 28px; display: table-cell; }
#nav-primary .last_topnav { border-right: 1px solid #eee; }
#nav-primary ul { list-style: none; }

.sf-menu li li a { border-left: none; }
.sf-menu li li { background: #C53C44; }

.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {	  background-color: #b42b31; outline:0; }
#nav-primary > li > a { text-transform: uppercase; }
#nav-primary > li > a:hover, #nav-primary > li.sfHover > a, #nav-primary > li.current > a { background: #b42b31; }
.breadcrumb { margin-bottom:20px; }
.breadcrumb a{ color:#A92716; }
.breadcrumb a.current-page{ color:#C53C44; }

#content { width: 670px; float: left; margin-bottom:30px; margin-top: 25px; }
#content.full { width: 960px; }
body.page_1 #content { margin-top: 15px; margin-bottom: 0px; }

#banners-feature{ position: relative; width: 670px; height: auto; margin-bottom: 20px; }
#banners-feature.full{ position: relative; width: 960px; height: auto; margin-bottom: 20px; }
#banners-feature.home { position: relative; height: 275px; width:960px;  }
#banners-feature.home .banners { background: none; padding-bottom: 0px; width: 670px; height: 150px; }
#banners-feature.home .banners { /*background: url("/template/banner-shadow.png") repeat-x scroll center bottom transparent;*/ height: 275px; padding-bottom: 16px; width:960px; }
#banners-feature.home .banners img{ display: inline-block; overflow: hidden; -webkit-border-radius: 10px 10px 10px 10px; -moz-border-radius: 10px 10px 10px 10px; border-radius: 10px 10px 10px 10px; margin: 0px; }
#banners-feature nav { display: none; }

img.center { display: block; margin-left: auto; margin-right: auto; }
#content .one_third { width:298px; float: left; margin-right:30px; background-color:#fff; border:1px #8B9FB0 solid; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; min-height:383px; }
#content .one_third img { margin-bottom:10px; overflow:hidden; -webkit-border-radius: 10px 10px 0px 0px; -moz-border-radius: 10px 10px 0px 0px; border-radius: 10px 10px 0px 0px;  }
#content .one_third p { font-size: 14px; line-height: 24px; margin: 0 10px 20px 10px; }
#content .last { margin:0px; }
#content .widget-text { }
#content img.left { float:left; margin-right:20px; margin-bottom:10px; }
#content img.right { float:right; margin-left:20px; margin-bottom:10px; }
#content h3.widget-title { background: url("/template/header-title.png") no-repeat scroll left top transparent; color: #FFFFFF; font-size: 18px; height: 49px; line-height: 22px; margin: 10px 10px 10px -11px; width: auto; }
#content h3.widget-title span { background-color: #C53C44; display: block; float: left; height: 40px; line-height: 34px; padding-right:40px; padding-left:22px; }
#content .show-content { cursor: pointer; }
#content hr { margin-bottom:22px; }

#slider li {position:relative;}
#slider div.slider-bg {background:#AA483B;top:140px;height:102px;width:760px;left:0;position:absolute;z-index:10;opacity:.4;}
#slider div.slider-info {top:140px;height:72px;left:0;position:absolute;width:65px;z-index:15;padding:15px;}
#slider div.slider-info strong {font-size:18px;color:#fff;margin-bottom:5px;}
#slider div.slider-info p {display:none;font-size:12px;line-height:14px;color:#fff;margin:0 !important;}
#slider div.slider-info h2 {color:#fff;margin:0 !important;}
#slider li.slider-open div.slider-info {width:760px;}
#slider li.slider-open div.slider-info strong {font-size:22px;}
#slider li.slider-open div.slider-info p {display:block;}

body.page_1 #banners-feature { position: relative; width: 960px; height: 275px; margin-bottom: 0px; }
body.page_1 #banners-feature nav { display: block; position: absolute; top: 97px; width: 100%; }



#search label { display: none; }
.addthis_toolbox a { }


.prev,
.next { text-indent: -9999px; }



#banners-feature nav a { position: absolute; display: block; width: 25px; height: 50px; background: url(/template/banner-nav.png); z-index: 10; }
#banners-feature nav a.prev { left: -25px; }
#banners-feature nav a.prev:hover { background-position: 0px 50px; }
#banners-feature nav a.next { right: -25px; background-position: 25px 0px; }
#banners-feature nav a.next:hover { background-position: 25px 50px; }
.pager { margin:10px auto; width:100px;}
.pager a{ background: url(/template/bullets.png); border: 0 none; display: block; float: left; height: 20px; margin-right: 7px; text-indent: -9999px; width: 20px; }
.pager a:hover, .pager a.activeSlide{ background-position: 0 100%; }

.border-box {width: 980px;}
.border-box .top-left, .border-box .top-right, .border-box .bottom-left, .border-box .bottom-right  { background-image: url(/template/bg-box.gif); background-repeat: no-repeat; }
.border-box .top-left {	background-position: left top; }
.border-box .top-right { background-position: right top; margin-left: 10px; padding: 20px 20px 10px 10px; }
.border-box .bottom-left { background-position: left bottom; }
.border-box .bottom-right {	background-position: right bottom; height: 10px; margin-left: 10px; }
	
body.page_1 #news { width: 360px; float: left; margin-right: 20px; }
body.page_1 #news article { display: block; margin-top: 0px; margin-bottom: 20px; padding-bottom: 0px; border-bottom: 0px; background: none; }
body.page_1 #news article aside { float: left; margin-right: 10px; width: 68px; }
body.page_1 #news article aside a { display: block; }
body.page_1 #news article aside img { display: block; }
body.page_1 #news article p { margin: 0px; }
body.page_1 #news article div { float: left; width: 282px; font-size: 12px; line-height: normal; }
body.page_1 #news article div.full { width: 360px; }
body.page_1 #news h2 { color: #C53C44; margin-bottom: 17px; }


#news { }
#news article { position: relative; margin-top: 10px; float: left; margin-bottom: 0px; background: url(/template/news-divider.png) bottom center no-repeat; padding-bottom: 40px;  }
#news article.first { margin-top: 0px; }
#news article aside { float: left; margin-right: 10px; width: 68px; }
#news article div { float: left; width: 670px; font-size: 100%; line-height: normal; }
#news article h2,
#news article h2 a { color: #000; }
#news article h4 a { color: #000; }
#news h2 { color: #C53C44; }
#news h1 + article { margin-top: 5px; }

#sidebar { width: 280px; float: left; margin-left:10px; }

#sidebar .banners-sidebar {  }
#sidebar .banners-sidebar a,
#sidebar .banners-sidebar img { display: block; }
#sidebar .banners-sidebar img { /*margin-bottom: 10px;*/ }

#sidebar article { /*margin-top: 20px;*/ }
#sidebar .sidebar-widget { padding:20px 0px 10px 20px; }
#sidebar .sidebar-widget h2 { margin:0px 0px 20px 0px; }

#contactColumn { width:300px; float:left; }

#contactform { width:400px; float:right; margin-left:30px;}
	#contactform label { font-size:13px; color:#484847;}
	#contactform input { width:398px; height:30px; margin:0 0 20px 0; border:1px solid #b3b3b3; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px;}
	#contactform textarea { width:398px; height:180px; margin:0 0 20px 0; border:1px solid #b3b3b3; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; resize:none;}
	#contactform .submit{ background:#26639A; border:1px solid #b7d4d2; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; width:400px; height:40px; text-align:center; color:#fff !important; line-height:40px; display:block; cursor:pointer;}
	#contactform .submit:hover {background:#1D476D;}

form.validate .error { background: none repeat scroll 0 0 #FFBBBA; }	
	
#billingform { width:400px; float:left; }
	#billingform label { font-size:13px; color:#484847;}
	#billingform input { width:398px; height:30px; margin:0 0 20px 0; border:1px solid #b3b3b3; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px;}
	#billingform select { width:398px; height:30px; margin:0 0 20px 0; border:1px solid #b3b3b3; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px;}	
	#billingform textarea { width:398px; height:180px; margin:0 0 20px 0; border:1px solid #b3b3b3; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; resize:none;}
	#billingform .submit{ background:#26639A; border:1px solid #b7d4d2; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; width:400px; height:40px; text-align:center; color:#fff !important; line-height:40px; display:block; cursor:pointer;}
	#billingform .submit:hover {background:#1D476D;}
	#billingform form.validate .error { background: none repeat scroll 0 0 #FFBBBA; }		

#footer-bottom { background: #ccc; width:100%; height:270px;}
#footer { padding-top: 16px;
border-top: 5px solid #085eae;
color: #fff;
font-size: 90%;
background: #aaa;
padding-bottom: 1px; }
#footer a { color: #fff; display: inline-block; padding: 0px 4px; }
#footer-bottom #footer-content { margin-top:20px; }
#footer-bottom #footer-content .footer-column { width:200px; display:block; float:left; margin-right:40px; }
#footer-bottom #footer-content .footer-column h4 a { border-bottom: 1px solid #8b9fb0; font-family: 'Cabin',sans-serif; font-weight: normal; margin-bottom: 12px; text-transform: uppercase; font-weight:400; font-size:14px; line-height:17px; padding-bottom:5px; }
#footer-bottom #footer-content .footer-column a { font-size:11px; line-height:14px; font-family: 'Cabin',sans-serif; color:#111; width:100%; display:block; margin:2px 0 7px 0;}

.clearfix:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; } 
.clearfix { display: inline-block; width: 100%; }  
html[xmlns] .clearfix { display: block; }  
* html .clearfix { height: 1%; } 




input[type=text],textarea,select,input[type=tel] { border-radius: 5px; border: 1px solid #ccc; }
.RequiredFieldLabel {
	font-family: Arial;
	font-weight: bold;
	color: #EC921A;
}

.NonRequiredFieldLabel {
	font-family: Arial;
	font-weight: bold;
	color: #ACC3D1;
}

.RequiredAsterisk {
	font-family: Arial;
	font-size: 10pt;
	font-weight: bold;
	color: #014886;
}

.SmallNote {
	font-family: Arial;
	font-weight: normal;
	color: #FFFFFF;
	font-size: 8pt;
}

.SmallGrayNote {
	font-family: Arial;
	font-weight: normal;
	color: #666666;
	font-size: 8pt;
}

.SmallNote {
	font-family: Arial;
	font-weight: normal;
	color: #666666;
	font-size: 8pt;
}

.SuccessMessage {
	font-family: Arial;
	font-size: 8pt;
	font-weight: bold;
	color: #008000;
}

.SpecialFeatureHighlight {
	font-family: Arial;
	font-size: 12pt;
	font-weight: bold;
	color: #ffffff;
}

.ListNumber {
	font-family: Arial;
	font-size: 12pt;
	font-weight: bold;
	color: #ffffff;
}

.Date {
	font-family: Arial;
	font-size: 8pt;
	font-weight: bold;
	color: #EC921A;
}

.ErrorMessage {
	font-family: Arial;
	font-size: 8pt;
	font-weight: bold;
	color: #FF0000;
}

/*----------------------------------------------
  Forms
----------------------------------------------*/

.fe_form {
	clear: both; 
	float: left;
	margin-bottom: 1em;
	padding: 0;
	width: 100%;
}
.fe_form ul, .fe_form_block {
	clear: both; 
	float: left; 
	list-style: none; 
	margin: 0; padding: 0; 
	width: 100%;
}
.fe_form li {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: inline-block; 
	margin: 0 .25em .75em 0; 
	vertical-align: top; 
	width: 100%;
}
.fe_form li.fe_form_control_group {margin-bottom: 0;}
.fe_form li.fe_form_control_group li {width: auto;}
.fe_form li.fe_form_control_group li:last-child {margin-right: 0;}

.block_label {display: block; margin-bottom: .25em;}

#form_error,
.fe_form .fe_form_error {
	background: #ffecec; 
	border: 1px solid #ffc8c8;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	clear: both;
	color: #c40808;
	list-style-position: inside ;
	margin-bottom: 1.5em; 
	padding: 1em;
}

#form_error li {display: list-item; list-style-type: disc; margin-bottom: .75em;}
#form_error li:last-child {margin-bottom: 0;}

#form_error label,
.fe_form .fe_form_error label {color: inherit;}

.fe_field_hint {
	clear: both;
	font-size: .875em; 
	font-style: italic; 
	margin-bottom: 1.25em;
	margin-top: -.25em;
}

/* Helptips */
.fe_helptip {padding-left: .25em; position: relative;}
.fe_helptip:hover {cursor: help; z-index: 99999;}
.fe_helptip:hover div {display: block; z-index: 9999;}

.fe_helptip span:before {
	content: '?';
	display: inline-block;
	font-family: 'fe-icons';
	font-size: 14px;
	font-weight: normal;
	line-height: 1.375em;
	opacity: .5;
}

/* Hide section to be animated with JS */
.section_hidden {display: none; width: 100%;}

.section_divider .fe_helptip span:before,
.fe_form_header .fe_helptip span:before {margin-top: 1.5em; margin-left: .5em;}

.fe_helptip div {
	background: #fff;
	border-width: 1px;
	border-style: solid;
	border-radius: 3px;
	box-shadow: 0 3px 10px rgba(0,0,0,.2);
	color: inherit;
	display: none;
	font-family: inherit;
	font-size: .875em;
	font-weight: normal;
	width: 200px;
	padding: 12px 15px;
	position: absolute; top: 0; left: 20px;
}

.fe_helptip:hover span:before {opacity: 1;} /* make info bubble opaque */

.fe_helptip .boxoverbody {z-index: 10000;} /* credit card verification number tooltip */

/* Field styles */
.fe_form input, .fe_form select, .fe_form textarea {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: inherit;
	margin: 0 .5em .75em 0;
	outline: none;
	padding: .5em;
	vertical-align: middle;
}

/* Remove controls on number field */
.fe_form input[type="number"]::-webkit-inner-spin-button, 
.fe_form input[type="number"]::-webkit-outer-spin-button {-webkit-appearance: none; margin: 0;}

.fe_form input[type="submit"],
.fe_form input.submitbutton {margin-top: .75em;}
.fe_form input[type="submit"].inline_submit_button {margin-top: 0;}

.fe_form textarea {height: 10em; overflow: auto; width: 380px;}

/* Custom CSS checkbox/radio buttons */
/*
.fe_form input[type="checkbox"]:not(#foo),
.fe_form input[type="radio"]:not(#foo) {
	position: absolute; 
	left: -9999em;
}

.fe_form input[type="checkbox"]:not(#foo) + label,
.fe_form input[type="radio"]:not(#foo) + label {
	cursor: pointer;
	line-height: 1.375em;
	padding: 0 0 0 1.75em;
	position: relative;
}

.fe_form input[type="checkbox"]:not(#foo) + label:before,
.fe_form input[type="radio"]:not(#foo) + label:before {
	background: #fff;
	box-shadow: inset 0 2px 3px rgba(0,0,0,.1);
	border: 1px solid #ccc;
	content: "";
	height: 1.25em; width: 1.25em;
	position: absolute; top: 0; left: 0;
}
	
.fe_form input[type="checkbox"]:not(#foo):focus + label:before, 
.fe_form input[type="radio"]:not(#foo):focus + label:before {border: 1px solid #333;}

.fe_form input[type="checkbox"]:not(#foo) + label:before {border-radius: .25em;}
.fe_form input[type="radio"]:not(#foo) + label:before {border-radius: 50%;}

.fe_form input[type="checkbox"]:not(#foo):checked + label:after {
	color: #333;
	content: 'x';
	display: block;
	font-family: 'fe-icons';
	font-size: 1em;
	line-height: 1.375em;
	position: absolute;
	top: 0; left: .2em;
}

.fe_form input[type="radio"]:not(#foo):checked + label:after {
	background: #333;
	border-radius: 50%;
	content: '';
	display: block;
	height: .875em; width: .875em;
	line-height: 1.375em;
	position: absolute;
	top: .25em; left: .25em;
}*/

#webform .options label { display: block; }

.fe_form_grp_title {font-weight: bold; margin-bottom: .5em;}

/* Checkbox/Radio grouping */
li.fe_form_cbgrp_vert {margin-right: 1.5em;}
.fe_form_cbgrp_vert label {clear: both; float: left; margin-bottom: .75em;}

.fe_form_cbgrp_horiz label {float: left; margin-right: 1.25em; margin-bottom: .75em;}
.fe_form_cbgrp_horiz label:last-child {margin-right: 0;}

li.fe_form_radiogrp_vert {margin-right: 1.5em;}
.fe_form_radiogrp_vert label {clear: both; float: left; margin-bottom: .75em;}

.fe_form_radiogrp_horiz label {float: left; margin-right: 1.25em; margin-bottom: .75em;}
.fe_form_radiogrp_horiz label:last-child {margin-right: 0;}

/* Override default select2 styles */
.fe_form .select2-container {
	background: #fff;
	background-image: none !important; 
	border-style: solid; 
	border-width: 1px; 
	border-radius: 3px; 
	box-shadow: inset 0 2px 3px rgba(0,0,0,0.1); 
	margin: 0 .75em .75em 0;
}
.select2-choice {background: none !important; border: 0 !important; font-size: inherit !important;}
.select2-drop {font-size: 14px !important;}
.select2-arrow {background: none !important; border: 0 !important;}
.select2-highlighted {background: #333 !important;}
.select2-results li:first-child {color: #aaa;}

.fe_form_header h2 {display: inline-block; line-height: 1.3; margin: 0 0 .5em; width: auto;}
.section_divider h2 {display: inline-block; line-height: 1.3; margin: 1em 0 .5em; width: auto;}
.section_divider hr, .fe_form_header hr {height: 1px; margin: 0 0 1em;}
.section_description li {margin: 0 0 1.5em;}

button, input[type="button"], input[type="reset"], input[type="submit"] {cursor: pointer;}

.submitbutton, .submitbutton:active, .submitbutton:focus,
input.submitbutton, input.submitbutton:active, input.submitbutton:focus {
	overflow: visible;
	-webkit-appearance: none;
}
.smallbutton, .smallbutton:active, .smallbutton:focus,
input.smallbutton, input.smallbutton:active, input.smallbutton:focus,
.link_button, .link_button:active, .link_button:focus {
	overflow: visible;
	padding: .5em .75em;
	-webkit-appearance: none;
}

.section_divider_button,
.section_divider_button:active,
.section_divider_button:focus {line-height: 1; margin-top: .75em; padding: .5em .75em;} /* use color palette to color */

.lg_field {width: 21em;}
.md_field {width: 14em;}
.ms_field {width: 10em;} /* best for phone number */
.sm_field {width: 7em;}
.xs_field {width: 4em;}

/* Password Meter */
div.score {display: block; white-space: nowrap; width: 175px !important; height: 5px;}
div.score div {display: block; white-space: nowrap; height: 5px;}
.badPass div.score div {background-color: #F4715B;}
.goodPass div.score div {background-color: #EEF042;}
.strongPass div.score div {background-color: #64FD58;}

/* list with bulleted items inside an fe_form */
ul.fe_form_list {list-style: disc inside;}
ul.fe_form_list li {display: list-item; margin-bottom: 0;}

/* qa question bubble */
.speech_bubble_block {
	background: #fff;
	border-radius: 1em;
	clear: both;
	margin-bottom: 1.5em;
	padding: 1.5em;
	position: relative;
}
.speech_bubble_block:after {
	border-left: .5em solid transparent;
	border-right: .5em solid transparent;
	border-top-style: solid;
	border-top-color: inherit;
	border-top-width: 1em;
	content: '';
	display: block;
	height: 0; width: 0;
	position: absolute;
	left: 1.5em;
	bottom: -1em;
}
.speech_bubble_block h2 {line-height: 1; margin: 0;}


.fe_form input[type=text] { width: 200px; }

.btnsubmit { background: #085eae; color: #fff; font-weight: bold;     padding: 6px 25px; margin-top: 15px; display: inline-block; border-radius: 5px; }

@media screen and (max-width: 480px) {
	
	.fe_form li.fe_form_control_group li:not(.not_max), 
	.fe_form input:not(.not_max), 
	.fe_form select:not(.not_max), 
	.fe_form textarea, 
	.fe_form .select2-container:not(.not_max) {margin-right: 0; width: 100% !important;}
	/* .responsive li {float: none;} */
	.field_note {font-size: .875em;}
}