
/* Forces vertical scrollbar */
html { height: 100%; margin-bottom: 1px; }
* html { margin-bottom: 0; }

.hidden {	display: none !important; } 

.visible {	display: block !important; } 

.invisible {	visibility: hidden; } 


body {
	padding: 0;
	font: 80% Verdana;
	color: #999999;
	text-align: center;
}
p { }
td { }
a:link, a:visited {color: #666666; text-decoration: none; }
a:hover, a:active {color: black;}
img { border: none; }

h1 {
	font-size: 1.6em;
	font-weight: normal;
	margin: 5px 0 0 0;
	color: #666666;
}

h1.section, h2.section {
	border-bottom: 1px dotted black;
	font-size: 1em;
	font-weight: bold;
	text-transform: uppercase;
	padding-bottom: 4px;
	margin: 0 0.5em 5px 0;
	color: #333333;
}
h1.section em {
	font-weight:  normal;
	font-style:  normal;
}

h3 {
	font-size: 1em;
	font-weight: bold;
}


ul.plain {
	margin: 0;
	padding: 0;
}
ul.plain li {
	list-style: none;
	padding: 0;
}

.tabs {
	margin: 0;
	padding: 0;
}

.tabs li {
	list-style: none;
	float: left;
	margin: 0;
}

.tabs li a {
	float: left;
	border: 1px solid #dddddd;
	border-bottom: none;
	background-color: #dddddd;
	margin-right: 5px;
	height: 2em;
	line-height: 2em;
	padding: 0 5px;
}

.tabs li a:hover {
	background-color: #efefef !important;
}

.tabs li.active a {
	background-color: #efefef !important;
	cursor: default;
}

.tabs li.active {
	background-color: white !important;
}

table {
	padding: 0;
	border-collapse: collapse;
	margin: 5px 0;
}

.invisibleTable td, .invisibleTable th {
	border: none;
	padding: 0 5px 0 0;
}


td, th {
	padding: 1px 5px;
	border: 1px solid #CCCCCC;
	vertical-align:top;
}

.bigForm td {
	border-bottom: 1px solid #DDDDDD;
	padding: 3px 5px;
}


.wholeWord {
	white-space: nowrap;
	background: none !important;
}


input {
	margin-bottom: 5px;
}

hr { clear: both; visibility: hidden; height: 1px; }

.greyBox { background-color: #EFEFEF !important; }

.normalCase { text-transform: none !important; }


.preloader { 
	height: 0px;
	width: 0px;
	padding: 0px;
	margin: 0px;
	background: transparent 0px 0px no-repeat;
}

#container {
	width: 900px; 
	margin: 0 auto; 
	text-align: left;
	text-transform: uppercase;
}

#topnav { 
	background-image: url(../images/topnav_bg.gif); 
	background-repeat: repeat-x; 
	background-position: left top; 
	border-left: 1px solid #CCCCCC; 
	border-right: 1px solid #CCCCCC; 
	text-transform: uppercase; 
	height: 40px; 
	line-height: 0;
}

#topnav_upper {
	list-style:  none;
	margin: 0;
	height: 22px;
	padding: 0;
	float: left;
}
#topnav_upper li {
	float: left; 
	border-left: 1px solid white; 
	margin: 0;
	padding: 0;
}
#topnav_upper .first {
	border-left: 0px;
}

#topnav_lower {
	list-style:  none; 

	height: 20px;
	margin: 0;
	padding:  0;
}
#topnav_lower li {
	float: right; 
	width: 74px; 
	border-left: 1px solid white; 
}
#topnav_lower .first {
	border: 0;
}

#topnav_upper li a {
	display:  block;
	height: 22px;
	width: 149px;
}

#topnav_lower li a {
	display:  block;
	height: 18px;
	width: 74px;
}


#topnav_whatwedo a { background-image: url(/images/nav/topnav_whatwedo.gif); }
#topnav_whatwedo_hover, #topnav_whatwedo a:hover { background-image: url(/images/nav/topnav_whatwedo_hover.gif); }

#topnav_projects a { background-image: url(/images/nav/topnav_projects.gif); }
#topnav_projects_hover, #topnav_projects a:hover { background-image: url(/images/nav/topnav_projects_hover.gif); }

