/* --- Resets --- */

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 {
	outline: 0;
}

ol, ul {
	list-style: none;
}

.hide {
	display: none;
}

strong {
	font-weight: bold;
	color: #000;
}

.clear {
	clear: both;
}

/* --- Basic Styles --- */

body {
	background: #fff url(../images/bg-body.jpg)	top left repeat-x;
	font: 11px/20px "Lucida Grande", Tahoma, sans-serif;
	color: #545454;
}

body#subpage {
	background: #fff url(../images/bg-subbody.jpg) top left repeat-x;
}

p {
	margin: 0 0 15px 0;
}

#container {
	width: 900px;
	min-height: 100%;
    height: auto !important;
    height: 100%;
    margin: 0 auto -120px;
	text-align: left;
}

/* --- Link Styles --- */

a:link, a:visited {
	color: #1e9be4;
	text-decoration: none;
}
a:hover {
	color: #d16c36;
	text-decoration: underline;
}
a:active {
	color: #1e9be4;
	text-decoration: none;
}

/* -------------------------
--------- HOMEPAGE ---------
-------------------------- */

/* --- Top Header --- */

#top {
	width: 900px;
	height: 134px;
	background: transparent url(../images/bg-top.jpg) top left no-repeat;
	position: relative;
}

#top h1 {
	background: transparent url(../images/logo.png) top left no-repeat;
	text-indent: -9999px;
	width: 241px; height: 48px;
	margin: 27px 0 20px 0px;
	position:absolute;
	float: left;
}

/* --- Navigation --- */
#navcontainer {
	margin: 0px;
	padding: 0px;
	position: absolute;
	float: left;
	top: 95px;
	width:auto;
}


#navcontainer ul
{
	padding-left: 0;
	padding-top: 0;
	color: White;
	margin: 0;
	width: 100%;
}
#navcontainer ul li { display: inline; }
#navcontainer ul li a
{
	color: #ffffff;
	text-decoration: none;
	float: left;
	height: 31px;
	width: 108px;
	text-align: center;
	padding-top: 8px;
	margin: 0 5px 0 0;
	background: url(../images/bg-nav.jpg) top no-repeat;
}
#navcontainer ul li a:hover
{
background-position: 0 -39px;
color: #d16c36;
}
#navcontainer ul li a:active
{
background-position: 0 -39px;
color:#333333;
}
#navcontainer ul li.current {
	background-position: 0 -78px;
}

#navcontainer ul li.current a {
	background-position: 0 -78px;
	color: #333333;
}
/*#nav a {
display:block;
width: 108px;
height: 39px;
color:#ffffff;
background: url(../images/bg-nav.jpg) top no-repeat;
text-decoration: none;
line-height: 39px;
text-align: center;
margin: 0 5px 0 0;
float:left;

}
#nav a:hover { 
background-position: 0 -39px;
color: #d16c36;
}
#nav a:active {
background-position: 0 -39px;
color:#333333;
}

/* #nav {
	position: absolute;
	bottom: 0px;
}
#nav li:hover{
	background: url(../images/bg-nav-over.jpg) top no-repeat;
}

#nav li {
	display: block;
	background: url(../images/bg-nav.jpg) top no-repeat;
	width: 108px;
	height: 39px;
	line-height: 39px;
	float: left;
	text-align: center;
	margin: 0 5px 0 0;
}

#nav li a {
	color: #fff;
}

#nav li a:hover {
	color: #d16c36;
	text-decoration: none;
		width: 108px;
	height: 39px;
}
*/

#nav li.current {
	background-position: 0 -78px;
}

#nav li.current a {
	background-position: 0 -78px;
	color: #333333;
}
/*
#nav li a {
	display: inline;
	line-height: 39px;
	width: 108px;
	height: 39px;
}*/


/* --- Spotlight / Slider --- */

#spotlight {
	height: 315px;
	width: 900px;
	overflow: hidden;
	background: url(../images/bg-spotlight.jpg) top right no-repeat;
	position: relative;
}

#mover {
	position: relative;
	overflow: hidden;
	width: 3000px; /* Adjust the width based on spotlight-items number (1000*[items number]) */
}

