/* CSS Document */

/* Body and Universal Reset */

* {
	margin: 0;
	padding: 0;
}

body {
	background: url("/images/backgrounds/header.png") top left repeat-x #d5dbe2;
}

#container {
	margin:0 auto;
	width: 960px;
	background-color:#FFF;
}

#popupWindowCaller {
	display:none;
}

.clear {
	clear:both;
	height:0px;
}

img {
	border: none;
}

/* Typography */


/* Header */

#header {
	margin: 0 auto;
	padding: 10px 20px 0 20px;
	width: 920px;
	height: 157px;
}

.logo {
	float:left;
	width:417px;
	height:105px;
}

.phoneContact {
	float:right;
	color:#FFF;
	font-size:20px;
	font-weight:bold;
	margin: 60px 30px 0 0;
	text-shadow:#495868 0px 1px 0px;
}

.phoneContact a {
	color: #fff !important;
	}

.atsign {
    font-size: 21px;
    margin-left: 10px;
    color: #E9EEF4;
    font-weight: normal;
}
.addressDetails {
    color: #FFFFFF;
    font-size:20px;
    font-weight: bold;
    margin: 30px 0 10px 0;
    position: absolute;
    text-shadow: 0 1px 0 #495868;
	float:right;
}

#headerDetails {
	float:right;
	margin: 60px 0 0;
}

#headerDetails a {
	color: #fff;
	margin: 0 0 0 10px;
	}

#headerDetails a:hover {
	color: #6cabdf;
	}


/* Main Navigation */

#mainNav {
	height:50px;
	display:block;
	margin:5px 0 0;
}

#mainNav li {
	list-style:none;
	display:inline;
	float:left;
	margin:0 26px 0 0;
}

#mainNav li.navEnd{
	margin:0;
}

#mainNav li a {
	color:#104f81;
	font-size:15px;
	text-transform:uppercase;
	padding:14px 0 9px;
	float:left;
	text-decoration:none;
	font-weight: bold;
	border-bottom: 4px solid #d5dbe2;
}
#mainNav li a:hover {
	color:#000;
}

#mainNav .down a {
	color:#6cabdf;
	text-shadow:none;
	border-bottom: 4px solid #6cabdf;
}

/* HOMEPAGE */

.imageThumb {
	background:url(/images/backgrounds/image-shadow.jpg) no-repeat 25px 140px;
	float:left;
	width:145px;
	margin: 0 30px 0 0;
	height:194px;
}

#content .endThumb {
	margin:0px;
}

#content a.previewThumb {
	border:6px #104f81 solid;
	width:128px;
	height:128px;
	float:left;
}

#content .previewText {
	display:block;
	text-transform:uppercase;
	float:left;
	color:#104f81;
	font-size:14px;
	border-bottom:none;
	padding:4px 0 5px;
}

#content .imageThumb:hover .previewThumb {
	border:6px #666 solid;
}

#content .imageThumb:hover .previewText {
	color:#666;
}



/* Sidebar */

#sidebar {
	float: left;
	width: 235px;
	margin: 0;
}

#sidebar ul {
	list-style:none;
	padding:0 0 20px 20px;
}

#sidebar li.listHeader {
	background: none;
	background-color: #2e4e82;
	color: #FFF;
	font-size: 14px;
	margin: 20px 0 10px -29px;
	padding: 5px 0 5px 29px;
	border-left: none;
	text-shadow: #24313f 0px 1px 0px;
	text-transform: uppercase;
}

#sidebar li.listHeader.first {
	margin-top: 0px;
	}

#sidebar li.listHeader a {
	color:#FFF;
}

#sidebar li {
    background: url(/images/backgrounds/sidenav-bar.gif) no-repeat scroll 0 9px transparent;
    border-left: 1px solid #CFD5DB;
    font-size: 12px;
    margin: 0 0 0 10px;
    padding: 1px 0 1px 20px;
	font-weight:bold;
}

#sidebar li a {
	color:#394e64;
}

#sidebar li a:hover {
	text-decoration:underline;
}

