/* ---------------------- layout ----------------------------- */

* { margin: 0; padding: 0; }
img { border: 0; }

body {
	text-align: center; /* for ie5.x/Win centering */ 
	background: #fff url('/_img/heading.png') top right no-repeat;
	color: #5C5C5C;
}

body.home, body.site { background: #fff url('/_img/heading.png') top right no-repeat; }
body.advice { background: #fff url('/_img/header2.jpg') top center no-repeat; }
body.about { background: #fff url('/_img/header3.jpg') top center no-repeat; }
body.shop { background: #fff url('/_img/header4.jpg') top center no-repeat; }
body.services { background: #fff url('/_img/header5.jpg') top center no-repeat; }

#wrapper {
	width: 756px;
	margin: 0 auto;
	text-align: left;
	position: relative;
	padding: 0;
}

#masthead {
	position: relative;
	height: 186px;
	margin-bottom: 23px;
	padding-top: 67px;
}

#content {
	float: left;
	width: 508px;
	padding: 0 12px 0 0;
	position: relative;
	overflow: hidden;
}

/* Left Side Bar */
#sidebar	{
	float: right;
	width: 206px;
	padding: 0 12px 12px 12px;
	position: relative;
}

/* ---------------------- masthead ----------------------------- */
#masthead h1 {
	position: relative;
    width: 238px;
	height: 92px;
	margin:0 0 0 0;
	overflow: hidden;
	text-indent: -5000px;
	background: transparent url('/_img/logo.png') no-repeat 0 0;
}

#masthead ul {
	position: absolute;
	bottom: 0px;
	left: 0px;
	margin: 0;
	padding: 0;
	list-style: none;
}

#masthead li {
	position: relative;
	float: left;
	width: 128px;
	height: 50px;
	margin:0;
	padding:0;
	overflow: hidden;
}

#masthead li a {
	display: block;
	position: absolute;
	top:0; left:0;
	width: 384px;
	height: 50px;
}

#masthead li a {
	left: -256px;
}

#masthead li a:hover {
	left: -128px;
}

#masthead li#n1 a { background-image: url('/_img/button_news.png'); }
#masthead li#n2 a { background-image: url('/_img/button_projects.png'); }
#masthead li#n3 a { background-image: url('/_img/button_wishlist.png'); }
#masthead li#n4 a { background-image: url('/_img/nav_services.png'); }

.about #masthead li#n1 a,
.shop #masthead li#n2 a,
.advice #masthead li#n3 a,
.services #masthead li#n4 a
{
	left: -128px;
}

#masthead li a em {
	overflow: hidden;
	text-indent: -5000px;
}

/* Side bar navigation */

.nav {
	background-color: #D8E4FF;
	margin: 20px 0 -5px 0;

}
.nav dl {
	width: 206px;
	padding: 0 0 10px 0;
	margin:0;
	background: url("../img/box_b.gif") no-repeat left bottom;
}

.nav dl dt	{
	background: url("../img/box_shop_t.gif") no-repeat left top;
	height: 40px;
	overflow: hidden;
	text-indent: -5000px;
	margin: 0;
}

.about .nav dt	{
	background: url("../img/box_about.gif") no-repeat left top;
}


.advice .nav dt	{
	background: url("../img/box_advice.gif") no-repeat left top;
}

.services .nav dt	{
	background: url("../img/box_services.gif") no-repeat left top;
}


.nav dl dd {
	padding: 0;
	margin: 0;
}

.nav dd a {
	display: block;
	width: 194px;
	font-size: .92em;
	font-weight: bold;
	vertical-align: bottom; /* This fixes Win IE5 gap! */
	padding: 0 0 0 12px;
	text-decoration: none;
	border-bottom: none;
	background: url("../img/box_body.gif") no-repeat left center;
}

.nav dd a, .nav dd a:link {
	color: rgb(118,134,200);
}

