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; font-size:100%; vertical-align:baseline; background:transparent;}

body {
	background:rgb(251, 251, 251) url(/images/site/bg/body.jpg) repeat left top;
	font:62.5%/1.5 "Lucida Grande", Helvetica, Arial, sans-serif; color:#444;
}

p, ul, ol, dl, h1, h2, h3, h4, h5, h6, table {font-size:1.6em;}

/*====================
Link Styles
======================*/
a:link, a:visited {
	color: #fa3e54;
	text-decoration: none;
	-moz-transition: color .2s ease-in;
	-webkit-transition: color .2s ease-in;
}
a:focus, a:hover, a:active {color:#9dba51;}

/*====================
Heading Styles
======================*/
h1 {font-size:2.6em;}
h2 {font-size:2.15em;}
h3 {font-size:1.6em;}
h4 {font-size:1.6em;}
h5 {font-size:1.4em;}
h6 {font-size:1.4em;}

/*====================
List Styles
======================*/
dl, ol, ul {margin:1em 0;}
ol, ul {padding:0 0 0 2em;}
li, dd {margin:.25em 0;}
dt {font-weight:bold;}

/*====================
Table Styles
======================*/
table {border-top:1px solid #888; border-left:1px solid #888;}
th {font-weight:bold; border-right:1px solid #888; border-bottom:1px solid #888;}
td, th {padding:.25em .5em; text-align:left; border-right:1px solid #888; border-bottom:1px solid #888;}

/*====================
General Styles
======================*/
img {border:0;}
small {font-size:.8em;}
legend {padding:0 .5em;}
blockquote {padding-left:2em;}
p, table caption {margin:1em 0;}
em, ins, del {font-style:italic;}
del {text-decoration: line-through;}
fieldset {padding:0 1em; border:1px solid #666;}
abbr, acronym, dfn {cursor:help; font-style:normal;}
code, kbd, pre {font-family:Courier, "Courier New", Tahoma, sans-serif;}

/* General */
hr {
	background-color: #ccc;
	border: none;
	height: 1px;
	margin: 3em 0;
}
.hidden {
	display: none;
	visibility: hidden;
}
h1, h2, h3, h4, h5, h6 {
	color: #888;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.mockSuperscript {
	font-size: .65em;
	font-weight: bold;
	position: relative;
	text-decoration: underline;
	top: -.4em;
}
.sexyAmpersand {
	font-family: Baskerville, Georgia, serif;
	font-size: .9em;
	font-style: italic;
}
.sexyOf {
	font-family: Georgia, serif;
	padding-right: .25em;
}
.clearBoth {
	clear: both;
	display: block;
}
/* ------------------- */

#header, #content, #footer {
	margin: 0 auto;
	width: 900px;
}
#content {
	margin-bottom: 4em;
	min-height: 300px;
	overflow: hidden;
}
#unsupportedBrowser {
	background-color: #fcc;
	border-bottom: 1px solid #777;
	color: #111;
	margin: 0;
	padding: 1em;
	text-align: center;
}
	#unsupportedBrowser a {
		color: blue;
		text-decoration: underline;
	}

/* Top navigation */
#topNav {
	background-color: rgba(240, 240, 240, .92);
	border-bottom: 2px solid #ddd;
	font-weight: bold;
	letter-spacing: 1px;
	margin: 0;
	min-width: 905px;
	position: fixed;
	text-align: center;
	width: 100%;
	z-index: 12;
}
	#topNav a, #topNav a:visited {
		background-color: rgba(255,255,255,0);
		border-top: 2px solid transparent;
		color: #888;
		display: inline-block;
		margin: 0 9px;
		padding: 16px .5em 12px;
		text-decoration: none;
		text-shadow: 0 1px 1px #fff;
		text-transform: uppercase;
		-moz-transition: border .2s ease-in, color .2s ease-in;
		-webkit-transition: border .2s ease-in, color .2s ease-in;
		transition: border .2s ease-in, color .2s ease-in;
	}
	#topNav a:hover, #topNav a:focus {
		border-top: 2px solid #9dba51;
		color: #9dba51;
	}
	#topNav a:active {
		background-color: rgba(221, 221, 221, .35);
	}
	#homePage #homeLink,
	#servicesPage #servicesLink,
	#portfolioListPage #portfolioLink,
	#portfolioDetailPage #portfolioLink,
	#testimonialsPage #testimonialsLink,
	#aboutPage #aboutLink,
	#blogPage #blogLink,
	#contactPage #contactLink,
	#clientToolsPage #clientToolsLink {
		border-top: 2px solid #fa3e54;
		color: #fa3e54;
	}
