@charset "utf-8";
/* CSS Document */
/*
Copyright (c) 2009, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.7.0
*/
html {
	color:#000;
	background:#FFF;
}
/*div, dl, dt, dd, ul, ol, li, body,  h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, textarea, p, blockquote, th, td {
	margin:0;
	padding:0;
}*/
fieldset, img {
	border:0;
}
address, caption, cite, code, dfn, em, strong, th, var, optgroup {
	font-style:inherit;
	font-weight:inherit;
}
del, ins {
	text-decoration:none;
}
li {
	list-style:none;
}
caption, th {
	text-align:left;
}
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:normal;
}
q:before, q:after {
	content:'';
}
a bbr, acronym {
	border:0;
	font-variant:normal;
}
sup {
	vertical-align:baseline;
}
sub {
	vertical-align:baseline;
}
legend {
	color:#000;
}
/*Designed and Developed by Horizon Marketing. Call or email us today to find out how we can help you */
/*-- main classes--------------------------------------------*/

html {
	background:#000 url(structure/bg_body1.png) top center;
	font-family:arial;
	font-size:12px;
	color:#5f5f5f
}
body {
	font-size:12px;
	line-height:normal;
}
.col {
	float:left;
}
a {
	text-decoration:none;
	color: #404040;
	outline:none;
}
a.btn {
	display:block;
	float:left;
	overflow:hidden;
	text-indent:-1000px;
	outline: none;
}
.title {
	display:block;
	clear:both;
	overflow:hidden;
	text-indent:-1000px;
	outline: none;
}
strong {
	font-weight:bold;
}
.alignLeft {
	float:left
}
.alignRight {
	float:right;
	text-align:right;
}
.bg {
	position:absolute;
	width:100%;
	top:0;
	left:0;
	height:684px;
	background:url(structure/bg_main1.png) no-repeat top center;
	z-index:-1;
}
/*--header and nav -----------------------------------*/

.header {
	height:124px;
	width:856px;
	margin:0 auto;
	position:relative;
	background:#f7f7f7;
	padding:0;
	z-index:9999;
}
.header h1.logo {
	width:97px;
	height:120px;
	margin:0;
	position:absolute;
	left:55px;
	top:14px;
}
.header h1.logo a {
	width:97px;
	height:120px;
	margin:0;
	background:url(structure/logo.gif) no-repeat top left;
	display:block;
}
.visit {
	width:181px;
	position:absolute;
	top:14px;
	right:18px;
	height:32px;
	background:url(structure/btn_visit.gif)
}
.header div#newsletter {
	width:400px;
	position:absolute;
	top:14px;
	right:18px;
	text-align:right;
}
.header div#newsletter strong {
	width:139px;
	height:21px;
	margin:0;
	padding:0;
	background:url(structure/title_newsletterSignUp.gif) no-repeat top left;
	display:inline-block;
	text-indent:-10000px;
	text-align:left;
	overflow:auto;
}
.header div#newsletter .text {
	width:109px;
	height:16px;
	margin:0;
	padding:3px 0 0 0;
	background-color:#ebebeb;
	border:1px solid #e2e2e2;
	font-size:.91em;
	line-height:.91em;
	color:#9c9c9c;
	vertical-align:text-bottom;
}
.header div#newsletter .btn {
	margin:0;
	padding:3px 0 0 0;
	vertical-align:text-bottom;
}
/*-- nav -----------------------------------*/
.nav {
	position:absolute;
	z-index:100;
	bottom:0;
	right:0;
	width:625px;
	height:32px;
	visibility:visible;
}
.nav ul li {
	float:left;
	position:relative;
}
.nav a.btn {
	height:32px;
	float:left;
}
.sub {
	position:absolute;
	left:0;
	top:32px;
	padding:0;
	width:175px;
	z-index:-1;
	background:#00853e;
	display:none;
}
.sub ul li {
	clear:both;
	width:100%;
	border-top:1px dashed #fff;
}
 .sub ul li:firstchild {
 border:none;
}
.sub ul li ul li {
	padding:0;
	width:100%;
}
.sub a {
	color:#fff;
	display:block;
	padding:7px 20px 7px 20px;
	margin:0;
}
.sub a:hover {
	background:#00ab50;
}
/*-- content ----------------------------------------*/

