
/* Sort padding & margins out */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, input, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}

/* Remove list styles from lists */
ol, ul {
	list-style:none;
}

/* Normalise font style & weight */
address, caption, cite, code, dfn, th, var {
	font-style:normal;
	font-weight:normal;
}

/* Set tables to have a default of nothing */
table {
	border-collapse:collapse;
	border-spacing:0;
}

/* Remove border from Fieldset and images */
fieldset, img {
	border:0;
}

/* Left align text etc... */
caption, th {
	text-align:left;
}

/* Removes quotation marks from q */
q:before, q:after {
	content:'';
}

/* Create a consistent font size through all browsers */
body {
	font-size: 76%;
	color:#3A3A3A;
}
textarea {
	font-family:Verdana, Arial, Helvetica, sans-serif;
}
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, input, p, blockquote, th, td, blockquote, textarea {
	font-size:1em;
}

/*----------------*/
/* Styles for Editor in admin section  */
.syserror {
	display:block;
	width:auto;
	padding:4px;
	background-color:#FF0000;
	color:#FFFFFF;
	font-weight:bold;
}
.syssuccess {
	display:block;
	width:auto;
	padding:4px;
	background-color:#009933;
	color:#FFFFFF;
	font-weight:bold;
}
.clearer {
	clear:both;
	line-height:1px;
	font-size:1px;
	height:1px;
}

.imgleft15 {
	margin:0px 15px 15px 0px;
	float:left;
}
.imgright15 {
	margin:0px 0px 15px 15px;
	float:right;
}
.imgleft20 {
	margin:0px 20px 20px 0px;
	float:left;
}
.imgright20 {
	margin:0px 0px 20px 20px;
	float:right;
}


ul {
	padding:0px;
}
li {
	padding:0px;
}

#the-list ul{
padding:2px;	
}

#the-list li {
background-image:url(../img/list-arrow.gif);
background-position:left center;
background-repeat:no-repeat;
display:block;
margin-bottom:10px;
margin-top:3px;
padding-left:20px;
padding-right:10px;
text-decoration:none;
}

ol {
	padding:8px 0px 8px 20px;
}
a{
	text-decoration:none;
	font-weight:bold;
	text-decoration:underline;
}
a:hover, a:focus {
	color: #333333;
	text-decoration:none;
}
p {
	margin-bottom:1.0em;
	line-height:1.5em;
}
a{
	text-decoration:none;
	color:#000;
	font-weight:normal;
}
a:hover, a:focus {
	color:#333333;
}
fieldset {
	padding:15px;
	margin:10px 0px 10px 0px;
	border:2px #828388 solid;
}
legend {
	padding:8px;
	font-weight: bold; 
	font-size: 1em;
}
acronym {
	border-bottom:1px #666666 dashed;
}
blockquote {
}
blockquote img {
	float:left;
	margin:0 3px 0 0;
}
blockquote p {
	margin:0;
	padding:2px 0px;
}
cite {
	font-weight:bold;
	padding:10px 0px;
	display:block;
	text-align:right;
}
img {
	border:0;
}

/* ----------------- used as main heading ---------------- */


/*  -------------------- GENERIC FORM & BUTTON STYLES  -------------------- */


input[type="text"], input[type="password"], textarea {
	padding:5px;
	border:2px #cccccc solid;
	color:#666666;
}
.textfield {
	padding:5px;
	border:2px #cccccc solid;
	color:#666666;
}
input[type="text"]:focus, input[type="text"]:hover, input[type="password"]:focus, input[type="password"]:hover, textarea:hover, textarea:focus {
	border:2px #bbbbbb solid;
	background-color:#FFFFFF;
}

/*  These styles are for the form buttons  
	They are seperate as IE doesn;t like mixing the class with the CSS2 styles
*/

input.formbutton {
	color:#FFFFFF;
	cursor:pointer;
	padding:0.6em 1.5em;
	font-weight:bold;
}
input[type="submit"], input[type="button"] {

	color:#FFFFFF;
	cursor:pointer;
	padding:0.6em 1.5em;
	font-weight:bold;
}
input[type="submit"]:hover, input[type="button"]:hover {
	border:2px #000 solid;
}
span.tickbox {
	padding:4px 0 0 0;
	display:block;
}

