@charset "utf-8";

/**
* defaults
*/

html,body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,form,fieldset,legend{
	margin:0;
	padding:0;
	border:0;
	line-height:1.2;
	font-weight:normal;
	font-family:Helvetica, Arial, sans-serif;
}

ul,ol{
	list-style:none;	
}

h2{
	font-size:2.5em;
	padding:20px 0 33px 0;
	font-weight:bold;
}

h3{
	font-size:1.4em;
	line-height:1.5;
	font-weight:bold;
	padding-bottom:10px;
	color:#666;
}

h4{
	font-size:1.4em;
	font-weight:bold;
	padding-bottom:5px;
}

h5{

}

p{
	font-size:1.2em;
	line-height:1.3;
	padding-bottom:15px;
}

a,
a:link,
a:visited{
  outline: none;
}

:focus
{
  -moz-outline-style: none;
}

dl{

}

dt{

}

dd{

}

dd a,
dd a:link,
dd a:visited{

}

img{
	border:0;	
}

strong{
	font-weight:bold;
}

em{
	font-style:normal;
}

/**
* structural
*/

#body{
	font-size:62.5%;
/*	background:url(images/body-background-repeat.png) repeat-x left bottom #252525;*/
	background:#252525;
	color:#9c9c9c;	
}

#site{
	background:url(images/body-background-repeat.png) repeat-x left bottom #1c1c1c;
	border-bottom:9px solid #000;
}

#outer{
	width:900px;
	margin:0 auto;
	background:url(images/outer-background-repeat.png) repeat-y;
}

#header{
	padding:0 48px 0 65px;
	height:140px;
	overflow:hidden;
	background:url(images/header-back.png) no-repeat 778px -14px;
}

#content{
	padding:50px 60px 20px 60px;
	background:url(images/content-back.png) no-repeat 7px 0;
}

/**
* logo
*/

#logo{
	float:right;	
	margin-top:32px;
}

#logo h1 a,
#logo h1 a:link,
#logo h1 a:visited{
	display:block;
	text-indent:-9999px;
	background:url(images/logo.png) no-repeat;
	width:164px;
	height:86px;
}

/**
* contact
*/

#contact{
	float:left;
	width:400px;
	height:40px;
	overflow:hidden;
	margin-top:30px;
}

#contact span.text{
	display:block;
	font-size:1.2em;
	color:#959595;
	padding:8px 0 8px 34px;
	background:url(images/contact-background.png) no-repeat;
}

#contact a,
#contact a:link,
#contact a:visited{
	color:#959595;
	font-weight:normal;
	text-decoration:none;
}

/**
* topnav
*/

#topnav{
	float:left;
	width:365px;
	height:31px;
	clear:left;
	margin-top:20px;
	background:url(images/top-nav-back.png) no-repeat -0px -2px;
}

#topnav li{
	float:left;
	padding-bottom:0px;
}

#topnav li a,
#topnav li a:link,
#topnav li a:visited{
	color:#767676;
	font-size:2.4em;
	text-decoration:none;
	float:none;
	display:block;
	width:100%;
	height:100%;
	clear: both;
	text-transform:lowercase;
	font-weight:bold;
	text-indent:-9999px;
}

#topnav li.selected{
	background:url(images/topnav-item-back-sprite.png) repeat-x;
}

/**
* banner
*/

#banner{
	background:url(images/banner-back.jpg) no-repeat;
	width:883px;
	height:245px;
	overflow:hidden;
	margin:0 0 0 7px;
}

/**
* footer
*/

#footer{
	width:882px;
	margin:0 auto;
	padding:15px 0;
	color:#9c9c9c;
	font-size:1.2em;
	border-top:1px dotted #9c9c9c;
}

#footer div.left{
	float:left;
}

#footer div.right{
	float:right;
	padding-right:50px;
}

#footernav{
	padding-left:50px;	
}

#footernav ul{
	display:inline;	
}

#footernav li{
	float:left;
	padding-right:3px;
}

#footer a,
#footer a:link,
#footer a:visited{
	color:#9c9c9c;
	text-decoration:none;
}

#footernav a:hover{
	text-decoration:underline;
}

#footernav #copyright{
	float:left;	
}

#credit{
	width:882px;
	height:100px;
	margin:0px auto;
	background:url(images/bottom-credit.png) no-repeat 50px 30px;;
}

/**
* misc
*/

div.clear{
	float:none;
	clear:both;
	height:0px;
	overflow:hidden;
}

p.small{
	font-size:9px;
}

/**
* images
*/

img.left{
	float:left;
	margin:0 15px 15px 0;
	border:2px solid #CCC;
}

img.right{
	float:right;
	margin:0 0 15px 15px;
	border:2px solid #CCC;
}

img.center{
	display:block;
	float:none;
	clear:both;
	margin:10px auto;
}

img.clear{
	display:block;
	float:none;
	clear:both;
	margin:10px 0;
}

/* content columns */

