/*
 * Main Elements
 */

body {
	background: url("../images/styles/bg-tile.jpg") repeat-x top center;
}
#wrap {
	/* centred */
	width: 864px;
	margin: 0 auto;
	background: url("../images/styles/bg-glow.jpg") no-repeat top left;
}

#header, #content, #footer, #highlights {
	width: 864px;
	overflow: hidden;
}

#content {
	margin-bottom: 35px;
	display: block;
}

#highlights {
	padding: 1em 0;
}

#footer {
	margin-top: 1em;
	margin-bottom: 2em;
}

.column_left {
	width: 568px;
	float: left;
	display: inline; /* ieSux double margin fix */
}

.column_right {
	float: right;
	width: 260px;
	display: inline; /* ieSux double margin fix */
}

#footer ul {
	margin-left: 10px;
}



/*
 * Main Menu
 */

ul#main_menu {
	width: 871px;
	height: 92px;
	margin: 0px -4px 0px -3px;
	padding: 42px 0 5px;
}

ul#main_menu li {
	display: block;
	float: left;
	height: 92px;
	position: relative;
	top: 0;
	left: 0;
}

ul#main_menu li a {
	height: 92px;
	position: absolute;
	left: 0;
	top: 0;
	background: url("../images/styles/menu.jpg") no-repeat 0 0;
}

/* background image positions */

ul#main_menu li.logo, ul#main_menu li.logo a {
	width: 233px;
	background-position: 0 0;
}

ul#main_menu li.home, ul#main_menu li.home a {
	width: 234px;
	background-position: -234px 0;
}

ul#main_menu li.products, ul#main_menu li.products a {
	width: 127px;
	background-position: -467px 0;
}

ul#main_menu li.what_we_do, ul#main_menu li.what_we_do a {
	width: 151px;
	background-position: -594px 0;
}

ul#main_menu li.articles, ul#main_menu li.articles a {
	background-position: -745px 0;
	width: 126px;
}

/* hovers and selected states */

ul#main_menu li.home a.selected, ul#main_menu li.home a:hover {
	background-position: -234px -92px;
}

ul#main_menu li.products a.selected, ul#main_menu li.products a:hover {
	width: 127px;
	background-position: -467px -92px;
}

ul#main_menu li.what_we_do a.selected, ul#main_menu li.what_we_do a:hover {
	width: 151px;
	background-position: -594px -92px;
}

ul#main_menu li.articles a.selected, ul#main_menu li.articles a:hover {
	background-position: -745px -92px;
	width: 126px;
}




/*
 * Sub Menu
 */

ul#sub_menu {
	width: 260px;
	margin: 0;
	padding: 10px 0;
	padding-left: 0;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.3);
}

ul#sub_menu li {
	list-style: none;
	padding: 0;
}
ul#sub_menu li.title {
	padding: 0 15px;
}
ul#sub_menu li a {
	padding: 3px 15px;
	display: block;
}

ul#sub_menu.space_after {
	margin-bottom: 35px;
}

/* sub-sub-menu divider */
ul#sub_menu li ul {
	border-top-style: solid;
	border-top-width: 1px;
}


/*
 * Footer Menu
 */

ul#footer_menu {
	margin: 0;
	padding-left: 0;
}

ul#footer_menu li {
	margin-left: 0;
	padding-right: 0.231em; /* 3px for 13px font */
	list-style: none;
	display: inline;
}



/*
 * Page Content
 */

div#content.page div.column_left, div.content_intro {
	position: relative;
	top: 15px;
	margin-bottom: 30px;
}

div.content_intro {
	margin-bottom: 50px;
}

div#content.page div.column_left div.top, div.content_intro div.top {
	height: 15px;
	margin-bottom: -15px;
	position: relative;
	top: -15px;
	background: url("../images/styles/round-corners-wide.gif") no-repeat -568px top;
}

div#content.page div.column_left div.bottom, div.content_intro div.bottom {
	height: 15px;
	margin-top: -15px;
	position: relative;
	top: 15px;
	background: url("../images/styles/round-corners-wide.gif") no-repeat -568px bottom;
}

div.hero_image {
	color: black;
	background-repeat: no-repeat;
	background-position: center center;
}

div#content.page div.column_left h2,
div#content.page div.column_left h3,
div#content.page div.column_left h4,
div#content.page div.column_left p,
div.content_intro h2,
div.content_intro h3,
div.content_intro h4,
div.content_intro p{
	margin: 15px 30px;
}

