html {
	background: #fff;
}

body, td{
	font-family: "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	padding: 0;
	margin: 0;
	color: #373d39;
	}
a {
	text-decoration: underline;
	color: #f5a81c;
	}
a:hover {
	text-decoration: underline; 
	color: #26136c;
}
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 10px;position: relative;text-align: left; line-height:130%;}
h1, h2, h3, h4, h5 {margin-top: 0.5em; margin-bottom: 0.5em; font-weight: normal;}
h1 {font-size: 1.3em;}
h2 {font-size: 1.25em;}
h3 {font-size: 1.25em;}
h4 {font-size: 1em; font-weight: bold;}
h5 {font-size: 1em; font-weight: bold;}
p {margin: 0.5em 10px 0.6em 10px;}
br {line-height: 0.1em;padding: 0;margin: 0;font-size: 0.5em;}
table {vertical-align: bottom;}
td {text-align: left;padding: 2px;margin: 0;vertical-align: bottom;}
th {text-align: left;padding: 2px;border-bottom:1px #44a8c8 solid;}
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;vertical-align: top;}
em {}
blockquote {margin: 0.4em 20px;}
blockquote p {margin: 0.4em 0px;}

.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*/
	position: relative;
	margin: 0px auto;
 	background: #fff url(/images/bg_html.gif) repeat-x left top;
	}

/*other stuff*/
#header,
#simpleheader,
#container,
#footer {
	/*1px left + 4px right pad for bg shadow*/
	width: 960px;
	padding: 0 4px 0px 1px;
	position: relative;
	display: block;
	margin: 0 auto;
	zoom: 1;
}

#footer {
	padding-top:3em;
	padding-bottom:2em;
	background: url(/images/bg_footer.png) no-repeat left top;
}

#container {
	clear:both;
	z-index: 1;
	padding-top: 1px;
	position: relative;
	background: url(/images/bg_container.png) repeat-y left top;
	padding-bottom: 1em;
	overflow: hidden;
}

#banner {
	margin: 0 10px;
	float: left;
	display: inline;
	padding: 0;
	zoom: 1;
	width: 680px;
}

#content {
	margin: 0 20px;
	padding: 0px;
	zoom:1;
	width: 640px;
	float:left;
	display: inline;/*ie6*/
	min-height: 30em;
	_height: 30em;
}
#side {
	/*Side has no background colour : #side div.block does*/
	margin: 0px 20px 20px 0px;
	padding: 0px 0;
	width: 260px;
	display: inline;/*ie6*/
	float: left;
	color: #777;
}

.tpl_home #content,
.tpl_home #side {
	/*homepage template has no crumb so add a bit of vspace*/
	margin-top: 10px;
}

/*Crumb*/
#container .crumb {
	margin: 0.5em 20px 0em 30px;
	font-size: 0.9em;
	color: #1cbae7;
	/*background: #f9fbfc url(/images/bg_crumb.gif) repeat-x left top;*/
}
#container .crumb a {
	color: #1cbae7;
}
#container .crumb a:hover {
	color: #e02328;
}


/*////////////////
*	Header stuff
////////////////*/

#head_out {
	position: relative;
	/*208px height*/
	padding-top: 1px;
	background: url(/images/bg_head.jpg) no-repeat 20px top;
}
#header{
}
#header h1{
	/*158px high overall*/
	margin: 1px 0 8px 27px;
	padding: 0;
	zoom:1; /*IE6 hack*/
	}
#header h1 a {
	width: 386px;
	height: 147px;
	display: block;
	margin: 0;
	padding: 0;
	background: url(/images/logo_default.gif) no-repeat left top;
}
#header h1 a span {display: none;visibility: hidden;}