.nav dd a:visited {
	color: rgb(118,134,200);
}

.nav dd a:focus, .nav dd a:hover {
	background-position:  -206px 50%;
	color: rgb(31,31,79);
}

.alt dl {
	background: url("../img/box_alt_b.gif") no-repeat left bottom;
}

.basket dl dt	{ background: url("../img/box_basket_t.gif") no-repeat left top; }
.tools dl dt	{ background: url("../img/box_tools_t.gif") no-repeat left top; }
.info dl dt	{ background: url("../img/box_info_t.gif") no-repeat left top; }

.alt dd a {
	background: url("../img/box_alt_body.gif") no-repeat left center;
	color: #888;
}

.alt dd a:link {
	color: #888;
}

.alt dd a:visited {
	color: #888;
}

.alt dd a:focus, .alt dd a:hover {
	color: #333;
}


/* ---------------------- content ----------------------------- */

/* contextNav */

#content .contextNav {
	margin-top: 1em;
}

#content .contextNav ul {
	list-style: none;
	padding-top:.5em;
	margin-top: 0;
}

#content .contextNav ul li {
	display: inline;
	padding:0;
	margin:0 15px 0 0;
	font-size: 1.25em;
}

.contextNav ul li.active a {
	color: rgb(31,31,79);
}

#content .contextNav {
	background: url("../img/rule.gif") repeat-x left top;
	width:506px;
	padding-top: .25em;
	margin-bottom: 2em;
}

#content .contextNav ul {
	background: url("../img/rule.gif") repeat-x left bottom;
	padding-bottom: .5em;
}

#username {
	font-size:.92em;
	font-weight:bold;
}

#content p {
	margin: 0 0 1.5em 0;
}

#content p.intro {
	font-size: 1.25em;
	color: #999;
	line-height: 1.6em;
}

#content p.strap {
	color: #3C5082;
	font-size: 1.2em;
	line-height: 1.5em;
}

#content div.pagination {
	color: rgb(31,31,79);
	font-size: .92em;
	clear: both;
	margin: .72em 0 2em 0;
	padding-bottom: .8em;
	background: url("../img/rule.gif") repeat-x left bottom;
}

#content div.pagination div {
	padding-top: .9em;
	background: url("../img/rule.gif") repeat-x left top;
}

#content div.pagination p {
	float: left;
	margin:0;
	padding:0;
}

#content div.pagination p.links {
	color: #666;
	float: right;
}


#content a.more {
	font-size: .92em;
	padding-left: 5px;
	background: url("../img/btn_more.png") no-repeat 0 2px;
}

/* headings */

h2 {
	color: #4d4d4d;
	height: 22px;
	text-transform: uppercase;
	margin:.75em 0 1.5em 0;
	font: Verdana, Tahoma, Arial, sans-serif;
}

h3 {
	color: #bb1100;
	margin: 1.5em 0 .5em 0;
	font-weight: normal;
	font-size: 1.25em;
}

h3.strap {
	color: #3C5082;
	font-size: 1.2em;
	line-height: 1.5em;
	margin-top:-1.4em;
	margin-bottom: 1em;
}

h3 a {
	background: url("../img/btn_more.png") no-repeat 100% 60%;
	padding-right: 15px;
	}

h3 a:link {
	color: #bb1100;
}
h3 a:visited 			{ color: rgb(118,134,200); }	
h3 a:focus, h3 a:hover 	{ color: rgb(31,31,79); }
h3 a:active 			{ color: rgb(31,31,79); }

h4 {
	font-size: 1em;
	color: #333;
	font-weight: bold;
	margin: 1em 0 .5em 0;
}

h3 img, h4 img, #content ol li img, #content ul li img, .inline, #content img.inline {
	display: inline;
	border:none;
	padding:0;
}

/* lists */

#content ul {
	margin: 1.5em 0 1.5em 0;
	padding: 0;
}
#content ul li {
	margin: 0 0 .5em 30px;
	padding: 0;
}

