@charset "utf-8";




/*****************************/ 
/*****   Reset & Common  *****/
/*****************************/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,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{border:0;outline:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;margin:0;padding:0;}
:focus{outline:0;}
body{line-height:1;color:#000;background:#FFF;}
ol,ul{list-style:none;}
table{border-collapse:separate;border-spacing:0;}
caption,th,td{text-align:left;font-weight:400;}
blockquote:before,blockquote:after,q:before,q:after{content:"";}
blockquote,q{quotes:"" "";}




/*****************************/ 
/*****    Font Styles    *****/
/*****************************/
body { color: #3c3c3b; font-family: Georgia, Times, Serif; font-size: 62.5%; }

.bold { font-weight: bold; }
.italic { text-style: italic; }
.underline { text-decoration: underline; }
.small { font-size: .9em; }

h1 { color: #131313; font-size: 2.7em; margin-bottom: .75em; }
h2 { color: #51580c; font-size: 2.3em; margin-bottom: .75em; }

p { font-size: 1.5em; line-height: 1.75em; margin-bottom: 3em; }
p + p { margin-top: -1.8em; }

a { color: #657452; text-decoration: none; }
a:hover { color: #8a9d72; text-decoration: underline; }




/*****************************/ 
/*****    Alignment      *****/
/*****************************/
.aligncenter { text-align: center; margin: 0 auto; }
.alignleft { text-align: left; }
.alignright { text-align: right; }
img.alignleft { margin: 0 1em 1em 0; float: left; }
img.alignright { margin: 0 0 1em 1em; float: right; }




/*****************************/ 
/*****    Structure      *****/
/*****************************/
body { background: url('../img/bg.png') 0 143px repeat-x #f2f1d2; }
#wrapper { height: 100%; background: url('../img/bg_flourishes.jpg') center 191px no-repeat; }
body > #wrapper { height: auto; min-height: 100%; }

#container { width: 960px; margin: 0 auto; }




/*****************************/ 
/*****  Header and Nav   *****/
/*****************************/
#header { overflow: hidden; height: 144px; margin: 0 -13px; padding: 0 13px; }
#logo { overflow: hidden; width: 164px; height: 82px; text-indent: -5000px; background: url('../img/logo.png'); margin-top: 7px; float: left; }
#call-us { overflow: hidden; width: 177px; height: 44px; text-indent: -5000px; background: url('../img/call-us.png'); margin: 37px 0 0; float: right; }

#navigation { position: relative; height: 43px; background: url('../img/nav_bg.png') bottom repeat-x; margin: 0 12px 0; padding: 101px 0 0; }
#navigation .left { width: 25px; height: 57px; background: url('../img/nav_left.png'); margin: -14px 0 0 -25px; float: left; }
#navigation .right { width: 25px; height: 57px; background: url('../img/nav_right.png'); margin: -14px -25px 0 0; float: right; }
#navigation .center { position: absolute; left: 50%; bottom: 0; width: 100%; }
#navigation .center div { float: left; }

#navigation ul { list-style: none; margin-left: -50%; }
#navigation li { height: 43px; margin: 0 17px; padding: 0 1px; float: left; }
#navigation a { display: block; height: 43px; color: #e2dfcc; font-size: 1.3em; line-height: 43px; text-decoration: none; text-transform: uppercase; padding: 0 26px; }
#navigation li.active { background: url('../img/nav_hover.png'); border: solid #637150; border-width: 0 1px; padding: 0; }
#navigation li.active a,
#navigation li:hover a { color: white; }




/*****************************/ 
/*****     Content       *****/
/*****************************/
#banner { height: 353px; background: url('../img/banner_bg.png'); margin: 0 -34px; padding: 0 34px; }
#banner_inside { height: 323px; background: url('../img/banner_inside_bg.png'); padding: 15px; }
#banner_inside div { width: 100%; height: 100%; background: white; }
.home.page #banner_inside div { background-image: url('../img/banner_home.jpg'); }
.services.page #banner_inside div { background-image: url('../img/banner_services.jpg'); }
.location.page #banner_inside div { background-image: url('../img/banner_location.jpg'); }
.giftcard.page #banner_inside div { background-image: url('../img/banner_giftcard.jpg'); }
.contact.page #banner_inside div { background-image: url('../img/banner_contact.jpg'); }
.emailclub.page #banner_inside div { background-image: url('../img/banner_emailclub.jpg'); }
.gallery.page #banner_inside div { background-image: url('../img/banner_gallery.jpg'); }

#page { background: #f2f1d2; }
#page_inside { width: 930px; background: url('../img/page_bg.png') center top no-repeat; margin: 0 -23px; padding: 15px 38px; }

#body { width: 864px; min-height: 300px; background: url('../img/body_bg.png') center top repeat-x; border-radius-topleft: 5px; -moz-border-radius-topleft: 5px; -webkit-border-radius-topleft: 5px; border-radius-topright: 5px; -moz-border-radius-topright: 5px; -webkit-border-radius-topright: 5px; padding: 33px; float: left; }
#body.with-sidebar { width: 589px; }




/*****************************/ 
/*****     Sidebar       *****/
/*****************************/
#sidebar { width: 255px; float: right; }
.widget { margin-bottom: 20px; }
.widget div { padding: 15px 20px 0; }
.widget h2 { height: 39px; color: white; font-size: 1.9em; font-weight: normal; line-height: 39px; background: url('../img/widget_title_bg.png'); border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; margin: 0; padding: 0 20px; }
.widget ul { list-style: none; background: url('../img/widget_ul_bg.png') center top repeat-x; margin: 0; padding: 20px 10px; overflow:auto;;}
.widget li { color: #3c3c3b; font-size: 1.2em; line-height: 1.6em; background: url('../img/widget_li_bg.png') left bottom repeat-x; padding: 10px 0 12px 10px; }
.widget li span { display: block; background: url('../img/ico_asterisk.png') left 2px no-repeat; padding-left: 26px; }
.widget li a { color: #3c3c3b; text-decoration: none; text-transform: uppercase; }
.widget li a:hover { text-decoration: underline; }

.widget h3 { color: #231509; font-size: 1.5em; margin-bottom: .25em; }
.widget p { font-size: 1.2em; line-height: 1.5em; }

#specials-widget div,
#navigation-widget div { padding: 0; }
#specials-widget h2,
#navigation-widget h2 { border-radius-bottomleft: 0; -moz-border-radius-bottomleft: 0; -webkit-border-radius-bottomleft: 0; border-radius-bottomright: 0; -moz-border-radius-bottomright: 0; -webkit-border-radius-bottomright: 0; }
#specials-widget ul { border-radius-bottomleft: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-radius-bottomleft: 5px; border-radius-bottomright: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-radius-bottomright: 5px; }
#specials-widget li { color: #231509; font-size: 1.3em; background: none; padding-bottom: 10px; }
#specials-widget li a { color: #231509; text-transform: none; }

#email-widget p { font-size: 1.5em; }




/*****************************/ 
/*****      Footer       *****/
/*****************************/
#footer { color: #848480; font-size: 1.1em; line-height: 2em; background: url('../img/footer_bg.png') center top repeat-x; border-radius-topleft: 15px; -moz-border-radius-topleft: 15px; -webkit-border-radius-topleft: 15px; border-radius-topright: 15px; -moz-border-radius-topright: 15px; -webkit-border-radius-topright: 15px; }
#footer_inside { width: 525px; height: 100px; background: url('../img/footer_inside_bg.png') right 4px no-repeat; margin-right: -6px; padding: 45px 426px 0 15px; }

#footer ul { list-style: none; margin-bottom: .5em; }
#footer li { display: inline; }
#footer li:before { content: " | "; }
#footer li:first-child:before { content: ""; }
#footer p { font-size: 1em; }
#footer a { color: #848480; text-decoration: none; }
#footer a:hover { color: #c2c2b5; text-decoration: underline; }
#footer ul a{ margin-right:15px; }




/*****************************/ 
/*****  Sticky Footer    *****/
/*****************************/
html,body,#container{height:100%;}
body > #container{height:auto;min-height:100%;}




/*****************************/ 
/*****    Clear Fix      *****/
/*****************************/
.clear { overflow: hidden; height: 0; clear: both; }
.clearfix:after {content: ".";display: block;height: 0;clear: both;visibility: hidden;}
.clearfix {display: inline-block;}
* html .clearfix { height: 1%;}
.clearfix {display: block;}




/*****************************/ 
/*****      Gallery      *****/
/*****************************/
.gallery li{float:left; margin-bottom:30px; margin-right:20px;}
.gallery img{ width: 166px; height: 128px; border: 5px solid white;}
.gallery-row { height: 138px; margin-bottom: 30px; }
.gallery-row img { width: 166px; height: 128px; border: 5px solid white; margin: 0 30px 0 0; float: left; }
.gallery-row img.alignright { margin: 0; float: right; }




/*****************************/ 
/*****        Tabs       *****/
/*****************************/
#tabs { margin: 20px 0; }
#tabs ul { height: 2.4em; margin-left: 20px; }
#tabs li { list-style: none; margin-right: 1px; padding: 0; }
* html #tabs li { display:inline; }
#tabs li, #tabs li a { float:left; }
#tabs ul li a { border: solid #8d8f71; border-radius-topleft: 5px; -moz-border-radius-topleft: 5px; -webkit-border-radius-topleft: 5px; border-radius-topright: 5px; -moz-border-radius-topright: 5px; -webkit-border-radius-topright: 5px; border-width: 1px 1px 0; color: #131313; font-size: 1.1em; font-weight: bold; line-height: 1em; padding: .5em; text-decoration: none; }
#tabs ul li a:hover { color: #9B4016; }
#tabs ul li.active a { color: white; background: #8d8f71; }
#tabs .tab { clear: both; font-size: 1.4em; background: #faf9ed; border: 1px solid #8d8f71; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; padding: 20px; }
#tabs .tab dl { clear: both; height: 2em; line-height: 2em; background: url('../img/dots_bg.png') center center repeat-x; margin-bottom: .25em; }
#tabs .tab dt { clear: left; background: #faf9ed; padding-right: .5em; float: left; }
#tabs .tab dt:first-child { margin-left: 0; }
#tabs .tab dd { clear: right; font-weight: bold; background: #faf9ed; padding-left: .5em; float: right; }
#tabs .tab div { margin-left: 1em; }
#tabs .tab .no-dd { background: none; }
#tabs .tab .small { height: 1em; }
#tabs .tab .small dt { margin-top: -1em; }
#tabs p { font-size: 1em; margin-bottom: 0; }
#tabs p + p { margin-top: 1em; }




/*****************************/ 
/*****       Forms       *****/
/*****************************/
form h2 { margin: 2em 0 1em; }
form fieldset { clear: both; margin-bottom: 1em; }
form label { display: block; font-size: 1.3em; margin-bottom: .4em; }
form label span { color: #b71010; font-weight: bold; }
form input[type="text"],
form textarea { width: 25em; height: 1.9em; color: #8d8f71; font-family: arial, verdana, sans-serif; font-size: 1.3em; line-height: 1em; background: #faf9ed; border: 1px solid #8d8f71; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; margin: 0 .25em .25em 0; padding: .5em .5em 0; float: left; }

form textarea { display: block; height: 10em; float: none; }

form input[type="text"]:focus,
form textarea:focus { color: black; background: white; border-color: #b0b297; }

form input#city,
form input#recip_city { clear: both; width: 18em; }
form input#state,
form input#recip_state { width: 2em; }
form input#zip,
form input#recip_zip { width: 4em; }
form input#last_name,
form input#first_name { width: 11em; }

form .error { color: #b71010; font-weight: bold; }




/*****************************/ 
/*****   Giftcard Form   *****/
/*****************************/
.denominations { overflow: hidden; position: relative; height: 5.25em; margin-bottom: 4em; padding-bottom: 2px; }
.denominations div { position: absolute; left: 50%; top: 0; width: 100%; }
.denominations div div { position: static; width: auto; float: left; }
.denominations div div div { margin-left: -50%; float: left; }
.denominations label { cursor: pointer; width: 40px; font-size: 1.5em; line-height: 1.5em; text-align: center; background: #faf9ed; border: 1px solid #8d8f71; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; margin: 0 5px; padding: .25em .5em; float: left; }
.denominations label span { display: block; color: #3c3c3b; }