#item {
	width: 820px;
}

.spotlight-item {
	margin: 15px 50px 0;
	overflow: hidden;
	width: 820px;
	float: left;
	position: relative;
	display: inline;
	height: 300px;
}

.spotlight-item h2 {
	color: #2a2a2a;
	font: 36px Arial, Helvetica, Verdana, sans-serif;
	font-weight: bold;
	margin: 0px 0 15px 0;
}

.spotlight-item p {
	color: #444;
	font: 11px/18px Arial, Helvetica, Verdana, sans-serif;
	padding: 0 0 0 2px;
}

.spotlight-item .description {
	margin: 40px 0 0 10px;
	width: 260px;
}

.spotlight-item img {
	position: absolute;
	top: 0; right: 0;
}

.launch {
	background: url(../images/launch.png) top left no-repeat;
	display: block;
	width: 95px;
	height: 25px;
	text-indent: -9999px;
	margin: 10px 0 0 -1px;
	cursor: pointer;
}

.pause {
	background: url(../images/pause.png) top left no-repeat;
	display: block;
	width: 97px;
	height: 25px;
	text-indent: -9999px;
	position: absolute;
	bottom: 2px; right: 20px; 
	cursor: pointer;
}

#spotlight img.preview {
	float: right;
}


/* --- MAIN CONTENT --- */

/* --- Content: First Row --- */

#mainContent {
	background: transparent url(../images/bg-maincontent.jpg) top left no-repeat;
	margin: 2px 0 0;
}

#topMain {
	padding: 13px 0 0 18px;
	margin: 0 0 20px 0;
	overflow: hidden; 
}

#who {
	width: 490px;
	float: left;
	padding: 0 20px 0 0;
	border-right: 1px solid #e4e4e4;
}

#who img {
	background-color: #eee;
	background-image:url(../images/zs.png);
	background-position:center;
	background-repeat:no-repeat;
	border: 1px solid #ccc;
	padding: 7px;
	margin: 0 25px 0 0;
	float: left;
	color:#000000;
}
#who img:hover {
	background-image:url(../images/zs_over.png);
	background-position:center;
	background-repeat:no-repeat;
	border: 1px solid #ccc;
	padding: 7px;
	margin: 0 25px 0 0;
	float: left;
}
#who h3 {
	color: #393939;
	font: 18px/24px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	width: 435px;
	padding: 0 0 15px 5px;
	margin: 0 0 20px 0;
}

#who p {
	margin: 0 0 20px 0;
}

#who p.more {
	text-align: right;
}

#who p.more a {
	text-decoration: underline;
}

#services {
	width: 345px;
	float: right;
	margin: 38px 0 0 0;
	padding: 0 0 0 25px; 
	border-left: 1px solid #e4e4e4;
}
#services h3 {
	color: #393939;
	font: 18px/24px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	width: 435px;
	padding: 0 0 15px 5px;
	margin: 0 0 20px 0;
}
#services li {
	width: 260px; 
	height: 47px;
	display: block;
	padding: 10px 0 5px 70px;
}

#services li h5 {
	color: #111;
	font: 12px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
}

#services li h5 a {
	color: #111;
}

#services li#first {
	border-bottom: 1px solid #e4e4e4;
	background: #f6f6f6 url(../images/first.png) top left no-repeat;
}

#services li#first:hover {
	text-decoration: none;;
	background: #fff url(../images/first.png) top left no-repeat;
}

#services li#second {
	border-top: 1px solid #fff;
	border-bottom: 1px solid #e4e4e4;
	background: #f6f6f6 url(../images/second.png) top left no-repeat;
}

#services li#second:hover {
	text-decoration: none;;
	background: #fff url(../images/second.png) top left no-repeat;
}

#services li#third {
	border-top: 1px solid #fff;
	border-bottom: 1px solid #e4e4e4;
	background: #f6f6f6 url(../images/third.png) top left no-repeat;
}

#services li#third:hover {
	text-decoration: none;;
	background: #fff url(../images/third.png) top left no-repeat;
}
#services li#fourth {
	border-top: 1px solid #fff;
	background: #f6f6f6 url(../images/fourth.png) top left no-repeat;
}

