html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    font-family: inherit;
    vertical-align: baseline;
}
:focus {   /* remember to define focus styles! */
    outline: 0;
}
body {
    line-height: 1;
    color: black;
}
ol, ul {
    list-style: none;
}
table {    /* tables still need 'cellspacing="0"' in the markup  */
    border-collapse: separate;
    border-spacing: 0;
}
caption, th, td {
    text-align: left;
    font-weight: normal;
}

/* General
----------------------------------------------- */
* { 
color: #808080;  
}

input { 
line-height: 1; 
}

body { 
background: #fff;
color: #808080; 
font: normal 12px/1.6 'Helvetica Neue', helvetica, arial, sans-serif;
text-align: center; 
}

#container {
width: 880px;
margin: 0 auto;
text-align: left;
}

#content {
	float: left;
	width: 880px;
	position: relative;
}

#content h1, #case_port h1 {
	line-height: 1;
	height: 22px;
	color: #454748;
	width: 700px;
	float: left;
	margin-bottom: 2px;
	font: 20px Georgia,'Times New Roman',Times,serif;
}

#content h2 {
	line-height: 1;
	color: #454748;
	width: 880px;
	float: left;
	margin: 15px 0 10px;
	font: 30px Georgia,'Times New Roman',Times,serif;
}

#content h2.smallhead, #services_div h2 {
	text-transform: uppercase;
	color: #454748;
	margin-bottom: 5px;
	width: 205px;
	font: 10px 'Helvetica Neue', helvetica, arial, sans-serif;
	letter-spacing: 1px;
}

#content .replaced_head {
	float: left;	
	text-indent:-5000px;
	width:880px;
}

#case_port h3, h3.smallhead {
	line-height: 1;
	text-transform: uppercase;
	color: #454748;
	float: left;
	width: 880px;
	letter-spacing: 1px;
	font-size: 10px;
}

p {
	margin-bottom: 8px;
}

strong {
	font-weight: bold;
}

em {
	font-style: italic;
}

a:link, a:visited {
	text-decoration: underline;
}

a:hover {
	color: #454748;
}

.hide {
	display: none;
}

.standalone {
	padding: 36px 0 15px;
}

/* Masthead
----------------------------------------------- */
#print_mark {
	display: none;
}

#masthead {
	width: 880px;
	background: url(/images/mast_bg.gif) repeat-y scroll 0 0;
	margin-bottom: 28px;
	padding: 10px 0 0px;
	float: left;
}

#mark {
	float: left;	
	background: url(/images/mark.gif) no-repeat scroll 0 0;
	height:52px;
	line-height:52px;
	text-indent:-5000px;
	width:175px;
}

#mark a {
	display:block;
	height:52px;
}

#mark a:hover {
	background: url(/images/mark.gif) no-repeat scroll 0 -52px;
}

#home_page #mark a:hover {
	background: url(/images/mark.gif) no-repeat scroll 0 0;
	cursor: default;
}

dl.nav {
	float: left;
	margin: -1px 0 0 10px;
	display: inline;
	width: 140px;
	line-height: 1;
	font-size: 11px;
}

dl.nav dt, dl.nav dd {
	padding-left: 10px;
	margin-top: 5px;
}

dl.nav dt a {
	color: #454748;
	font-weight: bold;
}

dl.nav dd a {
	color: #808080;
}

dl.nav a:link, dl.nav a:visited {
	text-decoration: none;
}

dl.nav a:hover {
	text-decoration: underline;
}

dl#work_nav {
	margin-left: 115px;
}

#case_port_page.case_page #case_nav, #case_port_page.port_page #port_nav, #case_port_page.new_page #new_nav, #research_page #research_subnav, #contact_page #contact_subnav, #people_page #people_nav, #company_page #company_nav, #process_page #process_nav, #services_page #services_subnav {
	background: url(/images/plus.gif) no-repeat 1px 1px;
}

