/* set defaults - font and take padding off tables so it doesn't have to be defined for each <table> tag.
   A better option is to explicitly use padding if you need it.

   Font sizes all relative to the "body" tag below and by using "em" it means if the user increases the font size on the browser (DDA compliance)
   then the sizes increase on the site in proportion too.

   #1A3C6B - page background
   #335F9A - header
   #5B7DA8 - left hand column
   #335F9A - footer
*/
body { font-family: Arial; font-size: .85em; background-color: #F7F7F7;}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset,textarea, th, td {
	margin:0;
	padding:0;
}
 a img { border:0px; }

table {border-collapse: collapse;}

/* this sets the overall width of the template so that we don't have to define it all the way through - plus it centres it */
#page {margin: 0 auto; width:974px; }
 
 .ShadowLeft { background-image:url(images/template/pgshadow_l.gif); }
 .ShadowRight { background-image:url(images/template/pgshadow_r.gif); }
 .ShadowBottom { background-image:url(images/template/pgshadow_b.gif); }
 
#pagecontents { border-left:solid 1px #BED1DB; border-right:solid 1px #BED1DB; border-bottom:solid 1px #BED1DB; width:100%; padding:4px 3px 3px 3px; background-color:#ffffff; }

/* Region: TOP MENU  */
#regTopMenuBar { width: 100%; background-color:white; color: #cccccc;}
#regTopMenuBar .HeaderIMG { border:solid 1px #D2D2D2; }
#regTopMenuBar .FadeImage { border-color:#B1B1B1; border-style:solid; border-width:1px 1px 3px 1px;}
#regTopMenuBar #MenuLinks { background-image:url(images/template/topnav_bg.gif); margin-top:1px; margin-bottom:1px;}
#regTopMenuBar #MenuLinks .MenuItem { padding: 0px; font-size: .92em;}
#regTopMenuBar #MenuLinks .MenuItem a {color: white; font-weight: bold; text-decoration: none; display:block; padding:5px 10px 6px 10px;}
#regTopMenuBar #MenuLinks .MenuItem a:hover { text-decoration: none; background-image:url(images/template/topnav_bg_grey.gif);}
#regTopMenuBar #MenuLinks .SearchBox { padding:0px 5px 2px 5px;}

/* Region: FOOTER */
#regFooter {width: 100%; font-size: .8em; padding-bottom: 0px;  background-color: #ffffff;}
#regFooter td {color: #7B7B7B; padding: 4px 8px 6px 4px; border-top:solid 1px #BED1DB;}
#regFooter A {color: #2C9CE3; font-weight: normal; text-decoration: none;}
#regFooter A:hover {text-decoration: underline;}

/* Region: Middle bit encompassing left menu and body content (and right menu if appropriate) */
#regMainContent {width: 100%;}

/* Region: Left hand menu/column */
#regLeftMenu {font-size: 1em; vertical-align:top; color: #44749D; width: 175px; background-color: white; padding: 10px 2px 5px 7px; }
#regLeftMenu a {color: #E68729; text-decoration: none;}
#regLeftMenu h1 {margin-top: 0px; margin-bottom: 5px; font-size: 1.3em; font-weight: Bold; color: #0687C9}
#regLeftMenu h2 {font-size: .85em; font-weight: bold; color: white; padding: 2px 5px 2px 2px; background-color:#44749D; margin-top: 3px; }


#regLeftMenu .searchBox {background-color: #CBDAE6; padding: 2px 4px 3px 4px; margin: 0px 0px 14px 0px;}
#regLeftMenu .productCategoriesBox {padding: 0px 0px 10px 0px;}
#regLeftMenu .rssIcons {font-size: .8em; margin: 10px 5px 10px 0px; }
#regLeftMenu .bookmarkSite{font-size: .8em; margin: 10px 0px 10px 0px; text-align:center; }