#services li#fourth:hover {
	text-decoration: none;;
	background: #fff url(../images/fourth.png) top left no-repeat;
}

/* --- Content: Second Row --- */

#bottomMain {
	border-top: 1px solid #e4e4e4;
	padding: 15px 15px 0;
	margin: 0 0 25px 0;
	overflow: hidden; 
}

#notes {
	width: 265px;
	padding: 0 25px 0 0;
	float: left;
}

#swipe {
	width: 270px;
	padding: 0 25px 0 25px;
	float: left;
	border-right: 1px solid #e4e4e4;
	border-left: 1px solid #e4e4e4;
}

#bulb {
	width: 220px;
	float: left;
	padding: 0 0 0 25px;
}

#notes h4, #swipe h4, #bulb h4 {
	color: #222;
	font: 14px/24px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
	margin: 0 0 10px 0;
	height: 20px;
	padding: 0 0 0 25px;
}

#services li p {
	color: #545454;
	font: 11px "Lucida Grande", Tahoma, Verdana, sans-serif;
}

#notes h4 {
	background: url(../images/h4-notes.jpg) top left no-repeat;
}

#swipe h4 {
	background: url(../images/h4-swipe.jpg) top left no-repeat;
}

#bulb h4 {
	background: url(../images/h4-bulb.jpg) top left no-repeat;
}

/* --- FOOTER --- */

#footer, .push {
    height: 120px;
    padding: 15px 0 0 0;
}

#footer {
	background: #ffffff url(../images/bg-h3.jpg);
	background-repeat: repeat-x;
}

#footer-inner {
	width: 850px;
	margin: 0 auto;
	overflow: hidden;
}

#footer-inner p {
	float: left;
}

#footer-inner p.validate {
	float: right;
	line-height: 18px;
	font-size: 10px;
	font-weight: bold;
	text-transform: uppercase;
}

#footer-inner p.validate a {
	color: #555;
	background: url(../images/valid.png) top left no-repeat;
	padding: 0 0 0 20px;
	margin: 0 25px 0 0;
	height: 20px;
	display: block;
	float: left;
}


/* -------------------------
--------- SUBPAGES ---------
-------------------------- */

#content {
	width: 100%;
	background: transparent url(../images/bg-maincontent.jpg) top left no-repeat;
	margin: 36px 0 0 0;
	overflow: hidden;
}

#portfolio {
	margin: 30px 5px 0;
	overflow: hidden;
}

/* --- Single Portfolio Item --- */

.item {
	width: 425px;
	float: left;
	margin: 0 10px 40px;
	color: #565656;
}

.item img {
	background-color: #ececec;
	border: 1px solid #ddd;
	padding: 6px;
	margin: 0 0 3px;
}
.item img:hover {
	background-color: #CCCCCC;
	border: 1px solid #ffffff;
	padding: 6px;
	margin: 0 0 3px;
}

.item h2 {
	font: 18px "Lucida Grande", Tahoma, Verdana, sans-serif;
	border-top: 1px solid #e4e4e4;
	border-bottom: 1px solid #e4e4e4;
	padding: 8px 0 8px 2px;
	margin: 0 0 15px;
}


.item p {
	padding: 0 10px;
}
.port_items {
	text-align: right;



}

/* --- Portfolio Nav --- */

#folioNav {
	width: 100%;
	height: 35px;
	margin: 0 5px;
	background: #ececec url(../images/bg-h3.jpg) top left repeat-x;
	border-bottom: 1px solid #e4e4e4;
	overflow: hidden;
}

#folioNav span#previous {
	float: left;
	width: 96px;
	height: 26px;
	background: transparent url(../images/previous.png) top left no-repeat;
	text-indent: -9999px;
	margin: 5px 10px;
}

#folioNav span#next {
	float: right;
	width: 96px;
	height: 26px;
	background: transparent url(../images/next.png) top left no-repeat;
	text-indent: -9999px;
	margin: 5px 10px;
}

/* --- Clients & Testimonials --- */

