/* reset and initial values */
* {
	margin: 0;
	padding: 0;
}
body {
	font-size: 62.5%;
	background: #556478 url(../images/body_gradient.jpg) repeat-x 0 0;
}
a img {
	border: none;
}
ul, ol {
	list-style: none;
	font: 1.4em "Palatino Linotype", Georgia, serif;
}
p {
	font: 1.2em Verdana, Helvetica, Arial, sans-serif;
	color: #000;
	margin: 1.5em 0;
	line-height: 1.9em;
}
/* end reset and initial values */

/* Shared Page sections */
#wrapper {
	min-width: 800px;
}
#header {
	/*background: #748399 url(../images/header_grad.jpg) repeat-x top left;*/
}
#header img {
	float: left;
}
#header h2 {
	/*float: right;*/
	position: relative;
	top: 48px;
	right: 40px;
	font: 13pt Georgia, "Times New Roman", Times, serif;
	font-style: italic;
	text-align: right;
	/*margin: 48px 40px 0 0;*/
	color: #607081;
}
#header h2 span {
	font: 18pt "Times New Roman", Times, serif;
	font-style: italic;
	color: #3f4d5d;
}
#nav {
	clear: both;
	background: url(../images/navbar_back.jpg) repeat-x top left;
	height: 58px;
	margin: 0;
}
#content {
	padding: 16px 40px 20px;
	clear: both;
}
#main_content {
	position: relative;
	background-color: #bec9d9;
	padding: 0.4em 2.2em;
}
#secondary_content {
	position: relative;
	float: right;
	padding: 20px;
	background: #6f7b8d url(../images/secondary_content_grad.jpg) repeat-x 0 0;
}
#secondary_content h2 {
	font: 1.8em Georgia, "Palatino Linotype", serif;
	font-variant: small-caps;
	color: #3f4d5d; /*#bec9d9;*/
	margin: 0.9em 0 0.5em;
}
ul.service_list {
	color: #fff;
	line-height: 1.6em;
	margin-left: 16px;
}
ul.service_list li {
	padding: 6px 0 4px 32px;
	background: transparent url(../images/check_mark.png) no-repeat center left;
}
/*#secondary_content ul {
	font: 1.4em "Palatino Linotype", Georgia, serif;
	color: #fff;
	line-height: 1.6em;
	margin-left: 16px;
}*/
/*#secondary_content ul li {
	padding: 6px 0 4px 32px;
	background: transparent url(../images/check_mark.png) no-repeat center left;	
}*/
#footer {
	clear: both;
	background: transparent url(../images/footer_divider.jpg) repeat-x 0 0;
	margin: 20px 0 0 0;
	padding: 12px 0 40px 0;
}
#footer ul, #footer ul li a {
	font: 1.1em Helvetica, Arial, sans-serif;
	color: #bec9d9;
}
#footer ul li {
	display: inline;
}
#footer h2 {
	font: 1.1em Georgia, "Times New Roman", Times, serif;
	color: White;
	float: right;	
}
/* end Shared Page sections */

/* Main Navigation */
#nav ul {
	list-style: none;
	float: right;
	margin-right: 40px;
}
#nav ul li {
	display: block;
	width: 122px;
	height: 58px;
	float: left;
}
#nav ul li a {
	display: block;
	height: 58px;
	outline: none;
	overflow: hidden;
}
#nav ul li a span {
	display: none;
}
#nav a.home {
	background: url(../images/home_buttons.jpg) no-repeat 0 -58px;
}
#nav a.about {
	background: url(../images/about_buttons.jpg) no-repeat 0 -58px;
}
#nav a.services {
	background: url(../images/services_buttons.jpg) no-repeat 0 -58px;
}
#nav a.portfolio {
	background: url(../images/portfolio_buttons.jpg) no-repeat 0 -58px;
}
#nav a.contact {
	background: url(../images/contact_buttons.jpg) no-repeat 0 -58px;
}
#nav a:hover {
	background-position: 0 -116px;
}
/** Prepending the "ctl00_" on to the body ids is necessary b/c the body
	tag exists in the Master Page and Visual Studio/IIS adds that to each
	id even though they are created dynamically in each Content Page. **/
body#ctl00_home a.home, body#ctl00_about a.about, body#ctl00_services a.services,
body#ctl00_portfolio a.portfolio, body#ctl00_contact a.contact {
	background-position: 0 0;
	cursor: default;
}
/* end Main Navigation */

