/**
 * Reset the document
 */
table, table * { border-collapse: collapse; border-spacing: 0; }
img            { border: 0; }
a              { text-decoration: none; }
hr             { border-left: 0; border-right: 0; border-top: 0; border-bottom: 1px solid #aaa; }
.hr            { margin: 10px 0; border-bottom: 1px solid #aaa; }

/**
 * Generic classes
 */
.hidden    { display: none; visibility: hidden; }
.clear     { clear: both; }
.float-l, .float-left { float: left; }
.float-r, .float-right { float: right; }
.align-l, .align-left { text-align: left; }
.align-r, .align-right { text-align: right; }
.align-c, .align-center { text-align: center; }
.valign-t, .valign-top { vertical-align: top; }
.valign-m, .valign-middle { vertical-align: middle; }
.valign-b, .valign-bottom { vertical-align: bottom; }
.align-tl  { text-align: left; vertical-align: top; }
.align-tr  { text-align: right; vertical-align: top; }
.align-tc  { text-align: center; vertical-align: top; }
.align-ml  { text-align: left; vertical-align: middle; }
.align-mr  { text-align: right; vertical-align: middle; }
.align-mc  { text-align: center; vertical-align: middle; }
.align-bl  { text-align: left; vertical-align: bottom; }
.align-br  { text-align: right; vertical-align: bottom; }
.align-bc  { text-align: center; vertical-align: bottom; }
.nowrap    { white-space: nowrap; }
.padded    { padding: 5px; }
.padded-h  { padding: 0 5px; }
.padded-v  { padding: 5px 0; }
.min-width { width: 1%; }
.max-width { width: 100%; }
.half-width { width: 50%; }
.b         { font-weight: bold; }
.i         { font-style: italic; }
.u         { text-decoration: underline; }


/**
 * Main form style
 */
form .error { margin: 0 0 0 10px; }
form label { display: block; float: left; width: 120px; margin: 5px 0 0; text-align: right; }
form label.inline { display: inline; float: none; width: auto; text-align: left; margin: 5px 0 0 10px; }
form input, form textarea, form select { width: auto; margin: 5px 0 0 10px; font-size: 1em; }
textarea { overflow: auto; }
.text { padding: 3px 5px; background: #fff; border: 1px solid #888; -moz-border-radius: 4px; -webkit-border-radius: 4px; -moz-box-shadow: 2px 2px 2px #aaa; }
.text.on { background: #ddf2ff; }
a.button, input.button { text-decoration: none; border: 1px solid #B22222; background-color: #B22222; color: #FFF; font-weight: bold; padding: 2px 5px; cursor: pointer; }
a.button:hover, input.button:hover { background-color: #FFF; color: #B22222; }

a.button.disabled, input.button.disabled,
a.button.disabled:hover, input.button.disabled:hover { background-color: #ACB4BB; border: 1px solid #ACB4BB; color: #ccc; cursor: default; }

/**
 * Room background (watch the z-indexes!)
 */
body { background: url(../images/room-bg-foot.jpg) repeat scroll 50% 0; }
#bg-left  { position: absolute; left: 0; width: 50%; height: 100%; background: url(../images/room-bg-l.jpg) repeat-x scroll 0 0; z-index: 1; }
#bg-right { position: absolute; right: 0; width: 50%; height: 100%; background: url(../images/room-bg-r.jpg) repeat-x scroll 0 0;  z-index: 1; }
#bg-main  { position: absolute; width: 100%; height: 100%; background: url(../images/room-bg.jpg) no-repeat scroll 50% 0; z-index: 2; }

/**
 * Layout (z-index must be higher than backgrounds!)
 */
#wrap { position: relative; z-index: 3; width: 930px; margin: 0 auto; padding: 1px 0; }

#column { float: left; width: 290px; margin: 0 -30px 0 -5px; font-weight: bold; }
	#column .head { height: 15px; background: url(../images/panel-left-head.png) no-repeat scroll 0 0; }
	#column .body { padding: 1px 50px 1px 30px; background: url(../images/panel-left-tile.png) repeat-y scroll 0 0; }
	#column .foot { height: 15px; background: url(../images/panel-left-foot.png) no-repeat scroll 0 0; }

	#column h1, #column h2, #column h3 { margin-top: 0; padding-top: 0; }
	#column a { color: #333; }
	#column a:focus,
	#column a:hover { color: #555; }
	#column a:active { color: #111; }
	#column h1, #column h2, #column h3, #column h1 a, #column h2 a, #column h3 a { color: #3f77b4; }
	#column h1 a:hover, #column h2 a:hover, #column h3 a:hover  { color: #1d55d2; }
	#column ul { list-style: none; margin-left: 0; padding-left: 0; }
	#column ul ul { margin: 5px 0 0 10px; padding-left: 0; }
	#column ul li.level-1 { margin-left: 0; padding-left: 0; font-size: 14px; }
	#column ul li.level-2 { margin-left: 0; padding-left: 0; font-size: 12px; }
	#column ul li.active a { text-decoration: underline; }
	#column ul li.active li a { text-decoration: none; }

#content { float: left; width: 670px; }

#logo-wrap { margin-top: -10px; }
#logo { position: relative; z-index: 11; width: 290px; height: 225px; margin: 0; padding: 0; }
#logo a { display: block; width: 290px; height: 225px; background: url(../images/logo.png) no-repeat scroll 0 0; outline: none; }
#logo a:focus,
#logo a:hover { background-position: 0 -235px; }
#logo a span { display: none; }

/*
#head { position: relative; height: 140px; }
*/

#banners { position: relative; z-index: 9; width: 680px; height: 220px; margin: 0; padding: 0; background: url(../images/banner-bg.png) no-repeat scroll 0 0; overflow: hidden; }
#banners ul,
#banners ul li { list-style: none; margin: 0; padding: 0; width: 680px; height: 220px; }


/**
 * Navigation
 */
#navigation { position: relative; z-index: 10; float: right; text-transform: uppercase; margin: -1px 0 -10px 0; }
#navigation ul { list-style: none; margin: 0; padding: 0; }
#navigation ul ul { display: none; }
#navigation ul li { display: block; float: left; margin: 0; padding: 0; }
#navigation ul li a { display: block; height: 25px; line-height: 24px; color: #fff; text-align: center; }
#navigation ul li a span { display: block; height: 25px; padding: 0 15px; background: url(../images/nav-tile.png) repeat-x scroll 0 0; }
#navigation ul li a:focus,
#navigation ul li a:focus span,
#navigation ul li a:hover,
#navigation ul li a:hover span { background-position: 0 -25px; }
#navigation ul li a:active span,
#navigation ul li.active a span { background: url(../images/nav-tile.png) repeat-x scroll 0 -50px; }

#navigation ul li.first a { display: block; height: 25px; padding: 0 0 0 15px; background: url(../images/nav-l.png) no-repeat scroll 0 0; }
#navigation ul li.first a:focus,
#navigation ul li.first a:hover { background: url(../images/nav-l.png) no-repeat scroll 0 -25px; }
#navigation ul li.first a:active { background: url(../images/nav-l.png) no-repeat scroll 0 -50px; }
#navigation ul li.first a span { padding: 0 15px 0 0; }
#navigation ul li.active.first a { background: url(../images/nav-l.png) no-repeat scroll 0 -50px; }
#navigation ul li.active.first a span { background-position: 0 -50px; }

#navigation ul li.last a { display: block; height: 25px; padding: 0 15px 0 0; background: url(../images/nav-r.png) no-repeat top right; }
#navigation ul li.last a:focus,
#navigation ul li.last a:hover { background: url(../images/nav-r.png) no-repeat center right; }
#navigation ul li.last a:active { background: url(../images/nav-r.png) no-repeat bottom right; }
#navigation ul li.last a span { padding: 0 0 0 15px; }
#navigation ul li.active.last a { background: url(../images/nav-r.png) no-repeat bottom right; }
#navigation ul li.active.last a span { background-position: 0 -50px; }

#navigation ul li.separator { padding: 1px; }

.page { width: 680px; margin-top: 10px; }
.page .head { height: 15px; background: url(../images/page-head.png) no-repeat scroll 0 0; }
.page .foot { height: 15px; background: url(../images/page-foot.png) no-repeat scroll 0 0; }
.page .body { padding: 1px 10px; background: url(../images/page-tile.png) repeat-y scroll 0 0; }

.page.min-height .body { min-height: 350px; height: auto !important; height: 350px; }

.panel { width: 335px; margin-top: 5px; }
.panel.right { float: right; clear: both; }
.panel .head { height: 15px; background: url(../images/panel-head.png) no-repeat scroll 0 0; }
.panel .foot { height: 15px; background: url(../images/panel-foot.png) no-repeat scroll 0 0; }
.panel .body { min-height: 150px; height: auto !important; height: 150px; padding: 1px 10px; background: url(../images/panel-tile.png) repeat-y scroll 0 0; }

#category-rotator ul,
#category-rotator li { list-style: none; margin: 0; padding: 0; }
#category-rotator li { display: block; float: left; }

.feature-box { width: 210px; height: 200px; margin: 0 5px; background: url(../images/feature-box.png) no-repeat scroll 0 0; overflow: hidden; }
.feature-box .heading { height: 19px; line-height: 18px; padding: 0 10px; font-size: 13px; color: #fff; font-weight: bold; }

/**
 * Twitter
 */
#twitter_update_list { list-style: none; margin: 0; padding: 0; }
#twitter_update_list li { margin: 0 0 10px 0; padding: 0 0 10px 0; background: url(../images/dotted.png) repeat-x bottom left; }
#twitter_update_list span,
#twitter_update_list span a {  }
#twitter_update_list a {  }

/**
 * Social networks
 */
#follow-us { position: absolute; z-index: 1000; right: 17px; top: 101px; display: none; }
#follow-us a { outline: none; }

/**
 * Mailer
 */
#newsletter h3,
#newsletter p,
#newsletter .text,
#newsletter .button { margin: 0; }
#newsletter .text { width: 200px; }
#newsletter p { padding: 5px 0; }

/**
 * Contact page
 */
#contact-form input.text { width: 190px; }
#contact-form textarea.text { width: 190px; }
#contact-form label { width: 100px; }

/**
 * Blog style and layout
 */
.blog-smaller { font-size: 0.9em; }
.blog-separator { margin: 10px 0 0 0; }
.entry-image { padding: 0 0 10px 10px; }
.blog-rss { margin: 10px 0; }

#blog-entries { font-size: 1.1em; }
#blog-entries .blog-entry { padding: 10px 0; }
#blog-entries .blog-entry-image { float: left; width: 120px; height: 120px; }
#blog-entries .blog-entry-wrap { float: left; width: 475px; margin-left: 5px; }
#blog-entries .blog-entry-head { margin-bottom: 5px; padding: 5px; font: 14px; }
#blog-entries .blog-entry-content { padding: 0 5px 5px 5px; }
#blog-entries .blog-entry-info { padding: 5px; color: #888; font: 14px; }

#blog-entry-info { margin: 0; padding: 5px 5px 10px 5px; color: #000; font: 14px; border-bottom: 1px solid #ccc; }

#blog-entry-content { margin-bottom: 30px; margin-top: 5px; padding: 5px; border-bottom: 1px solid #ccc; }

#blog-entry-tags { margin: 10px 0 0 0; font: 16px; }

#blog-entry-social { border-top: 1px solid #ccc; padding-top: 10px; }
#blog-entry-social ul { list-style: none; margin: 0; padding: 0; }
#blog-entry-social li { display: block; float: left; margin: 0 5px 0 0; padding: 0; }
#blog-entry-social li a img { opacity: 0.8; }
#blog-entry-social li a:hover img,
#blog-entry-social li a:focus img { opacity: 1; margin-top: -1px; margin-bottom: 1px; }

#blog-entry-live-social { margin: 10px 0; padding: 0; }
#blog-entry-live-social .live-social-item { float: left; padding-right: 15px; margin-bottom: 10px; }
#blog-entry-live-social .live-social-item.twitter { padding: 0; margin-right: -5px; }
#blog-entry-live-social .live-social-item.fb-like { padding: 0; }

#blog-entry-comments { margin-bottom: 10px; padding-top: 10px; border-top: 1px solid #ccc; }
#blog-entry-comments .blog-entry-comment { margin-bottom: 10px; }
#blog-entry-comments .blog-entry-comment-body { padding: 10px; background: #f4f4f4; border: 1px solid #ccc; border-bottom: 0; }
#blog-entry-comments .blog-entry-comment-body h1 { margin: 0; padding: 0 0 5px 0; font-size: 14px; }
#blog-entry-comments .blog-entry-comment-foot { height: 16px; background: url(../images/comm-foot.png) no-repeat scroll 0 0; padding: 2px 50px;}

#blog-categories ul { list-style: none; margin: 0; padding: 0; font: 15px; }

#tagcloud { margin: 10px 0; }
#tagcloud a { padding-right: 6px; }
#tagcloud .smallest { font-size: 10px; }
#tagcloud .small { font-size: 12px; }
#tagcloud .medium { font-size: 14px; }
#tagcloud .large { font-size: 16px; }
#tagcloud .largest { font-size: 18px; }

/**
 * Shop style
 */
#shop-column  { float: left; width: 150px; padding: 5px; border: 1px solid #d1cec7; }
#shop-column ul { margin-left: 10px; list-style-image: url(../images/bull_arrow.gif); }
#shop-content { float: left; width: 660px; margin-left: 10px; padding: 5px; border: 1px solid #d1cec7; }

#mini-basket { width: 180px; margin: 0; padding: 0; }
#mini-basket table { width: 100%; margin: 0; padding: 0; border-collapse: collapse; border-spacing: 0; }
#mini-basket a.cart { display: block; width: 44px; height: 33px; margin-right: 10px; background: url(../images/icon-cart.png) no-repeat scroll 0 0; }
#mini-basket a.cart:hover { background-position: 0 -33px; }
#mini-basket a.cart span { display: none; }

#account-panel { }

table.basket th,
table.basket td { padding: 5px; }

#shop-search-form { text-align: left; clear: both; margin: 0; padding: 0; }
#shop-search-form label { display: inline; float: none; width: auto; margin: 0; }
#shop-search-form input.text { width: 170px; margin-left: 0; float: left; padding: 3px 25px 3px 5px; }
#shop-search-form input.button { display: block; float: left; width: 32px; height: 32px; margin: 1px 0 0 -27px; padding: 0; background: url(../images/icon-search.png) no-repeat scroll 0 0; border: 0; }
#shop-search-form input.button:hover { background-position: 0 -32px; }

.shop-browser-category { float: left; width: 120px; height: 140px; margin: 0 20px 20px 0; }
.shop-browser-category h2 { text-align: center; font-size: 15px; margin: 0; padding: 0; line-height: 15px; }
.shop-browser-category a img { display: block; width: 120px; height: 120px; }

.shop-browser-product { clear: both; margin-bottom: 20px; }
.shop-browser-product-image { display: block; float: left; width: 120px; height: 120px; margin: 5px auto 0 auto; }
.shop-browser-product-summary { display: block; float: left; width: 760px; margin: 20px 0 0 10px; }

#viewbasket { margin-bottom: 20px; }
#viewbasket table th,
#viewbasket table td { padding: 3px; background: #fff; }
#viewbasket table { margin-bottom: 10px; }
#viewbasket input.qty { width: 20px; margin: 0; padding: 2px 5px; background: #fff; border: 1px solid #888; -moz-border-radius: 4px; -webkit-border-radius: 4px; text-align: center; }

#shop-login-box { width: 300px; }
#shop-register-box { width: 300px; }
#shop-guest-box {  }

#product-lhs { float: left; width: 200px; margin: 0 10px 20px 0; }
	#main-product-image { margin-bottom: 5px; }
	#main-product-image a { display: block; width: 200px; height: 200px; }
	#product-images { margin-bottom: 20px; }
	#product-images .product-thumb-image a { display: block; width: 95px; height: 95px; border: 1px solid #ccc; margin-bottom: 5px; }
	#product-images .product-thumb-image a:hover { border: 1px solid #888; }
	#product-rating { text-align: center; }

#product-rhs { float: right; width: 650px; }

p.error   { position: relative; z-index: 300; margin-bottom: 10px; padding: 2px 5px; line-height: 16px; background: #d1b7b7 url(../images/sys_msg_error.gif) repeat-x; border: 1px solid #a70000; color: #333; }
p.success { position: relative; z-index: 300; margin: 10px; padding: 2px 5px; line-height: 16px; background: #b7c4b7 url(../images/sys_msg_success.gif) repeat-x; border: 1px solid #008000; color: #333; }

/**
 * Captcha box
 */
.captcha { float: left; margin-left: 10px; width: 207px; height: 77px; padding: 5px; background: #fff; border: 1px solid #888; -webkit-border-radius: 5px; -moz-border-radius: 5px; }
.captcha img { display: block; float: left; border: 0; }
.captcha img.captcha-img { margin-right: 5px; border: 1px solid #aaa; }
.captcha object { float: left; width: 19px; height: 19px; margin: 17px 0 5px 0; }

/**
 * Gallery style
 */
#content-body ul.gallery { list-style: none; margin: 0 0 10px 0; padding: 0; }
#content-body ul.gallery li { display: block; float: left; margin: 5px 10px; }
#content-body ul.gallery li a img { -moz-box-shadow: 2px 2px 2px #888; -webkit-box-shadow: 2px 2px 2px #888; box-shadow: 2px 2px 2px #888; }
#content-body ul.gallery li a:hover img { -moz-box-shadow: 2px 2px 2px #666; -webkit-box-shadow: 2px 2px 2px #666; box-shadow: 2px 2px 2px #666; }