body {
	background:#000 url(images/bg_body.jpg) no-repeat 50% 30px;
	text-align:center;
}

#page {
    min-width:970px;
}

.prefix {
	background:url(images/bg_heading_separator.png) no-repeat 100% 4px;
	text-transform:uppercase;
	letter-spacing:-2pt;
	font-weight:normal;
	padding:0 18px 0 0;
	margin:0 13px 0 0;
	display:inline;
	line-height:1;
	font-size:3.4em;
	color:#fff;
	float:left;
}
.prefix-small {
	border-right:2px solid #555;
	text-transform:uppercase;
	margin:.3em 1ex 0 0;
	padding:0 1ex 0 0;
	font-size:1.2em;
	display:inline;
	line-height:1;
	color:#777;
	float:left;
}
.published {
	color:#00AEEF;
	text-align: right;
	
}

/* UTILITIES ************************************************************/
#page .hide {
	position:absolute;
	overflow:hidden;
	left:-9999in;
	top:-9999in;
	height:0;
	width:0;
}

#page .clear {
	visibility:hidden;
	background:none;
	overflow:hidden;
	display:block;
	font-size:0;
	float:none;
	clear:both;
	padding:0;
	border:0;
	margin:0;
	height:0;
	width:0;
}

/* HEADER ***************************************************************/
#header {
	padding:30px 0 0;
}
#header .content {
	border-bottom:1px solid #fff;
    position:relative;
    text-align:left;
    margin:0 auto;
    height:220px;
    width:945px;
}

/* branding */
#branding {
    position:absolute;
    overflow:hidden;
    height:69px;
    width:244px;
    left:-9px;
    top:120px;
}
#branding h1 {
	letter-spacing:-1pt;
	font-style:italic;
	font-weight:bold;
	line-height:1;
	font-size:4em;
	padding:0 5px;
	margin:0;
}
#branding h2 {
	text-transform:lowercase;
	font-weight:bold;
	line-height:1.2;
	font-size:1.3em;
	padding:0 5px;
	margin:0;
}
#branding a {
    text-decoration:none;
    border:none;
    color:#fff;
}
#branding img {
	font-size:0;
}

/* PRIMARY NAVIGATION ****************************************************/
#primary-navigation {
	border-bottom:1px solid #fff;
    position:absolute;
    list-style:none;
    overflow:hidden;
    height:90px;
    width:100%;
    z-index:10;
    padding:0;
    margin:0;
    left:0;
    top:0;
}
#primary-navigation li {
	font-weight:bold;
    font-size:1.3em;
    display:inline;
    float:left;
    padding:0;
    margin:0;
}
#primary-navigation a {
	text-shadow:0px 0px 6px rgba(255, 255, 255, 0.6);
    text-decoration:none;
    padding:0 20px;
    display:inline;
    height:90px;
    color:#fff;
    float:left;
}
#primary-navigation li.alpha a {
	padding-left:0;
}
#primary-navigation a span {
	background:url(images/bg_primary-navigation.png) repeat-x 0 -30px;
    position:relative;
    padding:33px 0 0;
	cursor:pointer;
    display:inline;
    float:left;
    height:1%;
}
.no-js #primary-navigation a:hover span,
.no-js #primary-navigation a:focus span,
.no-js #primary-navigation a:active span {
	text-shadow:0px 0px 6px rgba(0, 174, 239, 0.6);
	color:#00aeef;
}
#primary-navigation a:hover span,
#primary-navigation a:focus span,
#primary-navigation a:active span {
	text-shadow:0px 0px 6px rgba(0, 174, 239, 0.6);
}
#primary-navigation li.current a span {
	text-shadow:0px 0px 6px rgba(0, 174, 239, 0.6);
	background-position:0 0;
	color:#00aeef;
}

#primary-navigation a span.marker {
	background-position:0 0;
	position:absolute;
	cursor:pointer;
    display:block;
    height:0px;
    width:100%;
    padding:0;
    left:0;
    top:0;
}

/* MAIN ******************************************************************/
#main {
    font-weight:bold;
    line-height:1.63;
    font-size:1.3em;
}
#main form.content {
    padding:0 235px 38px 0;
	position:relative;
    overflow:hidden;
    text-align:left;
    margin:0 auto;
    width:710px;
}

/* FOOTER ****************************************************************/
#footer {
	background:url(images/bg_footer.png) no-repeat 50% 100%;
	padding:0 0 60px;
    font-weight:bold;
    margin:0 0 40px;
    font-size:1.2em;
}
#footer .content {
	border-top:1px solid #fff;
	padding:38px 0 0;
    text-align:left;
    overflow:hidden;
    margin:0 auto;
    width:945px;
}

