* {
	font-size: 1em;
}

body {
	background: #090909 url('/img/front/body.png') repeat-x left top;
	color: #CAC9C9;
	font-family: Sans-Serif;
	font-size: 12px;
	line-height: 21px;
}

a {
	color: #CAC9C9;
	text-decoration: underline;
}

a img {
	border: none;
}

* html a img { /* IE6 hack */
	border: none !important;
}

strong {
	font-weight: bold;
}

em {
	font-style: italic;
}

.clearer {
	clear: both;
}

.numeric {
	text-align: right;
}

img.size140 {
	height: 140px;
	width: 140px;
}

img.size160 {
	height: 160px;
	width: 160px;
}

img.size240 {
	height: 240px;
	width: 240px;
}

img.size460 {
	height: 460px;
	width: 460px;
}

.full_wrapper, .inner_wrapper, #header, #flash_message, #hero_banner, #body, #footer {
	width: 940px;
}

body.products.view_homepage #featured_products {
	padding-top: 20px;
	padding-bottom: 20px;
}

body.products.view_homepage #featured_products .product {
	width: 160px;
	float: left;
}

/* If we override the main product name and hook heights on the homepage, this is where to do it.
body.products.view_homepage #featured_products .product p.product_name {
}

body.products.view_homepage #featured_products .product p.hook {
} */

body.products.view_homepage #featured_products .product.i1,
body.products.view_homepage #featured_products .product.i2,
body.products.view_homepage #featured_products .product.i3 {
	margin-left: 60px;
}

* html body.products.view_homepage #featured_products .product.i1 { /* IE6 hack */
	margin-left: 30px;
}

body.products.view_homepage #featured_products .product.i4 {
	margin-left: 720px;
	float: none;
}

/* Space the featured products on the home page if there are less than four */
#homepage_featured_product_breaker {
	clear: left;
}

body.products.view_homepage #manufacturer_logos .i1,
body.products.view_homepage #manufacturer_logos .i2,
body.products.view_homepage #manufacturer_logos .i3,
body.products.view_homepage #manufacturer_logos .i4,
body.products.view_homepage #manufacturer_logos .i5,
body.products.view_homepage #manufacturer_logos .i6,
body.products.view_homepage #manufacturer_logos .i7 {
	float: left;
}

body.products.view_homepage #manufacturer_logos .i2,
body.products.view_homepage #manufacturer_logos .i3,
body.products.view_homepage #manufacturer_logos .i4,
body.products.view_homepage #manufacturer_logos .i5,
body.products.view_homepage #manufacturer_logos .i6,
body.products.view_homepage #manufacturer_logos .i7 {
	margin-left: 20px;
}

body.products.view_homepage #manufacturer_logos .i8 {
	margin-left: 840px;
}

* html body.products.view_homepage #manufacturer_logos .i8 { /* IE6 hack */
	margin-left: 837px;
}

body.products.view_homepage #manufacturer_logos .not_last_line {
	margin-bottom: 20px;
}

body.products.view_homepage #manufacturer_logos p#pusher {
	clear: left;
}

#outer_homepage_content {
	background-color: #181818;
	border-top: 1px solid #292828;
}

#inner_homepage_content {
	padding-top: 20px;
	padding-bottom: 20px;
}

.full_wrapper, .inner_wrapper {
	margin: 0 auto;
}

#header {
	background-image: url('/img/front/header.png');
}

#header h1 a {
	display: block;
	width: 220px;
	height: 110px;
}

#header h1 a span {
	display: none;
}

#search input#SearchText {
	background-color: #562D30;
	border-bottom: 1px solid #593132;
	border-left: 1px solid #593132;
	border-right: 1px solid #471417;
	border-top: 1px solid #471417;
	color: #DCD9D9;
	display: block;
	float: right;
	margin: 10px 12px 0 0;
	width: 107px;
}

* html #search input#SearchText { /* IE6 hack */
	margin-right: 5px;
}

#search div.submit {
	display: none;
}

