.field.floating{padding-top:20px;position:relative}.field.floating input,.field.floating select,.field.floating textarea{border:0;border-bottom:1px solid var(--line-input);width:100%;color:inherit;min-height:var(--tap);background:0 0;outline:none;padding:12px 0}.field.floating label{inset-inline-start:0;color:var(--ink-label);pointer-events:none;transition:all .28s var(--ease);text-transform:none;letter-spacing:0;font-size:.95rem;position:absolute;top:32px}.field.floating input:focus~label,.field.floating input:not(:placeholder-shown)~label,.field.floating textarea:focus~label,.field.floating textarea:not(:placeholder-shown)~label,.field.floating select:focus~label,.field.floating select:valid~label{letter-spacing:.12em;text-transform:uppercase;color:var(--olive);font-size:.62rem;top:0}.field.floating input:focus,.field.floating select:focus,.field.floating textarea:focus{border-color:var(--olive)}.field.floating input[type=date]~label,.field.floating select~label{letter-spacing:.12em;text-transform:uppercase;color:var(--olive);font-size:.62rem;top:0}.field.floating.has-error input,.field.floating.has-error select,.field.floating.has-error textarea{border-color:var(--danger)}.field.floating.has-error label{color:var(--danger)}.field-error{color:var(--danger);letter-spacing:0;text-transform:none;margin-top:6px;font-size:.72rem;display:block}.form-error{background:var(--danger-bg);color:var(--danger-ink);border:1px solid var(--danger-line);border-radius:2px;grid-column:1/-1;padding:14px 16px;font-size:.85rem;line-height:1.5}.field.has-error .check{color:var(--danger)}.reservation-success{flex-direction:column;justify-content:center;align-items:flex-start;gap:14px;min-height:260px;display:flex}.success-mark{background:var(--olive);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:66px;height:66px;font-size:1.9rem;display:inline-flex}.reservation-success h3{font:500 2.6rem var(--font-display);margin:0}.reservation-success p{opacity:.7;max-width:340px}.mobile-drawer{z-index:var(--z-drawer);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;background:#121310f7;border:0;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;position:fixed;inset:0}.mobile-drawer::backdrop{background:#12131099}.mobile-drawer[open]{place-items:center;display:grid}.mobile-drawer nav{text-align:center;flex-direction:column;align-items:center;gap:26px;display:flex}.mobile-drawer nav a{color:#fff;font:500 2.4rem var(--font-display)}.mobile-drawer nav .btn.gold{font-size:.7rem}.drawer-close{top:26px;width:var(--tap);height:var(--tap);color:#fff;background:0 0;border:0;place-items:center;font-size:2.4rem;line-height:1;display:grid;position:absolute;inset-inline-end:30px}.subpage{background:var(--ivory);min-height:100svh;color:var(--ink)}.page-hero{color:#fff;background:var(--night);align-items:flex-end;min-height:64svh;display:flex;position:relative;overflow:hidden}.page-hero:after{content:"";background:linear-gradient(#0f0f0d8c,#0f0f0d59 40%,#0f0f0dd9);position:absolute;inset:0}.page-hero .shell{z-index:2;padding:160px 0 70px;position:relative}.page-hero .back-link{top:110px;z-index:3;min-height:var(--tap);letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark);align-items:center;font-size:.72rem;transition:color .3s;display:flex;position:absolute;inset-inline-start:50%;transform:translate(-50%)}.page-hero .back-link:hover{color:#fff}.page-hero h1{font:500 clamp(3rem,7vw,6rem)/.92 var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:14px 0 0}.page-hero .lead{max-width:60ch;color:var(--on-dark);text-wrap:pretty;margin-top:22px;font-size:1.05rem;line-height:1.7}.menu-cat-nav{z-index:var(--z-sticky);background:var(--paper);border-bottom:1px solid var(--line);padding:12px var(--shell-inset);justify-content:space-between;gap:8px;display:flex;position:sticky;top:0;overflow-x:auto}.menu-cat-nav button{min-height:var(--tap);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:30px;padding:9px 18px;font-size:.7rem;transition:all .3s}.menu-cat-nav button.active{background:var(--olive);color:#fff}.menu-page{padding:80px var(--shell-inset) 120px}@media (max-width:900px){.menu-cat-nav{justify-content:flex-start}}.menu-cat{margin-bottom:90px;scroll-margin-top:90px}.menu-cat h2{font:500 clamp(2.4rem,5vw,4.4rem) var(--font-display);letter-spacing:-.03em;margin:8px 0 34px}.menu-sub+.menu-sub{margin-top:56px}.menu-sub h3{font:600 .82rem var(--font-body);text-transform:uppercase;letter-spacing:.16em;color:var(--gold-ink);margin:0 0 18px;scroll-margin-top:96px}.menu-cat-intro{max-width:62ch;color:var(--ink-muted);margin:-18px 0 26px;font-size:.95rem;line-height:1.6}.menu-legal{border-top:1px solid var(--line);max-width:80ch;color:var(--ink-muted);margin-top:70px;padding-top:26px;font-size:.72rem;line-height:1.75}.carte-row{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:16px 30px;padding:22px 0;display:grid}.carte-row .rname{font:500 1.65rem var(--font-display)}.carte-row .rname i{color:var(--gold-ink);vertical-align:super;letter-spacing:.1em;margin-inline-start:8px;font-size:.6rem;font-style:normal}.carte-row .rnote{color:var(--ink-muted);grid-column:1;margin-top:4px;font-size:.9rem}.carte-row .rprice{font:500 1.3rem var(--font-display);color:var(--ink)}.carte-row.is-featured{border-top-color:var(--gold)}.menu-showcase{background:var(--night-deep);color:#fff;min-height:100svh;position:relative;overflow:hidden}.showcase-sticky{isolation:isolate;place-items:center;height:100svh;display:grid;position:sticky;top:0}.showcase-sticky:before{content:"";background:radial-gradient(circle at center,var(--night-warm),var(--night-deep) 60%);z-index:-1;position:absolute;inset:0}.showcase-plate{aspect-ratio:1;width:min(64vw,720px);position:relative}.showcase-plate img{object-fit:contain}.showcase-caption{inset-inline-start:var(--shell-inset);z-index:2;max-width:360px;position:absolute;bottom:12vh}.showcase-caption span{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:.65rem}.showcase-caption h2{font:500 clamp(2.6rem,5vw,4.6rem)/.9 var(--font-display);letter-spacing:-.03em;margin:14px 0}.showcase-caption .showcase-accent{color:var(--gold);font-style:normal;font-weight:400}.showcase-caption p{color:var(--on-dark-soft)}.showcase-caption strong{font:500 1.5rem var(--font-display)}.story-stage{background:var(--night-deep);height:400vh;position:relative}.story-sticky{color:#fff;place-items:center;height:100svh;display:grid;position:sticky;top:0;overflow:hidden}.story-panel{text-align:center;will-change:opacity,transform;place-items:center;padding:0 8vw;display:grid;position:absolute;inset:0}.story-panel-img{z-index:-2;filter:saturate(.9)}.story-panel:before{content:"";z-index:-1;background:linear-gradient(#0f100e73,#0f100eb8);position:absolute;inset:0}.chapter-mark{color:var(--on-dark);letter-spacing:.04em;justify-content:center;align-items:center;gap:12px;margin:0;font-size:.85rem;display:flex}.chapter-mark .index{color:var(--gold);font:500 .8rem var(--font-body);letter-spacing:.3em}.story-panel h2{font:500 clamp(2.8rem,8vw,7rem)/.92 var(--font-display);letter-spacing:-.03em;white-space:pre-line;text-wrap:balance;margin:18px 0 22px}.story-panel p{max-width:60ch;color:var(--on-dark);text-wrap:pretty;margin:0 auto;line-height:1.8}.story-rail{inset-inline-end:32px;z-index:3;background:#ffffff20;width:1px;height:60%;position:absolute;top:20%}.story-rail i{background:var(--gold);width:100%;height:0;display:block}.motion-ready .story-panel{opacity:0}.chef-section{background:var(--night);color:#fff;padding:120px 0 130px;position:relative;overflow:hidden}.chef-section:before{content:"";background:radial-gradient(ellipse 70% 80% at 75% 50%,var(--night-warm),transparent);pointer-events:none;position:absolute;inset:0}.chef-inner{z-index:1;width:100%;max-width:var(--shell-max);padding-inline:var(--gutter);grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(40px,6vw,90px);margin-inline:auto;display:grid;position:relative}.chef-photo-wrapper{justify-self:end;position:relative}.chef-photo-frame{aspect-ratio:1;max-width:580px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#000 55%,#0000 96%);mask-image:linear-gradient(#000 55%,#0000 96%)}.chef-photo-frame img{object-fit:contain;width:100%;height:100%}.chef-accent-line{top:10%;background:linear-gradient(180deg,transparent,var(--gold) 20%,var(--gold) 80%,transparent);width:2px;height:60%;position:absolute;inset-inline-start:-24px}.chef-kicker{letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin:0 0 14px;font-size:.68rem}.chef-name{font:500 clamp(2.6rem,5vw,4.2rem)/.95 var(--font-display);letter-spacing:-.03em;color:#fff;margin:0 0 8px}.chef-role{color:var(--on-dark-soft);letter-spacing:.02em;margin:0 0 32px;font-size:1rem}.chef-bio p{color:var(--on-dark);text-wrap:pretty;max-width:60ch;margin:0 0 18px;font-size:1.05rem;line-height:1.85}.chef-bio p:last-child{margin-bottom:0}.chef-highlights{border-top:1px solid var(--line-dark);grid-template-columns:repeat(2,1fr);gap:16px;margin-top:38px;padding-top:32px;display:grid}.chef-highlight{flex-direction:column;gap:6px;padding:14px 0;display:flex}.chef-highlight-label{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-size:.62rem}.chef-highlight-value{font:500 1.15rem var(--font-display);color:#fff}@media (max-width:900px){.chef-section:before{background:radial-gradient(ellipse 90% 50% at 50% 30%,var(--night-warm),transparent)}.chef-inner{text-align:center;grid-template-columns:1fr;gap:40px}.chef-photo-wrapper{justify-self:center}.chef-photo-frame{max-width:420px}.chef-accent-line{display:none}.chef-bio p{margin-inline:auto}.chef-highlights{grid-template-columns:1fr 1fr;justify-items:center}}@media (max-width:480px){.chef-section{padding:80px 0 90px}.chef-highlights{grid-template-columns:1fr}}.contact-body{padding:90px var(--shell-inset) 120px;grid-template-columns:1.1fr 1fr;gap:6vw;display:grid}.contact-block{margin-bottom:44px}.contact-block h3{font:500 1.9rem var(--font-display);margin:0 0 10px}.contact-block p{white-space:pre-line;color:var(--ink-soft);max-width:60ch;line-height:2}.contact-actions{flex-wrap:wrap;gap:12px;display:flex}.contact-map{background:var(--sand);border-radius:2px;min-height:420px;position:relative;overflow:hidden}.contact-map .pin{inset-inline-start:50%;background:var(--olive);z-index:2;border-radius:50%;width:18px;height:18px;position:absolute;top:46%;translate:-50% -50%}.contact-map .pin:after{content:"";border:2px solid var(--olive);border-radius:50%;animation:2.4s ease-out infinite pinPulse;position:absolute;inset:-10px}@keyframes pinPulse{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.4)}}.transit-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:14px;display:grid}.transit-grid span{border-top:1px solid var(--line);color:var(--ink-soft);padding-top:12px;font-size:.82rem;line-height:1.5}.reserve-body{padding:90px var(--shell-inset) 120px;grid-template-columns:.85fr 1.15fr;align-items:start;gap:6vw;display:grid}.reserve-aside h2{font:500 clamp(2rem,4vw,3.2rem) var(--font-display);letter-spacing:-.02em;margin:0 0 18px}.reserve-aside p{color:var(--ink-soft);white-space:pre-line;max-width:60ch;line-height:2}.reserve-addr{margin-top:24px}.footer{background:var(--night);color:#fff;padding:90px 0 40px}.footer-lead{border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:flex-end;gap:30px;padding-bottom:52px;display:flex}.footer-lead .footer-brand{font:500 clamp(2.6rem,5vw,4.6rem)/.95 var(--font-display);letter-spacing:-.02em}.footer-lead p{max-width:45ch;color:var(--on-dark-soft);margin-top:14px;line-height:1.7}.footer-cols{grid-template-columns:1.1fr 1.4fr 1.2fr 1fr;gap:40px;padding:60px 0 56px;display:grid;position:relative}.footer-cols:before{content:"";inset-inline-start:0;background:var(--gold);width:64px;height:1px;position:absolute;top:0}.footer-col h4{font:600 .64rem var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 20px}.footer-link{min-height:var(--tap);color:var(--on-dark);width:max-content;transition:color .3s,transform .3s var(--ease);align-items:center;padding:9px 0;font-size:.92rem;display:flex;position:relative}.footer-link:after{content:"";inset-inline-start:0;width:100%;height:1px;transform-origin:inline-start;transition:transform .35s var(--ease);background:currentColor;position:absolute;bottom:6px;transform:scaleX(0)}.footer-link:hover{color:#fff;transform:translate(4px)}.footer-link:hover:after{transform:scaleX(1)}.footer-link.is-current{color:var(--gold)}.footer-addr{white-space:pre-line;color:var(--on-dark-soft);margin:0 0 14px;font-size:.9rem;line-height:1.9}.footer-bottom{letter-spacing:.06em;color:var(--on-dark-soft);border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:16px;padding-top:30px;font-size:.7rem;display:flex}.footer-places{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:.62rem}@media (max-width:900px){.footer-lead{flex-direction:column;align-items:flex-start;gap:22px}.footer-cols{grid-template-columns:1fr 1fr;gap:34px}.footer-bottom{text-align:start;flex-direction:column;align-items:flex-start;gap:10px}}@media (max-width:560px){.footer-cols{grid-template-columns:1fr}}.g-panel{background:var(--night-warm);border-radius:2px;position:relative;overflow:hidden}.g-panel img{object-fit:cover}.g-ingredient{background:radial-gradient(circle at 50% 42%,var(--night-warm),var(--night))}.g-ingredient img{object-fit:contain;padding:14%}.g-panel figcaption{inset-inline:0;z-index:2;color:#fff;letter-spacing:.14em;text-transform:uppercase;background:linear-gradient(#0000,#0d0d0bd1);padding:20px 22px;font-size:.68rem;position:absolute;bottom:0}.g-word{background:linear-gradient(135deg,#3c3f30,var(--night));place-items:center;display:grid}.g-word span{font:500 clamp(2rem,4vw,3.4rem) var(--font-display);color:#fff;text-align:center;letter-spacing:-.02em;padding:0 12%;position:relative}.gallery-strip{background:var(--night);color:#fff;padding:110px 0 120px;overflow:hidden}.gallery-strip-head{justify-content:space-between;align-items:end;margin-bottom:52px;display:flex}.gallery-strip .section-title{color:#fff;margin:0}.gallery-track-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000);mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000)}.gallery-track{gap:20px;width:max-content;padding:0 24px;display:flex}.gallery-track.static{width:100%;padding-bottom:12px;overflow-x:auto}.gallery-strip .g-panel{flex:0 0 340px;height:440px}.btn.ghost{color:#fff;border-color:#fff5}.btn.ghost:hover{color:var(--ink);background:#fff;border-color:#fff}.gx-viewport{background:var(--night-deep);scrollbar-width:none;height:100svh;position:relative;overflow-x:auto}.gx-viewport::-webkit-scrollbar{display:none}.motion-ready .gallery-page .gx-viewport{overflow:hidden}.gx-track{width:max-content;height:100svh;padding:0 var(--shell-inset);align-items:center;gap:28px;display:flex}.gx-panel{flex:none}.gx-panel .g-panel{width:48vw;max-width:640px;height:66vh}.gx-progress{inset-inline:var(--shell-inset);z-index:5;background:#fff2;height:2px;position:absolute;bottom:42px}.gx-progress i{background:var(--gold);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.press{background:var(--night);color:#fff;padding:120px 0}.press-title{font:500 clamp(2rem,3.5vw,3rem) var(--font-display);letter-spacing:-.02em;margin:0}.press-grid{grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px;display:grid}.press blockquote{border-top:1px solid var(--line-dark);margin:0;padding-top:24px}.press blockquote p{font:500 1.5rem/1.5 var(--font-display);text-wrap:pretty;margin:0 0 18px}.press cite{letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-size:.7rem;font-style:normal}@media (max-width:900px){.contact-body,.reserve-body{grid-template-columns:1fr;gap:48px}.showcase-caption{inset-inline:var(--shell-inset);max-width:none;bottom:8vh}.story-rail{right:14px}.gallery-strip-head{flex-direction:column;align-items:flex-start;gap:22px}.gallery-strip .g-panel{flex-basis:260px;height:340px}.gx-panel .g-panel{width:82vw;height:56vh}.press-grid{grid-template-columns:1fr;gap:30px}}@media (prefers-reduced-motion:reduce){.gx-viewport{overflow-x:auto}.gx-progress{display:none}.story-stage{height:auto}.story-sticky{min-height:auto;display:block;position:relative}.story-panel{min-height:90vh;position:relative;inset:auto;opacity:1!important}.contact-map .pin:after{animation:none}}
