/* -- RESET -- */
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,
b, u, i, center,
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-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
fieldset { border: solid 1px #ddd; }
ol, ul {
	list-style: circle;
	line-height: 1.5em;
	margin-left: 18px;
	font-size: 0.9em;
	margin-bottom: 10px;
}
blockquote, q {
	quotes: none;
}

p {
	line-height: 1.5em;
}

address {
	font-style: normal;
}
/* -- GENERAL LAYOUT -- */
@font-face {
	font-family: 'ChunkFiveRegular';
	src: url('font/Chunkfive-webfont.eot');
	src: local('☺'), url('font/ChunkFive/Chunkfive-webfont.woff') format('woff'), url('font/Chunkfive-webfont.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

html {
	background: url('images/tile.jpg') repeat;
}

body {
	font-family: "Lucida Grande", Helvetica, Arial, sans-serif;
	background: url('images/headerslice.jpg') repeat-x;
	color: #353535;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizelegibility;
}

h1#title {
	position: absolute;
	text-indent: -9999px;
	display: none;
}

h1, h2, h3, h4, h5, h6 {
	font-family: Helvetica, Arial, sans-serif;
	margin: 0.2em 0 0.2em 0;
	font-weight: bold;
	letter-spacing: -0.030em;
}

h1 { font-size: 2.6em; }
h2 { font-size: 2.1em; }
h3 { font-size: 1.6em; }
h4 { font-size: 1.3em; }
h5 { font-size: 1.1em; }
h6 { font-size: 1em; }

p { margin: 0.4em 0 0.5em; }

a { color: #546d94; text-decoration: none; }
a:hover { color: #78a6bf; }
a:active { color: #38537d; }

#mainWrap {
	position: relative;
	width: 900px;
	margin: 0 auto;
	padding: 0 10px;
	background: transparent;
	text-shadow: 0px 1px 1px #fff;
}

#mainHead {
	padding: 0 0 5px;
}

#logo {
	margin: 9px 10px 0 0;
	float: left;
}

#nav {
	float: right;
	margin: 20px 0 0 0;
	font-weight: bold;
}

#nav li {
	float: left;
	list-style: none;
}

#nav a:hover {
	background: #1e5a85;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

#nav a:active {
	border-top: solid 1px #14486d;
	border-bottom: solid 1px #417aa3;
	background: #18517a;
	padding: 9px 20px 12px;
}

#nav a {
	color: #fff;
	text-shadow: 0px 1px 1px #000;
	text-decoration: none;
	font-size: 1.3em;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: lighter;
	padding: 10px 20px 12px;
	display: inline-block;
}

/* -- DROPDOWN NAVIGATION -- */  
ul.topnav li {   
    position: relative; /*--Declare X and Y axis base for sub navigation--*/  
}  
ul.topnav li a{  
    //padding: 10px 5px;  
    //color: #fff;  
    display: block;  
    //text-decoration: none;  
    float: left;  
}  
ul.topnav li a:hover{  
    //background: url(topnav_hover.gif) no-repeat center top;  
}  
ul.topnav li span { /*--Drop down trigger styles--*/ 
	margin: 14px 0 0 -15px; 
    width: 12px;  
    height: 16px;  
    float: left;  
    background: url(images/subnav_btn.gif) no-repeat center top;  
}  
ul.topnav li span.subhover {
	background-position: 0 -16px; cursor: pointer !important;
} /*--Hover effect for trigger--*/  
ul.topnav li ul.subnav {  
    list-style: none;  
    position: absolute; /*--Important - Keeps subnav from affecting main navigation flow--*/ 
    z-index: 1000;
    left: 0; top: 35px;  
    background: #333;  
    margin: 0; padding: 0;  
    display: none;  
    float: left;  
    //width: 170px;  
    border: 1px solid #111; 
    font-size: 0.8em !important; 
}  
ul.topnav li ul.subnav li{  
    margin: 0; padding: 0;  
    border-top: 1px solid #252525; /*--Create bevel effect--*/  
    border-bottom: 1px solid #444; /*--Create bevel effect--*/  
    clear: both;  
    //	width: 170px;  
}  
html ul.topnav li ul.subnav li a {  
    float: left;  
    width: 90px;  
    background: #333 url(images/dropdown_linkbg.png) no-repeat 10px center;  
    padding-left: 20px; 
}  
html ul.topnav li ul.subnav li a:hover { /*--Hover effect for subnav links--*/  
    background: #222 url(images/dropdown_linkbg.png) no-repeat 10px center !important; 
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
}
html ul.topnav li ul.subnav li a:active { /*--Hover effect for subnav links--*/  
    background: #222 url(images/dropdown_linkbg.png) no-repeat 10px center !important;
    border: 0 !important; 
}
/* -- END DROPDOWN NAVIGATION -- */