#menu {
	background-image: url('/img/front/menu.png');
	margin-top: 18px; /* Should be 20, but the image I have has a cunky border. */
	margin-bottom: 18px;
	height: 44px; /* Should be 40, but the image I have is 44. */
	font-family: Vegur, Sans-Serif;
	font-size: 15px;
}

#menu_pages {
	padding-left: 2px; /* Dem chunky borders again */
}

#menu li {
	display: block;
	height: 44px; /* Should be 40 */
}

#menu_pages li {
	float: left;
}

#menu_pages li.not_last {
	float: left;
}

#menu_pages li.not_last a {
	background: transparent url('/img/front/menu_separator.png') no-repeat right center;
}

#menu a {
	display: block;
	float: left; /* IE6 needs this! */
}

#menu a {
	color: #ECEBE1;
	height: 30px; /* Compensate for padding */
	padding-top: 12px;
	padding-left: 24px;
	padding-right: 24px;
	text-decoration: none;
}

#menu_actions li {
	float: right;
}

#cart_link a {
	padding-left: 70px;
}

#account_link, #account_link a {
	/*width: 100px;*/
}

#cart_link, #cart_link a {
}

#menu_actions span {
	/*display: none;*/
}

#your_cart {
	display: none;
	background-color: #500809;
	float: right;
	position: absolute;
	width: 279px;
	margin-left: 659px;
	top: 168px;
	border-right: 1px solid #5F0E0D;
	border-bottom: 1px solid #5F0E0D;
	z-index: 10;
}

#your_cart h2,
#your_cart ul,
#your_cart p {
	border-bottom: 1px solid #591514;
	border-top: 1px solid #3B0505;
	padding: 10px;
}

#your_cart h2 {
	border-top: none;
	font-size: 15px;
}

#your_cart p {
	border-bottom: none;
}

#your_cart .inactive {
	color: #9E9DA2;
}

#your_cart a {
	text-decoration: none;
}

/* Menu highlighting */

div#menu a {
	color: #BBB;
}

div#menu a:hover {
	color: white;
}

/* Special pages */
body.products.view_homepage li#home a,
body.products.shop li#shop a,
body.products.category_index li#shop a,
body.products.manufacturer_index li#shop a,
body.products.view li#shop a,

/* CMS-edited pages */
body.webpages.view.slug_products div#menu li.slug_products a,
body.webpages.view.slug_support div#menu li.slug_support a,
body.webpages.view.slug_systems-integration div#menu li.slug_systems-integration a,

/* Action based, very special pages */
body.users.login li#account_link a,
body.customers li#account_link a {
	color: white;
}

#flash_message {
	background-repeat: no-repeat;
	background-position: 10px center;
	border: 1px solid;
	display: none;
	margin: 10px 0;
	padding: 15px 10px 15px 50px;
	width: 880px; /* 940 - 10 - 50 */
}

/* Note: It appears that IE6 can't cope with element#id.class, so I'm using just element.class instead */

div.info {
	color: #00529B;
	background-color: #BDE5F8;
	background-image: url('/img/knob_info.png');
}

div.success {
	color: #4F8A10;
	background-color: #DFF2BF;
	background-image: url('/img/knob_success.png');
}

div.warning {
	color: #9F6000;
	background-color: #FEEFB3;
	background-image: url('/img/knob_attention.png');
}

div.error {
	color: #D8000C;
	background-color: #FFBABA;
	background-image: url('/img/knob_error.png');
}

#hero_banner {
	height: 300px;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

/* For the hero banner also */

#full_wrapper_containing_header {
	position: relative;
}

#scroller-products-wrap {
	position: absolute;
	width: 10000em;
}

#scroller-products-wrap .producto {
	float: left;
}

.products-dots {
	margin: 20px auto;
	width: 150px; /* This is only roughly right, to get the auto side margins to do something */
}

.products-dots a {
	background: transparent url('/img/icon-dot.png') no-repeat scroll left top;
	display: block;
	float: left;
	height: 12px;
	margin-right: 15px;
	text-indent: -99999em;
	width: 12px;
}

.products-dots a.active {
	background-position: bottom;
}

/* End hero banner related bits */

