html, body {
	margin: 0;
	padding: 0;
	background-color: #ebebeb;
}

body, div, p, td, th, span {
	font-family: Verdana, sans-serif;
	font-size: 11px;
}

a:link, a:visited {
	color: #46abdf;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}

.container {
	width: 761px;
	margin: 0 auto;
	text-align: left;
	overflow: auto;
}

.wrapper {
	text-align: center;
}

#headerContainer {
	height: 294px;
}
#headerWrapper {
	background: #fdfdfd url(/img/backgrounds/gradient_desk.png) repeat-x scroll top left;
}

#featureContainer {
	height: 74px;
	overflow: hidden;
}
#featureWrapper {
	border-top: 1px solid #7d7d7d;
}
#featureWrapper .featureTextAlt {
	color: white;
	font-family: Helvetica, sans-serif;
	font-size: 30px;
	line-height: 73px;
	padding-left: 20px;
}
#contentContainer {
}
#contentWrapper {
	background: #fff url(/img/backgrounds/gradient_page.png) repeat-x scroll top left;
}
#content {
	padding: 12px 0;
	overflow: auto;
	outline-width: 0;
	color: #888;
}
#content h1, #content h2, #content h3, #content h4 {
	font-family: Helvetica, sans-serif;
	margin-bottom: 5px;
}
#content h1 {
	font-size: 18px;
}
#content h2 {
	font-size: 15px;
}
#content li {
	font-size: 12px;
}
#content p {
	margin-bottom: 1em;
	font-size: 12px;
}
#content p + h2 {
	margin-top: 30px;
}

#footerContainer {
}
#footerWrapper {
	background-color: #ebebeb;
}
#footer {
	overflow: auto;
	outline-width: 0;
	padding: 16px 0;
	color: #959595;
	font-size: 12px;
}
#footer .attribution {
	font-size: 10px;
}
#footerLogo {
	float: right;
}
#mainTitle * {
	display: none;
}
#mainTitle {
	width: 514px;
	height: 294px;
	background-color: #fdfdfd;
	float: left;
}
.page_index #mainTitle { background-image: url(/img/headers/head_home.jpg); }
.page_contact #mainTitle { background-image: url(/img/headers/head_contact.jpg); }
.page_login #mainTitle { background-image: url(/img/headers/head_login.jpg); }
.page_portfolio #mainTitle { background-image: url(/img/headers/head_portfolio.jpg); }
.page_services #mainTitle { background-image: url(/img/headers/head_services.jpg); }
.page_about_us #mainTitle { background-image: url(/img/headers/head_about.jpg); }
.page_blog #mainTitle { background-image: url(/img/headers/head_blog.jpg); }

a img {
	border-width: 0;
}