/*////////////////
*	Main nav
////////////////*/
#navbase {
	/*50px height*/
	position: relative;
	text-transform: uppercase;
	padding-top:1px;
	overflow: hidden;
}
#navbase ul {
	padding: 0;
	margin: 0 0 0 10px;
	overflow: hidden;
	position: relative;
	zoom:1;
}
#navbase .menu li {
	float: left;
	display: inline;
	margin: 0 -1px 0 0 ;
	padding: 0;
	position: relative;
	list-style-type: none;
	list-style-image: none;
	zoom: 1;
}
#navbase .menu li a {
	/*Overall height should be 50px*/
	float: left;
	display: inline; /*IE6 Hack*/
	text-decoration: none;
	margin:0;
	color: #fff;
	padding: 0 10px 0 0;
	background: url(/images/tab_r_0.png) no-repeat right top;
}
#navbase .menu li a span {
	display: block;
	padding: 20px 2px 14px 12px;
	background: url(/images/tab_l_0.png) no-repeat left top;
}
#navbase .menu li.first a {
}
#navbase .menu li a:hover {
	color: #2e3191;
	background: url(/images/tab_r_1.png) no-repeat right top;
}
#navbase .menu li a:hover span {
	background: url(/images/tab_l_1.png) no-repeat left top;
}
#navbase .menu li a.sel {
	background: url(/images/tab_r_1.png) no-repeat right top;
	color: black;
}
#navbase .menu li a.sel span {
	background: url(/images/tab_l_1.png) no-repeat left top;
}

/*
////////////////
*	Footer
////////////////
*/
#footer {
	color: #44a8c8;
}
#footer a {
	color: #e02328;
}
#footer a:hover {
	color: #eca61f;
}
#footer ul li {
	display:inline;
	margin: 0 1em 0 0;
	}
#footer p {
	font-size:0.9em;
}


/*
////////////////
*	Sidebar area
*	MultiBlock stuff
////////////////
*/
#side ul.menu {
	list-style-type: none;
	list-style-image: none;
	margin: 10px 20px 2em 20px;
	display: block;
	position: relative;
	}
#side ul.menu ul {
	margin: 0;
	
}
#side .menu li {
	list-style-type: none;
	list-style-image: none;
	display: block;
	position: relative;
	zoom: 1;
	margin: 0 0 1px 0;
	padding: 2px 10px 2px 20px;
	background: url(/images/bg_side_li.gif) no-repeat 5px 5px;
}
#side a {
	margin: 0;
	display: block;
	color: #f5a81c;
}
#side a:hover {
	color: #26136c;
}
#side li a.sel {
	font-weight: bold;
	color: #26136c;
	}


#side div.sideimg {
	margin-bottom: 1em;
}


/*////////////////
*	side block
////////////////*/
#side .block {
	padding: 0;
	margin: 10px 0 ;
}
#side .block .end {
	margin: 1px 0;
	padding: 1px;
}

#side .block h3 {
	background: #f6a71a url(/images/bg_side_h.png) repeat-x left bottom;
	color: #fff;
	text-transform: uppercase;
	margin:0 0 0px 0;
	padding: 0.4em 10px;
}

#side .block .inner {
	background: #fff url(/images/bg_side_block.png) repeat-x left top;
	padding-top: 0.5em;
	overflow: hidden;
}

#side .block p.img {
	display: block;
	margin:10px;
	background: url(/images/bg_side_caption.png) repeat-x left bottom;
	zoom: 1;
}
#side .block p.img a {
	text-decoration: none;
	color: #666;
}
#side .block p.img span {
	padding: 3px 8px 4px 8px;
	display: block;
	font-size: 0.9em;
}
#side .block p.img img {
	display: block;
	padding:0px;	
}

#side .block p.imgfull {
	display: block;
	margin:0 0 10px 0;
	zoom: 1;
}


#side .block ol li {
	list-style-type: none;	
	display: list-item;
	margin: 1px 0;
	background: url(/images/bg_side_li.gif) no-repeat 5px 5px;
	padding: 2px 10px 2px 20px;
}
#side p.seemore{
	background:transparent url(/images/bg_side_li.gif) no-repeat 5px 5px;
	padding: 2px 10px 2px 20px;
}

/*////////////////
*	side feature : Simple block with small image, header and text.
////////////////*/
#side .feature {
	padding: 0;
	margin: 10px 0;
	overflow: hidden;
	zoom:1;
}
#side .feature a {
}

#side .feature p.img {
	float: left;
	margin: 0 0px 0 10px;
	zoom: 1;
}
#side .feature p.img img {
	display: block;
}
#side .feature h4 {
	margin-left: 115px;
	margin-bottom: 0.2em;
	
}
#side .feature p {
	margin: 0 10px 0.2em 115px;
	line-height: 120%;
}



/*
////////////////
*	Content area
*	MultiBlock stuff
////////////////
*/

#container h1 {
	margin-top: 0.5em;
}