/* -------------------------- */

/* Header */
#header {
	margin-bottom: 5.4em;
	padding-top: 8.4em;
	overflow: hidden;
}
	#header h1 {
		float: right;
		font-family: Georgia, serif;
		font-weight: normal;
		letter-spacing: normal;
		line-height: 1.18;
		margin: -.25em 0 0 0;
		text-shadow: 0 1px 1px #aaa;
		text-transform: none;
		width: 620px;
	}
		#header h1 em {
			color: #666;
		}
	#bigFontDay {
		background: #2782BC;
		background: -moz-linear-gradient(90deg, #005890, #308cc6);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #308cc6), color-stop(1, #005890));
		-moz-border-radius-topright: 5px;
		-moz-border-radius-bottomright: 5px;
		-webkit-border-top-right-radius: 5px;
		-webkit-border-bottom-right-radius: 5px;
		border-top-right-radius: 5px;
		border-bottom-right-radius: 5px;
		left: 0;
		position: absolute;
		text-align: center;
		top: 84px;
		width: 55px;
	}
		#bigFontDay a {
			color: #a3c7de;
			color: rgba(255, 255, 255, 0.6);
			display: block;
			padding: 13px 0;
		}
		#bigFontDay a:hover {
			color: #fff;
			color: rgba(255, 255, 255, 1);
			display: block;
			padding: 13px 0;
		}
			#bigFontDay a abbr {
				cursor: pointer;
			}
	#mainLogo {
		float: left;
		margin: 0;
		width: 197px;
	}
/* ------------------ */

/* Non-column pages */
#fileUpload, #contactFormWrap {
	float: right;
	width: 412px;
}
	#fileUpload form p {
		margin-left: 2em;
	}
	#errorMessage label {
		background-color: #fcc;
		display: block;
		font-size: 1.4em;
		padding: 1em;
		text-align: center;
	}
	#successMessage {
		background-color: #cfc;
		padding: 1em;
	}
#loginPayment, #mapWrapper {
	width: 412px;
}
	#fileUpload fieldset, #loginPayment fieldset {
		border: none;
		padding: 0;
	}
		#fileUpload fieldset legend, #loginPayment fieldset legend {
			display: none;
		}
	#loginPayment dt {
		float: left;
		font-weight: normal;
		width: 150px;
	}
	#loginPayment p {
		margin-left: 150px;
	}
	#loginPayment p a {
		float: right;
		font-family: Georgia, serif;
		font-size: .75em;
		font-style: italic;
	}
	#loginPayment img {
		float: right;
	}
	#username, #password, #invoiceNumber, #amount {
		width: 256px;
	}
#searchResults, #searchResults th, #searchResults td {
	border: none;
}
	#searchResults th, #searchResults td {
		padding: .75em;
	}
	#searchResults th {
		border-bottom: 1px solid #ccc;
	}
	#searchResults td {
		border-bottom: 1px dashed #ccc;
	}
	#searchResults td .marker {
		background-color: #ff0;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		border-radius: 4px;
		-moz-box-shadow: 1px 1px 2px #aaa;
		-webkit-box-shadow: 1px 1px 2px #aaa;
		box-shadow: 1px 1px 2px #aaa;
		padding: .2em .3em;
	}
#page404 #content .leftColumn {
	background: url(../images/site/bg/404.jpg) no-repeat center top;
	min-height: 709px;
	text-indent: -9999px;
}
/* ----------------------- */