.colA{
	float:left;
	width:382px;
}

.colB{
	float:right;
	width:351px;
}

/*
* content styling
*/

.colA ul,
.colB ul{
	border-left:1px dotted #5e5e5e;
	padding-left:9px;
	margin-bottom:15px;
}

.colA ul li,
.colB ul li{
	background:url(images/bullet.png) no-repeat 0 3px;
	padding:0 0 2px 18px;
	line-height:1.1;
	font-size:1.2em;
}

/*
* services list
*/

#services ul{
	float:left;
	margin:0 18px 38px 0;
}

/*
* orange
*/

div.orange h2,
div.orange em,
div.orange #content ul li,
div.orange #content a,
div.orange #content a:link,
div.orange #content a:visited{
	color:#ec5200;	
}

div.orange #topnav li:hover,
div.orange #topnav li.selected{
	background-position:0 -28px;
}

div.orange #logo h1 a,
div.orange #logo h1 a:link,
div.orange #logo h1 a:visited{
	background-position:0 0;	
}

/*
* green
*/

div.green h2,
div.green em,
div.green #content ul li,
div.green #content a,
div.green #content a:link,
div.green #content a:visited{
	color:#9FDF01;	
}

div.green #topnav li.selected{
	background-position:0 -197px;
}

div.green #logo h1 a,
div.green #logo h1 a:link,
div.green #logo h1 a:visited{
	background-position:0 -258px;	
}

/*
* purple
*/

div.purple #banner{
	background-image:url(images/banner-back-home.jpg);
}

div.purple h2,
div.purple em,
div.purple #content ul li,
div.purple #content a,
div.purple #content a:link,
div.purple #content a:visited{
	color:#ad0069;	
}

div.purple h2{
	padding-top:0;	
}

div.purple #topnav li.selected{
	background-position:0 -255px;
}

div.purple #logo h1 a,
div.purple #logo h1 a:link,
div.purple #logo h1 a:visited{
	background-position:0 -344px;	
}

/*
* blue
*/

div.blue #banner{
	background-image:url(images/banner-back-services.jpg);
}

div.blue h2,
div.blue em,
div.blue #content ul li,
div.blue #content a,
div.blue #content a:link,
div.blue #content a:visited{
	color:#00a3f6;	
}

div.blue #topnav li.selected{
	background-position:0 -142px;
}

div.blue #logo h1 a,
div.blue #logo h1 a:link,
div.blue #logo h1 a:visited{
	background-position:0 -172px;	
}

/*
* red
*/

div.red #banner{
	background-image:url(images/banner-back-contact.jpg);
}

div.red h2,
div.red h3,
div.red #content ul li,
div.red #content a,
div.red #content a:link,
div.red #content a:visited{
	color:#B11122;
}

div.red #topnav li.selected{
	background-position:0 -85px;
}

div.red #logo h1 a,
div.red #logo h1 a:link,
div.red #logo h1 a:visited{
	background-position:0 -86px;	
}

div.red strong{
	color:#B11122;
	font-weight:normal;
}

/*
* work
*/

div.work #banner{
	height:453px;
	background:none;
	overflow:hidden;
}

/* slider */


#kamPortfolio {  
	display:block;
	margin-top:9px;
	height:444px;
	width:884px;
	overflow:hidden;
	background:url(images/slider/banner-background.jpg) no-repeat 0 0;
}

#kamSliderControlsPrev,
#kamSliderControlsNext{ 
	display:block; 
	position:absolute; 
	cursor:pointer; 
	width:28px; 
	height:28px;
	text-indent:-9999px;
	background:url(images/slider/button-prev.png) no-repeat center;
	margin-top:480px;
	z-index:250;
}

#kamSliderControlsNext{ 
	background:url(images/slider/button-next.png) no-repeat center;  
	margin-left:855px;
}

#kamPortfolioGrid div h2{
	display:block;
	float:left;
	width:176px;
	margin:340px 0 0 45px;
	height:29px;
	padding:0 15px;
	text-align:left;
	font-size:1.1em;
	font-weight:normal;
	background:url(images/slider/h2-back.png) no-repeat;
}

#kamPortfolioGrid div h2 strong{
	font-weight:normal;
	color:#FFF;
}

/* branding images */

#kamPortfolioGrid div.branding{
	display:block;
	width:100%;
	height:100%;
	overflow:hidden;
	background:url(images/slider/branding-background.png) no-repeat 140px 5px;
}

#kamPortfolioGrid div.branding div{
	display:block;
	float:left;
	width:378px;
	height:228px;
	margin:115px 50px 50px 92px;
	overflow:hidden;
}

#kamPortfolioGrid div.branding img{
	display:block;
}

/* web images */

#kamPortfolioGrid div.web h2{
	margin:10px 0 0 170px;
}

#kamPortfolioGrid div.web h2 a,
#kamPortfolioGrid div.web h2 a:link,
#kamPortfolioGrid div.web h2 a:visited{
	color:#fff;
	text-decoration:none;
}

