:root{--ink:#121212;--ivory:#f1ece2;--bg:var(--ink);--bg-2:#1c1b1a;--cream:var(--ivory);--muted:#a39c91;--gold:#b8955c;--gold-2:#cdb083;--line:#f1ece21f;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Manrope", system-ui, sans-serif;--gutter:clamp(1rem, 4vw, 3rem)}*,:before,:after{box-sizing:border-box}html{background:var(--bg);color:var(--cream);-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{font-family:var(--sans);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.6;overflow-x:clip}body.is-loading{overflow:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit}em{color:var(--gold-2);font-style:italic}h1,h2,h3,p,figure,dl,dd{margin:0}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.wrap{width:min(1200px, 100% - 2 * var(--gutter));margin-inline:auto}.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-size:.75rem;font-weight:600}.section-title{font-family:var(--serif);margin-top:.75rem;font-size:clamp(2.4rem,5vw,4.2rem);font-weight:500;line-height:1.02}.btn{min-height:3rem;font:600 .95rem/1 var(--sans);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.6rem;text-decoration:none;transition:transform .3s,background .3s,color .3s,border-color .3s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--cream);color:var(--bg)}.btn-gold:hover{background:var(--gold-2);color:var(--ink)}.btn-ghost{border-color:var(--line);color:var(--cream)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold-2)}.btn-block{width:100%}.loader{z-index:100;background:var(--bg);align-content:center;place-items:center;gap:1rem;display:grid;position:fixed;inset:0}.loader-mark{font-family:var(--serif);color:var(--gold-2);font-size:clamp(2.5rem,8vw,5rem);font-style:italic}.loader-count{letter-spacing:.3em;color:var(--muted);font-size:.8rem}.webgl{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}main,.footer{z-index:1;position:relative}.solid{background:var(--bg);color:var(--cream)}.light{--bg:var(--ivory);--bg-2:#e8e1d5;--cream:#161514;--muted:#6b645a;--gold:#9a4a2e;--gold-2:#9a4a2e;--line:#1615141f}.nav{z-index:50;padding:1.1rem var(--gutter);align-items:center;gap:2rem;transition:background .4s,padding .4s;display:flex;position:fixed;inset:0 0 auto}.nav.is-scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#121212cc;padding-block:.7rem}.nav-logo{font-family:var(--serif);color:var(--cream);align-items:center;gap:.6rem;font-size:1.5rem;font-style:italic;text-decoration:none;display:flex}.nav-logo svg{fill:none;width:1.6rem;stroke:var(--gold);stroke-width:2px}.nav nav{margin-left:auto}.nav-links{gap:2rem;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:var(--muted);font-size:.9rem;text-decoration:none;transition:color .3s}.nav-links a:hover{color:var(--cream)}.nav-cta{min-height:2.6rem}.nav-toggle{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;width:2.75rem;height:2.75rem;margin-left:auto;display:none}.nav-toggle span{background:var(--cream);width:1.1rem;height:1.5px;margin:4px auto;transition:transform .3s;display:block}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(2.75px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:last-child{transform:translateY(-2.75px)rotate(-45deg)}.mobile-menu{z-index:40;padding:var(--gutter);background:var(--bg);flex-direction:column;justify-content:center;gap:1.25rem;display:flex;position:fixed;inset:0}.mobile-menu[hidden]{display:none}.mobile-menu a:not(.btn){font-family:var(--serif);font-size:2.6rem;text-decoration:none}@media (width<=820px){.nav-links,.nav-cta{display:none}.nav-toggle{display:block}}.hero{text-align:center;min-height:100svh;padding:7rem var(--gutter) 5rem;flex-direction:column;justify-content:center;align-items:center;display:flex}.hero-inner{flex-direction:column;align-items:center;display:flex}.hero-title{font-family:var(--serif);letter-spacing:-.02em;margin-top:1.5rem;font-size:clamp(5rem,19vw,15rem);font-weight:500;line-height:.82}.hero-title .line{padding-bottom:.08em;display:block;overflow:hidden}.hero-title .line>*{display:inline-block}.hero-sub{max-width:30rem;color:var(--muted);margin-top:1.75rem;font-size:1.1rem}.hero-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:2rem;display:flex}.scroll-hint{letter-spacing:.3em;text-transform:uppercase;color:var(--muted);flex-direction:column;align-items:center;gap:.6rem;font-size:.7rem;display:flex;position:absolute;bottom:2rem;left:50%;translate:-50%}.scroll-hint span{background:linear-gradient(var(--gold), transparent);transform-origin:top;width:1px;height:2.5rem;animation:2s ease-in-out infinite hint}@keyframes hint{0%{transform:scaleY(0)}50%{transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.story-pin{min-height:100svh;padding:6rem var(--gutter);flex-direction:column;justify-content:center;max-width:1200px;margin-inline:auto;display:flex}.story-lines{font-family:var(--serif);max-width:16em;margin-top:1.25rem;font-size:clamp(2rem,4.6vw,4rem);font-weight:500;line-height:1.12}.story-line{opacity:.12;display:block}.menu-pin{min-height:100svh;padding:6rem var(--gutter);align-items:center;display:flex}.menu-info{width:min(24rem,100%);margin-left:max(0px,50vw - 600px)}.menu-index{letter-spacing:.2em;color:var(--muted);margin-top:1.5rem;font-size:.85rem}.menu-index span{color:var(--gold-2)}.menu-name{font-family:var(--serif);margin-top:.5rem;font-size:clamp(2.2rem,4vw,3.4rem);line-height:1.05}.menu-desc{color:var(--muted);margin-top:1rem}.menu-price{font-family:var(--serif);color:var(--gold-2);margin-top:1rem;font-size:1.8rem}.menu-progress{background:var(--line);height:2px;margin-top:2rem}.menu-progress span{background:var(--gold);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(0)}.menu-static{display:none}@media (width<=820px){.menu-pin{align-items:flex-end;padding-bottom:3rem}.menu-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#121212bf;border-radius:1rem;padding:1.25rem}.menu-name{font-size:2rem}}.feast-pin{min-height:100svh;padding:6rem var(--gutter) 4rem;align-items:flex-end;display:flex}.feast-captions{width:100%;max-width:1200px;height:clamp(4rem,10vw,8rem);margin-inline:auto;position:relative}.feast-caption{font-family:var(--serif);opacity:0;text-shadow:0 4px 30px #00000080;font-size:clamp(2.6rem,8vw,7rem);line-height:1;transition:opacity .6s,transform .6s;position:absolute;inset:auto 0 0;transform:translateY(30px)}.feast-caption span{font:600 .8rem/1 var(--sans);letter-spacing:.3em;color:var(--gold-2);margin-bottom:.75rem;display:block}.feast:not(.is-on) .feast-caption{opacity:0}.feast-caption.is-active{opacity:1;transform:none}.full-menu{border-top:1px solid var(--line);padding:clamp(5rem,10vw,9rem) 0}.tabs{flex-wrap:wrap;gap:.5rem;margin-top:2.5rem;display:flex}.tab{border:1px solid var(--line);color:var(--muted);font:600 .85rem/1 var(--sans);cursor:pointer;background:0 0;border-radius:999px;padding:.6rem 1.2rem;transition:all .3s}.tab[aria-selected=true]{background:var(--cream);border-color:var(--cream);color:var(--bg)}.menu-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr));gap:0 4rem;margin-top:2.5rem;display:grid}.menu-item{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:.25rem 1rem;padding:1.4rem 0;animation:.6s both rise;display:grid}.menu-item h3{font-family:var(--serif);font-size:1.6rem;font-weight:500}.menu-item .price{font-family:var(--serif);color:var(--gold-2);font-size:1.4rem}.menu-item p{color:var(--muted);grid-column:1/-1;font-size:.95rem}.menu-item .tag{vertical-align:middle;font:600 .65rem/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;background:color-mix(in srgb, var(--gold) 12%, transparent);color:var(--gold);border-radius:999px;margin-left:.5rem;padding:.15rem .5rem;display:inline-block}.menu-note{color:var(--muted);margin-top:2rem;font-size:.9rem}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.chef{padding:clamp(5rem,10vw,9rem) 0}.chef-grid{grid-template-columns:1fr 1.1fr;align-items:center;gap:clamp(2rem,6vw,6rem);display:grid}.chef-photo{aspect-ratio:4/5;border-radius:1.5rem;overflow:hidden}.chef-photo img{object-fit:cover;width:100%;height:115%}.chef-text>p:not(.eyebrow){color:var(--muted);max-width:34rem;margin-top:1.5rem;font-size:1.05rem}.stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;padding-top:2rem;display:grid}.stats dt{font-family:var(--serif);color:var(--gold-2);font-size:3rem;line-height:1}.stats dd{color:var(--muted);margin-top:.5rem;font-size:.85rem}.plating{aspect-ratio:4/5;border-radius:1rem;width:45%;margin:2.5rem 0 0 auto;overflow:hidden}.plating img{object-fit:cover;width:100%;height:100%}@media (width<=820px){.chef-grid{grid-template-columns:1fr}.plating{display:none}}.reviews{border-top:1px solid var(--line);padding:clamp(4rem,8vw,7rem) 0}.stars{color:var(--gold);letter-spacing:.1em;vertical-align:middle;font-size:.5em}.marquee{margin-top:3rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee-track{gap:1.25rem;width:max-content;margin:0;padding:0;list-style:none;animation:60s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.review{border:1px solid var(--line);background:var(--bg-2);border-radius:1.25rem;width:min(24rem,80vw);padding:1.75rem}.review blockquote{font-family:var(--serif);margin:.75rem 0 0;font-size:1.35rem;line-height:1.3}.review figcaption{color:var(--muted);margin-top:1.25rem;font-size:.85rem}@keyframes marquee{to{transform:translate(calc(-50% - .625rem))}}.visit{border-top:1px solid var(--line);padding:clamp(5rem,10vw,9rem) 0}.visit-grid{grid-template-columns:1.1fr 1fr;align-items:start;gap:clamp(2rem,6vw,5rem);display:grid}.visit-photo{aspect-ratio:16/10;border-radius:1.25rem;margin-top:2rem;overflow:hidden}.visit-photo img{object-fit:cover;width:100%;height:100%}.hours{grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:2rem;display:grid}.hours dt{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-size:.75rem}.hours dd{font-family:var(--serif);margin-top:.25rem;font-size:1.3rem}.booking{border:1px solid var(--line);background:var(--bg-2);border-radius:1.5rem;gap:1.1rem;padding:clamp(1.25rem,3vw,2.25rem);display:grid}.booking label,.booking legend{letter-spacing:.05em;color:var(--muted);gap:.4rem;font-size:.8rem;font-weight:600;display:grid}.booking input:not([type=radio]),.booking select{border:1px solid var(--line);background:var(--bg);width:100%;min-height:3rem;color:var(--cream);font:500 1rem var(--sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:.75rem;padding:0 1rem}.booking input:focus,.booking select:focus{border-color:var(--gold);outline:none}.field-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.guests{border:0;margin:0;padding:0}.guest-options{flex-wrap:wrap;gap:.5rem;margin-top:.4rem;display:flex}.guest-options label{border:1px solid var(--line);width:3rem;height:3rem;font:600 .95rem var(--sans);color:var(--cream);cursor:pointer;border-radius:50%;place-items:center;transition:all .25s;display:grid}.guest-options input{opacity:0;position:absolute}.guest-options label:has(:checked){background:var(--cream);border-color:var(--cream);color:var(--bg)}.guest-options label:has(:focus-visible){outline:2px solid var(--gold);outline-offset:2px}.optional{letter-spacing:0;font-weight:400}.form-error{color:#f87171;font-size:.9rem}.booking-done{background:#b8955c14;border:1px solid #b8955c59;border-radius:1rem;padding:1.25rem}.booking-done-title{font-family:var(--serif);color:var(--gold-2);font-size:1.6rem}.booking-done p+p{margin-top:.5rem}.booking-demo{color:var(--muted);font-size:.85rem}@media (width<=820px){.visit-grid{grid-template-columns:1fr}}.footer{border-top:1px solid var(--line);padding:5rem 0 5.5rem}.footer-grid{gap:1rem;display:grid}.footer-logo{font-family:var(--serif);font-size:clamp(3.5rem,12vw,9rem);line-height:1.05}.footer-tag{color:var(--muted)}.footer-links{flex-wrap:wrap;gap:1.5rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.footer-links a{color:var(--muted);text-decoration:none}.footer-links a:hover{color:var(--gold-2)}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:1.5rem;font-size:.85rem;display:flex}.made-by{color:var(--cream);text-decoration:none}.made-by strong{color:var(--gold-2)}.demo-badge{z-index:60;background:var(--ivory);color:var(--ink);border-radius:999px;padding:.55rem .9rem;font-size:.75rem;text-decoration:none;transition:transform .3s;position:fixed;bottom:1rem;left:1rem;box-shadow:0 10px 30px #0006}@media (width<=820px){.demo-badge{padding:.45rem .75rem;bottom:.75rem;left:auto;right:.75rem}.badge-long{display:none}.demo-badge strong:before{content:"By ";font-weight:400}.menu-pin{padding-bottom:4.5rem}}.demo-badge:hover{transform:translateY(-2px)}.no-webgl .webgl{display:none}.no-webgl .hero{background:linear-gradient(#12121299, var(--bg)), url(/img/feast-1.webp) center / cover}.no-webgl .feast-pin{background:url(/img/feast-1.webp) 50%/cover}.no-webgl .menu-static{width:min(1200px, 100% - 2 * var(--gutter));grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem;margin:0 auto 4rem;padding:0;list-style:none;display:grid}.no-webgl .menu-static img{aspect-ratio:4/5;object-fit:cover;border-radius:1rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
