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,font,img,ins,kbd,q,s,samp,
small,strike,sub,sup,tt,var,
dd,dl,dt,li,ol,ul,
fieldset,form,label,legend,
table,caption,tbody,tfoot,thead,tr,th,td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: normal;
	font-style: normal;
	font-size: 100%;
	font-family: inherit;
	text-align: left;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
ol,ul {
	list-style: none;
}
q:before,q:after,
blockquote:before,blockquote:after {
	content: "";
}

/**
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    contenteditable attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that are clearfixed.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.cf:before,
.cf:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.cf:after {
    clear: both;
}

/**
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.cf {
    *zoom: 1;
}

html {
	width: 100%;
	text-align: center;
	background: #e0e0e0;
	min-height: 100%;
	margin-bottom: 1px;
}

body {
	font-size: 16px;
	line-height: 16px;
	font-family: Georgia, "Times New Roman", Times, serif;
	color: #636363;
}

strong {
	font-family: Arial, Helvetica, sans-serif;
}

blockquote {
	padding: 0 0 0 64px;
	background: transparent url(../images/back/bg_quote.gif) no-repeat 0 0;	
}

blockquote p {
	padding-bottom: 9px;
}

h1 {
	color: #4273b4;
	margin-bottom: 7px;
	font-size: 23px;
	line-height: 28px;
	font-weight: normal;
	font-family: Georgia, "Times New Roman", Times, serif;
}

h2 {
	color: #4273b4;
	margin: 7px 0 6px 0;
	font-size: 18px;
	line-height: 20px;
	font-weight: normal;
	font-family: Georgia, "Times New Roman", Times, serif;
}

p {
	padding-bottom: 12px;
	line-height: 22px;
}

ul.body_list {
	padding: 0 0 20px 30px;
}

	ul.body_list li {
		padding: 0 0 7px 15px;
		background: transparent url(../images/back/bullet.gif) no-repeat 0 8px;
		line-height: 1.3;
	}

span.blue {
	color: #4273b4;
}

#error_p {
	color: #4273b4;
}

a, a:link, a:visited { color: #4273b4; text-decoration: underline; }
a:hover, a:active { text-decoration: none; }

ul#navigation a, ul#navigation a:link, ul#navigation a:visited { color: #8d8d8d; text-decoration: none; font-size: 15px; font-family: Arial; }
ul#navigation a:hover, ul#navigation a:active { color: #4273b4; }

ul#navigation li.selected a, ul#navigation li.selected a:link, ul#navigation li.selected a:visited { color: #4273b4; text-decoration: none; font-size: 15px; font-family: Arial; }

ul.body_list li a, ul.body_list li a:link, ul.body_list li a:visited { color: #8d8d8d; text-decoration: none; }
ul.body_list li a:hover, ul.body_list li a:active { text-decoration: underline; }

#footer a, #footer a:link, #footer a:visited { color: #6e6e6e; text-decoration: none; }
#footer a:hover, #footer a:active { text-decoration: underline; }

#container {
	margin: auto;
	text-align: left;
}

	#header {
		background: transparent url(../images/back/bg_top.jpg) repeat-x 0 0;
	}
		
		img.logo {
			float: left;
			margin: 0 0 30px 0;
		}
		
		#header_inside {
			width: 786px;
			height: 179px;
			background: transparent url(../images/back/bg_header.jpg) no-repeat 0 0;
			margin: 21px auto 0 auto;
		}
			
			#header_holder {
				margin: 48px auto 0 auto;
				width: 668px;
			}
		
			ul#navigation {
				width: 642px;
				border-top: solid 1px #e0e0e0;
				border-bottom: solid 1px #e0e0e0;
				padding: 0 13px 0 13px;
				clear: both;
			}
			
				ul#navigation li {
					float: left;
					padding: 9px 0 9px 0;
				}
				
				ul#navigation li.home {
					width: 100px;
				}

				ul#navigation li.about {
					width: 130px;
				}

				ul#navigation li.services {
					width: 193px;
				}

				ul#navigation li.testimonials {
					width: 137px;
				}

				ul#navigation li.contact {
					width: 80px;
				}


/*		#search_form {
			float: right;
			padding: 0 0px 0 0;
			width: 510px;
		}
	
			#search_form label {
				font-family: Verdana, Arial, Helvetica, sans-serif;
				font-size: 20px;
				color: #e8d6b7;
			}
			
				#search_form input.txt {
					width: 345px;
					height: 21px;
					background: transparent url(../images/back/bg_search.jpg) no-repeat 0 0;
					border: none;
					padding: 5px 0 0 30px;
					vertical-align: middle;
					color: #909090;
					font: 12px/16px normal Verdana, Arial, Helvetica, sans-serif;
				}
				
				#search_form input#go_button {
					vertical-align: middle;
					padding: 0 0 0 4px;					
				}	*/		

	.content {
		clear: both;
		padding: 0 0 20px 0;
		background: #fff url(../images/back/bg_bottom.jpg) repeat-x bottom left;
	}

		.header_image {
			/*width: 668px;
			margin: 0 auto 0 auto;
			height: 112px;*/
			background: #fff url(../images/back/header_default.jpg) no-repeat center top;
		}
		
		.h_default {
			background-image: url(../images/back/header_default.jpg);
		}

		.h_about {
			background-image: url(../images/back/header_about.jpg);
		}

		.h_services {
			background-image: url(../images/back/header_services.jpg);
		}

		.h_testimonials {
			background-image: url(../images/back/header_testimonials.jpg);
		}

		.h_contact {
			background-image: url(../images/back/header_contact.jpg);
		}

		.content_main {
			margin: 0 auto;
			padding: 10px 0 30px 20px;
			width: 766px;
			margin: 0 auto;
			background: #fff url(../images/back/bg_footer.jpg) no-repeat bottom left;
		}

			.content_inside {
				padding: 112px 0 0 58px;
				margin: 0 50px 0 30px;
			}

				.content_left {
					margin-left: -50px;
					padding-top: 20px;
				}

					.side_image {
						float: right;
						width: 273px;
						height: 303px;
						background: transparent url(../images/back/bg_abacus.jpg) no-repeat bottom right;
						margin: 40px 0 0 0;
					}

					.side_about {
						background-image: url(../images/back/bg_about.jpg);
						margin: 25px 50px 0 0;
						width: 210px;
					}
				
					#promo-home li {
						width: 363px;
						height: 84px;
						margin: 15px 0 20px 0;
					}
					
						#promo-home li a, #promo-home li a:link, #promo-home li a:visited {
							width: 280px;
							text-decoration: none;
							line-height: 22px;
							color: #838383;
							background: transparent url(../images/back/bg-promo.jpg) no-repeat 0 -84px;
							display: block;
							height: 62px;
							padding: 8px 65px 14px 18px;
							font-size: 15px;
						}
							
							#promo-home li a strong {
								color: #638bc6;
								font-weight: normal;
							}
						
						#promo-home li a:hover, #promo-home li a:active {
							background-position: 0 0;
						}

		.testimonials_holder {
			float: left;
			width: 400px;
			padding: 20px 0 0 0;
		}
	
		.quote_source {
			padding: 0 0 17px 100px;
			color: #a1a1a1;
		}

			#contact_form {
				float: left;
				width: 400px;
			}

			#contact_form legend {
				display: none;
			}

			#contact_form div {
				padding: 5px 0;
			}

			#contact_form div#recaptcha_widget_div, #contact_form div#recaptcha_widget_div div {
				padding: 0;
			}

			#contact_form div#comments_holder {
				height: auto;
			}
			
			#contact_form label {
				height: 23px;
				line-height: 20px;
				text-align: left;
				padding: 0 7px 0 0;
				display: block;
			}
			
			#contact_form label span {
				color: #4273b4;
			}
			
			#contact_form label.comments {
				height: auto;
				width: auto;
				display: block;
				padding: 5px 7px 3px 0;
			}
			
			#contact_form textarea {
				clear: both;
				color: #636363;
				border: solid 1px #cdcdcd;
				font-size: 12px;
				padding: 4px;
				font-family: Arial, Helvetica, sans-serif;
			}
			
			#contact_form input.txt {
				width: 180px;
				height: 20px;
				font-size: 13px;
				color: #636363;
				border: solid 1px #cdcdcd;
				padding: 4px 0 1px 3px;
			}
			
			#contact_form input#submit {
				margin: 10px 0 0 0;
			}

			#footer {
				clear: both;
				padding: 20px 20px 0 0;
			}
			
				#footer p {
					color: #6e6e6e;
					font-size: 12px;
					font-family: Arial, Helvetica, sans-serif;
					text-align: center;
				}

