/* Core CSS Elements */
body {
    background: url( ../images/layout/bkg-2.gif );
    font-family: Georgia, "Times New Roman", Times, serif;
}

strong {
    font-weight: bold;
}

td {
    vertical-align: top;
}

form table tr td {
    padding-bottom: .25em;
}

a {
    color: #b25500;
    cursor: pointer;
    text-decoration: underline;
}

dt {
    font-weight: bold;
    margin-top: 1em;
}

fieldset {
    border: 1px solid black;
    margin-left: 2px;
}

legend {
    margin: 0 1em;
    padding: 0.2em 0.5em;
    border: 1px solid black;
    color: black;
    font-size: 90%;
    text-align: right;
}

#productCustomization div.hr, #productCustomization1 div.hr, .attentionArea div.hr {
    background: url( ../images/layout/styled-border-gray.jpg ) center center no-repeat;
}

div.hr {
    background: url( ../images/layout/styled-border2.jpg ) center center no-repeat;
    clear: both;
    height: 4px;
    width: 99%;
    margin: .5em .25em;
    padding: .2em 0;

}

div.hr-dot {
    background: url( ../images/layout/dash_horizontal.gif ) center center;
    width: 100%;
    height: 1px;
    margin: 15px 15px;
    clear: both;
    overflow: hidden;
}

div.clear {
    clear: both;
    height: 2px;
    width: 100%;
    margin: .25em .25em;
}

div.miniClear {
    clear: both;
    height: 0px;
    width: 100%;
    margin: .25em .25em;
}

div.logoBreak {
    clear: both;
    height: 50px;
    width: 100%;
}

textarea {
    width: 50%;
}

input.number {
    width: 5%;
}

.hideMe {
    display: none;
}

/* End of core CSS elements */

#doc {
    width: 75.39em;
* width : 73.57 em; /* IE */
    min-width: 974px;
}

div#hd {
/* margin-top: 20px; */
    margin-top: 0px;
    height: 145px;
    background: url( ../images/layout/header-bg.jpg ) top left no-repeat;
    border-top: 1px solid black; /* FF Fix */
    margin-bottom: 0;
}

div#marquee {
    height: 25px;
    color: #b25500;
}

div#marquee p {
    font-size: 100%;
    font-weight: bold;
    margin: 0;
    padding: 0;
}

div#marquee p.spacer {
    margin: .25em 0;
    padding: 0;
}

div#marquee p .attention {
    text-transform: uppercase;
}

div#marquee p b {
    font-size: 120%;
}

div#marquee p a {
    font-style: italic;
    color: black;
}

marquee {
    height: 25px;
    cursor: pointer;
}

div#printHd {
    display: none;
}

div#hd a#headerLink {
    width: 200px;
    height: 150px;
    position: absolute;
}

div#hd div#utilityNav {
    text-align: right;
    color: white;
    font-family: Arial, Helvetica, sans-serif;
    margin-right: 1.75em;
    padding-top: 3px;

}

div#hd div#utilityNav a {
    color: white;
    font-size: 90%;
    margin: 0 1em;
    text-decoration: none;
}

div#bd {
    margin-bottom: 0;
    padding-bottom: 2em;
    background: white url( ../images/layout/side-col-bg.jpg ) repeat-x;
}

div.yui-t2 div#yui-main div.yui-b {
    border-left: 1px solid #CCCCCC;
}

div#yui-main div.yui-b {
    background: white;
}

div.sideCol {
    margin-top: 115px;
}

div.yui-t7 div.sideCol {
    display: none;
}

.yui-t2 .yui-b, .yui-t4 .yui-b {
    width: 20%;
}

.yui-t2 #yui-main .yui-b, .yui-t4 #yui-main .yui-b {
    width: 77.4%;
}

table.pageHeadingList {
/* margin: 1em auto 0em auto; */
    margin: 0em 0 1em 2.5em;
    width: 85%;
    border: 1px solid white; /* Fix for FF using that sIFR thing */
}

table.pageHeadingList td {
    vertical-align: bottom;
}

table.pageHeadingList td.description {
    font-size: 120%;
    font-style: italic;
    width: 65%;
}

/* Start of Cart Definition */

table#cart {
    width: 150px;
    margin-left: 2.5em;
    border: 1px dashed black;
}

table#cart thead td, table#cart tfoot td {
    height: 7px;
}

table#cart td.cartDetails {
    color: black;
    font-size: 80%;
    white-space: nowrap;
}

table#cart div#cartDetails {
    margin: .25em;
}