#topnav_clients a { background-image: url(/images/nav/topnav_clients.gif); }
#topnav_clients_hover, #topnav_clients a:hover { background-image: url(/images/nav/topnav_clients_hover.gif); }

#topnav_tips a { background-image: url(/images/nav/topnav_tips.gif); }
#topnav_tips_hover, #topnav_tips a:hover { background-image: url(/images/nav/topnav_tips_hover.gif); }

#topnav_my a { background-image: url(/images/nav/topnav_my.gif); }
#topnav_my_hover, #topnav_my a:hover { background-image: url(/images/nav/topnav_my_hover.gif); }

#topnav_contact a { background-image: url(/images/nav/topnav_contact.gif); }
#topnav_contact_hover, #topnav_contact a:hover { background-image: url(/images/nav/topnav_contact_hover.gif); }

#topnav_about a { background-image: url(/images/nav/subnav_about.gif); }
#topnav_about_hover, #topnav_about a:hover { background-image: url(/images/nav/subnav_about_hover.gif); }

#topnav_recruitment a { background-image: url(/images/nav/subnav_recruitment.gif); }
#topnav_recruitment_hover, #topnav_recruitment a:hover { background-image: url(/images/nav/subnav_recruitment_hover.gif); }

#topnav_links a { background-image: url(/images/nav/subnav_links.gif); }
#topnav_links_hover, #topnav_links a:hover { background-image: url(/images/nav/subnav_links_hover.gif); }

#topnav_fun a { background-image: url(/images/nav/subnav_fun.gif); }
#topnav_fun_hover, #topnav_fun a:hover { background-image: url(/images/nav/subnav_fun_hover.gif); }

#topnav_home a { background-image: url(/images/nav/subnav_home.gif); }
#topnav_home_hover, #topnav_home a:hover { background-image: url(/images/nav/subnav_home_hover.gif); }

.recruit {
	color: #FF0000;
}
.recruit:hover {
	color: #000000;
}


#loginInfo {
	font-size: 0.8em;
	text-transform: none;
	padding: 0 0 0 4px;
	float: left;	
	line-height: 18px;
}


#banner {
	clear: left;
	padding: 4px 0 6px 0;
	margin: 5px 0;
	border: 1px dotted black; 
	border-style: dotted none;
	background: transparent 0px 5px no-repeat;
	height: 250px;
	position: relative;
}

#banner.short {
	height: 100px;
}

#banner.noBottomBorder {
	border-bottom: none !important;
	margin-bottom: 10px; 
}

#banner h1 {
	background: top left no-repeat;
	position: relative;
	z-index: 88;
	margin-top: 35px;
	color: white;
	font-size: 3em;
}

#banner.short h1 {
	margin-top: 20px;
}

#banner hr {
	display: none;
}

#bannerLoader {
	top: 5px;
	left: 0;
	position: absolute;
	z-index: 0;
}


#main {
	clear: left; 
	margin-top: 5px;
	}

#main p {
	/*font-size: 1.4em;*/
	line-height: 1.4em;
	margin: 0 0 1em 0;
	padding-right: 5px;
}

.bigp {
	/*font-size: 1.4em;*/
}

#main a:link, #main a:visited {color: #666666;}
#main a:hover, #main a:active {background-color: #DDDDDD; color: black;}
a.nohover:hover { background-color: transparent !important}

.topdots {border-top: 1px dotted black; }

a.onwards {
	font-size: 0.8em;
	font-weight:  bold;
	
}

a.onwards:link { color: #666666;}

/*** Columns ***/
.col {float: left; margin-left: 5px;}
/* columns 176px wide, 5px gap between each */
.width1 {width: 176px;}
.width2 {width: 357px;}
.width3 {width: 538px;}
.width4 {width: 718px;}
.width5 {width: 900px;}

.leftmost {margin-left: 0 !important}

.test {background-color: yellow}
.test2 {background-color: red}

.clearer {
	clear: both;
	font-size: 1px;
}



#footer {
	clear: both;
	float: left;
	margin-top: 9px;
	border-top: 1px dotted black;
	font-size: 0.8em;
	padding: 4px 5px;
	text-transform: uppercase;
	width: 890px;
}

#footer_left {
	float: left;
	margin: auto 0;
}
#footer_right {
	float: right;
	background: url(/images/footer/distinctives.gif) top left no-repeat;
	height: 20px;
	width: 440px;
}

