@media handheld, projection, screen, print {


/*---------------------------------------------------------------------

		RESET

---------------------------------------------------------------------*/

* {border: 0 none; font-family: inherit; font-size: 100%; font-style: inherit; font-weight: inherit; margin: 0; padding: 0; outline: 0; vertical-align: baseline}
:focus {outline: 0}
body {background: #fff; color: #000; line-height: 1}
ol, ul {list-style: none}
table {border-collapse: collapse; border-spacing: 0; width: 100%}
caption, th, td {font-weight: normal; text-align: left}
blockquote:before, blockquote:after, q:before, q:after {content: ""}
blockquote, q {quotes: "" ""}
textarea {overflow: auto}
h1, h2, h3, h4, h5, h6 {font-weight: normal; line-height: normal}
html {overflow: -moz-scrollbars-vertical}





} @media handheld, projection, screen {


/*---------------------------------------------------------------------

		TAGS

---------------------------------------------------------------------*/
	
body {
	background: url(../img/bg.gif);
	color: #000;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 20px;
}

p, ul, ol { margin: 0 0 10px }

strong { font-weight: bold }
em { font-style: italic }

a, a:link, a:visited {
	color: #4585c5;
	text-decoration: none;
}
a:hover, a:active, a:focus {
	text-decoration: underline;
}





/*---------------------------------------------------------------------

		BASE LAYOUT

---------------------------------------------------------------------*/

#container {
	margin: 0 auto;
	width: 960px;
}
	#header, #contentTop, #contentBottom, #contentMiddle, #content, #footer {
		float: left;
		clear: both;
		display: inline;
		width: 100%;
		position: relative;
	}
	#header {
		background: url(../img/bg_header.png) no-repeat;
		height: 126px;
		z-index: 20;
	}
		#logo {
			margin: 0;
			position: absolute;
			top: 12px; left: 10px;
		}
			#logo a {
				background: url(../img/logo.png) no-repeat;
				display: block;
				text-indent: -9999px;
				width: 288px; height: 51px;
			}

	#contentTop, #contentBottom, #contentMiddle { background: url(../img/bg_content.png) no-repeat }

	#contentTop { padding: 105px 0 0 }

		#contentBottom {
			background-position: right bottom;
			padding: 0 0 105px;
		}
			#contentMiddle {
				background-position: center 0;
				background-repeat: repeat-y;
			}
				#content {
					margin: -95px 0 -40px;
					padding: 0 20px;
					width: 920px;
				}
					#main {
						float: left;
						padding: 0 0 0 30px;
						width: 580px;
					}
					#main.full-width {
						padding: 0 30px;
						width: 860px;
					}

					#sidebar {
						float: right;
						padding: 35px 30px 0 0;
						width: 260px;
					}

	#footer {
		font-size: 11px;
		height: 87px;
	}





/*---------------------------------------------------------------------

		NAVIGATIONS

---------------------------------------------------------------------*/


/*	Main navigation
-------------------------------*/

#nav {
	background: url(../img/bg_nav.png) no-repeat;
	margin: 0;
	padding: 0 0 0 12px;
	width: 948px; height: 54px;
	position: absolute;
	top: 72px; left: 0;
}
	#nav > li {
		float: left;
		background: url(../img/bg_nav-divider.png) no-repeat;
		line-height: 54px;
		padding: 0 0 0 2px;
		position: relative;
	}
	#nav > li:first-child {
		background: none;
		padding: 0;
	}
		#nav > li > a, #nav > li.dropdown.active:hover > a { background: url(../img/bg_nav-hover.png) repeat-x }

		#nav > li > a {
			float: left;
			background-position: 0 -99px;
			color: #135d99;
			display: block;
			font-size: 14px;
			text-decoration: none;
			text-shadow: 0 1px 0 #fff;
			padding: 0 18px;
		}
		#nav > li > a:hover, #nav > li:hover > a {
			background-position: 0 0;
			color: #ce2800;
		}
		#nav > li.active > a {
			background: url(../img/bg_nav-active.png) no-repeat center bottom;
			color: #ce2800;
		}


		/* Dropdown menu */

		#nav > li > ul {
			background: url(../img/bg_nav-dropdown.png) no-repeat 0 bottom;
			padding: 5px 19px 8px;
			width: 222px;
			position: absolute;
			top: 0; left: -9999px;
			z-index: 30;
		}
		#nav > li:hover > ul { top: 53px; left: 2px }

			#nav > li > ul > li { line-height: 18px }

				#nav > li > ul > li > a {
					background: url(../img/bg_nav-dropdown-divider.png) repeat-x;
					color: #135d99;
					display: block;
					font-size: 14px;
					text-decoration: none;
					text-shadow: 0 1px 0 #fff;
					padding: 10px 0 8px;
				}
				#nav > li > ul > li:first-child > a { background: none }

				#nav > li > ul > li > a:hover { color: #ce2800 }

				#nav > li > ul > li > a:hover:before { content: "» " }



