:root{--burgundy: #5c1420;--burgundy-deep: #3d0d16;--cream: #f7f1e6;--cream-dark: #ece3d3;--ink: #1c1412;--muted: #5c524a;--gold: #b0893a;--paper: #fffdf8;--error: #8b1e1e;--ok: #215c38;--shadow: 0 18px 40px rgba(28, 20, 18, .12);--max: 1120px}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:clip}body{font-family:Georgia,Palatino Linotype,Palatino,Times New Roman,serif;color:var(--ink);background:var(--cream);line-height:1.55;font-size:1.05rem}#root{min-height:100vh}img{max-width:100%;display:block}a{color:var(--burgundy)}h1,h2,h3{font-weight:600;letter-spacing:.02em;line-height:1.2}.site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;background:var(--burgundy-deep);color:var(--cream);position:sticky;top:0;z-index:20}.wordmark{color:var(--cream);text-decoration:none;font-size:clamp(1.25rem,4vw,1.6rem);min-height:44px;display:inline-flex;align-items:center}.nav-toggle{display:none;align-items:center;gap:.45rem;min-height:44px;min-width:44px;padding:.45rem .75rem;background:transparent;color:var(--cream);border:1px solid var(--gold);cursor:pointer;font:inherit}.nav-toggle-bars{display:flex;flex-direction:column;justify-content:space-between;width:1.15rem;height:.8rem}.nav-toggle-bars span{display:block;height:2px;background:currentColor}.site-nav{display:flex;flex-wrap:wrap;gap:.4rem .55rem}.site-nav a{color:var(--cream);text-decoration:none;border-bottom:1px solid transparent;min-height:44px;min-width:44px;padding:.4rem .65rem;display:inline-flex;align-items:center;gap:.4rem}.nav-icon{flex:0 0 auto}.site-nav a:hover,.site-nav a[aria-current=page]{border-bottom-color:var(--gold);color:#fff}.site-main{max-width:var(--max);margin:0 auto;padding:1.5rem}.site-footer{background:var(--burgundy-deep);color:var(--cream);padding:2rem 1.5rem;margin-top:2rem}.footer-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:1.5rem;align-items:center;margin-bottom:2rem}.hero img{width:100%;height:100%;object-fit:cover;min-height:280px;border:1px solid var(--gold);box-shadow:var(--shadow)}.hero h1{font-size:clamp(2.2rem,5vw,4rem);margin:0 0 .5rem;color:var(--burgundy)}.lede{font-size:1.15rem;color:var(--muted)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.card{background:var(--paper);padding:1.25rem;border:1px solid var(--cream-dark);box-shadow:var(--shadow)}.menu-page{display:grid;gap:1.5rem}.menu-honesty{margin:0;padding:.9rem 1rem;background:var(--paper);border-left:3px solid var(--gold);color:var(--muted);font-size:.98rem}.menu-category h2{color:var(--burgundy);border-bottom:1px solid var(--gold);padding-bottom:.35rem}.menu-list{list-style:none;padding:0;margin:0;display:grid;gap:.85rem}.menu-item{display:grid;grid-template-columns:7.5rem 1fr auto;gap:.65rem 1rem;align-items:start;background:var(--paper);padding:.9rem 1rem;border:1px solid var(--cream-dark)}.menu-item-photo,.menu-item-placeholder{grid-row:1 / span 4;width:7.5rem;height:7.5rem;object-fit:cover;border:1px solid var(--cream-dark)}.menu-item-placeholder{display:grid;place-items:center;background:var(--cream-dark);color:var(--muted);text-align:center;font-size:.85rem;padding:.5rem}.menu-item p,.menu-item-caption{grid-column:2 / -1;margin:0;color:var(--muted)}.menu-item-caption{font-size:.85rem}.price{color:var(--burgundy);font-variant-numeric:tabular-nums;font-size:1.05rem}.form{display:grid;gap:.85rem;max-width:32rem;background:var(--paper);padding:1.25rem;border:1px solid var(--cream-dark)}.form label{display:grid;gap:.3rem;font-size:1rem}.form input,.form select,.form button,.newsletter-form input,.newsletter-form button{font:inherit;font-size:1rem;min-height:44px;padding:.45rem .7rem;max-width:100%}.newsletter-form{display:grid;gap:.5rem;margin-top:.5rem}.form button,.newsletter-form button{background:var(--burgundy);color:var(--cream);border:0;cursor:pointer}.form button:disabled,.newsletter-form button:disabled{opacity:.6;cursor:not-allowed}.banner{padding:.85rem 1rem;border:1px solid currentColor}.banner.is-ok{color:var(--ok);background:#e8f4ec}.banner.is-error{color:var(--error);background:#f8eaea}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.gallery-grid button{padding:0;border:1px solid var(--gold);background:none;cursor:pointer;min-height:44px;width:100%}.gallery-grid img{width:100%;height:220px;object-fit:cover}.caption{margin:.4rem 0 0;color:var(--muted);font-size:.95rem}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1412db;display:grid;place-items:center;z-index:40;padding:1.5rem}.lightbox img{max-width:min(960px,100%);max-height:80vh;object-fit:contain}.lightbox-close{position:absolute;top:1rem;right:1rem;background:var(--cream);border:0;min-height:44px;min-width:44px;padding:.4rem .7rem;cursor:pointer}.founders{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}blockquote{margin:0;padding:1rem 1.1rem;background:var(--paper);border-left:3px solid var(--gold)}.awards{list-style:none;padding:0;display:grid;gap:.5rem}.hours-note{color:var(--muted)}.footer-operator{max-width:var(--max);margin:1.5rem auto 0;font-size:.85rem}.footer-operator a{color:var(--cream);text-decoration:none;border-bottom:1px solid transparent}.footer-operator a:hover,.footer-operator a[aria-current=page]{border-bottom-color:var(--gold)}.data-table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;background:var(--paper)}.data-table th,.data-table td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--cream-dark)}.data-table th{color:var(--burgundy);font-weight:600}@media (max-width: 800px){.hero{grid-template-columns:1fr}.site-header{align-items:center}}@media (max-width: 767px){html.js-nav .nav-toggle{display:inline-flex;margin-left:auto}html.js-nav .site-nav{display:none;width:100%;flex-direction:column}html.js-nav .site-nav.is-open{display:flex}html.js-nav .site-nav a{width:100%}.menu-item{grid-template-columns:1fr auto}.menu-item-photo,.menu-item-placeholder{grid-column:1 / -1;grid-row:auto;width:100%;height:12rem}.menu-item p,.menu-item-caption{grid-column:1 / -1}}@media (max-width: 400px){.site-main{padding:1.15rem}.wordmark{max-width:calc(100% - 8.5rem)}}