/* Left column */
.leftColumn {
	float: left;
	width: 600px;
}
	#portfolioHighlight {
		overflow: hidden;
	}
	#portfolioHighlight .hasProjectInfo {
		display: block;
		position: relative;
		z-index: 10;
	}
	#portfolioHighlight img {
		background-color: #fff;
		border: 1px solid #ccc;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		border-radius: 4px;
		margin-bottom: 1em;
		padding: 9px;
		-webkit-transition: background-color .2s ease-in;
		-moz-transition: background-color .2s ease-in;
		transition: background-color .2s ease-in;
	}
	#portfolioHighlight a.hasProjectInfo img {
		-moz-border-radius-topleft: 0;
		-moz-border-radius-topright: 0;
		-webkit-border-top-left-radius: 0;
		-webkit-border-top-right-radius: 0;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
		margin-top: 45px;
		padding-top: 0;
	}
	#portfolioHighlight a:hover img {
		background-color: #9dba51;
	}
	#portfolioHighlight a.hasProjectInfo span {
		background-color: rgba(255,255,255,.96);
		border: 1px solid #ccc;
		border-bottom: none;
		-moz-border-radius-topleft: 4px;
		-moz-border-radius-topright: 4px;
		-webkit-border-top-left-radius: 4px;
		-webkit-border-top-right-radius: 4px;
		border-top-left-radius: 4px;
		border-top-right-radius: 4px;
		color: #111;
		font-size: 1.7em;
		left: 0;
		padding: 10px;
		position: absolute;
		text-align: center;
		text-shadow: 1px 1px 7px rgba(0, 0, 0, .2);
		top: 0;
		-moz-transition: background-color .2s ease-in;
		-webkit-transition: background-color .2s ease-in;
		transition: background-color .2s ease-in;
		width: 578px;
	}
	#portfolioHighlight a.hasProjectInfo:hover span {
		background-color: #9dba51;
	}
	#portfolioHighlight p:last-child {
		margin-bottom: 0;
	}
	#homePage #portfolioHighlight h5 {
		font-family: "Lucida Grande", Helvetica, Arial, sans-serif;
		letter-spacing: normal;
		text-transform: none;
	}
	#homePage #portfolioHighlight p {
		float: left;
		margin-bottom: 0;
		width: 290px;
	}
	#homePage #portfolioHighlight ul {
		float: right;
		margin-bottom: 0;
		width: 258px;
	}
		#homePage #portfolioHighlight ul li {
			margin: 0;
		}
	.titleExtra {
		font-size: .7em;
		padding-left: .65em;
	}
	#clientTestimonial blockquote, .testimonialEntry blockquote {
		color: #777;
		font-family: Georgia, serif;
		font-style: italic;
		padding-left: 0;
	}
		#clientTestimonial blockquote p:before, .testimonialEntry blockquote p:before {
			content: open-quote;
		}
		#clientTestimonial blockquote p:after, .testimonialEntry blockquote p:after {
			content: close-quote;
		}
	#clientTestimonial span, .testimonialEntry span {
		font-size: 1.2em;
	}
	#thePeople {
		float: right;
		width: 275px;
	}
		#thePeople dl {
			margin-bottom: 2.5em;
		}
		.personPhoto {
			float: right;
			margin-left: 15px;
			position: relative;
			top: -1.75em;
		}
			.personPhoto img {
				background-color: #fff;
				border: 1px solid #ccc;
				-moz-border-radius: 4px;
				-webkit-border-radius: 4px;
				border-radius: 4px;
				padding: 5px;
				-moz-transition: background-color .2s ease-in;
				-webkit-transition: background-color .2s ease-in;
				transition: background-color .2s ease-in;
			}
			.personPhoto a:hover img {
				background-color: #9dba51;
			}
		#thePeople h3 {
			margin-top: 2.1em;
		}
	#companyGoalOther {
		/* width: 275px; */
	}
	#blogPage #content .leftColumn ul ul, #blogPage #content .leftColumn ul ol,
	#blogPage #content .leftColumn ol ul, #blogPage #content .leftColumn ol ol,
	#blogPage #content .leftColumn ul p, #blogPage #content .leftColumn ol p {
		font-size: 1em;
	}
	#blogPage #content .leftColumn h3, #blogPage #content .leftColumn h4 {
		margin-top: 1.8em;
	}
	#blogPage .leftColumn .codeblock {
		background-color: #fff;
		border: 1px solid #ccc;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		border-radius: 4px;
		font-size: 1.3em;
		margin: 1em 0;
		overflow: auto;
		padding: 9px;
	}
	.blogEntry, .testimonialEntry {
		border-top: 1px dashed #ccc;
		padding-top: 1.6em;
	}
	.testimonialEntry {
		margin-bottom: 3.5em;
	}
	.testimonialEntry:last-child {
		margin-bottom: 0;
	}
	.blogEntry:first-child, .testimonialEntry:first-child {
		border-top: none;
		padding-top: 0;
	}
	.testimonialEntry:first-child blockquote p {
		margin-top: 0;
	}
		.blogEntryMeta {
			font-size: 1.2em;
		}
		.blogEntryMeta a img {
			opacity: .625;
			position: relative;
			top: 4px;
			-moz-transition: opacity .2s ease-in;
			-webkit-transition: opacity .2s ease-in;
			transition: opacity .2s ease-in;
		}
		.blogEntryMeta a:hover img {
			opacity: 1;
		}
			.blogEntryMeta span {
				color: #888;
				font-family: Georgia, serif;
				font-style: italic;
			}
		.blogEntryImage {
			float: right;
			margin: 0 0 1em 2em;
		}
		.blogEntryUpdate strong {
			color: red;
		}
	#entryLike {
		float: left;
		width: 44%;
	}
		#entryLike p {
			overflow: auto;
		}
			#entryLike p a,
			#entryLike p a:visited {
				border: 1px solid #ccc;
				-moz-border-radius: 4px;
				-webkit-border-radius: 4px;
				border-radius: 4px;
				display: block;
				float: left;
				height: 80px;
				margin-right: 20px;
				text-indent: -999em;
			}
			#entryLike p a.likee_like {
				background: transparent url(../images/site/bg/thumbs-up.png) no-repeat 10px 5px;
				width: 68px;
			}
			#entryLike p a.likee_like:hover,
			#entryLike p a.likee_like:focus {
				background-position: 10px -75px;
				border-color: #9dba51;
				outline: none;
			}
			#entryLike p a.likee_dislike {
				background: transparent url(../images/site/bg/thumbs-down.png) no-repeat 10px 5px;
				width: 63px;
			}
			#entryLike p a.likee_dislike:hover,
			#entryLike p a.likee_dislike:focus {
				background-position: 10px -65px;
				border-color: #fa3e54;
				outline: none;
			}
			#entryLike p #entryLikeAfter {
				float: left;
				margin-right: 20px;
			}
			#entryLike p #entryLikeScore {
				color: #aaa;
				cursor: help;
			}
				#entryLike p #entryLikeScore span {
					color: #333;
					display: block;
					font-size: 3.3em;
					font-weight: bold;
					line-height: 1;
					margin-left: 177px;
					width: 50px;
				}
	#shareThis {
		float: right;
		width: 48%;
	}
		#blogPage #content .leftColumn #entryLike h3, #blogPage #content .leftColumn #shareThis h3 {
			margin-top: .25em;
		}
		#shareThis p {
			float: left;
			margin-right: 20px;
			width: 170px;
		}
		#shareThis iframe {
			border: none;
			height: 22px;
			margin-top: 16px;
			overflow: hidden;
			width: 90px;
		}
			#shareThis a {
				margin-right: 5px;
			}
	#entryComments ul {
		padding-left: 0;
		list-style: none;
	}
			#entryComments li * {
				font-size: 1em;
			}
				.commentBody {
					background-color: #fff;
					border: 1px solid #ccc;
					-moz-border-radius: 4px;
					-webkit-border-radius: 4px;
					border-radius: 4px;
					padding: .1em 1.1em;
				}
				.commentAuthor,
				.contactAuthor {
					background: url(../images/site/bg/comment-bridge.gif) no-repeat center top;
					font-family: Georgia, serif;
					font-style: italic;
					margin-top: 0;
					padding-top: 1em;
					position: relative;
					text-align: center;
					top: -1px;
				}
				.contactAuthor {
					background-position: 265px 0;
					margin-bottom: 0;
				}
					#entryComments li .commentAuthor img {
						display: block;
						margin: 0 auto .5em;
					}
					#entryComments li .commentAuthor span {
						color: #888;
						display: block;
						font-size: .75em;
					}
				#entryComments .adminComment .commentBody {
					border-color: #666;
				}
				#entryComments .adminComment .commentAuthor {
					background-image: url(../images/site/bg/comment-bridge-admin.gif);
				}
			#comment_form h4 {
				margin-bottom: 1em;
			}
			#comment_form #errorMessage,
			#contactPage #errorMessage {
				display: block;
				margin-bottom: 1em;
			}
			#comment_form .textInput,
			#contactPage .textInput {
				font-family: "Lucida Grande", sans-serif;
			}
			#comment_form .textInput:focus,
			#contactPage .textInput:focus {
				outline: none;
			}
			#commenterComment, #contactMessage {
				background-color: #fff;
				border: 1px solid #ccc;
				-moz-border-radius: 4px;
				-webkit-border-radius: 4px;
				border-radius: 4px;
				color: #777;
				font-size: 1.6em;
				height: 12em;
				margin: 0;
				padding: 5px;
				width: 588px;
			}
			#contactMessage {
				font-size: 1.4em;
				height: 14em;
				width: 400px;
			}
			#comment_form .commentAuthor,
			#contactPage .contactAuthor {
				line-height: 2;
				top: -2px;
				text-align: left;
			}
			@media screen and (-webkit-min-device-pixel-ratio:0) {
				#comment_form .commentAuthor,
				#contactPage .contactAuthor {top: -5px}
			}
			#commenterName, #commenterEmail, #commenterURL,
			#contactName, #contactEmail {
				background-color: #fff;
				border: 1px solid #ccc;
				-moz-border-radius: 4px;
				-webkit-border-radius: 4px;
				border-radius: 4px;
				font-size: 1em;
				padding: 2px;
				text-align: center;
				width: 14.5em;
			}
			#contactName, #contactEmail {
				width: 12em;
			}
			#commenterComment, #commenterName, #commenterEmail,
			#contactMessage, #contactName, #contactEmail {
				background-image: url(/images/site/bg/required-asterisk.gif);
				background-repeat: no-repeat;
				background-position: right top;
			}
			#commentsNotAllowed {
				background-color: #fcc;
				-moz-border-radius: 4px;
				-webkit-border-radius: 4px;
				border-radius: 4px;
				margin-top: 2em;
				padding: 1em;
				text-align: center;
			}
		.entriesPageNav {
			list-style: none;
			margin: 0;
			padding: 0;
		}
			.olderEntry {
				float: left;
				width: 45%;
			}
			.newerEntry {
				float: right;
				text-align: right;
				width: 45%;
			}
	#mapWrapper {
		background-color: #fff;
		border: 1px solid #ccc;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		border-radius: 4px;
		padding: 9px;
	}
		#map {
			height: 400px;
		}
	#portfolioListPage #portfolioList li {
		border-bottom: 1px dashed #ccc;
		border-top: none;
		float: left;
		font-size: .9em;
		margin-bottom: 2em;
		margin-top: 0;
		padding: 0 14px 2em 0;
		width: 190px;
	}
	#portfolioListPage #portfolioList li.firstItem {
		clear: left;
	}
	#portfolioListPage #portfolioList li.thirdItem {
		padding-right: 0;
	}
		#portfolioListPage #portfolioList a img {
			background-color: #fff;
			border: 1px solid #ccc;
			-moz-border-radius: 4px;
			-webkit-border-radius: 4px;
			border-radius: 4px;
			padding: 5px;
			float: left;
			-moz-transition: background-color .2s ease-in;
			-webkit-transition: background-color .2s ease-in;
			transition: background-color .2s ease-in;
		}
		#portfolioListPage #portfolioList a:hover img {
			background-color: #9dba51;
		}
		#portfolioListPage #portfolioList li span {
			color: #888;
			display: block;
			font-family: Georgia, serif;
			font-size: 0.97222222em;
			font-style: italic;
		}
