/*
-----------------------------------------------
Braidwood Associates styles (layout)
----------------------------------------------- */

/* Wrapper
----------------------------------------------- */
#wrapper {
	width: 960px;     /* set width of site */
}


/* Links
----------------------------------------------- */
a { color: #0099FF; text-decoration: none; font-weight:bold; }
a:link { color: #0099FF; text-decoration: none;}
a:visited { color: #0099FF; }
a:hover { color: #0099FF; text-decoration: underline;}
a:active { color: #0099FF; text-decoration: none;}


/* Text
----------------------------------------------- */

p {
	margin: 0;
	padding: 0;
	line-height: 135%;
}

#main_col_03 p {
	margin-bottom: 12px;
}

/* Header
----------------------------------------------- */
h1#logo, h2#logo, h1#logo a, h2#logo a {
	background:url(../img/logo.jpg) no-repeat;     /* specify location of logo image */
	width:234px;
	height:72px;
}

#header {
	background: url(../img/header_bg.jpg) top left no-repeat;
	height: 105px;
}

#header h1#logo {
	margin: 20px 0 0 33px;
}

#phone_holder {
	float: right;
	text-align: right;
	height: 45px;
	width: 250px;
	padding: 20px 0 0 0;
	margin: 0 20px 0 0;
}

p.phone {
	font-size: 15px;
	font-weight: bold;
}

p.times {
	margin-right: 3px;
}

#home_img {
	position: relative;
}
img#chamber_awards {
	position: absolute;
	top:-10px;
	right:-10px;
}

img#apt {
	position: absolute;
	top:63px;
	right:-10px;
}

/* Main Nav
----------------------------------------------- */
ul#nav {
	margin: 0 19px 0 0;
	width: 665px;
	padding:0;
	float: right;
	clear: right;
}

ul#nav li a {
	height:40px;     /* specify height of navigation images */
}

#nav a { background-position:0 0; }
#nav .on a { background-position:0 -80px; }     /* specify starting position of nav image states */
#nav a:hover { background-position:0 -40px; }
#nav .on a:hover { background-position:0 -80px; }     /* this option for rollover state for option which is "on" - leave same as line 37 otherwise */

/* change widths and source of each navigation item */
ul#nav #nav1, ul#nav #nav1 a { width:74px; background-image:url(../img/nav/nav1.jpg); }
ul#nav #nav2, ul#nav #nav2 a { width:95px; background-image:url(../img/nav/nav2.jpg); }
ul#nav #nav3, ul#nav #nav3 a { width:91px; background-image:url(../img/nav/nav3.jpg); }
ul#nav #nav4, ul#nav #nav4 a { width:81px; background-image:url(../img/nav/nav4.jpg); }
ul#nav #nav5, ul#nav #nav5 a { width:87px; background-image:url(../img/nav/nav5.jpg); }
ul#nav #nav6, ul#nav #nav6 a { width:81px; background-image:url(../img/nav/nav6.jpg); }
ul#nav #nav7, ul#nav #nav7 a { width:72px; background-image:url(../img/nav/nav7.jpg); }
ul#nav #nav8, ul#nav #nav8 a { width:83px; background-image:url(../img/nav/nav8.jpg); }

/* Main
----------------------------------------------- */

#sub_main_holder {
	background: url(../img/main_bg.gif) top left repeat-y;
}

#first_background {
	background: url(../img/bg_01.jpg) top left repeat-x #940001;
}

#menu_bar {
	height: 13px;
	background: #000000;
	width: 940px;
}

#title_bar {
	height: 35px;
	background:  #000000;
	width: 681px;
	margin-left: 244px;
	padding: 50px 0 0 15px;
}

#title_bar h1 {
	font-size:18px;
	font-weight:bold;
	margin:0pt;
	padding:0pt;
	color: #ffffff;
}

#main_content {
	width: 720px;
	float: right;
	margin:0;
	padding:0 0 20px 15px;
	background: #ffffff;
}

#main_area {
	background: #ffffff;
}