.content {
	font-size: 0.8em;
}

.pageContent {
	padding: 10px;
	background: #fff;
	margin: 0 0 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

#footer {
	position: relative;
	font-size: 0.75em;
	color: #fff;
	padding: 10px 0;
	background: url('images/headerslice.jpg') repeat-x;
	text-shadow: 0px 1px 1px #000;
}

#footer ul {
	font-size: 1em;
}

#footer a {
	color: #90D8F1;
	text-decoration: none;
}

#footer a:hover {
	color: #A0E0F6;
	text-decoration: none;
}

#footerContent {
	width: 900px;
	margin: 0 auto;
}

.footColumn {
	width: 300px;
	float: left;	
}

#connect {
	margin: 10px 0 0 0;
	text-align: center;
}

#connect img {
	margin: 0 2px 0 0;
	opacity: 0.4;
}

#connect img:hover {
	opacity: 1;
}

#displayAlt {
	background: #353535;
	padding: 3px 5px;
	border: dashed 1px #252525;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	display: inline-block;
}

#sitedesign {
	text-align: right;
}

.tweet {
	margin: 10px 0 0 0;
	text-align: right;
	width: 80%;
	float: right;
}

.tweet, .query {
	font-size: 1em;
	border-top: dashed 1px #72a9c5;
	border-bottom: dashed 1px #367ba4;
	padding: 10px 0;
	text-align: right;
}

.tweet_list {
	list-style: none;
	margin: 0;
}

.tweet_avatar {
	display: none;
}

.tweet_time {
	display: none;
}

/* -- STICKY FOOTER -- */
html, body {height: 100%;}

#mainWrap {min-height: 100%;}

.content {
	overflow:auto;
	padding-bottom: 190px;}  /* must be same height as the footer */

#footer {
	position: relative;
	margin-top: -190px; /* negative value of footer height */
	height: 170px;
	clear:both;
} 

/*Opera Fix*/
body:before {
	content:"";
	height:100%;
	float:left;
	width:0;
	margin-top:-32767px;/
}
/* -- END STICKY FOOTER -- */

/* -- GLOBAL STYLES -- */
.clear { clear: both; }
.error {
	color: red;
	vertical-align: middle;
}
.actionButton {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	background: #90d8f1;
	padding: 10px 25px;
	margin: 10px 0 0 0;
	display: inline-block;
	font-weight: bold;
	font-size: 1.1em;
	border: dashed 1px #79c7e2;
	color: #0f546c;
	text-shadow: 0px 1px 1px #c1e8f6;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.actionButton:hover {
	color: #0f546c;
	background: #a0e0f6;
}
.actionButton:active {
	background: #90d8f1;
}
.font {
	font-family: 'ChunkFiveRegular', "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
}
.date {
	font-family: Georgia, Times, serif;
	font-style: italic;
	color: #546d94;
}
.dashedLine {
	border-bottom: dashed 1px #ddd;
	margin: 10px 0;	
}
.georgia {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-style: italic;
	font-weight: normal;
}
.red {
	color: red;
}
.subScript {
	vertical-align: top;
	font-size: 0.6em;
}
.notice {
	background: #FBF7CB;
	border: solid 1px #E1DA92;
	padding: 5px;
}
.bold {
	font-weight: bold;
}
.linkColour {
	color: #546d94;
}
.small {
	font-size: 0.8em;
}

