/* Font Faces - BEGIN */
@font-face {
    font-family: 'HelveticaNeueLTStdRegular';
    src: url('fonts/helveticaneueltstd-roman-webfont.eot');
    src: url('fonts/helveticaneueltstd-roman-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/helveticaneueltstd-roman-webfont.woff') format('woff'),
         url('fonts/helveticaneueltstd-roman-webfont.ttf') format('truetype'),
         url('fonts/helveticaneueltstd-roman-webfont.svg#HelveticaNeueLTStdRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'HelveticaNeueLTStdBold';
    src: url('fonts/helveticaneueltstd-bd-webfont.eot');
    src: url('fonts/helveticaneueltstd-bd-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/helveticaneueltstd-bd-webfont.woff') format('woff'),
         url('fonts/helveticaneueltstd-bd-webfont.ttf') format('truetype'),
         url('fonts/helveticaneueltstd-bd-webfont.svg#HelveticaNeueLTStdBold') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'HelveticaNeueLTStdLtRegular';
    src: url('fonts/helveticaneueltstd-lt-webfont.eot');
    src: url('fonts/helveticaneueltstd-lt-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/helveticaneueltstd-lt-webfont.woff') format('woff'),
         url('fonts/helveticaneueltstd-lt-webfont.ttf') format('truetype'),
         url('fonts/helveticaneueltstd-lt-webfont.svg#HelveticaNeueLTStdLtRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}
/* Font Faces - END */

html, body {
	height: 100%;
}
body {
	background: url('tpl_images/main_bg.jpg') left top repeat;
	margin: 0px;
}
body, p, td, ul, li {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	line-height: 120%;
	color: #484a47;
}
h1, h2, h3, h4, h5, h6 {
	margin-top: 0px;
	margin-bottom: 0px;
	padding-bottom: 0px;
	color: #164780;
	font-weight: normal;
	line-height: 120%;
	font-family: "HelveticaNeueLTStdRegular", Arial, Helvetica;
}
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong {
	font-family: "HelveticaNeueLTStdBold", Arial, Helvetica;
}
h1 {
	font-size: 35px;
}
h2 {
	font-size: 16px;
}
h3 {
	font-size: 15px;
}
h4 {
	font-size: 14px;
}
h5 {
	font-size: 13px;
}
h6 {
	font-size: 12px;
}
a {
	color: #164780;
	text-decoration: none;
	outline: none;
}
a:hover {
	text-decoration: underline;
}
a img {
	border-width: 0px;
}
p {
	padding: 0;
	margin-top: 9px;
	margin-bottom: 9px;
}
ul {
	padding-left: 30px;
	margin: 13px 0;
	list-style-type: none;
}
ul li {
	background: url('tpl_images/list.png') 0 6px no-repeat;
	padding: 0 0 5px 18px;
}
hr {
	height: 6px;
	background-color: transparent;
	border-top: 6px solid #e9e9eb;
	color: transparent;
}

/****** Custom youtube channel styles ****/

#player {
    width: 640px;
    height: 480px;
    overflow: hidden;
    background: gray;
    position: absolute;
    border: solid 2px gray;
}

.youtube .carousel {
    width: 20%;
    height: 100%;
    overflow: auto;
    position: absolute;
    right: 0px;
    z-index: 3;
}

.youtube .thumbnail {
    margin: 2px;
    width: 80%;
    border: 1px solid black;  
}

.youtube iframe.player {
    width: 80%;
    height: 480px;  
    overflow: auto;
    border: 0;
}


/****** SPECIAL FOOTER LINKS STYLES ******/

#footer_links, #footer_links a {
	color: #d3d3d3;
	font: normal 12px/14px Arial, Helvetica, sans-serif;
}
#footer_links a {
	padding: 0;
}
/****** HORIZONTAL MENU STYLES ******/

#menu li {
	text-align: left;
	padding-top: 0px;
	padding-bottom: 0px;
}
/****** COMMON MENU STYLES ******/