.textbox {
	width:220px;
}

/* --------------------------------------------------------------- */

.innerfive {
	padding:5px;
}
.innerten {
	padding:10px;
}
.innerfifteen {
	padding:15px;
}



/* #####################  CMS SPECIFIC STYLES  ###################### */

/* Details View */
.detailsviewstyles {
	width:90%;
}
.detailsviewstyles td {
	padding:3px;
}
.detailsviewstyles th {
	padding:3px;
	font-weight:bold;
}
.altrowdetailsviewstyles {
}

/* Grid View */
.gridviewstyles {
	width:90%;
}
.gridviewstyles td {
	padding:3px;
}
.gridviewstyles th {
	padding:3px;
	font-weight:bold;
}
.altrowgridviewstyles {
}
.selectedgridviewrow {
}

/* ##### SUB NAV #### */
.subnav {
	clear:both;
	background-color:#FEE7E8;
	padding:8px;
	font-size:0.9em;
	margin:0 0 8px 0;
}
.subnav h3 {
	padding:0;
	margin:0;
	color:#F5464B;
}
.subnav ul {
}
.subnav li {
	display:inline;
	padding:2px 8px;
}


/*  BLOG THINGS ####################  */

.blogsnippets {
padding-bottom:8px;
padding-top:13px;
border-bottom:1px #CCC solid;
}

.blogsnippets h2 {
	font-size:1.6em;
	color:#000;
}
.blogsnippets h2 a, .blogsnippets h2 a:visited {
	color:#000;
	text-decoration:none;
}
.blogsnippets h2 a:hover {
	text-decoration:underline;
}
.blogsnippets img {
	float:left;
	margin:0px 15px 15px 0px;
}
.blogsnippets p {

}
.postdetails {
	display:block;
	font-size:0.8em;
	padding:2px 0px 4px;
}
.categorisedin {
	display:block;
	text-align:right;
	font-size:0.9em;
	padding:6px 0px 0px 0px;
}
.loggedintext {
	display:block;
	padding:15px 0px 15px 0px;
}

.mceContentBody ul, #blogpostholder ul {
	padding:8px 0px 8px 15px !Important;
	list-style-position:outside !Important;
	list-style-type:disc !Important;
}
#singlelisting {
	padding:30px;
}
.postdetails {
	font-size:0.9em;
	color:#999999;
	margin-bottom:5px;
}
#commentsholder {
	padding:10px 0px;
	clear:both;
}
#leavecomment {
}
#leavecomment ul {
}
#leavecomment li {
	padding:3px 0px;
}
#leavecomment li label {
	display:block;
}
.comments_ind, .comments_ind_admin {
	padding:10px;
	border-bottom:1px #CCCCCC solid;
	margin:4px 0;
}
.comments_ind_admin {
	background-color:#EBEEE7;
}
.comments_ind h4, .comments_ind_admin h4 {
	padding:2px 0px;
}
span.postDate {
	display:block;
	font-size:0.9em;
	color:#999999;
	padding:0px 0px 10px 0px;
}
.categorisedin {
	color:#999;
	font-weight:bold;
	text-align:right;
	font-size:0.9em;
}
.blogthumb {
	border:1px #BC0176 solid;
}
#blogcatpager {
	padding:12px 0px;
	font-weight:bold;
	font-size:0.9em;
	text-align:right;
}
#blognavigationholder {
	font-size:1.1em;
	padding:0 0 15px 0;
	float:right;
	width:200px;
	margin:0 0 15px 20px;
	padding:12px;
	background-color:#FEE7E8;
}
#blognavigationholder li {
	padding:4px 0 !Important;
}
#blognavigationholder li a, #blognavigation li a:visited {
	display:block;
	padding:7px;
	
}
#blognavigationholder li a:hover {
	background-color:#ffffff;
}