div#content.page div.column_left li {
	margin-left: 30px;
}

div#content.page div.column_left ul {
	margin-bottom: 30px;
}

div.two_columns div {
	overflow: hidden;
	float: left;
}
div#content div.two_columns {
	clear: both;
/*	width: 864;*/
	margin-bottom: 30px;
	overflow: hidden;
}
div#content div.two_columns div {
	width: 432px;
}


/*
 * Feature Panel
 */

div.feature_panel {
	width: 568px;
	margin-bottom: 15px;
	position: relative;
}

div.feature_panel h2 {
	width: 538px;
	position: absolute;
	top: 15px;
}

div.feature_panel a.pill {
	position: absolute;
	bottom: 12px;
	right: 12px;
}



/*
 * Half Panel
 */

div.half_panel {
	width: 260px;
	float: left;
	margin: 0 3px 10px 15px;
}

.half_panel div.top {
	height: 15px;
	margin-bottom: -15px;
	position: relative;
	top: -15px;
	background: url("../images/styles/round-corners.gif") no-repeat -520px top;
}

.half_panel div.bottom {
	width: 260px;
	margin-top: -14px;
	padding: 10px 0;
	position: relative;
	top: 10px;
	background: url("../images/styles/round-corners.gif") no-repeat -520px bottom;
}

.half_panel div.bottom h2 {
	margin-bottom: 0;
	text-align: center;
}



/*
 * Sidebar Panel
 */

div.sidebar_panel {
	margin-top: 10px;
	margin-bottom: 10px;
}

div.sidebar_panel div.top {
	height: 10px;
	margin-bottom: -10px;
	position: relative;
	top: -10px;
	background: url("../images/styles/round-corners.gif") no-repeat -520px top;
}

div.sidebar_panel div.bottom {
	height: 10px;
	margin-top: -10px;
	position: relative;
	bottom: -10px;
	background: url("../images/styles/round-corners.gif") no-repeat -520px bottom;
}



/*
 * Category Panel
 */

div.category_panel {
	width: 201px;
	height: 180px;
	overflow: hidden;
	float: left;
	margin: 0 20px 20px 0;
	position: relative;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.3);
}

div.category_panel.feature {
	width: 260px;
	height: 230px;
	margin: 0 42px 30px 0;
	position: relative;
}

div.category_panel.last,
div.category_panel.feature.last {
	margin-right: 0px;
}

div.category_panel span.hero_image,
div.category_panel span.details {
	width: 201px;
	height: 131px;
	display: block;
	background-position: center center;
	background-repeat: none;
	overflow: hidden;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-moz-border-radius-topright: 10px;
	-moz-border-radius-topleft: 10px;
}
div.category_panel.feature span.hero_image {
	width: 260px;
	height: 170px;
}

div.category_panel span.details {
	width: 171px;
	height: 101px;
	padding: 15px;
	z-index: 10;
}

div.category_panel.feature span.details {
	width: 230px;
	height: 140px;
}

div.category_panel span.details {
	position: absolute;
	top: 0;
	left: 0;
	display: none;
}

div.category_panel a:hover span.details {
	display: block;
}

div.category_panel div.details p {
	margin: 15px;
}

