* {
    margin: 0;
    padding: 0;
    outline: 0;
}

html {
    height: 100%;
    margin-bottom: 1px;
}

body {
    font-family: Georgia;
    font-size: 0.8em;
}

h1 {
    position: absolute;
    left: 24px;
    top: 30px;
    height: 95px;
    width: 318px;
    font-size: 0.7em;
}

h1 span {
    position: absolute;
    top: 0px;
    left: 0px;
    display: block;
    height: 95px;
    width: 318px;
    background-image: url('../images/common/logo-background.jpg');
}

h2 {
    background-image: url('../images/common/heading-background.jpg');
    background-repeat: no-repeat;
    width: 672px;
    height: 64px;
    line-height: 62px;
    color: #FFFFFF;
    font-style: italic;
    font-weight: normal;
    padding: 0 0 0 20px;
    font-size: 2.8em;
    margin-top: -3px;
    margin-left: -3px;
    margin-bottom: 0.7em;
}

h3 {
    font-size: 1.7em;
    color: #3A2933;
    margin: 0 0 0.6em 0;
}

h4 {
    font-size: 1.5em;
    color: #3A2933;
    margin: 0 0 0.6em 0;
}

p {
    font-size: 1.25em;
    line-height: 140%;
    color: #3A2933;
    margin: 0 0 0.9em 0;
}

ul, ol {
    padding: 0 0 0.9em 2em;
    font-size: 1.25em;
}

li {
    line-height: 140%;
    color: #3A2933;
    margin: 0 0 0.4em 0;
}

a img {
    border: 0;
}

a {
    cursor: pointer;
}

a, a:link, a:visited {
    color: #BE2118;
}

a:active {
    color: #552823;
}

a:hover {
    color: #FA571E;
}


fieldset {
    border: 0;
}

legend {
    display: none;
}

fieldset ul {
    list-style: none;
    padding: 0;
}

fieldset ul li {
    padding-bottom: 10px;
}

input, textarea, select {
    font-family: Verdana;
    font-size: 11px;
    padding: 3px;
    border: 2px solid #371C0F;
    float: left;
}

input.text, textarea.textarea {
    width: 250px;
}

input.checkbox {
    float: left;
    margin-left: 100px;
}

input:focus, textarea:focus, select:focus {
    border: 2px solid #A19386;
}

input.submit {
    font-weight: bold;
    background-color: #5A2D18;
    color: #FFFFFF;
    cursor: pointer;
    margin: 0 0 0 100px;
}

input.submit:active {
    background-color: #371C0F;
}

label {
    color: #333333;
    font-style: italic;
    display: block;
    float: left;
    width: 100px;
    clear: left;
}

label.checkbox {
    width: auto;
    clear: none;
    margin-left: 10px;
}

#wrapper {
    width: 920px;
    margin: 0 auto;
    background-image: url('../images/common/wrapper-background.jpg');
    background-repeat: repeat-y;
}

#wrapperTop {
    background-image: url('../images/common/wrapper-top-background.jpg');
    height: 24px;
    width: 920px;
    margin-top: 10px;
}

#header {
    width: 870px;
    height: 137px;
    background-image: url('../images/common/header-background.jpg');
    margin: 0 auto;
    position: relative;
    background-color: #E1E0DC;
}

#header p {
    position: absolute;
    font-size: 0.9em;
    right: 25px;
    top: 27px;
}

#headerbar {
    width: 870px;
    position: relative;
    height: 238px;
    margin: 0 auto;
    background-image: url('../images/common/headerbar-background.jpg');
}

#headerbar span {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 812px;
    height: 184px;
    background-image: url('../images/common/rounded-corners.gif');
    background-repeat: no-repeat;
    margin: 26px 0 0 29px;
}

#headerbar img {
    width: 812px;
    height: 184px;
    margin: 26px 0 0 29px;
}

#content {
    padding: 12px 25px 12px 25px;
}

#left {
    float: left;
    width: 163px;
    position: relative;
}

#navigation {
    list-style: none;
    background-image: url('../images/common/navigation-background.png');
    background-repeat: no-repeat;
    padding: 1px 5px 5px 4px;
    width: 154px;
    float: left;
}

#navigation li {
    width: 155px;
    height: 30px;
    position: relative;
    margin: 5px 0 0 0;
}

#navigation a, #navigation span {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

#navigation span {
    position: absolute;
    top: 0;
    left: 0;
}

#navigation #home span {
    background-image: url('../images/common/nav-home.png');
}

#navigation #cafe span {
    background-image: url('../images/common/nav-shop-cafe.png');
}

#navigation #restaurant span {
    background-image: url('../images/common/nav-restaurant.png');
}

#navigation #shop span {
    background-image: url('../images/common/nav-online-store.png');
}

#navigation #links span {
    background-image: url('../images/common/nav-links.png');
}

#navigation #contact span {
    background-image: url('../images/common/nav-contact.png');
}

#navigation #findus span {
    background-image: url('../images/common/nav-find-us.png');
}

#navigation a:hover span {
    background-position: top right;
}

#navigation li.on a:hover span, #navigation li.on a span {
    background-position: center center;
}

#main {
    position: relative;
    width: 682px;
    float: left;
    margin: 4px 0 17px 20px;
}

#cart {
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 0.7em;
}

#cart img {
    position: relative;
    top: 4px;
}