#about_us {
	float: left;
	width: 220px;
}

/*
#news {
	float: left;
	margin-left: 20px;
	width: 220px;
}

#blog {
	float: left;
	margin-left: 20px;
	width: 220px;
}
*/

#news_and_blog {
	float: left;
	margin-left: 20px;
	width: 460px;
}

#news {
	padding-bottom: 20px;
}

#news_and_blog a {
	text-decoration: none;
}

#news_and_blog a:hover {
	text-decoration: underline;
}

#news_and_blog span.date {
	color: #660707;
}

#newsletter_signup {
	margin-left: 720px;
	width: 220px;
}

* html #newsletter_signup { /* IE6 hack */
	margin-left: 712px;
}

#newsletter_signup div.input.text input {
	background: #515151 url('/img/front/signup_input.png') repeat-x left top;
	border: 1px solid black;
	color: #CAC9C9;
	width: 220px;
}

#NewsletterSubscriptionEmailAddress {
	margin-top: 2px;
	margin-bottom: 5px;
}

#homepage_callback {
	padding-top: 20px;
	/*text-align: center;*/
	font-size: 15px;
}

#body {
	/*background: #090909 url('/img/front/header.png') no-repeat left -190px;  No longer needed as the header image no longer spills over into the rest of the page */
}

#navigation {
	/*background-color: #120C11;*/
	float: left;
	/*padding: 20px;*/
	/* width: 140px; 180 - 20 - 20 */
	width: 160px;

	margin-right: 20px;
	padding-right: 0;
}

#navigation h2 {
	border-bottom: 1px solid #CAC9C9;
	font-size: 15px;
	margin-bottom: 10px;
}

#manufacturers {
	margin-top: 20px;
}

#navigation a {
	text-decoration: none;
}

#content {
	background-color: #363634;
	margin-left: 180px;
	padding: 20px;
	width: 540px; /* 580 - 20 - 20 */
}

* html #content { /* IE6 hack */
	padding-top: 40px;
}

#content.two_column {
	width: 720px;
}

* html .two_column { /* IE6 hack */
	width: 715px !important;
}

/* Also applies, say, inside products' div.panes */

#content div.panes,
#content p,
#content ul,
#content h2,
#content h3,
#content h4,
#content table {
	margin: 20px;
}

#content ul.tabs {
	margin-bottom: 0;
	margin-left: 20px;
	list-style-type: none;
}

* html #content ul.tabs { /* IE6 hack */
	margin-left: 20px !important;
}

#content div.panes {
	margin-top: 0;
}

#content div.pane {
	margin: 0;
}

#webpages_on_homepage h2,
#inner_homepage_content h2,
#content h2 {
	font-weight: bold;
	/*margin-bottom: 20px;*/
	margin-bottom: 8px;
}

div#webpages_on_homepage h2 {
	/*color: #660707;*/
	color: #D81B20;
	margin-bottom: 0;
}

#inner_homepage_content #news_and_blog h2 span {
	font-weight: normal;
}

#distractions {
	float: right;
	width: 160px;
}

* html #distractions { /* IE6 hack */
	/*margin-right: -80px;*/
}

#footer {
	clear: both;
}

#footer ul {
	margin: 20px 0;
}

#footer li {
	display: block;
	float: left;
	padding-right: 20px;
	padding-bottom: 20px;
}

#footer p {
	clear: both;
	margin: 20px 0;
}

/* Still all pages */

#content h2 {
	margin: 20px;
	font-size: 20px;
}

#content label {
	display: block;
	float: left;
	margin: 20px;
	width: 200px;
}

* html #content label { /* IE6 hack */
	float: none;
}

#content input,
#content textarea {
	margin: 20px 20px 20px 0;
}

* html #content input, /* IE6 hack */
* html #content textarea {
	margin: 20px;
}

#content div.text input,
#content div.password input,
#content div.textarea textarea {
	padding: 3px;
	width: 274px; /* 280 - 3 - 3 */
}

/* Compensate for browsers being slightly out with inputs */

#content div.text input,
#content div.password input,
#content div.textarea textarea {
	width: 268px;
}

