body {
margin:0;
padding:0;
font-size: 13px;
font-family: Arial, Helvetica, sans-serif;
color: #2e2e2e;
}

#mainWrapper {
width: 950px; /*Width of main container*/
margin: 0 auto; /*Center container on page*/
background: url(../images/bg_body.gif) repeat-y;
}


#index #mainWrapper {
background: none;
}


#header {
background: #ffffff url(../images/bg_header.gif) repeat-x;
height: 120px; /*Height of top section*/
}

#contentWrapper {
float: left;
width: 100%;
}

#contentColumn {
margin-left: 292px; /*Set left margin to LeftColumnWidth*/
}

#contentColumnHome {
margin-left: 0; /*Set left margin to LeftColumnWidth*/
}

#leftColumn {
float: left;
width: 292px; /*Width of left column*/
margin-left: -950px; /*Set left margin to -(MainContainerWidth)*/
background: #ffebac;
}

#footer {
clear: left;
width: 100%;
background: #c4eae8;
padding: 10px 0;
font-size: 10px;
}

#copyright {
float: left;
padding-left: 15px;
}

#footerNav {
float: right;
padding-right: 15px;
}

.cushion {
padding: 20px; /*Margins for inner DIV inside each column (to provide padding)*/
}

p {
padding: 5px 0 10px 0;
margin: 0;
line-height: 1.3em;
}


/***** Containers *****/

#homeServices {
background: #ffebac;
height: 316px;
font-size: 12px;
}

.homeWhy {
background: url(../images/bg_why.gif) no-repeat;
padding: 35px;
font-size: 12px;
}

.homeFeature {
margin: 5px 25px;
font-size: 12px;
}

.homeConnolly {
font-size: 12px;
margin: 20px;
width: 531px;
}

.homeGallery {
font-size: 12px;
margin: 20px;
width: 339px;
}

#homeImage a:link, #homeImage a:visited {
color: #ffffff;
}

#homeImage a:hover, #homeImage a:active {
color: #ffde74;
}

.sideGallery {
width: 250px;
float: right;
margin: 3px 0 10px 15px;
text-align: center;
font-size: 11px;
}

.projGal {
width: 100px;
height: 150px;
float: left;
margin: 0 15px 0 0;
text-align: center;
}



/***** Formatting Styles *****/

.small {
font-size: 11px;
}

/* Headers */

h1 {
font-size: 22px;
font-family: optima, Optima, Helvetica, Arial, sans-serif;
color: #006583;
font-weight: normal;
border-bottom: solid 1px #a9aba9;
padding: 0;
margin: 0 0 15px 0;
}

h2 {
font-size: 20px;
font-family: optima, Optima, Helvetica, Arial, sans-serif;
color: #525352;
font-weight: normal;
border-bottom: solid 1px #a9aba9;
padding: 25px 0 0 0;
margin: 0;
}

h3 {
font-size: 19px;
font-family: optima, Optima, Helvetica, Arial, sans-serif;
color: #56872f;
font-weight: normal;
padding: 15px 0 0 0;
margin: 0;
}

#leftColumn h3 {
font-size: 16px;
font-family: optima, Optima, Helvetica, Arial, sans-serif;
color: #525352;
border-bottom: solid 1px #a9aba9;
padding: 8px 0 0 0;
margin: 0;
}

h4 {
font-size: 16px;
font-family: Helvetica, Arial, sans-serif;
color: #0490bb;
font-weight: normal;
padding: 15px 0 0 0;
margin: 0;
}

h5 {
font-size: 14px;
font-family: Helvetica, Arial, sans-serif;
color: #56872f;
font-weight: bold;
padding: 15px 0 0 0;
margin: 0;
}


/* Container Adjusters */

#homeServices p {
padding: 0;
margin: 0;
line-height: 1.3em;
}

.homeWhy p {
padding: 5px 0;
margin: 0;
line-height: 1.3em;
}

.homeFeature p {
padding: 0;
margin: 0;
line-height: 1.3em;
}

.homeConnolly p, .homeGallery p {
padding: 0 0 10px 0;
margin: 0;
line-height: 1.3em;
}

.homeGalleryPic {
display: inline;
float: left;
}

.sideQuote {
color: #6e570f;
font-size: 15px;
text-indent: -7px;
margin-left: 15px;
}

.sideQuoteSource {
color: #6e570f;
font-size: 15px;
margin-left: 15px;
}


/***** Link Styles *****/

a:link, a:visited {
color: #006583;
text-decoration: underline;
}

a:hover, a:active {
color: #05b4ea;
}

#footer a:link, #footer a:visited, #footer a:hover, #footer a:active {
color: #2e2e2e;
}



/***** List Styles *****/

#homeServices ul {
margin: 10px 0 0 0;
padding: 0;
list-style-type: none;
}

#homeServices ul li {
background: url(../images/bullet_home-serv.gif) no-repeat;
background-position: 0 3px;
padding-left: 12px;
margin: 5px 0;
}

#contentColumn ul {
margin: 0 0 15px 0;
padding: 0;
list-style-type: none;

}

#contentColumn ul li {
margin: 0 0 7px 5px;
padding: 0 0 0 17px;
background: url(../images/bullet_blue.gif) no-repeat;
background-position: 4px 4px;
}

#contentColumn ul li ul {
margin: 10px 0 15px 0;
padding: 0;
list-style-type: none;

}