#case_port_page.case_page #case_nav a, #case_port_page.port_page #port_nav a, #case_port_page.new_page #new_nav a, #research_page #research_subnav a, #contact_page #contact_subnav a, #people_page #people_nav a, #company_page #company_nav a, #process_page #process_nav a, #services_page #services_subnav a {
	color: #454748;
}

/* Layout modules
----------------------------------------------- */
.three_col, .four_col {
	width: 880px;
	float: left;
	clear: both;
	padding-bottom: 16px;
}

.three_col div {
	width: 280px;
	float: left;
	margin: 10px 0 0 20px;
}

.four_col div {
	width: 205px;
	float: left;
	margin: 10px 0 0 20px;
}

.first {
	margin-left: 0 !important;
	clear: left;
}

.topborder {
	border-top: 1px solid #eaeaea;
	padding-top: 18px;
}

.bottomborder {
	border-bottom: 1px solid #eaeaea;
	padding-bottom: 8px;
}

.four_col p {
	color: #808080;
	font-size: 11px;
}

.four_col h4 {
	color: #454748;
	font-weight: bold;
	font-size: 11px;
}

#clients_list div:first-child {
	margin-left: 0 !important; /* for good browsers; IE6 has class applied via jquery */
}

/* Homepage
----------------------------------------------- */
#home_blurb {
	float: left;
	background: url(/images/graphic_text/blurb.gif) no-repeat scroll 0 0;
	height:130px;
	line-height:130px;
	text-indent:-5000px;
	width: 880px;
	margin-top: 16px;
}

#home_feature {
	width: 880px;
	float: left;
	margin-top: 22px;
	border-top: 1px solid #eaeaea;
	padding: 18px 0 14px;
	border-bottom: 1px solid #eaeaea;
}

#features_container {
	height: 340px;
	overflow: hidden;
}

.feature_item {
	width: 880px;
	float: left;
	height: 340px;
	background: url(/images/home_features/feature1.jpg) no-repeat scroll 0 0;
	position: relative;
}

.feature_info {
	width: 270px;
	margin: 10px 0 0 10px;
	padding-bottom: 5px;
	background-color: #454748;
    display: none;
    float: left;
}

#second .feature_info {
	background-color: #00bbdb;
}

#third .feature_info {
	background-color: red;
}

#fourth .feature_info {
	background-color: #7f6756;
}

.TopRight {
	margin: 10px 0 0 600px;
}

.BottomLeft {
	width: 270px;
    position: absolute;
    bottom: 10px;
	left: 10px;
	margin: 0;
	padding-bottom: 5px;
	background-color: #f8811d;
    display: none;
    float: left;
}

.BottomRight {
	width: 270px;
    position: absolute;
    bottom: 10px;
	left: 600px;
	margin: 0;
	padding-bottom: 5px;
	background-color: #f8811d;
    display: none;
    float: left;
}

.feature_info h2 {
	color: #fff;
	margin: 8px 10px 7px;
	font-size: 35px;
	line-height: 1;
	font-family: "HelveticaNeue-Light", "Helvetica Neue Light","Helvetica Neue", sans-serif;
	font-weight: 300;
}

.feature_info p {
	color: #fff;
	margin: 0 10px 5px;
}

.feature_info a:link, .feature_info a:visited {
	color: #fff;
}

.more_link {
	font-size: 10px;
	color: #fff;
	letter-spacing: 1px;
	text-transform: uppercase;
}

#home_nav_cycle {
	float: left;
	display: inline;    
	height: 7px;
	width: 150px;
	margin: 10px 0 0 406px;
}

#home_nav_cycle a:link, #home_nav_cycle a:visited {
	display: block;
	float: left;
	width: 7px;
	height: 7px;
	line-height: 7px;
	margin-right: 5px;
	text-indent:-5000px;
	text-decoration: none;
	background: url(/images/feature_nav.gif) no-repeat scroll 0 0;
}