.container {
	overflow:auto;
	width:856px;
	margin:0 auto;
	background:#f7f7f7 url(structure/bg_contentSub.jpg) repeat-y top left !important;
}
.home .container {
	overflow:hidden;
	width:856px;
	margin:0 auto;
	background:none!important;
}
.container .content {
	width:576px;
	padding:0 25px;
	float:left;
	overflow:hidden;
}
.container .content h1, .container .content h2, .container .content h3, .container .content h4, .container .content h5, .container .content h6 {
	font-weight:bold;
	margin:0 0 15px 0;
}
.container .content h1 {
	font-size:2em;
}
.container .content h2 {
	font-size:1.75em;
}
.container .content h3 {
	font-size:1.5em;
}
.container .content h4 {
	font-size:1.25em;
}
.container .content h5 {
	font-size:1em;
}
.container .content h6 {
	font-size:.91em;
}
.container .content p {
	line-height:1.3em;
	margin:0 0 15px 0;
}
.container .content blockquote {
	line-height:1.3em;
	margin:0 30px 15px 30px;
}
.container .content sup {
	font-size:.75em;
	vertical-align:text-top;
}
.container .content sub {
	font-size:.75em;
	vertical-align:text-bottom;
}
.container .content ol {
	margin:0 0 15px 0;
	padding:0 0 0 15px;
	list-style:decimal!important;
	list-style-position:outside!important;
}
.container .content ol li {
	padding:0;
	margin:0 0 5px 0;
	list-style:decimal!important;
	list-style-position:outside!important;
}
.container .content ul {
	margin:0 0 15px 0;
	padding:0 0 0 15px;
	list-style:square!important;
	list-style-position:outside!important;
}
.container .content ul li {
	padding:0;
	margin:0 0 5px 0;
	list-style:square!important;
	list-style-position:outside!important;
}
.container .content dl {
	margin:0 0 15px 0;
	padding:0 0 0 15px;
}
.container .content dl dt {
	font-weight:bold;
}
.container .content dl dd {
	margin:0 0 5px 15px;
}
.container .content a {
	color:#013a1b;
	text-decoration:none;
}
.container .content a:hover {
	color:#00853e;
	text-decoration:underline;
}
.container .sidebar {
	width:230px;
	float:left;
}
.container .sidebar a {
	display:block;
	font-size:12px;
	font-weight:bold;
	color:#5f5f5f;
	margin:9px 0 9px 26px;
}
.contact .container .content {
	width:626px;
	padding:0;
	float:left;
}
.contact .sidebar p {
	margin:0 0 9px 26px;
}
.contact .container .sidebar a {
	font-size:12px;
	font-weight:bold;
	color:#5f5f5f;
	margin:0;
}
.contact .container .sidebar a:hover {
	font-size:12px;
	font-weight:bold;
	color:#00853e;
	margin:0;
	text-decoration:underline;
}
/*-- content headers images ---------------------------------------*/