/* -- CAROUSEL -- */
#newCarousel {
background: #f7f7f7;
border: solid 1px #eee;
}
#newCarousel a:link, #newCarousel a:visited {
color : #fff;
text-decoration : none;
}
#newCarousel a img {
border : 0;
}
#newCarousel div.wrap {
width : 883px;
margin : 0 auto;
text-align : left;
}
#newCarousel div#top div#nav {
float : left;
clear : both;
width : 883px;
height : 52px;
margin : 22px 0 0;
}
#newCarousel div#top div#nav ul {
float : left;
width : 700px;
height : 52px;
list-style-type : none;
}
#newCarousel div#nav ul li {
float : left;
height : 52px;
}
#newCarousel div#nav ul li a {
border : 0;
height : 52px;
display : block;
line-height : 52px;
text-indent : -9999px;
}
#newCarousel div#header {
margin : -1px 0 0;
}
#newCarousel div#video-header {
height : 683px;
margin : -1px 0 0;
}
#newCarousel div#header div.wrap {
height : 295px;
background : url(images/header-bg.png) no-repeat 50% 0;
}
#newCarousel div#header div#slide-holder {
z-index : 40;
width : 883px;
height : 299px;
position : absolute;
}
#newCarousel div#header div#slide-holder div#slide-runner {
top : 9px;
left : 7px;
width : 863px;
height : 278px;
overflow : hidden;
position : absolute;
}
#newCarousel div#header div#slide-holder img {
margin : 0;
display : none;
position : absolute;
}
#newCarousel div#header div#slide-holder div#slide-controls {
left : 0;
bottom : 228px;
top: 228px;
width : 863px;
height : 46px;
display : none;
position : absolute;
background : url(images/slide-bg.png) 0 0;
}
#newCarousel div#header div#slide-holder div#slide-controls p.text {
float : left;
color : #fff;
display : inline;
font-size : 0.9em;
line-height : 16px;
margin : 15px 0 0 20px;
text-transform : uppercase;
text-shadow: 0px 1px 1px #000;
}
#newCarousel div#header div#slide-holder div#slide-controls p#slide-nav {
float : right;
height : 24px;
display : inline;
margin : 11px 15px 0 0;
}
#newCarousel div#header div#slide-holder div#slide-controls p#slide-nav a {
float : left;
width : 24px;
height : 24px;
display : inline;
font-size : 11px;
margin : 0 5px 0 0;
line-height : 24px;
font-weight : bold;
text-align : center;
text-decoration : none;
background-position : 0 0;
background-repeat : no-repeat;
text-shadow: 0px 1px 1px #000;
}
#newCarousel div#header div#slide-holder div#slide-controls p#slide-nav a.on {
background-position : 0 -24px;
}
#newCarousel div#header div#slide-holder div#slide-controls p#slide-nav a {
background-image : url(images/silde-nav.png);
}
#newCarousel div#nav ul li a {
background : url(images/nav.png) no-repeat;
}

/* -- HOME PAGE -- */
#bottomSection {
	border-top: dashed 1px #eee;
	margin: 10px 0 0;
	padding: 10px 0 0;
}
#headshot {
	float: left;
	margin: 0 10px 0 0;
}
#leftColumn {
	width: 55%;
	background: #f7f7f7;
	border: solid 1px #eee;
	padding: 10px;
	float: left;
}
#hireBannerSmall {
	margin: 0 0 7px 9px;
	display: inline-block;
}
#rightColumn {
	float: right;
	width: 39%;
	background: #f7f7f7;
	border: solid 1px #eee;
	padding: 10px;
}
.update h4 {
	background: #eee;
	padding: 3px 5px;
	
}

.updateContent {
	padding: 0 10px 5px;
}

/* -- INNER PAGE LAYOUT -- */
#pageColumn {
	width: 590px;
	padding: 0 10px 0 0;
	float: left;
	border-right: dashed 1px #ddd;
}

#sidebar ul {
	font-size: 1em;
}

#sidebar {
	float: right;
	width: 270px;
	font-size: 0.9em;
	padding: 0 0 0 9px;
}

/* -- SERVICES -- */
.boxgrid{ 
	width: 250px; 
	height: 200px; 
	margin: 0 10px 0 0;
	float:left; 
	background:#161613; 
	border: solid 1px #ddd; 
	overflow: hidden; 
	position: relative; 
}
.serviceBox{
	margin: 15px 0;
	padding: 20px 0 5px;
	border-top: dashed 1px #ddd;
}
.boxgrid img{ 
	position: absolute; 
	top: 0; 
	left: 0; 
	border: 0; 
}
.boxgrid h3{
	color: #fff;
	padding: 5px 10px 10px;
}
.boxgrid h3.smaller {
	font-size: 1em;
	padding: 10px 10px 10px;
}
.boxgrid p{ 
	font-size: 0.9em;
	padding: 0 10px; 
	color:#afafaf;  
}
.boxgrid a{
	position: relative;
	font-size: 0.8em;
	padding: 0 10px;
	top: -10px;
}
.boxcaption{ 
	float: left; 
	position: absolute; 
	background: #000; 
	height: 120px;
	text-shadow: 0px 1px 1px #000;
	width: 100%; 
	top: 160px;
	opacity: .85;
	/* For IE 5-7 */
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=85);
	/* For IE 8 */
	-MS-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)";
}
.boxcaptionwhite{ 
	float: left; 
	position: absolute; 
	background: #fff; 
	height: 120px; 
	width: 100%; 
	top: 160px;
	left: 0px;
	opacity: .8; 
	/* For IE 5-7 */
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
	/* For IE 8 */
	-MS-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
}
.boxcaptionwhite h3, .boxcaptionwhite p{ 
	color: #000;
}
.captionfull .boxcaption {
	top: 260;
	left: 0;
}
.caption .boxcaption {
	top: 220;
	left: 0;
}
.boxDesc {
	float: left;
	width: 320px;
}