/* ----------------------- */

/* Right column */
.rightColumn {
	float: right;
	width: 225px;
}
#aboutPage #content .rightColumn,
#blogPage #content .rightColumn,
#portfolioListPage #content .rightColumn,
#servicesListPage #content .rightColumn {
	margin-top: 3px;
}
	.rightColumn p {
		font-size: 1.4em;
	}
	.rightColumn #twitterHeading:hover {
		background: url(../images/site/bg/twitter.png) no-repeat left top;
		text-indent: -9999px;
	}
	#blogEntries, #twitter_update_list, #portfolioList {
		list-style: none;
		margin: 1em 0 0;
		padding: 0;
	}
		#blogEntries li, #twitter_update_list li, #portfolioList li {
			border-top: 1px dashed #ccc;
			font-size: .875em;
			margin: 1em 0 0;
			padding: 1em 0 0;
		}
		#blogEntries li:first-child, #twitter_update_list li:first-child,
		#portfolioList li:first-child {
			border-top: none;
			margin-top: 0;
			padding-top: 0;
		}
			#blogEntries li > span {
				color: #888;
				font-size: .875em;
			}
				#blogEntries li span span {
					font-family: Georgia, serif;
					font-style: italic;
				}
				#blogEntries li a img {
					opacity: .625;
					position: relative;
					top: 4px;
					-moz-transition: opacity .2s ease-in;
					-webkit-transition: opacity .2s ease-in;
					transition: opacity .2s ease-in;
				}
				#blogEntries li a:hover img {
					opacity: 1;
				}
			#twitter_update_list a {
				font-family: Georgia, serif;
				font-style: italic;
			}
				#twitter_update_list span a {
					font-family: "Lucida Grande", Helvetica, Arial, sans-serif;
					font-style: normal;
				}
	#readBlog, #followUs, #viewPortfolio {
		border-top: 1px dashed #ccc;
		padding: 1em 0 0;
	}
	#followUs span {
		color: #666;
		font-weight: bold;
	}
	#portfolioListPage .rightColumn ul,
	#portfolioDetailPage .rightColumn ul,
	#servicesPage .rightColumn ul,
	#aboutPage .rightColumn ul,
	#blogPage .rightColumn ul,
	#contactPage ul {
		list-style-position: outside;
		padding-left: 0;
	}
	#portfolioDetailPage #portfolioList li,
	#servicesPage #portfolioList li {
		font-size: .9em;
		overflow: hidden;
	}
		#portfolioDetailPage #portfolioList a img,
		#servicesPage #portfolioList a img {
			background-color: #fff;
			border: 1px solid #ccc;
			-moz-border-radius: 4px;
			-webkit-border-radius: 4px;
			border-radius: 4px;
			padding: 5px;
			float: left;
			margin-right: 15px;
			-moz-transition: background-color .2s ease-in;
			-webkit-transition: background-color .2s ease-in;
			transition: background-color .2s ease-in;
		}
		#portfolioDetailPage #portfolioList a:hover img,
		#servicesPage #portfolioList a:hover img {
			background-color: #9dba51;
		}
		#portfolioDetailPage #portfolioList li span,
		#servicesPage #portfolioList li span {
			color: #888;
			display: block;
			font-family: Georgia, serif;
			font-size: .8em;
			font-style: italic;
			margin-left: 97px;
		}
	.quickLinksImage {
		position: relative;
		top: 1px;
	}
