:root{--ivory:#f8f1e5;--cream:#fffdf8;--clay:#bb6d4f;--deep:#844635;--olive:#727a58;--darkolive:#4a513c;--wine:#713b45;--ink:#2e2a26;--linen:#ede0d1;--brass:#af8958;--muted:#776e65;--line:rgba(46,42,38,.18);--wrap:min(1180px,calc(100% - 64px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 "Segoe UI",Arial,sans-serif}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 4.5vw;background:var(--cream);position:relative;z-index:5;border-bottom:1px solid transparent}.site-header.scrolled{position:sticky;top:0;border-color:var(--line);animation:down .25s both}.brand{font-size:30px;letter-spacing:.15em;font-weight:700;line-height:.75}.brand small{display:block;font-size:8px;letter-spacing:.26em;font-weight:500;margin-top:10px}.site-header nav{display:flex;gap:28px;font-size:14px}.site-header nav a:hover,.text-link:hover{text-decoration:underline;text-decoration-color:var(--clay);text-underline-offset:5px}.header-book{font-size:13px;font-weight:700;border-bottom:2px solid var(--clay);padding:9px 2px}.header-book span{font-size:20px;margin-left:7px}.nav-toggle,.mobile-nav{display:none}.section{padding:130px 0}.section-head{width:var(--wrap);margin:0 auto 58px}.eyebrow{color:var(--clay);font-size:11px;font-weight:700;letter-spacing:.18em;margin:0 0 15px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(45px,6.25vw,94px);letter-spacing:-.06em;line-height:1.02;margin:0 0 26px}h1 i{font-weight:500}h2{font-size:clamp(37px,4vw,60px);line-height:1.05;letter-spacing:-.045em;margin-bottom:20px}h3{font-size:30px;line-height:1.1;letter-spacing:-.04em}.button{display:inline-block;background:var(--ink);color:white;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.14em;padding:16px 23px;border:1px solid var(--ink);transition:.24s}.button:hover{background:var(--clay);border-color:var(--clay)}.button.small{font-size:9px;padding:13px}.text-link{font-size:13px;font-weight:700;margin-left:20px}.hero{height:min(780px,calc(100vh - 30px));min-height:620px;position:relative;overflow:hidden;background:var(--ink)}.hero-photo{position:absolute;inset:0 0 0 28%;overflow:hidden}.hero-photo:after,.invitation:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(46,42,38,.76),rgba(46,42,38,.05) 68%)}.hero-photo img{height:100%;transition:opacity .3s ease,transform .35s ease}.hero-copy{position:absolute;z-index:1;color:var(--cream);top:20%;left:8%;max-width:520px}.hero-copy p:not(.eyebrow){max-width:440px;font-size:17px;color:#eee1d3}.hero-copy .eyebrow{color:#f4c5ac}.hero-actions{margin-top:32px}.hero-actions .text-link{color:#fff}.dish-rail{position:absolute;display:flex;bottom:0;left:8%;z-index:2;background:rgba(255,253,248,.93);padding:12px;gap:10px}.rail-item{border:0;background:none;display:flex;text-align:left;gap:10px;align-items:center;padding:5px;max-width:160px}.rail-item.active{background:var(--linen)}.rail-item img{width:45px;height:45px;border-radius:50%}.rail-item span{font-size:10px;line-height:1.2}.rail-item b{display:block;color:var(--clay);margin-top:3px}.hero-index{position:absolute;right:5%;bottom:5%;color:white;font-size:11px;letter-spacing:.13em}.ribbon{display:flex;overflow:auto;background:var(--linen);padding:17px 6vw;gap:16px;scroll-snap-type:x mandatory}.ribbon a{display:flex;min-width:260px;align-items:center;gap:14px;scroll-snap-align:start;font-size:13px;border-right:1px solid var(--line);padding-right:16px}.ribbon img{width:55px;height:55px;border-radius:50%;transition:.25s}.ribbon a:hover img{transform:scale(1.12)}.ribbon b{font-size:11px;display:block;color:var(--clay)}.signature{background:var(--ivory)}.story{width:var(--wrap);margin:0 auto 105px;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center}.story img{height:530px;border-radius:48% 48% 10px 10px}.story>div{max-width:360px}.story-right{grid-template-columns:.8fr 1.2fr}.story-right>div{justify-self:end}.story-right img{border-radius:10px 48% 48% 10px}.story-full{width:min(1000px,90%);margin:auto;position:relative}.story-full img{height:540px;border-radius:220px 220px 12px 12px}.story-full p{position:absolute;bottom:25px;left:30px;color:#fff;font-size:25px}.story-full b{font-size:14px}.taste{background:var(--darkolive);color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;padding-left:max(7vw,calc((100vw - 1180px)/2));padding-right:max(7vw,calc((100vw - 1180px)/2))}.taste .eyebrow{color:#d9bd86}.taste-wheel{height:420px;position:relative}.taste-arc{position:absolute;width:390px;height:390px;border:1px solid rgba(255,255,255,.45);border-radius:50%;right:4%;top:0}.taste-arc:after{content:"";position:absolute;inset:43px;border:1px solid rgba(255,255,255,.22);border-radius:50%}.taste-point{position:absolute;text-transform:uppercase;font-size:11px;letter-spacing:.12em;border:0;background:transparent;color:#e9ddc7;padding:8px}.taste-point:before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:currentColor;margin-right:7px}.taste-point.active{color:#f5b289}.p1{top:0;right:32%}.p2{top:17%;right:5%}.p3{top:49%;right:-2%}.p4{bottom:13%;right:14%}.p5{bottom:0;right:41%}.taste-result{position:absolute;z-index:1;width:310px;bottom:25px;left:4%;background:var(--cream);color:var(--ink);padding:11px;display:flex;gap:13px;align-items:center}.taste-result img{width:70px;height:70px;border-radius:50%}.taste-result small,.taste-result span{display:block;font-size:10px}.taste-result small{color:var(--clay);font-weight:700}.taste-result strong{display:block;font-size:16px}.composer{background:#f4ecdf;display:grid;grid-template-columns:1fr 1fr 260px;gap:30px;align-items:center;padding-left:max(7vw,calc((100vw - 1180px)/2));padding-right:max(7vw,calc((100vw - 1180px)/2))}.people-select,.dish-picks{display:flex;flex-wrap:wrap;gap:7px;margin:28px 0}.people-select button,.dish-picks button{border:1px solid var(--line);padding:9px 11px;background:transparent;font-size:11px}.people-select button.active,.people-select button:hover,.dish-picks button.active{background:var(--wine);border-color:var(--wine);color:#fff}.round-table{height:400px;width:400px;max-width:100%;margin:auto;background:#d9b891;border:18px solid #c49a72;border-radius:50%;position:relative;box-shadow:0 18px 35px rgba(91,54,35,.14)}.table-label{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-weight:700;font-size:11px;letter-spacing:.18em}.table-dish{position:absolute;width:76px;height:76px;border-radius:50%;border:5px solid var(--cream);box-shadow:0 6px 13px rgba(0,0,0,.2);animation:pop .25s both}.table-dish button{position:absolute;right:-4px;top:-4px;width:19px;height:19px;border:0;border-radius:50%;background:var(--wine);color:white;line-height:14px}.estimate{border-left:1px solid var(--line);padding-left:24px}.estimate strong,.estimate span,.estimate small{display:block}.estimate strong{font-size:35px;letter-spacing:-.06em}.estimate span{font-size:12px}.estimate small{font-size:11px;color:var(--muted);margin:10px 0 22px}.kitchen{background:var(--cream)}.journey{width:var(--wrap);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);position:relative;gap:18px}.journey:before{content:"";height:1px;background:var(--clay);position:absolute;top:33px;left:25px;right:25px}.journey-step{position:relative}.journey-step>span{position:relative;display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:var(--ink);color:white;font-weight:700;font-size:12px;margin-bottom:25px}.journey-step img{height:260px;margin-bottom:18px;clip-path:ellipse(48% 49% at 50% 50%)}.journey-step h3{font-size:20px;margin-bottom:8px}.journey-step p{font-size:13px;color:var(--muted)}.journey-step.is-visible img{animation:reveal .45s both}.spaces{background:var(--linen)}.cinema-gallery{width:var(--wrap);margin:auto;display:grid;grid-template-columns:1.4fr .6fr .7fr;grid-template-rows:270px 270px;gap:16px}.cinema-gallery button{padding:0;border:0;background:none;overflow:hidden}.cinema-gallery img{height:100%;transition:transform .4s}.cinema-gallery button:hover img{transform:scale(1.04)}.cinema-gallery button:first-child{grid-row:span 2;border-radius:260px 0 0 0}.cinema-gallery button:nth-child(2){border-radius:0 180px 0 0}.cinema-gallery button:nth-child(3){border-radius:0 0 0 180px}.cinema-gallery button:nth-child(4){grid-column:span 2;border-radius:0 0 180px 0}.chef{width:var(--wrap);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.chef-photo img{height:600px;border-radius:50% 50% 8px 8px}.chef h3{font-size:16px;color:var(--clay);letter-spacing:0}.chef blockquote{margin:40px 0;font-size:23px;line-height:1.35;letter-spacing:-.03em}.team-strip{display:flex;gap:9px}.team-strip img{width:30%;height:95px;border-radius:50px}.team-names{font-size:10px;line-height:1.5;margin-top:11px;color:var(--muted)}.private{background:var(--olive);color:#fff;display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;padding-left:max(7vw,calc((100vw - 1180px)/2));padding-right:max(7vw,calc((100vw - 1180px)/2))}.private .eyebrow{color:#e3c495}.occasion-nav button{display:block;border:0;border-bottom:1px solid rgba(255,255,255,.25);background:none;color:rgba(255,255,255,.6);padding:12px 0;width:100%;text-align:left;font-size:17px}.occasion-nav button.active{color:#fff;padding-left:15px}.occasion-display{position:relative}.occasion-display img{height:530px;border-radius:260px 260px 0 0}.occasion-display>div{background:var(--cream);color:var(--ink);max-width:310px;position:absolute;bottom:-25px;left:-35px;padding:24px}.occasion-display span{color:var(--clay);font-size:11px;font-weight:700}.occasion-display h3{margin:5px 0 8px}.occasion-display p{font-size:13px}.notes{width:var(--wrap);margin:auto;display:flex;justify-content:space-between;gap:50px;align-items:end}.notes blockquote{font-size:clamp(28px,3.5vw,54px);letter-spacing:-.055em;line-height:1.1;margin:0;max-width:880px}.notes p{font-size:12px;color:var(--muted);margin:20px 0 0}.note-control{border:1px solid var(--line);background:none;font-size:20px;width:48px;height:48px}.note-control:hover{background:var(--clay);color:white}.invitation{position:relative;height:640px;color:#fff}.invitation img{height:100%}.invitation>div{position:absolute;z-index:1;inset:0;display:flex;flex-direction:column;justify-content:center;padding-left:max(8vw,calc((100vw - 1180px)/2))}.invitation .eyebrow{color:#e9c093}.invitation h2{font-size:clamp(43px,5vw,72px)}.button.light{background:var(--cream);border-color:var(--cream);color:var(--ink);width:max-content}.light-link{color:#fff;margin:20px 0 0}.invitation:after{pointer-events:none}footer{background:var(--ink);color:#eee4d8;padding:60px max(7vw,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px}footer p,footer a,footer small{font-size:12px;color:#d3c3b5}footer a{margin-right:16px}footer small{grid-column:1/-1;border-top:1px solid #514940;padding-top:18px}dialog{border:0;padding:0;background:var(--ink);max-width:min(92vw,1100px);color:#fff}dialog::backdrop{background:rgba(24,20,18,.92)}dialog figure{margin:0}dialog figure img{max-height:78vh;width:auto;max-width:90vw}dialog figcaption{padding:12px 20px;font-size:12px}.close-lightbox,.lb-prev,.lb-next{position:absolute;z-index:1;border:0;color:#fff;background:rgba(0,0,0,.35);font-size:24px}.close-lightbox{right:8px;top:2px}.lb-prev{left:8px;top:48%}.lb-next{right:8px;top:48%}.page-hero{background:var(--ink);color:#fff;padding:95px max(7vw,calc((100vw - 1180px)/2)) 80px}.page-hero h1{max-width:800px}.page-hero p{max-width:510px;color:#dfd2c3}.chapter-nav{position:sticky;top:81px;z-index:3;background:var(--linen);display:flex;gap:22px;overflow:auto;padding:14px 7vw;font-size:12px}.chapter-nav a.active{font-weight:700;color:var(--wine);border-bottom:2px solid var(--wine)}.menu-chapter{width:var(--wrap);margin:0 auto;padding:100px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:.6fr 1.4fr;gap:7vw}.menu-chapter h2{font-size:42px}.menu-chapter>img{height:300px;border-radius:180px 180px 10px 10px;margin:20px 0}.menu-list{align-self:end}.menu-line{display:grid;grid-template-columns:1fr auto;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);cursor:pointer}.menu-line:hover{color:var(--clay)}.menu-line small{display:block;color:var(--muted);font-size:12px}.menu-preview{position:fixed;pointer-events:none;width:180px;height:180px;border-radius:50%;overflow:hidden;opacity:0;transform:scale(.8);transition:.18s;z-index:4}.menu-preview.show{opacity:1;transform:scale(1)}.detail-hero{width:var(--wrap);margin:50px auto 100px;display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.detail-hero img{height:620px;border-radius:50% 50% 8px 8px}.price{font-size:25px;color:var(--clay);font-weight:700}.flavor-meter{margin:28px 0}.flavor-meter div{display:grid;grid-template-columns:90px 1fr;gap:12px;font-size:11px;margin:9px 0}.meter{height:7px;background:var(--linen);border-radius:8px}.meter i{display:block;height:100%;background:var(--olive);border-radius:8px}.allergen{background:var(--linen);padding:18px;font-size:12px}.detail-gallery{width:var(--wrap);margin:auto;display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:15px}.detail-gallery img{height:260px}.detail-gallery img:first-child{height:540px;grid-row:span 2}.set-hero,.booking{width:var(--wrap);margin:70px auto;display:grid;grid-template-columns:1fr 1fr;gap:7vw}.set-hero img,.booking-visual img{height:550px;border-radius:260px 260px 10px 10px}.set-list{padding:20px 0}.set-list button{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:16px;width:100%;border:0;border-bottom:1px solid var(--line);background:none;padding:14px 0;text-align:left}.set-list img{height:62px;border-radius:50%}.set-list button.active{color:var(--clay)}.reservation-board{background:var(--linen);padding:34px}.reservation-board label{display:block;font-size:11px;font-weight:700;margin:17px 0 6px}.reservation-board input,.reservation-board select{width:100%;padding:13px;border:1px solid var(--line);background:var(--cream);font:inherit}.area-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.area-options button{padding:0;background:var(--cream);border:1px solid transparent;text-align:left;font-size:11px}.area-options img{height:70px}.area-options button.active{border-color:var(--wine)}.success-message{display:none;background:var(--darkolive);color:#fff;padding:20px;margin-top:15px;font-size:13px}.contact{width:var(--wrap);margin:70px auto;display:grid;grid-template-columns:1fr 1fr;gap:6vw}.contact img{height:580px;border-radius:220px 220px 0 0}.contact h2{margin-top:30px}.contact .contact-line{border-bottom:1px solid var(--line);padding:18px 0}.contact form input,.contact form textarea{display:block;width:100%;margin-bottom:10px;padding:12px;border:1px solid var(--line);background:var(--cream);font:inherit}.bottom-sheet-trigger{display:none}@keyframes down{from{transform:translateY(-100%)}to{transform:none}}@keyframes pop{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes reveal{from{clip-path:inset(0 50% 0 50%)}to{clip-path:inset(0)}}.reveal{opacity:0;transform:translateY(25px);transition:.45s}.reveal.visible{opacity:1;transform:none}@media(max-width:800px){:root{--wrap:calc(100% - 36px)}.site-header{height:70px;padding:0 18px}.site-header nav,.header-book{display:none}.nav-toggle{display:block;border:0;background:none;font-size:23px}.mobile-nav{position:fixed;z-index:10;inset:70px 0 0;background:var(--ink);color:#fff;padding:35px;flex-direction:column;gap:20px;font-size:32px;transform:translateX(100%);transition:.3s}.mobile-nav.open{display:flex;transform:none}.hero{min-height:720px;height:calc(100vh - 70px)}.hero-photo{inset:0}.hero-photo:after{background:linear-gradient(0deg,rgba(46,42,38,.85),rgba(46,42,38,.1) 65%)}.hero-copy{left:18px;right:18px;top:auto;bottom:165px}.hero-copy p:not(.eyebrow){font-size:14px}.hero-actions .text-link{display:block;margin:18px 0 0}.dish-rail{left:0;right:0;overflow:auto;bottom:0}.rail-item{min-width:150px}.hero-index{display:none}.section{padding:75px 0}.story,.story-right,.taste,.private,.chef,.set-hero,.booking,.contact{grid-template-columns:1fr}.story{gap:25px;margin-bottom:70px}.story img,.story-full img{height:380px}.story-right>div{order:2;justify-self:auto}.story-right img{order:1}.story-full p{font-size:18px}.taste{padding:75px 18px;gap:30px}.taste-wheel{height:380px}.taste-arc{width:330px;height:330px;right:0}.taste-result{left:0;bottom:0;width:290px}.composer{grid-template-columns:1fr;padding:75px 18px}.round-table{width:330px;height:330px}.estimate{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.journey{grid-template-columns:1fr;gap:20px}.journey:before{height:auto;width:1px;top:25px;bottom:25px;left:32px}.journey-step{display:grid;grid-template-columns:66px 110px 1fr;gap:15px;align-items:center}.journey-step>span{margin:0}.journey-step img{width:110px;height:120px;margin:0}.journey-step h3{font-size:18px}.journey-step p{margin:0}.cinema-gallery{grid-template-columns:1fr 1fr;grid-template-rows:220px 180px 160px}.cinema-gallery button:first-child{grid-row:span 2}.cinema-gallery button:nth-child(4){grid-column:span 2}.chef-photo img{height:420px}.private{padding:75px 18px;gap:35px}.occasion-display img{height:380px}.occasion-display>div{position:relative;bottom:auto;left:auto;margin:-35px 18px 0}.notes{display:block}.notes>div:last-child{margin-top:25px}.invitation{height:570px}footer{grid-template-columns:1fr;padding:45px 18px}.page-hero{padding:65px 18px}.chapter-nav{top:70px;padding:13px 18px}.menu-chapter{grid-template-columns:1fr;padding:60px 0;gap:15px}.menu-chapter>img{height:240px}.detail-hero{grid-template-columns:1fr;margin:30px 18px 70px;width:auto}.detail-hero img{height:400px}.detail-gallery{grid-template-columns:1fr 1fr}.detail-gallery img:first-child{grid-column:span 2;height:350px}.set-hero,.booking,.contact{margin:45px 18px;width:auto}.set-hero img,.booking-visual img,.contact img{height:390px}.bottom-sheet-trigger{display:block;position:fixed;bottom:18px;right:18px;border:0;background:var(--wine);color:#fff;padding:14px 18px;border-radius:25px;z-index:4}.reservation-board{display:none}.reservation-board.open{display:block;position:fixed;inset:auto 0 0;background:var(--linen);z-index:11;border-radius:24px 24px 0 0;max-height:90vh;overflow:auto}.area-options img{height:55px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