#menu {
	width: 100%;
	float: left;
}
#menu ul {
	width: 100%;
	float: left;
}
#menu li.first_main_menu_item, #menu li.middle_main_menu_item, #menu li.last_main_menu_item {
	background: url('tpl_images/menu_separator.png') 0 16px no-repeat;
	padding: 0 0 0 2px;
	border: none;
	margin: 0;
}
#menu li.first_main_menu_item {
	background: none;
	padding: 0;
}
#menu li a {
	height: 62px;
	background: url('tpl_images/menu_active.png') 0 -9px no-repeat;
	padding: 0 28px;
	margin: 0;
	color: #f5f5f5;
	font: normal 14px/53px "HelveticaNeueLTStdRegular", Arial, Helvetica;
	text-transform: uppercase;
	text-decoration: none;
	text-shadow: 1px 1px 1px #202020;
}
* html #menu li a {
	float: left;
}
#menu li:hover, #menu li:hover a, #menu li a:hover, #menu li.selected_main_menu_item a {
	text-decoration: none;
}
#menu li:hover a, #menu li a:hover, #menu li.selected_main_menu_item a {
	background-position: 50% 53px;
}
#menu li ul {
	width: 189px;
	top: 53px;
	left: 0;
	background: #ebebeb;
	padding: 0;
	border-top: none;
	border-right: 1px solid #d7d7d7;
	border-bottom: 1px solid #d7d7d7;
	border-left: 1px solid #d7d7d7;
	z-index:10000;
}
* html #menu li ul {
	top: 53px;
}
#menu li ul li {
	width: 189px;
	background: none;
	padding-top: 0;
	padding-bottom: 0;
	padding-left: 0;
	border-top: 1px dotted #797979;
	list-style-image: none;
	text-align: left;
}
#menu li ul li:first-child {
	border-top: none;
}
#menu li ul li a, #menu li:hover ul li a {
	width: auto;
	height: auto;
	min-height: 1px;
	background: none;
	filter: none;
	text-align: left;
	padding: 17px 5px 17px 29px;
	color: #363636;
	font: normal 14px/16px Arial, Helvetica, sans-serif;
	text-decoration: none;
	text-transform: none;
	text-shadow: none;
}
#menu li ul li a:hover, #menu li:hover ul li a:hover {
	background: #f3f3f3;
	color: #363636;
	text-decoration: none;
}

