html {overflow-y: scroll;}
body {
	font: 16px/1.2em "Helvetica Neue", Helvetica, Arial, Geneva, sans-serif;
	background: #4986b3 url(/assets/img/page/gradient-blue.jpg) 0 96px repeat-x fixed;
	padding-top: 170px;
}

/* HEADER */
#header {
	background: transparent url(/assets/img/page/sky.jpg) top center repeat-x; /* #144e11 */
	position: fixed;
	z-index:90;
	top: 0;
	left: 0;
	width: 100%;
	height: 142px;
	}
#inner-header {
	width: 954px;
	position: relative;
	margin: 0 auto;
	}
#header h1 {
	position: relative;
	width: 403px;
	height: 96px;
	}
	#header h1 a {
		position: absolute;
		left: 2px;
		top: 0;
		display: block;
		width: 403px;
		height: 96px;
		text-indent: -999em;
		background: transparent url(/assets/img/page/passionforlife-logo.png) 0 0 no-repeat;
		}

/* SUBMENU */
ul#submenu {
	height: 46px;
	background: transparent url(/assets/img/page/submenu.png) 0 0 no-repeat;
	}
	ul#submenu li {
		float:left;
		line-height:15px;
		margin:12px 5px 0 17px;
		}
	ul#submenu li.help {
		float:right;
		margin:12px 17px 0 5px;
		}
		ul#submenu li a {
			text-decoration: none;
			color:#bccedb;
			-webkit-transition: color 0.1s ease-in-out;
			-moz-transition: color 0.1s ease-in-out;
			-o-transition: color 0.1s ease-in-out;
			transition: color 0.1s ease-in-out;
			}
		ul#submenu li.current a,
		ul#submenu li a:hover {
			color:#fff;
			}

/* BASKET (TOP BAR) */
#basket {
	position: absolute;
	z-index: 100;
	top: 12px;
	right: 2px;
	width: 200px;
	height: 72px;
	background-color: rgb(53,82,146);
	background-color: rgba(53,82,146,0.6);
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
	#basket.added {
		height: 200px;
		}
	#basket h2 {
		display: none;
		}
	#basket p {
		padding: 5px 0 5px 100px;
		height: 62px;
		background: transparent url(/assets/img/page/basket.png) 15px 50% no-repeat;
		color: white;
		font-size: 14px;
		line-height: 17px
		}
		#basket p a {
			color: white;
			line-height: 28px;
			}

/* CONTENT */
#content {
	position: relative;
	margin: 0 auto;
	width: 950px;
	min-height: 600px;
	box-shadow: 0 3px 4px rgba(0,0,0,0.5);
	-moz-box-shadow: 0 3px 4px rgba(0,0,0,0.5);
	-webkit-box-shadow: 0 3px 4px rgba(0,0,0,0.5);
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	background-color: white;
	color: rgba(0,0,0,0.8);
	}
	.content-block {
		padding: 15px;
		clear: both;
		}
	.content-block-left {
		clear: none;
		float: left;
		}
	.content-block-right {
		clear: none;
		float: right;
		}
	.content-650 {
		background: white url(/assets/img/page/content-bg.png) 650px 0 repeat-y;	
		}
	.content-650 .content-block-left {
		width: 620px;
		}
	.content-650 .content-block-right {
		width: 270px;
		}
	.content-half {
		background: white;	
		}
	.content-half .content-block-left,
	.content-half .content-block-right {
		width: 445px;
		}
	
	#content a {
		color: #013660;
		}
	#content h2 {
		font-size: 20px;
		color: #013660;
		margin-bottom: 10px;
		}
	#content h3 {
		font-size: 18px;
		margin-bottom: 10px;
		}
	#content h4 {
		margin: 20px 0 0;
		}
	#content p,
	#content ul,
	#content ol {
		margin-bottom: 0.6em;
		line-height: 1.4;
		}
	#content ul {
		list-style: square;
		padding-left: 2.5em;
		}
	#content ol {
		list-style: decimal;
		padding-left: 2.5em;
		}
		#content .footnote {
			font-size: 84% !important;
			color: rgba(0,0,0,0.6);
			}
	
	#content .content-block-bottom {
		position: relative;
		clear: both;
		background: #f9f9f9 url(/assets/img/page/shadow-horiz.png) 0 0 repeat-x;
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;
		-moz-border-radius-bottomleft: 5px;
		-moz-border-radius-bottomright: 5px;
		-webkit-border-bottom-left-radius: 5px;
		-webkit-border-bottom-right-radius: 5px;
		}
	#content .extrainfo h4 {
		font-size: 14px;
		margin-top: 0;
		}
	#content .extrainfo p,
	#content .extrainfo ul,
	#content .extrainfo ol {
		font-size: 14px;
		margin: 5px 0;
		}
		#content .extrainfo p + h4,
		#content .extrainfo ul + h4,
		#content .extrainfo ol + h4 {
			margin-top: 20px;
			}
		
	#content .product_image {
		float: right;
		margin: 0 0 0 10px;
		}
	
