@charset "utf-8";

/*
 * Default formatting
 */

html body {
    width: 100%;
    margin: 0px 0px;
}

body
{
    font: 62.5% Arial, Helvetica, sans-serif;
    color: #333333;
    background: #23321b url('../images/bg.gif') repeat-x left top;
}

h1, h2, h3, h4, h5, h6, h7, p
{
    margin: 0px;
    padding: 5px 0px;
}

h1, .pageHeading
{
    color: #4b663e;
    font-size: 1.4em;
    font-weight: bold;
    text-decoration: none;
    text-transform: uppercase;
    padding: 0px;
    margin: 10px 0px;
}

h2, .infoBoxHeading
{
    font-size: 1.2em;
    color: #73b84d;
    font-weight: normal;
    font-style: italic;
    text-decoration: none;
    text-transform: capitalise;
    padding: 0px 0px 5px;
}

h3
{
    font-size: 1.1em;
    color: #333333;
    font-weight: bold;
    text-decoration: none;
}

h4
{
    font-size: 1.2em;
    color: #4b663e;
    font-weight: normal;
}

h5
{
    font-size: 1em;
    font-weight: bold;
    text-transform: uppercase;
}

a
{
    color: #73b84d;
    text-decoration: none;
}

a:hover
{
    color: #4b663e;
    text-decoration: none;
}

img
{
    border: 0px;
}

.left
{
    float: left;
}

.right
{
    float: right;
}

.content {
    font-size: 1.2em;
}

/*
 * Styling and page layout
 */

#wrapper {
    width: 900px;
    position: relative;
    min-height: 500px;
    margin: 30px auto;
    background-color: #fff;
}

#top {
    background: #4b663e url('../images/top_bg.gif') repeat-x left top;
    position: relative;
    height: 40px;
    padding: 0px 10px;
}

    #cartinfo {
        line-height: 40px;
        color: #ffffff;
        font-size: 1.1em;
        margin: 0px auto;
        text-align: center;
    }
    
    #cartinfo a {
        color: #ecee6a;
    }
    
    #cartinfo a:hover {
        color: #73b84d;
    }
    
    #cartinfo img {
        margin: 0px 5px 4px;
        vertical-align: middle;
    }
    
    #cartinfo span {
        color: #ecee6a;
        font-weight: bold;
    }

#banner {
    position: relative;
    height: 223px;
    background-color: #fff;
}

    #splash {
        position: absolute;
        left: 0px;
        top: 0px;
    }
    
    #logo {
        position: absolute;
        right: 0px;
        top: 0px;
    }

#nav {
    background: #4b663e url('../images/nav_bg.gif') repeat-x left top;
    height: 50px;
    padding: 0px 10px;
    position: relative;
}

    #nav ul, #nav ul li {
        padding: 0px;
        margin: 0px;
        list-style: none;
    }
    
    #nav ul li {
        float: left;
    }
    
    #nav ul li a {
        display: block;
        line-height: 40px;
        padding: 0px 14px;
        color: #fff;
        font-size: 1.4em;
    }
    
    #nav ul li a:hover {
        color: #ecee6a;
    }

#inner {
    padding: 10px 30px;
}

#side {
    width: 200px;
    float: left;
}

#middle {
    width: 630px;
    float: left;
}

#footer {
    clear: both;
    padding: 20px 0px 10px;
}

    #payment {
        float: left;
        width: 200px;
        height: 40px;
    }
    
    #legal {
        float: left;
        width: 625px;
        height: 40px;
        line-height: 40px;
        text-align: center;
        color: #999;
        font-size: 1.1em;
    }

/*
 * Category list
 */

#category-list, #category-list li {
    padding: 0px;
    margin: 0px;
    list-style: none;
}

#category-list li {
    font-size: 1em;
    line-height: 2em;
    margin-left: 5px;
    padding-left: 15px;
    background: transparent url('../images/bullet.gif') no-repeat left 9px;
}

#category-list a {
    color: #333;
}

#category-list a:hover {
    color: #73b84d;
}

    #category-list li ul {
        padding-left: 0px;
        margin-left: 5px;
        font-size: .9em;
        font-style: italic;
    }

    #category-list li ul li {
        margin-left: 0px;
        padding-left: 0px;
        background: none;
    }