#regLeftMenu .menuItemsBox { padding: 0px 0px 10px 0px; width:170px;}
#regLeftMenu .MenuItemTop { background-color:#0687C9; border-top:solid 1px #D7D7D7;}
#regLeftMenu .MenuItemCornerLeft { vertical-align:top; background-color:#0687C9;}
#regLeftMenu .MenuItemLeft { background-color:#0687C9; border-left:solid 1px #D7D7D7; border-Bottom:solid 1px #D7D7D7;}
#regLeftMenu .MenuItemRight { background-color:#0687C9; border-right:solid 1px #D7D7D7; border-Bottom:solid 1px #D7D7D7;}
#regLeftMenu .MenuItemCornerRight { vertical-align:top; background-color:#0687C9;}
#regLeftMenu .MenuItem { font-size: .96em; color:#ffffff; font-weight: bold; background-color: #0687C9; padding: 0px 0px 5px 5px; width:100%; border-Bottom:solid 1px #D7D7D7; vertical-align:top; }
#regLeftMenu .MenuItem A { color:#ffffff; font-weight: bold; text-decoration: none;}
#regLeftMenu .MenuItem A:hover {text-decoration: none;}

#regLeftMenu .subMenuItem { font-size: .9em; border-left: 1px solid #D7D7D7; border-right: 1px solid #D7D7D7; vertical-align:top; width:100%;}
#regLeftMenu .subMenuItem A { color:#666666; font-weight: normal; text-decoration: none; display:block; padding: 3px 2px 3px 20px; }
#regLeftMenu .subMenuItem A:hover { background-color:#e1e1e1; }

#regLeftMenu .Login {border-left:solid 1px #D7D7D7; border-right:solid 1px #D7D7D7; padding:0px; width:170px; color:#666666;}

#rightcolumn { padding:10px 10px 10px 0px;}
#rightcolumn .RightBoxContents { border-left:solid 1px #D7D7D7; border-right:solid 1px #D7D7D7; padding:0px 8px 0px 8px; font-size:.85em; color:#666666;}

/* set the 750px width below to be the width (920 - left hand menu width).. */
#regBodyContent {vertical-align:top; padding-left:20px; padding-right:15px; width:100%; padding-bottom: 25px; background-color: White; font-size: .88em; color:#666666;}
#regBodyContent h1 {margin-top: 20px; margin-bottom: 5px; font-size: 1.6em; font-weight: Bold; color: #0687C9}
#regBodyContent h2 {margin-top: 15px; margin-bottom: 3px; font-size: 1.7em; font-weight: bold; color: #3A98C0;}
#regBodyContent h2 a {text-decoration: underline; font-weight: bold; color: #E68729; font-size:.6em; margin:0px; padding:0px; }
#regBodyContent h3 {margin-top: 8px; margin-bottom: 3px; font-size: 1.6em; font-weight: bold; color: #3A98C0;}
#regBodyContent h4 {margin-top:0px; margin-bottom: 5px; font-size: 1.6em; font-weight: Bold; color: #0687C9}
#regBodyContent h5 {margin-top:10px; margin-bottom: 5px; font-size: 1.1em; font-weight: Bold; color: #0687C9}

#regBodyContent .HomePageHeader { background-image:url(images/template/panel_blue_bg.gif); width:100%; vertical-align:top; }
#regBodyContent .HomeContentsBox { background-color:#F7F7F7; padding:10px; width:290px; border-left:solid 1px #D7D7D7; border-right:solid 1px #D7D7D7; }

#regBodyContent select {font-size: 1.1em; padding-left: 2px;}
#regBodyContent input {font-size: 1.1em; padding-left: 2px;}

#regBodyContent a {text-decoration: underline; font-weight: bold; color: #E68729; }
#regBodyContent .MessageToUser {font-weight: bold; color: red; padding-top: 5px; padding-bottom: 10px}
#regBodyContent .breadcrumbtrail {padding-top:5px; padding-bottom:10px}
#regBodyContent .breadcrumbtrail A {color: #F8A261}
#regBodyContent .highlight {background-color:Yellow}