#sidebar .contactHeader {
	background:#585858;
	text-transform:uppercase;
	color:#FFF;
	font-size:14px;
	font-weight:bold;
	margin:0 0 10px -9px;
	padding:5px 0 5px 29px;
	border-left:none;
	text-shadow:#24313f 0px 1px 0px;
}

.textfieldSub {
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2) inset;
    margin: 0 0 12px 20px;
    padding: 8px;
    width: 180px;
}

.sendButton {
	float: right;
    margin: 0 28px 20px 0;
}



/* Content */

#content {
	float:right;
	width:685px;
	padding: 0 20px 20px 0;
}

#content p, #content table, #content ul, #content ol {
	margin:0 0 18px 0;
}

#content ul, #content ol {
	margin-left:18px;
}

/* BREADCRUMBS */

#breadcrumbs {
	display:block;
	height:32px;
	width:100%;
	font-size:9px;
	color:#999999;
}

#breadcrumbs ul {
	padding: 5px 0 0 20px;
}

#breadcrumbs li {
	list-style:none;
	display:inline;
}

#breadcrumbs li a {
	text-transform:uppercase;
	color:#394e64;
}

#breadcrumbs li a:hover {
	text-decoration:underline;
}

/* BANNERS */

.BannerContainer {
	float:right;
	width:714px;
	height:286px;
	background:url(/images/backgrounds/banner-top-border.png) left bottom no-repeat;
	margin: 0 -9px 20px 0;
}

.pageBanner {
	width:714px;
	background:url(/images/backgrounds/banner-top-border.png) left bottom no-repeat;
	margin: 0 -9px 20px 0;
	height:187px;
	float:right;
}

/* Products */

.productContainer {
	background:url(/images/backgrounds/image-shadow.jpg) no-repeat 25px 140px;
	float:left;
	width:145px;
	margin: 0 30px 0 0;
	height:194px;
}

#content .enlargeImage {
	height:156px;
}

#content .endThumb {
	margin:0px;
}

#content a.productThumb {
	border:6px #5f7387 solid;
	width:128px;
	height:128px;
	float:left;
}

#content .productText {
	display:block;
	text-transform:uppercase;
	float:left;
	color:#5f7387;
	font-size:14px;
	border-bottom:none;
	padding:4px 0 5px;
}

#content .productContainer:hover .productThumb {
	border:6px #666 solid;
}

#content .productContainer:hover .productText {
	color:#666;
}

.extraThumbs {
	float:left;
}

#productImgContainer {
	float:left;
	margin: 0 0 26px;
	width:330px;
	position: relative;
}

#content #productImgContainer a {
	border:6px #5f7387 solid;
	float:left;
	height: 300px;
}

#content #productImgContainer a:hover {
	border:6px #666 solid;
}

#productImgContainer a i {
	position: absolute;
	bottom: 10px;
	right: 36px;
	font-size: 46px;
	color: #FF0000;
	}

.productContent {
	float:right;
	width:350px;
}

.enlarge {
    display: block;
    margin: 10px 0 0;
}

.enlarge img {
    float: left;
    padding: 3px 5px 0 0;
}

.enquireLink {
	text-transform:uppercase;
	font-weight:bold;
}

#content .backButton {
	padding:4px 5px;
	border:#CCC 1px solid;
	color:#ccc;
}

#content .backButton:hover {
	border:#0ba075 1px solid;
	color:#0ba075;
}

/* Services */

.servicesContainer  {
	border-top: #CCCCCC 1px solid;
	padding:20px 0 0;
	float:left;
}

.servicesImage {
    background: url(/images/backgrounds/image-shadow.jpg) no-repeat scroll 94px 142px transparent;
    float: right;
    height: 165px;
    margin: 0 0 0 20px;
    width: 220px;
}

.servicesImage img {
	border:6px #5f7387 solid;
}

/* Testimonials */

.testQuote {
	background: url(/images/backgrounds/quote.gif) left 10px no-repeat;
	padding: 20px 0 0 20px;
}

.testRight {
    border-bottom: 1px dotted #CCCCCC;
    color: #5F7387;
    font-weight: bold;
    padding: 0 10px 15px;
    text-align: right;
}