#address,
#contact {
	display:inline;
	width:185px;
	float:left;
	margin:0;
}
#contact dt {
	margin:0 .5em 0 0;
	display:inline;
	float:left;
	color:#555;
}
#social {
	display:inline;
	float:right;
}
#social li {
	margin:0 0 7px 7px;
	display:inline;
	float:left;
}
#social a {
	text-indent:-9999in;
	overflow:hidden;
	display:block;
	border:none;
	height:26px;
	width:26px;
}
#social a.feed {
	background:url(images/ico_social.png) no-repeat -52px 0;
}
#social a.twitter {
	background:url(images/ico_social.png) no-repeat -26px 0;
}
#social a.linkedin {
	background:url(images/ico_social.png) no-repeat 0 0;
}
#social a.feed:hover,
#social a.feed:focus {
	background-position:-52px -26px;
}
#social a.twitter:hover,
#social a.twitter:focus {
	background-position:-26px -26px;
}
#social a.linkedin:hover,
#social a.linkedin:focus {
	background-position:0 -26px;
}
#copyright {
	text-align:right;
}
#technologies {
	list-style:none;
	float:right;
	clear:both;
	padding:0;
	margin:0;
}
#technologies li {
	margin:0 0 0 1em;
	display:inline;	
	float:left;
}
#technologies a {
	background:url(images/ico_tick.png) no-repeat 0 50%;
	padding:0 0 0 14px;
}

/* SERVICES NAVIGATION ***************************************************/
#service-navigation {
	position:absolute;
	text-align:right;
	padding:16px 0 0;
	width:235px;
	right:0;
	top:0px;
}
#service-navigation h1 {
	letter-spacing:-1pt;
	font-size:2em;
}
.cufon-ready #service-navigation h1 {
	margin-bottom:5px;
}
#service-navigation ul {
	padding:0 0 0 40px;
	list-style:none;
}
#service-navigation li {
	overflow:hidden;
	width:100%;
	margin:0;
}
#service-navigation li h2 {
	text-transform:none;
	margin:0;
}
#service-navigation li a {
	line-height:1.35;
	padding-top:3px;
	display:inline;
	float:right;
}
#service-navigation li.alpha a {
	padding:0;
}
#service-navigation li.current a {
	border-color:#00aeef;
	color:#00aeef;
	width:100%;
}

/* FEATURE *************************************************************/
#feature {
	position:relative;
	min-height:372px;
	overflow:hidden;
	margin:0 0 20px;
	width:710px;
}
.ie6 #feature {
	overflow:visible;
	height:372px; /* min-height */
}
#feature .content {
	position:absolute;
	overflow:hidden;
	height:372px;
	width:710px;
	left:0;
	top:0;
}
#feature .hidden {
	display:none;
}

/* PRIMARY IMAGE *******************************************************/
.primary-image {
	display:block;
	height:372px;
}

/* SLIDESHOW ***********************************************************/
.slideshow {
	position:relative;
	height:372px;
	width:100%;
	z-index:10;
}
.slideshow dt {
	height:372px;
	width:100%;
}
.slideshow dt a {
	display:block;
}
.slideshow dt img {
	display:block;
}
.slideshow dd {
	border:1px solid #555;
	border-width:1px 0px 1px 0px;
	white-space:nowrap;
	position:relative;
	padding:6px 15px;
	background:#000;
	overflow:hidden;
	margin:-3.9em 0 0;
	display:inline;
	float:left;
}
.slideshow dd h2 {
	text-transform:none;
	margin:0;
}
.slideshow dd a {
	border:none;
}
.slideshow .tile {
	overflow:hidden;
	display:inline;
	height:124px;
	width:142px;
	float:left;
}

/* GOOGLE MAP **********************************************************/
.googlemap {
	position:absolute;
	overflow:hidden;
	height:372px;
	z-index:5;
	left:0;
	top:0;
}

/* GRID LIST ***********************************************************/
.grid-list {
	position:relative;
	list-style:none;
	overflow:hidden;
	z-index:10;
	padding:0;
	margin:0;
}
.grid-list li {
	display:none;
	float:left;
	opacity:.1;
	filter:alpha(opacity=10);
}
.grid-list .visible,
.grid-list .selected {
	display:block;
}
.grid-list .selected {
	opacity:1;
	filter:alpha(opacity=100);
}
.grid-list a {
	line-height:124px;
	text-align:center;
	display:block;
	height:124px;
	width:142px;
	border:none;
}