body.mac_os #content div.textarea textarea {
	width: 272px;
}

/* Submit buttons have no labels... */

#content div.submit input {
	margin: 20px 20px 20px 240px;
}

* html #content div.submit input { /* IE6 hack */
	margin: 20px;
}

#content.two_column div.submit input {
	margin: 20px 20px 20px 590px;
}

* html .two_column div.submit input { /* IE6 hack */
	margin-left: 575px !important;
	margin-right: 0 !important;
}

/* Webpages-on-homepage specific */

div.webpage_on_homepage {
	/*background: #121212 url('/img/front/featured_page_bg.png') repeat-x left top;*/
	/*background-color: #181818;*/
	margin-bottom: 20px;
}

/* Blog/news article index specific */

body.news_articles.index div.article,
body.blog_articles.index div.article {
	background-color: #666;
	padding-top: 1px;
	padding-bottom: 1px;
	margin: 20px;
}

body.news_articles.index div.article h3,
body.blog_articles.index div.article h3 {
	font-size: 15px;
}

body.news_articles.index div.article p.date,
body.blog_articles.index div.article p.date {
	font-style: italic;
	text-align: right;
}

body.news_articles.index #content p.next_and_last,
body.blog_articles.index #content p.next_and_last {
	float: right;
	margin-top: 0;
}

/* Shop category/manufacturer index specific */

body.products.category_index #content,
body.products.manufacturer_index #content {
	padding-bottom: 1px; /* Technically wrong */
}

body.products.category_index #content .product,
body.products.manufacturer_index #content .product {
	width: 140px;
	margin-bottom: 40px;
}

body.products.category_index #content .product.i1,
body.products.manufacturer_index #content .product.i1 {
	float: left;
	margin-left: 20px;
}

* html body.products.category_index #content .product.i1,
* html body.products.manufacturer_index #content .product.i1 { /* IE6 hack */
	margin-left: 10px;
}

body.products.category_index #content .product.i2,
body.products.manufacturer_index #content .product.i2 {
	float: left;
	margin-left: 40px;
}

body.products.category_index #content .product.i3,
body.products.manufacturer_index #content .product.i3 {
	margin-left: 380px;
}

body.products.category_index #content .product .text,
body.products.manufacturer_index #content .product .text {
	background: #C5C4C4 url('/img/front/shop_special_offer_text.png') repeat-x left top;
	color: black;
	text-align: center;
}

* html body.products.category_index #content .product .text,
* html body.products.manufacturer_index #content .product .text { /* IE6 hack */
	margin-top: -3px;
}

body.products.category_index #content .product p,
body.products.manufacturer_index #content .product p {
	margin: 0;
}

body.products.category_index #content .product p a,
body.products.manufacturer_index #content .product p a {
	color: black;
	text-decoration: none;
}

p.product_name {
	/* height: 42px; Force all product names to be two lines tall for consistency and to stop floats breaking */
	/* height: 63px; Force all product names to be three lines tall for consistency and to stop floats breaking */


	/* Force all product names to be three lines tall and squished together */
	/*height: 55px;*/
	height: 41px; /* Two lines again, still squished */
	line-height: 13px;
	padding-top: 3px;
	text-align: center;
}

p.hook {
	height: 24px;
	line-height: 13px;
	text-align: center;
}

/* Push if only one or two products on last line */
body.products.category_index #content p#pusher,
body.products.manufacturer_index #content p#pusher {
	height: 255px;
}

div#content ul.horizontal_categories { /* Category's subcategory listing, manufacturer's category listing */
	margin-left: 20px;
	list-style-type: none;
}

div#content ul.horizontal_categories li {
	display: inline;
	margin-right: 1em;
}

body.products.view_homepage p.product_name,
body.products.shop div#content p.product_name,
body.products.category_index div#content p.product_name,
body.products.manufacturer_index div#content p.product_name {
	font-weight: bold;
}

div#navigation {
	margin-bottom: 40px;
}

/* Homepage specific */

body.products.view_homepage div#news_and_blog h3 {
	margin-bottom: 10px;
	text-decoration: underline;
}