table#cart td.cartDetails h1 {
    text-transform: uppercase;
}

table#cart td.cartDetails h1 a {
    color: black;
}

table#cart td.cartDetails h2 {
    text-align: right;
}

table#cart td.cartDetails h2 a {
    color: black;
}

table tbody tr.even {
    background: #dfd2b3;
}

img.printable {
    margin-left: 2em;
}

div#loggedInMessage {
    font-size: 80%;
    float: none;
    height: 10px;
    text-align: left;
    padding-left: 250px;
    margin-top: 45px;
    margin-right: 1em;
    position: absolute;
}

div#cart {
    font-size: 90%;
    float: right;
    height: 45px;
    text-align: center; /*background: url(../images/layout/cart3.jpg) top right no-repeat;*/
    padding-right: 35px;
    margin-top: 15px;
    margin-right: 1em;
}

div#cart h1 {
    font-size: 110%;
    margin: .1em;
}

div#cart .alert {
    margin: .25em;
    font-size: 85%;
    font-weight: bold;
    color: #9C3A29;
}

/* Tooltip Styling */
.dojoTooltip {
    width: 500px !important;
}

.dojoTooltip .attentionArea {
    background: none;
}

.dojoTooltip {
    background: none;
}

html .ZoomImage {
    background: none;
    border: 1px solid black;
    padding: 0;
    width: auto !important;

}

/* End of Tooltip Styling */

/* End of Cart Definition */

h1#categoryName {
    font-size: 48px;
    color: #706c4f;
    white-space: nowrap;
    padding: 0;
    margin: 0;
    letter-spacing: -3px;
}

div.MainContent {
    margin: 0 auto;
    width: 90%;
    min-height: 400px; /* This prevents the left gradient from bleeding over into the right MainContent div */

}

div.rightColAttentionBox {
    text-align: center;
    padding: 0;
    border: 1px solid black;
}

.breadcrumb {
    color: gray;
    margin: 1em 3em;
    font-size: 90%;
}

.breadcrumb a.selected {
    font-weight: bold;
    text-decoration: none;
}

table.ProductListing {
    width: 100%;
}

table.ProductListing tr {
/*  background: url(../images/layout/styled-border2.jpg) bottom center no-repeat; */
}

table.ProductListing td {
    padding: .5em;
    font-size: 90%;
}

div.MainContent h1.pageHead {
    color: #888859;
    font-size: 130%;
    text-transform: none;
    margin: 0 0 1em 0;
}

div.MainContent div.rightColAttentionBox h1 {
    margin-top: 10px;
    font-size: 150%;
    font-style: italic;
}

td.description h1, div.MainContent h1 {
    color: #a34624;
    text-transform: uppercase;
}

td.description span.label img {
    float: none; /* height: 25px; */
    padding: 0;
    margin: 0; /* display: none; */
}

td.description h1 strong, div.MainContent h1 strong {
    text-decoration: underline;
}

div.MainContent img {
    float: right;
    margin: 0 3em 1em 3em;
}

div.MainContent img.left {
    float: left;
}

div.MainContent img.default {
    float: none;
    margin: 0;
}

div.MainContent ul li img.screenshot {
    float: none;
}

div.MainContent img.icon {
    float: none;
    margin: 0 .5em;
}

div.MainContent p {
    margin: .5em 0;
}

table.calloutBox {
    border: 1px solid black;
    margin-top: 2em;
    clear: both;
}
table.calloutBox a {
    color: white;
}

table.calloutBoxNoBorder {
    border: 0px;
}

table.calloutBox h1 {
    margin: .5em;
}

table.calloutBox ul li {
    margin-left: 2.5em;
}

table.calloutBox2 h1 {
    color: #F4E9CD;
}

table.calloutBox2 td {
    background: #8F432C;
    color: #F4E9CD;
    padding-left: .5em;
}

table.calloutBox2 td p {
    padding-left: .5em;
    padding-top: .75em;
}

table.data {
    margin-top: 1em;
    border: 1px solid #DFDFA1;
    font-size: 80%;
}

table.data td {
    padding: .5em;
}

div.MainContent li {
    list-style: disc;
    margin: 0 0 .5em 1.5em;
}

div.MainContent img.tinyThumbnail {
    width: 150px;
    display: inline;
    margin-bottom: 0;
}

img.largeThumbnail {
/* width: 300px; */
}

td.description, td.thumbnail, table.ProductListing, td.MetaData {
    vertical-align: top;
}

.thumbDisplayWithMag {
    float: left;
    display: inline;
}