/* TAB LIST ***********************************************************/
.tab-list {
	list-style:none;
	overflow:hidden;
	width:100%;
	padding:0;
}
.tab-list li {
	padding-right:15px;
	margin-right:5px;
	display:inline;
	float:left;
}
.tab-list li.current {
	padding-right:0;
}
.tab-list a {
	line-height:1.35;
	display:block;
}
.tab-list li.current a {
	border-color:#00aeef;
	padding-right:15px;
	color:#00aeef;
}

/* SECONDARY CONTENT **************************************************/
.secondary-content {
	border:1px solid #555;
	padding:11px 15px 0;
	margin-bottom:50px;
	position:relative;
	text-align:left;
	float:right;
	width:218px;
}
.secondary-content .cufon p,
.secondary-content .cufon ul {
	line-height:1.3;
	font-size:1.35em;
	color:#777;
}
.secondary-content p.author {
	text-transform:uppercase;
	min-width:110px;
	max-width:127px;
	margin-right:127px;
	position:absolute;
	padding:14px 0 0;
	line-height:1.4;
	font-size:1em;
	color:#fff;
	top:100%;
}
.secondary-content cite {
	font-style:normal;
	display:inline;
	float:left;
}
.secondary-content .role {
	text-transform:none;
	font-size:.9em;
	display:block;
}
.secondary-content .arrow {
	background:url(images/bg_speech_arrow.png) no-repeat 100% 100%;
	position:absolute;
	margin-left:15px;
	max-height:5em;
	height:100%;
	width:100px;
	left:100%;
	top:0;
}

/*alternate secondary content*/
.boxed 
{
    margin:0 0 15px 16px;
    border:1px solid #555;
    padding:11px 15px 0;
    position:relative;
    min-height:220px;
    width:315px;
    float:left;
    color:#777;
}
.boxed.first 
{
    margin:0;
}
.boxed p 
{
    font-size:1.35em;
    line-height:1.3;
}
.boxed h2.tel 
{
    position:absolute;
    bottom:0;
}
/* COLUMNS ************************************************************/
.columns-2 {
	/*overflow:hidden;*/
	width:100%;
}
.column-primary {
	text-align:justify;
	margin-bottom:40px;
	display:inline;
	width:430px;
	float:left;
}
.column-secondary {
	margin-bottom:40px;
	text-align:right;
	display:inline;
	width:250px;
	float:right;
}

/* CONTACT DETAILS ****************************************************/
.contact {
	letter-spacing:-.3pt;
	text-transform:none;
	font-weight:normal;
	margin-bottom:6px;
	line-height:1.2;
	font-size:2.5em;
}

.contact.selected {
    color:#00AEEF;
}

/* NAV LIST ***********************************************************/
.nav-list {
	text-align:right;
	list-style:none;
	font-size:1em;
	padding:0 0 6px;
}
.nav-list li {
	overflow:hidden;
	width:100%;
	margin:0;
}
.nav-list li a {
	line-height:1.35;
	padding-top:3px;
	display:inline;
	float:right;
}
.nav-list li.current a {
	border-color:#00AEEF;
	color:#00AEEF;
	width:100%;
}

/* NEWS LIST ***********************************************************/
.news-list dt {
	border-top:1px solid #555;
	padding:11px 0 0;
	font-size:1.1em;
	margin-bottom: 5px;
}
.news-list dd {
	margin:0 0 15px;
}

.news-list dd img{
	float: left;
	width:150px;
	margin-top:5px;
	margin-right:10px;
    border: 1px solid #666;
}

.news-list .alpha {
	border:none;
	padding:0;
}

/* SEARCH RESULTS ******************************************************/
.search-results {
	margin:22px 0;
}
.search-results dt {
	border-top:1px solid #555;
	text-transform:uppercase;
	margin:0 0 11px;
	padding:11px 0 0;
	font-size:1em;
}
.search-results dd {
	margin:0 0 11px;
}
.search-results .alpha {
	border:none;
	padding:0;
}

/* SERVICES LIST *******************************************************/
.services-list {
	list-style:none;
	padding:0;
}
.services-list li {
	border-top:1px solid #555555;
	padding:11px 0 0;
}
.services-list li.alpha,
.services-list li li {
	border:none;
	padding:0;
}
.services-list li ul {
	margin:0 0 11px;
}

