body, td{
	font-family: Arial, Helvetica, sans-serif; 
	font-size: 11px;
	color: #333;/*default colour for text*/
	padding: 0;
	margin: 0;}

a {text-decoration: underline;color: #db712d;}
a:hover {text-decoration: underline; color:#00a6d1;}
a:active {color: silver;}

a.sel {color: #f76c97;}
img{border: 0;}
/*base margin/padding rule*/
ol,ul,h1, h2, h3, h4, h5,h6,h7,p,table,caption {padding: 0; margin: 0.4em 20px;position: relative;text-align: left;vertical-align: top;}

h1, h2, h3, h4, h5 {margin-top: 0.6em; margin-bottom: 0.6em;}
h1 {font-size: 1.6em;font-weight: normal;}
h2 {font-size: 1.6em;font-weight: normal;}
h3 {font-size: 1.2em;}
h4 {font-size: 1.1em;}
h5 {font-size: 1.1em;}
p {margin: 0.5em 20px 0.6em 20px;}
br {line-height: 0.2em;padding: 0;margin: 0;}
table {vertical-align: bottom;}
td {text-align: left;padding: 2px;margin: 0;vertical-align: bottom;border-top: 1px #c4e2f4 solid;font-size: 0.9em;}
th {text-align: left;padding: 2px;font-size: 10px;color: #1c8095;}
td p {margin: 0.1em 1px;padding: 0;}
li {padding: 0;margin: 0.2em 0 0 2em;}
ul li {zoom: 1;}
ol li {	list-style-type: decimal;	display: list-item;}
em {}

.fr {float: right;display: inline;}
.fl {float: left;display: inline;}
.ar{text-align: right;}
.ac{text-align: center;}
.al{text-align: left;}


body {
	/*default background*/
	background: white;
	position: relative;
	}

/*other stuff*/
#header,
#container,
#footer {
	width: 900px;
	margin: 0px auto;
	padding: 0;
	position: relative;
	overflow: hidden;
	display: block;
}

#footer {
	clear: both;
	position: relative;
	border-top: 1px #595b61 solid;
	zoom:1;
}
#container {
	background: url(/images/bg_container_default.gif) repeat-y left top;
	clear:both;
	min-height: 40em;
	_height: 40em;
	z-index: 1;
	zoom:1;
}

#wide {
	/*Super wide area for homepage malarky*/
	float: left;
}
#crumb {
	width: 600px;
	float: left;
	display:inline; /*IE6 hack*/
}
#crumb a { color: #333333; }

#banner {
	width: 600px;
	height: 156px;
	background: url(/images/bg_banner_default.jpg) no-repeat left top;
	float: left;
	display:inline; /*IE6 hack*/
}

#content {
	margin: 0px;
	padding: 1px 0px;
	overflow: hidden;
	width: 590px;
	position: relative;
	float: left;
	display:inline; /*IE6 hack*/
	font-size: 1.1em;
	}

#side {
	/*position: absolute;
	top: 0;
	right: 0;
	*/
	float:right;
	display:inline; /*IE6 hack*/
	margin: 0px;
	padding: 0;
	width: 300px;
	background: #595b61;
	z-index: 10;
}

/*////////////////
*	Header stuff
////////////////*/
#header{
	overflow: hidden;
	background: #000 url(/images/bg_header.jpg) no-repeat left top;
	min-height: 138px;
}
#header h1{
	margin: 0;
	padding: 0;
	}
#header h1 a {
	width: 406px;
	height: 124px;
	display: block;
	margin: 0;
	padding: 0;
	background: url(/images/logo_default.gif) no-repeat left top;
}
#header h1 a span {display: none;visibility: hidden;}

#header div#navtop {
	position: absolute;
	right: 0;
	top: 80px;
	z-index: 10;
	text-transform: uppercase;
}

#header ul {
}
#header .menu li {
	/*float: left;*/
	display: inline;
	margin: 0;
	padding: 0;
	position: relative;
	list-style-type: none;
	list-style-image: none;
	zoom: 1;
}
#header .menu li a {
	text-decoration: none;
	padding: 0 8px;
	line-height: 1em;
	color: #999;
	border-left: 1px #999 solid;
}
#header .menu li a.sel {
	font-weight: bold;
	color: #fff;
}
#header .menu li a:hover {
	color: #00a6d1;
}
#header .menu li.first a{
	border: none;
}


/*////////////////
*	Main nav
////////////////*/
#navbase {
	position: relative;
	float: left;
	display: inline; /*IE6 hack */
	width: 600px;
	background: url(/images/bg_navbase.gif) repeat-x left top;
	padding: 1px 0;
	text-transform: uppercase;
}
#navbase ul {
	padding: 1px 0;
}
#navbase .menu li {
	display: inline;
	margin: 0;
	padding: 0;
	position: relative;
	list-style-type: none;
	list-style-image: none;
	zoom: 1;
	border-left: 1px #000 solid;
}
#navbase .menu li a {
	text-decoration: none;
	padding: 0 8px;
	color: #cccccc;
	border-left: 1px #999999 solid;
}
#navbase .menu li a.sel {
	font-weight: bold;
	color: #fff;
}
#navbase .menu li a:hover {
	color: #00a6d1;
}
#navbase .menu li.first,
#navbase .menu li.first a{
	border: none;
}