#category-list li.selected>a {
    font-weight: bold;
}

/*
 * Product listing
 */

#productList {
    
}

.product {
    width: 200px;
    height: 230px;
    margin: 0px 5px 10px 0px;
    padding: 1px;
    border: 1px solid #cde4b6;
    float: left;
    overflow: hidden;
}

    .product h2 {
        font-size: 1em;
        text-transform: uppercase;
        font-weight: bold;
        font-style: normal;
        color: #333;
        background-color: #edf4e7;
        padding: 8px 6px;
        min-height: 30px;
    }
    
        .product h2 a {
            color: #333;
        }
        
        .product h2 a:hover {
            color: #73b84d;
        }
    
    .product .product-image {
        text-align: center;
        padding: 4px 0px 2px;
        min-height: 95px;
    }
    
    .product .product-blurb {
        font-size: .9em;
        padding: 0px 5px;
        height: 50px;
        overflow: auto;
    }
    
    .product .product-tools {
        padding: 4px 2px;
    }
    
    .product .product-price {
        font-size: 1.4em;
        font-weight: bold;
        color: #666;
        text-align: center;
        width: 70px;
        float: left;
        line-height: 23px;
    }
    
    .product .product-add {
        float: right;
    }
    
    .product .product-more {
        float: right;
    }

/*
 * Misc overwrites
 */

.smallText {
    font-size: .9em;
}

.pageHeading .smallText {
    background: none;
    font-size: .8em;
    font-weight: normal;
    padding: 0px;
}

.inputRequirement {
    color: #f00;
    font-size: .9em;
    font-weight: bold;
}

.productListing-heading {
    font-size: 1.1em;
    color: #4B663E;
    background-color: #f8f8f8;
    border-right: 1px solid #fff;
    font-weight: normal;
    font-style: italic;
    text-decoration: none;
    text-transform: capitalise;
    padding: 5px;
}

.productListing-data {
    vertical-align: middle;
}

.categoryName {
    background-color: #EDF4E7;
    padding: 10px;
}

.categoryName a {
    font-size: 1.2em;
    color: #4B663E;
    
}

.categoryName a:hover {
    color: #333;
}

.messageStackError {
    color: #f33;
    font-size: 1.1em;
}

.productSpecialPrice {
    color: #c33;
}

/*
 * Capping
 */

.leftcap, .rightcap {
    position: absolute;
    top: 0px;
    left: 0px;
    background: transparent url('../images/top_left.gif') no-repeat left top;
    width: 10px;
    height: 40px;
}

.rightcap {
    right: 0px;
    left: auto;
}

    #wrapper>.leftcap, #wrapper>.rightcap {
        top: auto;
        bottom: 0px;
        height: 10px;
    }

    #wrapper>.leftcap {
        background-image: url('../images/page_left.gif');
    }
    
    #wrapper>.rightcap {
        left: auto;
        right: 0px;
        background-image: url('../images/page_right.gif');
    }
    
    #top .leftcap { }
    
    #top .rightcap {
        background-image: url('../images/top_right.gif');
    }
    
    #nav .leftcap, #nav .rightcap {
        height: 50px;
    }
    
    #nav .leftcap {
        background-image: url('../images/nav_left.gif');
    }
    
    #nav .rightcap {
        background-image: url('../images/nav_right.gif');
    }

/*
 * Testimonials
 */

.testimony {
    border: 1px solid #efefef;
    padding: 5px 10px;
    margin: 0px 0px 5px;
}

.testimony-info {
    position: relative;
}

    .testimony-by {
        font-size: 1.4em;
        color: #73B84D;
        font-weight: normal;
        font-style: italic;
    }

    .testimony-date {
        position: absolute;
        right: 0px;
        top: 0px;
        font-size: 1em;
        font-weight: bold;
    }

.testimony-content {
    font-size: 1.2em;
}

    .testimony-content h3 {
        font-size: 1em;
        margin: 5px 0px 0px;
        padding: 0px;
    }

/*
 * Hax (don't look here)
 */
 
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.clearfix {
    display: inline-block;
}

html[xmlns] .clearfix {
    display: block;
}

* html .clearfix {
    height: 1%;
}