td.MetaData {
    white-space: nowrap;
}

td.description h1 span.price {
    margin-left: 3em;
    font-size: 90%;
}

td.description h1 span.order {
    margin-left: 3em;
    color: #999999;
    text-decoration: underline;
    font-size: 90%;
}

td.description p {
    margin-bottom: .5em;
    font-size: 95%;
}

td.description strong, td.description label {
    font-weight: bold;
    font-size: 90%;
}

td.description p.quiet, td.description p.quiet a {
    color: #999999;
    font-style: italic;
    clear: both;
    font-size: 90%;
}

td.description p.quiet, td.description #productCustomization1 p.quiet a {
    color: #b25500;
}

td.description p.notes {
    clear: both;
    font-weight: bold;
    padding: .5em 0;
}

td.description div.productOptions, td.description div.options {
    margin: 2em 0 1em 0;
    clear: both;
    font-size: 90%;
}

.minimumRequired, .prepTimeRequired, .miscInfo {
    color: gray;
    font-weight: bold; /* font-style: italic; */
    margin: 1em 0 0 .25em;
    font-size: 70%;

}

.productChoice {
    color: gray;
    font-weight: bold; /* font-style: italic; */
    margin: 1em 0 0 .25em;
    margin-left: 4em;
    font-size: 70%;

}

/* Location Page-spectific styles */

#mapTest {
    width: 90%;
    height: 380px;
    border: 1px solid black;
    margin: 1.5em auto;
}

table#mapData {
    display: none;
}

p.address, p.details {
    display: block;
    width: 45%;
    margin: 1em;
}

p.address {
    clear: left;
    float: left;
}

p.details {
    float: right;
    clear: right;
    font-weight: bold;
}

table.StoreListing {
    width: 100%;
}

table.StoreListing td.thumbnail {
    width: 217px;
}

table#mapData table tr td.description {
    text-align: center !important;
}

/* End of map-specific styles */

/* General styles to spice up forms in tables */

table tr.info, table td.info {
    background: #F0ECD6;
    color: #CC3300;
    padding: .25em 0;
}

table tr.notice, table td.notice {
    background: #F0ECD6;
    font-weight: bold;
}

span.info {
    color: #CC3300;
}

td.label {
    text-align: right;
    white-space: nowrap;
    width: 7%;
    padding-right: 1em; /*padding-bottom: .5em;*/
/* font-size: 85%; */
    vertical-align: middle;
}

/* End of General Form styles */

/* This float left is so that it will stay around the P described below.. a background is applied to this div for error handling */
div.DolceChoiceGroup {
    float: left;
    white-space: nowrap;
}

p.block {
    float: left;
    clear: none;
    padding: 0 2em 0 1.5em;
}

p.blockBorder {
    float: left;
    clear: none;
    padding: 0 2em 1em 1.5em;
    border: 2px solid #CE6700;
}

.deliveryOptionLine {
    padding-bottom: 5px;
    white-space: nowrap;
    vertical-align:middle;
}

.MainContent .deliveryOptionLine img {
    float: none;
    margin: 0.5em 0 0 0;
    vertical-align:bottom;
}

p.block input {
    margin-right: .25em;
}

p.block input.radio {
    margin: 0;
    padding: 0;
    margin-left: -1.5em;
}

.heading {
    clear: both;
    color: #73734d;
    text-transform: uppercase;
    font-weight: bold;
}

.headingLinked {
    clear: both;
    color: #CE6700;
    text-transform: uppercase;
    font-weight: bold;
}

/* Support a nifty buttons look */
.button {
    background: url( ../images/layout/button-left-bg.jpg ) top left no-repeat;
    padding: 1px 0 5px 5px !important;
* padding : 0 0 7 px 5 px !important; /* margin: 5px 8px!important; */
    display: inline !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    cursor: pointer !important;
}