#home_nav_cycle a:hover, #home_nav_cycle a.activeSlide {
	background: url(/images/feature_nav.gif) no-repeat scroll 0 -7px;
	text-decoration: none;
}

#home_spotlight {
	width: 880px;
	float: left;
	clear: both;
}

.spotlight_item {
	width: 280px;
	float: left;
	margin: 14px 0 0 20px;
}

#spotlight_first {
	margin-left: 0;
}

.spotlight_cat {
	letter-spacing: 1px;
	color: #777;
	margin-bottom: 4px;
	text-transform: uppercase;
	font-size: 10px;
}

.spotlight_item h3 {
	line-height: 1;
	height: 22px;
	color: #454748;
	margin-bottom: 6px;
	font: 19px Georgia,'Times New Roman',Times,serif;
}

/* Case Study, Portfolio
----------------------------------------------- */
#case_port {
	float: left;
	width: 880px;
	position: relative;
}

#global_controls {
	float: right;
	width: 180px;
	text-align: right;
	padding-top: 7px;
	line-height: 1;
}

#global_controls a:link, #global_controls a:visited {
	font-size: 11px;
	color: #666;
	text-decoration: none;
}

#global_controls a:hover {
	text-decoration: underline;
}

#slideshow {
	width: 880px;
	height: 340px;
	float: left;
	overflow: hidden;
}

#case_port .bottomborder {
padding-bottom: 10px;
}

#case_port .three_col div {
	margin-top: 12px;
}

#case_port .topborder {
	padding-top: 14px;
}

#slideshow.portfolio_slides {
	height: 552px;
	margin-bottom: 10px;
}

.slide {
	float: left;
	width: 880px;
	z-index: 1;
}

#slideshow.portfolio_slides .slide {
	display: none;
}

.slide p {
	background-color: #fff;
	font-size: 11px;
	float: none;
	width: 680px;
	padding-top: 2px;
	margin-bottom: 0;
}

#local_controls {
	position: absolute;
	right: 41px;
	top: 358px;
	z-index: 36;
}

#local_controls.co {
	top: 355px;
}

#local_controls.portfolio_slides {
	top: 569px;
}

#local_controls a, #local_controls a:link, #local_controls a:visited {
	display: block;
	float: left;
	text-decoration: none;
	width: 7px;
	height: 7px;
	line-height: 7px;
	margin-right: 5px;
	text-indent:-5000px;
	background: url(/images/feature_nav.gif) no-repeat scroll 0 0;
}

#local_controls a:hover, #local_controls a.activeSlide {
	background: url(/images/feature_nav.gif) no-repeat scroll 0 -7px;
}

#prev_next {
	position: absolute;
	right: 0px;
	top: 355px;
	z-index: 36;
	width: 36px;
	height: 13px;
	background: url(/images/slide_nav.gif) no-repeat scroll 0 0;
}

#prev_next.co {
	top: 352px;
}

#prev_next.portfolio_slides {
	top: 567px;
}

#prev_next a {
	display: block;
	float: left;
	width: 17px;
	height: 13px;
	text-indent:-5000px !important;
}

#prev_slide:hover {
	margin-right: 2px;
	background: url(/images/slide_nav.gif) no-repeat scroll 0 -13px;
}

#next_slide:hover {
	background: url(/images/slide_nav.gif) no-repeat scroll -17px -13px;
}

#case_port h2, .processhead {
	font-size: 10px;
	text-transform: uppercase;
	color: #454748;
	letter-spacing: 1px;
}

#content h2.processhead {
	width: 280px;
}

#case_port h3 a:link, #case_port h3 a:visited {
	text-decoration: none;
}

#case_port h3 a:hover {
	text-decoration: underline;
}

#case_port h3 a.active {
	color: #454748 !important;
	cursor: default !important;
	font-weight: bold !important;
	text-decoration: none;
}

ul.clients li, ul.smalllist li {
	margin-bottom: 3px;
}

