/*-  palette

----------------------------------------------------------------------*/
/*-  normalize everything
----------------------------------------------------------------------*/

/* normalize margin, padding */
html, body, div, dl, dt, dd, ul, ol, li, 
h1, h2, h3, h4, h5, h6, pre, input, 
p, blockquote, th, td, img {
	margin: 0;
	padding: 0;
}

html, body {
	height: 100%;
}

/* normalize font-size for headers */
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}

/* remove list-style from lists */
ol, ul {
	list-style: none;
}

/* normalize font-style and font-weight to normal */
address, caption, cite, code, dfn,
th, var {
	font-style: normal;
	font-weight: normal;
}

/* remove table border spacing */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* remove border from fieldset and img */
fieldset, img {
	border: 0;
}

/* left-align text in caption adn th */
caption, th {
	text-align: left;
}

a:active, a:focus {
  outline: none ! important;
}

.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

* html .clearfix {height: 1%;}


/*-  common elements
----------------------------------------------------------------------*/	
body {
	font-family: "Trebuchet MS", helvetica, arial, sans-serif;
	font-size: 12px;
	color: #333;
	line-height: 1.5em;
}

#wrapper {
	width: 952px;	
	margin: 0 auto;
}

a:link,
a:visited {
	text-decoration: none;
	color: #3C9398;
}

a:hover {
	text-decoration: underline;
}

h1 {
	color: #3c9398;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 1.8em;
}

h1 span.thin {
	font-weight: normal;
}

h1 span.clientname {
	font-weight: normal;
}

h2 {
	color: #9e5c44;
	font-weight: bold;
	font-size: 14px;
	margin-bottom: 1.2em;
}

h2.summary {
	width: 480px;
}

h3 {
	font-weight: bold;
	color: #9e5c44;
}

h4 {
}

h5 {
}

p {
	padding-bottom: 1em;
}

textarea {
	font-family: helvetica, arial, sans-serif;
	font-size: 12px;
}

img.heading {
	display: block;
	margin-bottom: 38px;
}

/*-  structural
----------------------------------------------------------------------*/
#main_outer {
	background-color: #fff;
}
	
#main_inner_front {
	background: #f1f2f4 url(/images/bg/teal_sidebar.gif) top right no-repeat;			
}		

#main_inner {
	background: #f1f2f4 url(/images/bg/teal_sidebar.gif) top right no-repeat;			
}		

#main_inner_alt {
	background: #fff url(/images/bg/orange_sidebar.gif) top right no-repeat;			
}

#main_inner_wide {
	background: #fff url(/images/bg/teal_sidebar.gif) top right no-repeat;			
}		

#main_inner_wide_montage {
	background: #fff url(/images/bg/teal_sidebar.gif) 100% 28px no-repeat;			
}		

#left {
	position: relative;
	float: left;
	width: 182px;
	background-color: #f1f2f4;			
	font-size: 90%;
	z-index: 500;
}

#main_inner_alt #left,
#main_inner_wide #left,
#main_inner_wide_montage #left {
	background-color: #fff;
}

#left .inner {
	padding: 0 12px 6px 37px;
}

#right {
	position: relative;
	float: right;
	width: 241px;
	color: #000;
	line-height: 1.4em;
	z-index: 500;
}

#right .inner {
	padding: 21px 18px 0 37px;
}

#middle {
	position: relative;
	margin: 0 241px 0 182px;
	z-index: 100;
	background-color: #fff ! important;		
}

#middle .inner {
	padding-left: 33px;	
	background-color: #fff ! important;	
}

#middle .casestudy h3 {
	text-transform: uppercase;
	letter-spacing: 1px;
}

#middle .thin {
	position: relative;
}

#middle .thin h2,
#middle .thin p {
	margin-right: 230px;
}

#footer {
	position: relative;
	top: -1px;
	height: 86px;
	font-size: 11px;
	background-color: #f9f9f9;
}

#middle .narrow {
	position: relative;
	margin-left: 177px;
	width: 310px;
}

/*-  top
----------------------------------------------------------------------*/
#top {
	position: relative;
	height: 126px;
	z-index: 999;
	line-height: 1.6em;	
}

ul#nav {
	position: absolute;
	left: 208px;
}

ul#nav li {
	display: block;
	float: left;
	position: relative;
	border-left: solid 1px #afddd8;
	padding-top: 12px;
	padding-left: 7px;
	padding-right: 16px;
	font-size: 14px;
	color: #828282;	
}