.button a {
    background: url( ../images/layout/button-right-bg.jpg ) top right no-repeat;
    color: white;
    font-weight: bold !important;
    padding: 3px 25px 0 5px !important;
* padding : 3 px 10 px 5 px 5 px !important; /* margin: 0px !important; */
    font-size: 11px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.button-grey {
    background: url( ../images/layout/button-left-bg-grey.gif ) top left no-repeat;
    padding: 1px 0 5px 5px !important;
* padding : 0 0 7 px 5 px !important; /* margin: 5px 8px!important; */
    display: inline !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    cursor: pointer !important;
}

.button-grey a {
    background: url( ../images/layout/button-right-bg-grey.gif ) top right no-repeat;
    color: white;
    font-weight: bold !important;
    padding: 3px 25px 0 5px !important;
* padding : 3 px 10 px 5 px 5 px !important; /* margin: 0px !important; */
    font-size: 11px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* End of nifty buttons */

/* Support a nifty button look
.button-grey {
    background: url( ../images/layout/button-left-bg-grey.gif ) top left no-repeat;
    padding: 1px 0 5px .5em;
* padding : 0 0 5 px .5 em;
    margin: .25em .25em;
}

.button-grey a {
    background: url( ../images/layout/button-right-bg-grey.gif ) top right no-repeat;
    color: white;

    font-weight: bold;
    padding: 4px .75em 0 .5em;
* padding : 3 px .75 em 0 .5 em;
    font-size: 9px;
    text-decoration: none;
} */

/* End of nifty button */

/* Product Wizard stuff */

#productCustomization, #productCustomization1, .attentionArea {
    padding: .5em;
    float: left;
    width: 100%;
    background: #ebebe0;
}

.step {
    font-weight: bold;
    margin: .5em 0;
}

.popquestion {
    font-weight: bold;
    background: url( ../images/layout/bullet.jpg ) center left no-repeat;
    padding-left: 20px;
}

div.highlight {
    background: #999966;
    width: 100%;
    padding: .5em .55em;
    vertical-align: middle;
    color: white;
    font-weight: bold;
}

fieldset#legend div.key {
    margin-left: 4em;
    font-size: 90%;
    font-style: italic;
    padding: .5em;
}

fieldset#legend div.key img {
    float: none;
    margin: 0;
}

div.highlight a {
    color: white;
    margin-right: 2em;
    text-decoration: underline;
}

div.highlight a.selected {
    font-weight: bold;
    text-decoration: none;
}

span.instr {
    font-style: italic;
}

span.label2 input {
    width: 10em;
    margin-right: 1em;
}

span.minReqdLabel {
    background: url( ../images/layout/quantity-bullet-left.jpg ) center left no-repeat;
    padding-left: 17px;
    font-size: 90%;
    margin-left: .25em;
    color: #A34624;
}

/* End of Product Wizard stuff */

div#ft {
    background: white;
    text-align: center;

    height: 80px;
    padding-top: 42px;
    background: url( ../images/layout/footer.gif ) top center no-repeat;
}

tr#footerUtilityNav, tr#footerUtilityNav a {
    color: white;
}

div#ft #footerMenu {
    float: right;
    margin: 20px 1.75em 0 0px;
    color: white;
}

div#footerMenu a {
    margin: 0 1em;
    text-decoration: none;
    color: white;
}

div#ft a, div#ft a:visited {
    text-decoration: none;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 120%; /* letter-spacing: .05em; */
}

div#ft div.legal {
    margin: 20px 0 0 1em;
    font-size: 100%;
    color: white;
    float: left;
}

/* Tabs Formatting */

div.tabs {
    background: url( ../images/layout/tabs-background.jpg ) repeat-x #999966;
    height: 55px;
    font-size: 10px;
}

div.tabs a {

    font-weight: bold;
    margin: 0 .5em;
    padding: 9px 9px;
    color: #666543;
    display: block;
    width: 42%;
    clear: none;
    float: left;
    white-space: nowrap;
    text-decoration: none;

}

div.tabs a.selected {
    color: white;
    border: 1px solid #666543;
    border-bottom: 1px solid #999966;
}

div.tabs a.selected {
    color: white;
    background: #999966;
}

/* Calendar formatting */

div.MainContent .calendarBodyContainer tbody tr td {
    background: none;
    border-right: 1px solid white;
}

div.MainContent .calendarBodyContainer {
    width: 200px;
}

div.MainContent .calendarContainer {
    font-size: 110%;
}

/* Previous month's days */
div.MainContent div.datePickerContainer .previousMonth {
/* background-color:#bbbbbb; */
    background-color: #793d02 !important;
}

/* All of this months dates (NOT next/previous months) */
div.MainContent div.datePickerContainer .currentMonth {
/* background-color:#8f8f8f; */
    background-color: #ad5702;

}

/* Next month's days */
div.MainContent div.datePickerContainer .nextMonth {
    background-color: #793d02 !important;
}

div.MainContent div.datePickerContainer .selectedItem {
    background-color: #3a3a3a;
    color: #ffffff;
}

div.MainContent div.datePickerContainer .calendarContainer thead {
    border-bottom: 1px solid #e6e6e6;
}