.projectsServ .content {
	padding-top:142px !important;
	background:url(structure/bg_default.jpg) no-repeat top left;
}
/*-- about us ---------------------------------------*/
.about .container .content div.locationsMap {
	margin:0 0 30px 0;
}
.about .container .content div.locations {
	width:250px;
	margin:0 0 30px 20px;
	display:inline-block;
	vertical-align:top;
}
/*-- awards table ---------------------------------------*/
.container .content table.awards {
	border:1px solid #013a1b;
	margin:0 0 30px 0;
}
.container .content table.awards th {
	padding:10px;
	font-size:1em;
	font-weight:bold;
	text-align:center;
	color:#fff;
	background-color:#00853e;
}
.container .content table.awards td {
	padding:10px;
}
.container .content table.awards tr.bg0 td {
	background-color:#f0f0f0;
}
.container .content table.awards tr.bg1 td {
	background-color:#d2e6db;
}
/*-- principles bio ---------------------------------------*/
.container .content div.bio {
	margin:0 0 30px 0;
}
.container .content div.bio img {
	margin:0 0 15px 15px;
	display:block;
	float:right;
}
.container .content div.bio h3 {
	color:#00853e;
}
.container .content div.bio h3 strong {
	color:#5F5F5F;
}
/*-- contact ---------------------------------------*/
.contact .content {
	padding:112px 0 0 0 !important;
	background:url(structure/bg_contact.jpg) no-repeat top left;

}
.contact .content div.map {
	margin:0 0 30px 0;
}
.container .content div.region {
	margin:0 25px 30px 25px;
	clear:both;
	position:relative;
}
.container .content div.region h3 {
	width:141px;
	height:23px;
	margin:15px 24px 0 0;
	padding:0;
	display:inline-block;
	text-indent:-10000px;
	overflow:hidden;
	vertical-align:top;
}
.container .content div.region .group1, .container .content div.region .group2 {
	width:182px;
	display:inline-block;
	vertical-align:top;
}
.container .content div.region .group1 strong, .container .content div.region .group2 strong {
	color:#00853e;
}
.container .content div.region .group1 {
	margin:0 35px 0 0;
}
.container .content div.us h3 {
	background:url(structure/title_us.gif) no-repeat top left !important;
}
.container .content div.int h3 {
	background:url(structure/title_int.gif) no-repeat top left !important;
}
/*-- home page ---------------------------------------*/

.home .flash {
	width:850px;
	margin:0 auto;
	background:#fff;
	z-index:1;
}
.home .container {
	background:#f7f7f7 url(none);
}
.home .content {
	width:850px;
	margin:20px auto 0 auto;
	padding:0;
	overflow:hidden;
}
.home .content .col.one {
	width:500px;
}
.home .content .col.one p {
	width:455px;
	margin:0 auto 15px auto;
}
.home .content .new {
	clear:both;
	padding:20px 0 10px 0;
	margin:0;
	position:relative;
	overflow:auto;
}
.home .content .new a {
	font-weight:bold;
	font-size:.91em;
	display:block;
	width:375px;
	margin:0 10px 5px 29px;
	padding:5px 5px 5px 65px
}
.home .content .new a strong {
	display:block;
	float:left;
	margin:0 0 0 -60px;
	background:url(structure/bg_date.gif) no-repeat top left;
	color:#fff;
	padding:5px;
	height:15px;
	width:33px;
}
.home .content .new a:hover {
	background:#faf9f5;
	color:#00853e;
	text-decoration:underline;
}
.home .content .col.family {
	margin:0 0 0 18px;
	padding:0 23px 20px 23px;
	width:282px;
	background:url(structure/bg_families.gif) no-repeat left bottom
}
.home .content .col.family a.btn {
	height:84px;
	font-size:.91em;
	text-indent:0;
	padding:5px 0 0 80px;
	margin:0 0 18px 0
}
.home .content .col.family h4 {
	font-size:1.08em;
	color:#00853e;
	font-weight:bold;
}
.home .content .col.family a p {
	line-height:1.16em;
}
.home .content .col.family p.discription {
	margin-bottom:40px;
}
/*-- news media page ---------------------------------------*/
.newsmedia .new h4 {
	font-weight:bold;
	font-size:1em;
	display:block;
	margin:0 0 5px 0;
	padding:8px 0 5px 50px
}
.newsmedia .new h4 strong {
	display:block;
	float:left;
	margin:0 0 0 -50px;
	background:url(structure/bg_date.gif) no-repeat top left;
	color:#fff;
	padding:5px;
	height:15px;
	width:33px;
}
.newsmedia .new p {
	font-weight:normal;
	font-size:.91em;
	display:block;
	margin:0 0 5px 0;
	padding:5px 0 5px 50px
}
.newsmedia .new a {
	font-weight:bold;
	font-size:.91em;
	background:#faf9f5;
	text-decoration:none;
}
.newsmedia .new a:hover {
	font-weight:bold;
	font-size:.91em;
	background:#faf9f5;
	color:#00853e;
	text-decoration:underline;
}
/*-- titles ------------------------------------------*/