h2.banner,
h2 a.banner {
	display: block;
	width: 950px;
	height: 110px;
	text-indent: -999em;
	background-position: 0 0;
	background-repeat: no-repeat;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	-moz-border-radius-topleft: 5px;
	-moz-border-radius-topright: 5px;
	-webkit-border-top-left-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	}

/* HOME PAGE PRODUCT MATRIX */
ul#home-matrix {
	list-style: none;
	margin: 0 -15px;
	padding: 0;
	}
	ul#home-matrix li {
		float: left;
		position: relative;
		margin: 0;
		padding: 0;
		}
		ul#home-matrix li img {
			vertical-align: bottom;
			}
			ul#home-matrix li img.new-flash {
				position: absolute;
				top: -1px;
				right: -2px;
				}

/* BASKET (TABLE DISPLAY) */
form.basket table {
	width: 100%;
	margin-bottom: 10px;
	}
	form.basket table thead th:first-child {
		border-top-left-radius: 5px;
		border-bottom-left-radius: 5px;
		-moz-border-radius-topleft: 5px;
		-moz-border-radius-bottomleft: 5px;
		-webkit-border-top-left-radius: 5px;
		-webkit-border-bottom-left-radius: 5px;
		}
	form.basket table thead th:last-child {
		border-top-right-radius: 5px;
		border-bottom-right-radius: 5px;
		-moz-border-radius-topright: 5px;
		-moz-border-radius-bottomright: 5px;
		-webkit-border-top-right-radius: 5px;
		-webkit-border-bottom-right-radius: 5px;
		}
	form.basket table thead th {
		text-align: left;
		padding: 5px;
		background: #4986b3 url(/assets/img/page/button-bg.png) 0 50% repeat-x;
		color: white;
		}
		form.basket table tbody th {
			text-align: right;
			}
	form.basket table td,
	form.basket table tbody th {
		vertical-align: middle;
		line-height: 1;
		padding: 3px 0;
		}
	form.basket table tbody th {
		padding: 3px 5px;
		}
		form.basket table td.image {
			width: 55px;
			}
		form.basket table th.qty,
		form.basket table td.qty {
			text-align: center;
			width: 4em;
			}
		form.basket table th.price,
		form.basket table td.price {
			width: 4em;
			text-align: right;
			padding-left: 5px;
			padding-right: 5px;
			}
	form.basket table span.detail {
		font-size: 12px;
		color: #999;
		}
	form.basket table tr.item td {
		border-bottom: 1px solid #eee;
		}
	form.basket table a {
		text-decoration: none;
		}
		form.basket table a:hover {
			text-decoration: underline;
			}
	form.basket table tr.totals th,
	form.basket table tr.totals td {
		padding-top: 10px;
		}
form.basket table td.qty input, form#apply-voucher input {
	background: #ffffff;
	border: 2px solid #b6cfe1;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-khtml-border-radius: 4px;
	border-radius: 4px;
	font-size: 16px;
	text-align: center;
	outline: none;
	padding: 5px;
	margin: 10px 0;
	}