/****** MAIN LAYOUT STYLES ******/
#wrapper {
	width: 100%;
	float: left;
	background: url('tpl_images/top_border.png') left top repeat-x;
	padding: 6px 0 0;
}
#wrapper_center {
	width: 1026px;
	margin: 0 auto;
}
#header {
	width: 1018px;
	float: left;
	position: relative;
	padding: 0 5px 0 3px;
}
#header_border {
	width: 100%;
	height: 133px;
	float: left;
	border-bottom: 7px solid #154883;
}
#logo {
	width: 360px;
	position: absolute;
	top: 29px;
	left: -46px;
}
#social_box {
	width: 108px;
	height: 29px;
	position: absolute;
	top: 0;
	right: -5px;
	background: url('tpl_images/social_box.png') left top no-repeat;
	padding: 2px 0 0 21px;
}
#social_box div {
	float: left;
	padding: 0 4px 0 0;
}
#social_box div a {
	width: 19px;
	height: 20px;
	float: left;
}
a#facebook {
	background: url('tpl_images/facebook.png') left top no-repeat;
}
a#twitter {
	background: url('tpl_images/twitter.png') left top no-repeat;
}
a#youtube {
	background: url('tpl_images/youtube.png') left top no-repeat;
}
a#skype {
	background: url('tpl_images/skype.png') left top no-repeat;
}
#social_box div a:hover {
	background-position: left bottom;
}
#social_box div a img {
	width: 100%;
	height: 100%;
	float: left;
}
#contact_info {
	width: 100%;
	float: right;
	padding: 63px 0 0;
}
#contact {
	height: 33px;
	float: right;
	background: url('tpl_images/phone_vertical_line.png') 21px 0 repeat-y;
	padding: 14px 0 0 41px;
	margin-top: 6px;
}
#contact a, #contact img {
	float: left;
}
#phone {
	float: right;
	background: url('tpl_images/phone_horizontal_line.png') 50% 28px no-repeat;
	color: #606060;
	font: normal 15px/28px Arial, Helvetica, sans-serif;
}
#phone_brand {
	float: left;
	padding-right: 3px;
}
#phone_number {
	float: left;
	text-align: right;
}
#phone_img {
	width: 36px;
	height: 48px;
	float: right;
	background: url('tpl_images/phone.png') 0 16px no-repeat;
}
#banner {
	width: 1018px;
	float: left;
	position: relative;
	padding: 8px 5px 8px 3px;
}
#banner_slideshow {
	width: 100%;
	height: 269px;
	float: left;
	background: url('tpl_images/banner_overlay.png') right bottom no-repeat;
}
#banner_nav {
	width: 425px;
	height:25px;
	position: absolute;
	z-index: 1000;
	bottom: 8px;
	right: 5px;
	padding: 0 0 0 28px;
}
#banner_nav a {
	width: 10px;
	height: 10px;
	float: left;
	background: url('tpl_images/banner_nav.png') left top no-repeat;
	margin: 0 13px 0 0;
	text-indent: -999px;
	font-size: 0px;
	line-height: 0px;
}
#banner_nav a.activeSlide {
	background-position: left bottom;
}
#banner_slideshow div p {
	margin: 0;
}
#banner_slideshow div img {
	display: block;
}
#banner_slideshow div div {
	width: 396px;
	position: absolute;
	bottom: 0;
	right: 0;
	background: url('tpl_images/banner_overlay.png') left top repeat;
	padding: 18px 30px 36px 27px;
}
#banner_slideshow div div h3 {
	width: 295px;
	float: left;
	color: #f0f0f0;
	font: normal 21px/24px "HelveticaNeueLTStdBold", Arial, Helvetica;
	text-shadow: 1px 1px 1px #145361;
}
#banner_slideshow div div a {
	float: right;
	padding: 4px 0 0;
	color: #f0f0f0;
	font: normal 13px/16px "HelveticaNeueLTStdLtRegular", Arial, Helvetica;
	text-decoration: underline;
	text-shadow: 1px 1px 1px #145361;
	white-space: nowrap;
}
#top_menu {
	width: 1018px;
	height: 62px;
	float: left;
	position: relative;
	z-index: 1000;
	background: url('tpl_images/wrapper_top.png') left bottom no-repeat;
	padding: 0 5px 0 3px;
}
#top_menu_content {
	width: 1008px;
	float: left;
	background: url('tpl_images/menu_bg.png') left top repeat-x;
	padding: 0 0 0 10px;
}
#mainbody, #mainbody_full {
	width: 1018px;
	float: left;
	position: relative;
	background: url('tpl_images/wrapper_repeat.png') left top repeat-y;
	padding: 0 5px 0 3px;
}
#mainbody_bg, #mainbody_bg_listing, #mainbody_bg_detail {
	width: 100%;
	float: left;
	background: url('tpl_images/mainbody_bg.jpg') left bottom no-repeat;
}
#left_col {
	width: 760px;
	min-height: 330px;
	height: auto !important;
	height: 330px;
	float: left;
}
#left_col_padding {
	width: 700px;
	float: left;
	padding: 27px 20px 30px 40px;
}
#mainbody_full #left_col {
	width: 100%;
}
#mainbody_full #left_col_padding {
	width: 938px;
	padding: 20px 40px 30px;
}
#right_col {
	width: 258px;
	float: right;
}
#right_col_padding {
	width: 220px;
	float: left;
	padding: 25px 38px 15px 0;
}
#right_slideshow {
	width: 100%;
	height: 116px;
	float: left;
	position: relative;
	background: url('tpl_images/SDE_associates.jpg') left top no-repeat;
	padding: 54px 0 16px;
}
#right_prev {
	width: 9px;
	height: 14px;
	position: absolute;
	z-index: 1000;
	top: 103px;
	left: 16px;
	background: url('tpl_images/arrow_left.png') left top no-repeat;
	cursor: pointer;
}
#right_next {
	width: 9px;
	height: 14px;
	position: absolute;
	z-index: 1000;
	top: 103px;
	right: 15px;
	background: url('tpl_images/arrow_right.png') left top no-repeat;
	cursor: pointer;
}
#footer {
	width: 100%;
	height: 90px;
	float: left;
	background: url('tpl_images/wrapper_bottom.png') left top no-repeat;
}
#footer_left {
	width: 540px;
	float: left;
	padding: 31px 0 0 43px;
	color: #d3d3d3;
	font: normal 12px/14px Arial, Helvetica, sans-serif;
}
#footer_left div {
	width: 100%;
	float: left;
}
#footer_left div p, #footer_left div a {
	color: #d3d3d3;
	font: normal 12px/14px Arial, Helvetica, sans-serif;
}
#footer_left div p {
	margin: 0;
}
#footer_right {
	width: 250px;
	float: right;
	padding: 43px 193px 0 0;
	text-align: right;
}

/* Table on Homepage */
#home_table, #home_table td, #home_table p, #home_table ul, #home_table li {
	font-size: 12px;
	line-height: 120%;
}
#home_table div a {
	width: 220px;
	height: 139px;
	float: left;
	overflow: hidden;
}
#home_table div a img {
	float: left;
}
#home_table div a:hover img {
	margin-top: -139px;
}
#home_table ul {
	padding: 18px 0 0;
	margin: 0;
}
#home_table ul li {
	background: none;
	padding: 5px 0 6px 8px;
	border-top: 1px dotted #7c7c7c;
}
#home_table ul li:first-child {
	border-top: none;
}