div.category_panel a {
	width: 201px;
	height: 180px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

div.category_panel.feature a {
	width: 260px;
	height: 230px;
}

div.category_panel span.heading {
	width: 201px;
	margin: 0;
	position: absolute;
	top: 139px;
	left: 0;
	padding: 0 15px;
}

div.category_panel.feature span.heading {
	width: 230px;
	top: 177px;
	left: 0;
}



/*
 * Content Summary
 */

div.content_summary {
	width: 568px;
	height: 66px;
	margin: 30px 0 45px;
	position: relative;
	top: 15px;
	cursor: pointer;
}

div.content_summary h3 {
	margin-bottom: 0;
}

div.content_summary img.hero {
	float: left;
	margin: 0 10px 0 10px;
	position: relative;
	top: -10px;
}

div.content_summary div.top {
	height: 10px;
	margin-bottom: -10px;
	position: relative;
	top: -10px;
	background: url("../images/styles/round-corners-wide.gif") no-repeat 0 top;
}

div.content_summary div.bottom {
	width: 568px;
	height: 10px;
	position: absolute;
	top: 66px;
	left: 0;
	background: url("../images/styles/round-corners-wide.gif") no-repeat 0 bottom;
}

div.content_summary a.pill {
	position: absolute;
	bottom: -5px;
	right: 15px;
}



/*
 * Pill (link)
 */

a.pill {
	background: transparent url("../images/styles/pill.png") no-repeat right -42px;
	cursor: pointer;
	display: block;
	float: left;
	height: 21px;
	margin-right: 6px;
	margin-top: 5px;
	padding-right: 17px; /* sliding doors padding */
}
a.pill span {
	background: transparent url("../images/styles/pill.png") no-repeat top left;
	display: block;
	line-height: 12px;
	padding: 3px 0 6px 10px;
}
a.pill:hover, a.pill.hover {
	background-position: right bottom;
	outline: none; /* hide dotted outline in Firefox */
}
a.pill:hover span, a.pill.hover span {
	background-position: left -21px;
}
.sidebar a.pill, .sidebar_panel a.pill {
	float: right;
}




/*
 * Forms
 */

form {
	clear: both;
}

input {
	margin: 3px 15px;
}

.sidebar_panel input {
	width: 226px;
}

div.validation_messages {
	padding: 10px 0;
}

/* remove the left margin and numbering */
form#questionnaire ol {
	margin-left: 0;
}
div#content.page div.column_left form#questionnaire li,
div#content.page div.column_left form#questionnaire li li li {
	list-style: none;
	margin-left: 0;
}
div#content.page div.column_left form#questionnaire li li {
	margin-left: 30px;
	overflow: hidden;
}
div#content.page div.column_left form#questionnaire li li p,
div#content.page div.column_left form#questionnaire li li h4 {
	margin-left: 0;
	margin-right: 0;
}
div#content.page div.column_left form#questionnaire ol ol ol {
	margin-left: 20px;
}

/*inline checkboxes and radios*/
form#questionnaire ol.inline {
	overflow: hidden;
}
form#questionnaire ol.inline li {
	float: left;
}
form#questionnaire ol.inline label {
	width: auto;
	float: left;
	clear: none;
}
form#questionnaire ol.inline input {
	width: auto;
	float: left;
	margin-right: 3px;
}

/* width & position of labels and inputs */
form#questionnaire label {
	width: 140px;
	display: block;
	float: left;
	clear: left;
}
form#questionnaire label.full_width,
form#questionnaire ol.check label {
	width: auto;
	float: none;
	clear: none;
	display: inline;
}
form#questionnaire input[type="text"] {
	width: 200px;
}

/*table*/
form#questionnaire table {
	margin-left:25px;
}
form#questionnaire table th,
form#questionnaire table td {
	text-align: center;
	border-style: none;
	padding: 5px;
}
form#questionnaire table th.first,
form#questionnaire table td.first {
	text-align: left;
}

form#questionnaire .next {
	display: none;
}

/*enquiry*/
#enquiry_button {
	display: none;
	margin-left: 30px;
	overflow: hidden;
}

form#enquiry input,
form#enquiry submit {
	margin-left: 0;
}



/*
 * Breadcrumbs
 */

#breadcrumbs {
	padding: 0 10px 15px;
}


/*
 * IE - better browser
 */
div#better_browser {
	border-bottom: 1px solid #cbc8cc;
	text-align: center;
	padding: 2px 0;
	margin-bottom: -20px;
	position: absolute;
	left: 0;
	width: 100%;
}


/*
 * Products
 */

div#content div.column_left dl
{
	clear: both;
	margin: 15px 30px;
}

form.buy_now input {
	margin: 0;
}

span.submit {
	background: transparent url("../images/styles/pill.png") no-repeat right -42px;
	cursor: pointer;
	display: block;
	float: left;
	height: 21px;
	margin-right: 6px;
	margin-top: 5px;
	padding-right: 17px; /* sliding doors padding */
}

span.submit input {
	border: 0px solid #fff;	
	background: transparent url("../images/styles/pill.png") no-repeat top left;
	color: #fff;
	display: block;
	line-height: 12px;
	padding: 3px 0 6px 10px;
}

span.submit:hover, span.submit.hover {
	background-position: right bottom;
	outline: none; /* hide dotted outline in Firefox */
}

span.submit:hover input, span.submit.hover input {
	background-position: left -21px;
}




/*
 * General
 */

.row {
	clear: both;
	height: 35px;
}

.rounded_10 {
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.shadow_3 {
	-webkit-box-shadow: 3px 3px 2px rgba(0,0,0,0.6);
	-moz-box-shadow: 3px 3px 2px rgba(0,0,0,0.6);
}