html, body
{
    margin: 0;
    padding: 0;
}
body
{
    font: 12px/1.5em Arial, Helvetica, sans-serif;
    color: #000;
    background-color: #E6E5CC;
}
td{font-size: 12px;}
h1{}
h2
{
    font: 24px Arial, Helvetica, sans-serif;
    line-height: 1.3em;
    margin: 0 0 .5em;
    color: #5C5A38;
    letter-spacing: -1px;
}
h3
{
    font: bold 12px Arial, Helvetica, sans-serif;
    margin: .3em 0;
    color: #5C5A38;
}
h2 span{font-size: 16px; font-weight: bold; color: #BDBCA2;}
h4
{
    font-size: 1em;
    margin: 0;
}
p{margin: 0 0 1em;}
a,
a:link,
a:visited{color: #870E3D;}
a:hover,
a:active{color: #898869;}
a img{border: none;}
ul{list-style-type: square;}
li{line-height: 1em;}
form{margin: 0;}
fieldset{padding: 0;}
hr
{
    border: none;
    height: 1px;
    background-color: #ccc;
    color: #ccc;
}
abbr:hover{cursor: help;}

/* ~~~ === POSITIONING SELECTORS ============================================================= ~~~ */
#wrapper
{
    position: relative;
    width: 912px;
    margin: 0 auto;
}

/* ~~~ === MAIN HEADER ======================================================================== ~~~ */
#masthead
{
    height: 99px;
    background: url(../images/masthead_bg.gif) no-repeat 0 100%;
}
    #masthead h1
    {
        height: 62px;
        background: url(../images/hillsdenewines.gif) no-repeat 8px 6px;
        margin: 0;
        text-indent:-999em;
    }

#cartSearch
{
    position: absolute;
    top: 9px;
    right: 8px;
    z-index: 3;
    width: 549px;
    height: 53px;
    background: url(../images/cart_search_bg.gif) no-repeat 0 0;
}
    #miniCart
    {
        width: 234px;
        height: 53px;
        float: left;
        text-align: center;
        font-size: 11px;
        color: #fff;
    }
    #miniCart h3{margin-top: 8px;}
    #searchBox
    {
        width: 310px;
        height: 53px;
        float: right;
        text-align: right;
        padding-top: 4px;
    }
    #searchBox label{font-weight: bold; color: #5C5A38;}
    #searchBox p{margin: 4px 8px 4px 0;}
    #searchBox p input{vertical-align: middle;}

/* ~~~ === MAIN NAVIGATION ====================================================================== ~~~ */
#menu
{
    width: 912px;
    height: 37px;
    background: url(../images/menu_bg.gif) no-repeat 0 0;
    font: 12px Verdana, Arial, Helvetica, sans-serif;
}
    #menu ul
    {
        list-style-type: none;
        margin: 3px 0 0;
        padding: 0;
    }
    #menu li
    {
        float: left;
        display: inline;
    }
    #menu a
    {
        display: block;
        float: left;
        color: #E6E5CC;
        line-height: 25px;
        background: url(../images/menu_right.gif) no-repeat 100% 0;
        padding: 0 12px 0 0;
        text-decoration: none;
    }
    #menu a span
    {
    background:url(../images/menu_left.gif) no-repeat 0 0;
    display: block;
    line-height: 25px;
    padding-left: 12px;
    }
    #menu li.active a,
    #menu a:hover
    {
        color: #BDBCA2;
        background-position: 100% -31px;
        line-height: 31px;
    }
    #menu li.active a span,
    #menu a:hover span
    {
        background-position: 0 -31px;
        line-height: 31px;
    }
    #menu #home a
    {
        background: url(../images/menu_home_left.gif) no-repeat 0 0;
        padding: 0 0 0 12px;
    }
     #menu #home a span
     {
        background:url(../images/menu_home_right.gif) no-repeat 100% 0;
        display: block;
        line-height: 31px;
        padding: 0 12px 0 0;
     }
     #menu #about-us a span
     {
        background-position: 0 -31px;
        line-height: 31px;
     }
     #menu #contact-us a,
     #menu #contact-us a span,
     #menu #about-us a
     {
        background: transparent;
        line-height: 31px;
     }

/* ~~~ === MAIN CONTENT AREA ==================================================================================== ~~~ */
#content
{
    position: relative;
    width: 897px;
    margin: 0 auto;
}
#content li{margin: .5em 0;}
#leftcol
{
    position: absolute;
    top: 0;
    left: 1px;
    width: 138px;
    background: #BDBCA2 url(../images/leftmenubottom.gif) no-repeat 0 100%;
    padding-bottom: 5px;
}
    #leftcol dl
    {
        margin: 0;
        padding: 9px 0;
        font: 11px Verdana, Arial, Helvetica, sans-serif;
    }
    #leftcol dt
    {
        margin: 4px 0 2px;
        font: bold 12px Arial, Helvetica, sans-serif;
        color: #5C5A38;
        letter-spacing: 1px;
        padding: 0 9px;
    }
    #leftcol dd
    {
        margin: 0;
        line-height: 1.8em;
        padding: 0 9px;
    }
    #leftcol dd.active{background-color:#E6E5CC;}
    #leftcol a{color: #fff;}
    #leftcol a:hover{color: #870E3D;}
    #leftcol dd.active a{color: #5C5A38;}


#main
{
    width: 751px;
    clear: both;
    margin: 0 0 0 146px;
    min-height: 460px;
    background-color: #fff;
}
    #main h2
    {
        background-color: #E6E5CC;
        margin: 0;
        padding: 8px 0 8px 12px;
    }
    #main .copy
    {
        margin: 16px 12px;
        padding: 0;
    }

/* ~~~ === FOOTER ================================================================================================== ~~~ */
#footer
{
    clear: both;
    margin: 0 0 0 146px;
    font-size: 10px;
    color: #BDBCA2;
}
#footer p{margin: 0;}
#footer a{color: #BDBCA2; text-decoration: none;}
#footer a:hover{color: #898869; text-decoration: underline;}


/* ~~~ === HOME PAGE STYLES ========================================================================= ~~~ */
.homeLeft
{
    float: left;
    width: 245px;
    text-align: center;
}
.homeLeft img{border: 1px solid #BDBCA2; margin: 0 0 1em;}
.homeLeft p
{
    text-align: left;
    margin: 0 0 1em 0;
    border: 1px solid #BDBCA2;
    background-color: #E6E5CC;
    padding: 3px 8px 4px;
}
.homeRight
{
    float: right;
    width: 464px;
}
#main .copy hr.hide
{
    display: block;
    clear: both;
    background-color: #fff;
    color:#fff;
    margin: 0;
}
#wineOfTheMonth{font-size: 11px;}
/*
#wineOfTheMonth img{border: 1px solid #BDBCA2;}
*/
#wineOfTheMonth dt
{
    text-align: left;
    font-size: 12px;
    font-weight: bold;
}
#wineOfTheMonth h3
{
    height: 24px;
    background: url(../images/doug_heading2.gif) no-repeat 0 0;
    margin: 0 0 .5em;
    text-indent: -9999em;
}
#wineDetail img
{
    float: right;
    border: none;
}

#wineOfTheMonth dd{margin: 0;}
#wineDetail
{
    padding: 0 0 6px 12px;
    vertical-align: top;
}

/* ~~~ === PRODUCT LISTINGS ==================================================== ~~~ */
.twoColumnThumb
{
    width: 50%;
    float: left;
}
.twoColumnThumb tr{vertical-align: top;}

.twoColumnThumb td.image
{
    width: 1%;
    padding: 0  6px 12px;
    text-align: center;
}
.twoColumnThumb p{margin: 0 0 2px; line-height: 1.3em;}
.twoColumnThumb a img
{
    padding: 6px;
    border: 1px solid #BDBCA2;
}

.twoColumnThumb a:hover img{border: 1px solid #898869;}

.thumb
{
    width: 218px;
    float: left;
    text-align: center;
    margin-bottom: 1em;
    padding: 12px;

}
.thumb h3{font: bold 12px Arial, Helvetica, sans-serif;}
.thumb p{margin: 0 0 2px; line-height: 1.3em;}
.thumb a img
{
    padding: 6px;
    border: 1px solid #BDBCA2;
}
.thumb a:hover img{border: 1px solid #898869;}
.thumb span
{
    white-space: nowrap;
    color: #898869;
}
.thumb span a,
.thumb span a:link,
.thumb span a:visited
{
    font-weight: bold;
    color: #898869;
}
.thumb span a:hover,
.thumb span a:active{color: #870E3D;}


/* ~~~ LISTS ~~~ */
ul.contactDetails
{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
ul.contactDetails li{font-weight: bold;}
#stockOnlyProducts
{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#stockOnlyProducts li
{
    /*float: left;
    width: 25%;
    height: 24px;*/
    line-height: 24px;
    font-weight: bold;
    color: #870E3D;
}
#stockOnlyProducts li span{color: #000;}

/* ~~~ PAGINATION ~~~ */
.paginationTop{text-align: center;}
.paginationBtm
{
    clear: both;
    text-align: center;
}
.previous{float: left;}
.next{float: right;}
.previous,
.next,
.backLink{font-weight: bold;}
.previous b,
.next b,
.backLink b{font-size: 14px;}



/* ~~~ === PRODUCT DETAILS ======================================================== ~~~ */
dl.productDetails dt
{
    width: 50px;
    float: left;
    font-weight: bold;
}
dl.productDetails dd{margin: 0;}
h3.productHeading{font: bold 16px Arial, Helvetica, sans-serif;}
a.noImage,
span.noImage
{
    display: block;
    float: left;
    border: 1px solid #BDBCA2;
    margin: 0 12px 4px 0;
    font-weight: bold;
    text-align: center;
}
a.noImage
{
    width: 100px;
    height: 100px;
    float: none;
    margin: 0 auto;
}
span.noimage
{
    width: 350px;
    height: 350px;
    line-height: 350px;
}

/* ~~~ === ORDER DETAIlS ================================================================ ~~~ */
table.tableOrder
{
    border-collapse: collapse;
    border: 1px solid #EBEBEB;
    width: 100%;
    margin: 0 0 1em;
}
table.tableOrder thead th
{
    padding: 8px;
    border-bottom: 1px solid #EBEBEB;
    font: bold 14px Arial, Helvetica, sans-serif;
    background-color: #F2F2F2;
    color: #5C5A38;
}
table.tableOrder tbody td
{
    padding: 10px;
    border-bottom: 1px solid #EBEBEB;
}
table.tableOrder .image
{
    width: 1%;
    text-align: center;
}

/* ~~~ === ORDER CONFIRMATION ==================================================== ~~~ */
table.orderConfirmation
{
    border: 1px solid #EBEBEB;
    border-collapse: collapse;
    margin: 1em 0;
    width: 100%;
}
table.orderConfirmation tbody th
{
    white-space: nowrap;
    width: 1%;
    padding: 4px 4px 4px 24px;
    text-align: left;
}
table.orderConfirmation tbody td
{
    padding: 4px 24px 4px 4px
}
table.orderConfirmation tbody th,
table.orderConfirmation tbody td{border-bottom: 1px solid #EBEBEB;}

/* ~~~ === FORMS ====================================================== ~~~ */
fieldset{border:none;}
legend
{
    font-weight: bold;
    color: #5C5A38;
    font-size: 14px;
}
table.formtable
{
    border: 1px solid #EBEBEB;
    margin: 1em 0;
    width: 100%;
}
table.formtable thead th,
table.formtable tbody th
{
    font-weight: bold;
    text-align: left;
    padding: 4px 4px 4px 24px;
    white-space: nowrap;
    width: 1%;
}
table.formtable tbody td p{margin: 0;}
table.formtable tbody td{padding: 4px 24px 4px 4px}
table.formtable tbody td span{font: 11px Arial, Helvetica, sans-serif; color: #666;}
table.formtable tbody td span,
table.formtable tbody td input{vertical-align: middle;}
table.formtable tbody td.padTop,
table.formtable tbody th.padTop{padding-top: 16px;}
table.formtable tbody td.padLeft{padding-left: 24px;}
table.formtable tbody td.padLeftTop{padding-top: 16px; padding-left: 24px;}
table.formtable tbody td.padLeftBottom{padding-bottom: 16px; padding-left: 24px;}
table.formtable tbody td.padBottom,
table.formtable tbody th.padBottom{padding-bottom:16px;}
table.formtable tbody th.padTopBottom,
table.formtable tbody td.padTopBottom{padding-top: 16px; padding-bottom: 16px;}
table.formtable tbody td.padLeftTopBottom{padding: 16px 4px 16px 24px;}
table.formtable tfoot td{padding: 4px 4px 16px 0;}
table.formtable tbody td.noPad{padding: 0;}
.input,
.isEmail
{
    font: 12px Arial, Helvetica, sans-serif;
    border: 1px solid #898869;
    background-color: #F2F2F2;
}
.input:focus,
.isEmail:focus
{
    font: 12px Arial, Helvetica, sans-serif;
    border: 1px solid #898869;
    background-color: #fff;
}
.invalid
{
    border: 1px solid red;
    background-color: #FDEBEB;
}
.button{font: bold 12px Arial, Helvetica, sans-serif;}
label span{color: #870E3D;}
ul.radioList
{
    margin: 0 2em;
    padding: 0 2em;
}
ul.radioList,
ul.radioList li{list-style-type: none;}

#frmMailingList p,
#frmSearch p
{
    margin:2px 8px 0 0;
    line-height: 1em;
}



/* ~~~ === CLASSES ============================== ~~~ */
.center{text-align: center;}
.right{text-align: right;}
.clear{clear: both;}
span.special{color: #870E3D; font-weight: bold;}
div.divider hr.dotted{display: none;}
div.divider
{
    height: 1px;
    background: url(../images/dottedline.gif) repeat-x 0 0;
    margin: 1em 0;
}
.dotted{background: url(../images/dottedline.gif) repeat-x 0 0;}
.hide{display: none;}
.img-left
{
    float: left;
    border: 1px solid #898869;
    padding: 8px;
    background-color: #fff;
    margin: 0 12px 4px 0;
}
.img-right
{
    float: right;
    border: 1px solid #898869;
    padding: 8px;
    background-color: #fff;
    margin: 0 0 4px 12px;
}