ul#nav li a:link,
ul#nav li a:visited {
	color: #828282;
}

ul#nav li a:hover,
ul#nav li ul li a:hover,
ul#nav li a.active {
	color: #f47a21;
	text-decoration: none;
}


/* subnav */
ul#nav li ul {
	display: none;
	position: absolute;
	top: 31px;
	left: -1px;
	width: 200px;
	padding-bottom: 6px;
}

ul#nav li ul.empty {
	height: 1px;
	line-height: 0;
}

ul#nav li ul.active {
	background: transparent url(/images/bg/nav_curve.gif) bottom left no-repeat;
}

ul#nav li ul li {
	float: none;
	padding-top: 2px ! important;	
	line-height: 1em;
	font-size: 11px !important;
}

ul#nav li ul li a {
	font-size: 11px;
	color: #999;
}

ul#nav li ul#sub_clients li a {
/*
	text-transform: uppercase;
	letter-spacing: 1px;

*/}

#top_contact {
	position: absolute;
	top: 15px;
	left: 750px;
	color: #9E5C44;	
	line-height: 1.3em;
}

a#logo {
	display: block;
	background-color: #fff;
	height: 56px;
}

a#logo img {
	position: absolute;
	right: -6px;
	top: -5px;
	z-index: 999;
}

a#logo_labs img {
	position: absolute;
	right: -87px;
	top: -5px;
	z-index: 999;
}

/*-  bottom
----------------------------------------------------------------------*/
.capabilities {
	position: absolute;
	top: -55px;
	color: #808e8d;
	line-height: 1.3em;
	margin-bottom: 1em;
	font-size: 12px;
}

.capabilities a:link,
.capabilities a:visited {
	color: #999 ! important;	
}

.capabilities a:hover {
	color: #666 ! important;	
	text-decoration: none ! important;
}

#footer .location {
	width: 192px;
	height: 58px;
	background-color: #dceceb;
	position: absolute;
	right: 0;
	padding: 16px 12px 12px 37px;
	font-size: 11px;
	color: #9a9a9a;
	line-height: 1.3em;
}

#footer .location .contact {
	display: block;
	margin: 3px 0;
	color: #9E5C44;
}

#footer .location a:link,
#footer .location a:visited {
	color: #3c9398;
}

#footer .location a:hover {
	text-decoration: underline;
}

#footer .location .copyright {
	font-size: 9px;
}

#footer .inner {
	padding: 4px 38px;
}

#footer .label {
	width: 84px;
	display: block;
	float: left;
	color: #666;
	margin-top: 10px;	
}

#footer ul {
	display: block; 
	float: left;
	margin-top: 10px;
}

#footer ul li {
	display: block;
	float: left;
	margin-right: 18px;
}

#footer a:link,
#footer a:visited {
	color: #999;
}

#footer a:hover {
	color: #444;
	text-decoration: none;	
}


/*-  left side
----------------------------------------------------------------------*/
#left img.cap {
	background-color: #fff;
	padding-top: 22px;
}

#left h4 {
	font-size: 11px;
	font-weight: bold;
	color: #9e5c44;
	margin-bottom: 0.2em;
}

ul.in_out {
	font-size: 11px;
	color: #828282;
	margin-bottom: 1em;
	line-height: 1.2em;
}

ul.in_out li {
	margin-bottom: 1em;
}

ul.in_out .category {
	color: #9e5c44 ! important;
	display: block;
}

ul.in_out img {
	display: block;
	margin-top: 9px;
	margin-bottom: 3px;
	border: solid 1px #dcdcdc;
}

ul.in_out li a:link,
ul.in_out li a:visited {
	font-size: 11px;
	font-weight: bold;
	color: #3c9398;
	display: block;
}

ul.in_out li .category {
	color: #828282;
	font-size: 11px;
}

/*-  right side
----------------------------------------------------------------------*/
#right .montage {
	position: absolute;
	left: -269px;
	width: 270px;
	height: 55px;
	background: #fff url(/images/bg/side_montage.jpg) top left no-repeat;
	z-index: 500;
}

#right .who_montage {
	position: absolute;
	left: -269px;
	width: 270px;
	height: 55px;
	background: #fff url(/images/bg/who_montage.jpg) top left no-repeat;
	z-index: 500;
}

#right .what_montage {
	position: absolute;
	left: -269px;
	width: 270px;
	height: 55px;
	background: #fff url(/images/bg/what_montage.jpg) top left no-repeat;
	z-index: 500;
}

