/* Base Reset & Fonts
------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0;padding:0;}
table {border-collapse:collapse;border-spacing:0;}
th, td {vertical-align:top;}
fieldset, img {border:0;}
abbr,acronym {border:0;}
body {font:13px Arial,Helvetica,clean,sans-serif;}
table {font-size:inherit;}
select,input,textarea {font:99% Arial,Helvetica,clean,sans-serif;}
pre,code {font:115% monospace;}
body * {line-height:1.22em;}
label {cursor:pointer;}
address,caption,code,dfn,th,var {font-style:normal;font-weight:normal;}
ol,ul {list-style:none;}
caption,th {text-align:left;}
q:before,q:after {content:'';}


/* Main Structure - DO NOT CHANGE THIS SECTION!!
------------------------------------------------- */
#wrap {position:relative;}
#pri, #sec, #ter {float:left;}
#pri {width:100%;}
#sec {position:relative;left:-100%;}
#ft {clear:both;position:relative;}
.grid-2 .col, .grid-4 .grid-2 {float:right;display:inline;}
.grid-2 div.first, .grid-4 div.first, .grid-3 .col {float:left;}
.grid-2 .col, .grid-4 .grid-2, .grid-4 .grid-2 .col {width:50%;}
.grid-3 .col {width:33%;}
body#onecol #sec, body#onecol #ter, body#twocol-left #ter, body#twocol-right #sec {display:none;}
body#onecol #pri .pad {margin:0;}
body#twocol-left #pri .pad {margin-right:0;}
body#twocol-right #pri .pad {margin-left:0;}

body.homepage .grid-3 {min-height:159px;}

body.homepage .grid-3 div.first {
width:275px;
padding:14px 30px 0 17px;
}

body.homepage .grid-3 div.news {
/*width:354px; width=572, removed supporting column*/
width:572px;
padding:14px 16px 0 40px;
}

body.homepage .grid-3 div.supporting {
width:151px;
padding:40px 37px 0 30px;
}

#whatwedo div.first, #whoweare div.first {
width:262px;
padding-right:20px;
}

#whatwedo .col, #whoweare .col {width:240px;}

body.news .grid-3 .img {width:151px;}
body.news .grid-3 .text {width:298px;padding-right:12px;}
body.news .grid-3 div.first {width:375px;padding-right:20px;}

/* Widths & Footer height
------------------------------------------------- */
#wrap, #ft {
margin:0 auto;
width:950px;
}

#pri .pad {
margin:0 360px 0 234px;
padding:0 0 0 77px;
}

body.homepage #pri .pad {
padding:0;
min-height:150px;
}

body.news #pri .pad {
padding:0 30px 0 59px;
min-height:313px;
}

body.portfolio #pri .pad {
padding:43px 80px 0 198px;
min-height:527px;
}

body#threecol #pri .pad {
padding-top:250px;
padding-left:0;
}

body#twocol-right #pri .pad {padding-left:64px;}

#sec {
width:218px;
padding:0 8px 8px;
margin-right:-234px;
}

#ter {
width:360px;
margin-left:-360px;
}


/* General fonts
------------------------------------------------- */

/* A handy pixel to percent font conversion */
/*
10px / 77%
11px / 85%
12px / 92%
13px / 100%
14px / 107%
15px / 114%
16px / 122%
17px / 129%
18px / 136%
19px / 144%
20px / 152%
21px / 159%
22px / 167%
23px / 174%
24px / 182%
25px / 189%
26px / 197%
*/

/* 
	+++ VERY IMPORTANT+++
		The default font for these templates is 13px Arial, set on the <body> element.
		NEVER set a font-size or font-family on the <body> element.
		ALWAYS override using a child of <body>, with the pixel-equivalent percentage value for the font size, as documented above.
		
		EG: #pagewrap p {font-family:Verdana,Arial,Helvetica,sans-serif;}
		would set every <p> within #pagewrap to Verdana.
		It is better to set font-sizes on elements rather than containers.
*/