.pageimageright {
	float: right;
	margin:  0 0 10px 15px;
	}

/* Blog */

.blogDate {
	font-weight: bold;
}

.readMore {
	font-weight: bold;
	font-style:italic;
}

.blogSearch {
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2) inset;
    padding: 8px;
	width: 270px;
}

.searchButton {
	float:right;
}

.blogContainer {
	background:url(/images/backgrounds/image-shadow.jpg) no-repeat 25px 140px;
	float:left;
	width:145px;
	margin: 0 30px 0 0;
	height:155px;
}

#content .blogContainer:hover .productThumb {
	border:6px #0ba075 solid;
}

.pageImageRight {
    background: url(/images/backgrounds/image-shadow.jpg) no-repeat scroll 194px 212px transparent;
    float: right;
    height: 230px;
    margin: 0 0 0 20px;
    width: 312px;
}

.pageImageRight img {
	border: 6px solid #5F7387;
}

#content .backButtonTop {
	float:right;
	padding:4px 5px;
	border:#CCC 1px solid;
	color:#ccc;
}

#content .backButtonTop:hover {
	border:#0ba075 1px solid;
	color:#0ba075;
}

/* FAQS */

ul.faqs {
	list-style: none;
	margin-left: 0px !important;
	}

h3.faq_title {
	font-size: 18px;
	margin-bottom: 15px;
	}

h3.faq_title:hover {
	cursor: pointer;
	}

.faq_content {
	border-left: 1px solid #CFD5DB;
	border-bottom: 1px solid #CFD5DB;
	margin-left: 5px;
	padding-left: 10px;
	margin-bottom: 20px;
	}

/* Footer */

#footer {
	clear: both;
	margin: 3px auto 0;
	padding: 10px 20px;
	line-height:25px;
	width:960px;
	text-align:center;
	color:#333;
	font-size:10px;
}

.footerSocial {
	font-size: 28px;
	}

#footer a.footerSocial:hover {
	border-bottom: none;
	color: #2e4e82;
	}

#footer a {
	color:#333;
	margin:0 5px;
}

#footer a:hover {
	border-bottom:#666 dotted 1px;
}

#footer li {
	display: inline;
	list-style: none;
	margin:0 12px 0 0;
}


/* Online Enquiry Form */

.onlineEnquiryTable td {
	padding-bottom:5px;
}

.yourDetails {	
	padding:7px 0 0 0;
	height:30px;
	font-weight:bold;
	font-size:13px;
}

.requiredFields {
	text-align:right;
	padding:4px 0 0 0;
	font-size:11px;
}

.required {
	text-align:center;
	vertical-align:middle;
	padding-left:15px;
	padding-right:5px;
}

input, textarea, select {
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
}

.onlineEnquiryTable input.textinput, .onlineEnquiryTable input.textinputhover, .onlineEnquiryTable textarea {
	width: 500px;
	-webkit-box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	-moz-box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	padding:5px;
}

input.textinput, input.textinput:focus, input:focus {
	-webkit-box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	-moz-box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	padding:5px;
	}

.productContent input.textinput, .productContent input:focus {
	padding:8px !important;
	width: 170px;
	}

.productContent input[type="submit"], .productContent input[type="submit"]:focus {
	padding: 8px !important;
	width: auto;
	}

.productContent input[type="checkbox"]:focus {
	width: auto;
	  }

.product_checkbox {
	font-size: 10px;
	line-height: 14px;
	}

.product_checkbox input {
	margin: 1px 5px 0;
	float: left;
	}

.product_submit_button {
	float: left;
	}

.textinput {
	border:1px solid #666666;
}

.textinputBadges {
	-webkit-box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	-moz-box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2);
	padding:8px;
	border:1px solid #666666;
}

.badgesHeading {
	font-size:14px;
	font-weight:bold;
}

.badgesTextSpacing {
	margin: 0 26px 0 11px;
}

.textinputhover {
	border:1px solid #0BA075; 
}