/** @section Form ***********************************************/
input, textarea, select, option {
	font:1em helvetica, arial, "Nimbus Sans L", "Bitstream Vera Sans", sans-serif;
	color:#89807e;
}
select, input {
	vertical-align:middle;
	overflow:visible;
}
input::-moz-focus-inner { 
	border:none;
	padding:0;
}
fieldset {
	padding:20px 0 0;	
}

.form-sub {
	padding:8px 0 1em 140px;
	position:relative;
	clear:both;
}
.form-row {
	position:relative;
	margin:0 0 10px;
	clear:both;
}
.form-row:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
.ie7 .form-row,
.ie6 .form-row {
	height:1%;
}

.form-row label,
.form-row .label {
	margin-right:20px;
	font-weight:bold;
	display:inline;
	padding:4px 0;
	width:120px;
	float:left;
	clear:left;
}
.form-row label.checkbox {
	width:auto;
}
.form-row label em,
.form-row .label em,
.error label,
.error .label  {
	font-style:normal;
	font-weight:bold;
	color:#CF0000;
}
.form-row .content {
	position:relative;
	list-style:none;
	overflow:hidden;
	padding:4px 0;
	clear:right;
	margin:0;

	display:inline-block;
}
.form-row .content {
	display:block;
}
.form-row .content ul {
	list-style:none;
	padding:0;
	margin:0;
}
.form-row input[readonly] {
	color:#999;
}
.form-row input {
	vertical-align:top;
}
.ie6 .form-row input,
.ie7 .form-row input {
	vertical-align:middle;	
}
.form-row input[type="radio"] {
	margin-top:1px;
}
.ie6 .form-row input[type="radio"],
.ie7 .form-row input[type="radio"],
.ie8 .form-row input[type="radio"] {
	margin-top:-1px;
}
.form-row textarea {
	resize:vertical; /* for webkit */
}
.form-row .ui-datepicker-trigger {
	vertical-align:baseline;
	position:relative;
	margin-left:2px;
	top:2px;
}
.form-row .note p,
.form-row p.note {
	margin:6px 0 0;	
	font-size:.9em;
	color:#a59a98;
}

/* radio / checkboxes */
.form-row .content label {
	white-space:normal;
	position:relative;
	display:inline;
	clear:none;
	float:none;
	width:auto;
}
.form-row .content li {
	overflow:hidden;
	padding:0;
}
.ie6 .form-row .content li {
	height:1%;
}
.form-row .content li input {
	display:inline;
	float:left;
}
.form-row .content li label {
	padding:2px 10px 2px 3px;
	overflow:hidden;
	display:block;
	margin:0;
	top:-1px;
}
.form-row .content li input {
	margin-top:3px;
}

/* sizes */
.txt,
.ddl {
	width:40ex;
	
	margin:-2px 0;
	padding:4px;
	border:none;
}
.ddl {
	width:auto;
}
.error .txt,
.error .ddl {
	background:#ebb;
}
.error .ddl option {
	background:#ebb;
}

.full {
	width:96%;	
}
.long {
	width:80ex;
}
.short {
	width:30ex;
}
.tiny {
	width:10ex;
}
.short-date {
	width:11ex;
}
.postcode {
	width:20ex;
}
.cv2 {
	width:5ex;
}
.qty {
	width:5ex;
}
.sortcode {
	text-align:center;
	width:3ex;
}
.acnumber {
	width:14ex;	
}

/* button */
.button {
	background:#000;
	border:1px solid #555;
	vertical-align:middle;
	display:inline-block;
	white-space:nowrap;
	position:relative;
	text-align:center;
	font-weight:bold;
	font-size:1.2em;
	padding:8px 15px;
	line-height:1.1;
	cursor:pointer;
	color:#fff;
}
.button:hover,
.button:focus,
.button:active {
	border-color:#00AEEF;
}
.ie6 input.button,
.ie7 input.button {
	padding:6px 15px;
}

.button.disabled,
.button.disabled:hover,
.button.disabled:focus,
.button.disabled:active {
	background-position:-600px 50%;
	border-color:#222;

	-webkit-box-shadow:0 0 5px #222;
	-moz-box-shadow:0 0 5px #222;
	-o-box-shadow:0 0 5px #222;
	box-shadow:0 0 5px #222;

	text-shadow:0 -1px 0 #000;
}

p .button {
	margin-right:8px;
}

/*notification*/
.notification .error 
{
    color:#00AEEF;
}
