/* menu.css – generated menu styles */

/* ── Dropdown nav overrides ─────────────────────────────────── */
.sf-menu > li > ul,
.sf-menu > li.sfHover > ul {
    width: auto;
    min-width: 260px;
}
.sf-menu > li > ul > li > a {
    white-space: nowrap;
    padding: 7px 24px 7px 20px;
    line-height: 1.3;
}
.sf-menu > li > ul > li + li {
    background: url(../images/bg-2.gif) 0 0 repeat-x;
}
/* ─────────────────────────────────────────────────────────────── */

.menu-section { margin-bottom: 40px; }
h2.menu-heading {
    font-size: 1.1rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #5a3e28;
    margin: 28px 0 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid #d4c4a8;
}
p.section-note {
    font-style: italic;
    color: #777;
    margin: 4px 0 14px;
    font-size: 0.9rem;
    line-height: 1.5;
}
.menu-item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
    gap: 4px 12px;
    padding: 9px 0;
    border-bottom: 1px dotted #d4c4a8;
}
.menu-item:last-child { border-bottom: none; }
.item-left { flex: 1 1 60%; }
.item-name {
    font-weight: bold;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.item-volume {
    font-size: 0.80rem;
    color: #999;
    margin-top: 1px;
}
.item-desc {
    font-size: 0.87rem;
    color: #555;
    font-style: italic;
    margin-top: 3px;
    line-height: 1.45;
}
.item-price {
    font-weight: bold;
    font-size: 0.95rem;
    color: #8b0000;
    white-space: nowrap;
    flex-shrink: 0;
    text-align: right;
    min-width: 58px;
}
p.plain-block {
    margin: 7px 0;
    font-size: 0.92rem;
    line-height: 1.6;
    color: #333;
}
table.menu-table {
    width: 100%;
    border-collapse: collapse;
    margin: 2px 0 22px;
}
table.menu-table td {
    padding: 8px 6px;
    font-size: 0.88rem;
    vertical-align: top;
    border-bottom: 1px dotted #d4c4a8;
    line-height: 1.4;
}
table.menu-table tr.header-row td {
    font-size: 0.78rem;
    color: #888;
    font-style: italic;
    border-bottom: 1px solid #c4b48a;
    padding-bottom: 4px;
}
table.menu-table td.name-cell {
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
table.menu-table td.price-cell {
    text-align: right;
    font-weight: bold;
    color: #8b0000;
    white-space: nowrap;
}
table.menu-table tr:last-child td { border-bottom: none; }
.hours-box {
    background: #f4efe8;
    border-left: 3px solid #8b0000;
    padding: 16px 20px;
    margin-top: 24px;
    border-radius: 2px;
}
.hours-box h3 {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #8b0000;
    margin-bottom: 10px;
}
.hours-row {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 4px 0;
    font-size: 0.88rem;
    border-bottom: 1px dotted #d4c4a8;
}
.hours-row:last-child { border-bottom: none; }
.hours-day { font-weight: bold; }

/* ── Heading hierarchy in content ───────────────────────── */
.content .grid_12 > h2:first-of-type,
.content .grid_12 > h2:first-child {
    padding-top: 16px;
    padding-bottom: 14px;
    font-size: 28px;
}
.content h3 {
    font-family: 'Patua One', cursive;
    font-size: 14px;
    font-weight: normal;
    color: #8b0000;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    margin: 28px 0 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid #d4c4a8;
}
.page-intro {
    font-style: italic;
    color: #555;
    margin-bottom: 16px;
    line-height: 1.6;
    font-size: 0.93rem;
}