#footer a:hover, #footer a:visited:hover {
	background-color: transparent;
}




/* page: what we do */

.services {
	list-style: none;
	margin: 0;
	padding: 0;
	clear: both;
}

.serviceBox {
	float: left;
	width: 176px; 
	margin: 5px 0 0 5px;
}

.serviceBox a {
	display: block;
	height: 40px;
	background-color: #DDDDDD; 
	color: white;
	text-align:  center;
	vertical-align:  middle;
	line-height: 40px;
}

.serviceBox a:hover {
	background-color: #CCCCCC !important;
}

.liveTab {
	background-color: #CCCCCC !important;

	color: black !important;
	background: url(/images/service_tab.gif) top left no-repeat;
}

#serviceInfoHolder {

}

.serviceInfo {
	clear: both;
}
.serviceInfo h1 {
	clear: both;
	padding: 0;
	margin: 0;
	margin-top: 10px;
}
.serviceInfo p {
	clear: both;
	margin: 0;
	padding: 0;
}

/* projects */

.project_thumb {
	float: left;
	margin-left: 5px;
	margin-bottom: 14px;
	overflow: hidden;
}

.project_thumb h3 {
	font-size: 0.8em;
	font-weight: normal;
	margin: 0px;
	padding: 2px 0;
}

.project_thumb.longClientName h3 {
	font-size: 0.7em;
}

.project_thumb a {
	display: block;
}

.project_thumb:hover {
	background-color: #EEEEEE;
}

.project_thumb a:link, .project_thumb a:visited {
	color: #999999;
}

.project_thumb a:hover, .project_thumb a:visited:hover {
	color: black;
	background-color: transparent !important;
}

.project_thumbTiny {
	float: left;
	margin: 0 5px;
}

.project_thumbTiny img {
	opacity: 0.3;
	filter: alpha(opacity=30);
}

.project_thumbTiny:hover img , .project_thumbTiny.current img {
	filter: alpha(opacity=100);
	opacity: 1.0;
}

.project_thumbTiny.current img {
	cursor: default;
}


.projectLink {
	width: 85px;
	height: 30px;
	background: #BBBBBB url(/images/numbers/1.png) left top no-repeat;
	float: left;
	margin-left: 5px;
}

.projectLink.active {
	background-color: #666666 !important;
	cursor: default;
}

.projectPreview {
	background-color: #ededed; 
	position: absolute;
}

.projectPreview a {
	display: block; 
	border: 1px solid #999999; 
	padding: 5px; 
	width: 73px; 
	height: 70px; 
	background: top center no-repeat; 
	position: relative;
}

.projectPreview span {
	position: absolute; 
	bottom: 0; 
	left: 0; 
	padding: 2px; 
	width: 79px; 
	background-color: #FFFFFF; 
	opacity: 0.75; 
	color: black;
	font-size: 0.8em;
	overflow: hidden;
	text-transform: none;
}


/* project  */

#factfile {
	font-size: 0.8em;
}

#factfile h2 {
	font-size: 1.6em;
	background-color: #DDDDDD;
	margin: 0;
	padding: 5px;
	font-weight: bold;
	color: #444444;
}


#factfile h3 {
	font-size: 1em;
	background-color: #DDDDDD;
	margin: 0;
	padding: 5px;
	font-weight: bold;
	color: #444444;
	border-bottom: 1px dotted #CCCCCC;
}

#factfile #blurb {
	padding: 5px;
	margin: 0 0 5px 0;
	background-color: #DDDDDD;
}

#factfile ul#nav {
	list-style: none;
	padding: 5px;
	margin: 0 0 5px 0;
	background-color: #CCCCCC;
}

#factfile #nav a {
	display: block;
	float: left;
	clear: left;
	width: 163px;
	padding: 1px 0;
}

#factfile #nav a.current { color: #663399; }


/* using the child selector, IE won't notice this */
#factfile ul#nav li>a {
	float: none;
	width: 100%;
}

#factfile p {
	margin: 0 0 10px 0;
}

.projectViewThumb {
	margin: 0 0 5px 5px;
	float: left;
	width: 85px;
	height: 80px;
}

.projectViewThumb img {
	opacity: .5;
	filter: alpha(opacity=50);
}