#contentColumn ul li ul li {
margin: 0 0 7px 5px;
padding: 0 0 0 17px;
background: url(../images/bullet_yellow.gif) no-repeat;
background-position: 4px 4px;
}



/***** Form Styles *****/

.cssform p{
clear: left;
margin: 0;
padding: 5px 0 8px 0;
height: 1%;
}

.cssform label{
float: left;
width: 150px; /*width of labels. Should be smaller than left column (155px) to create some right margin*/
text-align: right;
padding: 2px 5px 0 0;
}

.cssform input[type="text"]{ /*width of text boxes. IE6 does not understand this attribute*/
width: 150px;
}

.cssform textarea {
width: 250px;
height: 150px;
}

/*.threepxfix class below:
Targets IE6- ONLY. Adds 3 pixel indent for multi-line form contents.
to account for 3 pixel bug: http://www.positioniseverything.net/explorer/threepxtest.html
*/

* html .threepxfix{
margin-left: 3px;
}




/***** Left Navigation *****/

#leftColumn ul {
margin: 15px 0 0 10px;
padding: 0;
list-style-type: none;
}

#leftColumn ul li {
background: url(../images/bullet_home-serv.gif) no-repeat;
background-position: 0 8px;
padding: 5px 0 5px 14px;
margin: 5px 0;
}

#leftColumn ul li a {
text-decoration: none;
}

#leftColumn ul li ul {
margin: 8px 0 0 5px;
padding: 0;
list-style-type: none;
font-size: 11px;
}

#leftColumn ul li ul li {
background: url(../images/bullet_green.gif) no-repeat;
background-position: 0 5px;
padding: 3px 0 3px 14px;
margin: 2px 0;
}



/***** Main Navigation *****/

.jqueryslidemenu {
z-index: 1;
line-height: 1em;
width: 620px;
margin: 28px 26px 0 0;
padding: 0;
display: block;
clear: both;
float: right;
text-align: right;

}

#index .jqueryslidemenu {
line-height: 1em;
width: 570px;
margin: 28px 0 0 0;
padding: 0;
display: block;
clear: both;
float: right;
text-align: right;

}

.jqueryslidemenu ul {
margin: 0;
padding: 0;
list-style-type: none;
background-color: #ffffff;
font-family: Arial, Helvitica, sans-serif;
font-size: 12px;
line-height: 1em;
color: #5d5c5e;
}

/*Top level list items*/
.jqueryslidemenu ul li {
position: relative;
display: inline;
float: left;
padding: 0;
margin: 0;
text-align: center;
text-transform: uppercase;
}

/*Top level menu link items style*/
.jqueryslidemenu ul li a {
display: block;
color: #5d5c5e;
text-decoration: none;
padding: 0;
}

* html .jqueryslidemenu ul li a { /*IE6 hack to get sub menu links to behave correctly*/ display: inline-block;
}

.jqueryslidemenu ul li a:link, .jqueryslidemenu ul li a:visited {
color: #5d5c5e;
background: #ffffff;
padding: 7px 12px;
margin: 0;

}

.jqueryslidemenu ul li a:hover, .jqueryslidemenu ul li a:active {
color: #251715;
background: #ffde74;
}
	
/*1st sub level menu*/
.jqueryslidemenu ul li ul {
position: absolute;
left: 0;
margin: 0;
padding: 0;
border-top: none;
display: block;
visibility: hidden;
background: #ffffff;
width: 164px;
border: solid 1px #d6dad9;
}

/*Sub level menu list items (undo style from Top level List Items)*/
.jqueryslidemenu ul li ul li {
display: list-item;
float: none;
}

/*All subsequent sub menu levels vertical offset after 1st level sub menu */
.jqueryslidemenu ul li ul li ul {
top: 0;
}

/* Sub level menu links style */
.jqueryslidemenu ul li ul li a:link, .jqueryslidemenu ul li ul li a:visited {
width: 154px;
text-align: left;
padding: 6px;
margin: 0;
color: #393536;
background: #ffffff;
font-size: 11pz;
text-transform: none;
border-top: solid 1px #d6dad9;
border-right: solid 1px #d6dad9;
}

.jqueryslidemenu ul li ul li a:hover, .jqueryslidemenu ul li ul li a:active { /*sub menus hover style*/
background: #36609c;
margin: 0;
color: #ffffff;
}



/* ######### CSS classes applied to down and right arrow images  ######### */

.downarrowclass {
position: absolute;
top: 12px;
right: 7px;
}

.rightarrowclass {
position: absolute;
top: 6px;
right: 5px;
}


/***** LIGHTBOX CSS *****/

#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(../images/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(../images/prevlabel.gif) left 15% no-repeat; }
#nextLink:hover, #nextLink:visited:hover { background: url(../images/nextlabel.gif) right 15% no-repeat; }


#imageDataContainer{
	font: 10px Verdana, Helvetica, sans-serif;
	background-color: #fff;
	margin: 0 auto;
	line-height: 1.4em;
	}

#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;
	}
	

/* Min-Width */
.lbWidth { /* most browsers */
	position: absolute;
	top: 0px; left: 0px;
	width: 100%;
	min-width: 790px;
	}

* html .lbContent { /* IE6 */
	margin-left: -790px;
	position:relative;
	}

* html .lbMinWidth { /* IE6 */
	padding-left: 790px;
	}
	
	
/* Clearfix */	
.clearfix:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.clearfix {display: inline-block;}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */ 
	