div.MainContent div.datePickerContainer .yearLabel {
    color: #8c4602 !important;
}

div.MainContent div.datePickerContainer .yearLabel .selectedYear {
    color: white !important;
}

div.MainContent div.datePickerContainer .monthLabelContainer {
    color: white !important;
}

div.MainContent div.datePickerContainer .monthLabelContainer {
}

/* Specific DOJO calendar overrides */

body .yearContainer td {
/* background:url(js/dojo/src/widget/templates/images/dpYearBg.png) top left repeat-x; */
    background: url( ../images/layout/Sop-dpYearBg.png ) top left repeat-x;
}

body .monthLabelContainer {
/* background: url(js/dojo/src/widget/templates/images/dpMonthBg.png) repeat-x top left !important; */
    background: url( ../images/layout/Sop-dpMonthBg.png ) repeat-x top left !important;
}

body .calendarBodyContainer thead tr td {
    background: url( ../images/layout/Sop-dpHorizLine.png ) bottom left repeat-x;
}

body .calendarBodyContainer {
/* background: #7591bc url(js/dojo/src/widget/templates/images/dpBg.gif) top left repeat-x; */
    background: #be8247 url( ../images/layout/Sop-dpBg.png ) top left repeat-x;
}

body .calendarBodyContainer tbody tr td {
    background: url( ../images/layout/Sop-dpVertLine.gif ) top right repeat-y;
}

body .monthWrapper {
/* background: url(js/dojo/src/widget/templates/images/dpHorizLine.gif) bottom left repeat-x; */
    background: url( ../images/layout/Sop-dpHorizLine.png ) bottom left repeat-x;
}

body .monthCurveTL {
    background: url( ../images/layout/Sop-dpCurveTL.png ) no-repeat top left !important;
}

body .monthCurveTR {
    background: url( ../images/layout/Sop-dpCurveTR.png ) no-repeat top left !important;
}

body .yearWrapper {
    background: url( ../images/layout/Sop-dpHorizLineFoot.gif ) top left repeat-x;
}

body .curveBL {
    background: url( ../images/layout/Sop-dpCurveBL.gif ) bottom left no-repeat !important;
}

body .curveBR {
    background: url( ../images/layout/Sop-dpCurveBR.gif ) bottom left no-repeat !important;
}

body .yearLabel .selectedYear {
    background-color: #793d02 !important;
}

.timeSelector {
    margin: 0 2em;
}

/* ENd of dojo calendar overrides */

/* User testing related */
a#userTestingLink {
    position: absolute;
    top: 0;
    right: 0;
    width: 10px;
    height: 10px;
    display: block;
    cursor: crosshair;
}

.dojoDialog {
    background: #eee;
    border: 1px solid #999;
    -moz-border-radius: 5px;
    padding: 4px;
    width: 50%;
}

body table.pausePopup {
    text-align: center;
    width: 50% !important;
}

.pausePopup h1 {
    font-size: 52px;
    font-weight: bold;
    margin: .25em 0;
}

.pausePopup p {
    margin: 1em 0;
}

.errorMessage {
    color: red; /*font-weight:bold;*/
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 15px;
    display: inline;
    margin-left: 3px;
    font-weight: bold;
}

#welcomeMessage {
    font-size: 100%;
    margin-left: 9em;
    color: #feda91;
    font-weight: bold;
    white-space: nowrap;
    text-transform: uppercase;
    padding: 7px 0px;
    text-decoration: none;
}

li.menuChoices {

    font-size: 11px; /*height: 10px;*/
    vertical-align: top;
}

.smallVerticalSpacer {
    height: 2px;
}

.smallVerticalSpacer2 {
    height: 5px;
}

.deliveryInstructions
{
    width: 300px;
    max-width:300px;
    float:left;
}

/* End of user testing related */


/* Go Green CSS enhancements */
.green, .green a {
    color: #83bf39;
}
.green .normal {
    color: #000000;
}
div.MainContent p.green img.left {
    margin: 0 .25em 0 0
}

div.inset {
    float:right;
    width:200px;
    margin:0px;
      
}

div.inset img {
    margin:auto;
}

div.inset div.caption {
    margin-left:1.5em;
    text-align:center;
}

div.inset p.caption {
    font-size:80%;    
}


/* Catering newsletter enhancement */
img.cateringTeaser {
    width: 180px;
    float: left;
    margin-left: 2em;
    margin-top: 4em;
}

.sidebarTeaser div.caption {
    margin-left:2.5em;
    text-align:center;
}
.sidebarTeaser p.caption {
    font-size:80%;
}