.projectViewThumb:hover img {
	opacity: 1;
	filter: alpha(opacity=100);
}

.projectViewThumb img.current {
	opacity: 1 !important;
	filter: alpha(opacity=100) !important;
}

div#moreInfo {
	background-color: #FFFFFF;
	opacity: .8;
	filter: alpha(opacity=80);
	height: 300px;
	color: #333333;
}

div#moreInfo h3 {
	margin: 0;
}

div#moreInfo div {
	padding: 20px;
}




/* clients page */

.clients {
	list-style: none;
	padding: 0;
	margin: 0;
}

.clients li {
	margin-left: 5px;
	margin-bottom: 2px;
	float: left;
	padding: 0;
}






ul.form, .form ul {
	margin-left: 20px;
	padding: 0;
	list-style: none;
}

.formField {
	float: left;
	clear: both;
	width: 100%;
	margin: 2px 0;
}

.formField h3 {
	clear: both;
}

.formLabel {
	width: 166px;
	float: left;
	text-align: right;
	padding-right: 10px;
	padding-top: 3px;
}

.formControl {
	float: left;
}

input, select, textarea {
	font-size: 0.9em;
	background: #fafafa center right no-repeat;
	border: 1px solid #cccccc;
	padding: 2px;
	vertical-align: middle;
	text-transform: none;
}

textarea {
	font: 0.9em Verdana;
	height: 12em;
}

select.width2 {
	width: 363px; 
}

input:hover, select:hover, textarea:hover {
	background-color: #f4f4f4;
}

input:focus, select:focus, textarea:focus {
	background-color: #f0f0f0;
	border-color: #999999;
}



ul.list li {
	list-style-image: url(/images/bullet.gif);
}




.fancyText {
	text-indent: -3000px;
	max-width: 1000px;
	background: top left no-repeat;
}



.contactBox {
	

}

a.contactBox, a:visited.contactBox  {
	color: #efefef;
	height: 50px;
	display: block;
	padding: 30px 5px 5px 5px;
	background-color: #AAAAAA; 
	width: 210px; 
	float: left; 
	margin-left: 10px; 
	font-size: 1.4em; 
	font-weight: bold; 
	text-align: center;
}
a:hover.contactBox, a:visited:hover.contactBox {
	color: white;
	background-color: #BBBBBB;
}	




/* Tips */

div.articlePreview {
	padding: 0 10px;
}

ul.articles {
	margin: 0;
	padding: 0;
	text-transform: none;
}

ul.articles li {
	padding: 0;
	list-style: none;
}
ul.articles li a.bar {
	line-height: 34px;
	padding: 0 5px;
	display: block;
	color: #333333;
	background: #eeeeee url(/images/article_bar_hover.gif) top left repeat-x;
}
ul.articles li a.bar:hover, ul.articles li a.bar:visited:hover {
	background-image: url(/images/article_bar.gif);
}

ul.articles li div.article div {
	padding: 10px 5px;
}

ul.articles li ul {
	padding-left: 12px;
}

ul.articles li ul li {
	list-style: circle;
}


div.article {
	color: #333333;
	text-transform:none;
}

div.article a, div.article a:visited {
	text-decoration: underline;
}



.contactForm {
	background-color: #efefef;
	border: 1px solid #999999;
	padding: 5px 10px;
	width: 500px;
	position: absolute;
	z-index: 999;
	opacity: 0.95;
	filter: alpha(opacity=95);
}

.contactForm #closeContactForm {
	float: right;
	font-weight: bold;
}

.contactForm h2 {
	margin: 10px 0;
}


.message { border: 1px solid black; background-color: #FFFFCC; padding: 5px; color: black; font-weight: bold; }
.error { padding-left: 30px; background: #FFCCCC url(../images/icons/error.png) 5px center no-repeat; }


.loginform label { clear: both; float: left; width: 120px; }



.fileTable {
	
}
.fileTable thead td { font-weight: bold; background-color: #eeeeee; }
.fileTable td { padding: 5px; }
.fileTable img { vertical-align: middle; margin-right: 5px; }

.upload { padding: 5px 10px; background-color: #fafafa; border: 1px solid #eeeeee; margin: 20px 0; }
.upload select { margin-right: 10px; }
.upload input { margin-left: 10px; }
.upload h1 { padding-bottom: 10px; }