#content ul li ul li {
	margin: 0 0 .5em 60px;
	padding: 0;
}
ol {
	font-size: 1.0em;
	line-height: 1.4em;
	margin: 0 0 1.5em 0;
	padding: 0;
}
ol li {
	font-size: 1.0em;
	margin: 0 0 .5em 30px;
	padding: 0;
}

/* definition list - inline */	
dl.inline {
	margin: 0 0 1em 0;
	float: none;
}
dl.inline dt {
	display:block;
	margin:0;
	padding:0;
	float:left;
}

dl.inline dd {
	margin:0;
	padding:0 0 0.5em 15px;
}


/* quotes */

blockquote {
	padding-left: 30px;
	padding-right: 30px;
	background:url("../img/bq.gif") top left no-repeat;
	margin:0;
}		
#content blockquote p {
	font: normal 1em/150% Arial, Helvetica, sans-serif;
}

#content p.subject {
	margin-top:-1em;
	font-style: italic;
}

#content p.source {
	margin-top:-1em;
	color: rgb(41,103,47);
}

cite {
	font-style: normal;
	font-size: 84%;
	color: rgb(41,103,47);
}

/* figurative images */

#content img.heading {
	float: right;
	margin-left: 15px;
	width: 200px;
	height: 138px;
	padding: 5px;
	border: 1px solid #eee;
	background-color: #fff;
}

#content img.plain, #content li img {
	padding: 0px;
	border: none;
}

div.inset-l {
	float: left;
	margin:0 15px 1em 0;
}

div.inset-r {
	float: right;
	margin:0 0 1em 15px;
}

#content div.figure img {
	margin:0;
	padding: 0;
}

#content .figure p { /* image caption */
	display: block;
	font-size: .92em;
	line-height: 1.25em;
	font-style: italic;
	padding: 5px 0 5px 0;
	margin:0;
	border-bottom: 1px dotted #ccc;
}

#content h3 span.postmetadata {
	font-size: .92em;
	color: #666;
}

/* ---------------------- footer ----------------------------- */
#foot	{
	font-size: .92em;
	padding:50px 0 20px 0;
	clear: both;
}

#foot ul	{
	margin: 0;
	padding: 0;
}

#foot ul li	{
	list-style: none;
	display: inline;
	color: #999;
}

#foot ul li.copyright {
	display: block;
	float: right;
	width: 231px;
	text-align: right;
}



/* ---------------------- misc ----------------------------- */

.clearfix:after, .product:after, .summary:after, .dept:after {
content: "."; 
display: block; 
height: 0; 
clear: both; 
visibility: hidden;
}

.clearfix, .product, .summary, .dept {display: inline;}

/* Hides from IE-mac \*/
* html .clearfix, * html .product, * html .summary, * html .dept {height: 1%;}
.clearfix, .product, .summary, .dept {display: block;}
/* End hide from IE-mac */


.floatclear {
	clear: both;
	line-height: 0px;
	font-size: 0;
	width:100%;
	height:2px;
	margin:0;
	padding:0;
}

.float-r { float: right; }
.float-l { float: left; }

.hide {
	position: absolute;
	left: -999px;
	width: 990px;
}

.highlight {
	color: red;
}

/* ---------------------- tables and forms ----------------------------- */
fieldset {
	border:none;
	padding:0;
	margin:0;
}

legend {
	color: #5170BE;
	padding: 0 0 .5em 0;
	font-weight: normal;
	font-size: 1.25em;
}