form.basket div.buttons {
	margin-top: 10px;
	}
form.basket div.buttons button,
form#apply-voucher button,
form.basket div.buttons a {
	background: #4986b3 url(/assets/img/page/button-bg.png) 0 50% repeat-x;
	border: none;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	-khtml-border-radius: 20px;
	border-radius: 20px;
	color: #fff !important;
	font-size: 16px;
	padding: 5px 12px;
	margin: 0 5px;
	text-shadow: 0 1px 1px #000000;
	text-decoration: none;
	line-height: 22px;
	display: block;
	float: left;
	cursor: pointer;
	}
form.basket div.buttons a {
	padding: 5px 12px;
	}
		
	form.basket div.buttons button:hover,
	form.basket div.buttons a:hover {
		background-color: #346f9b;
		}
		form.basket div.buttons a.checkout {
			float: right;
			background-color: #499e3d;
			}
		form.basket div.buttons a.checkout:hover {
			background-color: #3f8935;
			}

form#apply-voucher {
	clear: both;
	padding-top: 2em;
}
form#apply-voucher p {
	font-size: 0.85em;
	margin: 0;
	text-align: center;
}
form#apply-voucher button {
	float: none;
	display: inline;
	background-color: #94c2dd;
}


/* FOOTER */
#footer {
	position: relative;
	width: 950px;
	margin: 15px auto 0;
	padding-bottom: 15px;
	font-size: 12px;
	color: rgb(182,207,211);
	color: rgba(255,255,255,0.6);
	line-height: 40px;
	}
	#footer a {
		color: rgb(182,207,211);
		color: rgba(255,255,255,0.6);
		}
	#footer hr {
		display: none;
		}
	#footer img {
		vertical-align: middle;
		}

/* CHECKOUT STEP BAR */
ol#checkout-steps {
	width: 950px;
	height: 43px;
	list-style: none;
	margin: 0;
	padding: 0;
	background: transparent url(/assets/img/page/checkout-steps.png) -825px 0 no-repeat;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	-moz-border-radius-topleft: 5px;
	-moz-border-radius-topright: 5px;
	-webkit-border-top-left-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	}
	ol#checkout-steps li {
		margin: 0;
		padding: 0 40px 0 0;
		line-height: 43px;
		width: 125px;
		display: block;
		float: left;
		font-weight: bold;
		font-size: 14px;
		text-align: center;
		text-shadow: 0 1px 1px #fff;
		}
		ol#checkout-steps li#step6 {
			padding: 0;
			}
ol#checkout-steps.current-2 {
	background-position: -660px 0;
	}
ol#checkout-steps.current-3 {
	background-position: -495px 0;
	}
ol#checkout-steps.current-4 {
	background-position: -330px 0;
	}
ol#checkout-steps.current-5 {
	background-position: -165px 0;
	}
ol#checkout-steps.current-6 {
	background-position: 0 0;
	}
	ol#checkout-steps.current-1 li#step1,
	ol#checkout-steps.current-2 li#step2,
	ol#checkout-steps.current-3 li#step3,
	ol#checkout-steps.current-4 li#step4,
	ol#checkout-steps.current-5 li#step5,
	ol#checkout-steps.current-6 li#step6 {
		color: white;
		text-shadow: 0 1px 1px #000;
		}


