/* General HTML elements */
form, p, h1, h2, h3, h4, h5, h6, div, img, ul, ol, li, blockquote { margin: 0; padding: 0; }
body { font: 62.8% Arial, Helvetica, sans-serif; background: #999; color: #666; text-align: center; margin: 15px; padding: 0; }
img { border: none; }
a { color: #000; }
a:hover { color: #014822; }
p { margin: 10px; font-size: 1.2em; }
ul { margin: 10px; font-size: 1.2em; padding-left: 2em; }
h1 { margin: 15px 10px 5px 10px; font-size: 1.7em; }
h2 { margin: 15px 10px 5px 10px; font-size: 1.6em; }
h3 { margin: 15px 10px 5px 10px; font-size: 1.4em; }

h1 strong, h2 strong, h3 strong, h4 strong { color: #f00; }

/* Useful Classes */
.left { float: left; }
.right { float: right; }
.clear_left { clear: left; display: block; }
.clear_right { clear: right; display: block; }
.clear_both { clear: both; display: block; }
.center { text-align: center; }
.error, .errors { color: #f00; }
.text_box { margin: 10px; border: 1px solid #ccc; background: #f2f2f2; }
a.url { text-decoration: none; color: #666; }
.hide { display: none; }
a.view_image { font-size: 0.8em; padding: 0 10px; }
img.right { margin: 5px; }
p.end_news { clear: both; height: 1px; font-size: 1px; margin: 0; padding: 0; }

/* Container */
div#container { width: 782px; text-align: left; margin: 0 auto; background: #fff url("../gfx/main-col-background.jpg") center top repeat-y; }
a#main_logo_link { position: absolute; top: auto; width: 782px; text-align: right; }

/* Top Menu */
ul#top_menu { height: 20px; padding: 75px 11px 6px 0;/*padding: 81px 14px 0 0;*/ text-align: right; background: #060 url("../gfx/main-header.jpg") center top repeat-y; color: #fff; font-size: 1.4em; font-weight: bold; margin: 0; }
ul#top_menu li { display: inline; border-right: 1px solid #fff; padding: 0 12px; list-style-type: none; }
ul#top_menu li.last { border-right: none; }
ul#top_menu li a { color: #fff; text-decoration: none; }
ul#top_menu li a:hover { color: #ff0; text-decoration: none; }

/* Left Column */
div#left_column { width: 142px; padding: 10px 0 0 18px; float: left; }

/* Left Menu */
ul#left_menu { padding: 0; margin: 10px 0; font-size: 1.2em; font-weight: bold; width: 142px; }
ul#left_menu li { list-style-type: none; border-bottom: 1px solid #9d9da1; padding: 3px 0; }
ul#left_menu li.last { border-bottom: none; }
ul#left_menu li a { color: #000; text-decoration: none; }
ul#left_menu li a:hover { color: #014822; text-decoration: none; }

/* Your Basket */
div#your_basket { width: 140px; border: 1px solid #ccc; background: #fff url("../gfx/heading-background.jpg") top left repeat-x; margin: 10px 0 0 0; text-align: center; }
div#your_basket h2 { margin: 5px 10px; }
ul#basket_bottom { background: #e9e9e9 url("../gfx/box-footer-background.jpg") top left repeat-x; font-size: 1.2em; font-weight: bold; padding: 10px 0 5px 0; margin: 0; }
ul#basket_bottom li { list-style-type: none; padding: 5px 0; }
ul#basket_bottom li a { text-decoration: none; }

/* Adverts */
ul#adverts { padding: 0; margin: 0; }
ul#adverts li { list-style-type: none; padding: 0; margin: 0; }
ul#adverts li a img { border: none; padding: 0; margin: 10px 0 0 0; }

/* Right Column */
div#right_column { width: 600px; padding: 10px 11px 0 0; float: right; }

/* Product Categories for Homepage */
ul#product_categories { margin: 0; padding: 0; font-size: 1em; }
ul#product_categories li { width: 180px; padding: 10px; float: left; list-style-type: none; }
ul#product_categories li a { width: 178px; border: 1px solid #ccc; background: #fff url("../gfx/box-footer-background.jpg") bottom left repeat-x; display: block; text-align: center; padding: 0 0 5px 0; text-decoration: none; font-size: 1.2em; font-weight: bold; }
ul#product_categories li a:hover { border: 1px solid #bbdcbb; background: #fff url("../gfx/hover_box-footer-background.jpg") bottom left repeat-x; }
ul#product_categories li a strong { background: #e9e9e9 url("../gfx/heading-background.jpg") bottom left repeat-x; display: block; font-size: 1.333em; padding: 5px 0; }
ul#product_categories li a:hover strong { background: #e2f0e1 url("../gfx/hover_heading-background.jpg") bottom left repeat-x; }
ul#product_categories li a img { display: block; }

/* Footer */
p#copyright { margin: 0; padding: 0; width: 782px; height: 32px; line-height: 32px; text-align: center; background: transparent url("../gfx/bottom-curve.jpg") center bottom repeat-y; font-size: 1.1em; clear: both; }

/* Tables */
table { width: 100%; text-align: center; font-size: 1em; }
th, tr#grand_total td { font: bold 1.4em Arial, Helvetica, sans-serif; padding: 5px 8px; }
tr.even { background: #f9f9f9; }
tr#postage_packaging { background: #e48510; }
thead tr, tr#grand_total, tr.last { background: #f2f2f2; color: #666; border: 1px solid #ccc; }
td { padding: 3px 5px; font-size: 1.2em; }
.column_item { width: 65%; text-align: left; }
.column_price { width: 12%; }
.column_quantity { width: 23%; }

/* Forms */
form { display: inline; }
label { float: left; width: 150px; padding-right: 5px; }
label.inline { display: inline; float: none; width: auto; padding-right: 0; }
input.button { background: #060; color: #ff0; text-align: center; border: 1px solid #000; font-weight: bold; }
fieldset { padding: 5px; margin: 10px 5px; border: 1px solid #999; }
legend { font-size: 1.4em; font-weight: bold; padding: 0 10px; }
input, select, textarea { border: 1px solid #999; }
input.required, select.required, textarea.required { border: 1px solid #f00; }
form strong { color: #f00; }

/* News */
ul#news { font-size: 1em; padding: 0; text-align: left; margin: 10px; }
ul#news li { list-style-type: none; padding: 5px 0; border-bottom: solid #999 1px; }
ul#news li img { float: right; margin: 5px 0 5px 15px; }