/* ------------------------ */

/* Footer */
#footerWrap {
	background-color: rgba(240, 240, 240, .92);
	border-top: 2px solid #ddd;
}
	#footer {
		overflow: hidden;
		padding: 2em 0 4em;
	}
		#footer h4 {
			text-shadow: 0 1px 1px #fff;
		}
		#footer p, #footer ul, #footer ol {
			font-size: 1.4em;
		}
		#footer ul {
			list-style: none;
			padding-left: 0;
		}
			#footer li {
				border-top: 1px dashed #ccc;
				margin-top: .75em;
				padding-top: .75em;
			}
			#footer li:first-child {
				border-top: none;
			}
				#footer li span {
					display: block;
					float: left;
					width: 4em;
				}
				#footer li span#numberEntity,
				#numberEntity {
					display: inline;
					float: none;
					font-family: "Times New Roman", serif;
					width: auto;
				}
		#footer #footerBoxLeft, #footer #footerBoxRight {
			width: 43%;
		}
		#footer #footerBoxLeft {
			float: left;
		}
		#footer #footerBoxRight {
			float: right;
		}
		#footer #searchForm .hiddenFields {
			display: none; /* This is for the IEs */
		}
		#footer #searchForm fieldset {
			border: none;
			padding: 0;
		}
			#footer #searchForm legend {
				display: none;
			}
			#footer #searchInput {
				border: 1px solid #ccc;
				-moz-border-radius: 5px;
				-webkit-border-radius: 5px;
				border-radius: 5px;
				outline: none;
				padding: 2px;
				width: 148px;
			}
			#footer #searchInput:focus {
				border-color: #9dba51;
			}
			#footer #searchSubmit:hover {
				cursor: pointer;
			}
			#footer li#rssIcon a img {
				opacity: .625;
				position: relative;
				top: 1px;
				-moz-transition: opacity .2s ease-in;
				-webkit-transition: opacity .2s ease-in;
				transition: opacity .2s ease-in;
			}
			#footer li#rssIcon a:hover img {
				opacity: 1;
			}
			#footer #socialNetworks {
				padding-top: 1.5em;
			}
				#socialNetworks a, #socialNetworks a:visited {
					margin-right: 1px;
					opacity: .5;
				}
				#socialNetworks a:hover {
					opacity: 1;
				}
				#socialNetworks a:focus, #socialNetworks a:active {
					position: relative;
					top: 1px;
				}
