/* General HTML elements */
form, p, h1, h2, h3, h4, h5, h6, div, img, ul, ol, li, blockquote, dl, dt, dd { margin: 0; padding: 0; }
body { font: 62.8% Helvetica, Arial, sans-serif; background: #fff; color: #000; text-align: center; margin: 0; padding: 15px 0; }
img { border: none; margin: 0; padding: 0; }
a { color: #006; }
a:visited { color: #009; }
a:focus { color: #00f; }
a:hover { color: #00f; }
a:active { color: #000; }
p { margin: 10px; font-size: 1.1em; }
address { margin: 10px; font-size: 1.1em; font-style: normal; }
h1 { color: #fff; font: bold 1.8em Arial, sans-serif; background: #a2298a; padding: 10px 10px; margin: 0; }
h2 { color: #fff; font: bold 1.6em Arial, sans-serif; background: #a2298a; padding: 10px 10px; margin: 0; }
h3 { color: #fff; font: normal 1.4em Arial, sans-serif; background: #a2298a; padding: 10px 10px; margin: 0; }
h1 img, h2 img, h3 img { vertical-align: middle; border: 1px solid #fff; }
ul, ol { margin: 10px; font-size: 1.1em; padding-left: 2em; }
li { margin: 10px 0; }
ul ul, ul ol, ol ul, ol ol { font-size: 1em; }
blockquote { font-style: normal; }
cite { font-style: italic; }
dt { font-size: 1.2em; font-weight: bold; margin: 10px 10px 0 10px; }
dd { font-size: 1.1em; margin: 0 10px 10px 10px; }

/* Useful Classes */
.left { float: left; }
.right { float: right; }
.clear_left { clear: left; }
.clear_right { clear: right; }
.clear_both { clear: both; }
.center { text-align: center; }
.error, .errors, .red { color: #f00; }
.hide { display: none; }
strong.org a.url { text-decoration: none; color: inherit; }
img.left, img.right { display: block; margin: 10px 20px; }
img.icon { vertical-align: middle; }
img.block { display: block; }

/* Container */
div#container { width: 795px; margin: 0 auto; text-align: left; background: #636363 url("../gfx/left-column.jpg") top left repeat-y; color: #fff; }

/* Menus */
ul.navigation { height: 15px; line-height: 15px; padding: 12px 10px; clear: both; font-size: 1.1em; background: #000 url("../gfx/menu-gradient.jpg") top left repeat-x; margin: 0; }
ul.navigation li { display: inline; padding: 0 10px; border-left: 1px solid #fff; margin: 0; }
/*ul.navigation li.first { width: 283px; float: left; padding: 0; text-indent: 10px; margin: 0; }*/
ul.navigation li a, ul.navigation li a:visited { color: #fff; text-decoration: none; }
ul.navigation li a:focus, ul.navigation li a:hover { color: #ff0; text-decoration: underline; }
ul.navigation li a:active { color: #f00; text-decoration: underline; }

/* Left Column */
div#left_column { float: left; width: 283px; padding: 0; margin: 0; color: #000; }
div#left_column h2 { padding: 20px 0 20px 50px; }

/* Content */
div#content { float: right; margin: 0; padding: 0; width: 512px; }

/* Manufacturer Strip */
ul#manufacturers_strip { color: #000; background: #fff; text-align: center; width: 130px; border: 10px solid #636363; padding: 0; margin: 0; float: right; list-style-type: none; }

/* Category Lists */
ul.category_list { clear: both; margin: 0; padding: 0; font-size: 1.3em; }
ul.category_list li { display: inline; list-style-type: none; }
ul.category_list li a { text-decoration: none; width: 123px; height: 40px; padding: 10px; background: #fff; border: 1px solid #fff; float: left; margin: 10px; text-align: center; }
ul.category_list li a:visited { border: 1px solid #999; }
ul.category_list li a:focus, ul.category_list li a:hover { border: 1px solid #ff0; text-decoration: underline;  }
ul.category_list li a:active { border: 1px solid #f00; }

/* Product Lists */
ul.product_list { clear: both; margin: 0; padding: 0; font-size: 1em; }
ul.product_list li { display: inline; list-style-type: none; }
ul.product_list li a { text-decoration: none; width: 233px; height: 70px; padding: 0; background: #fff; border: 1px solid #fff; float: left; margin: 10px; text-align: left; }
ul.product_list li a:visited { border: 1px solid #999; }
ul.product_list li a:focus, ul.product_list li a:hover { border: 1px solid #ff0; }
ul.product_list li a:active { border: 1px solid #f00; }

ul.product_list li a strong { display: block; font-size: 1.3em; padding: 2px 4px; color: #fff; background: #a2298a; }
ul.product_list li a strong img { vertical-align: top; border: 1px solid #fff; margin: 2px 3px 0 0; }
ul.product_list li a em { display: block; font-size: 1.8em; padding: 2px 4px; color: #f00; float: right; }
ul.product_list li a span { display: block; font-size: 1.1em; padding: 2px 4px; }

div#left_column ul.product_list li a { text-decoration: none; width: auto; height: 60px; padding: 0; background: #fff; border: none; float: none; display: block; margin: 2px; text-align: left; }

/* Colour List */
ul.colour_list { padding: 0; margin: 10px; }
ul.colour_list li { list-style-type: none; float: left; width: 32%; padding: 2px 0 10px 0; margin: 0; }
ul.colour_list li img { vertical-align: top; border: 1px solid #fff; margin: 1px 3px 0 0; }

/* Testimonials */
ul#testimonials { font-size: 1em; color: #a2298a; list-style-type: none; margin: 10px 0; padding: 0; }
ul#testimonials li { margin: 5px 0; }
ul#testimonials li blockquote { color: #fff; font-size: 1em; }

/* Price Stickers */
.price_sticker { width: 123px; height: 90px; padding: 43px 5px 0 5px; margin: 0; background: transparent url("../gfx/price-sticker.png") top left no-repeat; color: #ff0; float: right; text-align: center; font-weight: normal; font-size: 1.1em; }
.price_sticker strong { font-size: 1.5em; white-space: nowrap; }
.price_sticker span { white-space: nowrap; }
.price_sticker span.small { font-size: 0.6em; display: block; }

/* Tables */
table { margin: 0; color: #000; background: #efefef; border-collapse: collapse; text-align: left; font: normal 1em Verdana, Helvatica, Arial, sans-serif; }
caption { background: #a2298a; padding: 2px 5px; margin: 0; color: #fff; font: bold 1em Verdana, Helvatica, Arial, sans-serif; text-align: left; }
caption a, caption a:visited { color: #fff; text-decoration: none; }
caption a:focus, caption a:hover { color: #fff; text-decoration: underline; }
caption a:active { color: #ff0; text-decoration: underline; }
th { text-align: left; padding: 2px 3px; font-size: 1em; font-weight: normal; }
td { text-align: left; padding: 2px 3px; font-size: 1em; }
td img { border: 1px solid #fff; vertical-align: middle; }
thead tr { background: #a2298a; color: #fff; }
tr.even { background: #eaeaea; }
tr.subtotal { background: #a2298a; color: #fff; }
tr.subtotal td, tr.subtotal th { font-weight: bold; border: none; }
tr.grand_total { background: #a2298a; color: #fff; }
tr.grand_total td, tr.grand_total th { font-weight: bold; border: none; font-size: 1.5em; }
table#full_basket { width: 100%; margin: 15px 0; }
table#quick_basket { width: 100%; margin: 0; }
table.stock_list { margin: 0 15px; }

/* CMS parts */
ul.subsections { padding: 0; margin: 0; font-size: 1em; }
ul.subsections li { list-style-type: none; display: inline; }
ul.subsections li a { float: left; border: 3px double #000; color: #000; padding: 2px 5px; font-size: 1.1em; margin: 10px 5px; background: #eee; cursor: pointer; font-weight: bold; text-decoration: none; }
ul.subsections li a:focus, ul.subsections li a:hover { border: 3px solid #000; }
ul.subsections li a.save { background: #cfc; }
ul.subsections li a.cancel { background: #fcc; }

/* Forms */
fieldset { margin: 5px; padding: 5px; border: 1px solid #999; clear: both; }
legend { margin: 0 15px; padding: 0 15px; font-size: 1.3em; border: 3px double #000; background: #a2298a; font-weight: bold; }
label { float: left; width: 160px; }
label.inline { float: none; width: auto; display: inline; }
input.text, select { border: 1px solid #000; font-size: 1.1em; }
input.quantity { border: 1px solid #000; font-size: 1.1em; }
textarea { border: 1px solid #000; }
input.text.required, select.required, textarea.required { border: 1px solid #f00; }
input.checkbox { border: 1px solid #000; vertical-align: middle; }
input.text.small { width: 100px; color: #000; }
input.text.quantity { width: 30px; color: #000; }
form#login_form { background: #000; padding: 7px; }

/* Buttons */
input.button { border: 1px solid #fff; color: #fff; padding: 2px 5px; font-size: 1em; margin: 2px; background: #a2298a; cursor: pointer; font-weight: bold; vertical-align: middle; }
input.button.delete, input.button.cancel, input.button.empty, input.button.logout { background: #600; }
input.button.save, input.button.checkout { background: #060; }
input.button.add, input.button.edit, input.button.update { background: #660; }

/* Footer */
p#footer { color: #fff; margin: 0; padding: 0 10px; background: #000; clear: both; height: 41px; line-height: 41px; }
p#footer img.right { margin: 5px 0; }
p#footer a { color: #fff; }

/* Checkout */
div.checkout_column { width: 49%; float: left; }