/* form fields on Contact */
.rqrd_marker {
	color: #f00;	
}
input.missing, textarea.missing {
	border: solid 1px #f00;
	background-color: #f9c7c2;	
}
label.missing {
	color: #f00;
}
.inline_label {
	display: inline;
}
body#ctl00_contact form fieldset {
	margin: 20px 0 0;
	/*padding: 14px;
	background-color: #dbe2ec;*/
	border-style: none;
}
body#ctl00_contact form legend {
	/*font: 180% "Trebuchet MS", Helvetica, sans-serif;
	color: #607081;
	padding: 2px;*/
}
body#ctl00_contact form legend img {
	margin: 0 0 -10px 0;	
}
body#ctl00_contact form fieldset p {
	margin: 0.4em 0;	
}
body#ctl00_contact #content #main_content label {
	display: block;
	margin-bottom: -4px;
}
body#ctl00_contact #content #main_content #fldstProjectSpec label {
	display: inline;
	padding-right: 10px;
	white-space: nowrap;
}
body#ctl00_contact #content #main_content input[type="text"] {
	width: 250px;	
}
body#ctl00_contact form input[type="checkbox"] + label {
	font-size: 0.9em;
}
/* end form fields on Contact */

/* Link psuedo classes */
ul.internal_links li a {
	padding-left: 6px;
	border-top: solid 1px transparent;
	border-bottom: solid 1px transparent;
	display: block;
	width: 100%;
}
ul.internal_links li a:link, ul.internal_links li a:visited {
	text-decoration: none;
	color: #00f;
}
ul.internal_links li a:hover {
	background-color: #d3dbe7; /*#dae4f2;*/
	border-top: dotted 1px #6d7c92;
	border-bottom: dotted 1px #6d7c92;
}
ul.internal_links li a:active {
	
}

#footer a:link {
	text-decoration: underline;
}
#footer a:visited {
	color: #bec9d9;
}
#footer a:hover {
	text-decoration: none;
}
#footer a:active {
	text-decoration: none;
}
/* end Link psuedo classes */

/* content and secondary content divs have different widths on the pages */
body#ctl00_home #content #main_content {
	width: 62%;
}
body#ctl00_home #content #secondary_content,
body#ctl00_contact #content #secondary_content {
	width: 26%;	
}
body#ctl00_about #content #main_content,
body#ctl00_services #content #main_content,
body#ctl00_contact #content #main_content {
	width: 80%;
	margin: 0 auto;
}
body#ctl00_services #content #secondary_content {
	display: none;	
}
body#ctl00_portfolio #secondary_content {
	/*width: 100%;*/
	float: none;	
}

/* end different widths */

/*********************** Page specific rules ************************/

/* About */
#bryan_pic {
	float: right;	
}
/* Services */
body#ctl00_services #content #main_content div {
	
}
body#ctl00_services #content #main_content #main_left {
	width: 66%;
	border-right: dotted 1px #6d7c92;
	padding-right: 1.8em;
}
body#ctl00_services #content #main_content #main_right {
	float: right;
	width: 30%;
	padding: 2.2em 0;
}
body#ctl00_services #content #main_content #main_right ul {
	line-height: 2.0em;	
}
h2 a.internal img {
	margin-bottom: -18px;
}
body#ctl00_services #content #main_content h3 {
	font-size: 2.0em;
}
body#ctl00_services #testimonials {
	border-top: dotted 1px #6d7c92;
	margin-top: 20px;	
}
body#ctl00_services #testimonials h3 {
	margin: 20px 0 2px;	
}
body#ctl00_services #testimonials ul li {
	text-align: center;
}
body#ctl00_services #testimonials ul li p {
	font: 1.0em Georgia, Times, serif; /*"Lucida Grande", "Lucida Sans Unicode", Arial, sans-serif; /*Verdana, Helvetica, Arial, sans-serif;*/
	line-height: 1.5em;
	font-style: italic;
	margin-bottom: 6px;
	color: #708091;	
}
body#ctl00_services #testimonials span {
	display: block;
	font: 1.0em Georgia, Times, serif;
	font-weight: bold;
	color: #48576a;	
}
body#ctl00_services #testimonials span.nourl {
	font-weight: normal;
	margin-top: 8px;	
}