ul.clients li, ul.clients li a:link, ul.clients li a:visited, ul.smalllist li, ul.smalllist li a:link, ul.smalllist li a:visited  {
	color: #808080;
	font-size: 11px;
}

ul.clients li a:hover, ul.smalllist li a:hover  {
	color: #454748;
}

#toggleThis {
	float: left;
	width: 880px;
}

/* Research
----------------------------------------------- */
#research_main {
	float: left;
	width: 430px;
	margin: 0 20px 9px 0;
	padding-top: 6px;
}

#research_main h2 {
	float: none;
	width: 430px;
	margin: 0 0 6px;
	font-weight: bold;
	font: bold 26px/27px 'Helvetica Neue', helvetica, arial, sans-serif;
}

#research_main #superhead {
	margin-bottom: 2px;
	color: #454748;
	font: bold 15px/15px 'Helvetica Neue', helvetica, arial, sans-serif;
}

#research_main p, #research_main li {
	color: #808080;
}

#research_main ul {
	list-style-type: square;
	margin-left: 16px;	
}


#research_main p.credit {
	color: #454748;
}

#research_main h3 {
	margin: 18px 0 4px;
	font-weight: bold;
}

#slideshow.research_slides {
	margin-top: 4px;
	width: 430px;
	height: 600px;
	float: left;
	overflow: hidden;
}

.research_slides .slide {
	float: left;
	width: 430px;
	z-index: 1;
	color: #454748;
}

.research_slides .slide p {
	letter-spacing: 1px;
	background-color: #fff;
	font-size: 11px;
	float: none;
	width: 260px;
	margin-bottom: 0;
}

#local_controls.research_slides {
	top: 584px;
}

#prev_next.research_slides {
	top: 581px;
}

#research_nav {
	width: 880px;
	float: left;
}

#research_nav dl {
	margin-top: 16px;
	line-height: 18px;
	font-size: 11px;
}

#research_nav dt {
	color: #454748;
	font-weight: bold;
}

/* Approach
----------------------------------------------- */
#process_blurb {
	margin: 15px 0 0 !important;
}

#services_div.four_col p, #services_div.four_col ul li {
	font-size: 12px;
}

#services_div h2 {
	margin-top: 15px;
}

#services_page .four_col div {
	margin-top: 0;
}

/* People
----------------------------------------------- */
#content #people_div h2 {
	color: #454748;
	line-height: 1;
	float: none;
	width: 100%;
	margin: 0 0 4px;
	font-weight: bold;
	font-size: 11px;
	font-family: 'Helvetica Neue', helvetica, arial, sans-serif;
}

#content #people_div h3 {
	line-height: 1;
	margin-bottom: 8px;
	color: #454748;
	font-size: 11px;
}

#content #people_div p {
	color: #808080;
}

#content #people_div p strong {
	font-weight: normal;
	color: #808080;
}

#collaborators h4 {
	margin-bottom: 3px;
}

#co_h3 {
	float: left;
	width: 100%;
	padding-top: 16px;
	margin-top: 2px;
}

/* Contact form
----------------------------------------------- */
#contact_copy {
	float: left;
	width: 280px;
	margin: 3px 20px 0 0;
}

#contact_copy p {
	margin-bottom: 12px;
	font-size: 11px;
}

#contact_copy p:first-child {
	font-size: 12px;
}

#contact_div {
	float: left;
	width: 580px;
}	

#contact_form {
	margin: 0;
	width: 580px;
}

#contact_form fieldset {
	margin-bottom: 19px;
	padding-bottom: 19px;
	border-bottom: 1px solid #e8e8e7;
}

#contact_form label {
	float: left;
    width: 130px;
    margin: 0 20px 0 0;
	padding-top: 4px;
	letter-spacing: 1px;
	text-transform: uppercase;
	font-weight: normal;
	font-size: 10px;
}

#contact_form label.antispam {
	line-height: 110%;
}