#main_col_01, #main_col_02, #main_col_03 {
	float: left;
}

#main_col_01 {
	width: 200px;
	padding: 20px;
	background: #F5F5F5;
}

#main_col_02 {
	width: 420px;
	background: #ffffff;
	padding: 20px 40px 20px 20px;
}

#main_col_03 {
	width: 200px;
	padding: 20px;
	background: #F5F5F5;
	float: right;
}

p.headingtext {
	font-size: 14px;
	color: #000000;
	margin: 0 0 20px 0;
	padding:0;
}

#main_col_02 p {
	margin: 0 0 15px 0;
}

#main_col_01 ul {
	list-style: square;
	margin:0;
	padding:0 0 0 12px;
}

#main_col_01 ul li {
	margin:8px 0;
	padding:0;
}

#main_col_03 ul {
	list-style: none;
	margin:0 0 20px 0;
	padding:0;
}

#main_col_03 ul li {
	margin:0;
	padding:0;
	border-bottom: 1px dotted #919191;
}

#main_col_03 ul li.last {
	border-bottom: none;
}

#main_col_03 ul li.video a { background: url(../img/icon_vid.gif) 0 0 no-repeat;}
#main_col_03 ul li.pdf a { background: url(../img/icon_pdf.gif) 0 0 no-repeat;}
#main_col_03 ul li.gearth a { background: url(../img/icon_gearth.gif) 0 0 no-repeat;}

#main_col_03 ul li a {
	margin:0;
	padding:5px 0 0 30px;
	display: block;
	width: 170px;
	height: 20px;
}

#sub_right_title {
	height: 64px;
	width: 240px;
	padding: 0;
	margin: -64px 0 0 -20px;	
	position: relative;
}

#sub_right_title .inner {
	width: 240px;
	position: absolute;
	top: 0;
	right: 0;
	height: 44px;
	background: url(../img/bluegrad_bg.gif) top left repeat-x #007ED3;
}

#sub_right_title .inner p {
	font-size: 13px;
	font-weight: bold;
	margin:0;
	padding: 15px 0 0 20px;
	color: #ffffff;
}

.serv_list img {
	text-align: center;
	margin: 0 0 5px 0;
}

.serv_list h3 {
	margin: 0 0 8px 0;
}

ul.error404 {
	padding:0;
	margin:10px 0;
	list-style: none;
}

ul.error404 li {
	margin: 0.5em;
	padding: 0;
}



/* Bottom Section
----------------------------------------------- */

div.sml_clients {
	padding-top: 20px;
	text-align: center;
}

div.sml_clients p {
	text-align: right;
	margin-top: 15px;
	margin-right: 60px;
}


#second_background {
	background: url(../img/second_bg.gif) top left repeat-x #ffffff;
}

.titles {
	background: url(../img/titles_bg.gif) top left repeat-x #E5E2D0;
	height: 44px;
	border-top: 2px solid #ffffff;
	border-left: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
}

.titles .title_1, .titles .title_2 {
	float: left;
	height: 31px;
	margin-top: 10px;
	padding: 3px 0 0 10px;
}

.titles .title_1 {
	border-left: 1px solid #C5C3B8;
	width: 229px;
}

.titles .title_2 {
	width: 462px;
	padding-left: 13px;
}

#bottom {
	background: url(../img/bottom_bg.gif) top left repeat-x #D6D6D6;
	width: 956px;
	margin: 0 auto;
	border-left: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	border-bottom: 2px solid #ffffff;
	text-align: left;
	padding-bottom: 10px;
}

#bottom .bottom_1, #bottom .bottom_2 {
	float: left;
}

#bottom .bottom_1 {
	border-left: 1px solid #C5C3B8;
	width: 239px;
}

#bottom .bottom_2 {
	width: 475px;
}

ul#services_list {
	margin: 10px 0 2px 8px;
	padding:0;
	list-style: none;
}

ul#services_list li {
	float: left;
	padding: 0;
	margin:0 6px;
}

ul#services_list li img {
 border: none;
 outline: 0;
}