/* Product Listing Page */
.cart_products {
	display: none;
}
#mainbody_bg_listing #left_col_padding {
	text-indent: -999px;
	font-size: 0;
	line-height: 0;
}
#mainbody_bg_listing #left_col_padding table, #mainbody_bg_listing #left_col_padding strong {
	text-indent: 0;
	font-size: inherit;
	line-height: inherit;
}
#mainbody_bg_listing #left_col_padding > a, #mainbody_bg_listing #left_col_padding br {
	display: none;
}
#mainbody_bg_listing #left_col_padding table br {
	display: block;
}
#mainbody_bg_listing #left_col_padding .cart_breadcrumbs strong {
	display: block;
	color: #164780;
	font-weight: normal;
	font-size: 35px;
	line-height: 120%;
	font-family: "HelveticaNeueLTStdRegular", Arial, Helvetica;
}
table.cart_products_list_table {
	border-collapse: collapse;
	border-spacing: 0;
	margin-top: 11px;
}
table.cart_products_list_table td.cart_products_list_single_column_left, table.cart_products_list_table td.cart_products_list_single_column_right {
	padding: 31px 0 35px;
	border-top: 6px solid #E9E9EB;
}
table.cart_products_list_table td.cart_products_list_single_column_left {
	padding-right: 26px;
}
img.cart_product_image_thumb {
	display: block;
	padding-top: 4px;
}
a.cart_list_product_name {
	color: #164780;
	/*font: normal 21px/24px "HelveticaNeueLTStdRegular", Arial, Helvetica;*/
	font: normal 19px/24px "HelveticaNeueLTStdRegular", Arial, Helvetica;
}
.cart_list_product_short_description {
	padding: 10px 0;
}
a.cart_list_product_details_link {
	width: 91px;
	height: 23px;
	float: right;
	background: url('tpl_images/view_project.png') left top no-repeat;
	text-indent: -999px;
	font-size: 0px;
	line-height: 0px;
}

/* Product Detail Page */
#mainbody_bg_detail h1 {
	/*width: 433px;*/
	width: 343px;
	min-height: 52px;
	height: auto !important;
	height: 52px;
	float: left;
	border-bottom: 6px solid #e9e9eb;
	/*font-size: 33px;*/
	font-size: 20px;
}
a.project_pdf_link {
	background: url('tpl_images/PDF_icon.png') top left no-repeat;
	display: inline-block;
	padding-left: 36px;
	padding-top: 3px;
	min-height: 21px;
	color: #333333;
	font-weight: bold;
}
.back_to_projects {
	/*width: 470px;*/
	width: 380px;
	float: right;
	padding: 12px 0 17px;
}
.back_to_projects a {
	width: 131px;
	height: 23px;
	float: right;
	background: url('tpl_images/back_to_projects.png') left top no-repeat;
}
.ad-gallery {
	float: right;
	width: 540px;
	position: relative;
}
.cart_long_description {
	/*width: 433px;*/
	width: 343px;
	float: left;
	padding-top: 15px;
}
.ad-gallery .ad-image-wrapper {
	height: 350px;
}
.ad-gallery .ad-controls {
	height: 2px;
}
.ad-info {
	display: none;
}
.ad-gallery .ad-thumbs li {
	background: none;
	padding: 0 0 0 10px;
}
.ad-gallery .ad-thumbs li a img, .ad-gallery .ad-thumbs li a.ad-active img {
	border: none;
}
.ad-gallery .ad-back {
	background: url('tpl_images/ad_scroll_back.png') 0 30px no-repeat;
}
.ad-gallery .ad-forward {
	background: url('tpl_images/ad_scroll_forward.png') 0 30px no-repeat;
}
/*.ad-gallery .ad-image-wrapper .ad-next {*/
.ad-gallery .ad-next {
	position: absolute;
	right: -22px;
	top: 165px;
	width: 30px;
	height: 30px;
	cursor: pointer;
	display: block;
	z-index: 100;
}
/*.ad-gallery .ad-image-wrapper .ad-prev {*/
.ad-gallery .ad-prev {
	position: absolute;
	left: -22px;
	top: 165px;
	width: 30px;
	height: 30px;
	cursor: pointer;
	display: block;
	z-index: 100;
}
/*.ad-gallery .ad-image-wrapper .ad-prev .ad-prev-image, .ad-gallery .ad-image-wrapper .ad-next .ad-next-image {*/
.ad-gallery .ad-prev .ad-prev-image, .ad-gallery .ad-next .ad-next-image {
	background: url(tpl_images/ad_prev.png) center left no-repeat;
	width: 30px;
	height: 30px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 101;
}
/*.ad-gallery .ad-image-wrapper .ad-next .ad-next-image {*/
.ad-gallery .ad-next .ad-next-image {
	background: url('tpl_images/ad_next.png') center right no-repeat;
	width: 30px;
	height: 30px;
	right: 0;
	left: auto;
}

.ad-prev-image{
	display: block;
}

.ad-next-image{
	display: block;
}

.ad-gallery .ad-thumbs li a img {
	height: 75px;
	width: 100px;
}

/* blog styles */
h1.blog_post_list_heading {
	margin-bottom: 15px;
}
h1.blog_post_heading {
	font-size: 20px;
}