/* code below allows customised bullet points with graphics to be added - also includes fix for IE */
#regBodyContent ul { margin-left: 10px; padding-left: 0; list-style: none; }
#regBodyContent ul li {	 padding-left: 14px; background-image: url(images/bullets/dot.gif); background-repeat: no-repeat; background-position: 0 7px;}
html[xmlns] #regMainContent ul { padding-left: 2em;} 
html[xmlns] #regMainContent ul li { background: none; /* undo the background-image */ list-style-image: url(images/bullets/dot.gif); padding: 0px;}


/* Button styles */
#regBodyContent .button {font-weight: bold; color: #0687C9;}
#regBodyContent .CancelButton {font-weight: normal; color: Red;}

/* datagrid styles */
#regBodyContent .datagridHeader { height:27px; font-weight: bold; background-image:url(images/template/topnav_bg.gif); color:#fff; font-size:1.1em; Margin-bottom: 10px;}
#regBodyContent .datagridItem {background-color: #F7F7F7; border-bottom: 1px solid #666666}
#regBodyContent .datagridAlternatingItem {background-color: #ffffff; border-bottom: 1px solid #666666}


/* Payment/checkout/myaccount order history page styles */  
#regBodyContent .PaymentForm {margin-left: 30px; margin-top:8px; width: 90%;}
#regBodyContent .PaymentForm .heading {width: 140px}
#regBodyContent .PaymentForm input, textarea {font-size: 1em;}
#regBodyContent .PaymentFormHeading { font-weight: bold; color: Navy; margin-top: 10px}
#regBodyContent .PaymentSecureSeal  { text-align:center; margin-top: 10px; }

/* these styles are used on the view shopping basket page... */
#regBodyContent .BasketSummary {margin-left: 30px; width: 550px;}
#regBodyContent .BasketSummary .BasketSummaryTable {width: 100%; border-collapse: collapse; }
#regBodyContent .BasketSummary .BasketSummaryTable .BasketSummaryHeader { background-color: black; color: White; font-weight: bold;}
#regBodyContent .BasketSummary .BasketSummaryTable .BasketSummaryItem { border-bottom: 1px solid gray; padding-top: 1px; padding-bottom: 2px;}
#regBodyContent .BasketSummary .BasketSummaryTable .BasketItemQuantity {width: 20px; text-align:center; font-size: 1em; margin-left: 25px;}
#regBodyContent .BasketSummary .BasketSubtotal { width: 100%; text-align: right; border-top: 2px solid gray; margin-bottom: 3px; padding-top: 4px; padding-bottom: 1px;}
#regBodyContent .BasketSummary .BasketDelivery { width: 100%; text-align: right; border-top: 1px solid gray; margin-bottom: 3px; padding-top: 3px; padding-bottom: 1px;}
#regBodyContent .BasketSummary .BasketDelivery select {font-size: 1.05em; margin-left: 5px;}
#regBodyContent .BasketSummary .BasketDiscount { width: 100%; text-align: right; border-top: 1px solid gray; margin-bottom: 3px; padding-top: 3px; padding-bottom: 1px;}
#regBodyContent .BasketSummary .BasketVATAmount { width: 100%; text-align: right; border-top: 1px solid gray; margin-bottom: 6px; padding-top: 3px; padding-bottom: 1px;}
#regBodyContent .BasketSummary .BasketGrandTotal { width: 100%; text-align: right; border-bottom: 2px solid black; border-top: 1px solid black; font-weight: bold; font-size: 1.1em; margin-bottom: 15px; padding: 3px 0px 3px 0px;}
#regBodyContent .BasketSummary .BasketButtons {width: 100%}
#regBodyContent .BasketSummary .BasketButtons .UpdateQuantity {color: Navy; font-weight: bold; font-size: 1em; width:140px}
#regBodyContent .BasketSummary .BasketButtons .ContinueShopping { color: Navy; font-weight: bold; font-size: 1em; width:140px; margin-top: 20px}
#regBodyContent .BasketSummary .BasketButtons .Checkout {color: DarkGreen; font-weight: bold; font-size: 1em; width:83px}
#regBodyContent .BasketSummary .BasketButtons .CheckoutButton {color: DarkGreen; font-weight: bold; font-size: 1em;}
#regBodyContent .BasketSummary .ApplyDiscountCode {color: DarkGreen; font-weight: bold; font-size: 1em; width:65px}
#regBodyContent .BasketSummary .CartRemove { background-color: #FFFFFF;font-weight: bold; color: #000000; border: 0px}
#regBodyContent .BasketSummary .CartRemove:Hover { text-decoration: none;}