#wrap {
	margin: 20px 10px 25px 20px;
	overflow: hidden;
}

#clients {
	width: 500px;
	float: left;
	padding: 0 10px 0 0;
	border-right: 1px solid #e4e4e4;
}
#clients h3 {
	color: #393939;
	font: 18px/22px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	padding-left: 15px;
}
#testimonials {
	width: 330px;
	float: left;
	margin: 0 0 0 20px;
}
#testimonials h4 {
	color: #393939;
	font: 18px/24px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	width: 435px;
	padding: 0 0 18px 5px;
}

#clients h4 {
	color: #222;
	font: 14px/16px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
	margin: 0 0 10px 0;
	height: 16px;
	padding: 0 0 0 22px;
}

#clients h4 {
	background: url(../images/h4-clients.jpg) top left no-repeat;
}

#clientlist {
	overflow: hidden;
}

#clientlist li {
	float: left;
	margin: 0 15px 0 0;
}

#clientlist li img {
	background-color: #ececec;
	border: 1px solid #ddd;
	padding: 6px;
	margin: 0 0 15px;
}

#testimonials blockquote {
	background: url(../images/quotes.jpg) top left no-repeat;
	padding: 0 10px 0 25px;
	margin: 0 0 15px 0;
	color: #999;
}

#testimonials p.author {
	padding: 0 10px 0 25px;
	text-align:right;
	color:#0099FF;
}

#testimonials span.readmore {
	display: block;
	width: 96px;
	height: 25px;
	background: transparent url(../images/readmore.png) top left no-repeat;
	text-indent: -9999px;
	margin: 0 20px;
}

/* --- CONTACT PAGE --- */

#contactForm {
	width: 470px;
	float: left;
	padding: 0 20px 0 0;
	margin: 50px 0 25px 20px;
}

.topBorder {
	border-top: 1px solid #e4e4e4;
	padding-top: 30px;
}

#contactInfo {
	margin-bottom: 50px;
}

#contactInfo p {
	color: #545454;
}

#contactInfo h4 {
	color: #222;
	font: 14px/16px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
	background: url(../images/contact.png) top left no-repeat;
	margin: 0 0 10px 0;
	height: 16px;
	padding: 0 0 0 25px;
}

/* --- Contact Form --- */

#contactForm form label {
	display: none;
}

#contactForm form input {
	display: block;
	height: 15px;
	border: none;
	border-bottom: 1px solid #ccc;
	background-color: #f6f6f6;
	width: 230px;
	margin: 0 0 20px 0;
	color: #2c2c2c;
	padding: 5px;
	font: 11px/20px "Lucida Grande", Tahoma, sans-serif;
}

#contactForm form input#submit {
	display: inline;
	height: 25px;
	width: 97px;
	background: transparent url(../images/send.png) top left no-repeat;
	border: 0;
	text-indent: -9999px;
	float: right;
	margin: 5px 55px 0 0; 	
}

#contactForm form textarea {
	display: block;
	border: none;
	border-bottom: 1px solid #ccc;
	background-color: #f6f6f6;
	width: 400px;
	margin: 0 0 20px 0;
	color: #2c2c2c;
	padding: 5px;
	font: 11px/20px "Lucida Grande", Tahoma, sans-serif;
	
}

/* --- ABOUT PAGE ---*/
#about {
	width: 470px;
	float: left;
	padding: 0 20px 0 0;
	margin: 38px 0 15px 20px;
}
#about h3 {
	color: #393939;
	font: 18px/24px "Lucida Grande", Tahoma, Verdana, sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	width: 435px;
	padding: 0 0 15px 5px;
	margin: 0 0 20px 0;
}
#about img {
	background-color: #eee;
	background-image:url(../images/thumb.jpg);
	background-position:center;
	background-repeat:no-repeat;
	border: 1px solid #ccc;
	padding: 7px;
	margin: 0 25px 0 0;
	float: left;
}
#about img:hover {
	background-image:url(../images/thumb_over.jpg);
	background-position:center;
	background-repeat:no-repeat;
	border: 1px solid #ccc;
	padding: 7px;
	margin: 0 25px 0 0;
	float: left;
}
#screenshot{
	position:absolute;
	border:1px solid #ccc;
	background:#333;
	padding:5px;
	display:none;
	color:#fff;
	}
