
    :root {
      --paper: #f4efe7;
      --paper-deep: #e9dfd1;
      --ink: #211e1a;
      --muted: #746c62;
      --line: #d8cdbf;
      --card: rgba(255, 253, 249, .72);
    }
    * { box-sizing: border-box; }
    body {
      margin: 0;
      color: var(--ink);
      background: var(--paper);
      font-family: "DM Sans", sans-serif;
      line-height: 1.55;
    }
    .menu-shell { max-width: 1180px; }
    .hero {
      position: relative;
      overflow: hidden;
      padding: 4.5rem 1.25rem 3.5rem;
      text-align: center;
      border-bottom: 1px solid var(--line);
      background: linear-gradient(135deg, #f7f2eb 0%, #e9dfd1 100%);
    }
    .hero::before, .hero::after {
      content: "";
      position: absolute;
      width: 170px; height: 170px;
      border: 1px solid rgba(33,30,26,.13);
      border-radius: 50%;
      pointer-events: none;
    }
    .hero::before { left: -70px; top: -75px; }
    .hero::after { right: -70px; bottom: -90px; }
    .eyebrow {
      font-size: .72rem;
      letter-spacing: .48em;
      text-transform: uppercase;
      font-weight: 700;
      color: var(--muted);
      margin-bottom: .75rem;
    }
    .brand {
      font-family: "Playfair Display", serif;
      font-size: clamp(3.2rem, 8vw, 5.8rem);
      letter-spacing: .03em;
      line-height: 1;
      margin: 0;
    }
    .hero-subtitle {
      margin: 1rem 0 0;
      color: var(--muted);
      letter-spacing: .16em;
      text-transform: uppercase;
      font-size: .78rem;
    }
    .menu-nav {
      position: sticky; top: 0; z-index: 10;
      background: rgba(244,239,231,.94);
      backdrop-filter: blur(12px);
      border-bottom: 1px solid var(--line);
    }
    .menu-nav .nav-link {
      color: var(--ink);
      font-size: .83rem;
      font-weight: 600;
      padding: .9rem .85rem;
      white-space: nowrap;
    }
    .menu-nav .nav-link:hover { color: var(--muted); }
    .menu-content { padding-top: 3.25rem; padding-bottom: 4rem; }
    .menu-section { margin-bottom: 2.2rem; }
    .section-heading {
      font-family: "Playfair Display", serif;
      font-size: 1.75rem;
      margin-bottom: 1.15rem;
      padding-bottom: .7rem;
      border-bottom: 1px solid var(--line);
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 1rem;
    }
	  h3.item-name{
		  margin: 0 !important;
	  }
    .section-heading small {
      font-family: "DM Sans", sans-serif;
      color: var(--muted);
      font-size: .65rem;
      letter-spacing: .22em;
      text-transform: uppercase;
      white-space: nowrap;
    }
    .menu-card {
      height: 100%;
      padding: 0.5rem 1.15rem;
      border: 1px solid var(--line);
      border-radius: 3px;
      background: var(--card);
    }
    .item-name { font-size: .98rem; font-weight: 700; margin: 0 0 .28rem; }
    .item-desc { color: var(--muted); font-size: .82rem; margin: 0; }
    .allergen { color: #5d5144; font-size: .75rem; margin: 0 0 0; }
    .allergen strong { color: var(--ink); font-weight: 700; }
    .simple-item { padding: .7rem 0; border-bottom: 1px dashed var(--line); }
    .simple-item:last-child { border-bottom: 0; }
    .simple-item .item-name { margin: 0; }
    .extras-list { columns: 2; padding-left: 1.15rem; margin: 0; }
    .extras-list li { margin: 0 0 .55rem; break-inside: avoid; font-size: .9rem; }
    .note { color: var(--muted); font-size: .78rem; margin-top: .8rem; }
    footer {
      padding: 2.2rem 1rem;
      text-align: center;
      color: #eee7dc;
      background: var(--ink);
    }
    footer .footer-brand {
      font-family: "Playfair Display", serif;
      font-size: 1.7rem;
      margin-bottom: .4rem;
    }
    footer a { color: #eee7dc; text-decoration: none; }
    footer a:hover { text-decoration: underline; }
    .footer-details { font-size: .82rem; color: #d2c7b9; }
    @media (max-width: 575.98px) {
      .hero { padding: 2rem 2rem; }
      .menu-nav .nav-link { padding: .75rem .65rem; font-size: .76rem; }
      .menu-content { padding-top: 2rem; }
      .section-heading { font-size: 1.5rem; }
      .extras-list { columns: 1; }
    }
    @media print {
      .menu-nav { display: none; }
      body { background: white; }
      .hero { padding: 2rem 1rem; }
      .menu-card { break-inside: avoid; background: white; }
      footer { background: white; color: black; border-top: 1px solid #aaa; }
      footer a, .footer-details { color: black; }
    }
	.item-price{
		font-weight: 600;
		color: green !important;
	}