
/*

	CSS Template

	CONTENTS ----------
	
		1.Reset CSS
		2.Over all styles
		3.Layout
		4.Content
		5.aside styles (side column)
		6.Navigation
		7.ARD Tables
		8.Forms
		9.Site Search results
	10.Social media
	11.RHC styling
		
    -------------------

	COLOURS ----------

		Text, table lines, form border #233c7c
		
		Main colour: a, main headings, mark, nav, button #233c7c 

		Secondary colour: a:hover, text selection, nav:hover, button border #030736

    -------------------

 */
 
/* 1.Reset CSS
---------------------------------------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
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;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}                  

blockquote, q { quotes:none; }
blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none; }

a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }

/* tables still need cellspacing="0" in the markup */
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #233c7c; margin:15px 0; padding:0; }
input, select { vertical-align:middle; }

/* always force a scrollbar in non-IE */ 
html { overflow-y: scroll; }



/* 2.Over all styles
---------------------------------------------------------------*/
 body {
	font: 12px/18px Arial, Helvetica, sans-serif; /* to add line height of eg 18px use 13px/18px  */
	color: #233c7c;
	background-color:#030736;
	margin:20px auto; background-image:url(/images/body-bg.jpg);
	background-position: center bottom;
	background-repeat:no-repeat; padding:20px; background-attachment: fixed;
	}