/*	Footer navigation
-------------------------------*/

#footer ul.nav {
	margin: 0;
	position: absolute;
	top: 15px; right: 10px;
}
	#footer ul.nav li {
		border-left: 1px solid #aeaeae;
		display: inline;
		margin: 0 0 0 4px;
		padding: 0 0 0 8px;
	}
	#footer ul.nav li:first-child { border: 0 none }





/*---------------------------------------------------------------------

		ELEMENTS, IDs, CLASSES

---------------------------------------------------------------------*/


/*	Header
-------------------------------*/

p#phone {
	background: url(../img/ico_phone.png) no-repeat 0 center;
	color: #135d99;
	font-size: 18px;
	font-weight: bold;
	text-shadow: 0 1px 0 #fff;
	margin: 0;
	padding: 0 0 6px 18px;
	position: absolute;
	top: 27px; right: 10px;
}
html.cufon-active p#phone { padding-top: 5px }



/*	Home
-------------------------------*/

div#banner {
	background: url(../img/bg_banner.png) no-repeat bottom;
	height: 305px;
	position: relative;
}
	div#banner ol#pagination, div#banner ol#pagination li:first-child { background: url(../img/bg_pagination.png) no-repeat }

	div#banner ol#pagination {
		background-position: right 0;
		height: 44px;
		margin: 0;
		padding: 0 12px 0 0;
		position: absolute;
		bottom: 35px; right: 20px;
		z-index: 10;
	}
		div#banner ol#pagination li:first-child {
			background-position: 0 -46px;
			margin: 0 0 0 -1px;
		}
		div#banner ol#pagination li {
			float: left;
			padding: 9px 0 0 12px;
		}
			div#banner ol#pagination li a {
				float: left;
				background-color: #166cbf;
				border: 1px solid #fff;
				color: #fff;
				display: block;
				font-size: 16px;
				line-height: 24px;
				text-decoration: none;
				text-shadow: 0 1px 0 #0f456f;
				padding: 0 6px;
			}
			div#banner ol#pagination li a.activeSlide {
				background-color: #ce2800;
				text-shadow: 0 1px 0 #9e1f00;
			}

	div#banner div#panels { /*-*/ }

		div#banner div#panels div.panel {
			display: none;
			padding: 0 1px;
			width: 918px; height: 278px;
		}
		div#banner div#panels div#panel-1 { background: url(../img/bg_panel-1.jpg) no-repeat center 1px; display: block }
		div#banner div#panels div#panel-2 { background: url(../img/bg_panel-2.jpg) no-repeat center 1px }
		div#banner div#panels div#panel-3 { background: url(../img/bg_panel-3.jpg) no-repeat center 1px }

			div#banner div#panels div.panel h2 {
				color: #fff;
				font-size: 46px;
				text-shadow: 0 1px 0 #000;
				margin: 0;
				padding: 0 40px 0 0;
				width: 615px;
				position: absolute;
				top: 52px; left: 265px;
			}
			div#banner div#panels div.panel p {
				color: #fff;
				font-size: 17px;
				line-height: 26px;
				text-shadow: 0 1px 0 #0f4671;
				margin: 0;
				width: 512px;
				position: absolute;
				top: 225px; left: 32px;
			}
			html.cufon-active div#banner div#panels div.panel p cufon.cufon { padding-top: 7px }