/* ------------------ */

/* iPad AND iPhone */
@media screen and (max-width: 780px) {
	/* General */
	#header, #content, #footer {
		margin-left: 10px;
		margin-right: 10px;
		width: auto;
	}
	/* Top navigation */
	#topNav {
		min-width: 0;
		position: relative;
	}
		#topNav a:last-child {
			display: none;
		}
	/* Header */
	#header {
		margin-bottom: 2.4em;
		padding-top: 3.4em;
	}
		#header h1 {
			font-size: 2.1em;
			line-height: 1.5;
			margin-top: -.35em;
			width: 510px;
		}
	/* Non-column pages */
	#contactFormWrap {
		width: 342px;
	}
		#commenterComment, #contactMessage {
			width: 96.5%;
		}
		.contactAuthor {
			background-position: 230px 0;
		}
			#contactName, #contactEmail {
				width: 8em;
			}
	#mapWrapper {
		width: 342px;
	}
	/* Left column */
	.leftColumn {
		width: 540px;
	}
		#portfolioHighlight img {
			padding: 2px;
			width: 99%;
		}
		#portfolioHighlight a.hasProjectInfo span {
			width: 518px;
		}
		#homePage #portfolioHighlight p {
			width: 265px;
		}
		#homePage #portfolioHighlight ul {
			width: 233px;
		}
		#thePeople {
			width: 250px;
		}
		#companyGoalOther {
			width: 250px;
		}
		#portfolioListPage #portfolioList li {
			width: 170px;
		}
			#portfolioListPage #portfolioList a img {
				height: auto;
				width: 93%;
			}
			#portfolioListPage #portfolioList li strong {
				font-size: .9em;
			}
			#portfolioListPage #portfolioList li span {
				font-size: .8em;
			}
		#blogPage #content .leftColumn img[src^="/article-supplement/"] {
			width: 100%;
		}
		#blogPage #content .leftColumn img[src^="/article-supplement/"] {
			width: 100%;
		}
		.blogEntryImage {
			width: 50%;
		}
			.blogEntryImage img {
				height: auto;
				width: 50%;
			}
		#shareThis iframe {
			margin-top: 8px;
		}
	/* Right column */
	.rightColumn {
		width: 185px;
	}
		#portfolioListPage .rightColumn ul,
		#portfolioDetailPage .rightColumn ul,
		#servicesPage .rightColumn ul,
		#aboutPage .rightColumn ul,
		#blogPage .rightColumn ul,
		#contactPage ul {
			list-style-position: inside;
			padding-left: .25em;
		}
	/* Footer */
	#footer #footerBoxRight {
		margin-right: 28px;
	}
		#footer p, #footer ul, #footer ol {
			font-size: 1.3em;
			padding-left: 0;
		}
		#footer #searchInput {
			width: 105px;
		}
			#socialNetworks a img, #socialNetworks a:visited img {
				height: auto;
				width: 18%;
			}
}