ul#services_list li h3 {
	font-size: 14px;
	font-weight: bold;
	color: #000000;
	margin:3px 0 0 0;
	padding:0;
	width: 140px;
}

.titles h2 {
	font-size: 17px;
	font-weight: bold;
	color: #005791;
	margin:0;
	padding:0;
}

ul#projects_list {
	margin: 10px 0 0 0;
	padding:0;
	list-style: none;
}

ul#projects_list li {
	margin:0;
	padding:0;
	background: url(../img/projects_bullet.gif) 12px 11px no-repeat;
}

ul#projects_list li a {
	margin:0 8px;
	padding: 6px 0 6px 14px;
	display:block;
	border-bottom: 1px dashed #888888;
}

ul#projects_list li.last a {
	border-bottom: none;
}

ul#news_list {
	margin: 10px 0 0 0;
	padding:0;
	list-style: none;
}

ul#news_list li {
	margin:0 8px;
	padding: 6px 0 6px 18px;
	display:block;
	border-bottom: 1px dashed #888888;
	background: url(../img/projects_bullet.gif) 10px 11px no-repeat;
}

ul#news_list li.last {
	border-bottom: none;
}

ul#news_list li span {
	display: block;
	font-size: 10px;
}

.bottom_2 h2, .bottom_1 h2 {
	display: none;
}

/* Forms
----------------------------------------------- */
form label, form .row.multi legend {
	width:105px;	/* use additional class of container at start of this arguement to target any difference to this site-wide standard */
}
form .row.submit {
	margin:1em 0 0 115px;
}
form .textbox input {
	width:150px;
}
form .textarea textarea {
	width:250px;
}
form .row.multi fieldset label {
	width:auto;
}

form .row label.radiol {
	width:auto;
	margin-bottom: 5px;
}

form .row label, form .row.multi legend {
	font-weight: bold;
	text-align: right;
	margin-right: 10px;
}
#main_col_02 form {
	padding-top: 20px;
}
#mandatory_fields_note {
	color: #999;
	font-size: 10px;
	padding-left: 115px;
}
#errors {
	border: 2px solid #999;
	background: #f5f5f5;
	font-weight: bolder;
	list-style: none;
	margin: 0 0 10px;
	padding: 10px;
}

/* Footer
----------------------------------------------- */
#footer {
	font-size:0.85em;
	margin:22px auto;
	padding-bottom: 20px;
	color:#888;
	width: 960px;
}
#legals {
	width:49%;
	float:left;
	margin-left: 20px;
}
#legals ul, #legals li {
	margin:0;
	padding:0;
}
#legals li {
	list-style:none;
	float:left;
	margin-right:12px;
}
#legals li.last {
	margin-right:0;
}
#line {
	float:right;
	text-align:right;
	color:#ccc;
	margin-right: 20px;
}
#line a, #line a:visited, #line a:hover {
	color:#ccc;
}



/* Headings
----------------------------------------------- */
h1 {
	margin:0;
	padding:0;
}

h3 {
	font-size: 13px;
	font-weight: bold;
	margin:0;
	padding:0;
}

.noshow {
	display: none;
}

/* Lightbox
----------------------------------------------- */

#lightbox{
	position: absolute;
	left: 0;
	width: 100%;
	z-index: 100;
	text-align: center;
	line-height: 0;
}

#lightbox a img{ border: none; }

#outerImageContainer{
	position: relative;
	background-color: #fff;
	width: 250px;
	height: 250px;
	margin: 0 auto;
}

#imageContainer{
	padding: 10px;
}

#loading{
	position: absolute;
	top: 40%;
	left: 0%;
	height: 25%;
	width: 100%;
	text-align: center;
	line-height: 0;
}
#hoverNav{
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 10;
}
#imageContainer>#hoverNav{ left: 0;}
#hoverNav a{ outline: none;}

