html,body,a,img,h1,h2,h3,p,span,div,form,input.text,label,textarea,ul,li,dl,dd,dt {
	margin:0;
	padding:0;
	border:none
}
html,body {
	height:100%
}
html {
	background:#383838 url(gfx/header.gif) repeat-x 0 0
}
body {
	background:url(gfx/mesh.gif) repeat-x 0 150px;
	font:100% Georgia, Helvetica, serif;
	color:#fff
}
a[href $='.pdf'] {
	padding:5px 0 5px 24px;
	background:url(gfx/pdf.gif) no-repeat 0 50%
}
a.no-pdf {
	padding:0;
	background:none
}
a:link,a:visited {
	color:#fff
}
a:hover {
	text-decoration:none;
	color:#cfcfcf
}
h1,h2,h3 {
	font-weight:normal;
	letter-spacing:1px
}
h1 {
	font-size:2em;
	line-height:1.4em
}
h2 {
	font-size:1.6em;
	padding:20px 0 0;
	border-bottom:1px dashed #cecece
}
h3 {
	font-size:1.4em;
	padding:25px 0 0 7px
}
p {
	font-size:1em;
	padding:10px 7px;
	line-height:1.5em;
	text-align:justify
}
ul {
	margin:10px 25px 20px 25px;
	padding:4px 0
}
ul li {
	padding:4px 0;
	margin-left:15px;
	line-height:1.6em
}
blockquote, q {
	display:block;
	font:.9em 'Trebuchet MS', Arial, Sans-Serif;
	padding:15px;
	margin:10px 40px;
	background:url(gfx/quote.gif) repeat-x 0 -1px;
	border-left:3px solid #fff;
	text-indent:15px;
}
dl {
	margin:20px;
	font:.8em Arial, sans-serif;
	line-height:1.4em;
	text-align:center;
	display:block
}
dl img {
	margin:0
}
table img {
	margin:10px 0
}
table {
	font:.8em Arial, sans-serif;
	width:100%;
	margin:0 auto;
	text-align:center
}
table td {
	padding:0 10px
}
.large {
	font-size:140%;
	padding:20px
}
.white {
	color:#fff
}
.left {
	float:left
}
.right {
	float:right
}
.center, .center p {
	text-align:center
}
img {
	margin:20px 10px
}
img.left {
	padding:20px 20px 20px 0;
	margin:0
}
img.right {
	padding:20px 0 20px 20px;
	margin:0
}
object {
	padding:5px;
	border:1px solid #fff;
	background:#383838 url(gfx/loading.gif) no-repeat 50% 50%	
}
.border,.square-img,.img-borders img {
	border:1px solid #fff
}
.background {
	background-color:#383838
}
.clear {
	clear:both
}
img.square-img {
	padding:0;
	margin:1em
}
img.square-img.right {
	margin-right:0
}
img.square-img.left {
	margin-left:0
}
#wrapper {
	min-height:100%;
	height:auto !important;
	height:100%;
	padding:0 9px;
	margin:0 auto
}
#wrapper,#footer div {
	max-width:950px;
	min-width:750px
}
#top {
	height:150px;
	position:relative;
	background:#701313 url(gfx/header.gif) repeat-x 0 0
}
#content {
	padding:25px 5px;
	position:relative;
}
#content.narrow {
	padding-left:210px
}
#wrapper:after,#content:after,.cemcolour:after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden
}
#footer {
	height:6em;
	margin-top:10px;
	clear:both;
	text-align:center;
	background:#202020;
	border-top:1px solid #fff;
	font:.8em Arial, Helvetica, sans-serif
}
#footer div {
	margin:0 auto;
	padding:7px 0 0;
	text-align:right
}
#footer p {
	padding:8px 10px 0;
	color:#afafaf;
	text-align:right
}
#footer a {
	color:#d7d7d7
}
#logo, #slogan {
	display:block;
	position:absolute;
}
#logo {
	width:150px;
	height:45px;
	top:30px;
	left:5px
}
#leaf a, #leaf img {
	padding:0;
	margin:0
}
#leaf a {
	display:block;
	width:54px;
	height:57px;
	position:absolute;
	top:10px;
	right:10px
}
#slogan {
	width:715px;
	height:48px;
	top:32px;
	left:180px
}
ul#nav {
	position:absolute;
	bottom:5px;
	right:0;
	background:url(gfx/menu.gif) no-repeat 0 0;
	width:682px;
	height:25px;
	padding:0;
	margin:0
}
ul#nav li {
	display:inline;
	margin:0;
	padding:0
}
#nav a {
	display:block;
	float:left;
	width:112px;
	height:25px;
	text-indent:-9999px
}
#nav a:hover,#nav a.on {
	width:122px;
	margin-left:-10px;
	background:url(gfx/menu.gif)
}
#nav li.about a,#nav li.about a.on {
	width:122px
}
#nav li.about a:hover,#nav li.about a.on {
	background-position:0 -25px;
	margin-left:0
}
#nav li.partners a:hover,#nav li.partners a.on {
	background-position:-122px -25px
}
#nav li.products a:hover,#nav li.products a.on {
	background-position:-244px -25px
}
#nav li.projects a:hover,#nav li.projects a.on {
	background-position:-366px -25px
}
#nav li.services a:hover,#nav li.services a.on {
	background-position:-488px -25px
}
#nav li.contact a:hover,#nav li.contact a.on {
	background-position:0 -50px
}
/* sidebar */
ul#sidebar {
	position:absolute;
	top:30px;
	left:0;
	width:170px;
	margin:0;
	padding:0	
}
ul#sidebar {
	margin:0;
	padding:3px 0;
	float:left;
}
ul#sidebar li {
	list-style:none;
	margin:0
}
ul#sidebar li a {
	display:block;
	width:90px;
	padding:5px 10px 9px;
	font:.8em Arial;
	text-decoration:none;
	background:url(gfx/tabber.gif) no-repeat 0 0;
	color:#fff
}
ul#sidebar li a {
	width:160px;
	background:url(gfx/sidebar.gif) no-repeat 0 0;
}
ul#sidebar li a:hover {
	background-position:-180px 0
}
ul#sidebar li a.on, ul#sidebar li a:active {
	background-position:-360px 0
}
ul#sidebar li ul {
	margin:0 0 0 10px
}
/* home */
.liquid-container {
	float:left;
	margin-right:-480px;
	width:100%
}
.liquid-inner {
	margin-right:480px;
}
.fixed {
	width:450px;
	float:right
}
.fixed img {
	padding:0;
	margin:0
}
#architect-notice {
	background:url(gfx/block.jpg) no-repeat 50% 0;
	padding:10px;
	margin:10px 0
}
#architect-notice h2 {padding:0}
#architect-notice ul {
	margin-top:0
}
/* products */
.examples {
	text-align:center;
	max-width:600px;
	margin:0 auto;
	padding-top:20px;
	clear:both
}
.examples img {
	padding:0;
	margin:0	
}
.examples p {
	text-align:center
}
.cemcolour {
	width:500px;
	padding:10px 0
}
.toplink {
	float:right;
	position:relative;
	top:-1.8em;
	padding-left:22px;
	background:url(gfx/top-arrow.gif) no-repeat 0 80%	
}
/* contact */
.contact-form {
	width:54%;
	float:left
}
.contact-form ul {
	background:url(gfx/block.gif) repeat-x 0 -1px;
	border-left:3px solid #fff;
	list-style:none;
	font:1em 'Trebuchet MS', Arial, Sans-Serif;
}
#contact-form div {
	clear:left;
	padding-top:.6em
}
#contact-form label {
	float:left;
	width:4.5em;
	font-size:1em;
	padding:2px
}
#contact-form input.text,#contact-form select,#contact-form textarea {
	border:2px solid #ccc;
	background:#fff url(graphics/inputBG.gif) repeat-x 0 0;
	color:#000
}
#contact-form input.text {
	font:.9em Arial;
	width:46%;
	padding:3px
}
#contact-form option {
	font:.9em Arial;
	padding:3px 15px 0 3px;
	margin:3px 0
}
#contact-form textarea {
	font:.9em Arial;
	width:70%;
	float:left;
	height:125px;
	padding:5px
}
#contact-form input.focus,#contact-form select.focus,#contact-form textarea.focus {
	border-color:#777
}
.message,.error
{
	font:1em Arial;
	padding:8px;
	margin:5px 0;
	text-indent:0
}
.message {
	width:90%
}
.error {
	font-size:.8em;
	padding:5px;
	margin:0 5px
}
.spacer {
	padding-left:4em
}
.success {
	color:#fff;
	background:green
}
.failed {
	color:#fff;
	background:#791516
}
#google-map {
	width:100%;
	height:400px;
	border:1px solid #ccc;
	color:#000
}
label {
	padding:0 3px
}
input.text {
	border:1px solid #ccc;
	padding:3px
}
.error {
	font-size:.8em;
	padding:3px;
	color:#fff;
	background:#A51410
}