.onlineEnquiryTable .errorInput {
	background: url(/images/icons/error.gif) no-repeat right 5px #fff;
}

.submit {
	text-align:right;
}

.errorText {
	color:#FF0000;
}

input.hintText {
	color: #999999;
}

.form_label {
	width   : 14%;
	padding : 7px 0 0 0;
	clear   : both;
	font-weight: normal;
	}

.form_required {
	width   : 5%;
	padding : 6px 0 0 0;
	}

.form_field {
	width      : 55%;
	min-height : 30px;
	}

.float_left {
	float: left !important;
	}

.text_align_right {
	text-align: right;
	}

#subscribeForm .textinput, #subscribeForm .textinputhover {
	width: 100%;
	}

.fa-asterisk {
	color: red;
	}

/* ================================= */
/* Buttons */
/* ================================= */

input[type="submit"], button, .button {
	padding               : 8px 17px !important;
	background-color      : #585858;6);
	background-repeat     : repeat-x;
	*background-color     : #e6e6e6;
	/* Darken IE7 buttons by default so they stand out more given they won't have borders */
	filter                : progid:DXImageTransform.Microsoft.gradient(enabled=false);
	border                : none;
	*border               : 0;
	border-bottom-color   : #a2a2a2;
	display               : inline-block;
	font-size             : 14px;
	line-height           : 24px;
	*line-height          : 20px;
	line-height           : normal !important;
	text-transform: uppercase;

	color                 : #fff !important;
	font-weight           : bold;
	cursor                : pointer;
	width                 : auto !important;
	}

input[type="submit"]:hover, button:hover, .button:hover {
	color               : #333333 !important;
	background-color    : #e6e6e6;
	*background-color   : #d9d9d9;
	color               : #333333;
	text-decoration     : none;
	background-color    : #e6e6e6;
	*background-color   : #d9d9d9;
	/* Buttons in IE7 don't get borders, so darken on hover */
	background-position : 0 -15px;
	-webkit-transition  : background-position 0.1s linear;
	-moz-transition     : background-position 0.1s linear;
	-o-transition       : background-position 0.1s linear;
	transition          : background-position 0.1s linear;
	}

input[type="submit"]:active, button:active, .button:active {
	background-color   : #e6e6e6;
	background-color   : #d9d9d9     \9;
	background-image   : none;
	outline            : 0;
	-webkit-box-shadow : inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
	-moz-box-shadow    : inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
	box-shadow         : inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
	}

/* ================================= */
/* Message Boxes */
/* ================================= */

.msg_box {
	position     : relative;
	margin       : 20px 0;
	padding      : 10px 10px 10px 10px;
	border-width : 2px;
	border-style : solid;
	/* border-radius: 5px; */
	color        : #555555;
	}

.msg_box.info {
	background   : #E1F2F7 url('/images/icons/information.png') no-repeat 15px 11px;
	border-color : #C5E4ED;
	}

.msg_box.success {
	background   : #F2FCDC url('/images/icons/accept.png') no-repeat 15px 11px;
	border-color : #D5F296;
	}

.msg_box.caution {
	background   : #FFFCD9 url('/images/icons/error.png') no-repeat 15px 11px;
	border-color : #F5F0AE;
	}

.msg_box.error {
	background   : #FFF2ED url('/images/icons/exclamation.png') no-repeat 15px 11px;
	border-color : #F5C2AE;
	}

.msg_box a.close {
	position : absolute;
	top      : 3px;
	right    : 0px;
	padding  : 5px 10px;
	}

/***** Error / Info / Caution Boxes *****/

.error_box, .info_box {
	margin:0 0 15px 0;
	padding:15px;
	border-width: 3px;
	border-style: solid;
}

.error_box {
	border-color: #CC0000;
	background-color: #f3d8d8;
	color:#CC0000;
}

.info_box {
	border-color: #7F8F13;
	background-color: #E0E6B6;
	color:#7F8F13;
}

#content .error_box ul {
	margin-bottom:0;
}


/* Classes Reserved for the TinyMCE Editor  */

.editor {
	width: 100%;
}

.mini_editor {}