/* Eric Meyer CSS Reset
-------------------------------------------------------------------------------- */
html,body,div,span,applet,iframe,
h1,h2,h3,h4,h5,h6,embed,object,
p,blockquote,pre,a,abbr,acronym,address,
big,cite,code,del,dfn,em,font,img,ins,
kbd,q,s,samp,small,strike,strong,sub,sup,
tt,var,dl,dt,dd,ol,ul,li,fieldset,form,
label,legend,table,caption,
tbody,tfoot,thead,tr,th,td { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: "Adobe Garamond", Times, Georgia, "Times New Roman", serif; vertical-align: baseline; }
body { line-height: 1; color: #333; background: white; }
table { border-collapse: collapse; border-spacing: 0; }
caption,th,td { text-align: left; font-weight: normal; }
blockquote:before,blockquote:after,q:before,q:after { content: ""; }
blockquote,q { quotes: "" ""; }
a { outline: none; text-decoration: none; font-size: 1.00em !important; }
a:hover { text-decoration: underline; }
strong { font-weight: bold; }
em { font-style: italic; }

/* Tabs
-------------------------------------------------------------------------------- */
ul.tabs { margin: 0; padding: 0; }
ul.tabs li { float: left; list-style: none; margin: 0; padding: 0; }
ul.tabs li a { float: left; display: block; }
ul.tabs:after { content:  "."; display: block; height: 0; clear: both; visibility: hidden; }
ul.tabs { zoom: 1;  } /* IE */

/* Clearing floats without extra markup
-------------------------------------------------------------------------------- */
.container { display: inline-block; }
.container:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
* html .container { height: 1%; }
.container { display: block; }

body { background: url(/images/header_bg.gif) no-repeat center top; }
#page { position: relative; margin: 0 auto; width: 950px; }

h1,h2,h3,h4,h5,h6 { margin-bottom: 10px; font-weight: normal; font-style: italic; color: #111; }
h2 { margin-bottom: 20px; font-size: 30px; }
p { margin: 0 0 12px 0; font-size: 0.78em; line-height: 1.40em; color: #333; letter-spacing: .5px; }
a { color: #c7692e; }

ul { padding-left: 20px; font-size: 0.82em; line-height: 1.40em; color: #111; }
li { margin: 5px 0; }

table { margin: 0 0 9px 0; font-size: 14px; line-height: 1.40em; color: #7f5e49; }
th { padding: 2px 10px; border: 1px solid #ebd2ca; font-weight: bold; font-style: italic; }
td { padding: 2px 10px; border: 1px solid #ebd2ca; }

.more { font-weight: bold; font-style: italic; }

/* CORE
-------------------------------------------------------------------------------- */
#header { position: relative; height: 150px; }
#header .tabs { position: absolute; top: 0; right: 0; width: 510px; height: 130px; font-size: 0.78em; text-transform: uppercase; z-index: 10; }
#header .tabs li { margin: 0; padding-top: 90px; font-size: 12px; line-height: 12px; background-repeat: no-repeat; background-position: 0px 90px; }
#header .tabs li a { padding: 10px 0px 18px 0px; color: #111; text-decoration: none; display: block; text-indent: -9999px; }
#header .tabs li a:hover { background: url(/images/nav_hover.gif) 50% 32px no-repeat; }
#header .tabs li a.on { background: url(/images/nav_on.gif) 50% 32px no-repeat; }

li.order { background-image: url(/images/navigation/nav_order.gif); }
li.order a { width: 78px; }
li.thechocolates { background-image: url(/images/navigation/nav_thechocolates.gif); }
li.thechocolates a { width: 156px; }
li.thechef { background-image: url(/images/navigation/nav_thechef.gif); }
li.thechef a { width: 103px; }
li.news { background-image: url(/images/navigation/nav_news.gif); }
li.news a { width: 71px; }
li.aboutus { background-image: url(/images/navigation/nav_aboutus.gif); }
li.aboutus a { width: 102px; }

#header h1 { position: absolute; margin: 0; width: 320px; top: 40px; left: 0px; background: url(/images/logo_reflection.gif) left bottom no-repeat; z-index: 9; }
#header h1 a { display: block; padding-top: 110px; height: 0; background: url(/images/logo.gif) no-repeat; overflow: hidden; }

#body { padding: 30px 0; background: url(/images/logo_reflection.gif) 0 0 no-repeat;}

#footer { width: 100%; text-align: center; padding: 10px 0 5px 0; }
#footer .tabs { font-size: 0.80em; text-transform: lowercase; }
#footer .tabs li { font-size: 1.00em; line-height: 15px; }
#footer .tabs li a {   margin: 8px 0 0 25px; color: #aaa; text-decoration: none; }
a#footer-left-margin { margin-left: 14.89em !important; }
#footer .tabs li a:hover { text-decoration: underline; }
#seal { margin: auto; width: 100px; }

#flash_notice { position: absolute; top: 10px; left: 35%; margin: 0 auto; width: 390px; background: url(../images/flash_bg_top.gif) no-repeat top left; z-index: 9; }
#flash_notice p { margin: 0; padding: 3px; background: url(../images/flash_bg_bottom.gif) no-repeat bottom left; color: #fff; text-align: center; }

/* HOME PAGE
-------------------------------------------------------------------------------- */
#home_page #body { height: 220px; }
#home_page #flash { position: absolute; top: 130px; left: 30px; }

/* ORDER PAGES
-------------------------------------------------------------------------------- */
#sidebar { float: left; padding: 25px 19px 25px 0; margin-right: 10px; width: 210px; border-right: 1px solid #ddd; }
#sidebar, #sidebar li ul { list-style: none; font-size: 0.90em; line-height: 1.35em; font-style: italic; }
#sidebar li ul { margin: 5px 0 20px 0; padding: 0; }
#sidebar li { margin: 5px 0; padding-left: 10px; font-weight: bold; text-align: right; }
#sidebar li ul li { margin: 0; font-weight: normal; }
#sidebar li ul li a { color: #996849; }
#sidebar a { display: block; padding: 0; color: #22110a; text-decoration: none; }
#sidebar a:hover { text-decoration: underline; }

#wrapper { float: left; width: 710px; }

#checkout { padding: 15px 0 0 615px; width: 325px; }
#checkout p { color: #844130; font-size: 0.87em; line-height: 1.60em; font-style: italic; }
#checkout .view_cart { position: absolute; top: 15px; right: 100px; display: block; padding-top: 29px; height: 0; width: 95px; background: url(/images/buttons/view_cart.gif) no-repeat; overflow: hidden; z-index: 999; }
#checkout .checkout { position: absolute; top: 15px; right: 0; display: block; padding-top: 29px; height: 0; width: 95px; background: url(/images/buttons/checkout.gif) no-repeat; overflow: hidden; z-index: 999; }

#category_hero img { float: left; }
#category_hero div { float: left; margin-left: 10px; width: 230px; }
#category_hero div h2 { margin-bottom: 4px; font-size: 1.37em; line-height: 1.40em; }

.category_list .category { float: left; padding-right: 9px; padding-top: 20px; width: 230px; height: 220px; border-bottom: 1px solid #ddd;  border-right: 1px solid #ddd; }
.category_list .end { padding-right: 0; border-right: none; }
.category_list .bottom { border-bottom: 1px solid #fff; }
.category_list .category img {}
.category_list .category h3 { margin: 0; text-align: center; }
.category_list .category h3 a { color: #22110a; }
.category_list .category .more { text-align: center; }

.product_list { margin: 10px 0 20px 0; }
.product_list .product { float: left; width: 350px; height: 130px; border-bottom: 1px solid #ddd; border-right: 1px solid #ddd; }
.product_list .bottom { border-bottom: 1px solid #fff; }
.product_list .even { border-right: none; }
.product_list .product .thumb { display: block; float: left; margin: 10px 10px 0 10px; width: 110px; height: 110px; overflow: hidden; }
.product_list .product div.description { float: left; margin: 10px 10px 0 0; width: 210px; }
.product_list .product h3 { margin: 6px 0 5px 0; font-size: 18px; line-height: 20px; color: #844130; }
.product_list .product h3 a { color: #22110a; }
.product_list .product .more { margin-bottom: 5px; }
.product_list .product .add_to_cart { float: left; margin: 0 10px 0 0; }
.product_list .product .price { display: block; float: left; margin-top: 2px; font-size: 14px; font-weight: bold; color: #996849; }

#chocolate_bar_order_page .product_list .product { height: 150px; }

#product_detail img { float: left; margin: 10px 10px 0 10px; }
#product_detail div { float: left; margin: 10px 10px 0 0; width: 210px; }
#product_detail h2 { margin: 6px 0 5px 0; font-size: 18px; line-height: 20px; color: #22110a; }
#product_detail .add_to_cart { float: left; margin: 0 10px 0 0; }
#product_detail .price { display: block; float: left; margin-top: 2px; font-size: 14px; font-weight: bold; color: #996849; }
#product_detail .back { margin-top: 60px; padding: 0 0 0 19px; background: url(/images/back.gif) 0 1px no-repeat; clear: both; font-size: 13px; }

/* Misc buttons */
.add_to_cart { display: block; padding-top: 29px; width: 95px; height: 0; background: url(/images/buttons/add_to_cart.gif) no-repeat; overflow: hidden; }

/* BON BON PAGE
-------------------------------------------------------------------------------- */
#bon_bons { margin-left: 110px; }
#bon_bons .bon { float: left; padding: 10px 9px 5px 0; width: 415px; min-height: 110px; border-bottom: 1px solid #ddd;  border-right: 1px solid #ddd; }
#bon_bons .even { padding: 10px 0 5px 10px; width: 405px; border-right: 0; }
#bon_bons .bottom { border-bottom: 1px solid #fff; }
#bon_bons .bon img { float: left; margin: 0 20px 0 0; }
#bon_bons .bon h3 { margin: 5px 0 2px 0; font-weight: bold; font-style: italic; }
#bon_bons .bon p { margin-right: 50px; }

/* NEWS
-------------------------------------------------------------------------------- */
#news_list { width: 65%; margin-left: 120px; }
#news_list div { margin-bottom: 20px; }
#news_list .thumbnail { float: right; margin: 0 0 10px 20px; width: 100px; height: 80px; border: 1px solid #ddd; overflow: hidden; }
#news_list .date { margin: 0; font-size: 0.78em; line-height: 1.15em; font-style: italic; color: #aaa; }
#news_list .headline { margin: 0 0 5px 0; font-size: 1.10em; line-height: 1.35em; font-style: italic; }
#news_list a.permalink { font-style: italic; }

#story { float: left; width: 430px; margin-right: 50px; margin-left: 120px; }
#story .date { margin: 0; font-size: 13px; font-style: italic; color: #aaa; }
#story .title { margin: 0 0 10px 0; font-size: 1.70em; line-height: 1.72em; }
#story div#images { float: right; padding: 0 0 10px 10px;}
#story div.image { }
#story div.image img { padding: 5px; border: 1px solid #ddd; }
#story div.image .caption { margin: 5px 0; font-style: italic; color: #aaa; }

#story #meta { padding: 10px 0 0 0; border-top: 1px solid #ddd; clear: both; }
#story #meta h4 { margin: 0 0 5px 0; }

#rail { float: left; padding-left: 20px; width: 329px; border-left: 1px solid #ddd; }

.story_list { padding: 0; list-style: none; }

/* ABOUT
-------------------------------------------------------------------------------- */
#about_page #body .container { padding: 0 0 0 120px; }
#about_page #body .left { float: left; padding-right: 3%; width: 49%; text-align: right; }
#about_page #body .right { float: left; width: 47%; }
#about_page #body p.welcome { color: #cc6633; font-style: italic; }

/* CHEF PAGE
-------------------------------------------------------------------------------- */
#chef_page #mugshot { float: left; padding-right: 3%; width: 52%; text-align: right; }
#chef_page #bio { float: left; width: 44%; }

/* WHERE TO BUY PAGE
-------------------------------------------------------------------------------- */
#locations_page #body .container { margin-left: 120px; }
.place_list div { float: left; width: 300px; margin-bottom: 20px; }
.place_list div h3 { margin: 0 0 5px 0; font-style: normal; color: #c96a54; }
.place_list div p { margin: 0; color: #844130; }

/* SHIPPING PAGE
-------------------------------------------------------------------------------- */
#shipping_page #body .container { margin-right: 30%; margin-left: 120px; }

/* CART PAGES
-------------------------------------------------------------------------------- */
#steps { position: relative; margin: -25px auto 30px auto; width: 610px; }
#steps li { padding-top: 30px; height: 0; background: url(../images/checkout_steps.gif) no-repeat; overflow: hidden; }
#steps .step1 { width: 220px; background-position: 0px 0px; }
#steps .step2 { width: 215px; background-position: -220px 0px; }
#steps .step3 { width: 162px; background-position: -435px 0px; }
#steps .step1_on { width: 220px; background-position: 0px -30px; }
#steps .step2_on { width: 215px; background-position: -220px -30px; }
#steps .step3_on { width: 162px; background-position: -435px -30px; }

#view_cart #view { float: left; width: 70%;}

#cart_contents tr { border-bottom: 1px solid #ddd; }
#cart_contents td, #cart_contents th { border: none; }
#cart_contents input { width: 20px; }
#cart_contents th h2 { margin: 0; padding: 0; font-size: 1.42em; line-height: 1.45em; color: #996849; }
#cart_contents .thumbnail { padding: 5px 0; }
#cart_contents .title { width: 400px; font-size: 1.12em; line-height: 1.20em; color: #996849; font-style: italic; font-weight: bold; vertical-align: middle; }
#cart_contents .quantity { vertical-align: middle; font-size: 16px; line-height: 19px; color: #996849; }
#cart_contents .price { vertical-align: middle; font-size: 16px; line-height: 19px; color: #996849; }
#cart_contents .price input { text-align: center; }
#cart_contents .remove a { margin-top: -21px; position: relative; display: block; padding-top: 29px; height: 0; width: 75px; background: url(../images/buttons/remove.gif) no-repeat; overflow: hidden; }

#cart_controls #next_step_button { float: left; }
#cart_controls .checkout { float: left; margin: 0 10px; display: block; padding-top: 29px; width: 95px; height: 0; background: url(../images/buttons/checkout.gif) no-repeat; overflow: hidden; }

fieldset { position: relative; }
fieldset div.content { position: relative; }
div.col1, div.col2 { float: left; margin-bottom: 20px; width: 350px; background: url(../images/form_box_top.gif) no-repeat; }
div.col1 { margin-left: 110px; margin-right: 10px; }
div.col1 fieldset, div.col2 fieldset { padding: 10px; background: url(../images/form_box_bottom.gif) no-repeat bottom left; }

div.form { margin-bottom: 20px; margin-left: 120px; width: 710px; background: url(../images/form_box2_top.gif) no-repeat; }
div.form fieldset { padding: 10px; background: url(../images/form_box2_bottom.gif) no-repeat bottom left; }

#forgot_password { display: block; padding-left: 110px; font-size: 12px; }

#attention { margin: 0 auto 20px auto; padding: 5px 0 0 40px; width: 690px; background: url(../images/alert.gif) no-repeat; }
#attention h2 { font-size: 20px; font-style: italic; color: #996849; }

.warning_alert { position:relative; margin: 0 auto 20px; width: inherit; background: url(/images/header_bg.gif) repeat-x -50px bottom; border: 1px solid #ccc; }
.warning_alert img { position: absolute; top: 7px; left: -40px; }
.warning_alert h3 {  padding: 5px 10px; font-style: normal; color: #a21d1d; font-weight: normal; /* crimson */ font-size: 1.1em !important; }
.warning_alert p { padding: 5px 10px 10px;}
.warning_alert a { display: block; font-style: normal; color: #a21d1d; font-weight: bold; /* crimson */ font-size: 1.40em !important; letter-spacing: -0.025em; line-height: 1.40em; }
.warning_alert li { padding: 0 10px 0 0; margin-left: 10px; line-height: 1.30em; }
#shipping_proper{ margin-left: 111px;}
form h3 { position: relative; display: block; margin-bottom: 7px; padding: 0; font-size: 20px; font-style: italic; }
form h3 em { color: #996849; }

.instructions { text-align: center; }

/* FORMS
-------------------------------------------------------------------------------- */
fieldset p { clear: both; margin-bottom: 5px; }
fieldset p label { position: relative; float: left; display: block; padding-right: 10px; width: 100px; text-align: right; line-height: 26px; }
fieldset p label.radio { width: 20px; }
fieldset p input { padding: 3px 4px 2px 4px; width: 200px; font-size: 12px; font-family: Helvetica, Arial, sans-serif; color: #4b2816; }
fieldset p textarea { padding: 3px 4px 2px 4px; width: 200px; font-size: 12px; font-family: Helvetica, Arial, sans-serif; color: #4b2816; }

input, textarea { border: 1px solid #ddd; }
input.button { border: none; width: auto; }
fieldset p input.button { margin-left: 32%; border: none; width: auto; }
p.checkbox input { margin-left: 33%; width: auto; }
p.radio input { width: auto; }

div.fieldWithErrors input { padding: 3px 4px 2px 4px; width: 60%; font-size: 12px; font-family: Helvetica, Arial, sans-serif; color: #4b2816; border-left: 1px solid #bc2626; border-top: 1px solid #bc2626; border-right: 1px solid #c24949; border-bottom: 1px solid #c24949; }
div.fieldWithErrors textarea {}

#shipping_option { width: 200px; }

#checkout_page form h3 em.shipping_choice { position: absolute; right: 0;  font-size: 13px; }
#next_step { text-align: center; clear: both; }

/* Form error messages */
div.errorExplanation { margin: 0 0 20px 0; padding: 0 0 10px 40px; background: url(/images/alert.gif) no-repeat 0 0; border-bottom: 1px solid #ebd2ca; }
div.errorExplanation h2 { margin: 0; padding: 0; font-size: 16px; line-height: 18px; color: #a91f1f; font-style: italic; font-weight: bold; }
div.errorExplanation p { margin: 0 0 5px 0; font-size: 14px; line-height: 18px; color: #7f4a42; }
div.errorExplanation ul { font-size: 14px; line-height: 18px; color: #7f4a42; }
div.errorExplanation li { margin: 0; }

/* CONTACT PAGE
-------------------------------------------------------------------------------- */
#contact_page .col1 { float: left; margin: 0 10px 0 120px; width: 230px; background: none; }
#contact_page .col2 { float: left; width: 370px; }
#contact_page h3 { color: #c7692e; font-size: 18px; font-weight: bold; }
#contact_page h4 { color: #c7692e; font-size: 18px; margin-bottom: 0; }

/* EMAIL PAGE
-------------------------------------------------------------------------------- */
#email #body  { padding-left: 120px; }