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;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

.clearboth {
	clear: both;
}

.clearright {
	clear: right;
}

.clearleft {
	clear: left;
}

/* tables still need 'cellspacing="0"' in the markup -- */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	background: url(../images/body-bg.jpg) repeat-x;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 100%;
	line-height: 1.5em;
	text-align: center;
}

/* -- layout -- */

#header {
	position: relative;
	height: 235px;
}

#maincontainer {
	width: 861px;
	margin: 0 auto;
	text-align: left;
}

img.logo {
	margin: 16px 0 0 16px;
}

p.tagline {
	width: 263px;
	height: 45px;
	display: block;
	background: url(../images/tagline.gif) no-repeat top left;
	text-indent: -9999px;
	position: absolute;
	top: 140px;
	left: 200px;
}

img.photo {
	position: absolute;
	top: 0;
	right: 0;
}

/* -- navigation -- */

#navigation {
	width: 100%;
	background: url(../images/photo-bottom.jpg) no-repeat right top;
	padding-bottom: 10px;
}

#navigation ul {
	padding-left: 30px;
}

#navigation li {
	float: left;
	display: inline;
}

#navigation li a {
	display: block;
	height: 45px;
	text-indent: -9999px;
	margin-right: 15px;
}

#navigation li.home a {
	background: url(../images/home.gif) no-repeat left bottom;
	width: 88px;
}

#navigation li.about a {
	background: url(../images/about.gif) no-repeat left bottom;
	width: 123px;
}

#navigation li.services a {
	background: url(../images/services.gif) no-repeat left bottom;
	width: 118px;
}

#navigation li.projects a {
	background: url(../images/projects.gif) no-repeat left bottom;
	width: 111px;
}

#navigation li.contact a {
	background: url(../images/contact.gif) no-repeat left bottom;
	width: 137px;
}

#navigation li.home a:hover, #navigation li.about a:hover, #navigation li.services a:hover, #navigation li.projects a:hover, #navigation li.contact a:hover {
	background-position: left top;
}

.home #navigation li.home a, .about #navigation li.about a, .services #navigation li.services a, .projects #navigation li.projects a, .contact #navigation li.contact a {
	background-position: left top;
}

/* -- end navigation -- */

/* -- content -- */

#contentcontainer {
	background: url(../images/paper-sides.jpg) repeat-y left;
}

#paper-bottom {
	background: url(../images/paper-bottom.jpg) no-repeat left bottom;
}

#paper-top {
	background: url(../images/paper-top.jpg) no-repeat left top;
	padding: 25px;
}

.maincontent {
	width: 500px;
	float: left;
}

.maincontent h1 {
	font-size: 1.5em;
	line-height: 1.2em;
	font-family: Tahoma, Arial, Helvetica, sans-serif;
	color: #8f3a51;
	margin: 0 0 0.8em 0;
}

.maincontent h2 {
	font-size: 1.2em;
	font-family: Tahoma, Arial, Helvetica, sans-serif;
	font-weight: normal;
	color: #529bde;
	margin: 0 0 0.5em 0;
	clear: left;
}

.maincontent h3 {
	font-size: 0.8em;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color: #529bde;
	margin: 1em 0 0.5em 0;
	clear: left;
}

.home .maincontent h2 {
	clear: none;
}

.maincontent p, .maincontent li {
	font-size: 0.8em;
	margin: 0 0 0.5em 0;
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
}

.maincontent a, .maincontent a:visited {
	color: #336699;
}

.maincontent ul {
	margin: 0 0 10px 30px;
}

.maincontent li {
	font-size: 0.8em;
	font-weight: bold;
	background: url(../images/logo-bullet.gif) no-repeat left center;
	padding: 0 0 0 30px;
	line-height: 2.3em;
}

.section {
	margin-bottom: 40px;
	clear: left;
}

/*/// secondary content ///*/

.secondarycontent {
	float: right;
	width: 285px;
}

.contactbox {
	background: #c88f9e;
	width: 282px;
}

.contactboxbottom {
	background: url(../images/contactboxbottom.gif) no-repeat left bottom;
}