/* ################  FORMS ############### */
.myforms {
	width:100%;
	padding:0 !Important;
}
.myforms li {
	width:100%;
	clear:both;
	float:left;
	padding:3px 0px;
	list-style:none !Important;
}
.myforms label {
	display: inline-block;
	line-height: 1.5em;
	vertical-align: top;
	float:left;
	width: 19em; /* Width of labels */
	padding:0px 5px 0px 0px;
}
.myforms label span {
	display: block;
	font-size:0.9em;
}
.myforms em {
	font-weight: bold;
	font-style: normal;
	color: #f00;
}
.myforms .mysubmit {
  	margin: 0px 0px 0px 0em; /* This line can be used the button with the inputs */
}
/* ####################################### */


/* External Content Plugin */

.externalcontent {
	display:block;
	width:100%;
	padding:12px 0;
}

/* ####################################################################################################################################### */
/* ####################################################################################################################################### */
/* ------------------------------------------- START SITE SPECIFIC STYLES ---------------------------------------------------------------- */
/* ####################################################################################################################################### */
/* ####################################################################################################################################### */


/* Create a consistent font size through all browsers */
.systemmessages {
	display:block;
	padding:5px;
	color:#FFFFFF;
	font-size:0.9em;
	font-weight:bold;
	background-color:#009933;	
	margin:8px 0px;
}
/*----------------*/

fieldset {
	padding:18px;
	margin:10px 0px 10px 0px;
	border:4px #000000 solid;
}
legend {
	padding:8px;
	font-weight: normal; 
	font-size: 1.6em; 
}
acronym {
	border-bottom:1px #666666 dashed;
}
blockquote {
	background-image:url(http://www.n3o.co.uk/img/quotes.jpg);
	background-position:top left;
	background-repeat:no-repeat;
	padding:0px 0px 0px 55px;
}
blockquote p {
	margin:0;
	padding:2px 0px;
}
blockquote.inlinetext {
	margin:14px 0;
	color:#555555;
	font-size:0.9em;
}
cite {
	display:block;
	text-align:right;
	padding:12px 0px 10px 0px;
}
cite span {
	font-weight:bold;
}
img {
	border:0;
}
address {
	font-size:0.95em;
}

/* ----------------- used as main heading ---------------- */


/*  -------------------- GENERIC FORM & BUTTON STYLES  -------------------- */

input, textarea {
	color:#000;
	padding:5px;
	border:2px #CCC solid;
	background-color:#FFFFFF;
}
input:focus, textarea:focus, input:hover, textarea:hover, textarea:focus, textarea:hover {
	border:2px #bbbbbb solid;
	background-color:#FFFFFF;
}
input[type="submit"], input[type="button"] {
	border:1px #8fa5b0 solid;
	color:#FFFFFF;
	cursor:pointer;
	text-align:center;
	padding:5px 10px;
	background-image:url(/img/button-grad.jpg);
	background-repeat:repeat-x;
	background-position:top;
	font-weight:bold;
	background-color:#8FA5B0;
}
input[type="submit"]:hover, input[type="button"]:hover {
	border:1px #8fa5b0 solid;
}
.mybutton {
	color:#FFFFFF;
	cursor:pointer;
	text-align:center;
	padding:12px 0px;
	background-repeat:repeat-x;
	background-position:bottom;
	font-weight:bold;
}
.clearer {
	clear:both;
	line-height:1px;
	font-size:1px;
	height:1px;
}
.iefixer {
	margin-bottom:-1px !Important;
}
/* --------------------------------------------------------------- */

.innerfive {
	padding:5px;
}
.innerten {
	padding:10px;
}
.innerfifteen {
	padding:15px;
}
.font-nine {
	font-size:0.9em;
}
.font-eight {
	font-size:0.8em;
}
.font-seven {
	font-size:0.7em;
}
/* --------- END GENERIC STUFF -------------- */

/* ####################################################################################################################################### */
/* ####################################################################################################################################### */

body{
font-size: 76%;
color:#333;
font-family:Arial, Helvetica, sans-serif;
background-color:#f2f2f2;
color:#515151;
}

p{
	color:#515151;
}

a{
	color:#515151;
	text-decoration:underline;
}

a:hover{
	color:#515151;
	text-decoration:none;
}

h2{
margin-bottom:14px;	
font-size:18px;
}

h1{
margin-bottom:14px;	
font-size:18px;
}

p.title{
color:#41687a;
font-size:22px;
padding:0px;
margin:0px;
}

p.header {
color:#41687A;
font-size:15px;
line-height:29px;
margin-bottom:14px;
margin-top:10px;
}

#top-section{
background-image: url(../img/top-grad.jpg); 
height:124px;
border-bottom:1px solid #ffffff;
}