div#columnsContainer {
	margin: 0 0 0 -6px;
	overflow: hidden;
	width: 926px;
}
	div#columnsContainer div.column {
		float: left;
		margin: 0 0 0 12px;
		width: 295px;
	}
		div#columnsContainer div.column h3 {
			border-bottom: 1px solid #dcdcdc;
			color: #0a3155;
			font-size: 24px;
			margin: 15px 0 10px;
			padding: 0 0 3px;
		}
		div#columnsContainer div.column p.img {
			background: url(../img/bg_img.gif) no-repeat 0 bottom;
			margin: 0 0 15px;
			padding: 0 0 5px;
		}
		div#columnsContainer div.column p, div#columnsContainer div.column ul { margin: 0 0 8px }

			div#columnsContainer div.column ul li {
				background: url(../img/bullet.gif) no-repeat 7px 10px;
				padding: 5px 0 5px 25px;
			}

		div#columnsContainer div.column p.more {
			border-top: 1px solid #dcdcdc;
			text-align: right;
			height: 40px;
			margin: 15px 0 0;
			position: relative;
		}
			div#columnsContainer div.column p.more a {
				position: absolute; 
				bottom: 0; right: 5px;
			}

		div#columnsContainer div.column div.box-top, div#columnsContainer div.column div.box-bottom { background: url(../img/bg_box-testimonials.png) no-repeat }

		div#columnsContainer div.column div.box-bottom {
			background-position: right bottom;
			padding: 0 0 9px;
		}
			div#columnsContainer div.column div.box-top {
				background-color: #d9d9d9;
				padding: 20px;
			}
				div#columnsContainer div.column blockquote {
					font-family: Georgia, "Times New Roman", Times, serif;
					font-size: 13px;
					font-style: italic;
				}
					div#columnsContainer div.column blockquote p {
						text-indent: 32px;
						margin: 0 0 12px;
						position: relative;
					}
						div#columnsContainer div.column blockquote p span.quote-open, div#columnsContainer div.column blockquote p span.quote-close {
							color: #4484c4;
							font-size: 50px;
							font-style: normal;
							font-weight: bold;
							line-height: 50px;
							text-indent: 0;
							position: absolute;
						}
						div#columnsContainer div.column blockquote p span.quote-open { top: -5px; left: 0 }

						div#columnsContainer div.column blockquote p span.quote-close { bottom: -27px; padding: 0 0 0 5px }

				div#columnsContainer div.column p.name {
					color: #0c365a;
					text-align: right;
					text-shadow: 0 1px 0 #fff;
					margin: 0;
				}
				div#columnsContainer div.column div.box-top p.more {
					border: 0 none;
					margin: 0;
				}



/*	Main
-------------------------------*/

#main > h2 {
	border-bottom: 1px solid #0a3155;
	color: #0a3155;
	font-size: 36px;
	margin: 30px 0 15px;
	padding: 0 0 12px;
}
html.cufon-active #main h2 { padding-top: 6px }

#main > h3 {
	font-size: 16px;
	font-weight: bold;
	margin: 30px 0 15px;
}
#main > h4 {
	font-size: 14px;
	font-weight: bold;
	margin: 30px 0 15px;
}

#main > p.img { background: #ececec }

#main > p.img.alignleft {
	float: left;
	margin: 5px 20px 10px 0;
}
#main > p.img.alignright {
	float: right;
	margin: 5px 0 10px 20px;
}
#main > p.img.aligncenter {
	display: block;
	margin: 5px auto 10px;
}
	#main > p.img img {
		border: 3px solid #d3d3d3;
		display: block;
	}
	#main > p.img span.caption {
		color: #555;
		display: block;
		font-size: 11px;
		line-height: 14px;
		text-align: right;
		margin: 0 0 0 auto;
		padding: 5px 8px;
		width: 200px;
	}

#main > dl { margin: 20px }

	#main > dl > dt { font-weight: bold }

#main > ul { margin: 12px 0 20px }

	#main > ul > li, #main > ul > li > ul > li {
		background: url(../img/bullet.gif) no-repeat 7px 10px;
		padding: 5px 0 5px 25px;
	}
		#main > ul > li > ul { margin: 10px 0 20px 20px }

			#main > ul > li > ul > li { font-size: 11px }