/* these styles are used on the final checkout page... */
#regBodyContent .PaymentSummary {margin-left: 30px; width: 550px;}
#regBodyContent .PaymentSummary .PaymentSummaryTable {width: 100%; }
#regBodyContent .PaymentSummary .PaymentSummaryTable .PaymentSummaryHeader { background-color: black; color: White; font-weight: bold;}
#regBodyContent .PaymentSummary .PaymentSummaryTable .PaymentSummaryItem { border-bottom: 1px solid gray; padding-top: 1px; padding-bottom: 2px;}
#regBodyContent .PaymentSummary .PaymentSubtotal { width: 100%; text-align: right; border-top: 2px solid gray; margin-bottom: 3px; padding-top: 4px; padding-bottom: 1px;}
#regBodyContent .PaymentSummary .PaymentDelivery { width: 100%; text-align: right; border-top: 1px solid gray; margin-bottom: 3px; padding-top: 3px; padding-bottom: 1px;}
#regBodyContent .PaymentSummary .PaymentDiscount { width: 100%; text-align: right; border-top: 1px solid gray; margin-bottom: 3px; padding-top: 3px; padding-bottom: 1px;}
#regBodyContent .PaymentSummary .PaymentVATAmount { width: 100%; text-align: right; border-top: 1px solid gray; margin-bottom: 6px; padding-top: 3px; padding-bottom: 1px;}
#regBodyContent .PaymentSummary .PaymentGrandTotal { width: 100%; text-align: right; border-bottom: 2px solid black; border-top: 1px solid black; font-weight: bold; font-size: 1.2em; margin-bottom: 15px; padding-top: 3px; padding-bottom: 3px;}

/* these styles are used on product list/detail pages ... */
#regBodyContent .ProductPhotos {margin-right: 10px; width:300px; }
#regBodyContent .ProductPhotos .MainPhoto {text-align:center; border: 1px solid black; height: 300px;}
#regBodyContent .ProductPhotos .ThumbnailCaption {font-weight:normal; text-align:center; color: #777777; padding: 5px 0px 5px 0px;}
#regBodyContent .ProductPhotos .ThumbnailPhoto { border: 1px solid #aaaaaa; height:90px; margin-left: 3px; margin-right: 3px; margin-bottom: 5px; text-align: center;}


#regBodyContent .ProductSKUsTable .ProductSKUsHeader { background-color: black; color: White; font-weight: bold;}
#regBodyContent .ProductSKUsTable .ProductSKUsItem { border-bottom: 1px solid gray; padding-top: 1px; padding-bottom: 2px;}
#regBodyContent .ProductSKUsTable .ProductSKUsItem .price{font-weight: bold; color: Red;}
#regBodyContent .ProductSKUsTable .ProductSKUsItem .buyNow {color: Red; font-weight: bold; font-size: .8em;}
#regBodyContent .ProductSKUsTable .ProductSKUsItem .wasprice{font-weight: bold; color: #000000; text-decoration:line-through;}
#regBodyContent .ProductSKUsTable .ProductSKUsItem .buyNow { margin: 3px 3px 3px 3px; height: 20px; font-weight: bold; border: 1px solid #01A2E6; color: #FFFFFF; font-size: .8em; background-color: #01A2E6;}