/* Shop homepage specific */

body.products.shop #special_offers .product {
	width: 140px;
}

body.products.shop #special_offers .product.i1 {
	float: left;
	margin-left: 20px;
}

* html body.products.shop #special_offers .product.i1 { /* IE6 hack */
	margin-left: 10px;
}

body.products.shop #special_offers .product.i2 {
	float: left;
	margin-left: 40px;
}

body.products.shop #special_offers .product.i3 {
	margin-left: 380px;
}

body.products.shop #special_offers .product .text {
	background: #C5C4C4 url('/img/front/shop_special_offer_text.png') repeat-x left top;
	color: black;
	text-align: center;
}

* html body.products.shop #special_offers .product .text { /* IE6 hack */
	margin-top: -3px;
}

body.products.shop #special_offers .product p {
	margin: 0;
}

body.products.shop #special_offers .product p a {
	color: black;
	text-decoration: none;
}

body.products.shop #featured_products .product {
	width: 240px;
	margin-bottom: 20px;
}

body.products.shop #featured_products .product.i1,
body.products.shop #featured_products .product.i3 {
	float: left;
	margin-left: 20px;
}

* html body.products.shop #featured_products .product.i1,
* html body.products.shop #featured_products .product.i3 { /* IE6 hack */
	margin-left: 10px;
}

body.products.shop #featured_products .product.i2,
body.products.shop #featured_products .product.i4 {
	margin-left: 280px;
}

body.products.shop #featured_products .product .text {
	background: #C5C4C4 url('/img/front/shop_special_offer_text.png') repeat-x left top;
	color: black;
	text-align: center;
}

body.products.shop #featured_products .product .text { /* IE6 hack */
	margin-top: -3px;
}

body.products.shop #featured_products .product p {
	margin: 0;
}

body.products.shop #featured_products .product p a {
	color: black;
	text-decoration: none;
}

body.products.shop #new_products li {
	border-top: 1px solid #CAC9C9;
}

body.products.shop #new_products .price {
	float: right;
}

body.products.shop #new_products .name {
	display: list-item; /* This is a bit of a hack... */
	list-style-type: disc;
	margin-left: 15px;
}

body.products.shop #new_products a {
	text-decoration: none;
}

/* Push if only one or two products on last line */
body.products.shop #content p#special_pusher {
	height: 255px;
}

body.products.shop #content p#featured_pusher {
	height: 355px;
}

/* Product viewing page specific */

.gross_price {
	font-size: 10px;
}

body.products.view #content p.add_to_cart {
	margin-bottom: 0; /* Don't interfere with tabs */
	margin-top: 0;
	float: right;
}

body.products.view #content p.price {
	margin: 20px;
	font-size: 15px;
}

body.products.view div#content ul.files {
	list-style-image: url('/img/silk/page_white.png');
}

div.panes {
	background: #F4F4F4 url('/img/front/panes.png') repeat-x left top;
	color: black;
	padding: 1px; /* Yes, now everything inside is 1 pixel out, unfortunately. */
}

div.panes ul li {
	list-style-type: disc;
	margin-left: 20px;
}

div.panes h2, div.panes h3 {
	font-weight: bold;
}

div.panes div#product_images ul {
}

div.panes div#product_images ul li {
	display: block;
	list-style-type: none;
	margin-left: 0;
	margin-bottom: 20px;
}

div.panes div#product_images ul li.image {
	height: 140px;
	width: 140px;
	margin-bottom: 20px;
}

div.panes div#product_images ul li.image.i1 {
	float: left;
}

div.panes div#product_images ul li.image.i2 {
	float: left;
	margin-left: 20px;
}

div.panes div#product_images ul li.image.i3 {
	margin-left: 320px;
}

div.panes div#product_images div#pusher {
	height: 140px;
	margin-bottom: 20px;
}

div.panes a {
	color: black; /* The usual grey isn't legible against the gradient background */
}

/* Shopping cart page specific */

body.carts.view #content div.input.text input {
	width: 20px;
}

body.carts.view #content table {
	border-collapse: collapse;
	width: 680px;
}