H1 { font:bold 24px/26px Arial, Helvetica, sans-serif; color:#87bfe0;}
H2 { font-size: 18px; font-weight: bold; color: #87bfe0; }
H3 { font-size: 16px; font-weight: normal; color: #87bfe0; }
H4 { font-size: 14px; color: #233c7c; }
H5 { font-size: 14px; color: #233c7c; }
H5 A { text-decoration: none; color: #233c7c; }

a, a:active, a:visited { color: #233c7c; text-decoration: underline; }
	A:hover { color: #87bfe0; text-decoration: none; cursor:pointer; }
	a:hover, a:active { outline: none; }
	A.noline { color: #233c7c; text-decoration: none; }
	A.noline:hover { color: #233c7c; text-decoration: none; }

ul, ol { margin-left: 25px; }
ul { list-style:disc; }
ol { list-style-type: decimal; }


.small { font-size: 85%; }
strong, th { font-weight: bold; }

td, td img { vertical-align: top; }

.mark { background-color:#fff; color:#87bfe0; font-style:italic; font-weight:bold; } /* text you would like to mark */

sub { vertical-align: sub; font-size: smaller; }
sup { vertical-align: super; font-size: smaller; } 

.ie7 img { -ms-interpolation-mode: bicubic; }/* bicubic resizing for non-native sized IMG */

/* Text highlight styles */
::-moz-selection{ background: #030736; color:#fff; text-shadow: none; }
::selection { background:#030736; color:#fff; text-shadow: none; } 
 
/* 
 * Non-semantic helper classes 
 */

/*  image replacement */
.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }

/*  image align left, right */
.right { float:right; margin:0 0 15px 15px; }
.left { float:left; margin:0 15px 15px 0; }

/* Hide for both screenreaders and browsers */
.hidden { display: none; visibility: hidden; } 

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* clearfix  */
.cf:before, .cf:after { content: "\0020"; display: block; height: 0; overflow:hidden; } 
.cf:after { clear: both; }
/* Fix clearfix IE */
.cf { zoom: 1; }

.highlight { color:#e8e921; }
.button, .button:active, .button:visited { background-color:#030736; background-image:url(/images/bullet.gif); background-repeat:no-repeat; background-position:left; -webkit-border-radius: 10px;-moz-border-radius: 10px;border-radius: 10px; padding:8px 16px 8px 36px; color:#FFFFFF; text-decoration:none; }
.button:hover { background-color:#030736; background-image:url(/images/bullet.gif); background-repeat:no-repeat; background-position:left; -webkit-border-radius: 10px;-moz-border-radius: 10px;border-radius: 10px; padding:8px 16px 8px 36px; color:#d0d441; }

.box-container { -webkit-border-radius: 10px;-moz-border-radius: 10px;border-radius: 10px; background-color:#E5E5E5; padding:10px; margin-bottom:10px; }

.default-extra-top-margin { margin-top:35px; }

/* 3.Layout
---------------------------------------------------------------*/
/* Skip menu for screen readers to jump the main menu */
.skipmenu { text-align: left; }
.skipmenu a { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.skipmenu a:focus, .skipmenu a:active { position: static; left: 0; width: auto; height: auto; overflow: visible; text-decoration: underline; }

#container { margin: 0  auto; width:960px;  }

#header {  background-color:#030736; padding:10px 20px 20px 20px;  }
	#contact-details { float:left; width:280px; }
	#contact-details p { color:#FFFFFF; border-left: 4px solid #f7f820; padding-left:8px; }
	#contact-details a { color:#FFFFFF; text-decoration:none; }
	#contact-details a:hover { color:#87bfe0; text-decoration:none; }
	.large { font-size:18px; margin:10px 0 15px 0; }
	#logo { float:right; }
	
#content-outer { background-color: #87bfe0; padding:15px 20px; border-top:2px solid #FFFFFF; }
#content { float:left; background-color:#FFFFFF; -webkit-border-radius: 12px;-moz-border-radius: 12px;border-radius: 12px; padding:15px; width:610px; }

#column { float:right; background-color:#d4e4f1; -webkit-border-radius: 12px;-moz-border-radius: 12px;border-radius: 12px;  width:250px; }
	.column-box-container { background-color:#253c7b; padding:10px 10px 20px 10px; -webkit-border-radius: 12px;-moz-border-radius: 12px;border-radius: 12px; margin-bottom:15px; }
	.column-box-container ul { margin:0; padding:0; list-style-type:none; }
	.column-box-container li { color:#FFFFFF; }

#straplines { margin-bottom:20px; }

#footer { background-image:url(/images/opacity.png); background-repeat:repeat; padding:20px; }
	#footer p { color:#FFFFFF; }
	#footer a { color:#FFFFFF;  }
	#footer a:hover { color:#87bfe0; text-decoration:none; }

/* 4.Content
---------------------------------------------------------------*/

#content p, #content h1, #content h2, #content h3, #content h4, #content h5 { margin-bottom:15px; }
#content ul { margin-bottom:15px; }
.ielt9 #content ul, .ielt9 .submenu ul { margin-bottom:15px; }
#content ul li ul li { margin-bottom:0; }
#content table { margin-bottom:15px; }

#content h2, #content h3, #content h4, #content h5 { margin-top:15px; } /* evenly space headings in the ARD content */
#column h2, #column h3 { margin-bottom:10px; }

/* 5.aside styles (side column)
---------------------------------------------------------------*/






/* 6.Navigation
---------------------------------------------------------------*/


#nav {	
	clear: both;
	display:block;
	height:32px;
	background:#87bfe0; /* add background (this can be added directly to the #menu */
	position:relative;
	z-index:100;/* this makes sure that the menu appears on top of all elements of the page mainly things like JS banners and flash files */
	}

#menu, #menu ul{
	margin:0;
	padding:0;
	list-style-type:none;
	list-style-position:outside;
	position:relative;
	line-height:32px; /* add line height  DONT USE HEIGHT */
	font-weight:normal;
	}
#menu { margin-left:20px; }
#menu li { 
	list-style:none;
	float:left; /* float needed */
	position:relative;
	border:0;
	}
#menu li:hover a { background-color: #030736; color:#FFFFFF; } /* keeps the original button highlighted */
#menu li:first-child a { border-left:none;  } #menu li:last-child a { border-right:none;  }/* remove borders on each end */

#menu a{
	display:block;
	padding:0px 22px; /* set padding will affect padding on all a tags in menu */
	line-height:32px; /* set line height DONT use just height */
	color:#030736;
	text-decoration:none;
	font-size:14px;
	border-left:1px solid #030736; /* Borders as appropriate */
	}

#menu a:hover{
	background-color: #030736;
	color:#fff;
	}

#menu ul {
	position:absolute; /* Menu uses position ab to set drop downs so top: needs to be the same height as the menu */
	display:none; /*display none so menu is not visable until user hovers over the li*/
	width:194px; /* Width will need to be updated inline with all the padding on the menus */
	top:32px;
	background-color:#87bfe0;
	}

#menu li ul a{
	width:150px; /* Width will need to be updated inline with all the padding on the menus */
	height:auto;
	float:left;
	border:0;
	border-bottom:1px solid #fff;
	line-height:18px;
	padding:8px 22px;
	font-size:12px;
	}
#menu li ul a:hover {
	width:150px; /* Width will need to be updated inline with all the padding on the menus */
	height:auto;
	float:left;
	border:0;
	border-bottom:1px solid #fff;
	line-height:18px;
	background-color:#87bfe0;
	padding:8px 22px;
	}

#menu ul ul{
	top:auto;
	}	

#menu li ul ul { /* styles for sub drop downs */
	left:184px; /* left needs to be the overall width of the main drop down  */
	margin:0px 0 0 10px;
	width:204px;
	}
#menu li ul ul a { 
	width:160px; /*update width inline with all the overs*/
	}
#menu li:hover ul ul, #menu li:hover ul ul ul, #menu li:hover ul ul ul ul{
	display:none;
	}
#menu li:hover ul, #menu li li:hover ul, #menu li li li:hover ul, #menu li li li li:hover ul{
	display:block;
	}
	


/* 7.ARD Tables
---------------------------------------------------------------*/

/*table formatting*/
.tablines { background-color: #233c7c; }

#content .tablines table { margin-bottom:0; border-spacing: 1px; border-collapse: separate; } /*resets the padding to 0 on tables inside the tablines*/
 
/*a light colour on the borders of branded tables*/
.tabtitle{  font-weight: bold; color: #fff; background-color: #87bfe0; padding:5px; }

.tabletitle{ font-weight: bold; color: #fff; background-color: #87bfe0; padding:5px; }

/*Used if table has an extra heading.*/
.tabhead { font-weight: bold; color: #87bfe0; background-color: #fff; padding:5px; }

/*dark colour, matching nav bar or other strong colour in the site.*/
.tabbody { font-weight: normal; color: #233c7c; background-color: #fff; padding:5px; }

/*standard text, white background, black text is most common.*/
.tabtotal{ font-weight: bold; color: #233c7c; background-color: #fff; padding:5px; }

/* clientZONE table padding */
#CZDocumentBody td { padding:4px; }


/* 8.Forms (ask us a question, search)
---------------------------------------------------------------*/

/* Form Reset/Fixes */
textarea { overflow: auto; } /* remove scroll bar in IE unless needed */
label, input[type=button], input[type=submit], button { cursor: pointer; }/* hand cursor on clickable input elements */
button, input, select, textarea { margin: 0; }/* webkit browsers add a 2px margin outside the chrome of form elements */  

/* colors for form validity */
input:valid, textarea:valid   {  }
input:invalid, textarea:invalid { 
      border-radius: 1px;
    -moz-box-shadow: 0px 0px 5px red; 
 -webkit-box-shadow: 0px 0px 5px red; 
         box-shadow: 0px 0px 5px red;
}
.ie6 legend, .ie7 legend { margin-left: -7px; }
button {  width: auto; overflow: visible; } /* make buttons play nice in IE */

/* ARD Form styles */

#FirstName, #LastName { width:49%; }
#Business, #Telephone, #emailAddress { width:98%; }
#ValidationCode { width: 100px; }
#Comments { width: 99%; height: 100px; }

.FormButton  { 
	height: 21px;
	color: #fff;
	background-color: #87bfe0;
	border: solid 0px #030736; }
.FormText {
	background-color: #fff;
	border: solid 1px #233c7c;
	margin-bottom:5px;
	padding:3px; }
.FormTextRequired {
	background-color: #fff;
	border: solid 1px #FF0000;
	margin-bottom:5px;
	padding:3px; }


/* Search Form */

.searchbox {
-webkit-border-radius: 12px;-moz-border-radius: 12px;border-radius: 12px;
	width:140px;
	color: #030736;
	background-color: #87bfe0;
	border:none;
	font-size:11px;
	padding:5px; margin:0;
	 }
	
/* 9.Site Search results
---------------------------------------------------------------*/



/* 10.Social media
---------------------------------------------------------------*/

#social-media { position: relative; margin: 15px 0 0 0; clear: right; float: right; text-align: right; }
.blogger { display: block; float: left; width: 30px; height: 30px; margin: 0 0 0 5px; background: url(../images/sprite-blogger.png) left top no-repeat; border: none; text-decoration: none; }
.blogger:hover { display: block; float: left; width: 30px; height: 30px; margin: 0 0 0 5px; background: url(../images/sprite-blogger.png) right top no-repeat; border: none; text-decoration: none; }
.twitter { display: block; float: left; width: 30px; height: 30px; margin: 0 0 0 5px; background: url(../images/sprite-twitter.png) left top no-repeat; border: none; text-decoration: none; }
.twitter:hover { display: block; float: left; width: 30px; height: 30px; margin: 0 0 0 5px; background: url(../images/sprite-twitter.png) right top no-repeat; border: none; text-decoration: none; }

/* 11.RHC styling
---------------------------------------------------------------*/

#RHCAcc_1_DIV, #RHCAcc_2_DIV, #RHCAcc_3_DIV, #RHCAcc_4_DIV {
	font-family: Arial, Helvetica, sans-serif;
	border-bottom: 1px solid #87bfe0; padding: 10px; margin: 0 0 10px 10px;
	width:230px;
	min-height:50px;
	height:auto !important;
	height:50px;/*Needs to match the min height pixels above*/
	font-size:12px;
	background:none;
	color:#233c7c;
}

.RightPanelBody { margin: 0; padding:0; background:none; border-left: none;}
#RHC_Body { margin:0; padding:0; background:none; width: 250px; border-left: none; }
#RHC_Body b { color: #233c7c; }
#RHC_Body a {	color: #233c7c;	 text-decoration: underline; }
#RHC_Body a:hover { color: #030736; text-decoration: none; }

