/* 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, Helvetica, Verdana, sans-serif; font-size: .80em; background-color: white; color:#333333;}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, blockquote, th, td {
	margin:0;
	padding:0;
}

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:800px; }

/* Region: TOP MENU  */
#regTopMenuBar { width: 100%;}
#regTopMenuBar #MenuLinks {font-family: Arial, Helvetica, Verdana, sans-serif;  float: left;}
#regTopMenuBar #MenuLinks .MenuItem { padding:0px; display: inline; font-size: .75em}
#regTopMenuBar #MenuLinks .MenuItem a {color: #333333; text-decoration: none; display:inline-block ; height:100%; padding-top:12px; padding-bottom:8px; padding-left:15px; padding-right:15px;}
#regTopMenuBar #MenuLinks .MenuItem a:hover { background-color:#E1E1E1;}
#regTopMenuBar .ButtonSearch { background-color: #C50820; color: #FFFFFF; padding: 1px 9px 1px 9px; border: 1px solid #C50820}

/* Region: FOOTER */
#regFooter {width: 100%; font-size: .8em; padding-bottom: 0px; }
#regFooter td {color: #333333; padding: 25px 8px 4px 4px;}
#regFooter A {color: #333333; 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: 130px; padding:0px;}
#regLeftMenu a {color: black; text-decoration: none;}
#regLeftMenu h2 {font-size: .85em; font-weight: bold; color: white; padding: 2px 5px 2px 0px; background-color:#44749D; margin-top: 3px; }

#regLeftMenu .menuItemsBox { padding: 0px; border-left:solid 1px #C50820;}
#regLeftMenu .MenuItem { font-size: .95em; margin:0px; padding:0px; border-left:solid 11px #C50820; }
#regLeftMenu .MenuItem A { color:#333333; font-weight: normal; text-decoration: none; display:block; padding:8px 0px 8px 10px;}
#regLeftMenu .MenuItem A:hover { text-decoration: none; display:block; padding:8px 0px 8px 6px; border-left:solid 4px #C50820;}

#regLeftMenu #scrollerPanelNews { height: 170px; padding: 5px; font-size: 1em; font-family: Arial; text-align:left;}

#regLeftMenu .subMenuItem { font-size: .8em; margin: 0px 0px 1px 0px; padding: 2px 4px 2px 8px; border-bottom: 1px solid #CBDAE6}
#regLeftMenu .subMenuItem A { color:black; font-weight: normal; text-decoration: none; }
#regLeftMenu .subMenuItem A:hover {text-decoration: underline; }

/* Region: right hand menu/column */
#rightcolumn  {padding-top: 10px; width:150px; border-bottom:solid 1px #C50820;}

/* set the 750px width below to be the width (920 - left hand menu width).. */
#regBodyContent {vertical-align:top; padding-left:10px; padding-right:10px; padding-bottom: 25px; padding-top:10px; background-color: White; font-size: .85em; border-bottom:solid 1px #C50820;}
#regBodyContent h1 { margin-bottom: 5px; font-size: 1.8em; font-weight: normal; color: #C50820}
#regBodyContent h2 { margin-bottom: 3px; font-size: 1.1em; font-weight: bold; color: #C50820;}

#regBodyContent select {font-size: 1.1em; padding-left: 2px;}
#regBodyContent input {font-size: 1.1em; padding-left: 2px;}

#regBodyContent a { color: #C50820; }
#regBodyContent a:hover { text-decoration:underline; color: #C50820; }
#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}

#regBodyContent #rhsNewsHeading { border-left:solid 1px #C50820; padding:10px 0px 10px 10px; font-size:1.5em; color:#C50820;}
#regBodyContent #rhsNewsBody { padding:10px; border-left:solid 1px #C50820;  border-bottom:solid 10px #C50820; }
#regBodyContent #rhsNewsBody .Heading {font-size:1.5em; color:#999999; }
#regBodyContent #rhsNewsBody a { color:#C50820; text-decoration:none; }
#regBodyContent #rhsNewsBody a:hover { color:#C50820; text-decoration:underline; }
/* put table cells for the main body content to have a 1px padding by default */
#regBodyContent table td {padding: 1px 1px 1px 1px}

/* Button styles */
#regBodyContent .button { background-color: #C50820; color: #FFFFFF; padding: 1px 9px 1px 9px; border: 1px solid #C50820}
#regBodyContent .CancelButton {font-weight: normal; color: Red;}

/* datagrid styles */
#regBodyContent .datagridHeader {background-color: #cccccc;font-weight: bold; padding-top: 3px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; margin-bottom: 10px;}
#regBodyContent .datagridItem {background-color: #efefef; 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:95px}
#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 .buyNow {color: Red; font-weight: bold; font-size: .8em;}

#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: Gray; }

#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; }