/*////////////////
*	sidebar content stuff
////////////////*/
#side div.topblock {
	background: #333;
	padding: 1px 0;
	margin-bottom: 5px;
}
#side .fullblock {
	padding: 1px 0;
	color: white;
}

#side h2 {
	color: white;
	text-transform: lowercase;
}

#side ul.menu {
	list-style-type: none;
	list-style-image: none;
	margin-left: 10px;
	margin-right: 10px;
	display: block;
	position: relative;
	margin-top: 1em;
	margin-bottom: 2em;
	background: url(/images/bg_side_menu_0.gif) no-repeat left bottom;
	}

#side .menu li {
	list-style-type: none;
	list-style-image: none;
	display: block;
	position: relative;
	zoom: 1;
	margin: 0;
	padding: 0;
}
#side li a {
	margin: 0;
	padding: 0.4em 12px;
	display: block;
	color: #999;
	text-decoration: none;
	background: url(/images/bg_side_menu_0.gif) no-repeat left top;
}

#side li.sel a {
	font-weight: normal;
	color: #fff;
	background: url(/images/bg_side_menu_1.gif) repeat-y left top;
}

#side li a:hover {
	color: white;
	text-decoration: underline;
}

/*////////////////
*	MultiBlock content stuff
////////////////*/

#container h1 {
	margin-top: 1em;
}

/*general*/
#container div.img p,
#container div.imghalf p{
	/*image note*/
	font-size: 0.85em;
	margin: 0.4em 18px 0.4em 10px;
}
#container .impact {
	background-color: #81cf12;
	padding: 8px 0;/*make room for corners*/
	color: white;
}
#container p.seemore {
	position: relative;
	overflow: hidden;
}
#container p.seemore a {
	color: #dd712e;
	text-decoration: none;
	line-height: 1.4em;
}
#container p.seemore a:hover {
	color: black;
}
#container p.seemore a span {
	padding: 3px 12px 3px 0px;
}
#container .impact p.seemore a {
	color: black;
}

/*////////////////
*	#content specific
////////////////*/
#content h3 {
	background: url(/images/bg_content_h3.jpg) repeat-y left top;
	padding: 0.3em 12px;
	margin:  0 0 0 0.3em;
}

#content .fr {float: right;display: inline;clear: right;}
#content .fl {float: left;display: inline;clear: left;}
#content div.imghalf.fl {margin-right: 8px;}
#content div.leveler{clear: both;}
#content .smallblock,
#content .fullblock,
#content .halfblock,
#content .featureblock,
#content .fullimg,
#content .newsblock {
	margin: 5px 0px;
	/*margin: 1px 0 1px 0;*/
	/*padding: 1px 0;*/
	position: relative;
	overflow: hidden;
	}
#content .smallblock {
	font-size: 0.9em;
	width: 440px;
}	
#content .halfblock {
	width: 440px;
	position: relative;
	}
#content .fullblock,
#content .fullimg,
#content .featureblock {
	clear: both;
}
/*////////////////
*	news block
////////////////*/
#content .newsblock {
}
#content .newsblock div.thumb {
	width: 295px;
	margin:10px 20px;
}
#content .newsblock div.thumb img {
	margin:0;
	padding:0;
	display: block;
}
#content .newsblock div.thumb a {
	display:block;
	text-decoration: none;
	color: #333333;
}
#content .newsblock div.thumb span {
	clear: both;
	display: block;
	border: 1px #999999 solid;
	border-top: none;
	background: #dde1e5;
	margin: 0;
	padding: 2px 4px;
}

/*////////////////
*	featureblock
////////////////*/
#content .featureblock {
	background: #dde1e5 url(/images/bg_featureblock.gif) repeat-y left top;
	margin: 20px 10px;
	overflow: hidden;
	position: relative;
	border-top: 1px white solid;
	border-bottom: 1px white solid;
	zoom: 1;
}
#content .featureblock div.thumb {
	float: left;
	width: 160px;
	background: black;
	color: white;
	margin: 0;
	padding:0;
}
#content .featureblock div.thumb a {
	color: white;
	font-weight: bold;
}
#content .featureblock div.thumb a span {
	display: block;
	margin: 0.2em 10px; 
}
#content .featureblock div.info {
	position:relative;
	margin:0px 0 0px 160px;
	padding:5px 0;
}
#content .featureblock div.info p {
	margin: 0.3em 8px;
}

/*////////////////
*	fullimg
////////////////*/
#content .fullimg div.img {
	/*width: 530px;*/
	padding: 0 0 0 0;
	margin: 1px auto;
}
#content .fullimg div.img div {
	padding: 0 0 18px 0;
}
#content .fullimg div.img img.full {
	/*width: 502px;*/
	padding: 10px 18px 00px 10px;
}

/*////////////////
*	Imghalf
////////////////*/