@media (max-width: 767px) {

	html {
		background: none;
		margin-bottom: 0;
	}

	#header {
		background: none;
	}

	#header_holder {
		margin-top: 0;
		width: auto;
	}

	#header_inside {
		width: auto;
		background: none;
		height: auto;
		text-align: center;
	}

	img.logo {
		float: none;
		margin: 0 auto 30px auto;
	}

	#logo_link {
		display: block;
		width: 168px;
		height: 52px;
		margin: 0 auto 20px auto;
	}

	ul#navigation {
		width: auto;
	}

	ul#navigation li {
		float: none;
		text-align: center;
	}

	ul#navigation li.home, ul#navigation li.about, ul#navigation li.services, ul#navigation li.testimonials, ul#navigation li.contact {
		width: auto;
		padding: 0;
	}

	ul#navigation a,
	ul#navigation a:link,
	ul#navigation a:visited {
		display: block;
		text-align: center;
		padding: 10px 0;
	}

	ul#navigation a:hover {
		background: #eee;
	}

	.content, .content_main {
		background: none;
		width: auto;
		padding-bottom: 0;
		padding-left: 0;
	}

	.content_inside {
		padding: 112px 20px 0 20px;
		margin: 0;
		background-position: top center;
	}

	.content_left {
		margin-left: 0;
	}

	.side_image	{
		display: none;
	}

	#promo-home li a,
	#promo-home li a:link,
	#promo-home li a:visited {
		background: #eee;
		border: solid 1px #ccc;
		width: auto;
		height: auto;
		padding: 10px;
	}

	#promo-home li {
		width: auto;
		height: auto;
		margin: 0 0 14px 0;
	}

	.testimonials_holder {
		width: auto;
	}

	#contact_form {
		width: auto;
	}

	#contact_form textarea {
		width: 100%;
	}

}

@media (max-width: 680px) {

	.content_inside {
		background-position: 0 0;
	}

	.h_services {
		background-position: top center;
	}

}