:root{--color-primary:#b32227;--color-primary-deep:#7e161a;--color-on-primary:#fff;--color-accent:#a16207;--color-background:#fef2f2;--color-foreground:#450a0a;--color-card:#fff;--color-muted-foreground:#7a5b57;--color-border:#fecaca;--color-ring:#b32227;--bg:var(--color-background);--surface:var(--color-card);--ink:var(--color-foreground);--ink-soft:var(--color-muted-foreground);--accent:var(--color-primary);--accent-deep:var(--color-primary-deep);--gold:var(--color-accent);--line:var(--color-border);--font-display:"Playfair Display SC", Georgia, serif;--font-body:"Karla", system-ui, sans-serif;--ease:cubic-bezier(.25, .8, .25, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:16px}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);letter-spacing:.01em;margin:0;font-weight:400;line-height:1.15}p{max-width:75ch;margin:0;line-height:1.6}em{font-style:normal}button{cursor:pointer;font-family:inherit}:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.container{width:min(1120px,92%);margin-inline:auto}.eyebrow{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.18em;color:var(--gold);font-size:.75rem;font-weight:700;display:inline-block}.btn{min-height:44px;font-family:var(--font-body);letter-spacing:.04em;cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;gap:.5em;padding:.8em 2em;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover{background:var(--color-primary-deep)}.btn-outline{border-color:var(--ink);color:var(--ink);background:0 0}.btn-outline:hover{background:var(--ink);color:var(--bg)}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.story,.signature,.visit,.menu-section{animation:rise-in .4s var(--ease) both;animation-timeline:view();animation-range:entry entry 35%}}.stagger>*{animation:stagger-in .4s var(--ease-spring) both}.stagger>:first-child{animation-delay:0s}.stagger>:nth-child(2){animation-delay:60ms}.stagger>:nth-child(3){animation-delay:.12s}.stagger>:nth-child(4){animation-delay:.18s}}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes stagger-in{0%{opacity:0;transform:translateY(16px)scale(.92)}to{opacity:1;transform:none}}.site-header{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#fbf8f2e6;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;padding-block:.85rem;display:flex}.site-header__brand{align-items:center;gap:.75rem;display:flex}.site-header__brand img{object-fit:contain;width:44px;height:44px}.site-header__brand-text{flex-direction:column;line-height:1.25;display:flex}.site-header__brand-text strong{font-family:var(--font-display);color:var(--ink);font-size:1.15rem;font-weight:600}.site-header__brand-text em{text-transform:uppercase;letter-spacing:.16em;color:var(--ink-soft);font-size:.62rem;font-weight:500}.site-header__nav{align-items:center;gap:2rem;font-size:.9rem;font-weight:500;display:flex}.site-header__nav a:not(.btn){color:var(--ink-soft);transition:color .16s var(--ease);padding-bottom:4px;position:relative}.site-header__nav a:not(.btn):hover,.site-header__nav a:not(.btn).is-active{color:var(--ink)}.site-header__nav a:not(.btn).is-active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:0;left:0;right:0}.site-header__cta{padding:.65em 1.5em;font-size:.8rem}.site-header__toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;display:none}.site-header__toggle span{background:var(--ink);height:2px;transition:transform .16s var(--ease), opacity .16s var(--ease);display:block}@media (width<=760px){.site-header__brand-text em{display:none}.site-header__toggle{display:flex}.site-header__nav{background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:1rem;padding:1.25rem 6%;display:none;position:absolute;top:100%;left:0;right:0}.site-header__nav.is-open{display:flex}.site-header__cta{text-align:center;width:100%}}.site-footer{background:var(--ink);color:#fbf8f2d9}.site-footer__inner{grid-template-columns:1.3fr 1fr 1fr 1fr;gap:2.5rem;padding-block:4rem 3rem;display:grid}.site-footer__brand img{object-fit:contain;width:52px;height:52px;margin-bottom:1rem}.site-footer__brand p{text-transform:uppercase;letter-spacing:.16em;color:#fbf8f299;font-size:.72rem;font-weight:500}.site-footer h4{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.16em;color:var(--gold);margin-bottom:1rem;font-size:.72rem;font-weight:600}.site-footer__col p{margin-bottom:.5rem;font-size:.9rem;line-height:1.6}.site-footer__col a{transition:color .16s var(--ease)}.site-footer__col a:hover{color:var(--bg)}.site-footer__bottom{color:#fbf8f280;border-top:1px solid #fbf8f21f;padding-block:1.25rem;font-size:.78rem}@media (width<=760px){.site-footer__inner{grid-template-columns:1fr 1fr}}.hero{background-image:var(--hero-image);min-height:88vh;color:var(--bg);isolation:isolate;background-position:50% 35%;background-size:cover;align-items:flex-end;display:flex;position:relative}.hero__overlay{z-index:-1;background:linear-gradient(#120d0740 0%,#120d0759 50%,#120d07d9 100%);position:absolute;inset:0}.hero__content{max-width:760px;padding-block:8rem 5rem}.hero .eyebrow{color:#fff5f2e6}.hero h1{color:var(--bg);margin-top:1rem;font-size:clamp(2.75rem,7vw,5rem)}.hero__tagline{text-transform:uppercase;letter-spacing:.28em;color:#fbf8f2d9;margin-top:1.25rem;font-size:.8rem;font-weight:500}.hero__lede{color:#fbf8f2d9;max-width:52ch;margin-top:1.5rem;font-size:1.05rem}.hero__actions{flex-wrap:wrap;gap:1rem;margin-top:2.5rem;display:flex}.hero .btn-outline{color:var(--bg);border-color:#fbf8f2b3}.hero .btn-outline:hover{background:var(--bg);color:var(--ink)}.hero__address{letter-spacing:.02em;color:#fbf8f299;margin-top:2.5rem;font-size:.85rem}.story{grid-template-columns:1.4fr 1fr;align-items:center;gap:4rem;padding-block:7rem;display:grid}.story__text h2{margin-top:1rem;margin-bottom:1.5rem;font-size:clamp(1.9rem,3.5vw,2.6rem)}.story__text p{color:var(--ink-soft);max-width:58ch;margin-bottom:1rem}.story__badge{justify-content:center;align-items:center;gap:1.25rem;display:flex}.story__badge-circle{border:1px solid var(--line);text-align:center;background:var(--surface);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:168px;height:168px;padding:1rem;display:flex}.story__badge-circle span{color:var(--gold);margin-bottom:.3rem;font-size:1.4rem}.story__badge-circle strong{font-family:var(--font-display);color:var(--ink);font-size:1.05rem;font-weight:600}.story__badge-circle em{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);margin-top:.4rem;font-size:.72rem}.story__badge-and{font-family:var(--font-display);color:var(--gold);font-size:1.5rem}.signature{padding-block:3rem 7rem}.section-heading{text-align:center;margin-bottom:3.5rem}.section-heading h2{margin-top:1rem;font-size:clamp(1.9rem,3.5vw,2.6rem)}.signature__grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.signature__card{background:var(--surface);border:1px solid var(--line);border-radius:2px;flex-direction:column;display:flex;overflow:hidden}.signature__icon{aspect-ratio:4/3;background:var(--bg);border-bottom:1px solid var(--line);justify-content:center;align-items:center;width:100%;padding:1.5rem;display:flex;overflow:hidden}.signature__icon img{object-fit:contain;width:auto;max-width:100%;height:100%;transition:transform .24s var(--ease)}.signature__card:hover .signature__icon img{transform:scale(1.04)}.signature__card h3{padding:1.25rem 1.25rem 0;font-size:1.15rem}.signature__card p{color:var(--ink-soft);flex:1;padding:.5rem 1.25rem 0;font-size:.875rem}.signature__price{font-family:var(--font-body);font-variant-numeric:tabular-nums;color:var(--ink);padding:1rem 1.25rem 1.25rem;font-weight:700;display:block}.signature__cta{text-align:center;margin-top:3.5rem}.visit{border-top:1px solid var(--line);padding-block:7rem}.visit__grid{grid-template-columns:1.3fr 1fr;align-items:start;gap:4rem;display:grid}.visit h2{margin:1rem 0 1.75rem;font-size:clamp(1.9rem,3.5vw,2.6rem)}.visit__line{color:var(--ink-soft);margin-bottom:.75rem}.visit__line a{transition:color .16s var(--ease)}.visit__line a:hover{color:var(--accent)}.visit__order{background:var(--surface);border:1px solid var(--line);border-radius:2px;padding:2.5rem}.visit__order h3{margin-bottom:1.5rem;font-size:1.3rem}.visit__order-links{flex-wrap:wrap;gap:1rem;display:flex}.visit__offline{color:var(--ink-soft);margin-top:1.5rem;font-size:.875rem}.visit__offline a{color:var(--ink);font-weight:500}@media (width<=900px){.story{grid-template-columns:1fr;gap:3rem;padding-block:5rem}.signature__grid{grid-template-columns:repeat(2,1fr)}.visit__grid{grid-template-columns:1fr;gap:3rem}.visit{padding-block:5rem}}@media (width<=520px){.signature__grid{grid-template-columns:1fr}.story__badge{flex-direction:column}}.menu-hero{border-bottom:1px solid var(--line);background:var(--surface);padding-block:4rem 2.5rem}.menu-hero h1{margin-top:.75rem;font-size:clamp(2.2rem,5vw,3.2rem)}.menu-hero__lede{color:var(--ink-soft);max-width:48ch;margin-top:.75rem}.menu-search{background:var(--bg);border:1px solid var(--line);max-width:560px;min-height:52px;transition:border-color .2s var(--ease);border-radius:2px;align-items:center;gap:.75rem;margin-top:1.5rem;padding-inline:1rem;display:flex}.menu-search:focus-within{border-color:var(--color-ring)}.menu-search__icon{width:18px;height:18px;color:var(--ink-soft);flex:none}.menu-search input{min-width:0;font-family:var(--font-body);color:var(--ink);background:0 0;border:none;flex:1;padding-block:.9em;font-size:1rem}.menu-search input:focus{outline:none}.menu-search input::placeholder{color:var(--ink-soft);opacity:.8}.menu-search__clear{min-height:44px;font-family:var(--font-body);color:var(--color-primary);background:0 0;border:none;flex:none;padding-inline:.5rem;font-size:.875rem;font-weight:600}.menu-explorer{padding-block:3rem 6rem}.menu-tabs{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:4px;display:inline-flex}.menu-tab{min-height:44px;color:var(--ink-soft);transition:background .2s var(--ease), color .2s var(--ease);background:0 0;border:none;border-radius:999px;padding:.6em 1.6em;font-size:.875rem;font-weight:600}.menu-tab.is-active{background:var(--color-primary);color:var(--color-on-primary)}.menu-shelves{grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem;display:grid}.menu-shelf{text-align:left;background:var(--surface);border:1px solid var(--line);min-height:44px;transition:border-color .2s var(--ease), transform .2s var(--ease);border-radius:2px;flex-direction:column;align-items:flex-start;gap:.25rem;padding:1.25rem;display:flex}.menu-shelf:hover{border-color:var(--ink-soft);transform:translateY(-2px)}.menu-shelf__visual{border:1px solid var(--line);background:var(--bg);width:56px;height:56px;color:var(--gold);transition:color .2s var(--ease), border-color .2s var(--ease);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.75rem;display:flex}.menu-shelf:hover .menu-shelf__visual{color:var(--color-primary);border-color:var(--color-border)}.menu-shelf__glyph{width:28px;height:28px}.menu-shelf h3{font-family:var(--font-body);letter-spacing:0;font-size:1rem;font-weight:700;line-height:1.35}.menu-shelf p{color:var(--ink-soft);font-size:.875rem}.menu-shelf__cta{text-transform:uppercase;letter-spacing:.14em;color:var(--color-primary);align-items:center;gap:.35em;margin-top:.75rem;font-size:.75rem;font-weight:700;display:inline-flex}.menu-shelf__cta svg{width:12px;height:12px}.menu-lore{text-align:center;max-width:640px;margin:4rem auto 0}.menu-lore blockquote{font-family:var(--font-display);color:var(--ink);margin:0;font-size:1.25rem;line-height:1.6}.menu-lore figcaption{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin-top:1rem;font-size:.75rem;font-weight:700}.menu-detail{animation:detail-in .24s var(--ease) both;padding-block:2rem 6rem}@media (prefers-reduced-motion:reduce){.menu-detail{animation:none}}@keyframes detail-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.menu-back{background:var(--surface);border:1px solid var(--line);min-height:44px;font-family:var(--font-body);color:var(--ink);transition:border-color .2s var(--ease);border-radius:999px;align-items:center;gap:.5em;padding:.4em .9em .4em .6em;font-size:.875rem;font-weight:600;display:inline-flex}.menu-back:hover{border-color:var(--ink-soft)}.menu-back svg{width:14px;height:14px}.menu-detail__head{margin-top:2rem}.menu-detail__head h2{font-size:clamp(1.75rem,4vw,2.4rem)}.menu-detail__count{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin-top:.5rem;font-size:.75rem;font-weight:700;display:block}.menu-detail__items{max-width:720px;margin-top:1.5rem}.menu-item{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1.5rem;min-height:44px;padding-block:1rem;display:flex}.menu-item__text h3{font-family:var(--font-body);letter-spacing:0;font-size:1rem;font-weight:600;line-height:1.4}.menu-item__text p{color:var(--ink-soft);margin-top:.25rem;font-size:.875rem;line-height:1.55}.menu-item__price{font-family:var(--font-body);font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap;font-weight:700}.menu-detail__nav{justify-content:space-between;gap:1rem;max-width:720px;margin-top:2.5rem;display:flex}.menu-detail__nav button{background:var(--surface);border:1px solid var(--line);text-align:left;min-height:44px;font-family:var(--font-body);transition:border-color .2s var(--ease);border-radius:2px;flex-direction:column;align-items:flex-start;gap:.25rem;padding:1rem 1.25rem;display:flex}.menu-detail__nav button:hover{border-color:var(--ink-soft)}.menu-detail__nav button span{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-size:.75rem;font-weight:700}.menu-detail__nav button strong{color:var(--ink);font-size:1rem}.menu-detail__nav .is-next{text-align:right;align-items:flex-end;margin-left:auto}.menu-results{padding-block:2.5rem 6rem}.menu-results__count{color:var(--ink-soft);font-size:.875rem}.menu-results__count strong{color:var(--ink)}.menu-result-kitchen{margin-top:2.5rem}.menu-result-kitchen h2{border-bottom:1px solid var(--line);padding-bottom:.75rem;font-size:1.5rem}.menu-result-group{margin-top:1.5rem}.menu-result-group__title{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin-bottom:.25rem;font-size:.75rem;font-weight:700}.menu-empty{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:2px;margin-top:2rem;padding:3rem 2rem}.menu-empty p{color:var(--ink-soft);max-width:40ch;margin:0 auto 1.5rem}@media (prefers-reduced-motion:no-preference){.stagger-grid>*{animation:stagger-in .4s var(--ease-spring) both}.stagger-grid>:first-child{animation-delay:0s}.stagger-grid>:nth-child(2){animation-delay:40ms}.stagger-grid>:nth-child(3){animation-delay:80ms}.stagger-grid>:nth-child(4){animation-delay:.12s}.stagger-grid>:nth-child(5){animation-delay:.16s}.stagger-grid>:nth-child(6){animation-delay:.2s}.stagger-grid>:nth-child(7){animation-delay:.24s}.stagger-grid>:nth-child(8){animation-delay:.28s}.stagger-grid>:nth-child(n+9){animation-delay:.32s}}@media (width<=900px){.menu-shelves{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.menu-hero{padding-block:2.5rem 1.5rem}.menu-explorer{padding-block:2rem 4rem}.menu-tabs{display:flex}.menu-tab{flex:1}.menu-detail__nav{flex-direction:column}.menu-detail__nav .is-next{text-align:left;align-items:flex-start;margin-left:0}}@media (width<=520px){.menu-shelves{gap:.75rem}.menu-shelf{padding:1rem}}
