@charset "utf-8";

/* --- EMERGENCY FIX: Global Box Sizing --- */
/* This ensures padding doesn't accidentally expand widths */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* --- MAIN LAYOUT & TYPOGRAPHY --- */
body {
	margin: 0;
	padding: 0;
	width: 100%;
	color: #323131;
	font: normal 12px/1.8em Arial, Helvetica, sans-serif;
}

html, .main {
	padding: 0;
	margin: 0;
	background: #fff url(images/main_bg.gif) top center repeat-x;
}

.clr {
	clear: both;
	padding: 0;
	margin: 0;
	width: 100%;
	font-size: 0;
	line-height: 0;
}

.logo {
	padding: 20px 0 0 40px;
	float: left;
	width: auto;
}

/* --- HEADER FIXES --- */
/* Ensures header images (banners) don't overflow or float weirdly */
header img, .header img {
	max-width: 100%;
	height: auto;
}

h1 {
	margin: 0;
	padding: 16px 0;
	color: #fff;
	font: bold 40px/1.2em Arial, Helvetica, sans-serif;
	letter-spacing: -2px;
}

h1 a, h1 a:hover {
	color: #fff;
	text-decoration: none;
}

h1 span {
	color: #060BCD;
}

h1 small {
	display: block;
	padding: 0 0 0 90px;
	font: normal 13px/1.2em Arial, Helvetica, sans-serif;
	letter-spacing: normal;
}

h2 {
	font: bold 14px/0.8em Arial, Helvetica, sans-serif;
	padding: 8px 0;
	margin: 8px 0;
	color: #0A5483;
}

h3 {
	font: normal 14px/0.8em Arial, Helvetica, sans-serif;
	padding: 8px 0;
	margin: 8px 0;
	color: #06396E;
}

p {
	margin: 8px 0;
	padding: 0 0 8px 0;
	font: normal 12px/1.8em Arial, Helvetica, sans-serif;
	font-style: normal;
	font-weight: normal;
}

p.spec {
	text-align: right;
}