/*general*/
#container div.img p,
#container div.imghalf p{
	/*image note*/
	font-size: 0.85em;
	margin: 0.4em 18px 0.4em 10px;
}
.seemore {
	/*clear:both;*/
	/*overflow: hidden;*/
}
.seemore a {
}
.seemore a:hover {
}

ul.seemore {
	margin-left: 0;
	margin-right: 0;
}

ul.seemore li {
	padding: 0;
	list-style-type: none;	
	display: list-item;
	margin: 1px 0;
}

ul.seemore a {
	display: block;
	padding: 3px 7px;
}

/*Para seemores float to take min width : UL seemores take full width*/
p.seemore a {
}



/*////////////////
*	#content specific
////////////////*/

#content .fr {float: right; display: inline; clear: right;}
#content .fl {float: left; display: inline;}
#content div.leveler {clear: both;}
#content .smallblock,
#content .fullblock,
#content .halfblock,
#content .featureblock,
#content .productblock,
#content .halffeature,
#content .homepageblock,
#content .homepageblock_wide,
#content .fullimg,
#content .newsblock,
#content .promoblock,
#content .thirdblock,
#content .carouselblock {
	margin: 10px 0 10px 0;
	padding: 1px 0 0 0;
	position: relative;
	zoom: 1;
	width: 640px;
	clear: both;
	}
#content .smallblock {
	font-size: 0.9em;
	width: 305px;
}

#content .homepageblock,
#content .halfblock ,
#content .halffeature {
	width: 310px;
	padding: 0;
	float: left;
	_display: inline;
	clear: none;
	position: relative;
	_zoom:1;
	}

#content .halfblock.first ,
#content .homepageblock.first,
#content .halffeature.first {
	margin-right: 20px;
	}

#content .fullblock {
	padding-bottom: 10px;
}

#content .fullblock .inner,
#content .halfblock .inner,
#content .fullblock .inner_narrow,
#content .productblock .inner_narrow {
	padding: 1px 0 0.5em 0;
}
#content .fullblock .inner_narrow,
#content .productblock .inner_narrow {
	margin-left: 220px; 
}

#content .fullblock,
#content .fullimg {
	clear: both;
}

#content .blockout h3,
#content .blockout h2 {
	color: #fff;
	background: #20b8e6 url(/images/bg_content_h.png) repeat-x left bottom;
	margin: 0 0 10px 0;
	padding: 0.5em 10px;
	border: none;
}
#content h1,
#content h2,
#content h3 {
	border-bottom: 1px #197aa4 dotted;
	padding-bottom: 0.5em;
	color: #197aa4;
}

#content h1 big,
#content h2 big,
#content h3 big {
	clear:both;
	display: block;
}

#content h1 small,
#content h2 small,
#content h3 small {
	/*clear:both;*/
	display: block;
	font-size: 0.8em;
	line-height: 140%;
}

#content li {
	list-style-type: none;
	list-style-image: none;
	display: block;
	position: relative;
	zoom: 1;
	margin: 0 0 1px 0;
	padding: 2px 10px 2px 20px;
	background: url(/images/bg_content_li.gif) no-repeat 5px 5px;
}
#content a {
	color: #48a9d6;
}
#content a:hover {
	color: #26136c;
}
#content p.seemore{
	background:transparent url(/images/bg_content_li.gif) no-repeat 5px 5px;
	padding: 2px 10px 2px 20px;
}



/*////////////////
*	Banner image 
////////////////*/
#content .bannerimage h2 {
	color: #fff;
	background: #20b8e6 url(/images/bg_content_h.png) repeat-x left bottom;
	margin: 0 0 0 0;
	text-transform: uppercase;
	padding: 0.5em 10px;
	border: none;
}
#content .bannerimage h2 small {
	text-transform: none;
}
#content .bannerimage,
#content .sspdirector {
	margin: 10px 0 0 0;
}
#content .bannerimage .image{
	height: 208px;
	padding: 1px 0;
	position: relative;
}
#content .bannerimage p.quote {
	width: 280px;
	position: absolute;
	margin: 20px;
	padding: 20px;
	bottom: 0;
	left: 0;
	font-size: 1.2em;
	background: #fff url(/images/bg_content_quote.png) repeat-x left top;
}

/*////////////////
*	slideShowPro
////////////////*/
#content .sspdirector .swf {
	margin-left:10px;
}