* html body.carts.view #content table { /* IE6 hack */
	width: 675px !important;
}

body.carts.view #content th,
body.carts.view #content td {
	border: 1px solid #444444;
	padding: 5px;
}

body.carts.view #content th {
	font-weight: bold;
}

body.carts.view #content tr.even td {
	background-color: #444;
}

body.carts.view #content div.submit {
	margin: 20px;
}

body.carts.view #content th.product {
}

body.carts.view #content th.variation {
}

body.carts.view #content th.quantity {
}

body.carts.view #content th.remove {
}

body.carts.view p.checkout {
	float: right;
}

* html body.carts.view p.checkout { /* IE6 hack */
	margin: 10px 5px 0 0 !important;
}

body.carts.view div.input_image {
	text-align: right;
}

body.carts.view p.button_esque {
	text-align: right;
}

* html body.carts.view p.button_esque { /* IE6 hack */
	margin-right: 10px !important;
}

/* CMS-edited pages */

div#content em {
	font-style: italic;
}

div#content h3 {
	font-size: 15px;
	font-weight: bold;
}

div#content strong {
	font-weight: bold;
}

div#content u {
	text-decoration: underline;
}

div#content ul {
	list-style-type: disc;
	margin-left: 35px;
}

/* Side content on all pages */

#callback_request {
	/*padding: 20px;*/
	text-align: center;
	font-size: 15px;
}

#callback_request p {
	margin: 20px;
}

#top_sellers,
#twitter {
	background-color: #C4C4C3;
	color: black;
	line-height: 15px;
	padding: 1px; /* Now it's 1px out.  A shame. */
}

#top_sellers h2,
#top_sellers p,
#twitter h2,
#twitter p {
	margin: 10px;
}

#top_sellers h2, #twitter h2 {
	border-bottom: 1px solid #787877;
}

#top_sellers a,
#twitter a {
	color: #660000;
}

#top_sellers {
	margin-bottom: 20px;
}

#twitter {
	background: #C4C4C3 url('/img/front/twitter.png') no-repeat 128px 10px; /* IE6 needs the background positioning done this way */
	padding-top: 36px;
}

/* Login page */

body.users.login div#content ul {
	list-style-type: disc;
	margin-left: 35px;
}

/* Orders and qutoes */

body.orders.index div#content table,
body.quotes.index div#content table {
	width: 535px;
	margin: 1px;	
}

body.orders.index div#content table th,
body.orders.index div#content table td,
body.quotes.index div#content table th,
body.quotes.index div#content table td {
	padding: 5px;
}

body.orders.index div#content table th,
body.quotes.index div#content table th {
	font-weight: bold;
}

body.orders.index div#content table td,
body.quotes.index div#content table td {
    background-color: #666;
    border-bottom: 1px solid #333;
}

body.orders.index div#content table td.order_numeric,
body.quotes.index div#content table td.order_numeric {
	text-align: right;
}

body.orders.view div#content table,
body.quotes.view div#content table
{
	border-collapse: collapse;
	width: 500px;
}

body.orders.view div#content table th,
body.orders.view div#content table td,
body.quotes.view div#content table th,
body.quotes.view div#content table td {
	border: 1px solid #444444;
	padding: 5px;
}

body.orders.view div#content table th,
body.quotes.view div#content table th {
	font-weight: bold;
}

body.orders.view div#content table td.order_numeric,
body.quotes.view div#content table td.order_numeric {
	text-align: right;
	width: 70px;
}

body.orders.view div#content table th.left_col,
body.quotes.view div#content table th.left_col {
	width: 200px;
}

/* Form errors */

/* Undo the mess caused by having to work around the fact that IE6 can't cope with element#id.class earlier on */

div#content div.error {
	color: #CAC9C9;
	background-color: #363634;
	background-image: none;
}

div#content div.error div.error-message {
	color: #D8000C;
	margin-left: 20px;
}

/* CMS-edited pages */

body.webpages.view #content img,
body.products.view #content div#product_overview img {
	border: 1px solid black;
	margin: 10px 10px 10px 0;
}