a {
	color: #2E32FB;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

a.rm, a.com {
	margin-left: 8px;
	padding: 9px 12px;
	background: repeat-x top;
	text-decoration: none;
	color: #fff;
}

.header, .content, .menu_nav, .fbg, .footer, form, ol, ol li, ul, .content .mainbar, .content .sidebar {
	margin: 0;
	padding: 0;
}

/* --- HEADER --- */
.header_resize {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 970px;
}

.menu_nav {
	margin: 0;
	padding: 60px 0 0 0;
	float: right;
}

.menu_nav ul {
	list-style: none;
}

.menu_nav ul li {
	margin: 0;
	padding: 0 2px 0 0;
	float: left;
	background: no-repeat right center;
}

.menu_nav ul li a {
	border-right: 1px solid #4b6590;
	display: block;
	margin: 0;
	padding: 2px 15px;
	color: #0934FF;
	text-decoration: none;
	font: normal 13px Arial, Helvetica, sans-serif;
}

.menu_nav ul li.active a, .menu_nav ul li a:hover {
	color: #40b5ff;
}

.menu_nav ul li.last a {
	border: 0;
}

/* --- CONTENT AREA --- */
.content {
	padding: 50px 0 0 0;
}

.content_resize {
	margin: 0 auto;
	padding: 0 20px;
	width: 100%;
	max-width: 930px;
	background: #fff;
	/* box-sizing is handled globally now */
}

.content .mainbar {
	margin: 0;
	padding: 0;
	float: left;
	/* CHANGED from 620px to 600px to fit next to sidebar */
	width: 600px; 
	background: repeat-x bottom;
}

.content .mainbar img {
	float: left;
	padding: 4px;
	margin: 0 10px 0 0;
	border: 1px solid #eaecec;
	background-color: #fff;
	max-width: 100%;
	height: auto;
}

.content .mainbar .article {
	margin: 0;
	padding: 20px 0 0 0;
	border-bottom: 2px dashed #cbcbcb;
}

.content .mainbar .article span.butons a {
	margin: 0 10px 0 0;
	float: right;
	color: #323131;
	padding: 1px 10px;
	border: 1px solid #edebeb;
	background: #fbfbfc;
	text-decoration: none;
}

.content .mainbar .article span.butons a:hover {
	border: 1px solid #d1d7e0;
	background: #1a3562;
	color: #fff;
	text-decoration: none;
}

.content .mainbar .article span.butons a.active {
	border: 1px solid #d1d7e0;
	background: #1a3562;
	color: #fff;
	text-decoration: none;
}

.content .sidebar {
	margin: 20px 0 0 0;
	padding: 0;
	float: right;
	width: 280px;
	border-left: 2px dashed #cbcbcb;
}

.content .sidebar .gadget {
	margin: 0 0 0 20px;
	padding: 0 0 20px 0;
	border-bottom: 2px dashed #cbcbcb;
}

ul.sb_menu, ul.ex_menu {
	margin: 0;
	padding: 0;
	list-style: none;
	color: #959595;
}

ul.sb_menu li, ul.ex_menu li {
	margin: 0;
}

ul.sb_menu li {
	padding: 4px 0 4px 12px;
	width: 220px;
}

ul.ex_menu li {
	padding: 4px 0 8px 12px;
}

ul.sb_menu li a, ul.ex_menu li a {
	color: #2E32FB;
	text-decoration: none;
	margin-left: -12px;
	padding-left: 12px;
}

ul.sb_menu li a:hover, ul.ex_menu li a:hover {
	color: #2cadff;
	text-decoration: underline;
}

/* --- FOOTER --- */
.fbg {
	background: #fff url(images/footer_bg.gif) bottom repeat-x;
}

.fbg_resize {
	margin: 10px auto;
	padding: 15px 20px 0 20px;
	width: 100%;
	max-width: 890px;
	border-top: 2px dashed #cbcbcb;
	color: #323131;
	background: #fff;
}

.fbg h2 {
	color: #0A5483;
}

.fbg img {
	padding: 4px;
	border: 1px solid #cfd2d4;
	background-color: #fff;
	max-width: 100%;
	height: auto;
}

.fbg .col {
	margin: 0;
	float: left;
}

.fbg .c1 {
	padding: 0 16px 0 0;
	width: 266px;
}

.fbg .c2 {
	padding: 0 16px;
	width: 300px;
}

.fbg .c3 {
	padding: 0 0 0 16px;
	width: 260px;
}

.footer {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	padding: 20px 0;
}

.footer p {
	margin: 0;
	padding: 4px 0;
	line-height: normal;
}

.footer a {
	color: #323131;
	padding: inherit;
	text-decoration: underline;
}

.footer a:hover {
	text-decoration: none;
}

.footer .lf {
	float: left;
}

.footer .rf {
	float: right;
}

ol {
	list-style: none;
}

ol li {
	display: block;
	clear: both;
}

ol li label {
	display: block;
	margin: 0;
	padding: 16px 0 0 0;
}

ol li input.text {
	width: 100%;
	max-width: 480px;
	border: 1px solid #c0c0c0;
	margin: 2px 0;
	padding: 5px 2px;
	height: 16px;
	background: #fff;
}

ol li textarea {
	width: 100%;
	max-width: 480px;
	border: 1px solid #c0c0c0;
	margin: 2px 0;
	padding: 2px;
	background: #fff;
}

ol li .send {
	margin: 16px 0 0 0;
}


/* ============= RESPONSIVE / MEDIA QUERIES ============= */

/* TABLET & MOBILE (Max width 950px) */
@media (max-width: 950px) {
	.content .mainbar, 
	.content .sidebar,
	.fbg .c1, 
	.fbg .c2, 
	.fbg .c3 {
		width: 100%;
		float: none;
		margin: 0;
		padding: 10px 0;
	}
	
	.content .sidebar {
		border-left: none;
		border-top: 2px dashed #cbcbcb;
	}
	
	.fbg .col {
		width: 100%;
		float: none;
	}
}


/* PHONES (Max width 768px) */
@media (max-width: 767.98px) {
	img {
		max-width: 100%;
		height: auto;
	}

	h1 {
		font: bold 26px/1.2em Arial, Helvetica, sans-serif;
		padding: 10px 0;
	}

	h1 small {
		font: normal 11px/1.0em Arial, Helvetica, sans-serif;
	}

	h2 {
		font: bold 12px/1.2em Arial, Helvetica, sans-serif;
	}

	p {
		font: normal 12px/1.4em Arial, Helvetica, sans-serif;
	}
	
	.menu_nav {
		float: none;
		padding: 20px 0;
		text-align: center;
	}
	
	.menu_nav ul li {
		float: none;
		display: inline-block;
	}
}