.contactboxtop {
	background: url(../images/contactboxtop.gif) no-repeat left top;
	padding: 18px;
}

.contactbox h2 {
	color: #fff;
}

ul.contactlist {
	color: #fff;
	font-size: 0.9em;
	font-weight: bold;
	margin-top: 20px;
}

ul.contactlist li {
	padding: 0 0 0 45px;
	line-height: 40px;
}

ul.contactlist li#landline {
	background: url(../images/landline.gif) no-repeat left center;
}

ul.contactlist li#mobile {
	background: url(../images/mobile.gif) no-repeat left center;
}

ul.contactlist li#email {
	background: url(../images/email.gif) no-repeat left center;
}

ul.contactlist a {
	font-size: 0.9em;
	color: #fff;
}

.prices {
	padding: 18px;
}

.prices h2 {
	color: #8f3a51;
	margin-bottom: 0.5em;
}

.prices p span {
	font-weight: bold;
}

p.includes {
	font-size: 0.8em;
	line-height: 1em;
	padding-top: 1em;
}

.testimonial {
	margin: 35px 0;
	background: url(../images/openquote.gif) no-repeat left top;
	padding-left: 30px;
}

.testimonial q {
	font-size: 0.8em;
	color: #333;
	background: url(../images/closequote.gif) no-repeat right bottom;
	padding-right: 30px;
	display: block;
}

.testimonial cite {
	display: block;
	text-align: right;
	padding-right: 20px;
	font-size: 0.8em;
	color: #666;
}

/* -- image styles -- */

.small-photo {
	float: left;
	background: url(../images/small-photo-bg.jpg) no-repeat left top;
	padding: 9px 15px 31px 9px;
	margin: 0 20px 20px 0;
}

.large-photo {
	background: url(../images/large-photo-sides.jpg) repeat-y left;
}

.large-photo-bottom {
	background: url(../images/large-photo-bottom.jpg) no-repeat left bottom;
}

.large-photo-top {
	background: url(../images/large-photo-top.jpg) no-repeat left top;
	padding: 10px 14px 35px 11px;
}

.large-photo-top img {
	width: 261px;
}

.margin {
	padding-bottom: 20px;
	width: 100%;
}

/*img.project-photo {
	float: left; 
	margin: 0 15px 15px 0;
	width: 130px;
}*/

.projects .maincontent img {
	float: left; 
	margin: 0 15px 15px 0;
	width: 130px;
}

/* -- Contact form styles -- */

#contact-form {
	text-align: center;
	margin: 0;
	padding: 0;
}
#contact-form div {
	margin: 0 auto;
	padding: 0 0 40px 0;
	text-align: left;
	width: 100%;
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size: 0.8em;
}
*html #contact-form div {
	width: 80%;
}
#contact-form dt, #contact-form dd {
	float: left;
	padding: 4px 0;
}
#contact-form dt {
	width: 45%;
	clear: left;
	text-align: right;
}
#contact-form dd {
	width:40%;
	padding-left:2%;
}
#contact-form dd input, #contact-form select, #contact-form textarea {
	margin-left: 0;
	width: 170px;
}
#contact-form img {
	margin-left: 0;
	padding-left: 0;
}
#contact-form p {
	padding: 5px 0 10px 0;
	line-height: 1em;
}
	
#contact-form .submit-button {
	clear:both;
	padding:0 4px 4px 47%;
}
.error {
	display:block;
	border:2px solid red;
	text-align: center;
	padding:15px;
	margin:0px 0 0 0;
	font-weight: bold;
}
.success {
	display:block;
	border:2px solid green;
	text-align: center;
	padding:15px;
	margin:10px 0 0 0;
}

/* -- footer -- */

#footer {
	padding: 10px 0 20px;
}

#footer li {
	display: inline;
	border-left: 1px solid #999;
	padding: 0 20px;
	line-height: 1.1em;
	zoom: 1;
}

#footer li.first {
	border-left: none;
}

#footer li a {
	color: #666;
	font-size: 0.8em;
	text-decoration: none;
}

#footer li a:hover {
	text-decoration: underline;
}