#wrap, #ft {font-family:Verdana, Arial, Helvetica, sans-serif;}
h1 {font-size:136%;}
#pri #intro p, #pri #intro-who p {font-size:114%;line-height:1.66em;}
h2 {font-size:85%;}
body.homepage #pri h2 {font:normal 174% "Arial Narrow", Arial, Helvetica, sans-serif;}
body.portfolio #pri h1 {font:normal 152% "Arial Narrow", Arial, Helvetica, sans-serif;}
h3 {font-size:85%;}
#pri p, #pri li, #sec li, #sec .box h2, #sec .box p, #ft p, #ft li, #ft .vcard {font-size:85%;}
strong, b, .headline {font-weight:bold;}
em, i, cite {font-style:italic;}


/* Theme
------------------------------------------------- */
body {
background:#455560 url(cssimages/bg-body-default.gif) repeat-x;
color:#fff;
}

#wrap {background:url(cssimages/bg-wrap.gif) repeat-x 0 84px;}
body#threecol #wrap, body.portfolio #wrap {background-image:url(cssimages/bg-wrap-portfolio.gif);}

body#threecol .port-landing {
background:url(cssimages/title-portfolio.gif) no-repeat 0 0;
}

a {
color:#00aeef;
text-decoration:none;
}

a:hover {text-decoration:underline;}
a.skip {position:absolute;left:-9999px;}

.imgleft {
float:left;
margin-right:12px;
}

#masthead {
position:relative;
padding:43px 0 0 0;
}

#logo a {
display:block;
background:url(cssimages/logo.png) no-repeat 0 7px;
width:162px;
height:41px;
text-indent:-9999px;
outline:none;
}

#nav {
width:396px;
position:absolute;
right:0;
margin-top:-26px;
}

#nav li {
float:left;
position:relative;
}

#nav a {
display:block;
background-image:url(cssimages/bg-nav.png);
background-repeat:no-repeat;
text-indent:-9999px;
height:26px;
outline:none;
}

#navwho a {
width:90px;
background-position:0 0;
}

#navwhat a {
width:97px;
background-position:-90px 0;
}

#navportfolio a {
width:95px;
background-position:-187px 0;
}

#navcontact a {
width:114px;
background-position:-282px 0;
}

#navwho a:hover, #navwho.current a {background-position:0 -26px;}
#navwhat a:hover, #navwhat.current a {background-position:-90px -26px;}
#navportfolio a:hover, #navportfolio.current a {background-position:-187px -26px;}
#navcontact a:hover, #navcontact.current a {background-position:-282px -26px;}

#splash {
clear:both;
width:950px;
height:411px;
background:#000;
}

#splash .alt {position:absolute;left:-9999px;}
#splash img {display:block;}

h1#what, h1#who, h1#contact {
text-indent:-9999px;
width:590px;
height:300px;
margin-left:-64px;
}

h1#what {background:url(cssimages/title-what.gif) no-repeat 0 0;}
h1#who {background:url(cssimages/title-who.gif) no-repeat 0 0;}
h1#contact {background:url(cssimages/title-contact.gif) no-repeat 0 0;}

h1#news {
display:block;
text-indent:-9999px;
width:950px;
height:257px;
background:url(cssimages/title-news.gif) no-repeat 0 0;
}

/*h1#news a {
display:block;
text-indent:-9999px;
width:950px;
height:257px;
background:url(cssimages/title-news.gif) no-repeat 0 0;
outline:none;
}*/

#pri {color:#7b8f9d;}

#pri p {
position:relative;
z-index:30;
margin-bottom:1.33em;
line-height:1.8em;
}

body.homepage #pri p {line-height:1.66em;}

body.homepage #pri h2 {
color:#455560;
margin-bottom:8px;
}

body.homepage #pri h3 {margin-bottom:2px;}
body.homepage .grid-3 {background:url(cssimages/bg-grid3.gif) repeat-y;}
body.homepage .grid-3 .supporting img {display:block;}

body.portfolio #pri h1 {
position:relative;
z-index:20;
color:#f78b35;
margin:0 0 8px;
}

body.portfolio #clientlogo {
z-index:11;
position:absolute;
top:84px;
left:170px;
}

