html, body
{
    margin: 0;
    padding: 0;
}
body
{
    font: 12px/1.5em Arial, Helvetica, sans-serif;
    color: #525252;
    background-color: #ECEBD7;
}
h1, h2, h3, h4, h5
{
    margin: 0 0 16px;
    color: #3266CC;
}
h1{font: 24px Arial, Helvetica, sans-serif;}
h2{font: 20px Arial, Helvetica , sans-serif;}
h3{font-size: 16px; margin: 0 0 .5em;}
h4{font-size: 12px; margin: 0 0 .3em;}
p{margin: 0 0 1em;}
a,
a:link,
a:visited{color: #3266CC;}
a:hover,
a:active{color: #525252;}
a img{border: none;}
form{margin: 0;}
fieldset{padding: 0;}
ul{list-style-type: square; margin: 0 0 1em;}
p input,
dd input,
dd span{vertical-align: middle;}
hr
{
    height: 1px;
    border: none;
    color: #999;
    background-color: #999;
}
font{color: inherit;}

/* ~~~ === POSITIONG SELECTORS ======================================= ~~~ */
#richTextDescription{text-align: center;}
#richTextDescription h1
{
    height: 20px;
    margin: 0;
    color: #999;
    font-size: 11px;
    font-weight: normal;
}
#wrapper
{
    position: relative;
    width: 797px;
    margin: 0 auto;
    background: #fff url(../images/wrapper_bg.gif) repeat-y 6px 0;
}
#home #wrapper{background:#fff url(../images/wrapper_home_bg.gif) repeat-y 6px 0;}

#masthead
{
    height: 110px;
    padding: 4px 12px 12px;
    background: #fff url(../images/masthead_bg.gif) no-repeat 0 0;
}
#masthead h1
{
    position: absolute;
    top: 5px;
    left: 12px;
    margin: 0 0 8px;
}
#masthead h2
{
    position: absolute;
    top: 98px;
    right: 12px;
    font-size: 15px;
    font-weight: bold;
    margin: 0;
}
#masthead h2 a{text-decoration: none;}
#topNav
{
    position: absolute;
    top: 12px;
    left: 389px;
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#topNav li
{
    float: left;
    line-height: 42px;
    border-left: 1px dotted #ccc;
}
#topNav a
{
    display: block;
    float: left;
    padding: 0 16px;
    text-decoration: none;
}
#topNav a.cartLink
{
    background: url(../images/cart.gif) no-repeat 0 50%;
    padding: 0 12px 0 20px;
    margin-left: 16px;
    display: inline;
}
#cartSummary
{
    position: absolute;
    top: 24px;
    right: 12px;
    font-size: 11px;
}
#checkout-buttons
{
    position: absolute;
    top: 68px;
    right: 12px;

}
/* ~~~ === MAIN NAVIGATION ============================================  ~~~ */
#nav
{
    height: 34px;
    margin: 0 6px;
    background: #fff url(../images/nav_bg.gif) repeat-x 0 0;
}
#nav ul
{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#nav li{float: left; height: 33px;}
#nav a
{
    display: block;
    float: left;
    line-height: 33px;
    text-decoration: none;
    color: #fff;
    padding: 0 12px;
    background: url(../images/nav_link_bg.gif) repeat-x 0 0;
}
#nav li.active a,
#nav a:hover{background-position: 0 -33px;}
#productmenu{border-top: 1px solid #fff;}
#productmenu,
#productmenu ul
{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#productmenu{margin-bottom: 2em;}
#productmenu a
{
    display: block;
    width: 148px;
    line-height: 1.3em;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
    color: #3266CC;
    padding: 4px 8px 4px 22px;
    background: #D0DBEF url(../images/menu_plus.gif) no-repeat 8px 50%;
    border-bottom: 1px solid #fff;
}
#productmenu a:hover{background-color: #E2EBFA;}
#productmenu li.parent a{background-image: url(../images/menu_minus.gif);}
#productmenu li.parent li a{background-image: none;}
#productmenu li li a
{
    width: 138px;
    background-color: #EBF2FF;
    padding-left: 32px;
}
#productmenu li li a:hover{background-color: #F5F9FF;}

/* ~~~ === MAIN CONTENT AREA ========================================== ~~~ */
#content
{
    clear: both;
    overflow: auto;
    height: 100%;
    margin: 0 0 0 6px;
}
#leftcol
{
    width: 180px;
    float: left;
    padding: 12px 0;
}
#frmSearch input.input{width: 116px;}
#frmSearch p{margin: 0 12px;}
#frmSearch p input{vertical-align: middle;}
#frmSearch p label
{
    font-weight: normal;
    font-size: 11px;
}
#frmSearch #searchLink
{
    background: url(../images/icons/search.gif) no-repeat 0  50%;
    padding-left: 22px;
    margin: 4px 12px 1em;
}
#main
{
    width: 580px;
    float: left;
    padding: 12px;
    min-height: 400px;
}
#home #main{width: 411px;}
#rightcol
{
    width: 146px;
    float: right;
    display: inline;
    margin: 12px 12px 0 0;
}
#footer
{
    clear: both;
    position:relative;
    background: #fff url(../images/footer_bg.gif) no-repeat 0 100%;
    font-size: 11px;
    text-align: center;
    padding: 1px 0 12px;
}
    #footerLinks
    {
        border: 1px solid #769F05;
        background-color: #88BD2D;
        padding: 6px 12px;
        color: #769F05;
        text-align: left;
        margin: 0 6px .3em;
    }
    #footerLinks a{color: #fff;}
    #footer span.copyright{color: #999;}

/* ~~~ === SEARCH RESULTS =========================================== ~~~ */
#searchKeywords{font-weight: bold;}
#searchResults dl
{
    margin: 1em 0;
    padding-bottom: 1em;
    border-bottom: 1px dotted #ccc;
}
#searchResults dt{font-weight: bold;}
#searchResults dd{margin: 0;}
#searchResults div.pagination{padding: 2px 12px;}

/* ~~~ === SEARCH PAGE ============================================ ~~~ */
#siteSearch input.input{width: 200px;}

#siteSearch dt{width: 7em;}
#siteSearch dd{margin-left: 7em;}

/* ~~~ === PRODUCTS ================================================ ~~~ */
/* ~~~ === Category Listings page === ~~~ */
#categoryListingLeft
{
    width: 49%;
    float: left;
}
#categoryListingRight
{
    width: 49%;
    float: right;
}
#categoryListingLeft h3,
#categoryListingRight h3
{
    font-size: 12px;
    margin: 0 0 .3em;
    color: #525252;
    font-weight: normal;
    line-height: 1.3em;
}
#categoryListingLeft h3 a,
#categoryListingRight h3 a{font-weight: bold;}
#categoryListingLeft ul,
#categoryListingRight ul
{
    list-style-type: none;
    margin: .3em 0 .3em 1em;
    padding: 0;
}

/* ~~~ === Product Listings page === ~~~ */
#productListing
{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#productListing li
{
    float: left;
    display: inline;
    width: 131px;
    height: 168px;
    text-align: center;
    font-size: 11px;
    margin: 1px;
    padding: 4px;
}
#productListing h3
{
    font-size: 11px;
    margin: 0;
    line-height: 1.2em;
}
#productListing h3 a
{
    color: #525252;
    text-decoration: none;
}
#productListing a.image
{
    display: block;
    width: 90px;
    height: 90px;
    margin: 0 auto 4px;
    border: 1px solid #ccc;
    padding: 4px;
    background-color: #fff;
}
#productListing p
{
    margin: 0 0 .2em;
    line-height: 1.2em;
}
#productListing p.price{font-size: 12px; color: #3266CC;}
#productListing p.price em
{
    font-size: 11px;
    color: #525252;
}
#productListing h3 a:hover{text-decoration: underline;}

/* ~~~ === Pagination === ~~~ */
div.pagination
{
    clear: both;
    background-color: #ccc;
    font-size: 11px;
}
div.pagination select.input{font-size: 11px;}
div.pagination ul
{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
div.pagination li
{
    width: 175px;
    float: left;
    line-height: 34px;
    background-color: #ccc;
    padding: 0 8px;
}

/* ~~~ === PRODUCT DETAIL === ~~~ */
#productDetail{}
p.wasPrice
{
    color: #666;
    font-style: italic;
    font-weight: normal;
}
#productDetail p.nowPrice,
#productDetail p.price{font-size: 16px;}
#productDetail p.nowPrice em,
#productDetail p.price em{font-size: 12px;}
#productDetail h3 span
{
    display: block;
    font-size: 12px;
}
div.detailLeft
{
    width: 275px;
    float: left;
}
div.detailLeft img
{
    border: 1px solid #ccc;
    padding: 4px;
    margin-bottom: 12px;
    background-color: #fff;
}
div.detailLeft p.icon18 img
{
    float: left;
    margin: 0 4px 0 0;
    padding: 0;
    border: none;
}
div.detailLeft p.icon18
{
    font-size: 11px;
    font-style: italic;
    line-height: 1.3em;
    margin: 0 0 1em;
}
div.detailLeft p{margin: 0 0 .3em;}
div.detailLeft p.quantity
{
    clear: both;
    padding-top: 1em;
}
div.detailRight
{
    width: 298px;
    float: right;
}
/* ~~~ === FORMS =============================== ~~~ */
fieldset
{
    padding: 0 2em 2em;
    border: 1px solid #ccc;
    margin: 0 0 1em;
}
legend
{
    font-size: 14px;
    font-weight: bold;
    color: #3266CC;
}
label{font-weight: bold;}
label span{color: #ff0000;}
.input{font: 12px Arial, Helvetica, sans-serif;}
.formError,
.formRequired{color: #ff0000;}
#frmLogin dd{margin: 0;}
#frmLogin dd.button{margin: 4px 0;}

dl.formlist
{
    margin: 2em 0 1em;
    padding: 0;
}
dl.formlist dt
{
    clear: left;
    width: 6em;
    float: left;
}
dl.formlist dd{margin: 4px 0 4px 6em;}

/* ~~~ Form builder table styles ~~~ */
table.formbuilder thead th
{
    text-align: left;
    padding: 8px 4px;
}
table.formbuilder tbody th
{
    text-align: right;
    white-space: nowrap;
    width: 1%;
    padding: 2px 4px;
}
table.formbuilder tbody td{padding: 2px 4px;}
table.formbuilder input[type="text"]{width: 260px;}/* CSS 3 Selector for Browsers that support it */
table.formbuilder textarea{width: 260px;}

/* ~~~ === HOME PAGE =============================================================================== ~~~ */
#promos
{
    border-top: 1px dashed #B7B7B7;
    margin-top: 1em;
    padding: 1em 0 0;
    min-height: 200px;
    background: url(../images/promos_bg.gif) repeat-y 0 0;
}
#promos h3{text-align: center;}
#whats-new
{
    position: relative;
    width: 144px;
    height: 200px;
    overflow: hidden;
}
#web-specials
{
    width: 200px;
    float: right;
}
#whats-new-list,
#web-specials-list
{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#whats-new-list li,
#web-specials-list li
{
    text-align: center;
    width: 200px;
    line-height: 1.2em;
}
#whats-new-list h4,
#web-specials-list h4{line-height: 1.2em;}
#whats-new-list p,
#web-specials-list p
{
    margin: 0;
    font-size: 11px;
    line-height: 1.2em;
}
#whats-new-list img,
#web-specials-list img
{
    border: 1px solid #B7B7B7;
    padding: 4px;
    background-color: #fff;
}
#whats-new-list p.price,
#web-specials-list p.price
{
    font-weight: bold;
}
#whats-new-list p.price em,
#web-specials-list p.price em{font-weight: normal;}

#whats-new-list li
{
    width: 144px;
}

/* ~~~ === MEMBERS AREA ============================================================================ ~~~ */
/* ~~~ === Login page === ~~~ */
#signup
{
    width: 277px;
    float: left;
    padding: 0 12px 12px 0;
}
#login
{
    width: 266px;
    float: right;
    border-left: 1px solid #ccc;
    padding: 0 12px 12px;
}
/* ~~~ === REGISTER PAGE STEP 1 === ~~~ */
#frmRegister dt
{
    width: 12em;
    text-align: right;
}
#frmRegister dd
{
    margin-left: 12em;
    padding-left: 8px;
}
/* ~~~ === REGISTER PAGE STEP 2 === ~~~ */
#frmRegister2 dt
{
    width: 14em;
    text-align: right;
}
#frmRegister2 dd
{
    margin-left: 14em;
    padding-left: 8px;
}
/* ~~~ === CHANGE PASSWORD === ~~~ */
#frmChangePassword dt
{
    width: 16em;
    text-align: right;
}
#frmChangePassword dd
{
    margin-left: 16em;
    padding-left: 8px;
}
/* ~~~ === Forgot login page === ~~~ */
#frmForgottenLoginDetails dt
{
    width: 14em;
    text-align: right;
}
#frmForgottenLoginDetails dd
{
    margin-left: 14em;
    padding-left: 8px;
}
/* ~~~ === Sign in page (Checkout 1)=== ~~~ */
#frmSignIn dt
{
    width: 1.2em;
    text-align: right;
}
#frmSignIn dd
{
    margin-left: 1.2em;
    padding-left: 8px;
}
#otherNote
{
    position: relative;
    top: 14px;
    left: 0;
    margin: 0;
}
/* ~~~ === Checkout 2 page === ~~~ */
#frmCheckout2 dl.formlist dt
{
    width: 12em;
    text-align: right;
}
#frmCheckout2 dl.formlist dd
{
    margin-left: 12em;
    padding-left: 8px;
}
#deliveryDetails dt
{
    width: 7em;
    float: left;
    font-weight: bold;
    text-align: right;
    color: #3266CC;
}
#deliveryDetails dd
{
    margin:0 0 6px 7em;
    padding:0 0 6px 4px;
    border-bottom: 1px dotted #ccc;
}
#deliverTo{margin: 1em 0; text-align: center;}
p.recipentDetails
{
    padding: 1em 0 0;
    margin: 0;
}
/* ~~~ Checkout page 3 ~~~~ */
#totals{margin: 0 0 1em;}
#totals table.orderDetail tfoot th{padding: 2px 16px 2px 4px;}
#totals p
{
    margin: 0;
    text-align: right;
}

#ccdetails dt{width: 11em;}
#ccdetails dd{margin-left: 11em;}
.nowrap
{
    width: 1%;
    white-space: nowrap;
}

/* ~~~ === ORDER DETAIL PAGE ======================================================================= ~~~ */
table.orderDetail
{
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1em;
}
table.orderDetail thead th
{
    padding: 8px;
    background-color: #EEEFDF;
}
table.orderDetail tbody td
{
    padding: 4px 8px;
    border-bottom: 1px dotted #999;
}
table.orderDetail tfoot td
{
    padding: 2px 8px 2px 0;
    font-weight: bold;
    color: #3266CC;
}
table.orderDetail tfoot th{padding: 2px 0 2px 8px;}
#orderDetailTotals
{
    margin: 1em 0;
    text-align: right;
}
#orderDetailTotals p.note{font-size: 11px;}
#orderDetailTotals p.estPrice
{
    font-weight: bold;
    font-size: 14px;
}
#orderDetailTotals p.estPrice img{vertical-align: middle;}
#orderDetailTotals p.estPrice span{color: #3266CC;}

/* ~~~ === SITEMAP ================================================================================== ~~~ */
#sitemap{margin: 28px 14px;}
#sitemap h3
{
    background: url(../images/icons/base.gif) no-repeat 2px 0;
    margin: 16px 0 0 16px;
    padding:0 0 5px 18px;
    font: bold 12px Arial, Helvetica, sans-serif;
}

ul.sitemap
{
    list-style-type: none;
    margin: 0 16px 16px;
    padding: 0;
    background: url(../images/icons/line.gif) repeat-y;
}
ul.sitemap ul
{
    list-style-type: none;
    margin: 0 0 0 8px;
    padding: 0;
    background: url(../images/icons/line.gif) repeat-y;
}
ul.sitemap li
{
    line-height: 20px;
    padding-left: 7px;
    position: relative;
}
ul.sitemap a,
ul.sitemap li.lastchild li a
{
    background: url(../images/icons/page.gif) no-repeat 0 50%;
    padding: 4px 0 4px 26px;
}
.lastchild{background-color: #fff;}
li.lastchild a,
ul.sitemap li.lastchild li.lastchild a{background: #fff url(../images/icons/page_bottom.gif) no-repeat 0 0;}

/* ~~~ === JQMODAL WINDOWS ================================================================================ ~~~ */
.jqmWindow {
    display: none;
    position: fixed;
    width: 548px;
    margin-left: -274px;
    top: 7%;
    left: 50%;
    background:  url(../images/form_popup_top.gif) no-repeat 0 0;
}
#winRecipient
{
    width: 548px;
    margin-left: -274px;
    background:  url(../images/form_popup_top.gif) no-repeat 0 0;
}
.jqmOverlay{background-color: #000;}
div.formContainer
{
    margin-top: 6px;
    padding: 24px;
    background: #fff url(../images/form_bg.jpg) no-repeat 0 -6px;
}
div.formBottom
{
    height: 6px;
    background:  url(../images/form_popup_btm.gif) no-repeat 0 0;
}
table.tableForm thead th
{
    text-transform: uppercase;
    padding: 4px;
    text-align: left;
}
table.tableForm tbody td{padding: 2px 4px;}
table.tableForm tbody th
{
    padding: 2px 4px;
    text-align: right;
}
.button{font: bold 12px Arial, Helvetica, sans-serif;}

dl.formlist
{
    margin: 2em 0 1em;
    padding: 0;
}
.jqmWindow dl.formlist dt
{
    clear: left;
    width: 10em;
    float: left;
    text-align: right;
}
.jqmWindow dl.formlist dd{margin: 4px 0 4px 10em;}

/* ~~~ === IMAGE POPUP ========================================================================= ~~~ */
#iframeOverlay
{
    position: absolute;
    top: 0;
    left: 0;
}
#overlay
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #000;
    opacity: .5;
}
#imagePopupPositioner
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
#imagePopupContainer
{
    position: relative;
    width: 500px;
    margin: 0 auto;
}
#imagePopupTop
{
    height: 6px;
    background: url(../images/image_popup_top.gif) no-repeat 0 0;
}
#imageContainer
{
    background-color: #fff;
    padding: 41px 0;
}
#imagePopupBottom
{
    height: 6px;
    background: url(../images/image_popup_btm.gif) no-repeat 0 0;
}
#popupImage
{
    display: block;
    border: 1px solid #ccc;
    padding: 8px;
    background: #fff;
    margin: 0 auto;
}
#imageTitle
{
    position: absolute;
    top: 16px;
    left: 41px;
    font-weight: bold;
    margin: 0;
}
#close
{
    position: absolute;
    top: 16px;
    right: 41px;
    font-weight: bold;
}

/* ~~~ === CLASSES ============================== ~~~ */
.hide{display: none;}
.left{text-align: left;}
.center{text-align: center;}
.right{text-align: right;}
.clear{clear: both;}
.nowPrice{color: #3266CC;}
div.captionImageLeft,
div.captionImageRight
{
    font-size: .9em;
    color: #888;
}
div.captionImageLeft
{
    float: left;
    margin: 4px 12px 4px 0;
}
div.captionImageRight
{
    float: right;
    margin: 4px 0 4px 12px;
}
.img-left
{
    float: left;
    margin: 0 12px 4px 0;
}
.img-right
{
    float: right;
    margin: 0 0 4px 12px;
}
.border-none{border: none;}
.border-thin{border: 1px solid #000;}
.border-thick{border: 2px solid #000;}