h2.title {
	height:29px;
	width:100%;
	margin:0 auto 20px auto;
}
.home h2.title.whatsnew {
	background:url(structure/title_whatsnew.gif) no-repeat top center;
}
h2.welcome {
	background:url(structure/title_welcome.gif) no-repeat top left;
	height:69px;
}
.topGraphic {
	background:url(structure/bg_topGraphic.jpg) no-repeat top left;
	height:112px;
	width:625px;
	margin:0 0 0 -24px
}
.home h2.featured {
	background:url(structure/title_featured.gif) no-repeat top center;
}
.home h2.families {
	height:45px;
	width:328px;
	margin:0 0 5px -23px;
	background:url(structure/title_families.gif)
}
.about .sidebar h3.title {
	width:145px;
	margin:29px 0 0 26px;
	height:30px;
	background:url(structure/title_about.gif) no-repeat top center;
}
.projects .sidebar h3.title.service {
	background:url(structure/title_service.gif) no-repeat top left;
}
.newsmedia .sidebar h3.title {
	width:145px;
	margin:29px 0 0 26px;
	height:30px;
	background:url(structure/title_newsmedia.gif) no-repeat top center;
}
.careers .sidebar h3.title {
	width:145px;
	margin:29px 0 0 26px;
	height:30px;
	background:url(structure/title_careers.gif) no-repeat top center;
}
.contact .sidebar h3.title {
	width:145px;
	margin:29px 0 0 26px;
	height:30px;
	background:url(structure/title_contact.gif) no-repeat top center;
}
.sidebar h4 {
	width:165px;
	margin:29px 0 0 26px;
	height:30px;
	text-indent:-10000px;
	overflow:hidden;
}
.sidebar h4.hq {
	background:url(structure/title_westCoastHQ.gif) no-repeat top left;
}
.sidebar h4.inq {
	background:url(structure/title_mediaInquiries.gif) no-repeat top left;
}
.sidebar h4.chq {
	padding:0;
	height:30px;
	background:url(structure/title_eastCoastHQ.gif) no-repeat bottom left;
}
.sidebar h4.qualifications {
	background:url(structure/title_qualifications.gif) no-repeat top left;
}
.container .sidebar p a {
	margin:0;
}
.sidebar p {
	margin:0 0 0 26px;
}
.container .sidebar h3.title.ourfamily {
	background:url(structure/title_sidebarFamilies.gif) no-repeat top left;
	margin:20px 0 0 26px;
	width:200px;
	height:24px;
}
.projects .sidebar h3.title {
	width:145px;
	margin:29px 0 0 26px;
	height:30px;
	background:url(structure/title_projects.gif) no-repeat top center;
}
.projects .sidebar h4.vbs, .projectsServ .sidebar h4.vbs {
	width:145px;
	margin:29px 0 0 26px;
	height:25px;
	background:url(structure/title_viewByService.gif) no-repeat top center;
	text-indent:-10000px;
	overflow:hidden;
}
/*-- subpage titles ------------------------------------------*/

