/*
-------------------------------------------------
URI: http://www.wfdenny.co.uk/
Created by Vince Lee (and Paul Ashcroft!!!!!) - Forte Trinity
-------------------------------------------------

CONTENTS

1: SITE MASTER SETUP (including reset from Tripoli)

2: TYPOGRAPHY/DESIGN 

3: LAYOUT
	3.1 main form
	3.2 container
	3.3 header
	3.4 content
	3.5 primary content
	3.6 secondary content
	3.7 tertiary content
	3.8 footer
	
4: GLOBAL ELEMENTS / CONTROLS
	4.1 accessibility
	
5: TEMPLATE / PAGE SPECIFIC
	
6: USEFUL CLASSES

/* -----------------------------------------------
1. SITE MASTER SETUP
----------------------------------------------- */

/* Imported mostly from Tripoli reset.css - http://www.monc.se/tripoli/css/reset.css */
* { margin:0; padding:0; text-decoration:none; outline:none } code, kbd, samp, pre, tt, var, textarea, input, select, isindex, listing, xmp, plaintext { font:inherit } a, img, a img, iframe, form, fieldset, abbr, acronym, object, applet, table { border:none } table { border-collapse:collapse; border-spacing:0 } caption, th, td, center { text-align:left; vertical-align:top } q { quotes:"" "" } font { color:inherit !important; font:inherit !important; color:inherit !important } marquee { overflow:inherit !important; -moz-binding:none } blink { text-decoration:none } nobr { white-space:normal }
/* end of import */
body { height:100%; text-align:center; min-width:775px; background:#fff  }
ul { list-style:disc outside }
ol { list-style:decimal outside }

/* -----------------------------------------------
2. TYPOGRAPHY / DESIGN
----------------------------------------------- */

html { font-size:62.5%; font-family:tahoma, arial, verdana, "microsoft sans serif", helvetica, sans-serif; line-height:1.4em; color:#000 }
code, kbd, samp, pre, tt, var, input[type='text'], input[type='password'], textarea { font-size:1.1em; font-family:monaco, "Lucida Console", courier, mono-space }
h1 { font-size:1.6em; color:#000; margin:0 0 12px 0 }
h2 { font-size:1.5em; color:#000; margin:0 0 12px 0 }
h3 { font-size:1.4em; color:#000; margin:0 0 12px 0 }
h4 { font-size:1.3em; color:#000; margin:0 0 12px 0 }
h5 { font-size:1.2em; color:#000; margin:0 0 12px 0 }
h6 { font-size:1.1em; color:#000; margin:0 0 12px 0 }
p {  font-size:1.2em; color:#000; margin:0 0 12px 0; line-height:150% }
p.firstpara { font-size: 1.3em; font-weight: bold; color:#0d5104 }
a { color:#579e20; text-decoration:none }
a:hover {  }
ul { margin:0 0 12px 0; font-size:1.1em }
ol { margin:0 0 12px 0; font-size:1.1em }
dl { margin:0 0 12px 0; font-size:1.1em }
hr { display:block; background:#aaa; color:#aaa; width:100%; height:1px; border:none }
address { font-size:1.1em; color:#000 }
blockqoute {  }
table { border-top:1px solid #ccc;  border-left:1px solid #ccc }
th, td { border-bottom:1px solid #ddd; border-right:1px solid #ccc }
fieldset { border:1px solid #ccc; }
legend { background:#fff; }
label { font-size:1.1em }
textarea, input[type='text'], select { width:210px; margin:5px 15px 5px 0; border:1px solid #cecece; padding:3px; font:12px/18px Arial, Verdana, Times, serif; color:#444; }


/* -----------------------------------------------
3. LAYOUT
----------------------------------------------- */

body { background:#0d5104 }

/* 3.1 - main form */
form.main { width:100%; height:100% }

/* 3.2 - container */
div#container { position:relative; text-align:center; width:100%; background:#0d5104 url(../images/backgrounds/bg.jpg) no-repeat 50% 0% }

/* 3.3 - wrapper */
div#wrapper { position:relative; text-align:left; width:960px; margin:0 auto; border-bottom: 5px solid white;border-left: 5px solid white; border-right: 5px solid white  }

/* 3.4 - header */
div#header { height:299px; background: url("../images/backgrounds/site-banner.jpg") no-repeat; padding-top:14px; position:relative }

/* 3.5 - content */
div#content { background:#fff; margin:0 auto; width:940px; padding:0 10px }

/* 3.6 - primary content */
div#primary-content { width:727px; margin:0; float:right }

/* 3.7 - secondary content */
div#secondary-content { width:213px; float:left }

/* 3.7 - tertiary content */
div#tertiary-content { margin-left:213px }

/* 3.8 - footer */
div#footer { width:960px; background:#6fa822 url("../images/backgrounds/footer.gif") no-repeat; margin:0; padding-top:120px; text-align:center; font-family:Georgia, "Times New Roman", Times, serif }

/* -----------------------------------------------
4. GLOBAL ELEMENTS / CONTROLS
----------------------------------------------- */

/* 4.1 - accessibility */
ul#skiplinks { display:none }
ul#skiplinks a, ul#skiplinks a:hover, ul#skiplinks a:visited { position:absolute; left:0px; top:-500px; width:1px; height:1px; overflow:hidden } 
ul#skiplinks a:active, ul#skiplinks a:focus { position:static; width:auto; height:auto }

ul#text-resizer { list-style:none; float:left }
ul#text-resizer li { float:left }

/* 4.2 - primary navigation */
ul#primary-navigation { list-style:none; display:inline; width:960px; position:absolute; top:237px; left:-30px }
ul#primary-navigation li { float:left; list-style:none; display:inline }
ul#primary-navigation a { height:42px; float:left; overflow:hidden }
ul#primary-navigation li a:hover { background-position:50% -42px; border-bottom:none }

#primary-nav-home {width:91px; text-indent:-3000px}
#primary-nav-home a {width:91px; background:url("../images/buttons/primary-navigation/home.gif") no-repeat; display:block}
#primary-nav-about-us {width:156px; text-indent:-3000px}	
#primary-nav-about-us a {width:156px; background:url("../images/buttons/primary-navigation/about.gif") no-repeat; display:block}
#primary-nav-product-catalogue {width:173px; text-indent:-3000px}
#primary-nav-product-catalogue a {width:173px; background:url("../images/buttons/primary-navigation/product-catalogue.gif") no-repeat; display:block}
#primary-nav-view-basket {width:124px; text-indent:-3000px}
#primary-nav-view-basket a {width:124px; background:url("../images/buttons/primary-navigation/view-basket.gif") no-repeat; display:block}
#primary-nav-terms {width:195px; text-indent:-3000px}
#primary-nav-terms a {width:195px; background:url("../images/buttons/primary-navigation/terms-and-conditions.gif") no-repeat; display:block}
#primary-nav-delivery {width:92px; text-indent:-3000px}
#primary-nav-delivery a {width:92px; background:url("../images/buttons/primary-navigation/delivery.gif") no-repeat; display:block}
#primary-nav-contact-us {width:129px; text-indent:-3000px}
#primary-nav-contact-us a {width:129px; background:url("../images/buttons/primary-navigation/contact-us.gif") no-repeat; display:block}

body.selected-home #primary-nav-home a, #primary-nav-home a:hover {background-position:50% -42px;}
body.selected-about-us #primary-nav-about-us a, #primary-nav-about-us a:hover {background-position:50% -42px;}
body.selected-product-catalogue #primary-nav-product-catalogue a, #primary-nav-product-catalogue a:hover {background-position:50% -42px;}
body.selected-view-basket #primary-nav-view-basket a, #primary-nav-view-basket a:hover {background-position:50% -42px;}
body.selected-faq #primary-nav-faq a, #primary-nav-faq a:hover {background-position:50% -42px;}
body.selected-terms #primary-nav-terms a, #primary-nav-terms a:hover {background-position:50% -42px;}
body.selected-delivery #primary-nav-delivery a, #primary-nav-delivery a:hover {background-position:50% -42px;}
body.selected-contact-us #primary-nav-contact-us a, #primary-nav-contact-us a:hover {background-position:50% -42px;}

/* 4.3 - secondary navigation */
ul#secondary-navigation { margin:0 26px; list-style:none; padding-bottom:30px; list-style:none }
ul#secondary-navigation li a { font-size:1.1em; color:#fff }
ul#secondary-navigation li a:hover { font-size:1.1em; color:#000 }
ul#secondary-navigation li ul { list-style:none; margin-left:5px!important }
ul#secondary-navigation li ul li a { color:#000; font-size:0.9em }
ul#secondary-navigation li ul li a:hover { color:#9e2020; text-decoration:underline }

/* 4.4 - footer links */
ul#footer-links { list-style:none; border:1px solid #fff; border-right:0; border-left:0; padding:5px 0  }
ul#footer-links li { display:inline; margin:0 0 0 0; padding:0 15px }
ul#footer-links li a { color:#fff; text-align:center; font-weight:bold }
ul#footer-links li a:hover { color:#000 } 

ul#footer-credits { list-style:none; color:#fff; width:900px; padding:20px 0 50px 0 }
ul#footer-credits li#credits-wfdenny { float:left; width:50%; text-align:left }
ul#footer-credits li#credits-forte { float:right; width:50%; text-align:right }
ul#footer-credits li a { color:#fff }
ul#footer-credits li a:hover { color:#fff; text-decoration:underline }

/* 4.5 - search engine script */
div#seo { margin:0 auto; width:940px; color:#fff; font-size:0.8em }
div#seo p { color:#fff; }
div#seo strong, em {color:#fff; font-weight:normal; font-style:normal }
div#seo a { color:#fff; }
div#seo h6 { color:#fff; font-size:1.4em }

/* 4.6 - contact details */
ul#contact-details { list-style:none; float:right; color:#fff; font-family:Georgia, "Times New Roman", Times, serif }
ul#contact-details li { text-align:right; margin-bottom:2px }
ul#contact-details li a { color:#fff }
ul#contact-details li a:hover { color:#fff; text-decoration:underline }

/* -----------------------------------------------
5. TEMPLATE/PAGE SPECIFIC
----------------------------------------------- */

/* 5.1 - typography */
h1.ttl-specialists { width:405px; height:165px; text-indent:-3000px; background:url("../images/titles/specialists.jpg") no-repeat; margin:0; float:left }
h1.ttl-customer { width:727px; height:118px; text-indent:-3000px; background:url("../images/titles/customer-registration.gif") no-repeat; margin:0 }
h1.ttl-past-orders { width:727px; height:118px; text-indent:-3000px; background:url("../images/titles/previous-orders.gif") no-repeat; margin:0 }
h1.ttl-favourites { width:727px; height:118px; text-indent:-3000px; background:url("../images/titles/favourites.gif") no-repeat; margin:0 }
h2.ttl-featured-products { width:727px; height:58px; text-indent:-3000px; background:url("../images/titles/featured-products.gif") no-repeat; margin:0 }
h2.new-customers { width:184px; height:25px; text-indent:-3000px; background:url("../images/titles/new-customers.gif") no-repeat; margin:0 }
h2.existing-customers { width:184px; height:25px; text-indent:-3000px; background:url("../images/titles/existing-customers.gif") no-repeat; margin:0 }
h3.ttl-product-search { width:213px; height:47px; text-indent:-3000px; background:url("../images/titles/product-search.gif") no-repeat; margin:0 }
h3.ttl-customer-login { width:213px; height:47px; text-indent:-3000px; background:url("../images/titles/customer_login_title.gif") no-repeat; margin:0 }
h4.ttl-biodegradable-products { width:362px; height:69px; text-indent:-3000px; background:url("../images/titles/biodegradable-products.gif") no-repeat; margin:0 }
h4.ttl-conventional-packaging { width:365px; height:69px; text-indent:-3000px; background:url("../images/titles/conventional-packaging.gif") no-repeat; margin:0 }

body.selected-about h1 { width:727px; height:117px; text-indent:-3000px; background:url("../images/titles/about.jpg") no-repeat; margin:0; }

body.selected-terms h1 { width:727px; height:117px; text-indent:-3000px; background:url("../images/titles/terms.jpg") no-repeat; margin:0; }

body.selected-delivery h1 { width:727px; height:117px; text-indent:-3000px; background:url("../images/titles/delivery.jpg") no-repeat; margin:0; }

body.selected-contact-us h1 { width:727px; height:117px; text-indent:-3000px; background:url("../images/titles/contact.jpg") no-repeat; margin:0; }

body.selected-product-catalogue h1 { width:727px; height:117px; text-indent:-3000px; background:url("../images/titles/product.jpg") no-repeat; margin:0; }
body.selected-product-catalogue #product-detail h1 { width:727px; height: inherit; background:url("../images/titles/blank.gif") no-repeat; margin:0; color: black; text-indent: 0px; padding: 39px 0 20px 39px; font-family: Georgia, "Times New Roman", Times, serif; font-size:  2.2em }
.basket h1 { width:727px; height:117px;  inherit; background:url("../images/titles/your-basket.gif") no-repeat; margin:0; color: black; text-indent: -3000px; }
.checkout h1 { width:727px; height:117px;  inherit; background:url("../images/titles/checkout.gif") no-repeat; margin:0; color: black; text-indent: -3000px; }
.confirm h1 { width:727px; height:117px;  inherit; background:url("../images/titles/confirm.gif") no-repeat; margin:0; color: black; text-indent: -3000px; }


div#related-products h2 { width:727px; height:58px; text-indent:-3000px; background:url("../images/titles/related-products.jpg") no-repeat; margin:0  }

/* 5.2 -  some layout bits */
div#main-cta { width:727px; background:url("../images/backgrounds/main-banner.jpg") no-repeat bottom left; padding-bottom:30px }
div#main-cta p { margin:0 293px 15px 39px; font-family:Georgia, "Times New Roman", Times, serif; font-size:1.2em; line-height:150%; color:#333 }

div#std-content { width:727px; background:url("../images/backgrounds/std-content-bg.gif") no-repeat bottom left; padding-bottom:30px }
div#std-content p , div#std-content li, div#std-content h3, div#std-content h2 { margin:0 39px 15px 39px; font-family:Georgia, "Times New Roman", Times, serif; font-size:1.2em; line-height:150%; color:#333 }
div#std-content li { font-size: 1.0em }
div#std-content ol { list-style: none }
div#std-content ol li ol { list-style: decimal }
div#std-content ul.products-list li p, div#std-content ul.products-list li h3, div#std-content ul.products-list li ul li { margin: 0px }
div#std-content ul.products-list li h3 { height: 100px }
div#std-content ul.products-list li { margin:0 24px 20px 0; }

div#product-search { width:213px; background:url("../images/backgrounds/product-search.jpg") no-repeat bottom left }

div#customer-login { width:213px; background:url("../images/backgrounds/customer-login-bg.jpg") no-repeat bottom left }

div#protx p { margin:12px 16px; font-size:1.1em; color:#666 }

div#featured-products, div#related-products { width:727px; background:url("../images/backgrounds/featured-products.jpg") no-repeat bottom left; float:left; padding-bottom:30px }
div.products h3 { margin:5px 0 0 10px; font-size:1.3em }
div.products p { margin:2px 10px 0 10px; font-size:1em }
div.products p span { color: red }

ul.products-list { list-style:none; margin:0 0 0 30px!important }
ul.products-list li { float:left; width:142px; margin:0 24px 20px 0; border:1px solid #c8c8c8; background:#fff; padding:2px }
ul.products-list li ul { margin:0; list-style:none }
ul.products-list li ul li { border:0; width:51px; margin:0; }

div#biodegradable-products { float:left; width:362px; background:url("../images/backgrounds/biodegradable-products.jpg") no-repeat bottom left }
div#biodegradable-products p, ul { margin-left:30px; margin-right:30px; font-size:1.1em; color:#666 }
p.out-of-stock { font-size: 0.8em; height: 56px; font-style: italic }
div#biodegradable-products ul li { list-style:none; margin-bottom:15px }
div#biodegradable-products a:hover { border-bottom:1px solid #579e20; color:#6ec829 }

div#conventional-packaging { float:right; width:365px; background:url("../images/backgrounds/conventional-packaging.jpg") no-repeat bottom left }
div#conventional-packaging p, ul { margin-left:30px; margin-right:30px; font-size:1.1em; color:#666 }
div#conventional-packaging ul li { list-style:none; margin-bottom:15px }
div#conventional-packaging a:hover { border-bottom:1px solid #579e20; color:#6ec829 }

li.left-link { float:left; text-align:left }
li.right-link { float:right; text-align:right }

/* 5.3 - forms */
div#product-search form { margin:-5px 23px 0 23px }
div#product-search form fieldset { border:none; margin:0; padding:0 }
div#product-search form ol li label { text-indent:-3000px; display:block; font-weight:normal; cursor:pointer; padding:0 }
div#product-search form ol li input  { width:158px; margin:0!important; padding:4px; font-family:tahoma, verdana, "microsoft sans serif", sans-serif; font-size:1.1em; color:#444; border:1px solid #b7d89b }
div#product-search form .form-button { width:71px; height:29px; margin:-18px 0 0 95px!important; border:0; color:#fff; font-family:helvetica, arial, verdana, "microsoft sans serif", sans-serif; font-size:1.4em }
div#product-search form ol { list-style:none }

div#product-detail { }
div#product-detail img { float: right; margin: 0px 39px 10px 10px }

div#product-detail ul { list-style: none; margin: 0; padding: 0 }
div#product-detail ul li { float: left; width: 120px; }
body.selected-product-catalogue a.back-to-parent { display: block; float: right; clear: both; margin-right: 50px }

div.products form { margin:10px 10px 0 10px; width: 100% }
div.products form fieldset { margin:0; padding:0; border:0 }
div.products form ul li label {  float: left; margin-right: 3px; text-align:left; display:block; font-weight:bold; cursor:pointer; padding:0; border:0; font-size:0.9em; font-family:tahoma, arial, verdana, "microsoft sans serif", sans-serif; color:#855385; }
div.products form ul li input { width:30px; padding:2px; margin:0 0 5px 0; background:#fff; border:1px solid #ddd; color:#666; font-family:tahoma, arial, verdana, "microsoft sans serif", sans-serif; font-size:0.9em }
div.products form .btn-add { width:48px!important; margin:0 0 0 0; border:0; float: right }
div.products form ul { margin:0; padding:0; }
div.products form ul li { margin:0; padding:0; width: 128px; }


div#customer-login form { margin:10px 10px 0 10px; width: 100% }
div#customer-login form fieldset { border:none; margin:0; padding:0 }
div#customer-login form legend { display: none }
div#customer-login form ul { margin: 0px 0px 0 13px; padding: 0px }
div#customer-login form ul li label { display:block; font-weight:normal; cursor:pointer; padding:0 }
div#customer-login form ul li input  { width:158px; margin:0!important; padding:4px; font-family:tahoma, verdana, "microsoft sans serif", sans-serif; font-size:1.1em; color:#444; border:1px solid #b7d89b }
div#customer-login form .form-button { width:71px; height:29px; margin:-3px 0 3px 95px!important; border:0; color:#fff; font-family:helvetica, arial, verdana, "microsoft sans serif", sans-serif; font-size:1.4em }
div#customer-login form ul { list-style:none }
div#customer-login ul#login-options { list-style: none; padding: 0px 3px 30px 3px }


/* 5.4 - buttons */
a.btn-view-products { display:block; width:150px; margin-left:220px; height:38px; text-decoration:none; background:url("../images/buttons/view-products.gif") top left; text-indent:-9000px }
a.btn-view-products:hover { background-position:50% -38px }

a.btn-text-smaller { display:block; width:22px; height:19px; text-decoration:none; background:url("../images/buttons/text-resizer/text-smaller.png") top left; text-indent:-9000px }
a.btn-text-smaller:hover { background-position:50% -19px }
a.btn-text-larger { display:block; width:22px; height:19px; text-decoration:none; background:url("../images/buttons/text-resizer/text-larger.png") top left; text-indent:-9000px }
a.btn-text-larger:hover { background-position:50% -19px }
a#checkout { background: url(../images/buttons/checkout.gif) no-repeat bottom; width: 159px; height: 47px; display: block; text-align: left; text-indent: -9999px; position: absolute; margin-top: 20px; right: 43px }
a#checkout:hover { background-position: top }

/* 5.5 - contact form */

#formHolder { margin: 0px 39px }
#formHolder h3 {font-size:14px; color:#000;}
#formHolder p { margin: 0px }
#formHolder span {color:#ff0000; font-style:italic}
#formHolder legend {margin:0; border:0; padding:0; background: #eceffc; font-size:14px; color:black; font-weight:bold}
#formHolder fieldset {margin-bottom:20px; border:none; padding:0;}
#formHolder fieldset.submit {margin-bottom:20px; border:none; padding:0 20px 0 0; text-align:right}
#formHolder label {width:140px; float:left; text-align:right; display:block; cursor:pointer; padding:9px 10px 0 0; font:12px/18px Arial, Verdana, Times,}
#formHolder input.text, #formHolder textarea, #formHolder select {width:210px; margin:5px 15px 5px 0; border:1px solid #cecece; padding:3px; font:12px/18px Arial, Verdana, Times, serif; color:#444;}
#formHolder input.required, #formHolder textarea.required, #formHolder select.required {width:210px; margin:5px 15px 5px 0; border:1px solid #ff0000; padding:3px; font:12px/18px Arial, Verdana, Times, serif; color:#444;}
#formHolder ol {margin:20px 0 0 0; padding:0}
#formHolder ol li {list-style:none; padding:2px 0; margin:0; }
#formHolder ol li.last {border:0 none}
#formHolder ol li input {margin:0 15px 0 0}
#formHolder ol li.chk label {margin:0 0 0 7px; float:none; padding:0; display:inline}
#formHolder ol li.chk input {margin:0 0 0 150px; border:0 none}

.selected-contact-us #tertiary-content { margin: 30px 20px 30px 233px }
.selected-contact-us #tertiary-content dl dt { float: left; margin-right: 1em }
.selected-contact-us #tertiary-content dl dd { font-weight: bold }
.selected-contact-us #tertiary-content dl dd address { font-style: normal }

#formHolder #error { display: none; background: red; border: 2px solid white; padding: 20px; margin-bottom: 20px; color: white; }
#formHolder #error.errorsFound { display: block }
#formHolder #error h4 {font-size:18px; color:#ff0000;}
#formHolder #error p {color:#333;}


#productCatList { list-style: none;margin: 0px; padding: 0px }
#productCatList li { margin: 0px; padding: 0px }

body.selected-view-basket #primary-content #std-content { padding-bottom: 110px }

table#basketContents { width: 647px; margin: 0px 39px }
table#basketContents th, table#basketContents td.edit { text-align: center }
table#basketContents th, table#basketContents td { padding: 5px;font-size: 1.4em }
table#basketContents fieldset { border: none }
table#basketContents legend, table#basketContents label { display: none }
table#basketContents td.edit { width: 100px }
table#basketContents td.price { text-align: right }
table#basketContents input[type=text] { width: 20px; float: left }

#customerDetails { list-style: none; margin: 20px 0; padding: 0 }
#customerDetails li { float: left; width: 140px; margin-right: 20px }
#customerDetails li h3 { font-size: 1.2em }
#customerDetails li dt { float: left; width: 80px; clear: left }

form#payment { background: none; clear: both; padding:20px 39px 0 0; text-align:right }


#inf_error { border: white; margin: 20px; color: red; display: none; font-size: 1.2em }
#inf_error.errorsFound { display: block }


#checkoutform li { clear: left }

#handle_favourite_form { width: 123px; margin-right: 50px; float: right; clear: right }
#handle_favourite_form legend { display: none }

#logged-in-options { list-style: none; }
#customer-login #logged-in-options { padding-bottom: 30px }

#past-orders { width: 640px; margin: 0 auto 20px auto }
#past-orders th { text-align: center; font-size: 14px }
#past-orders th.ra { text-align: right }
#past-orders th, #past-orders td { padding: 5px }
#past-orders form { margin: 0; padding: 0 } 

.double_column { width: 363px; float: left; margin: 0 0px }
.double_column label { text-align: left !important }

/* -----------------------------------------------
6. USEFUL CLASSES
----------------------------------------------- */

.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden }
.clr { overflow:hidden; clear:both; height:1px; margin-top:-1px }
.clr-left { clear: left }
.la { text-align:left }
.ra { text-align:right }
.ca { text-align:center }
.cl { clear:left }
.fl { float:left }
.fr { float:right }
.vt { vertical-align:top }
.vm { vertical-align:middle }
.vb { vertical-align:bottom }
.nb { border:0 none }
.floated-image { float:right; margin: 0px 39px 10px 10px; width: 220px }