#portfolionav {
z-index:10;
position:absolute;
top:84px;
left:226px;
height:33px;
width:297px;
padding:190px 0 0 201px;
}

#portfolionav li {
float:left;
padding:0 4px;
}

#portfolionav a {
display:block;
color:#455560;
}

#portfolionav a.wactive {text-decoration:underline;}

#pagewrap {
position:absolute;
left:0;
top:306px;
width:950px;
}

#pagewrap img {display:block;}

#details {margin:-250px 0 170px;}

#intro {
width:480px;
margin:-265px 0 185px;
}

#intro-who {
width:480px;
margin:0px 0 0px;
}

body#threecol #intro {
margin:0 0 0 -40px;
padding:54px 20px 0 0;
width:auto;
}

.port-landing h1 {
position:absolute;
left:-9999px;
}

#message {width:450px;}

#pri #whatwedo h2, #pri #whoweare h2 {
margin-bottom:10px;
}

#pri #whatwedo ul {
list-style:disc;
padding-left:13px;
}

#pri #whatwedo li {line-height:1.5em;}

body.news .item {
margin-bottom:30px;
}

body.news h3 {
color:#00aeef;
margin:6px 0 18px;
}

#sec {color:#7b8f9d;}

#subnav {
position:relative;
z-index:40;
padding:27px 0 0 8px;
}

#subnav li {padding:2px 0 4px 13px;}
#subnav li a {color:#455560;}

#sec .box {
position:absolute;
top:236px;
padding:0 34px 0 20px;
}

#sec .box h2 {
margin-bottom:8px;
color:#455560;
}

#sec .box p {line-height:1.66em;}

#secnav {
position:absolute;
left:526px;
}

#secnav a {
display:block;
width:206px;
height:30px;
background:url(cssimages/bg-secnav-people.gif) no-repeat 0 0;
text-indent:-9999px;
outline:none;
}

body.news div.first ul {margin-top:3px;}
body.news div.first li {margin-bottom:5px;}

#ter img {display:block;}

#ft p {
position:absolute;
right:2px;
top:66px;
color:#7b8f9d;
}

body.portfolio #ft p {color:#fff;}

body.startrust #ft, body.startrust #ft p, body.startrust #ft a {color:#333}
body.startrust #social-networks {color:#fff}
body.startrust #ft .vcard .extended-address, body.startrust #ft .vcard .postal-code, body.startrust #ft .vcard .tel {
border-right:1px solid #333;
}

#ft li {display:inline;}

#ft li a {
display:block;
float:left;
border-right:1px solid #fff;
padding:0 0.8em;
color:#fff;
text-decoration:none;
line-height:1em;
}

#ft li a:hover {text-decoration:underline;}

#ft li:last-child a, #ft li.lastchild a {
border-right:0;
margin-right:0;
padding-right:0;
}

#ft .vcard {padding-top:3px;}
body.homepage #ft .vcard {padding-top:5px;}

#ft .vcard * {
display:block;
float:left;
line-height:1.0;
padding-right:8px;
}

#ft .vcard .adr, #ft .vcard .contactus {padding:0;}

#ft .vcard .extended-address, #ft .vcard .postal-code, #ft .vcard .tel {
padding-right:8px;
margin-right:8px;
border-right:1px solid #fff;
}

#ft .org, #ft .country-name {
position:absolute;
left:-9999px;
}

#ft .vcard .fax {margin-right:0;}

/*#ft span.fax .desc {
position:relative;
left:0;
}*/

#social-networks {
background:#000;
}

#fb a, #fb img {
display:block;
width:193px;
height:64px;
}

#visit {
font-size:85%;
height:64px;
line-height:64px;
margin-left:22px;
}

#visit img {
margin-bottom:-7px;
}

#register {
position:absolute;
top:22px;
right:0;
width:607px;
}

#register div, #register h3 {
float:left;
margin-right:12px;
}

#register div.last {
margin-right:0;
}

#register h3 {
font-weight:normal;
padding-top:4px;
}

#register label {
margin-right:6px;
font-size:85%;
}