/*////////////////
*	fullblock : Productblock
////////////////*/
#content .fullblock div.thumb,
#content .productblock div.thumb {
	margin: 12px 0px 0.5em 10px;
	background: #ecfafd;
	width: 200px;
}
#content .fullblock div.thumb a,
#content .halfblock div.thumb a,
#content .productblock div.thumb a {
	color: #197aa4;
}
#content .fullblock div.thumb a:hover,
#content .halfblock div.thumb a:hover,
#content .productblock div.thumb a:hover {
	text-decoration: underline;
	color: #26136c;
}
#content .fullblock div.thumb img,
#content .halfblock div.thumb img,
#content .productblock div.thumb img {
	display: block;
}
#content .fullblock div.thumb span,
#content .halfblock  div.thumb span,
#content .productblock  div.thumb span {
	/*The caption*/
	display:block;
	padding: 6px 8px;
}
/*////////////////
*	productblock
////////////////*/
#content .productblock ol a {
	padding: 2px 5px;
	background: #1c749c;
	color: white;
}
#content .productblock ol li {
	margin: 6px 0;
	background: none;
	padding: 4px 0;
}

#content .productblock p.seemore {
	position: relative;
	background: none;
	padding: 0;
	margin-top: 1em;
}
#content .productblock p.seemore a {
	background: #1c749c;
	color: white;
	padding: 2px 5px;
	margin:0;
}


/*////////////////
*	promo
////////////////*/

#content  div.promoblock {
	clear: none;
	float: left; 
	width: 200px;
	padding: 0px;
	_display: inline;
	margin-left: 20px;
	margin-right: 0px;
	color: #197aa4;
	background: #ecfafd;
	zoom: 1;
}
#content  div.promoblock.first {
	clear: left;
	margin-left: 0;
}

#content div.promoblock div.thumb {
	margin: 0;
}
#content div.promoblock div.thumb img {
	display: block;
}
#content .promoblock div.thumb span {
	/*The caption*/
	display:block;
	padding: 6px 8px;
	font-size: 0.9em;
	zoom:1; /*ie*/
	text-decoration: none;
	color: #197aa4;
}


/*////////////////
*	featureblock
////////////////*/
#content .featureblock {
	overflow: hidden;
}
#content .featureblock a {

}
#content .featureblock a:hover {
}

#content .featureblock h3,
#content .halffeature h3 {
	background: none;
	color: #39a2c3;
	border:none;
	margin: 0.5em 10px 0.2em 10px;
}

#content .featureblock .thumb,
#content .halffeature .thumb {
	width: 200px;
	height: 130px;
	font-size: 1px;
	float: left;
	display: inline; /*IE6*/
	margin: 10px;
}
#content .featureblock .info,
#content .halffeature .info {
	display: block;
	margin-left: 112px;
	position:relative;
}

/*////////////////
*	Homepage blocks
////////////////*/

#content  div.homepageblock_wide h2,
#content  div.homepageblock_wide h3,
#content  div.homepageblock h2,
#content  div.homepageblock h3 {
	color: #fff;
	background: #20b8e6 url(/images/bg_content_h.png) repeat-x left bottom;
	margin: 0 0 0 0;
	text-transform: uppercase;
	padding: 0.5em 10px;
	border: none;
}
#content  div.homepageblock_wide h2,
#content  div.homepageblock_wide h3 {
	margin-top: 20px;
}
#content  div.homepageblock_wide .inner {
	width: 290px;
	min-height: 90px;
	_height: 90px;
}

#content  div.homepageblock_wide p.overlay {
	width: 400px;
	height: 160px;
	position: absolute;
	margin: 0;
	right: -20px;
	z-index: 1;
}
#content  div.homepageblock_wide p.overlay a {
	display: block;
	width: 400px;
	height: 160px;
}
#content  div.homepageblock_wide p.overlay a span {
	display: none;
	visibility: hidden;
}

/*////////////////
*	halfblock
////////////////*/

#content  div.halfblock {
	clear: none;
}
#content div.halfblock div.thumb {
	margin: 0pt 10px 0 10px;
}


/*////////////////
*	Image carousel
////////////////*/