#top-section-inner{
width:950px;
margin:auto;
}

#top-section-left{
float:left;	
width:125px;
}

#top-section-right{
float:right;
width:820px;
}

#header{
background-image: url(../img/header-grad.jpg); 
height:226px;
}

#header-text{
width:600px;
padding-top:20px;
}

#logo{
margin-top:17px;	
}

#contact{
height:70px;
margin-left:550px;
margin-top:22px;
width:209px;
}

#header-inner{
width:950px;
height:219px;
margin:auto;
background-image: url(../img/header-image.jpg);
background-position:right top;
}

#navigation{
	margin-left:58px;
	
}

#navigation li {
border-bottom:0 none;
display:block;
float:left;
font-size:120%;
letter-spacing:0;
margin-left:0;
margin-right:5px;
}

#navigation li a {
color:#41687A;
display:block;
padding:7px 12px;
text-decoration:none;
background-color:#bfd1d9;
border:1px solid #ffffff;
border-bottom:0px solid #ffffff;
}

#navigation li a:hover {
color:white;
}

#frame{
margin-top:17px;
}

#frame-inner{
	width:950px;
	margin:auto;
	min-height:400px;
  	height:auto !important;
  	height:400px;
}

#top-row{
border-bottom:1px solid #e0e0e0;
float:left;
}

#list-left{
float:left;
width:50%;
margin-bottom:8px;
}

#list-right{
float:left;
width:50%;
margin-bottom:8px;
}

#bottom-row{
border-top:1px solid #ffffff;
float:left;
width:100%;
border-bottom:1px solid #E0E0E0;
padding-bottom:11px;
}

#top-row-left{
border-right: 1px solid #e0e0e0;
width:454px;
float:left;
padding-right:20px;
padding-bottom:10px;
}

#top-row-right{
width:454px;
border-left: 1px solid #ffffff;
float:right;
padding-left:20px;
padding-bottom:10px;
}

#bottom-row-left{
width:307px;
padding-right:10px;
float:left;
border-right:1px solid #E0E0E0;
padding-top:10px;
min-height:310px;
height:auto !important;
height:310px;
}

#bottom-row-left a{
clear:both;
color:#E27F0C;
display:block;
background-image:url(../img/list-arrow.gif);
background-position:left center;
background-repeat:no-repeat;
padding-left:15px;
margin-top:8px;
text-decoration:none;
}

#bottom-row-left a:hover{
text-decoration:underline;
}

#news-article-bottom{
border-top:1px solid #ffffff;
padding-top:5px;
}

#news-article-top{
border-bottom:1px solid #e0e0e0;
padding-bottom:9px;
}

p.date{
text-transform:uppercase;	
font-size:0.9em;
}

.newsrow p{
margin-bottom:5px;	
font-size:0.9em;
}

.newsrow{
margin-bottom:15px;	
}

#bottom-row-center{
width:309px;
float:left;
padding-left:10px;
padding-right:10px;
border-right:1px solid #E0E0E0;
border-left:1px solid #ffffff;
padding-top:10px;
min-height:310px;
height:auto !important;
height:310px;
}

#bottom-row-right{
width:290px;	
float:left;
border-left:1px solid #ffffff;
padding-left:10px;
padding-top:10px;
min-height:310px;
height:auto !important;
height:310px;
}

