:root{--ivory:#f6efe6;--ivory-deep:#ebe3d4;--charcoal:#1a1412;--charcoal-soft:#2c221f;--olive:#2f5d50;--olive-deep:#24483e;--gold:#b42318;--gold-soft:#d6453d;--cream:#f3ebe0;--text:#2a221f;--text-muted:#6a5f58;--white:#fff;--line:#2c29241f;--line-strong:#2c292438;--overlay:#1816137a;--overlay-deep:#1816139e;--serif:"Cormorant Garamond", "Times New Roman", serif;--sans:"Outfit", system-ui, sans-serif;--nav-height:5.25rem;--container:72rem;--container-wide:86rem;--space:clamp(4.5rem, 8vw, 8rem);--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--text);background:var(--ivory);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;font-weight:400;line-height:1.7}body.nav-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--serif);color:var(--charcoal);letter-spacing:-.02em;font-weight:500;line-height:1.12}ul{margin:0;padding:0;list-style:none}#root{min-height:100svh}.skip-link{z-index:200;background:var(--charcoal);color:var(--ivory);padding:.6rem 1rem;font-size:.875rem;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.container{width:min(100% - 2.5rem, var(--container));margin-inline:auto}.container-wide{width:min(100% - 2.5rem, var(--container-wide));margin-inline:auto}.eyebrow{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--olive);margin:0 0 .85rem;font-size:.72rem;font-weight:500}.site-main{min-height:60vh}@media (width<=640px){.container,.container-wide{width:min(100% - 1.5rem, var(--container))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn{min-height:3.1rem;font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.6rem;font-size:.78rem;font-weight:500;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.btn-primary{background:var(--gold);color:var(--charcoal);border-color:var(--gold)}.btn-primary:hover{background:var(--gold-soft);border-color:var(--gold-soft)}.btn-secondary{border-color:var(--charcoal);color:var(--charcoal)}.btn-secondary:hover{background:var(--charcoal);color:var(--ivory)}.btn-light{border-color:var(--ivory);color:var(--ivory)}.btn-light:hover{background:var(--ivory);color:var(--charcoal)}.btn-group{flex-wrap:wrap;gap:.85rem;display:flex}.section-heading{max-width:40rem}.section-heading--center{text-align:center;margin-inline:auto}.section-heading h2{font-size:clamp(2.1rem,4vw,3.35rem)}.section-heading .eyebrow:after{content:"";background:var(--gold);width:2.4rem;height:1px;margin-top:.8rem;display:block}.section-heading--center .eyebrow:after{margin-inline:auto}.section-heading p+h2,.section-heading .eyebrow+h2{margin-top:0}.section-heading__subtitle{color:var(--text-muted);margin-top:1.1rem;font-size:1.05rem}.section-heading--center .section-heading__subtitle{margin-inline:auto}.safe-image{background:var(--olive-deep);position:relative;overflow:hidden}.safe-image img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease), opacity .5s ease;position:absolute;inset:0}.safe-image--hover:hover img{transform:scale(1.04)}.safe-image__fallback{background:linear-gradient(160deg, var(--olive-deep), var(--charcoal));color:var(--gold-soft);font-family:var(--serif);letter-spacing:.08em;place-items:center;font-size:1.5rem;display:grid;position:absolute;inset:0}.site-header{z-index:100;height:var(--nav-height);transition:background .35s var(--ease), box-shadow .35s var(--ease), color .35s var(--ease);position:fixed;top:0;left:0;right:0}.site-header--overlay{color:var(--ivory);background:0 0}.site-header--solid,.site-header.is-scrolled,.site-header.is-open{background:var(--ivory);color:var(--charcoal);box-shadow:0 1px 0 var(--line)}.nav-bar{height:var(--nav-height);justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.brand{flex-direction:column;gap:.1rem;min-width:max-content;display:flex}.brand__name{font-family:var(--serif);letter-spacing:.02em;font-size:clamp(1.15rem,2.4vw,1.55rem);font-weight:600;line-height:1.05}.brand__place{letter-spacing:.22em;text-transform:uppercase;opacity:.72;font-size:.62rem}.nav-links{align-items:center;gap:1.7rem;display:flex}.nav-links a{letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;position:relative}.nav-links a:after{content:"";width:0;height:1px;transition:width .3s var(--ease);background:currentColor;position:absolute;bottom:-.35rem;left:0}.nav-links a:hover:after,.nav-links a[aria-current=page]:after{width:100%}.nav-cta{align-items:center;gap:.75rem;display:flex}.site-header--overlay .btn-primary{background:var(--gold);color:var(--charcoal)}.menu-toggle{width:2.75rem;height:2.75rem;color:inherit;cursor:pointer;background:0 0;border:0;display:none}.menu-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.mobile-nav{display:none}@media (width<=960px){.nav-links,.nav-cta .btn{display:none}.menu-toggle{place-items:center;display:grid}.mobile-nav{inset:var(--nav-height) 0 0;background:var(--ivory);color:var(--charcoal);visibility:hidden;pointer-events:none;transition:transform .4s var(--ease), visibility .4s var(--ease);flex-direction:column;gap:1.4rem;padding:2.5rem 1.5rem 3rem;display:flex;position:fixed;overflow:auto;transform:translate(100%)}.mobile-nav.is-open{visibility:visible;pointer-events:auto;transform:translate(0)}.mobile-nav a:not(.btn){font-family:var(--serif);font-size:2.2rem;font-weight:500;line-height:1.15}.mobile-nav .btn{white-space:nowrap;width:fit-content;max-width:100%;font-family:var(--sans);letter-spacing:.16em;align-self:flex-start;margin-top:1.5rem;font-size:.78rem;font-weight:500;line-height:1.2}}.site-footer{background:var(--charcoal);color:var(--ivory);padding:4.5rem 0 2rem}.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:3rem 2rem;display:grid}.footer-brand{font-family:var(--serif);font-size:2rem;font-weight:600}.footer-tagline{color:#f4efe6b8;max-width:20rem;margin-top:.85rem;font-size:.98rem}.site-footer h2{font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:1.1rem;font-size:.72rem;font-weight:500}.site-footer a{color:#f4efe6db;transition:color .25s;display:inline-block}.site-footer a:hover{color:var(--gold-soft)}.footer-list{gap:.55rem;display:grid}.footer-hours li{color:#f4efe6c7;align-items:baseline;gap:.65rem;font-size:.92rem;display:flex}.footer-hours li span:first-child{flex:none;order:1}.footer-hours li:after{content:"";border-bottom:1px dotted #f4efe647;flex:auto;order:2;min-width:1rem;margin-bottom:.3em}.footer-hours li span:last-child{text-align:right;white-space:pre-line;flex:0 auto;order:3;line-height:1.4}.footer-hours-notes{color:#f4efe68c;gap:.4rem;margin-top:.85rem;font-size:.82rem;display:grid}.footer-bottom{color:#f4efe68c;border-top:1px solid #f4efe61f;justify-content:space-between;gap:1rem;margin-top:3.5rem;padding-top:1.5rem;font-size:.82rem;display:flex}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=640px){.footer-grid,.footer-bottom{grid-template-columns:1fr;display:grid}}.menu-category{border-top:1px solid var(--line);scroll-margin-top:calc(var(--nav-height) + 3.5rem);padding:2.75rem 0}.menu-category h2{margin-bottom:.5rem;font-size:clamp(1.8rem,3vw,2.4rem)}.menu-category__note{color:var(--text-muted);margin-bottom:1.5rem;font-size:.95rem}.menu-list{gap:1.35rem;margin-top:1.25rem;display:grid}.menu-item{grid-template-columns:1fr auto;gap:.35rem 1.5rem;display:grid}.menu-item h3{font-size:1.28rem;font-weight:500}.menu-item__price{font-family:var(--serif);color:var(--olive);font-size:1.15rem}.menu-item p{color:var(--text-muted);grid-column:1/-1;font-size:.98rem}.page-hero{min-height:58vh;color:var(--ivory);background:var(--charcoal);align-items:end;display:grid;position:relative}.page-hero__media{position:absolute;inset:0}.page-hero__media .safe-image,.page-hero__media img{height:100%}.page-hero__media:after{content:"";background:linear-gradient(#18161366 0%,#1816138c 45%,#181613d1 100%);position:absolute;inset:0}.page-hero__content{z-index:1;padding:calc(var(--nav-height) + 4.5rem) 0 4.5rem;position:relative}.page-hero__eyebrow{color:#f6efe6eb;text-shadow:0 1px 12px #18161373}.page-hero h1{max-width:16ch;color:var(--ivory);font-size:clamp(2.8rem,7vw,5.4rem)}.page-hero p{color:#f4efe6db;max-width:36rem;margin-top:1rem;font-size:1.12rem}.home-hero{min-height:100svh;color:var(--ivory);background:var(--charcoal);align-items:end;display:grid;position:relative}.home-hero__media{position:absolute;inset:0}.home-hero__media .safe-image,.home-hero__media img{height:100%}.home-hero__media:after{content:"";background:linear-gradient(#18161359 0%,#18161380 40%,#181613d1 100%);position:absolute;inset:0}.home-hero__content{z-index:1;padding:0 0 7.5rem;position:relative}.home-hero__content>*{animation:fade-up .9s var(--ease) both}.home-hero__content>:nth-child(2){animation-delay:.12s}.home-hero__content>:nth-child(3){animation-delay:.22s}.home-hero__content>:nth-child(4){animation-delay:.32s}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.home-hero__place{color:#f6efe6eb;text-shadow:0 1px 12px #18161373}.home-hero h1{max-width:10ch;color:var(--ivory);margin-top:.4rem;font-size:clamp(4.2rem,10vw,8.4rem);font-weight:500;line-height:.9}.home-hero__tagline{color:#f4efe6e6;max-width:28rem;margin:1.4rem 0 2rem;font-size:clamp(1.15rem,2vw,1.4rem);font-weight:300}.section{padding:var(--space) 0}.section--alt{background:var(--cream)}.section--dark{background:var(--charcoal);color:var(--ivory)}.section--dark h2,.section--dark h3{color:var(--ivory)}.intro-grid,.split,.hours-grid,.contact-layout,.chef-grid,.spaces-grid,.events-grid{gap:3.5rem;display:grid}.intro-grid,.split,.chef-grid,.hours-grid,.contact-layout{grid-template-columns:1fr 1fr;align-items:center}.intro-copy .section-heading{margin-bottom:1.4rem}.intro-copy p{color:var(--text-muted);margin-bottom:1.1rem}.intro-media,.split-media,.chef-media{min-height:28rem}.intro-media .safe-image,.split-media .safe-image,.chef-media .safe-image{height:100%;min-height:28rem}.featured-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;display:grid}.featured-card article{gap:1rem;display:grid}.featured-card .safe-image{height:22rem}.featured-card h3{font-size:1.7rem}.featured-card p{color:var(--text-muted)}.featured-card span{font-family:var(--serif);color:var(--olive)}.experience-list{gap:.9rem;margin:1.6rem 0 2rem;display:grid}.experience-list li{color:var(--text);align-items:flex-start;gap:.75rem;display:flex}.experience-list svg{color:var(--olive);flex-shrink:0;margin-top:.2rem}.private-promo{min-height:34rem;color:var(--ivory);align-items:center;display:grid;position:relative}.private-promo .safe-image{z-index:0;height:100%;position:absolute;inset:0}.private-promo:after{content:"";z-index:1;background:var(--overlay);position:absolute;inset:0}.private-promo__content{z-index:2;max-width:38rem;padding:6rem 0;position:relative}.private-promo h2,.private-promo .eyebrow{color:var(--ivory)}.private-promo .eyebrow{color:var(--gold-soft)}.private-promo p{color:#f4efe6e0;margin:1.1rem 0 1.8rem}.testimonials{grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;display:grid}.testimonial{border-top:1px solid var(--line-strong);padding-top:1.4rem}.testimonial blockquote{font-family:var(--serif);color:var(--charcoal);margin:0;font-size:1.45rem;font-style:italic;line-height:1.35}.testimonial figcaption{letter-spacing:.08em;text-transform:uppercase;color:var(--olive);margin-top:1.2rem;font-size:.82rem}.hours-panel,.location-panel{gap:1rem;display:grid}.hours-panel ul{gap:0;display:grid}.hours-panel li{border-bottom:1px solid var(--line);align-items:baseline;gap:.75rem;padding:.7rem 0;display:flex}.hours-panel li span:first-child{flex:none;order:1;font-weight:500}.hours-panel li:after{content:"";border-bottom:1px dotted color-mix(in srgb, var(--line) 70%, var(--text-muted));flex:auto;order:2;min-width:1.25rem;margin-bottom:.35em}.hours-panel li span:last-child{text-align:right;white-space:pre-line;flex:0 auto;order:3;line-height:1.45}.hours-notes{color:var(--text-muted);gap:.45rem;margin-top:.35rem;font-size:.92rem;display:grid}.cta-band{text-align:center}.cta-band .section-heading{margin-bottom:1.8rem}.cta-band .section-heading h2{color:var(--ivory)}.cta-band .eyebrow{color:var(--gold-soft)}.cta-band .section-heading__subtitle{color:#f4efe6c7}.menu-page{padding-bottom:var(--space)}.menu-nav-wrap{top:var(--nav-height);z-index:40;background:var(--ivory);border-bottom:1px solid var(--line);position:sticky}.menu-nav{scrollbar-width:none;gap:.4rem;padding:.85rem 0;display:flex;overflow-x:auto}.menu-nav::-webkit-scrollbar{display:none}.menu-nav a{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid #0000;flex:none;padding:.45rem .85rem;font-size:.74rem}.menu-nav a:hover,.menu-nav a:focus-visible{color:var(--charcoal);border-bottom-color:var(--gold)}.menu-toolbar{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2rem 0 .5rem;display:flex}.menu-disclaimer{border-top:1px solid var(--line);color:var(--text-muted);margin-top:2.5rem;padding:1.4rem 0 0;font-size:.92rem}.story-prose{max-width:42rem;color:var(--text-muted);gap:1.15rem;margin-top:2rem;display:grid}.image-band{height:min(70vh,38rem)}.image-band .safe-image{height:100%}.philosophy-grid{grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;display:grid}.philosophy-card{border-top:1px solid var(--line-strong);padding-top:1.3rem}.philosophy-card h3{margin-bottom:.7rem;font-size:1.7rem}.philosophy-card p{color:var(--text-muted)}.about-gallery{grid-template-columns:1.4fr 1fr;gap:1rem;display:grid}.about-gallery .safe-image{height:100%;min-height:22rem}.events-grid,.spaces-grid{grid-template-columns:repeat(3,1fr);align-items:start;margin-top:3rem}.event-card .safe-image,.space-card .safe-image{height:16rem;margin-bottom:1.2rem}.event-card h3,.space-card h3{font-size:1.7rem}.event-card p,.space-card p{color:var(--text-muted);margin-top:.6rem}.space-card__meta{letter-spacing:.12em;text-transform:uppercase;color:var(--olive);margin-top:.35rem;font-size:.78rem}.reservation-cta{text-align:center;max-width:40rem;margin-inline:auto}.notes{color:var(--text-muted);margin-top:1.2rem}.contact-details{gap:1.6rem;display:grid}.contact-layout .section-heading+.notes,.contact-layout .map-placeholder+.section-heading{margin-top:2rem}.contact-details h2{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--olive);margin-bottom:.45rem;font-size:.72rem}.contact-details a:hover{color:var(--olive)}.map-placeholder{background:var(--ivory-deep);border:1px solid var(--line);min-height:22rem}.map-placeholder iframe{filter:grayscale(.35)contrast(.95);border:0;width:100%;height:22rem}.map-fallback{text-align:center;min-height:22rem;color:var(--text-muted);place-items:center;padding:2rem;display:grid}.map-fallback svg{color:var(--olive);margin-bottom:.8rem}.not-found{text-align:center;min-height:100svh;padding:calc(var(--nav-height) + 4rem) 1.5rem 6rem;place-items:center;display:grid}.not-found h1{font-size:clamp(3rem,8vw,5.5rem)}.not-found p{max-width:32rem;color:var(--text-muted);margin:1rem auto 2rem}@media (width<=960px){.intro-grid,.split,.chef-grid,.hours-grid,.contact-layout,.about-gallery,.featured-grid,.testimonials,.philosophy-grid,.events-grid,.spaces-grid{grid-template-columns:1fr}.home-hero__content{padding-bottom:5rem}.intro-media,.split-media,.chef-media,.intro-media .safe-image,.split-media .safe-image,.chef-media .safe-image{min-height:20rem}}@media (width<=640px){.featured-card .safe-image,.event-card .safe-image,.space-card .safe-image{height:16rem}.home-hero h1{font-size:clamp(3.4rem,16vw,5rem)}}