#right h3 {
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 0.7em;
}

#right h4 {
	color: #9e5c44;
	font-size: 12px;
	font-weight: bold;
}

#right .casestudy h4 {
	text-transform: uppercase;
	letter-spacing: 1px;	
}

#right ul.side_list li {
	line-height: 1.2em;
	margin-bottom: 12px;
}

#right ul.side_list li .title {
	display: block;	
}

#right ul.side_list li .title a:link,
#right ul.side_list li .title a:visited {
	color: #9e5c44;
	font-weight: bold;	
}

#right .arrow {
	color: #3c9398;
}

#main_inner_alt #right h4 {
	color: #fff;
	font-size: 11px;
	font-weight: normal;
}

/*-  front page
----------------------------------------------------------------------*/
#intro {
	font-size: 13px;
	line-height: 2em;
}

#intro p {
	margin-top: 0.6em;
}

#front_flash {
	position: absolute;
	right: -27px;
	top: -41px;
}

.home_bottom {
	margin-top: -18px;
	background: transparent url(/images/bg/home_center_curve_sm.gif) top left no-repeat;
	height: 77px;
}


/*-  blog
----------------------------------------------------------------------*/
#blog_nav {
	width: 105px;
	float: left;
	font-size: 11px;
}

#blog_nav h4 {
	color: #999;
}

#blog_nav ul {
	margin-bottom: 1.4em;
}

#blog_entries {
	width: 361px;
	padding-right: 12px;
	float: right;	
}

#blog_entries li {
	padding-bottom: 1.4em;
	margin-bottom: 1.4em;
	border-bottom: solid 1px #000;
}

#blog_entries a.title:link,
#blog_entries a.title:visited {
	color: #000;
	font-weight: bold;
	font-size: 120%;
	display: block;	
}

#blog_entries .byline {
	color: #828282;
	font-weight: bold;
	display: block;
	margin: 0.5em 0;
}

ul.events {
	line-height: 1.4em;
}

ul.events a {
	display: block;
	font-weight: bold;
}

ul.events p {
	color: #666;
	margin: 4px 0;
}

/*-  element-specific positioning
----------------------------------------------------------------------*/
div.case_study_gallery,
#case_study_flash_movie {
	position: absolute;
	left: -375px;
}

#wide_body {
	width: 711px;	
	position: relative;
	float: left;
	left: -182px;
	background: #c6dad8 url(/images/bg/wide_body_top.gif) top left no-repeat;
	padding: 22px 0;
}

#wide_body .inner {
	margin: 0 0 0 36px;
	padding: 0 ! important;
	float: left;
	width: 345px;
	background-color: #c6dad8	! important;
}

#wide_body h2 {
	margin-bottom: 0.2em;
}

#wide_body h2.outside {
	width: 340px;
	position: absolute;
	top: -74px;
	left: 36px;
}

#main_inner_wide_montage .content {
	position: relative;
	left: -182px;
	width: 345px;
}

#main_inner_wide_montage h2 {
	width: 175px;
}

#labs_flash {
	z-index: 600;
	position: absolute;
	top: -2px;
	right: 182px;
	background-color: transparent;
}

#what_flash {
	z-index: 600;
	position: absolute;
	top: 55px;
	right: 171px;
	background-color: transparent;
}

#montage_flash {
	z-index: 600;
	position: absolute;
	top: 50px;
	left: -300px;
	background-color: transparent;
}

ul.amenities li{
	padding-bottom: 6px;
}

ul.industries li {
	padding-bottom: 3px;
}

.biggie_content {
	width: 400px;
	font-size: 13px;
}

.biggie_content h3 {
	color: #828282;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 0.2em;
}

#client_flash {
	position: absolute;
	top: -30px;
	right: 0;
}


/*-  forms
----------------------------------------------------------------------*/
label {
	display: block;
}

input.text, textarea {
	width: 300px;
	display: block;
	margin-bottom: 1em;
}

/*-  misc
----------------------------------------------------------------------*/
.clearer {
	clear:both;
	height:1px;
	font-size:1px;
	background-color: transparent;
}

.topgap {
	margin-top: 1em;
}

.pagination {
	width: 60px;
	text-align: right;
	float: right;

	font-size: 11px;
	color: #999;
}

#right .pagination {
	position: absolute;
	z-index: 900;
	right: 276px;
}

.pagination .current {
	color: #f47a21;
	font-weight: bold;
}

.leftgap {
	margin-left: 21px;
}