/* Portfolio */
body#ctl00_portfolio #secondary_content {
	padding: 14px;
	min-width: 850px;	
}
#preview_window {
	float: left;
	margin-right: 14px;
	position: relative;
	width: 472px;
	height: 368px;
	padding: 10px;
	background-color: #48576a;
}
#ctl00_ContentPlaceHolder1_pnlPreviewImage a img {
	border: solid 2px transparent;	
}
#ctl00_ContentPlaceHolder1_pnlPreviewImage a img:hover {
	border: solid 2px #bec9d9;	
}
#preview_image {
		
}
#ctl00_ContentPlaceHolder1_lblInstructions,
#ctl00_ContentPlaceHolder1_lblError {
	display: block;
	width: 214px;
	height: 64px;
	font: 10pt Verdana, Helvetica, Arial, sans-serif;
	text-align: center;
	color: #bec9d9;
	line-height: 1.4em;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -32px 0 0 -112px;
}
#ctl00_ContentPlaceHolder1_lblError {
	display: none;
	width: 360px;
	height: 40px;
	margin: -20px 0 0 -190px;
	padding: 10px;
	color: Red;
	border: solid 1px Red;
	background-color: #F9C7C2;
}
#loader {
	display: none;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -16px 0 0 -16px;	
}
/*#ctl00_ContentPlaceHolder1_lnkViewSite*/
.preview_link {
	position: absolute;
	bottom: 4px;
	color: #bec9d9;
	text-decoration: none;
	font-size: 1.2em;	
}
#ctl00_ContentPlaceHolder1_pnlItemInfo, div#item_info {
	float: left;
	width: 30%;
	min-width: 240px;
	padding: 18px 0 10px;
	border-top: dotted 1px #bec9d9;
	border-bottom: dotted 1px #bec9d9;
	font-size: 1.5em;
}
div#item_info {
	display: none;	
	font-size: 1.0em;
}
div#item_info ul li,
#ctl00_ContentPlaceHolder1_pnlItemInfo div {
	margin-bottom: 12px;	
}
.info_header {
	padding: 1px;
	background-color: #bec9d9;
	border-top: dotted 1px #607081;
	border-bottom: dotted 1px #607081;
	margin-right: 8px;
	color: #607081;
	font-weight: bold;
}
#thumbs_scroll {
	display: none;
	clear: both;
	float: right;
	margin: -8px 0 -16px;
}
#thumbs_scroll ul {
	list-style: none;
}
#thumbs_scroll ul li {
	display: block;
	width: 42px;
	height: 28px;
	float: left;
	margin-right: 4px;
}
#thumbs_scroll ul li a {
	display: block;
	height: 28px;
	outline: none;
	overflow: hidden;
}
#thumbs_scroll a {
}
#thumbs_scroll a#left_arrow {
	background: url(../images/thumbs_left_arrow.jpg) no-repeat -42px 0;
}
#thumbs_scroll a#right_arrow {
	background: url(../images/thumbs_right_arrow.jpg) no-repeat -42px 0;
}
#thumbs_scroll a#left_arrow:hover,
#thumbs_scroll a#right_arrow:hover {
	background-position: -84px 0;
}
#thumbs_scroll a#left_arrow:active,
#thumbs_scroll a#right_arrow:active {
	background-position: 0 0;	
}
#portfolio_thumbs {
	/*clear: both;*/
	float: left;
	margin-right: 14px;
	position: relative;
	background: #48576a url(../images/thumbs_grad_left.jpg) no-repeat top left;
	width: 70px;
	height: 380px;
	/*margin: 20px 0 0 0;*/
	border: solid 1px #48576a;
}
#portfolio_thumbs #thumbs {
	padding: 4px;
	/*background: url(../images/thumbs_left_01.jpg) no-repeat top left;*/
	position: absolute;
	top: 0;
	left: 0;	
}
#portfolio_thumbs #thumbs h4 {
	white-space: nowrap;
	margin: 18px;
	font-size: 1.6em;	
}
#portfolio_thumbs div ul li {
	background-image: none;
	/*float: left;*/
	width: 50px;
	padding: 6px 6px 3px;
	border: solid 1px transparent;	
}
#portfolio_thumbs div ul li img {
	outline: none;	
}
#portfolio_thumbs ul li.thumb_li:hover {
	border: solid 1px #607081;
	background: url(../images/thumbs_li_back_grad_05.jpg) repeat-x top left;	
}
#portfolio_thumbs img {
	opacity: 0.6;
	filter: alpha(opacity=60);
}
#portfolio_thumbs img.thumb:hover,
#portfolio_thumbs img.selected {
	opacity: 1.0;
	filter: alpha(opacity=100);
}
#portfolio_thumbs ul li a.thumb_link {
	outline: none;	
}
#portfolio_thumbs ul li.li_hover {
	border: solid 1px #607081;
	background: url(../images/thumbs_li_back_grad_05.jpg) repeat-x top left;
}
/* below this will be the jQuery enabled thumbnail iframe */
/*#thumbs_frame_wrapper {
	display: none;
	clear: both;
	height: 162px;
	overflow: hidden;
	margin: 20px 0 0 0;
	border: solid 1px #48576a;
}
#thumbs_frame {
	
}
body#thumbnails {
	height: 162px;
	margin: 0;
	padding: 0;
	background: #48576a url(../images/thumbs_grad_02.jpg) repeat-x top left;
}
body#thumbnails div#thumbs {
	height: 162px;
	padding: 8px 0 0 8px;
	padding-left: 8px;
	background: url(../images/thumbs_left_01.jpg) no-repeat top left;
}
body#thumbnails div#thumbs ul {
	white-space: nowrap;
}
body#thumbnails div#thumbs ul li {
	float: left;
	padding: 12px;
	border: solid 1px transparent;
	background: none;
}*/