.content h2.sb-title {
	width:570px;
	height:26px;
	margin:30px 0 15px 0;
	text-indent:-10000px;
	overflow:hidden;
}
.about .content h2.about0 {
	background:url(structure/title-sp_excellenceInEveryDetail.gif) no-repeat top center;
}
.about .content h2.about1 {
	background:url(structure/title-sp_qualifications.gif) no-repeat top center;
}
.about .content h2.about2 {
	background:url(structure/title-sp_officeLocations.gif) no-repeat top center;
}
.about .content h2.about3 {
	background:url(structure/title-sp_principles.gif) no-repeat top center;
}
.about .content h2.about4 {
	background:url(structure/title-sp_missionValue.gif) no-repeat top center;
}
.about .content h2.about5 {
	background:url(structure/title-sp_awardsHonors.gif) no-repeat top center;
}
.about .content h2.about6 {
	background:url(structure/title-sp_employeeOwnership.gif) no-repeat top center;
}
.newsmedia .content h2.newsmedia0 {
	background:url(structure/title-sp_newsMedia.gif) no-repeat top center;
}
.newsmedia .content h2.newsmedia1 {
	background:url(structure/title-sp_newsMediaArchive.gif) no-repeat top center;
}
.newsmedia .content h2.newsmedia2 {
	background:url(structure/title-sp_newsletter.gif) no-repeat top center;
}
.newsmedia .content h2.newsmedia3 {
	background:url(structure/title-sp_downloadablePressKit.gif) no-repeat top center;
}
.careers .content h2.careers0 {
	background:url(structure/title-sp_careers.gif) no-repeat top center;
}
.careers .content h2.careers1 {
	background:url(structure/title-sp_availablePositionsFLNJTX.gif) no-repeat top center;
}
.careers .content h2.careers2 {
	background:url(structure/title-sp_availablePositionsCANVWA.gif) no-repeat top center;
}
.careers .content h2.careers3 {
	background:url(structure/title-sp_forStudents.gif) no-repeat top center;
}
.contact .content h2.contact0 {
	margin:30px 25px 0 25px;
	background:url(structure/title-sp_contactUs.gif) no-repeat top center;
}
.projectsServ .content h2.projects1 {
	background:url(structure/title-sp_projectsInteriors.gif) no-repeat top center;margin:0 0 15px 0;
}
.projectsServ .content h2.projects2 {
	background:url(structure/title-sp_projectsExteriors.gif) no-repeat top center;margin:0 0 15px 0;
}
.projectsServ .content h2.projects3 {
	background:url(structure/title-sp_projectsThemed.gif) no-repeat top center;margin:0 0 15px 0;
}
.projectsServ .content h2.projects4 {
	background:url(structure/title-sp_projectsRockWater.gif) no-repeat top center;margin:0 0 15px 0;
}
/*-- buttons -----------------------------------------*/

.btn.home {
	width:90px;
	background:url(structure/btn_home.gif) no-repeat top left;
}
.btn.about {
	width:101px;
	background:url(structure/btn_about.gif) no-repeat top left;
}
.btn.newsmedia {
	width:129px;
	background:url(structure/btn_newsmedia.gif) no-repeat top left;
}
.btn.projects {
	width:102px;
	background:url(structure/btn_projects.gif) no-repeat top left;
}
.btn.careers {
	width:94px;
	background:url(structure/btn_careers.gif) no-repeat top left;
}
.btn.contact {
	width:109px;
	background:url(structure/btn_contact.gif) no-repeat top left;
}
/*-- Family of companies -----------------------------------------*/