#register input.text {
width:140px;
padding:2px;
border:1px solid #7b8f9d;
margin-right:6px;
font-size:85%;
color:#7b8f9d;
}

/* Shadowbox styles
------------------------------------------------- */
#shadowbox_container, #shadowbox_overlay {
top:0;
left:0;
height:100%;
width:100%;
margin:0;
padding:0;
}

#shadowbox_container {
position:fixed;
display:block;
visibility:hidden;
z-index:999;
text-align:center;
}

#shadowbox_overlay {
position:absolute;
background-image:url(cssimages/shadowbox/overlay.png);
background-repeat:repeat;
}

#shadowbox {
position:relative;
margin:0 auto;
text-align:left;
}

#shadowbox_body {
position:relative;
margin:0;
padding:0;
border:1px solid #fff;
overflow:hidden;
}

#shadowbox_body_inner {
position:relative;
height:100%;
}

#shadowbox_content.html {
height:100%;
overflow:auto;
}

#shadowbox_loading {
position:absolute;
top:0;
width:100%;
height:100%;
}

#shadowbox_body, #shadowbox_loading {
background-color:#060606;
}

#shadowbox_loading_indicator {
float:left;
margin:10px 10px 0 10px;
height:32px;
width:32px;
background-image:url(cssimages/shadowbox/loading.gif);
background-repeat:no-repeat;
}

#shadowbox_loading span {
font-family:'Lucida Grande', Tahoma, sans-serif;
font-size:10px;
float:left;
margin-top:16px;
}

#shadowbox_loading span a:link, #shadowbox_loading span a:visited {
color:#fff;
text-decoration:underline;
}

#shadowbox_title, #shadowbox_info {
position:relative;
margin:0;
padding:0;
overflow:hidden;
}

#shadowbox_title_inner, #shadowbox_info_inner {
position:relative;
font-family:'Lucida Grande', Tahoma, sans-serif;
line-height:16px;
}

#shadowbox_title {
height:26px;
}

#shadowbox_title_inner {
font-size:16px;
padding:5px 0;
color:#fff;
}

#shadowbox_info {
height:20px;
}

#shadowbox_info_inner {
font-size:12px;
color:#fff;
}

#shadowbox_nav {
float:right;
height:16px;
padding:2px 0;
width:45%;
}

#shadowbox_nav a {
display:block;
float:right;
height:16px;
width:16px;
margin-left:3px;
cursor:pointer;
}

#shadowbox_nav_close {
background-image:url(cssimages/shadowbox/close.png);
background-repeat:no-repeat;
}

#shadowbox_nav_next {
background-image:url(cssimages/shadowbox/next.png);
background-repeat:no-repeat;
}

#shadowbox_nav_previous {
background-image:url(cssimages/shadowbox/previous.png);
background-repeat:no-repeat;
}

#shadowbox_nav_play {
background-image:url(cssimages/shadowbox/play.png);
background-repeat:no-repeat;
}

#shadowbox_nav_pause {
background-image:url(cssimages/shadowbox/pause.png);
background-repeat:no-repeat;
}

#shadowbox_counter {
float:left;
padding:2px 0;
width:45%;
}

#shadowbox_counter a {
padding:0 4px 0 0;
text-decoration:none;
cursor:pointer;
color:#fff;
}

#shadowbox_counter a.shadowbox_counter_current {
text-decoration:underline;
}

div.shadowbox_clear {
clear:both;
}

div.shadowbox_message {
font-family:'Lucida Grande', Tahoma, sans-serif;
font-size:12px;
padding:10px;
text-align:center;
}

div.shadowbox_message a:link, div.shadowbox_message a:visited {
color:#fff;
text-decoration:underline;
}

/* sIFR
------------------------------------------------- */
.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;
}


/* sIFR Header Styles
------------------------------------------------- */
.sIFR-active body.homepage #pri h2, .sIFR-active body.portfolio #pri h1 {
font-family:Verdana;
visibility:hidden;
margin:0;
}


/* Clearfix
------------------------------------------------- */
.grid-2:after, .grid-3:after, .grid-4:after, #wrap:after {
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
}