#content div.carouselblock {
	width: 640px;
}
#content div.carouselblock div.image {
	width: 533px;
	height: 354px;	
	background-position: right top;
	background-repeat: no-repeat;
	float: left;
	position: relative;
}
#content div.carouselblock div.thumbs {
	width: 106px;
	border-right: 1px white solid;
	float: left;
	_display: inline;
}
#content div.carouselblock div.thumbs a {
	display: block;
	margin-bottom: 1px;
	background-position: left top;
	background-repeat: no-repeat;
	_zoom: 1;
	cursor: pointer;
	width: 106px;
	height: 70px;
}
#content div.carouselblock div.thumbs a span {
	display: block;
	width: 106px;
	height: 70px;
	margin: 0;
	padding: 0;
}
#content div.carouselblock div.thumbs a.thumb span {
	background-color: #fff;
	filter:alpha(opacity=50);
	opacity: 0.5;
	-moz-opacity:0.5;
}
#content div.carouselblock div.thumbs a.sel span {
	background: none;
}
#content div.carouselblock div.thumbs a:hover span {
	background: none;
	filter:alpha(opacity=0);
	opacity: 0;
	-moz-opacity: 0;
}



#content div.carouselblock div.quote {
	background: #e95400;
	position: absolute;
	padding: 1px 10px;
	right: -10px;
	bottom: 40px;
	width: 345px;
	color: white;
	font-size: 1.2em;
}
#content div.carouselblock div.quote a {
	color: #fff;
}

	
	
/*////////////////
*	Contact Form
////////////////*/

p.buttons{
	clear: both;
	position: relative;
	overflow: hidden;
}
button {
	background: #20b8e6;
	border: 1px #20b8e6 solid;
	color: #fff;
	cursor: pointer;
}
button:hover {
	background: #f5a81c;
	border: 1px #f5a81c solid;
	color: #fff;
}

input, select, textarea{
	border: 1px #197aa4 solid;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	padding: 2px 3px;
}
input, textarea{
	width: 28em;
}
input.var {
	width: auto;
}

input.chbx {width: auto;border: none;}

div.formElement {
	position: relative;
	clear: both;
	padding: 1px 0;
	zoom: 1;
	overflow: hidden;
	}

div.formElement.invalid {
	position: relative;
	background: #f7eff0;
	border-top: 2px #e02328 solid;
	border-bottom: 2px #e02328 solid;
	padding: 2px 1px 2px 1px;
	margin: 3px 0px 3px 0px;
	vertical-align: top;
	display: block;
	}

div.formElement.valid {
	position: relative;
	padding: 1px 2px 1px 2px;
	margin: 0px 0px 2px 0px;
	display: block;
	/*white-space: nowrap;*/
	}
	
div.formElement.invalid.required input {background-color: #f7eff0; border:1px #e02328 solid;}
div.formElement.invalid.required option {background-color: #f7eff0; border:1px #e02328 solid;}

div.formElement.valid.required input,
div.formElement.valid.required select,
div.formElement.valid.required textarea {
	background-color: #ecfafd;
	border: 1px #197aa4 solid;
	}

div.formElement.valid.required option {
	background-color: #f7eff0;
	}

div.label,
label.blk {
	display: inline;
	float: left;
	clear: none;
	color: #0b421a;
	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;
	}

label {
	display: inline;	
}

#content .invalidFormHeader {
	position: relative;
	padding: 0.5em 10px;;
	margin: 3px 0px 3px 0px;
	border:none;
	font-size: 13px;
	background: #e02328;
	color: #fff;
	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;
}

p.error {
	display: block;
	font-style: italic;
	color: #de2025;
}

/*////////////////
*	File type links
////////////////*/

a.audio {
	padding-left: 20px !important;
	background-image: url(/images/icons/speaker-yellow.gif);
	background-repeat: no-repeat;
	background-position: 2px center;
}
a.text {
	padding-left: 20px  !important;
	background-image: url(/images/icons/text-file.gif);
	background-repeat: no-repeat;
	background-position: 2px center;

}




/*////////////////
*	Toon strips
////////////////*/

div#toon {
	position: absolute;
	z-index: 2;
	zoom: 1;
	text-align: center;
	padding: 0;
	margin: 0;
	top: 0;
	right: 5%;
	width: 188px;
	height: 255px;
	background-position: right bottom;
	background-repeat: no-repeat;
	background-image: url(/images/toon_8bit.png);
}