#main > ol {
	list-style: decimal outside;
	margin: 12px 25px 20px;
}
	#main > ol > li { padding: 5px 0 }

#main > table {
	border: 1px solid #ccc;
	margin: 5px 0 15px;
}
	#main > table > colgroup > col.col-1 { width: 50% }
	#main > table > colgroup > col.col-2 { width: 50% }

	#main > table > thead > tr > td {
		background-color: #ddd;
		border: 1px solid #ccc;
		font-size: 14px;
		font-weight: bold;
		text-align: center;
		height: 40px;
		vertical-align: middle;
	}
	#main > table > thead > tr > td.first {
		text-align: left;
		padding: 0 20px;
	}

	#main > table > tbody > tr > td {
		background-color: #eee;
		border: 1px solid #ccc;
		font-size: 12px;
		text-align: left;
		height: 30px;
		padding: 0 20px;
		vertical-align: middle;
	}
	#main > table > tbody > tr.alt > td { background-color: #fff }

	#main > table > tbody > tr > td.first {
		text-align: left;
		padding: 0 20px;
	}

p.more {
	margin: 20px 0;
	overflow: hidden;
}
	p.more a, p.more a span { background: url(../img/bt_more.png) no-repeat }

	p.more a {
		float: left;
		color: #fff;
		cursor: pointer;
		font-size: 11px;
		font-weight: bold;
		text-decoration: none;
		text-shadow: 0 -1px 0 #1c72aa;
	}
		p.more a span {
			float: left;
			background-position: right -32px;
			display: block;
			margin: 0 -5px 0 0;
			padding: 4px 20px;
		}

div.columns-container {
	margin: 40px 0 0;
	overflow: hidden;
}
	div.columns-container div.left {
		float: left;
		width: 405px;
	}
		#main div.columns-container h3 {
			background: url(../img/ico_sprite.png) no-repeat;
			border-bottom: 1px solid #0a3155;
			color: #0a3155;
			font-size: 24px;
			margin: 0 0 15px;
			padding: 4px 0 8px;
		}
		html.cufon-active #main div.columns-container h3 { padding-top: 7px }

		#main div.columns-container h3.location { padding-left: 34px }

		#main div.columns-container h3.contact {
			background-position: 0 -65px;
			padding-left: 42px;
		}

		div.columns-container dl { margin: 0 }

			div.columns-container dl dt {
				display: inline;
				font-weight: bold;
			}
			div.columns-container dl dd { display: inline }

		div.columns-container dl.address { width: 240px }

			div.columns-container dl.address dt { display: block }

				div.columns-container dl.email dd a { color: #ce2800 }

		div.columns-container p.map { margin: 25px 0 0 }

	div.columns-container div.right {
		float: right;
		width: 405px;
	}


#main > h3 + div.columns-container { margin: 0 }

	div.columns-container div.col-left {
		float: left;
		width: 280px;
	}
	div.columns-container div.col-right {
		float: right;
		width: 280px;
	}

	div.columns-container div.col h4 {
		border-bottom:1px solid #0a3155;
		font-size: 14px;
		margin: 15px 0 20px;
		padding: 0 0 8px;
	}
	div.columns-container div.col h5 {
		font-size: 12px;
		font-weight: bold;
		margin: 0 15px 15px;
	}
	div.columns-container div.col ul { margin: -10px 15px 20px }

		div.columns-container div.col ul li {
			font-size: 11px;
			list-style: disc inside;
		}


ul#tabs {
	float: left;
	border-bottom: 1px solid #cbcbcb;
	display: none;
	margin: 40px 0 20px;
	padding: 0 16px;
	width: 828px;
}
	ul#tabs li {
		float: left;
		background: #cbcbcb url(../img/bg_tab.gif) repeat-x;
		display: block;
		line-height: 34px;
		margin: 0 3px 0 0;
		padding: 1px 1px 0;
	}
		ul#tabs li a {
			float: left;
			border-top: 1px solid #e5e5e5;
			color: #135d99;
			display: block;
			font-size: 14px;
			text-decoration: none;
			text-shadow: 0 1px 0 #fff;
			padding: 0 32px;
		}

	ul#tabs li.active {
		line-height: 41px;
		margin: -5px 3px -1px 0;
		position: relative;
		z-index: 30;
	}
		ul#tabs li.active a {
			background: #fff;
			border: 0 none;
			color: #ce2800;
		}

