/* 
PRIMARY NAVIGATION
*/

#primary ul {
margin: 0;
padding: 0;
height: 25px;
width: 395px;
list-style: none;
display: inline;
overflow: hidden;
}

#primary li {
margin: 0; 
padding: 0;
list-style: none;
display: inline;
height: 25px;
}

#primary a {
float: left;
padding: 25px 0 0 0;
overflow: hidden;
height: 0px !important; 
height /**/:25px; /* for IE5/Win only */
}

#primary a:hover {
background-position: 0 -25px;
	}

#primary a:active, #primary a.selected {
background-position: 0 -50px;
}

#quote a  {
	width: 56px;
	background: url(images/quote.gif) top left no-repeat;
}
	
#home a  {
	width: 55px;
	background: url(images/home.gif) top left no-repeat;
}
	
#aboutus a  {
	width: 74px;
	background: url(images/aboutus.gif) top left no-repeat;
}
	
#services a  {
	width: 69px;
	background: url(images/services.gif) top left no-repeat;
}
	
#portfolio a  {
	width: 75px;
	background: url(images/portfolio.gif) top left no-repeat;
}
	
#who a  {
	width: 92px;
	background: url(images/who.gif) top left no-repeat;
}
	
#contact a  {
	width: 66px;
	background: url(images/contact.gif) top left no-repeat;
}

#environment a  {
	width: 107px;
	background: url(images/environment.gif) top left no-repeat;
}

/*
SECONDARY
*/


#secondary ul {
margin: 0;
padding: 0;
height: 14px;
list-style: none;
display: inline;
overflow: hidden;
}

#secondary li {
margin: 0; 
padding: 0;
list-style: none;
display: inline;
}

#secondary a {
float: left;
padding: 14px 0 0 0;
overflow: hidden;
height: 0px !important; 
height /**/:14px; /* for IE5/Win only */
}

#secondary a:hover {
background-position: 0 -14px;
	}

#secondary a:active, #secondary a.selected {
background-position: 0 -28px;
	}

#textonly a  {
width: 59px;
background: url(images/textonly.gif) top left no-repeat;
	}
	
	#johngood a  {
width: 110px;
background: url(images/johngood.gif) top left no-repeat;
	}

#foradvertisers a  {
width: 91px;
background: url(images/foradvertisers.gif) top left no-repeat;
	}

#news a  {
width: 40px;
background: url(images/news.gif) top left no-repeat;
	}

#links a  {
width: 36px;
background: url(images/links.gif) top left no-repeat;
	}

#jobs a  {
width: 35px;
background: url(images/jobs.gif) top left no-repeat;
	}

#newsletter a  {
width: 62px;
background: url(images/newsletter.gif) top left no-repeat;
	}
	
	/*
TERTIARY 
*/

#tertiary ul {
margin: 0;
padding: 0;
height: 14px;
list-style: none;
display: inline;
overflow: hidden;
}

#tertiary li {
margin: 0; 
padding: 0;
list-style: none;
display: inline;
}

	  
/*
CORE
*/

body {
text-align: left;
color: #000;
background: #eee url(images/bodybg.gif) repeat-x;
padding: 0;
margin: 0 0 40px 40px;
font-family: Trebuchet, "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
}



#wrapper {
padding: 0 0 0px 0;
margin: 0 0 0px 0;
width: 692px;

/*MAX CONTENT width: 684px */
background-image: url(images/contentbg.gif);
background-repeat: repeat-y;
 }

#top {
line-height: 34px;
background-image: url(images/topbgnew.gif); }

#secondary {
float: left;
margin: 0;
padding: 12px 0 8px 30px;
width: 370px;
font-size: 11px;
voice-family: "\"}\"";
voice-family: inherit;
width: 340px;
}

#clientarea {
float: left;
padding: 0px 0 0 19px ;
margin-top: 0px;
line-height: 34px;
height: 34px;
width: 312px;
background-color: white;
voice-family: "\"}\"";
voice-family: inherit;
width: 293px;
}


#clientarea .textfield {
font-size: 11px;
line-height: 12px;
height: 14px;
color: #808080;
font-weight: normal;
width: 90px;
border: 1px solid #3b89c9;
padding: 0;
margin: 0 5px 0 0;
}

