/* General HTML elements */
form, p, h1, h2, h3, h4, h5, h6, div, img, ul, ol, li, blockquote, body { margin: 0; padding: 0; }
img { border: none; }
hr { height: 2px; margin: 10px 0; }
h1 { margin: 0 0 0.8em 0; }
h2 { margin: 0 0 0.8em 0; }
img#header { display: block; }
h3 { padding: 4px; }
h4 { margin: 0 0 1em 0; }
p { margin: 0 0 1em 0; }
address { margin: 0 0 1em 0; }
ul, ol { padding: 0 0 0 2em; margin: 0 0 1em 0; }
.clear_left { clear: left; }
.clear_both { clear: both; }
.error { color: #f00; }
dl { padding: 0; margin: 0 0 1em 0; }
dt { float: left; width: 30px; }

/* misc useful mini classes / overrides */
.fr, .right { float: right; }
.fl, .left { float: left; }
.hide { display: none; }

/* INPUTS / FORMS */
select.select { border-width: 1px; }
select.select option { margin-right: 1em; }
input.text, textarea.text { width: 250px; border-width: 1px; }
input.quantity { width: 50px; border-width: 1px; }
label { display: block; width: 130px; padding: 2px 5px 0 0; float: left; }
label.inline { display: inline; width: auto; padding: 0; float: none; }
ul.form { padding: 0; margin: 0; }
ul.form li { padding: 0; margin: 3px 0; }
ul.errors label { display: inline; width: auto; float: none; }

/* Main container div. Inner is used underneath main header to produce white borders. */
div#container { margin: 2px auto; border-width: 2px; width: 760px; padding: 2px; }
div#inner { margin: 2px 0 0 0; }

/* MENU - down left side, links are in LI lists for degredation */
ul#main_menu { width: 140px; margin: 0; padding: 0; float: left; }
ul#main_menu li { margin: 0; padding: 0; border-bottom-width: 2px; }
ul#main_menu li.empty { padding: 3px 0; }
ul#main_menu li.large { border-bottom: none; }
ul#main_menu li a { display: block; margin: 0 0 0 10px; padding: 3px 2px; border-left-width: 2px; }
ul#main_menu li.empty a { border-left: none; margin: 0; padding: 0; }
ul#main_menu li.large a { border-left: none; margin: 0; padding: 10px 0 0 0; }

/* CONTENT, child of MAIN to right of MENU */
div#content { margin: 0 0 0 140px; padding: 10px; }

/* Footer section, ends the page */
p#copyright { margin: 0; padding: 4px 0; border-top-width: 2px; clear: both; }

/* Large links on Homepage */
ul.large_links { margin: 0; padding: 0; }
ul.large_links li.billboard { display: inline; }
ul.large_links li.billboard a { display: block; float: left; margin: 20px 0 0 29px; width: 166px; height: 400px; border-width: 1px; }
ul.large_links li.billboard a strong { display: block; padding: 5px; }
ul.large_links li.billboard a span { display: block; padding: 3px; }
ul.large_links li.billboard a img { display: block; }

ul.large_links li.panel { display: inline; }
ul.large_links li.panel a { display: block; float: left; margin: 29px 0 10px 29px; width: 166px; border-width: 1px; }
ul.large_links li.panel a strong { display: block; padding: 20px 0 2px 0; margin: 0 0 2px 0; }
ul.large_links li.panel a img { float: right; }

/* PRODUCT DETAIL PAGE */
div.productview { width: 500px; margin: 0 auto; }

/* News Articles */
img.news_article { float: right; border-width: 1px !important; margin: 0 0 10px 10px; }

/* News Page */
ul#news_articles { margin: 0; padding: 0; }
ul#news_articles li { margin: 5px 0; padding: 5px; }
ul#news_articles li h3 { margin: 0 0 1em 0; padding: 0; }

/* Categories Pages */
ul.product_list { margin: 0; padding: 0; }
ul.product_list li { margin: 5px 0; padding: 5px; }
ul.product_list li h3 { margin: 0 0 1em 0; padding: 0; }

/* Local Stockists */
ul#local_stockists { margin: 0; padding: 0; }
ul#local_stockists li { margin: 5px 0; padding: 5px; }
ul#local_stockists li h3 { margin: 0 0 1em 0; padding: 0; }
ul#local_stockists li p.range { float: right; padding: 1px 8px; margin: 0; }

/* admin area */
.standardInput { border-width: 1px; }
.newsImage { margin: 5px; border-width: 1px; }

/* Tables */
table { margin: 0; border-width: 1px; }
caption { padding: 8px 10px; margin: 0; }
th, td { padding: 3px 5px; }

ul#boxes { padding: 0; margin: 15px 0; }