.home .btn.contractors {
	background:url(structure/btn_khssCLogo.gif) no-repeat 0 0;
}
.home .btn.specialties {
	background:url(structure/btn_khssSlogo.gif) no-repeat 0 0
}
.home .btn.international {
	background:url(structure/btn_khssIlogo.gif) no-repeat 0 0
}
.home .btn.scenario {
	background:url(structure/btn_vpdLogo.gif) no-repeat 0 0;
}
.home .btn.contractors:hover, .home .btn.specialties:hover, .home .btn.international:hover, .home .btn.scenario:hover {
	background-position:0 -88px;
}
.home .btn.contractors strong, .home .btn.specialties strong, .home .btn.international strong, .home .btn.scenario strong {
	margin:0 0 10px 0;
	font-size:1.08em;
	color:#00853E;
	display:block;
}
.home .content .new a.btn.morenews {
	margin-top:8px;
	background:url(structure/btn_morenews.gif) no-repeat top left;
	width:89px;
	padding:0;
	height:32px;
	float:right;
}
.home .content .new a.btn.morenews:hover {
	background-position:left bottom;
}
a.btn.sidebarKHSSC {
	margin:0;
	height:36px;
	width:100%;
	background:url(structure/btn_sidebarKHSSC.gif) no-repeat top left;
}
a.btn.sidebarInt {
	margin:0;
	height:36px;
	width:100%;
	background:url(structure/btn_sidebarInternational.gif) no-repeat top left;
}
a.btn.sidebarKHSSS {
	margin:0;
	height:36px;
	width:100%;
	background:url(structure/btn_sidebarKHSSS.gif) no-repeat top left;
}
a.btn.sidebarVPD {
	margin:0;
	height:36px;
	width:100%;
	background:url(structure/btn_sidebarVPD.gif) no-repeat top left;
}
a.btn:hover, a.btn.here {
	background-position:left bottom;
}
.container .content img.download {
	margin:0 0 15px 15px;
	display:block;
	float:right;
}
.container .content div.download {
	width:181px;
	margin:0 0 15px 15px;
	float:right;
}
.container .content div.download img {
	margin:0 0 15px 0;
	display:block;
}
/*-- projects by service ------------------------------------------*/







.container .content div.services {
	overflow:auto;
	margin:0 0 10px 0;
}
.container .content div.services ul {
	width:260px;
	margin:0 10px 0 0;
	float:left;
}
.container .content div#byService {
}
.container .content div#byService a {
	width:268px;
	height: 86px;
	margin:0 10px 10px 0;
	padding:5px;
	display:block;
	background:#f0f0f0;
	position:relative;
	color:#5f5f5f;
	float:left;
}
.container .content div#byService a:hover {
	width:268px;
	height: 86px;
	margin:0 10px 10px 0;
	padding:5px;
	display:block;
	background:#eaf1ee;
	position:relative;
	float:left;
	color:#5f5f5f;
	text-decoration:none;
}
.container .content div#byService a img {
	float:left;
}
.container .content div#byService a span {
	width:147px;
	margin:15px 0 0 0;
	display:block;
	float:right;
}
/*-- footer ------------------------------------------*/

.footer {
	color:#888888;
	width:100%;
	clear:both;
	font-size:.91em;
}
.footer .footerwrapper {
	padding:30px 0 50px 0;
	overflow:auto;
	width:882px;
	margin:0 auto;
	background:#f4f1ea url(structure/bg_footer1.png) no-repeat top center;
}
.footer .alignLeft {
	margin:0 0 0 23px;
	line-height:18px;
	color:#888888;
}
.footer .alignLeft a {
	color:#888888;
	padding:0 10px
}
.footer .alignLeft a:first-child {
	padding:0 10px 0 0;
}
.footer .alignLeft a:hover {
	text-decoration:underline;
}
.footer .alignRight {
	width:210px;
	margin:0 20px 0 0
}
.footer .alignRight a.btn.footerlogo {
	margin:0;
	float:right;
	text-align:left;
	background:url(structure/logo_footer.gif) no-repeat top left;
	height:95px;
	width:73px;
}
.footer .alignRight p {
	float:left;
}
.hidden {
	display:none;
}
#TB_caption {
	color:#00853e;
}
#TB_closeWindow {
	position:absolute;
	top:0px;
	right:0;
	z-index:10000;
	height:25px;
	padding:0;
	float:right;
	font-size:.83em;
	font-weight:bold;
}