#banner {
padding: 0 4px 0 4px;
margin: 0;
background-image: url(images/bannerbg.gif);
background-repeat: repeat-y; 
}

#primary {
padding: 0 4px 0 27px;
margin: 0 4px 0 4px;
height: 25px;
background-color: #e2373e;
background-repeat: repeat-y;
line-height: 25px;
}

#content {
padding: 0;
margin: 0;
width:100%;
background-image: url(images/dotsforbg.gif);
background-repeat: no-repeat;

}

#contentSitemap {
padding: 0;
margin: 0;
width:100%;


}

#left {
float: left;
padding: 30px 20px 0px 45px;
width: 425px;
voice-family: "\"}\"";
voice-family: inherit;
width: 360px;
}

#right {
float: left;
padding: 40px 0px 0 20px;
/*background-image: url(images/dots.gif);
background-repeat: repeat-y;
background-position: left 30px;*/
width: 260px;
voice-family: "\"}\"";
voice-family: inherit;
width: 240px; }

#quotecontent {
padding: 30px 20px 20px 45px;
margin: 0;
width: 692px;
voice-family: "\"}\"";
voice-family: inherit;
width: 627px; 
}

#quoteleft {
float: left;
padding: 0px 20px 0 45px;
width: 325px;
voice-family: "\"}\"";
voice-family: inherit;
width: 280px;
}

#quoteright {
float: left;
padding: 0px 0px 0 40px;
width: 260px;
voice-family: "\"}\"";
voice-family: inherit;
width: 220px; }


#footer {
text-align: center;
padding: 30px 0 20px 0;
background-image: url(images/footerbgnew.gif);
background-repeat: no-repeat;
background-position: 0% 100%;
}

.newsRight, #testimonialRight {
float: left;
padding: 20px 0 0 0;
width: 135px;
}

.newsLeft, #testimonialLeft {
float: left;
padding: 20px 15px 0 0;
width: 90px;
voice-family: "\"}\"";
voice-family: inherit;
width: 75px; }

.newsRight p, #testimonialRight p {
line-height: 16px;
color: #666666;
padding: 0;
}

.newsLeft img {
border: 0;
}

div.news-width {
	width:265px !important;
}

#choose {
display: block;
}

#quality, #history {
display: none;
}

#rightText {
margin-right: 20px;
}

#contactContent {
padding: 40px 0px 0 45px;
width: 684px;
voice-family: "\"}\"";
voice-family: inherit;
width: 639px;
}

.testimonial {
background-image: url(images/testimonialquotes_end.gif);
background-repeat: no-repeat;
background-position: bottom right; 
}

.testimonialWrapperAd {

display: block;
padding: 40px 30px 30px 30px;
background-image: url(images/testimonialquotes_start.gif);
background-repeat: no-repeat; }

#testimonialWrapper, .testimonialWrapper {
height: 100px;
display: block;
padding: 40px 30px 30px 30px;
background-image: url(images/testimonialquotes.gif);
background-repeat: no-repeat; }

p#testimonialattribution, p.testimonialattribution {
font-size: 10px; 
font-weight: normal; 
padding: 0 0 10px 0;
color: #000000;
text-align: left;
}

p#testimonialquote, p.testimonialquote  {
font-size: 12px;
font-style: normal;
padding: 0;
line-height: 18px;
}

p.testimonialquoteBlue  {
font-size: 12px;
font-style: normal;
color: #053a7f;
padding: 0;
line-height: 18px;
}

.testimonialquote img {
float:left;
margin: 0 10px 0 0;
border: 0;
}

#leftNews {
float: left;
padding: 30px 0px 0 45px;
width: 245px;
voice-family: "\"}\"";
voice-family: inherit;
width: 200px;
}

#rightNews {
float: left;
padding: 30px 40px 0 40px;
width: 440px;
voice-family: "\"}\"";
voice-family: inherit;
width: 360px;
}

#leftNewsLandscape {
float: left;
padding: 30px 0px 0 45px;
width: 311px;
voice-family: "\"}\"";
voice-family: inherit;
width: 266px;
}