/* CHECKOUT FORM */
form.checkout {
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-khtml-border-radius: 5px;
	border-radius: 5px;
	}
	
	form.checkout fieldset {
		border: none;
		padding-bottom: 10px;
		}
	
	form.checkout fieldset:last-of-type {
		padding-bottom: 0;
		}
		
		form.checkout legend {
			color: #384313;
			font-size: 16px;
			font-weight: bold;
			padding-bottom: 10px;
			}
						
			form.checkout fieldset fieldset legend {
				color: #111111;
				font-size: 14px;
				font-weight: normal;
				padding-bottom: 0;
				}
		
		#content form.checkout ol {
			padding: 0;
			}
		form.checkout ol li {
			background: #e6ebef;
			border: 2px solid #a1b4c3;
			-moz-border-radius: 5px;
			-webkit-border-radius: 5px;
			-khtml-border-radius: 5px;
			border-radius: 5px;
			line-height: 30px;
			list-style: none;
			padding: 5px 10px;
			margin-bottom: 3px;
			}
		
		form.checkout ol li.err {
			background: #f5e6e6;
			border-color: #d8a1a1;
			}
		form.checkout ol li.checkbox input {
			float: left;
			width: 20px;
			}
		form.checkout ol li.checkbox label {
			float: none;
			padding: 0;
			line-height: 20px;
			width: auto;
			float: none;
			display: block;
			margin-left: 35px;
			}
						
			form.checkout ol ol li {
				background: none;
				border: none;
				clear: left;
				}
			form.checkout ol.addresses li {
				clear: left;
				}
		
		form.checkout label {
			float: left;
			font-size: 14px;
			width: 140px;
			}
			form.checkout label.required {
				font-weight: bold;
				}
			
		form.checkout fieldset fieldset label {
			background: none;
			line-height: 20px;
			padding: 0 0 0 10px;
			width: auto;
			}
		form.checkout ol.addresses li input {
			position: absolute;
			top: 0;
			left: -30px;
			}
		form.checkout ol.addresses li label {
			position: relative;
			background: none;
			line-height: 20px;
			padding: 0;
			width: auto;
			float: none;
			display: block;
			margin-left: 35px;
			}
				
			form.checkout fieldset fieldset label:hover,
			form.checkout ol.addresses li label:hover {
				cursor: pointer;
				}
				
		
			form.checkout ol ol.login li  {
				padding: 15px 0;
				}
				form.checkout ol ol.login li input {
					margin-right: 10px;
					}
				form.checkout ol ol.login li #password {
					float: left;
					margin-left: 10px;
					width: 150px;
					}
				form.checkout fieldset fieldset p#forgot {
					clear: left;
					font-size: 12px;
					margin: 20px 0 20px 35px;
					}
					form.checkout fieldset fieldset p#forgot a {
						color: #4986b3;
						}
			
		form.checkout input:not([type=radio]),
		form.checkout textarea {
			background: #ffffff;
			border: none;
			-moz-border-radius: 3px;
			-webkit-border-radius: 3px;
			-khtml-border-radius: 3px;
			border-radius: 3px;
			font-style: italic;
			font-size: 12px;
			outline: none;
			padding: 5px;
			width: 250px;
			}
				
			form.checkout input:not([type=submit]):focus,
			form.checkout textarea:focus {
				background: #eef7e2;
				}
				
			form.checkout input[type=radio] {
				float: left;
				margin-right: 5px;
				}
				
		form.checkout span.hint {
			display: block;
			margin: 3px 0 3px 140px;
			font-size: 13px;
			line-height: 1.5;
			color: #5c7e99;
			color: rgba(0,53,95,.6);
			}
					
		form.checkout button {
			background: #499e3d url(/assets/img/page/button-bg.png) 0 50% repeat-x;
			border: none;
			-moz-border-radius: 20px;
			-webkit-border-radius: 20px;
			-khtml-border-radius: 20px;
			border-radius: 20px;
			color: #ffffff;
			display: block;
			font-size: 16px;
			margin: auto;
			padding: 5px 12px;
			text-shadow: 0 1px 1px #000000;
			}
				
			form.checkout button:hover {
				background-color: #3f8935;
				cursor: pointer;
				}

div.formErrors {
	background: #f5e6e6;
	border: 2px solid #d8a1a1;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-khtml-border-radius: 5px;
	border-radius: 5px;
	padding: 10px;
	margin-bottom: 15px;
	}
	#content div.formErrors p {
		margin-bottom: 0;
		}
	#content div.formErrors ul {
		margin: 10px 0 0;
		list-style: square;
		}
		div.formErrors ul li {
			margin: 5px 0 0 2em;
			}