#flickr_badge_source_txt {padding:0; font: 11px Arial, Helvetica, Sans serif; color:#666666;}
#flickr_badge_icon {display:block !important; margin:0 !important; border: 1px solid rgb(0, 0, 0) !important;}
#flickr_icon_td {padding:0 5px 0 0 !important;}
.flickr_badge_image {text-align:center !important;}
.flickr_badge_image img {border: 1px solid black !important;}
#flickr_www {display:block; padding:0 10px 0 10px !important; font: 11px Arial, Helvetica, Sans serif !important; color:#3993ff !important;}
#flickr_badge_uber_wrapper a:hover,
#flickr_badge_uber_wrapper a:link,
#flickr_badge_uber_wrapper a:active,
#flickr_badge_uber_wrapper a:visited {text-decoration:none !important; background:inherit !important;color:#3993ff;}
#flickr_badge_wrapper {}
#flickr_badge_source {padding:0 !important; font: 11px Arial, Helvetica, Sans serif !important; color:#666666 !important;}



#twitter_div {
	color: #393939;
	width: 330px;
	height: 125px;
}
#twitter_div h2 {
	color: #393939;
	font-weight:bold;
	border-bottom: 1px solid #e4e4e4;
	padding-top: 15px;
}
#twitter_div h6 {
	color: #fff;
	font-weight:bold;
	border-top: 1px solid #fff;
	padding: 0 10px 0 0;
	text-align:right;
	background-color: #E0E0E0;
}
#twitter_div ul {
	color: #999999;
	background-image:url(../images/twitter_bird.png);
	background-repeat:no-repeat;
	border-top: 1px solid #ffffff;
	background-color: #f6f6f6;
	padding-right:10px;
	padding-bottom: 20px;
}
#twitter_div ul:hover {
	color: #999999;
	border-top: 1px solid #ffffff;
	background-color: #fff;
	padding-right:10px;
}


#contact p, label, legend { font: 10pt "Lucida Grande", "Lucida Sans Unicode", Arial, sans-serif; }

#contact {
	width: 470px;
	float: left;
	padding: 0 20px 0 0;
	margin: 38px 0 25px 20px;
}

/* Form style */

#contact label { display: inline-block; float: left; height: 26px; line-height: 26px; width: 155px; font-size: 10pt; -webkit-border-radius:5px; }
#contact input, textarea, select {
	width: 280px;
	margin: 0;
	padding: 5px;
	color: #666;
	background: #f5f5f5;
	border: 1px solid #ccc;
	margin: 5px 0;
	font:10pt "Lucida Grande", "Lucida Sans Unicode", Arial, sans-serif;
	webkit-border-radius:5px;
}   
#contact input:focus, textarea:focus, select:focus { border: 1px solid #999; background-color: #fff; color:#333; }
#contact input.submit { width: 85px; cursor: pointer; border: 1px solid #222; background:#333; color:#fff; }
#contact input.submit:hover { background:#444; }
#contact input[type="submit"][disabled] { background:#888; }
#contact fieldset {
	padding:20px;
	border:1px solid #eee;
	-webkit-border-radius:5px;
}
#contact legend {
	padding:7px 10px;
	font-weight:bold;
	color:#000;
	border:1px solid #eee;
	-webkit-border-radius:5px;
	margin-bottom:0 !important;
	margin-bottom:20px;
}

#contact span.required{ font-size: 13px; color: #ff0000; } /* Select the colour of the * if the field is required. */

#message { margin: 10px 0; padding: 0; }

.error_message { display: block; height: 22px; line-height: 22px; background: #FBE3E4 url('../assets/error.gif') no-repeat 10px center; padding: 3px 10px 3px 35px; color:#8a1f11;border: 1px solid #FBC2C4; -webkit-border-radius:5px; }

.loader { padding: 0 10px; }

#contact #success_page h1 { background: url('../assets/success.gif') left no-repeat; padding-left:22px; }

acronym { border-bottom:1px dotted #ccc; }