#cart p {
    width: 240px;
    text-align: center;
    margin-top: 5px;
}

#footer {
    width: 920px;
    height: 42px;
    margin: 0 auto;
    background-image: url('../images/common/footer-background.jpg');
}

#footer a {
    color: #FFFFFF;
}

#footer p {
    line-height: 32px;
    color: #FFFFFF;
    font-size: 0.95em;
}

#footer p.right {
    float: right;
    margin: 0 49px 0 0;
}

#footer p.left {
    float: left;
    margin: 0 0 0 49px;
}


/**************/
/*    HOME    */
/**************/

#newsletter {
    width: 255px;
    height: 107px;
    float: right;
    margin: 0 0 0 20px;
    padding: 15px 0 0 20px;
    background-image: url('../images/common/newsletter-background.jpg');
}

#newsletter h3, #newsletter p {
    color: #FFFFFF;
}

#newsletter p {
    margin: 8px 0;
}

#newsletter #newsletterText {
    width: 150px;
    margin-right: 10px;
}

#newsletter #newsletterSubmit {
    background-color: #5A2D18;
    color: #FFFFFF;
    font-weight: bold;
}

#newsletter #newsletterSubmit:active {
    background-color: #371C0F;
}

/****************/
/*    FIND US   */
/****************/

#map {
    width: 400px;
    height: 300px;
    float: left;
    border: 2px solid #CCCCCC;
    margin-right: 20px;
}

#contactInfo {
    float: left;
    margin-left: 20px;
}


/*****************/
/*    CONTACT    */
/*****************/

.contactLeft {
    float: left;
    width: 420px;
}

.contactRight {
    float: right;
    width: 240px;
}

/**************/
/*    SHOP    */
/**************/

.categoryBox {
    width: 214px;
    margin: 20px 20px 0 0;
    float: left;
    height: 150px;
}

.categoryBox h3 {
    height: 30px;
    line-height: 30px;
    margin-bottom: 3px;
    text-align: center;
}

.categoryBox h3 a {
    text-decoration: none;
    color: #3A2933;
}

.categoryBox h3 a:hover {
    text-decoration: underline;
}

.categoryBox a.image {
    border: 1px solid #FFFFFF;
}

.categoryBox a.image:hover {
    border: 1px solid #DCDCDC;
}

.categoryBox a.image {
    display: block;
    width: 200px;
    height: 100px;
    margin: 0 auto;
}

.categoryBox img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.productBox .productImage {
    float: left;
    width: 110px;
    height: 110px;
    margin: 0 20px 0 0;
}

.productBox div.image {
    width: 110px;
    height: 110px;
}

.productBox div.image a {
    display: block;
    width: 110px;
    height: 110px;
    border: 1px solid #FFFFFF;
}

.productBox div.image a:hover {
    border: 1px solid #DCDCDC;
}


.productBox div.image img {
    display: block;
    margin: 0 auto;
}

.productBox .enlarge {
    text-align: center;
    width: 110px;
}

.productBox .enlarge img {
    position: relative;
    top: 3px;
}

.productBox .description {
    font-size: 1.1em;
}

.productBox .details {
    float: left;
    width: 400px;
    margin-right: 20px;
}

.productBox h3 {
    font-size: 1.55em;
}

.productBox h3 a {
    text-decoration: none;
    color: #3A2933;
}

.productBox h3 a:hover {
    text-decoration: underline;
}

.productBox .order {
    float: left;
    width: 130px;
}

.productBox .price {
    font-size: 2em;
    font-weight: bold;
    margin: 0;
}

.productBox .small {
    font-size: 0.9em;
    margin: 0 0 5px 0;
}

.productBox .quantityLabel {
    float: left;
    display: inline !important;
    width: auto;
    margin-right: 10px;
}

.productBox .quantity {
    width: 20px;
    display: inline;
    position: relative;
    top: -2px;
    text-align: center;
}

.productBox .submit {
    width: 100px;
    text-align: center;
    margin: 0;
}

/***************/
/*    POPUP    */
/***************/

#displayimg {
    padding: 20px;
}

#loading {
    background-image: url('../images/common/loading.gif');
    background-repeat: no-repeat;
    background-position: center top;
    min-height: 40px;
    width: 100%;
    text-align: center;
}

#popup h1 {
    position: relative;
    font-size: 1.7em;
    color: #3A2933;
    margin: 0 0 0.6em 0;
    width: auto;
    height: auto;
    top: 0;
    left: 0;
}

#popupHeader {
    height: 86px;
    width: 100%;
    background-image: url('../images/common/popup-background.jpg');
    margin-bottom: 13px;
    text-align: center;
}

/****************/
/*    COMMON    */
/****************/

.clear {
    clear: both;
    font-size: 1px;
    line-height: 1px;
    height: 0px;
}

div.hr {
    height: 15px;
    background-image: url('../images/common/hr-background.jpg');
    width: 664px;
    clear: both;
    margin: 0.6em auto;
}

div.hr hr {
    display: none;
}

p.info {
    text-indent: 22px;
    background-image: url('../images/icons/information.png');
    background-repeat: no-repeat;
    background-position: 0px 3px;
}

p.err {
    text-indent: 22px;
    background-image: url('../images/icons/cross.png');
    background-repeat: no-repeat;
    background-position: 0px 3px;
}