/* Contact */
#contact_pic {
	position: relative;
	float: right;
	width: 54%;
	height: 230px;	
}
#contact_pic img {
	width: 246px;
	height: 172px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -123px;
	margin-top: -86px;
}
body#ctl00_contact #secondary_content ul {
	width: 86%;
	margin: 14px auto;	
}
body#ctl00_contact #secondary_content ul li {
	text-align: center;
	font: 0.9em Verdana, Helvetica, Arial, sans-serif;
	font-style: italic;
	margin-bottom: 26px;
	color: #fff;	
}
body#ctl00_contact #secondary_content ul li span {
	font: 1.1em Georgia, Times, serif;
	color: #000;	
}
body#ctl00_contact #ctl00_ContentPlaceHolder1_pnlMessage,
body#ctl00_contact #ctl00_ContentPlaceHolder1_pnlError {
	padding: 12px;
	margin: 32px auto 14px;
	border: solid 1px Blue;
	background-color: #ebf5fc;
	display: none;
}
body#ctl00_contact #ctl00_ContentPlaceHolder1_pnlError {
	border: solid 1px Red;
	background-color: #F9C7C2;
}
body#ctl00_contact #ctl00_ContentPlaceHolder1_pnlMessage p,
body#ctl00_contact #ctl00_ContentPlaceHolder1_pnlError span {
	font: 1.6em Arial, sans-serif;
	margin: 0;
	line-height: 1.5em;
}
body#ctl00_contact #ctl00_ContentPlaceHolder1_pnlMessage p {
	color: #00c;	
}
body#ctl00_contact #ctl00_ContentPlaceHolder1_pnlError span {
	color: #c00;
}

/**************** end Page specific rules **************/

/* Rounded corners */

/* for w3c browsers that support CSS3 */
.rounded { 
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
}
/* for IE will use these rules to add images instead */
#main_content #maintop {
	position: absolute;
	top: 0;
	left: 0;
	height: 8px;
	width: 100%;
	background: transparent url(../images/tl_main.gif) no-repeat top left;	
}
#main_content #maintop div {
	position: absolute;
	top: 0;
	right: 0;
	height: 8px;
	width: 8px;
	background: transparent url(../images/tr_main.gif) no-repeat top right;
}
#main_content #mainbottom {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 8px;
	width: 100%;
	background: transparent url(../images/bl_main.gif) no-repeat bottom left;	
}
#main_content #mainbottom div {
	position: absolute;
	bottom: 0;
	right: 0;
	height: 8px;
	width: 8px;
	background: transparent url(../images/br_main.gif) no-repeat bottom right;
}
/*#secondary_content #secondarytop {
	position: absolute;
	top: 0;
	left: 0;
	height: 8px;
	width: 100%;
	background: transparent url(../images/tl_sidebar.gif) no-repeat top left;	
}
#secondary_content #secondarytop div {
	position: absolute;
	top: 0;
	right: 0;
	height: 8px;
	width: 8px;
	background: transparent url(../images/tr_sidebar.gif) no-repeat top right;
}
#secondary_content #secondarybottom {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 8px;
	width: 100%;
	background: transparent url(../images/bl_sidebar.gif) no-repeat bottom left;	
}
#secondary_content #secondarybottom div {
	position: absolute;
	bottom: 0;
	right: 0;
	height: 8px;
	width: 8px;
	background: transparent url(../images/br_sidebar.gif) no-repeat bottom right;
}*/
/* end Rounded corners */


/* Generic Helper classes */
.clear {
	clear: both;
}
.businessname {
	font-weight: bold;
	color: #556478;
}
.left {
	float: left;
}
.right {
	float: right;
}
.center {
	text-align: center;
}
.tagline {
	font: 1.8em Georgia, "Times New Roman", Times, serif;
	font-weight: bold;
	font-style: italic;
	line-height: 1.6em;
	color: #556478;	
}
.to_top {
	float: right;
	margin-top: 15px;
}
.overflow_auto {	
	overflow: auto;
}
.overflow_hidden {
	overflow: hidden;
}
dont_show {
	display: none;	
}
/* end Generic Helper classes */