div#productsContainer {
	float: left;
	clear: both;
	margin: 30px 0 0;
}
	div.products-gallery { clear: both }

		div#productsContainer div.products-gallery h3 {
			font-size: 24px;
			margin: 0 0 20px;
		}
		div#productsContainer div.products-gallery ul {
			margin: 0 0 0 -20px;
			overflow: hidden;
			width: 880px;
		}
			div#productsContainer div.products-gallery ul li {
				float: left;
				margin: 0 0 0 20px;
				padding: 0 0 10px;
				width: 200px;
				min-height: 175px; height: auto !important; height: 175px;
			}
				div#productsContainer div.products-gallery ul li p.img {
					margin: 0;
					position: relative;
				}
					div#productsContainer div.products-gallery ul li p.img a {
						background: url(../img/bg_zoom.png) no-repeat;
						border: 3px solid #bdbdbd;
						display: block;
						text-indent: -9999px;
						width: 194px; height: 123px;
						position: absolute;
						top: 0; left: 0;
					}

				div#productsContainer div.products-gallery ul li p.caption {
					background-color: #ececec;
					color: #555;
					display: block;
					font-size: 11px;
					text-align: right;
					margin: 0;
					padding: 0 8px;
				}

div.highlights-container {
	background: #bce0fa url(../img/bg_highlights.gif) no-repeat;
	margin: 23px 0 0;
	padding: 0 9px;
	overflow: hidden;
}
	div.highlights-container div.highlight {
		float: left;
		padding: 16px 9px 25px;
		width: 168px;
	}
		div.highlights-container div.highlight h4 {
			background: url(../img/ico_sprite.png) no-repeat;
			color: #0a3155;
			display: table;
			font-size: 14px;
			font-weight: bold;
			line-height: 19px;
			text-shadow: 0 1px 0 #e5f3fd;
			height: 40px;
			margin: 0 0 15px;
			padding: 0 0 0 40px;
		}
		div.highlights-container div#highlight-1 h4 { background-position: 0 -130px }
		div.highlights-container div#highlight-2 h4 { background-position: 0 -201px }
		div.highlights-container div#highlight-3 h4 { background-position: 0 -271px }

			div.highlights-container div.highlight h4 > span {
				display: table-cell;
				vertical-align: middle;
				width: 128px;
			}

		div.highlights-container div.highlight p {
			font-size: 11px;
			line-height: 18px;
			margin: 0;
		}

a.link { color: #ce2800 }

div.services-container {
	margin: 30px 0 0 -20px;
	overflow: hidden;
	width: 600px;
}
	div.services-container dl {
		float: left;
		margin: 0 0 0 20px;
		width: 180px;
	}
		div.services-container dl dt {
			font-weight: bold;
			line-height: 16px;
			margin: 0 0 9px;
		}
		div.services-container dl dd {
			line-height: 16px;
			margin: 0 0 9px;
		}



/*	Sidebar
-------------------------------*/

div.box {
	background: #d9d9d9 url(../img/bg_box-sidebar.png) no-repeat;
	padding: 20px 20px 5px;
}
	div.box div.widget { margin: 0 0 35px }

		div.box div.widget h3 {
			background: url(../img/bg_line.gif) repeat-x 0 bottom;
			color: #0a3155;
			font-size: 24px;
			margin: 0 0 15px;
			padding: 0 0 7px;
		}
		div.box div.widget dl { margin: 0 0 7px }

			div.box div.widget dl dt {
				display: inline;
				font-weight: bold;
			}
			div.box div.widget dl dd { display: inline }

			div.box div.widget dl.address dt { display: block }

			div.box div.widget dl.email dt { display: none }

				div.box div.widget dl.email dd a {
					background: url(../img/ico_mail.gif) no-repeat 0 1px;
					color: #ce2800;
					padding: 0 0 0 20px;
				}

		div.box div.widget ul.nav { margin: 0 }

			div.box div.widget ul.nav li {
				padding: 7px 0 0;
				overflow: hidden;
			}
			div.box div.widget ul.nav li:first-child { padding: 0 }

				div.box div.widget ul.nav li a, div.box div.widget ul.nav li a span { background: url(../img/bt_link.png) no-repeat }

				div.box div.widget ul.nav li a {
					float: left;
					color: #135d99;
					cursor: pointer;
					text-decoration: none;
					text-shadow: 1px 1px 0 #e5e5e5;
				}
					div.box div.widget ul.nav li a span {
						float: left;
						background-position: right -38px;
						display: block;
						margin: 0 -5px 0 0;
						padding: 7px 10px 6px;
						width: 200px;
					}

				div.box div.widget ul.nav li a:hover {
					background-position: 0 -76px;
					color: #ce2800;
					text-shadow: 1px 1px 0 #e5e5e5;
				}
					div.box div.widget ul.nav li a:hover span { background-position: right -114px }



/*	Footer
-------------------------------*/

p#copyright {
	text-shadow: 1px 1px 0 #fff;
	margin: 0;
	position: absolute;
	top: 15px; left: 20px;
}