#contact_form label.antispam span {
	font-weight: normal;
	font-style: italic;
	font-size: 10px;
}

#contact_form fieldset div.field {
	float: left;
	width: 420px;
}

#contact_form fieldset div.field input.textinput {
	width: 416px;
	padding: .3em;
	font-size: 13px;
}

#contact_form fieldset div.field input.shorttextinput {
	width: 130px;
	padding: .3em;
	font-size: 13px;
}

#contact_form fieldset div.field textarea {
	width: 420px;
	padding: .3em;
	font-size: 13px;
	overflow: auto;
	font: normal 12px/1.3 'Helvetica Neue', helvetica, arial, sans-serif;
}

#contact_form div.submit {
	padding-left: 150px;
}

input.button {
	padding: 1px;
	font-size: 13px;
}



/* Footer
----------------------------------------------- */
#footer {
	width: 880px;
	float: left;
	margin: 30px 0 10px;
	border-top: 1px solid #eaeaea;
	padding-top: 10px;
}

.footer_section {
	width: 280px;
	float: left;
	margin-left: 20px;
	display: inline;
}

#footer p {
	color: #808080;
	font-size: 11px;
}

#footer p a {
	font-size: 11px;
}

#footer_first {
	margin-left: 0px;
}

#footer_first p {
	width: 130px;
	float: left;
	margin-right: 20px;
}

#footer a:link, #footer a:visited {
	color: #808080;
	text-decoration: none;
}

#footer a:hover {
	color: #808080;
	text-decoration: underline;
}

#footer_first p.second {
	margin-right: 0;
}

#footer_third {
	float: right;
	width: 130px;
}

/*****************************************************************************
scalable Inman Flash Replacement (sIFR) version 3.

Copyright 2006 – 2008 Mark Wubben, <http://novemberborn.net/>

Older versions:
* IFR by Shaun Inman
* sIFR 1.0 by Mike Davidson, Shaun Inman and Tomas Jogin
* sIFR 2.0 by Mike Davidson, Shaun Inman, Tomas Jogin and Mark Wubben

See also <http://novemberborn.net/sifr3> and <http://wiki.novemberborn.net/sifr3>.

This software is licensed and provided under the CC-GNU LGPL.
See <http://creativecommons.org/licenses/LGPL/2.1/>
*****************************************************************************/

@media screen {
  .sIFR-flash {
    visibility: visible !important;
    margin: 0;
    padding: 0;
  }
  
  .sIFR-replaced, .sIFR-ignore {
    visibility: visible !important;
  }
  
  .sIFR-alternate {
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    display: block;
    overflow: hidden;
  }
  
  .sIFR-replaced div.sIFR-fixfocus {
    margin: 0pt; 
    padding: 0pt; 
    overflow: auto; 
    letter-spacing: 0px; 
    float: none;
  }
}

@media print {
  .sIFR-flash {
    display    : none !important;
    height     : 0;
    width      : 0;
    position   : absolute;
    overflow   : hidden;
  }
  
  .sIFR-alternate {
    visibility : visible !important;
    display    : block   !important;
    position   : static  !important;
    left       : auto    !important;
    top        : auto    !important;
    width      : auto    !important;
    height     : auto    !important;
  }
}

/*
Place CSS rules for to-be-replaced elements here. Prefix by .sIFR-active
so they only apply if sIFR is active. Make sure to limit the CSS to the screen
media type, in order not to have the printed text come out weird.
*/

@media screen {
  .sIFR-active .spotlight_item h3 {
	line-height: 1;
    font-family: Georgia;
    font-size: 19px;
	color: #454748;
    visibility: hidden;
  }

  .sIFR-active #case_port h1, .sIFR-active #content h1,  {
	line-height: 1;
    font-family: Georgia;
    font-size: 20px;
	color: #454748;
    visibility: hidden;
  }
}

.sIFR-dummy { 
  width: 0px;
  height: 0px;
  margin-left: 42px !important;
  z-index: 0;
}