#content  div.imghalf {
	width: 402px;
	padding: 0px;
}
#content div.imghalf img {
	width: 400px;
	padding: 0;
	border: 1px #333 solid;
}
#content .impact div.imghalf {
	background: #333;
}

/*////////////////
	Homepage stuff : Tweaks to style
////////////////*/
body.tpl_home #container {
	background: url(/images/bg_container_home.gif) repeat-y left top;
	min-height: 5em;
	_height: auto;
}
body.tpl_home #side {
	background: #f4e1bb;
	color: #333333;
}
body.tpl_home #side .fullblock {
	color: #333333;
}
body.tpl_home #footer {
	border-top: 1px #f4e1bb solid;
}

/*////////////////
	Homepage block
////////////////*/
div.homepageblock {
	/*287px height*/
	background: url(/images/hp_banner_default.jpg) no-repeat left top;
	height: 118px;
	padding: 168px 0 1px 0;
	zoom: 1;
}
div.homepageblock div.intro {
	position: absolute;
	top: 0;
	right: 0;
	width: 300px;
	padding: 0px 0;
	z-index: 10;
}
div.homepageblock div.intro h3 {
	background: #e4a138;
	color: white;
	font-size: 1.4em;
	margin:0 0 0.5em 0;
	padding: 1em 20px;
	font-weight:normal;
}
div.homepageblock a {
	color: #db712d;
	
}
div.homepageblock div.strapline {
	/*height + padding + margin must <= 285px*/ 
	margin: 0 0 20px 200px;
	background: #000;
	padding: 8px 0 12px 0;
	height: 75px;
	color: white;
	font-size: 1.3em;
	position: relative;
}
div.homepageblock div.strapline h3,
div.homepageblock div.strapline p {
	margin-top: 0.2em;
	margin-bottom: 0.2em;
}

/*////////////////
*	Main menu
////////////////*/

p.menu{
	text-align: right;
	font-size: 1.1em;
}
div.submenu {
	margin: 0;
	position: relative;
	padding: 0;
	background: #f9f9f9 url(/images/bg_submenu_shadow.gif) left top repeat-x;
	border-top: 1px #fff solid;
	border-bottom: 1px #f2f1f1 solid;
}
div.submenu p{
	text-align: right;
	font-size: 1em;
	margin-top: 0px;
	margin-bottom: 0px;
	color: dimgray;
}
div.submenu a{
	color: #68a351;
}

/*popupimage*/
body.popupimg{
  }
	
/*////////////////
*	Contact Form
////////////////*/

input, select, textarea{
	border: 1px #333 solid;
	width: 26em;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	padding: 1px 2px;
}
input.chbx {width: auto;border: none;}

div.formElement {
	position: relative;
	clear: both;
	padding: 1px 0;
	zoom: 1;
	overflow: hidden;
	}

div.formElement.invalid {
	position: relative;
	border-top: 1px #ff0000 dotted;
	border-bottom: 1px #ff0000 dotted;
	padding: 2px 1px 2px 1px;
	margin: 3px 0px 3px 0px;
	background-color: gold;
	vertical-align: top;
	display: block;
	white-space: nowrap;}

div.formElement.valid {
	position: relative;
	/*height: 1%;*/
	padding: 1px 2px 1px 2px;
	margin: 0px 0px 2px 0px;
	display: block;
	white-space: nowrap;}
	
div.formElement.invalid.required input {background-color: #eee;}
div.formElement.invalid.required option {background-color: #eee;}

div.formElement.valid.required input,
div.formElement.valid.required option,
div.formElement.valid.required textarea {background-color: #eee;}


div.label,
label.blk {
	display: inline;
	float: left;
	clear: none;
	color: #333;
	margin-top: 2px;
	margin-right: 5px;
	text-align: right;
	vertical-align: top;
	width: 10em;
	}
div.input,
span.blk {
	display: inline;
	margin-right: 2px;
	float: left;
	clear: none;
	}

div#invalidFormHeader {
	position: relative;
	/*height: 1%;*/
	/*border: 2px #ff0000 dashed;*/
	padding: 4px 20px 4px 20px;
	font-size: 13px;
	background: gold url("/admin/images/bg_errorheader.gif") top left repeat-x;
	color: black;
	font-weight: bold;}

div.errTxt {
	margin-top: 3px;
	padding: 2px 2px 0px 1em;
	color: #0000a0;
	font-weight: bold;
	vertical-align: top;}

div.hintreq:first-letter {
	color: red;
	margin-left: -1em;}
	
div.hintreq {
	float: left;
	clear: none;
	display: inline;
	margin-top: 3px;
	padding: 2px 2px 0px 1em;
	color: #0000a0;
	font-size: 11px;
	vertical-align: top;}

div.outputtext {
	float: left;
	clear: none;
	margin-top: 3px;
	padding: 2px 2px 0px 2px;
	font-size: 11px;
	vertical-align: top;
}

div.hint {
	float: left;
	clear: none;
	margin-top: 2px;
	padding: 2px 2px 0px 1em;
	color: #0000a0;
	font-size: 11px;
	vertical-align: top;
}