#bubble-top{
width:280px;	
height:14px;
background-image: url(../img/bubble-top.jpg);
background-position:right top;
}

#bubble-middle{
width:250px;
background-image: url(../img/bubble-middle.jpg);
background-repeat:repeat-y;
padding:15px;
padding-top:5px;
padding-bottom:2px;
}

#bubble-middle p{
margin:0px;
font-size:0.9em;
}

#bubble-bottom{
width:208px;
background-image: url(../img/bubble-bottom.jpg);
background-repeat:no-repeat;
padding-left:72px;
}

p.quote-name{
color:#e27f0c;
text-transform:uppercase;
margin:0px;
padding-top:22px;
}

p.quote-company{
margin:0px;
}

#footer{
clear:both;
background-image: url(../img/footer-bg.jpg);
background-position:right top;
height:115px;
margin-top:25px;
}

#footer p{
font-size:0.9em;	
line-height:18px;
}

#footer-inner{
width:950px;
margin:auto;
padding-top:22px;
}

#footer-left{
width:60%;
float:left;
}

#footer-right{
width:40%;
float:right;
text-align:right;
}

#logos{
clear:both;	
border-top:1px solid #ffffff;
padding-top:14px;
}

.logo{
margin-right:76px;	
}

.alstom{
	vertical-align:baseline;
}

.imgright15 {
border:1px solid #CCCCCC;
float:right;
margin:0 0 15px 15px;
padding:1px;
}

#acreditations{
	width:404px;
	float:left;
}

#clients{
	width:540px;
	float:left;
}

.categoryholder h3 a{
	font-size:1.4em;
	color:#E27F0C;
	text-decoration:none;
}

.categoryholder h3 a:hover{
	font-size:1.4em;
	color:#E27F0C;
	text-decoration:underline;
}

.split-product{
	background-image: url(../img/split-products-box.jpg);
background-position:right top;
height:200px;
width:461px;
float:left;
margin-top:10px;
}

.split-product-image img{
float:left;	
margin-left:13px;
margin-top:10px;
}

.split-product-right img{
float:left;
margin-left:13px;
margin-top:10px;
}	


.split-product-text{
float:right;
width:350px;
}

.split-product-text p{
font-size:0.9em;
color:#41687A;	
margin-right:20px;
line-height:18px;
}

.split-product-text h3 a{
color:#41687A;
font-size:1.1em;
text-decoration:none;
font-weight:bold;
}

.split-product-text h3{
margin-top:10px;
margin-bottom:7px;	
}

.split-product-right{
margin-left:25px;	
}

.split-product a{
	color:#41687A;
text-decoration:none;
}

.split-product a:hover{
text-decoration:underline;	
}

#products .split-product{
height:164px;
margin-bottom:10px;
}

#jobs-form{
width:65%;	
float:left;
}

#contactright{
float:left;
width:300px;
}

#top-row-right .imgright15 {
border:0px solid #CCCCCC;
float:right;
margin:0 0 15px 15px;
padding:0px;
}

#map{
border:2px solid #BBBBBB;	
}

/* Generator Page */

#generatorleft {
	float:left;
	width:594px;
	border-right:1px solid #E0E0E0;
}
#generatorleft ul {
	font-size:0.9em;
	margin:0 0 10px 25px;
	width:75%;
	clear:both;
}
#generatorleft ul li {
	list-style:circle;
}
#generatorleft h4 {
	margin:10px 0;
	color:#f7921c;
}
#generatorleft h3 {
	font-size:1.2em;
	font-weight:normal;
	margin:0 0 8px 0;
}
#generatorright h3 {
	color:#f7921c;
	font-size:1.4em;
	font-weight:normal;
	margin:0 0 15px 0;
}
#generatorright {
	float:right;
	width:334px;
	border-left:1px solid #FFFFFF;
	padding:0 0 0 20px;
	font-size:0.92em;
}
#generatormaintenanceholder {
	text-align:center;
	padding:0 0 40px 0;
}