#regBodyContent .SubCategoryThumbnailBrowse {}
#regBodyContent .SubCategoryThumbnailBrowse .Thumbnail {height: 150px; width: 120px}
#regBodyContent .SubCategoryThumbnailBrowse .Thumbnail .ThumbnailPhoto {border: 1px solid #aaaaaa; height:125px; margin-left: 3px; margin-right: 3px; margin-bottom: 2px; text-align: center;}
#regBodyContent .SubCategoryThumbnailBrowse .Thumbnail .ThumbnailText {text-align: center; padding-top: 3px; height: 25px; }

#regBodyContent .ProductThumbnailBrowse {}
#regBodyContent .ProductThumbnailBrowse .Thumbnail {height: 210px; width: 150px; margin-bottom: 7px;}
#regBodyContent .ProductThumbnailBrowse .Thumbnail .ThumbnailPhoto {border: 1px solid #aaaaaa; height:150px; margin-left: 3px; margin-right: 3px; margin-bottom: 2px; text-align: center;}
#regBodyContent .ProductThumbnailBrowse .Thumbnail .ThumbnailText {height: 28px; text-align: center; }
#regBodyContent .ProductThumbnailBrowse .Thumbnail .ProductPrice  {text-align: center; padding-top: 2px; padding-bottom: 12px; font-weight: bold; color: #000000; }
#regBodyContent .ProductThumbnailBrowse .Thumbnail .price{font-weight: bold; color: Red; padding-right: 5px;}
#regBodyContent .ProductThumbnailBrowse .Thumbnail .wasprice{font-weight: bold; color: black; text-decoration:line-through;}

#regBodyContent .paging {padding-top: 10px; padding-bottom: 20px;}
#regBodyContent .paging a {text-decoration: none;}
#regBodyContent .paging table {width:100%}
#regBodyContent .paging .currentPageLabel {width: 180px; color: black;}
#regBodyContent .paging .previousPage {width: 100px; text-align: left; }
#regBodyContent .paging .previousPage a { color: Gray;}
#regBodyContent .paging .pageNumbers {text-align: center;}
#regBodyContent .paging .pageNumbers a.unselectedPage {font-weight: bold; color: #999999}
#regBodyContent .paging .pageNumbers a.selectedPage {font-weight: bold; color: red}
#regBodyContent .paging .nextPage {width: 80px; text-align: right; }
#regBodyContent .paging .nextPage a { color: Gray; }

/* Blog related styles... */  				  
#regBodyContent .BlogEntries p {padding-top: 0px; margin-top: 0px}
#regBodyContent .BlogEntries .blogPostTitle {padding-top: 5px;}
#regBodyContent .BlogEntries .blogPostTitle a {font-size: 1.2em; font-weight: bold;}
#regBodyContent .BlogEntries .blogDateFiled {color: Gray; padding-top: 2px; padding-bottom: 8px;}
#regBodyContent .BlogEntries .blogContent { padding-bottom: 10px;}   
#regBodyContent .BlogEntries .blogFooter {padding-bottom: 25px; border-bottom: 1px solid #cccccc; margin-bottom: 10px; }
#regBodyContent .BlogEntries .blogFooter .CommentSummary {float: left; width: 250px; display: inline; color: gray;  padding-top: 5px; }
#regBodyContent .BlogEntries .blogFooter .CommentSummary a {text-decoration: none; font-weight: normal; color: Gray;}
#regBodyContent .BlogEntries .blogFooter .SocialNetworking {float: right; display: inline; }
#regBodyContent .BlogEntries .blogNoEntries {margin-left: 15px; color: Navy; padding-top: 10px; }