.twocolumn_content {
	float: left;
	width: 474px;
	padding: 18px 20px;
}
.twocolumn_extra {
	float: left;
	width: 207px;
	padding: 19px 20px;
	background: #fff url(/img/backgrounds/gradient_callout.png) repeat-x scroll 0 -12px;
	min-height: 203px;
}
* html .twocolumn_extra {
	height: 203px;
}
.twocolumn_extra h3 {
	padding: 0 0 10px 0;
	margin: 0;
	border-bottom: 1px solid #888;
}
.twocolumn_extra h4 {
	margin: 0; padding: 0;
	font-size: 12px;
}
.error_messages {
	font-size: 12px;
	font-weight: bold;
	color: #900;
}
/* Navigation */
#navigation {
	float: left;
	width: 247px;
	height: 294px;
	background-image: url(/img/backgrounds/menu_background.png);
}
#navigation ul, #navigation li {
	margin: 0; padding: 0;
	list-style-type: none;
	display: block;
}
#navigation ul {
	padding-top: 83px;
}
* html #navigation li {
	display: inline;
}
#navigation ul li a span {
	display: none;
}
#navigation ul a:link, #navigation ul a:visited {
	display: block;
	height: 17px;
	background-repeat: no-repeat;
	margin-bottom: 1px;
}
#navigation ul li.home a:link, #navigation ul li.home a:visited {
	height: 22px;
	background-image: url(/img/navigation/menu_home_off.png);
}
#navigation ul li.home a.selected:link, #navigation ul li.home a.selected:visited,
#navigation ul li.home a:hover { background-image: url(/img/navigation/menu_home_on.png); }
#navigation ul li.about a:link, #navigation ul li.about a:visited {  background-image: url(/img/navigation/menu_about_off.png);  }
#navigation ul li.about a.selected:link, #navigation ul li.about a.selected:visited,
#navigation ul li.about a:hover { background-image: url(/img/navigation/menu_about_on.png); }
#navigation ul li.services a:link, #navigation ul li.services a:visited {  background-image: url(/img/navigation/menu_services_off.png);  }
#navigation ul li.services a.selected:link, #navigation ul li.services a.selected:visited,
#navigation ul li.services a:hover { background-image: url(/img/navigation/menu_services_on.png); }
#navigation ul li.portfolio a:link, #navigation ul li.portfolio a:visited {  background-image: url(/img/navigation/menu_portfolio_off.png);  }
#navigation ul li.portfolio a.selected:link, #navigation ul li.portfolio a.selected:visited,
#navigation ul li.portfolio a:hover { background-image: url(/img/navigation/menu_portfolio_on.png); }
#navigation ul li.weblog a:link, #navigation ul li.weblog  a:visited {  background-image: url(/img/navigation/menu_blog_off.png);  }
#navigation ul li.weblog a.selected:link, #navigation ul li.weblog  a.selected:visited,
#navigation ul li.weblog  a:hover { background-image: url(/img/navigation/menu_blog_on.png); }
#navigation ul li.contact a:link, #navigation ul li.contact a:visited {  background-image: url(/img/navigation/menu_contact_off.png);  }
#navigation ul li.contact a.selected:link, #navigation ul li.contact a.selected:visited,
#navigation ul li.contact a:hover { background-image: url(/img/navigation/menu_contact_on.png); }
#navigation ul li.clients a:link, #navigation ul li.clients a:visited {  background-image: url(/img/navigation/menu_client_off.png);  }
#navigation ul li.clients a.selected:link, #navigation ul li.clients a.selected:visited,
#navigation ul li.clients a:hover { background-image: url(/img/navigation/menu_client_on.png); }

#navigation .spacer {
	background-image: url(/img/navigation/menu_footer.png);
	background-repeat: repeat-y;
	height: 22px;
}
/* Dynamic pages */
.page_content {
	padding: 18px 20px;
}
.page_content .processed_text ul li {
	padding-left: 1em;
	text-indent: -1em;
}
.processed_textile img.right {
	margin-left: 15px;
	margin-bottom: 10px;
	float: right;
}
.processed_textile img.left {
	margin-right: 15px;
	margin-bottom: 10px;
	float: left;
}