/* -- PORTFOLIO LANDING PAGE / PORTFOLIO PAGES -- */

#portfolioPage ul.categories {
	margin: 0;
	font-size: 2em;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: bold;
	list-style: none;
}

#portfolioPage ul.categories li {
	margin: 0 0 10px;
}

#portfolioPage .work h3 {
	font-size: 1.1em;
}

#portfolioPage .work {
	background-color: #eee;
	border: solid 1px #ddd;
	width: 170px;
	padding: 4px 4px 0;
	text-align: center;
	float: left;
	margin: 0 15px 15px 0;
	min-height: 170px;
}

#portfolioPage .noFix {
	min-height: 0 !important;
	padding-bottom: 2px;
}

#portfolioPage .work:hover {
	background-color: #e7e7e7;
	border: dashed 1px #d7d7d7;
}

#portfolioPage .pieceTitle {
	font-family: "Helvetica Neue", Helvetica, "Lucida Grande", Arial, sans-serif;
	font-weight: 200;
	padding: 0 0 10px 0;
	border-bottom: solid 1px #ddd;
}

/* -- CASE STUDY PAGE -- */
#portfolioCarousel {
	margin: 0 0 5px;
	padding: 0 0 10px;
	border-bottom: dashed 1px #ddd;
}

#portfolioCarousel img {
	-webkit-box-shadow: 0px 0px 5px #555;
	-moz-box-shadow: 0px 0px 5px #555;
	box-shadow: 0px 0px 5px #555;
}

#portfolioLeft {
	width: 390px;
	float: left;
	padding: 0 5px 0 0;
}

#portfolioRight {
	float: left;
	width: 170px;
	margin: 0 0 0 10px;
}

.breadcrumb {
	font-size: 0.9em;
}

#kudos {
	margin: 0 0 10px;
	padding: 0;	
}

.kudo {
	margin: 0 0 10px;
	padding: 0 0 5px;
	border-bottom: dashed 1px #ddd;
}

#kudos .quoter {
	font-size: 0.9em;
}

#kudos .date, #kudos .quoter {
	text-align: right;
}

/* -- RESUME PAGE -- */
#resumePage table {
	margin: 0 0 10px;
}

#resumePage a.actionButton {
	display: block;
	text-align: center;
	font-size: 1.5em;
	margin: 0 0 15px;
}

#resumeObjective {
	background: #f7f7f7;
	padding: 3px 5px;
	margin: 10px 0;
	border: solid 1px #eee;
}

#resumeExperience {
	border-top: dashed 1px #ddd;
	border-bottom: dashed 1px #ddd;
	padding: 5px 0 0 0;
	margin: 20px 0 10px 0;
}

.topRow td {
	background: #eee;
	vertical-align: middle;
}

.dateColumn {
	padding: 5px;
	text-align: right;
	font-family: Georgia, Times, serif;
	font-style: italic;
	width: 70px;
}

.companyColumn {
	padding: 5px;
	width: 300px;
}

.locationColumn {
	padding: 5px;
	font-family: Georgia, Times, serif;
	font-style: italic;
}


tr.jobContent td ul {
	font-size: 1em;
	margin: 5px 0 0 18px;
	list-style-image: url('images/check.gif');
}

tr.jobContent td {
	padding: 5px;
	font-size: 0.9em;
}

td.small {
	padding: 0 0 0 5px;
}

#computerExperience {
	border-top: dashed 1px #ddd;
	border-bottom: dashed 1px #ddd;
	padding: 5px 0 0 0;
	margin: 15px 0 10px;
}

#computerExperience .topRow td {
	padding: 5px;
	width: 30%;
}

#otherSkills ul {
	list-style-image: url('images/check.gif');
}

/* -- CONTACT PAGE -- */
#contact-form input.text {
	border: solid 1px #d7d7d7;
	padding: 5px 3px;
	font-size: 1.3em;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizelegibility;
}

#contact-form textarea {
	border: solid 1px #d7d7d7;
	padding: 5px 3px;
	font-size: 1.3em;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizelegibility;
	width: 400px;
	max-width: 400px;
	height: 200px;
}

#contact-form label {
	margin: 10px 0 0 0;
	display: inline-block;
	font-size: 0.8em;
}

#contact-form label.error {
	vertical-align: middle;
	font-size: 0.8em;
	margin: 0 0 0 5px;
}

input.actionButton {
	cursor: pointer;
}