#regBodyContent .BlogDetail .blogPostTitle {font-size: 1.2em; font-weight: bold;}
#regBodyContent .BlogDetail .blogDateFiled {color: Gray; padding-top: 2px; padding-bottom: 8px;}
#regBodyContent .BlogDetail .blogContent { padding-bottom: 5px;}   
#regBodyContent .BlogDetail .blogCategories { padding-top: 7px; color: #444444; margin-left: 20px; padding-bottom: 3px;}   
#regBodyContent .BlogDetail .blogFooter {padding-bottom: 5px; border-bottom: 1px solid #cccccc; }
#regBodyContent .BlogDetail .blogNoEntry {margin-left: 15px; color: Navy; padding-top: 10px; }
#regBodyContent .BlogDetail .SocialNetworking {padding-top: 0px; text-align: right}
#regBodyContent .BlogDetail .OtherRecentPosts {padding-top: 0px; padding-bottom: 5px;}
#regBodyContent .BlogDetail .OtherRecentPosts .ListPosts {margin-left: 20px; padding-bottom: 3px;}

#regMainContent .BlogDetail .Comments {padding-top: 0px;}
#regMainContent .BlogDetail .Comments .NoCommentsYet {color: #444444; padding-bottom: 5px;}
#regMainContent .BlogDetail .Comments .ListComments {margin-left: 0px; padding-bottom: 5px;}
#regMainContent .BlogDetail .Comments .ListComments .SpecificPost {padding: 7px 5px 7px 5px; margin-bottom: 12px; border: 1px solid gray; background-color: #FFFED0;}
#regMainContent .BlogDetail .Comments .ListComments .SpecificPost .CommentBy {font-size: .9em; color: black; padding-bottom: 5px; }
#regMainContent .BlogDetail .Comments .ListComments .SpecificPost .Comment {font-size: .9em; }
#regMainContent .BlogDetail .Comments .ListComments .SpecificPost .ModeratedReply {background-color: #F5FABD; }
#regMainContent .BlogDetail .Comments .ListComments .SpecificPost .ModeratedReply .ReplyComment { }
#regMainContent .BlogDetail .Comments .ListComments .SpecificPost .ModeratedReply .ReplyDatestamp { }

#regBodyContent .BlogDetail .Comments .leaveComment input {margin-left: 0px;}
#regBodyContent .BlogDetail .Comments .leaveComment .heading {color: #333333; font-weight: bold; padding-top: 4px; }


/* not within a region because you may want to put in in various places on the site */
.blogCategoriesBox {padding: 0px 0px 10px 0px;}
.blogCategoriesBox .blogCategoryItem {font-size: .85em; margin: 0px 0px 1px 0px; padding: 4px 0px 4px 3px; border-bottom: 1px solid #8485DF; }
.blogCategoriesBox .blogCategoryItem A { color:#444444; font-weight: normal; text-decoration: none;}
.blogCategoriesBox .blogCategoryItem A:hover {text-decoration: underline;}

.blogArchiveBox {padding: 0px 0px 10px 0px;}
.blogArchiveBox .blogArchiveItem {font-size: .85em; margin: 0px 0px 1px 0px; padding: 4px 0px 4px 3px; border-bottom: 1px solid #8485DF; }
.blogArchiveBox .blogArchiveItem A { color:#444444; font-weight: normal; text-decoration: none;}
.blogArchiveBox .blogArchiveItem A:hover {text-decoration: underline;}

/*Password Tool CSS */
#password_description {font-size: 10px; font-style: italic;  }
#password_strength { height:10px; display:block; }
#password_strength_border { width: 160px; height: 10px; border: 1px solid black; }
.strength0 { width:160px; background:#cccccc; }
.strength1 { width:40px; background:#ff0000; }
.strength2 { width:80px; background:#56e500; }
.strength3 { background:#399800; width:120px; }
.strength4 { background:#4dcd00; width:160px; }



/* Products image zoom... */
#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(js/lightbox/overlay.png); }

* html #overlay{
	background-color: #333;
	back\ground-color: transparent;
	filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="js/lightbox/overlay.png", sizingMethod="scale");
	}