/* iPhone ONLY */
@media screen and (max-width: 480px) {
	/* General */
	hr {
		margin: 1.5em 0;
	}
	#header, #content, #footer {
		margin-left: 0;
		margin-right: 0;
	}
	/* Top navigation */
	#topNav {
		letter-spacing: normal;
	}
		#topNav a, #topNav a:visited {
			border-top: none;
			margin: 0 4px;
			padding: 6px .35em;
		}
		#topNav a:hover, #topNav a:focus,
		#homePage #homeLink,
		#servicesPage #servicesLink,
		#portfolioListPage #portfolioLink,
		#portfolioDetailPage #portfolioLink,
		#testimonialsPage #testimonialsLink,
		#aboutPage #aboutLink,
		#blogPage #blogLink,
		#contactPage #contactLink,
		#clientToolsPage #clientToolsLink {
			border-top: none;
		}
	/* Header */
	#header {
		margin-bottom: 2em;
		padding-top: 2em;
	}
		#header h1 {
			display: none;
		}
		#mainLogo {
			float: none;
			margin: 0 auto;
		}
	/* Non-column pages */
	#contactFormWrap {
		float: none;
		margin: 0 5px;
		width: auto;
	}
		#contactName, #contactEmail {
			width: 6em;
		}
	#mapWrapper {
		display: none;
	}
	#searchResults {
		margin: 0 5px;
	}
		#searchResults thead {
			display: none;
		}
			#searchResults th, #searchResults td {
				padding: .25em 0;
			}
			#searchResults tbody tr td {
				display: block;
				width: 100%;
			}
			#searchResults tbody tr td:last-child {
				border-bottom: 1px solid #ccc;
				margin-bottom: 1em;
				padding-bottom: 1em;
			}
			#searchResults tbody tr:last-child td:last-child {
				border-bottom: none;
			}
	/* Left column */
	.leftColumn {
		border-bottom: 1px solid #ccc;
		float: none;
		margin: 0 5px 1.5em;
		padding-bottom: 1.5em;
		width: auto;
	}
	#blogPage .leftColumn,
	#portfolioListPage .leftColumn,
	#portfolioDetailPage .leftColumn {
		overflow: auto;
	}
		#portfolioHighlight img {
			height: auto;
			margin-bottom: 0;
			padding: 2px;
			width: 98.15%;
		}
		#portfolioHighlight a.hasProjectInfo img {
			margin-top: 55px;
		}
		#portfolioHighlight a.hasProjectInfo span {
			display: block;
			font-size: 1.7em;
			min-height: 48px;
			padding: 3px;
			width: 97.5%;
		}
		#homePage #portfolioHighlight p,
		#homePage #portfolioHighlight ul {
			float: none;
			width: auto;
		}
		.titleExtra {
			position: relative;
			top: -2px;
		}
		#thePeople {
			border-bottom: 1px solid #ccc;
			float: none;
			margin-bottom: 2em;
			padding-bottom: 2em;
			width: auto;
		}
			#thePeople dl {
				margin-bottom: 1.5em;
			}
			#thePeople dl:last-child {
				margin-bottom: 0;
			}
				#thePeople dl dd {
					font-size: .95em;
					line-height: 1.35;
				}
			.personPhoto {
				top: -1.4em;
			}
			#thePeople h3 {
				border-top: 1px dashed #ccc;
				margin-top: 1.75em;
				padding-top: 1.5em;
			}
		#companyGoalOther {
			width: auto;
		}
			#companyGoalOther h2:nth-of-type(2) {
				border-top: 1px dashed #ccc;
				margin-top: 1em;
				padding-top: .75em;
			}
	#portfolioListPage #portfolioList li {
		padding: 0 6% 1.25em 0;
		width: 47%;
	}
	#portfolioListPage #portfolioList li.firstItem {
		clear: none;
	}
	#portfolioListPage #portfolioList li.thirdItem {
		padding-right: 6%;
	}
	#portfolioListPage #portfolioList li:nth-of-type(2n+2) {
		padding-right: 0;
	}
	#portfolioListPage #portfolioList li:nth-last-of-type(-n+2) {
		border-bottom: none;
		margin-bottom: 0;
		padding-bottom: 0;
	}
		#portfolioListPage #portfolioList a {
			font-size: .8em;
		}
			#portfolioListPage #portfolioList a img {
				float: none;
				padding: 2px;
				width: 97.5%;
			}
			#portfolioListPage #portfolioList li strong {
				font-size: 1em;
			}
			#portfolioListPage #portfolioList li span {
				display: none;
			}
	.testimonialEntry {
		padding-top: 0;
		margin-bottom: 1.5em;
	}
	.blogEntryImage {
		float: none;
		margin-left: 0;
	}
		.blogEntryImage, .blogEntryImage img {
			width: 100%;
		}
	#entryLike, #shareThis {
		float: none;
		width: 100%;
	}
		#shareThis iframe {
			margin-top: 16px;
		}
	.contactAuthor {
		margin-bottom: 1em;
	}
	/* Right column */
	.rightColumn {
		float: none;
		margin: 0 5px;
		width: auto;
	}
		#blogEntries li, #twitter_update_list li, #portfolioList li {
			margin: .5em 0 0;
			padding: .5em 0 0;
		}
	#portfolioListPage .rightColumn {
		clear: left;
	}
		#portfolioListPage .rightColumn h3 {
			margin-top: 0;
		}
		#portfolioDetailPage .rightColumn h3 {
			display: none;
		}
		#portfolioListPage .rightColumn ul,
		#portfolioDetailPage .rightColumn ul,
		#servicesPage .rightColumn ul,
		#aboutPage .rightColumn ul,
		#blogPage .rightColumn ul,
		#contactPage ul {
			font-size: 1.6em;
		}
	/* Footer */
	#footer {
		padding: 2em 0;
	}
		#footer p, #footer ul, #footer ol {
			font-size: 1.4em;
		}
		#footer ul {
			margin-top: 0;
		}
		#footer li {
			margin-top: .5em;
			padding-top: .5em;
		}
	#footer #footerBoxLeft, #footer #footerBoxRight {
		float: none;
		width: auto;
	}
	#footer #footerBoxLeft {
		border-bottom: 1px solid #ccc;
		margin-bottom: 1.5em;
		padding-bottom: .5em;
	}
		#footer #searchInput {
			font-size: 1.5em;
			width: 65%;
		}
		#footer #searchSubmit {
			font-size: 1.1em;
			position: relative;
			top: -2px;
		}
			#socialNetworks a img, #socialNetworks a:visited img {
				width: auto;
			}
}