#content table {
	width:100%;
	margin:0 0 1.5em 0;
	border-collapse:collapse;
	line-height:150%;
}
th {
	border:1px solid #fff;
	background:#ddd;
	padding:5px;
}
td {
	background:#F0F0F0;
	border:1px solid #fff;
	padding:5px;
	vertical-align:top;
}
.formField, .formSelect {
	background:#fff;
	border:1px solid #e1e1e1;
	width:200px;
}
.formFieldShort, .formFieldMedium {
	background:#fff;
	border:1px solid #e1e1e1;
	width:20px;
	margin-right:5px;
	padding: 2px;
}
.formFieldMedium{width:96px;}
table .price{
	color:#13689d;
	font-size:110%;
	font-weight:bold;
}
.formFieldProduct{width:150px;}

.formRadio{vertical-align:middle;}
.formButton{
	background:#7686C8;
	font-weight: bold;
	color:#fff;
	border:none;
	padding:3px 2px 3px 2px;
}
label span{
	color:#13689d;
	font-size:110%;
	font-weight:bold;
}
input.formField:focus, formFieldShort:focus, formFieldMedium:focus, textarea:focus, #quantity:focus	{
	background: #fff;
	border: 1px solid #bbb;
}
/* cart */
#total{
	margin:1em 0;
	padding:0;
	width:295px;
	font-size:110%;
}
#total dt{
	width:200px;
	float:left;
	font-weight:bold;
}
#total dd{
	margin-left:201px;
	text-align:right;
}
.actions{
	clear:both;
	margin:0;
	padding:.5em 0;
}
/**/
td.first{width:40%;}

/* ---------------------- float fix ----------------------------- */
.inner:after, .products:after, .products li:after, #total:after, .modules:after{
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
* html .inner, * html .products, * html .products li, * html #pagination, 
* html #total, * html .modules{height: 1%;}
/* end float fix */

/* ---------------------- lightbox ----------------------------- */
#lightbox{
	background-color:#eee;
	padding: 10px;
	border-bottom: 2px solid #666;
	border-right: 2px solid #666;
	}
#lightboxDetails{
	font-size: 0.8em;
	padding-top: 0.4em;
	}	
#lightboxCaption{ float: left; }
#keyboardMsg{ float: right; }
#closeButton{ top: 5px; right: 5px; }

#lightbox img{ border: none; clear: both;} 
#overlay img{ border: none; }

#overlay{ background-image: url('/_assets/img/overlay.png'); }

/* ---------------------- rounded images ----------------------------- */
.roundimgwrapper {
	position: relative;
}
.roundimgwrapper span {
	position: absolute;
	z-index: 2;
	height: 12px;
	width: 12px;
}
.curve1 {
	background: transparent url('/_assets/img/topright.png') top right no-repeat;
	top: 0; right: 0;
}
.curve2 {
	background: transparent  url('/_assets/img/topleft.png') top left no-repeat;
	top: 0; left: 0;
}
.curve3 {
	background: transparent url('/_assets/img/bottomright.png') bottom right no-repeat;
	bottom: 0; right: 0;
}
.curve4 {
	background: transparent url('/_assets/img/bottomleft.png') bottom left no-repeat;
	bottom: 0; left: 0;
}

html { font-size: 100%; /* IE trick to allow proper resizing of text */ }

body {
	font: 0.75em/1.5em "Lucida Grande", Verdana, Tahoma, Helvetica, Arial, sans-serif; /* 1em is now 12px at 96ppi. */
	}

/* default heading sizes */	
h1		{ font-size: 2em;    }
h2		{ font-size: 1.25em; }
h3 		{ font-size: 1.25em;  }
h4		{ font-size: 1.1em;  }
h5,h6	{ font-size: .84em;  }

table, form, select, input, textarea { 
	font-family: "Lucida Grande", Verdana, Tahoma, Helvetica, Arial, sans-serif;
	font-size: 100%; /* ie hack so these elements correctly inherit the default text size */ 
	}

/* default link formatting */			
a, a:link 			{ color: rgb(118,134,200); text-decoration: none; }
a:visited 			{ color: rgb(118,134,200); }	
a:focus, a:hover 	{ color: rgb(31,31,79); }
a:active 			{ color: rgb(31,31,79); }