/*---------------------------------------------------------------------

		FORMS

---------------------------------------------------------------------*/


/*	General styles
-------------------------------*/

input.text, select.select, textarea.textarea {
	background: url(../img/bg_input.gif) no-repeat;
	border: 1px solid #fff;
	color: #000;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	padding: 7px 10px;
}
input.text { width: 280px }
select.select { width: 250px }
textarea.textarea { width: 360px; height: 105px }

input.text:focus, select.select:focus, textarea.textarea:focus { border: 1px solid #09f }

input.submit {
	background: url(../img/bt_submit.png) no-repeat;
	border: 0 none;
	color: #fff;
	cursor: pointer;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: bold;
	text-shadow: 0 -1px 0 #1c72aa;
	text-transform: uppercase;
	width: 110px; height: 28px;
}

form.form { /*-*/ }

	form.form ol.fieldset { margin: 0 0 15px }

		form.form ol.fieldset li.field {
			margin: 0 0 8px;
			padding: 0;
			position: relative;
		}
			form.form ol.fieldset li.field label {
				display: block;
				font-size: 14px;
				margin: 0 0 2px;
			}

		form.form p.submit { /*-*/ }



/*	Form messages
-------------------------------*/

.error {
	background: #fef9f9 !important;
	border: 1px solid #c00 !important;
}

.message {
	color: #c00;
	display: block;
	font-size: 11px;
	font-weight: bold;
	padding: 3px 0 0 3px;
}

p.send-ok, p.send-error {
	color: #6c0;
	font-size: 18px;
}
p.send-error { color: #c00 }

	p.send-ok span, p.send-error span {
		display: block;
		margin: 0 0 7px;
	}





/*---------------------------------------------------------------------

		UTILITY CLASSES

---------------------------------------------------------------------*/

.skip { position: absolute; top: 0; left: -9999px }





} @media print {


/*---------------------------------------------------------------------

		PRINT

---------------------------------------------------------------------*/

body {background: none; color: #000; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 10pt}
code, pre {font-family: "Courier New", Courier, mono}
img {float: left; clear: left; page-break-inside: avoid; page-break-after: avoid}

a, a:link, a:visited {color: blue; text-decoration: underline}

blockquote, table, pre {page-break-inside: avoid}
ul, ol, dl {page-break-before: avoid}
h1, h2, h3, h4, h5, h6 {display: block; font-weight: bold; page-break-after: avoid}

h1 {font-size: 3em; margin: .67em 0}
h2 {font-size: 2em; margin: .83em 0}
h3 {font-size: 1.5em; margin: 1em 0}
h4 {font-size: 1em; margin: 1.33em 0}
h5 {font-size: .92em; margin: 1.67em 0}
h6 {font-size: .83em; margin: 2.33em 0}

#footer, #nav, .nav, form, .skip {display: none}


}/* end @media */