#rightNewsLandscape {
float: left;
padding: 30px 40px 0 40px;
width: 374px;
voice-family: "\"}\"";
voice-family: inherit;
width: 294px;
}

#fullWidthNews {
float: left;
padding: 30px 40px 0 45px;
width: 685px;
voice-family: "\"}\"";
voice-family: inherit;
width: 600px;
}

#foradsRight {
padding-left: 15px;
}

#virtualProg {
width: 100%;
}

#virtualProg img {
margin: 0 10px 0 0;
display: inline;
}


#logo {
text-align: center;
}

/*
FORM STYLES
*/

form {
padding: 0;
margin: 0;
}

p, .gmapPop {
line-height: 19px;
font-size: 12px;
padding: 0 0 10px 0;
margin: 0;
}


.input {
font-family: Trebuchet, "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
color: black;
width: 200px;
border: 1px solid #3A89C9;
line-height: 19px;
padding: 0;
margin: 0;
}
.input160 {
font-family: Trebuchet, "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
color: black;
width: 160px;
border: 1px solid #3A89C9;
line-height: 19px;
margin: 0;
padding: 0;
}
.input90 {
font-family: Trebuchet, "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
color: black;
width: 90px;
border: 1px solid #3A89C9;
line-height: 19px;
margin: 0;
padding: 0;
}

.button {
font-family: Trebuchet, "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
}

.contactTextarea, .contactTextarea80, .contactTextarea270 {
font-family: Trebuchet, "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
color: black;
width: 200px;
border: 1px solid #3A89C9;
height: 160px;
padding: 0;
margin: 0;
}

.contactTextarea80 {
height: 80px;
}

.contactTextarea270 {
height: 270px;
}

.formError {
color: red;
}


/*
TEXTUAL
*/

#footer p {
font-size:10px;
line-height: 17px;
color: #808080;
}

h1, h2, h3, h4, p {
margin: 0;
padding: 0;
}

h3 {
padding: 10px 0 0px 20px;
}


h1.pDisplay, p {
font-size: 12px;
line-height: 21px;
font-weight: normal;
padding-bottom: 10px;
}


a, a:link, a:visited  {
text-decoration: none;
color: #053a7f;
}

a:active, a:hover {
text-decoration: underline;
color: #053a7f;
}

#footer a, #footer a:link, #footer a:visited {
text-decoration: none;
color: #808080;
}

#secondary a, #secondary a:link, #secondary  a:visited {
color: #808080;
}

#footer a:active, #footer a:hover, .newsRight a:active, .newsRight a:hover {
text-decoration: underline;
color: #053a7f;
}


#nextSteps {
background-image: url(images/hr.gif);
background-repeat: repeat-x;
background-position: 0 0px;
background-color: transparent;
padding: 20px 0 0 0;
margin: 10px 0 0 0;
}


#right ul, ul.contactList, #nextSteps ul {
font: bold 12px Trebuchet, "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
list-style: none;
margin: 0;
padding: 0 15px;
border: none;
}

ul.contactList {
padding: 0 40px;
font-weight: normal;
color: black;
}

ul.contactList {
padding-bottom: 5px;
}
		
#right li,  #nextSteps li {
margin: 0;
padding: 0px 0 10px 0;
}

ul.contactList li {
margin: 0;
padding: 0 0 5px 0;
}
		
#right li a, #right li a:link, ul.contactList li,  #nextSteps li a, #nextSteps li a:link  {
display: block;
padding-left: 30px;
text-decoration: none;
font-weight: normal;
/* NOTE! NOT 100% - breaks in IE */
width: 165px;
background-image: url(images/bluec.gif);
background-repeat: no-repeat;
background-position: 0 3px;
background-color: transparent;
color: #053a7f;
} 

#nextSteps li a, #nextSteps li a:link  {
width: 300px;
}

html>body #right li a, html>body ul.contactList li, html>body #nextSteps li a {
width: auto;
font-weight: bold;
}

#right li a:visited, #nextSteps li a:visited {
background-image: url(images/bluec.gif);
color: #053a7f;
background-color: transparent;
font-weight: normal;
/*color: #999999;*/
}