p.password-hint {
	font-weight: bold;
	color: #3f8935;
	}

/* PRODUCT LOZENGES */
form.addproduct {
	clear: both;
	background: #e6ebef;
	background: rgba(0,53,95,.1);
	border-color: #a1b4c3;
	border-color: rgba(0,53,95,.3);
	border-style: solid;
	border-width: 2px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	-khtml-border-radius: 20px;
	border-radius: 20px;
	padding: 10px;
	margin-bottom: 10px;
	}
	form.addproduct fieldset {
		position: relative;
		}
	form.addproduct img {
		float: right;
		margin: 0 0 0 2px;
		}
	form.addproduct dl {
		margin: 0;
		}
		form.addproduct dt {
			font-size: 16px;
			font-weight: bold;
			}
		form.addproduct dt a {
			text-decoration: none;
			}
		form.addproduct dt a:hover {
			text-decoration: underline;
			}
		form.addproduct dd.prod_detail {
			margin: 8px 0;
			}
		form.addproduct dd.prod_price {
			font-weight: bold;
			}
		form.addproduct dd.prod_add {
			position: relative;
			width: 100%;
			clear: both;
			text-align: center;
			}
			form.addproduct dd.prod_add label {
				display: none;
				}
			form.addproduct input.prod_qty {
				background: #ffffff;
				border: 2px solid #94c2dd;
				-moz-border-radius: 4px;
				-webkit-border-radius: 4px;
				-khtml-border-radius: 4px;
				border-radius: 4px;
				font-size: 16px;
				text-align: center;
				outline: none;
				padding: 5px;
				margin: 10px 0;
				}
			form.addproduct button {
				background: #4986b3 url(/assets/img/page/button-bg.png) 0 50% repeat-x;
				border: none;
				-moz-border-radius: 20px;
				-webkit-border-radius: 20px;
				-khtml-border-radius: 20px;
				border-radius: 20px;
				color: #ffffff;
				font-size: 16px;
				padding: 5px 12px;
				text-shadow: 0 1px 1px rgba(0,0,0,0.5);
				margin-left: 10px;
				}
			form.addproduct button:hover {
				background-color: #346f9b;
				cursor: pointer;
				}

div.voucher-text {
	clear: both;
	background: #e6ebef;
	border-color: #a1b4c3;
	border-style: solid;
	border-width: 2px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	-khtml-border-radius: 20px;
	border-radius: 20px;
	padding: 10px 10px 1px;
	margin-bottom: 10px;
	font-size: 0.85em;
	}

/* PRODUCT LOZENGES */
a.prodbutton {
	clear: both;
	display: block;
	background: #e6ebef;
	background: rgba(0,53,95,.1);
	border-color: #a1b4c3;
	border-color: rgba(0,53,95,.3);
	border-style: solid;
	border-width: 2px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	-khtml-border-radius: 20px;
	border-radius: 20px;
	padding: 10px;
	margin-bottom: 10px;
	text-decoration: none;
	}
	a.prodbutton img {
		float: right;
		}
		a.prodbutton:hover h3 {
			text-decoration: underline;
			}
		#content a.prodbutton h3 {
			font-size: 16px;
			margin-right: 102px;
			}
		#content a.prodbutton p {
			font-size: 16px;
			margin-right: 102px;
			line-height: 1.2;
			}

div.award {
	clear: both;
	background: #fff;
	border-color: #a1b4c3;
	border-style: solid;
	border-width: 2px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	-khtml-border-radius: 20px;
	border-radius: 20px;
	padding: 10px;
	}
	div.award img {
		float: left;
		margin-right: 10px;
		}
	div.award q {
		font-weight: bold;
		color: #a1b4c3;
		}
	
/* GENERAL RULES */
.clear {
	clear: both;
	}
	dl.table {
		margin: 0 0 1em 20px;
		}
dl.table dt {
	font-weight: bold;
	float: left;
	width: 9em;
	margin: 0 0 0.8em 0;
	}
dl.table dd {
	margin: 0 0 0.8em 9em;
	}