#kamPortfolioGrid div.web{
	display:block;
	width:100%;
	height:100%;
	overflow:hidden;
	background:url(images/slider/web-background.png) no-repeat 175px 90px;	
}

#kamPortfolioGrid div.web div{
	display:block;
	width:361px;
	height:228px;
	margin:111px 50px 50px 273px;
	overflow:hidden;
}

#kamPortfolioGrid div.web img{
	display:block;
}

/* print images */

#kamPortfolioGrid div.print{
	display:block;
	width:100%;
	height:100%;
	overflow:hidden;
/*	background:url(images/banner-back-work.jpg) no-repeat 0 -9px;*/
}

#kamPortfolioGrid div.print div{
	display:block;
	float:left;
	width:535px;
	height:324px;
	margin:80px 0 50px 30px;
	overflow:hidden;
}

#kamPortfolioGrid div.print img{
	display:block;
}

/* portfolio nav */

div.work #portfolionav{
	padding-bottom:20px;	
}

div.work #portfolionav dt{
	float:left;
	padding:18px 10px 0 0;
	color:#9FDF01;
	font-size:1.2em;
}

div.work #portfolionav dd{
	float:left;
	padding-right:20px;
}

div.work #portfolionav ul{
	float:left;
	padding:0;
	border:0;
}

div.work #portfolionav ul li{
	float:left;
	width:22px;
	height:31px;
	margin:0 5px 0 0;
	padding:0;
	background:none;
}

div.work #portfolionav li a,
div.work #portfolionav li a:link,
div.work #portfolionav li a:visited{
	display:block;
	width:22px;
	height:31px;
	background:url(images/slider/nav-item-background.png) no-repeat;
	text-indent:-9999px;
}

div.work #portfolionav li.selected a,
div.work #portfolionav li.selected a:link,
div.work #portfolionav li.selected a:visited{
	background:url(images/slider/nav-item-background-selected.png) no-repeat;
}

/*
* contact
*/

div.contact #content{
	padding-bottom:0;	
}

div.contact #content .colA{
	width:420px;	
}

div.contact #content .colA h3{
	display:block;
	float:left;
	padding:14px 0 0 15px;
	font-size:1.2em;
}

div.contact #content .colB{
  border-left:1px dotted #5e5e5e;	
}

div.contact #content .colA ul{
	display:block;
	/*margin:20px 0 40px 0;	*/
	border:0;
}

div.contact #content .colA ul li{
	float:left;
	background:none;
	padding:5px 0 11px 0;
	margin:0 20px 0 0;
	font-size:1.1em;
}

div.contact #content .colA ul li a,
div.contact #content .colA ul li a:link,
div.contact #content .colA ul li a:visited{
	display:block;
	height:33px;
	padding-top:15px;
	color:#FFF;
	text-decoration:none;
}

div.contact #content .colA ul li.facebook a,
div.contact #content .colA ul li.facebook a:link,
div.contact #content .colA ul li.facebook a:visited{
	background:url(images/facebook-icon.png) no-repeat right;
	width:90px;
}

div.contact #content .colA ul li.facebook a:hover{
	background:url(images/facebook-icon-over.png) no-repeat right;	
}

div.contact #content .colA ul li.linkin a,
div.contact #content .colA ul li.linkin a:link,
div.contact #content .colA ul li.linkin a:visited{
	background:url(images/linked-icon.png) no-repeat right;
	width:87px;
}

div.contact #content .colA ul li.linkin a:hover{
	background:url(images/linked-icon-over.png) no-repeat right;
}

div.contact #content .colA ul li.twitter a,
div.contact #content .colA ul li.twitter a:link,
div.contact #content .colA ul li.twitter a:visited{
	background:url(images/twitter-icon.png) no-repeat right;
	width:75px;
}

div.contact #content .colA ul li.twitter a:hover{
	background:url(images/twitter-icon-over.png) no-repeat right;	
}

div.contact #content .colA ul li.email a,
div.contact #content .colA ul li.email a:link,
div.contact #content .colA ul li.email a:visited{
	background:url(images/email-icon.png) no-repeat right;
	width:70px;
}

div.contact #content .colA ul li.email a:hover{
	background:url(images/email-icon-over.png) no-repeat right;
}

#photo{
	background:url(images/mugshot.png) no-repeat; 
	height:216px;
	width:174px;
}

form{
	padding:0 0 0 20px;	
}

label,
input.text,
textarea,
select{
	font-family:Arial, Helvetica, sans-serif;
	font-size:1.2em;
	display:block;
	float:left;
	margin-bottom:8px;
	width:180px;
}

label{
	padding-top:3px;
	width:130px;	
}

textarea{
	height:47px;
}

input.submit{
	display:block;
	float:none;
	clear:both;
	margin-left:130px;
}

/*
* services
*/

div.services #content{
	padding-top:0;	
}

div.services #content h2{
	padding-bottom:20px;
}