#prevLink, #nextLink{
	width: 49%;
	height: 100%;
	background: transparent url(../img/blank.gif) no-repeat; /* Trick IE into showing hover */
	display: block;
}
#prevLink { left: 0; float: left;}
#nextLink { right: 0; float: right;}
#prevLink:hover, #prevLink:visited:hover { background: url(../img/prevlabel.gif) left 15% no-repeat; }
#nextLink:hover, #nextLink:visited:hover { background: url(../img/nextlabel.gif) right 15% no-repeat; }


#imageDataContainer{
	font: 10px Verdana, Helvetica, sans-serif;
	background-color: #fff;
	margin: 0 auto;
	line-height: 1.4em;
	overflow: auto;
	width: 100%	
}

#imageData{	padding:0 10px; color: #666; }
#imageData #imageDetails{ width: 70%; float: left; text-align: left; }	
#imageData #caption{ font-weight: bold;	}
#imageData #numberDisplay{ display: block; clear: left; padding-bottom: 1.0em;	}			
#imageData #bottomNavClose{ width: 66px; float: right;  padding-bottom: 0.7em;	}	
		
#overlay{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 90;
	width: 100%;
	height: 500px;
	background-color: #000;
}


/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> global settings needed for thickbox <<<-----------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
*{padding: 0; margin: 0;}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
#TB_window {
	font: 12px Arial, Helvetica, sans-serif;
	color: #333333;
}

#TB_secondLine {
	font: 10px Arial, Helvetica, sans-serif;
	color:#666666;
}

#TB_window a:link {color: #666666;}
#TB_window a:visited {color: #666666;}
#TB_window a:hover {color: #000;}
#TB_window a:active {color: #666666;}
#TB_window a:focus{color: #666666;}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
#TB_overlay {
	position: fixed;
	z-index:100;
	top: 0px;
	left: 0px;
	height:100%;
	width:100%;
}

.TB_overlayMacFFBGHack {background: url(macFFBgHack.png) repeat;}
.TB_overlayBG {
	background-color:#000;
	filter:alpha(opacity=75);
	-moz-opacity: 0.75;
	opacity: 0.75;
}

* html #TB_overlay { /* ie6 hack */
     position: absolute;
     height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
}

#TB_window {
	position: fixed;
	background: #ffffff;
	z-index: 102;
	color:#000000;
	display:none;
	border: 4px solid #525252;
	text-align:left;
	top:50%;
	left:50%;
}

* html #TB_window { /* ie6 hack */
position: absolute;
margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
}

#TB_window img#TB_Image {
	display:block;
	margin: 15px 0 0 15px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #666;
	border-left: 1px solid #666;
}

#TB_caption{
	height:25px;
	padding:7px 30px 10px 25px;
	float:left;
}

#TB_closeWindow{
	height:25px;
	padding:11px 25px 10px 0;
	float:right;
}

#TB_closeAjaxWindow{
	padding:7px 10px 5px 0;
	margin-bottom:1px;
	text-align:right;
	float:right;
}

#TB_ajaxWindowTitle{
	float:left;
	padding:7px 0 5px 10px;
	margin-bottom:1px;
}

#TB_title{
	background-color:#e8e8e8;
	height:27px;
}

#TB_ajaxContent{
	clear:both;
	padding:2px 15px 15px 15px;
	overflow:auto;
	text-align:left;
	line-height:1.4em;
}

#TB_ajaxContent.TB_modal{
	padding:15px;
}

#TB_ajaxContent p{
	padding:5px 0px 5px 0px;
}

#TB_load{
	position: fixed;
	display:none;
	height:13px;
	width:208px;
	z-index:103;
	top: 50%;
	left: 50%;
	margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */
}

* html #TB_load { /* ie6 hack */
position: absolute;
margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
}

#TB_HideSelect{
	z-index:99;
	position:fixed;
	top: 0;
	left: 0;
	background-color:#fff;
	border:none;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	height:100%;
	width:100%;
}

* html #TB_HideSelect { /* ie6 hack */
     position: absolute;
     height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
}

#TB_iframeContent{
	clear:both;
	border:none;
	margin-bottom:-1px;
	margin-top:1px;
	_margin-bottom:1px;
}