#right li a:hover, #right li a:active, #nextSteps li a:hover, #nextSteps li a:active  {
color: #053a7f;
background-color: transparent;
background-image: url(images/greyc.gif);
}


table#statistics td {
font-size:11px;
}




/*
CLASSES
*/

#leftAboutUs h3 {
font-weight: bold;
font-size: 14px;
color: #000;
}

#leftAboutUs h4 {
font-weight: bold;
font-size: 12px;
color: #3b89c9;
padding-top: 10px;
}




.subHead {
font-weight: bold;
font-size: 14px;
color: #000;
}


.blueBold {
font-weight: bold;
color: #053a7f;
}

.blackBold {
font-weight: bold;
color: black;
}

.blueBoldSubhead{
font-weight: bold;
color: #053a7f;
font-size: 14px;
}



.cleaner {
clear: both;
height: 1px;
font-size: 1px;
line-height: 1px;
border: none;
margin: 0;
padding: 0;
background: transparent;
}

.cleaner20 {
clear: both;
height: 20px;
font-size: 20px;
line-height: 20px;
border: none;
margin: 0;
padding: 0;
background: transparent;
}

.cleaner40 {
clear: both;
height: 40px;
font-size: 40px;
line-height: 40px;
border: none;
margin: 0;
padding: 0;
background: transparent;
}

 .banner {
position: relative;
left: -20px;
padding-top: 30px;
}

 .skip {
display: none;
}

.hr {
height: 1px;
line-height: 1px;
width: 100%;
background-image: url(images/hr.gif);
}

.bold {
font-weight: bold;
}



.clientArea1 {
float: left;
margin-top: 12px;
}

.clientArea2 {
float: left;
margin-top: 10px;
}

.clientArea3 {
float: left;
margin-top: 14px;
}

.textonlyrule {
display: none;
}

.rule {
background-image: url(images/hr.gif);
background-repeat: repeat-x;
background-position: 0 0px;
background-color: transparent;
padding: 15px 0 0 0;
margin: 10px 0 0 0;
}

.hideLabel {
display:none;
}

/*.portfolioThumb {
float:left;
text-align: center;
}

.portfolioThumb p {
line-height: 15px;
}

.portfolioThumb img {
padding: 10px 0 5px 0;
} */

.thumb {

padding-right: 15px; }

.left50pc {
float: left;
padding: 30px 0px 0 45px;
width: 343px;
voice-family: "\"}\"";
voice-family: inherit;
width: 298px;
}



.caption {
font-size: 10px;
line-height: 14px;
padding: 8px 0 10px 0;
}

.newsWrapper {
float:left;
padding: 0 10px 20px 40px;
}

.indent {
text-indent: 20px;
padding-top: 10px;
}

.dotted {
background-image: url(images/dotsfulllength.gif);
background-repeat: no-repeat;
background-position: 0px 30px;
}

.thumbImg {
display: inline;
padding: 0 5px 5px 0;
text-align: center;
}


/*
SIFR DECOYS
*/

.sIFR-hasFlash #header, #IEMacHeader, .sIFR-hasFlash .header, .IEMacHeader  {
visibility: hidden; 
position: relative;
left: -10px;
font-size: 18px;
margin-bottom: 15px;
font-weight: bold;
}

#IEMacHeader, .IEMacHeader  {
visibility: visible;
}


.sIFR-hasFlash h2, h2.IEMac {
visibility: hidden;
font-size: 14px;
 }

h2.IEMac {
visibility: visible;
}


 




/* These are standard sIFR styles... do not modify */

.sIFR-flash {
	visibility: visible !important;
	margin: 0;
}

.sIFR-replaced {
	visibility: visible !important;
}

span.sIFR-alternate {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	display: block;
	overflow: hidden;
}

/* Hide Adblock Object tab: the text should show up just fine, not poorly with a tab laid over it. */
.sIFR-flash + div[adblocktab=true] {
  display: none !important;
}

/* These "decoy" styles are used to hide the browser text before it is replaced... the negative-letter spacing in this case is used to make the browser text metrics match up with the sIFR text metrics since the sIFR text in this example is so much narrower... your own settings may vary... any weird sizing issues you may run into are usually fixed by tweaking these decoy styles */