.processed_textile img.bordered {
	border: 1px solid #888;
}
/* Homepage specific */
.featureBoxes {
	overflow: auto;
	outline-width: 0;
}
.featureBoxes h3 {
	color: #46abdf;
	font-size: 12px;
}
.featureBoxes .featureImage img {
	border: 1px solid #46abdf;
}
.featureBoxes .featureBox {
	width: 227px;
	float: left;
}
.featureBoxes .firstChild {
	margin-right: 20px;
}
.homepage_blogs a.visitBlog:link, .homepage_blogs a.visitBlog:visited {
	font-size: 10px;
	font-weight: bold;
	color: #888888;
}
.homepage_blogs .homepage_blog_entry {
	margin-bottom: 10px;
	padding-bottom: 15px;
	border-bottom: 1px solid #888;
}
.homepage_blogs .homepage_blog_entry_author {
	padding-top: 1em;
}
#content .homepage_blogs h4 {
	margin-bottom: 0;
	font-size: 12px;
}
.homepage_blogs .homepage_blog_entry_category {
	margin-bottom: 12px;
	font-size: 10px;
	font-weight: bold;
	color: #46abdf;
}
.homepage_blogs .homepage_blog_entry_category a:link, .homepage_blogs .homepage_blog_entry_category a:visited {
	font-weight: normal;
}
.homepage_blogs .homepage_blog_entry_summary {
	font-size: 10px;
}
.homepage_blogs .homepage_blog_entry_author a:link, .homepage_blogs .homepage_blog_entry_author a:visited {
	color: #888;
	text-decoration: underline;
}
.homepage_blogs .homepage_blog_entry_author a:hover {
	text-decoration: none;
}
/* Client login specific */
.clientLogin {
	border: 1px solid #999;
	background-color: white;
	padding: 1px;
}
.clientLogin .logo {
	float: left;
	padding-top: 10px;
	height: 130px;
	width: 114px;
	background-color: white;
}
.clientLogin form {
	margin: 0;
	margin-left: 114px;
	border: 0;
	padding: 5px 5px;
	background-color: #e5e5e5;
	height: 131px;
}
.clientLogin label {
	font-weight: bold;
	font-size: 12px;
}
.clientLogin input.text {
	width: 330px;
}
.clientLogin label, .clientLogin input {
	display: block;
}
/* The blog */
/* Blog entry listings */
.summary_listing {
	padding: 18px 20px;
}
.summary_blog_entry_title {
	font-size: 13px;
	font-weight: bold;
	margin: 0;
	padding: 10px 0 0 0;
}
.summary_blog_entry_summary {
	padding: 5px 0;
}
.summary_blog_entry {
	border-bottom: 1px solid #888;
	padding-bottom: 10px;
}
.listing_noentries {
	text-align: left;
	font-style: oblique;
}
/* Blog entries */
.blog_entry_content img {
	border: 1px solid #888;
}
.blog_entry_content img.right {
	margin-left: 15px;
	margin-bottom: 10px;
	float: right;
}
.blog_entry_content img.left {
	margin-right: 15px;
	margin-bottom: 10px;
	float: left;
}
.blog_entry_content img.noborder {
	border-width: 0;
}
.blog_entry {
	padding: 18px 20px;
}
.blog_entry_topattribution {
	background-color: #f0f0f0;
	border: 1px solid #999;
	padding: 5px 10px;
	margin: 10px 0;
}
.blog_entry_comments {
	border: 1px solid #999;
	padding: 10px 10px 30px 10px;
}
.blog_entry_comments h3 {
	margin: 0; padding: 0;
}
.blog_entry_nocomments {
	text-align: center;
	font-style: oblique;
}
.blog_entry_comment {
	padding: 0 20px;
}
.blog_entry_comments hr {
	border-width: 0;
	height: 1px;
	background-color: #888;
	margin: 15px 10px;
}
.blog_entry_addcomment {
	margin-top: 20px;
	border: 1px solid #999;
	padding: 10px 10px 30px 10px;
}
.blog_entry_addcomment form {
	padding: 0 20px;
}
.blog_entry_addcomment a:link, .blog_entry_addcomment a:visited {
	color: #888;
}
.blog_entry_addcomment h3, .blog_entry_addcomment h4 {
	margin: 0; padding: 0;
	font-size: 13px;
	font-weight: bold;
	font-family: Helvetica, sans-serif;
}
.blog_entry_addcomment fieldset {
	border-width: 0;
	margin-bottom: 20px;
}
.blog_entry_addcomment legend {
	display: none;
}
.blog_entry_addcomment label, .blog_entry_addcomment input {
	display: block;
}
.blog_entry_addcomment .field_description {
	font-size: 10px;
	padding-left: 40px;
}
.blog_entry_addcomment input.text, .blog_entry_addcomment textarea {
	width: 80%;
}
.blog_entry_addcomment .captcha img {
	border: 1px solid #888;
}
#content .blog_entry_addcomment .field_description p {
	font-size: 10px;
}
/* temporary stuff, to be removed */
.processed_textile pre {
	overflow: auto;
	width: 715px;
	background-color: #f0f0f0;
	border: 1px solid #888;
}
h1, p, h2 {
	margin: 0; padding: 0;
}
table.noFrills {
	border-collapse: collapse;
	border-width: 0;
}
table.noFrills td {
	vertical-align: top;
}
table.noFrills td.right {
	text-align: right;
}
.contactForm label {
	display: block;
}
.contactForm input.text, .contactForm textarea {
	width: 90%;
}
#featureContainer {
	/*background-image: url(/img/temp/featuretemp.gif);*/
}
#featureWrapper {
	background-color: #42a3dd;
	background-image: url(/img/temp/featurebg.png);
	background-position: top center;
}
