@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-vietnamese-full-normal-7BpKI3vF.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-ext-full-normal-YHFkNujK.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-full-normal-CFFu7zhK.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./fraunces-vietnamese-full-italic-BHALq22K.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-ext-full-italic-B8-t4Nou.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-full-italic-D2JnYqd-.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f7f1e6;--bg-warm: #f4e9d4;--bg-deep: #ecdfc4;--card: #fffdf7;--ink: #221912;--ink-soft: #6b6152;--ink-faint: #a2957f;--line: rgba(34, 25, 18, .14);--terra: #b23a1b;--terra-dark: #8c2a10;--terra-soft: #e09a7c;--gold: #d18f2e;--gold-soft: #e8b869;--pasta: #f2c14e;--pasta-dark: #d99a2b;--basil: #4a7c42;--basil-soft: #7fa871;--tomato: #c93414;--font-display: "Fraunces Variable", "Fraunces", Georgia, serif;--font-body: "Manrope Variable", "Manrope", "Segoe UI", sans-serif;--fs-hero: clamp(3.4rem, 8.6vw, 7.6rem);--fs-h2: clamp(2.2rem, 5vw, 4.2rem);--fs-h3: clamp(1.4rem, 2.6vw, 2rem);--fs-body: clamp(1rem, 1.15vw, 1.125rem);--fs-small: .875rem;--fs-tiny: .75rem;--space-section: clamp(6rem, 14vh, 11rem);--wrap-max: 82rem;--wrap-pad: clamp(1.25rem, 4vw, 3.5rem);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-inout: cubic-bezier(.65, 0, .35, 1);--dur: .7s;--shadow-soft: 0 10px 40px -12px rgba(122, 74, 30, .22);--shadow-lift: 0 24px 70px -20px rgba(122, 74, 30, .35);--radius: 14px;--radius-lg: 26px}::selection{background:var(--terra);color:var(--card)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html:has(body[data-motion=off]){scroll-behavior:auto}body{font-family:var(--font-body);font-size:var(--fs-body);line-height:1.6;color:var(--ink);background:var(--bg);overflow-x:hidden;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;border:0;background:none;cursor:pointer;color:inherit}main{position:relative;z-index:2}.wrap{width:min(var(--wrap-max),100% - var(--wrap-pad) * 2);margin-inline:auto}.scene-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.grain{position:fixed;inset:-50%;z-index:40;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E");animation:grain-shift .9s steps(4) infinite}body[data-motion=off] .grain{animation:none}@keyframes grain-shift{0%{transform:translate(0)}25%{transform:translate(-2%,1.4%)}50%{transform:translate(1.6%,-1%)}75%{transform:translate(-1%,-1.8%)}to{transform:translate(0)}}.section-head{margin-bottom:clamp(2.5rem,6vh,4.5rem)}.section-head__eyebrow,.philosophy__eyebrow{font-size:var(--fs-tiny);letter-spacing:.32em;text-transform:uppercase;color:var(--terra);font-weight:700;margin-bottom:1.1rem}.section-head__title{font-family:var(--font-display);font-size:var(--fs-h2);font-weight:560;font-variation-settings:"opsz" 72,"SOFT" 40;line-height:1.04;letter-spacing:-.015em}.section-head__note{margin-top:1rem;color:var(--ink-soft);font-style:italic;font-family:var(--font-display)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:1rem 2.1rem;border-radius:999px;font-weight:700;font-size:.95rem;letter-spacing:.02em;overflow:hidden;transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out),background-color .35s,color .35s,border-color .35s;will-change:transform}.btn span{position:relative;z-index:1}.btn--primary{background:var(--terra);color:#fff8ef;box-shadow:var(--shadow-soft)}.btn--primary:after{content:"";position:absolute;inset:0;background:var(--terra-dark);border-radius:inherit;transform:translateY(101%);transition:transform .5s var(--ease-out)}.btn--primary:hover:after{transform:translateY(0)}.btn--primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.btn--ghost{border:1.5px solid var(--line);color:var(--ink);background:transparent}.btn--ghost:hover{border-color:var(--ink);transform:translateY(-2px)}body[data-motion=on] .reveal{opacity:0;transform:translateY(2.2rem)}body[data-motion=on] .reveal.is-in{opacity:1;transform:none;transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}body[data-motion=on] .split-lines .sl-line{display:block;overflow:hidden}body[data-motion=on] .split-lines .sl-inner{display:block;transform:translateY(110%)}body[data-motion=on] .split-lines.is-in .sl-inner{transform:none;transition:transform 1s var(--ease-out);transition-delay:calc(var(--sl-i, 0) * 90ms)}.cursor{position:fixed;top:0;left:0;z-index:200;pointer-events:none;width:58px;height:58px;margin:-29px 0 0 -29px;border:2.5px solid #fff;border-radius:50%;display:grid;place-items:center;mix-blend-mode:exclusion;transition:transform .22s var(--ease-out),opacity .3s,background-color .3s;transform:scale(.55);opacity:0}.cursor.is-on{opacity:1}.cursor.is-hover{transform:scale(1.3);background:#ffffff38}.cursor__dot{width:9px;height:9px;background:#fff;border-radius:50%}body.has-cursor,body.has-cursor a,body.has-cursor button,body.has-cursor input,body.has-cursor select,body.has-cursor label{cursor:none}:focus-visible{outline:2.5px solid var(--terra);outline-offset:3px;border-radius:4px}@media(max-width:720px){.cursor{display:none}}.loader{position:fixed;inset:0;z-index:100;background:var(--bg);display:grid;place-items:center;transition:opacity .8s var(--ease-inout),visibility .8s}.loader.is-done{opacity:0;visibility:hidden}.loader__inner{text-align:center;display:grid;justify-items:center;gap:.9rem}.loader__fork-group{transform-origin:60px 60px}body[data-motion=on] .loader__fork-group{animation:fork-twirl 2.2s var(--ease-inout) infinite}@keyframes fork-twirl{0%{transform:rotate(0)}55%{transform:rotate(360deg)}to{transform:rotate(360deg)}}.loader__noodle{stroke-dasharray:165;stroke-dashoffset:30}.loader__word{font-family:var(--font-display);font-size:1.6rem;letter-spacing:.42em;text-indent:.42em;font-weight:600}.loader__sub{color:var(--ink-soft);font-style:italic;font-family:var(--font-display);font-size:.95rem;min-height:1.4em}.loader__bar{width:180px;height:2px;background:var(--line);border-radius:2px;overflow:hidden}.loader__bar span{display:block;height:100%;width:0%;background:var(--terra);transition:width .4s var(--ease-out)}.nav{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.1rem var(--wrap-pad);transition:transform .5s var(--ease-out),background-color .4s,box-shadow .4s,padding .4s}.nav.is-scrolled{background:#f7f1e6d1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line);padding-block:.7rem}.nav.is-hidden{transform:translateY(-110%)}.nav__logo{display:flex;align-items:baseline;gap:.5rem;font-family:var(--font-display)}.nav__logo-mark{font-size:1.9rem;font-weight:700;color:var(--terra);line-height:1}.nav__logo-word{font-size:1.05rem;letter-spacing:.38em;font-weight:600}.nav__links{display:flex;gap:2.2rem}.nav__links a{font-size:.92rem;font-weight:600;position:relative;padding-block:.3rem}.nav__links a:after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:100%;background:var(--terra);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease-out)}.nav__links a:hover:after{transform:scaleX(1);transform-origin:left}.nav__actions{display:flex;align-items:center;gap:1rem}.nav__reserve{padding:.75rem 1.6rem;font-size:.88rem}.nav__burger{display:none;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:7px}.nav__burger span{display:block;width:26px;height:2px;background:var(--ink);transition:transform .4s var(--ease-out),opacity .3s}.nav__burger.is-open span:first-child{transform:translateY(4.5px) rotate(45deg)}.nav__burger.is-open span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.mobilemenu{position:fixed;inset:0;z-index:55;background:var(--bg-warm);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3rem;opacity:0;visibility:hidden;transition:opacity .5s var(--ease-inout),visibility .5s}.mobilemenu.is-open{opacity:1;visibility:visible}.mobilemenu__links{display:grid;gap:1.4rem;text-align:center}.mobilemenu__links a{font-family:var(--font-display);font-size:clamp(2rem,8vw,3rem);font-weight:560;line-height:1.1;opacity:0;transform:translateY(1.2rem);transition:opacity .55s var(--ease-out),transform .55s var(--ease-out);transition-delay:calc(var(--i, 0) * 60ms)}.mobilemenu.is-open .mobilemenu__links a{opacity:1;transform:none}.mobilemenu__cta{color:var(--terra)}.mobilemenu__foot{text-align:center;color:var(--ink-soft);font-size:var(--fs-small)}.marquee{overflow:hidden;border-block:1px solid var(--line);padding-block:1.1rem;background:var(--bg-warm);position:relative;z-index:2}.marquee__track{display:flex;white-space:nowrap;width:max-content;font-family:var(--font-display);font-size:clamp(1.1rem,2.4vw,1.7rem);font-style:italic;color:var(--ink-soft)}body[data-motion=on] .marquee__track{animation:marquee-scroll 26s linear infinite}@keyframes marquee-scroll{to{transform:translate(-50%)}}.footer{position:relative;z-index:2;background:var(--ink);color:#d8cdbc;padding-top:clamp(2rem,6vh,4rem);overflow:hidden}.footer__big{text-align:center;line-height:.83;user-select:none}.footer__big span{font-family:var(--font-display);font-weight:640;font-size:clamp(4.5rem,17.5vw,16rem);letter-spacing:.06em;color:transparent;-webkit-text-stroke:1.5px rgba(233,196,106,.34);transition:color 1.2s var(--ease-out);display:inline-block;transform:translateY(.14em)}.footer__big:hover span{color:#e9c46a29}.footer__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.6rem;border-top:1px solid rgba(216,205,188,.16);font-size:var(--fs-small)}.footer__credit a{color:var(--pasta);border-bottom:1px solid transparent;transition:border-color .3s}.footer__credit a:hover{border-color:var(--pasta)}.footer__social{display:flex;gap:1.4rem}.footer__social a{font-weight:700;letter-spacing:.06em;transition:color .3s}.footer__social a:hover{color:var(--pasta)}@media(max-width:900px){.nav__links{display:none}.nav__burger{display:flex}.nav__reserve{display:none}}.hero{min-height:100svh;display:flex;align-items:center;position:relative;padding:7rem var(--wrap-pad) 4rem}.hero__content{max-width:40rem;position:relative;z-index:3}.hero__kicker{font-size:var(--fs-tiny);letter-spacing:.32em;text-transform:uppercase;font-weight:700;color:var(--ink-soft);margin-bottom:1.6rem}.hero__title{font-family:var(--font-display);font-size:var(--fs-hero);font-weight:500;font-variation-settings:"opsz" 100,"SOFT" 30;line-height:.99;letter-spacing:-.02em;margin-bottom:1.8rem}.hero__line{display:block;overflow:hidden}.hero__line span{display:block}body[data-motion=on] .hero__line span{transform:translateY(112%)}.hero__line--accent{color:var(--terra);font-style:italic;font-variation-settings:"opsz" 100,"SOFT" 70}.hero__sub{color:var(--ink-soft);max-width:27rem;margin-bottom:2.4rem;font-size:1.06rem}.hero__cta{display:flex;flex-wrap:wrap;gap:1rem}.hero__scrollcue{position:absolute;bottom:2.4rem;right:clamp(1.5rem,6vw,5rem);display:flex;flex-direction:column;align-items:center;gap:.8rem;color:var(--ink-soft)}.hero__scrollcue-label{font-size:var(--fs-tiny);letter-spacing:.22em;text-transform:uppercase;writing-mode:vertical-rl}.hero__scrollcue-line{width:1.5px;height:64px;background:var(--line);position:relative;overflow:hidden}body[data-motion=on] .hero__scrollcue-line:after{content:"";position:absolute;inset:0;background:var(--terra);animation:cue-drip 1.8s var(--ease-inout) infinite}@keyframes cue-drip{0%{transform:translateY(-100%)}55%{transform:translateY(0)}to{transform:translateY(100%)}}.drop{height:110vh;position:relative;pointer-events:none}.drop__copy{position:sticky;top:0;height:100vh;display:grid;place-items:center;opacity:0}.drop__copy--1{margin-top:0}.drop__copy--2{margin-top:-100vh}body[data-motion=off] .drop{height:auto;padding-block:20vh}body[data-motion=off] .drop__copy{position:static;height:auto;opacity:1;padding-block:3rem;margin-top:0}.drop__big{font-family:var(--font-display);font-size:clamp(2rem,6vw,4.6rem);font-style:italic;font-weight:480;color:var(--ink);text-align:center;padding-inline:var(--wrap-pad)}.plate{height:120vh;position:relative;pointer-events:none}body[data-motion=off] .plate{height:100vh}.plate__label{position:sticky;top:72vh;text-align:center;opacity:0;transform:translateY(1.5rem)}body[data-motion=off] .plate__label{opacity:1;transform:none}.plate__dishname{font-family:var(--font-display);font-size:clamp(1.5rem,3.4vw,2.6rem);font-weight:560}.plate__dishnote{color:var(--ink-soft);font-size:var(--fs-small);letter-spacing:.12em;text-transform:uppercase;margin-top:.4rem}.philosophy{padding-block:var(--space-section);background:var(--bg);position:relative;z-index:2}.philosophy__text{font-family:var(--font-display);font-size:clamp(1.7rem,3.6vw,3.1rem);font-weight:480;line-height:1.28;max-width:56rem;letter-spacing:-.01em}.philosophy__meta{display:flex;flex-wrap:wrap;gap:clamp(2rem,6vw,5rem);margin-top:clamp(2.5rem,6vh,4.5rem)}.philosophy__meta div{display:grid;gap:.15rem}.philosophy__meta strong{font-family:var(--font-display);font-size:clamp(1.8rem,3.4vw,2.8rem);font-weight:600;color:var(--terra)}.philosophy__meta span{color:var(--ink-soft);font-size:var(--fs-small)}.signature{padding-block:var(--space-section);background:var(--bg);position:relative;z-index:2}.signature__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.2rem,2.5vw,2rem)}.sig-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--card);box-shadow:var(--shadow-soft);transition:transform .6s var(--ease-out),box-shadow .6s var(--ease-out)}.sig-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lift)}.sig-card__imgwrap{position:relative;aspect-ratio:4 / 4.6;overflow:hidden}.sig-card__imgwrap img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-out)}.sig-card:hover .sig-card__imgwrap img{transform:scale(1.06)}.sig-card__steam{position:absolute;inset:0;pointer-events:none;overflow:hidden}.sig-card__steam i{position:absolute;bottom:18%;left:calc(30% + var(--sx, 0) * 1%);width:46px;height:110px;background:radial-gradient(ellipse at center,rgba(255,253,247,.5),transparent 65%);border-radius:50%;filter:blur(7px);opacity:0}body[data-motion=on] .sig-card:hover .sig-card__steam i{animation:steam-rise 2.6s ease-out infinite;animation-delay:calc(var(--sd, 0) * .55s)}@keyframes steam-rise{0%{opacity:0;transform:translateY(0) scaleX(.8) rotate(0)}25%{opacity:.85}to{opacity:0;transform:translateY(-130px) scaleX(1.5) rotate(14deg)}}.sig-card__body{padding:1.4rem 1.5rem 1.6rem}.sig-card__name{font-family:var(--font-display);font-size:1.35rem;font-weight:600;margin-bottom:.35rem}.sig-card__desc{color:var(--ink-soft);font-size:.92rem;line-height:1.55}.sig-card__price{position:absolute;top:1.1rem;right:1.1rem;background:#fffdf7eb;backdrop-filter:blur(6px);padding:.4rem .9rem;border-radius:999px;font-weight:700;font-size:.88rem;color:var(--terra-dark)}.menu{padding-block:var(--space-section);background:var(--bg-warm);position:relative;z-index:2;border-block:1px solid var(--line)}.menu__tabs{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2.6rem}.menu__tab{padding:.65rem 1.5rem;border-radius:999px;border:1.5px solid var(--line);font-weight:600;font-size:.92rem;color:var(--ink-soft);transition:background-color .3s,color .3s,border-color .3s,transform .3s var(--ease-out)}.menu__tab:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-1px)}.menu__tab.is-active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.menu__list{display:grid;gap:0;min-height:24rem}.menu-item{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:.4rem 2rem;padding:1.35rem 1rem;border-bottom:1px solid var(--line);border-radius:10px;position:relative;transition:background-color .35s,padding .35s var(--ease-out);animation:menu-item-in .55s var(--ease-out) backwards;animation-delay:calc(var(--mi, 0) * 55ms)}body[data-motion=off] .menu-item{animation:none}@keyframes menu-item-in{0%{opacity:0;transform:translateY(14px)}}.menu-item:hover{background:var(--card);padding-inline:1.4rem}.menu-item__name{font-family:var(--font-display);font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:.7rem}.menu-item__tag{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;font-family:var(--font-body);color:var(--basil);border:1px solid var(--basil-soft);padding:.18rem .5rem;border-radius:999px}.menu-item__tag--spicy{color:var(--tomato);border-color:var(--terra-soft)}.menu-item__price{font-weight:700;color:var(--terra-dark);font-size:1.05rem}.menu-item__dots{grid-column:1 / -1;order:3}.menu-item__secret{grid-column:1 / -1;max-height:0;overflow:hidden;color:var(--ink-soft);font-size:.92rem;transition:max-height .5s var(--ease-out),margin .5s var(--ease-out)}.menu-item:hover .menu-item__secret,.menu-item:focus-within .menu-item__secret{max-height:6rem;margin-top:.5rem}.menu-item__secret em{color:var(--gold);font-style:normal;font-weight:700}.menu__foot{margin-top:3rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;color:var(--ink-soft);font-style:italic;font-family:var(--font-display)}.story{padding-block:var(--space-section);background:var(--bg);position:relative;z-index:2}.story__timeline{position:relative;display:grid;gap:clamp(3rem,8vh,5rem);padding-left:clamp(1.6rem,5vw,3rem)}.story__timeline:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:1.5px;background:var(--line)}.story-item{position:relative;max-width:44rem}.story-item:before{content:"";position:absolute;left:calc(-1*clamp(1.6rem,5vw,3rem) + 1px);top:.75em;width:10px;height:10px;border-radius:50%;background:var(--terra);box-shadow:0 0 0 5px var(--bg),0 0 0 6.5px var(--line)}.story-item__year{font-family:var(--font-display);font-size:clamp(2rem,4.6vw,3.4rem);font-weight:620;color:var(--terra);line-height:1;margin-bottom:.6rem}.story-item__title{font-family:var(--font-display);font-size:1.35rem;font-weight:600;margin-bottom:.4rem}.story-item__text{color:var(--ink-soft)}.chef{padding-block:var(--space-section);background:var(--ink);color:#f2e9da;position:relative;z-index:2;overflow:hidden}.chef__wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2.5rem,6vw,5rem);align-items:center}.chef__figure figcaption{margin-top:1rem;font-size:var(--fs-small);color:#f2e9daa8;letter-spacing:.14em;text-transform:uppercase}.chef__imgframe{border-radius:300px 300px var(--radius-lg) var(--radius-lg);overflow:hidden;aspect-ratio:3.4 / 4.4;box-shadow:0 40px 100px -30px #0000008c}.chef__imgframe img{width:100%;height:100%;object-fit:cover}.chef__quotemark{font-family:var(--font-display);font-size:7rem;line-height:.4;color:var(--pasta);margin-bottom:1.4rem}.chef__quote{font-family:var(--font-display);font-size:clamp(1.6rem,3.2vw,2.7rem);font-weight:460;font-style:italic;line-height:1.32;border:0}.chef__sign{margin-top:1.8rem;color:#f2e9daa8;letter-spacing:.1em;font-size:var(--fs-small);text-transform:uppercase}.gallery{padding-block:var(--space-section) 0;background:var(--bg);position:relative;z-index:2}.gallery__grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(140px,24vw,300px);gap:clamp(.5rem,1.2vw,1rem);padding:0 clamp(.5rem,1.2vw,1rem) clamp(.5rem,1.2vw,1rem);margin-top:clamp(2rem,5vh,3.5rem)}.gallery__item{border-radius:var(--radius);overflow:hidden;position:relative;padding:0;display:block;width:100%;height:100%}.gallery__item--wide{grid-column:span 2}.gallery__item--tall{grid-row:span 2}.gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-out),filter .6s}.gallery__item:hover img{transform:scale(1.055)}.gallery__item:after{content:"↗";position:absolute;right:.9rem;bottom:.75rem;width:38px;height:38px;border-radius:50%;background:#fffdf7eb;color:var(--ink);display:grid;place-items:center;font-size:1rem;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s var(--ease-out)}.gallery__item:hover:after{opacity:1;transform:none}.press{padding-block:clamp(3rem,8vh,5.5rem);background:var(--bg);border-block:1px solid var(--line);position:relative;z-index:2}.press__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(1.5rem,4vw,3rem)}.press-quote{text-align:center;display:grid;gap:.6rem;justify-items:center}.press-quote__stars{color:var(--gold);letter-spacing:.25em;font-size:.85rem}.press-quote__text{font-family:var(--font-display);font-style:italic;font-size:1.05rem;line-height:1.45;color:var(--ink)}.press-quote__src{font-size:var(--fs-tiny);letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--ink-faint)}.private{padding-block:var(--space-section);background:var(--bg);position:relative;z-index:2}.private__wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(2.5rem,6vw,5rem);align-items:center}.private__text{color:var(--ink-soft);margin-block:1.4rem 2.2rem;max-width:30rem}.private__figure img{border-radius:var(--radius-lg);aspect-ratio:5 / 6;object-fit:cover;width:100%;box-shadow:var(--shadow-lift)}.reservation{padding-block:var(--space-section);background:var(--bg-warm);border-block:1px solid var(--line);position:relative;z-index:2}.reservation__wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2.5rem,6vw,6rem);align-items:start}.reservation__note{color:var(--ink-soft);margin-top:1.2rem;max-width:26rem}.reservation__alt{margin-top:2rem;padding-top:1.6rem;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.95rem}.reservation__alt a{color:var(--terra-dark);font-weight:700}.resform{background:var(--card);border-radius:var(--radius-lg);padding:clamp(1.5rem,3.5vw,2.6rem);box-shadow:var(--shadow-soft);display:grid;gap:1.35rem}.resform__row{display:grid;grid-template-columns:1fr 1fr;gap:1.35rem}.field{display:grid;gap:.45rem}.field__label{font-size:var(--fs-tiny);letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--ink-soft)}.field__label em{text-transform:none;letter-spacing:0;font-weight:500}.field input,.field select{font:inherit;padding:.85rem 1rem;border:1.5px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);transition:border-color .3s,box-shadow .3s;width:100%}.field input:focus,.field select:focus{outline:none;border-color:var(--terra);box-shadow:0 0 0 3.5px #c2451e24}.field input.is-error{border-color:var(--tomato)}.resform__slots{display:flex;flex-wrap:wrap;gap:.5rem}.slot{padding:.55rem 1.05rem;border-radius:999px;border:1.5px solid var(--line);font-weight:600;font-size:.88rem;color:var(--ink-soft);transition:all .25s}.slot:hover{border-color:var(--ink);color:var(--ink)}.slot.is-selected{background:var(--terra);border-color:var(--terra);color:#fff8ef}.slot__group{width:100%;font-size:var(--fs-tiny);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);font-weight:800;margin-top:.35rem}.resform__submit{justify-self:start;margin-top:.4rem}.resform__status{font-size:.95rem;min-height:1.5em;font-weight:600}.resform__status.is-ok{color:var(--basil)}.resform__status.is-bad{color:var(--tomato)}.resform.is-done .resform__hidewhendone{display:none}.res-confirm{display:grid;gap:.8rem;justify-items:center;text-align:center;padding-block:1.5rem}.res-confirm__check{width:64px;height:64px;border-radius:50%;background:var(--basil);color:#fff8ef;display:grid;place-items:center;font-size:1.8rem;animation:check-pop .6s var(--ease-out)}@keyframes check-pop{0%{transform:scale(0)}70%{transform:scale(1.15)}}.res-confirm__title{font-family:var(--font-display);font-size:1.6rem;font-weight:600}.res-confirm__text{color:var(--ink-soft);max-width:24rem}.visit{padding-block:var(--space-section);background:var(--bg);position:relative;z-index:2}.visit__wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(2rem,5vw,4rem)}.visit__h{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:600;margin-bottom:1.2rem}.visit__addr{font-style:normal;color:var(--ink-soft);line-height:1.8}.visit__maplink{display:inline-block;margin-top:1rem;font-weight:700;color:var(--terra-dark);border-bottom:1.5px solid var(--terra-soft);transition:border-color .3s}.visit__maplink:hover{border-color:var(--terra-dark)}.visit__hours{border-collapse:collapse;width:100%}.visit__hours td{padding:.5rem 0;color:var(--ink-soft);font-size:.95rem;vertical-align:top}.visit__hours td:first-child{font-weight:700;color:var(--ink);padding-right:1.2rem;white-space:nowrap}.visit__contact{color:var(--ink-soft);line-height:2.1}.visit__contact a{color:var(--terra-dark);font-weight:700}@media(max-width:1020px){.signature__grid,.gallery__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:860px){.chef__wrap,.private__wrap,.reservation__wrap{grid-template-columns:1fr}.chef__figure{max-width:24rem}.visit__wrap{grid-template-columns:1fr}}@media(max-width:640px){.signature__grid{grid-template-columns:1fr}.gallery__grid{grid-template-columns:repeat(2,1fr)}.resform__row{grid-template-columns:1fr}.hero__scrollcue{display:none}.menu-item{grid-template-columns:1fr}.menu-item__price{order:2}}.chatbot{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:80}.chatbot__fab{width:62px;height:62px;border-radius:50%;background:var(--terra);color:#fff8ef;display:grid;place-items:center;box-shadow:var(--shadow-lift);position:relative;transition:transform .4s var(--ease-out),background-color .3s}.chatbot__fab:hover{transform:translateY(-3px) scale(1.05);background:var(--terra-dark)}.chatbot__fab-dot{position:absolute;top:4px;right:4px;width:13px;height:13px;border-radius:50%;background:var(--basil-soft);border:2.5px solid var(--bg)}body[data-motion=on] .chatbot__fab-dot{animation:sofia-pulse 2.4s ease-in-out infinite}@keyframes sofia-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}.chatbot__panel{position:absolute;right:0;bottom:calc(100% + 1rem);width:min(390px,calc(100vw - 2rem));height:min(560px,calc(100dvh - 7rem));background:var(--card);border-radius:var(--radius-lg);box-shadow:0 30px 90px -20px #3c281073;display:flex;flex-direction:column;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(14px) scale(.97);transform-origin:bottom right;transition:opacity .35s var(--ease-out),transform .35s var(--ease-out),visibility .35s}.chatbot__panel.is-open{opacity:1;visibility:visible;transform:none}.chatbot__head{display:flex;align-items:center;gap:.85rem;padding:1rem 1.15rem;background:var(--ink);color:#f2e9da}.chatbot__avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--pasta),var(--terra));color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:1.25rem;display:grid;place-items:center}.chatbot__name{font-weight:700;font-size:1rem;line-height:1.2}.chatbot__role{font-size:.78rem;opacity:.72}.chatbot__close{margin-left:auto;font-size:1.7rem;line-height:1;opacity:.75;transition:opacity .25s,transform .25s;padding:.2rem .45rem}.chatbot__close:hover{opacity:1;transform:rotate(90deg)}.chatbot__log{flex:1;overflow-y:auto;padding:1.1rem;display:flex;flex-direction:column;gap:.7rem;scrollbar-width:thin;background:radial-gradient(circle at 85% 8%,rgba(233,196,106,.13),transparent 42%),var(--card)}.chatbot__msg{max-width:84%;padding:.7rem 1rem;border-radius:18px;font-size:.92rem;line-height:1.5;animation:msg-in .4s var(--ease-out);white-space:pre-line}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}}.chatbot__msg--bot{background:var(--bg-warm);border-bottom-left-radius:5px;align-self:flex-start}.chatbot__msg--user{background:var(--terra);color:#fff8ef;border-bottom-right-radius:5px;align-self:flex-end}.chatbot__msg--typing{display:inline-flex;gap:5px;align-items:center;padding-block:.95rem}.chatbot__msg--typing i{width:6px;height:6px;background:var(--ink-faint);border-radius:50%;animation:typing-bounce 1.1s ease-in-out infinite}.chatbot__msg--typing i:nth-child(2){animation-delay:.15s}.chatbot__msg--typing i:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{transform:none;opacity:.5}30%{transform:translateY(-5px);opacity:1}}.chatbot__chips{display:flex;flex-wrap:wrap;gap:.45rem;padding:0 1.1rem .6rem}.chatbot__chips:empty{display:none}.chatbot__chip{font-size:.8rem;font-weight:600;padding:.45rem .95rem;border-radius:999px;border:1.5px solid var(--line);color:var(--terra-dark);transition:background-color .25s,border-color .25s,color .25s}.chatbot__chip:hover{background:var(--terra);border-color:var(--terra);color:#fff8ef}.chatbot__inputrow{display:flex;align-items:center;gap:.5rem;padding:.8rem 1rem;border-top:1px solid var(--line);background:var(--card)}.chatbot__inputrow input{flex:1;border:0;background:none;font:inherit;font-size:.93rem;color:var(--ink);outline:none}.chatbot__inputrow input::placeholder{color:var(--ink-faint)}.chatbot__inputrow button[type=submit]{width:40px;height:40px;border-radius:50%;background:var(--terra);color:#fff8ef;display:grid;place-items:center;flex-shrink:0;transition:background-color .25s,transform .3s var(--ease-out)}.chatbot__inputrow button[type=submit]:hover{background:var(--terra-dark);transform:scale(1.07)}.lightbox{position:fixed;inset:0;z-index:90;background:#18120ae6;backdrop-filter:blur(8px);display:grid;place-items:center;padding:clamp(1rem,5vw,4rem);opacity:0;visibility:hidden;transition:opacity .4s var(--ease-inout),visibility .4s}.lightbox.is-open{opacity:1;visibility:visible}.lightbox img{max-height:78vh;max-width:100%;border-radius:var(--radius);box-shadow:0 40px 120px -30px #000000b3;transform:scale(.94);transition:transform .45s var(--ease-out)}.lightbox.is-open img{transform:none}.lightbox__caption{position:absolute;bottom:clamp(1rem,4vh,2.5rem);left:50%;transform:translate(-50%);color:#e9dfd0;font-family:var(--font-display);font-style:italic;font-size:1rem}.lightbox__close{position:absolute;top:1.2rem;right:1.6rem;font-size:2.6rem;color:#e9dfd0;line-height:1;opacity:.8;transition:opacity .25s,transform .25s;z-index:2}.lightbox__close:hover{opacity:1;transform:rotate(90deg)}.progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:70;pointer-events:none}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--terra),var(--gold));transform-origin:left;transform:scaleX(0)}.picado{position:absolute;top:calc(100% - 1px);left:0;right:0;overflow:hidden;pointer-events:none;height:64px;z-index:5}.nav .picado{display:none}.picado__string{display:flex;justify-content:center;gap:clamp(.4rem,1.4vw,1.1rem);border-top:2px solid rgba(34,25,18,.28);padding-inline:1rem}.picado__flag{width:clamp(34px,4.4vw,58px);height:auto;opacity:.9;transform-origin:top center}body[data-motion=on] .picado__flag{animation:picado-sway 3.6s ease-in-out infinite;animation-delay:calc(var(--pi, 0) * -.35s)}@keyframes picado-sway{0%,to{transform:rotate(2.4deg)}50%{transform:rotate(-2.4deg)}}@media(max-width:640px){.picado__flag:nth-child(n+9){display:none}}.menu-item__right{display:flex;align-items:center;gap:.8rem}.menu-item__add{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--terra-soft);color:var(--terra);font-size:1.25rem;line-height:1;display:grid;place-items:center;transition:background-color .25s,color .25s,transform .3s var(--ease-out),border-color .25s;flex-shrink:0}.menu-item__add:hover{background:var(--terra);border-color:var(--terra);color:#fff8ef;transform:scale(1.12)}.menu-item__add.is-added{background:var(--basil);border-color:var(--basil);color:#fff8ef}.cart__fab{position:fixed;left:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:80;display:flex;align-items:center;gap:.65rem;padding:.8rem 1.3rem .8rem 1rem;border-radius:999px;background:var(--ink);color:#f2e9da;font-weight:700;font-size:.95rem;box-shadow:var(--shadow-lift);transition:transform .35s var(--ease-out),background-color .3s}.cart__fab:hover{transform:translateY(-3px);background:#382a1c}.cart__fab.is-pulse{animation:cart-pulse .45s var(--ease-out)}@keyframes cart-pulse{0%{transform:scale(1)}40%{transform:scale(1.1)}to{transform:scale(1)}}.cart__fab-count{display:grid;place-items:center;min-width:26px;height:26px;padding-inline:6px;border-radius:999px;background:var(--terra);color:#fff8ef;font-size:.82rem}.cart__fab-total{color:var(--pasta)}.cart__panel{position:fixed;left:clamp(1rem,3vw,2rem);bottom:calc(clamp(1rem,3vw,2rem) + 70px);z-index:80;width:min(400px,calc(100vw - 2rem));max-height:min(540px,calc(100dvh - 9rem));background:var(--card);border-radius:var(--radius-lg);box-shadow:0 30px 90px -20px #3c281073;display:flex;flex-direction:column;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(14px) scale(.97);transform-origin:bottom left;transition:opacity .35s var(--ease-out),transform .35s var(--ease-out),visibility .35s}.cart__panel.is-open{opacity:1;visibility:visible;transform:none}.cart__head{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.3rem .9rem;border-bottom:1px solid var(--line)}.cart__title{font-family:var(--font-display);font-weight:640;font-size:1.25rem}.cart__close{font-size:1.7rem;line-height:1;opacity:.65;transition:opacity .25s,transform .25s;padding:.1rem .4rem}.cart__close:hover{opacity:1;transform:rotate(90deg)}.cart__items{flex:1;overflow-y:auto;padding:.9rem 1.3rem;display:grid;gap:.9rem;scrollbar-width:thin}.cart__empty{color:var(--ink-soft);text-align:center;padding-block:1.4rem}.cart-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.8rem}.cart-item__name{font-weight:700;font-size:.94rem;line-height:1.3}.cart-item__price{color:var(--ink-faint);font-size:.78rem}.cart-item__qty{display:flex;align-items:center;gap:.15rem;border:1.5px solid var(--line);border-radius:999px;padding:.15rem}.cart-item__qty button{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:1.05rem;color:var(--terra-dark);transition:background-color .2s}.cart-item__qty button:hover{background:var(--bg-warm)}.cart-item__qty span{min-width:1.5ch;text-align:center;font-weight:700;font-size:.9rem}.cart-item__line{font-weight:800;font-size:.94rem;color:var(--terra-dark);min-width:4.2ch;text-align:right}.cart__foot{border-top:1px solid var(--line);padding:1rem 1.3rem 1.2rem;display:grid;gap:.75rem;background:var(--bg-warm)}.cart__subrow{display:flex;justify-content:space-between;font-weight:800}.cart__note{font-size:.8rem;color:var(--ink-soft)}.visit__mapembed{grid-column:1 / -1;margin-top:clamp(1.5rem,4vh,3rem);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-soft);line-height:0}.visit__mapembed iframe{width:100%;height:clamp(300px,42vh,440px);border:0;filter:sepia(.22) saturate(.9) contrast(1.02);transition:filter .5s}.visit__mapembed:hover iframe{filter:none}.chatbot__nudge{position:absolute;right:0;bottom:calc(100% + .9rem);width:max-content;max-width:min(260px,calc(100vw - 6rem));background:var(--card);border-radius:16px 16px 4px;box-shadow:var(--shadow-lift);padding:.8rem 2.1rem .8rem 1rem;font-size:.88rem;line-height:1.45;cursor:pointer;animation:nudge-in .5s var(--ease-out)}@keyframes nudge-in{0%{opacity:0;transform:translateY(10px)}}.chatbot__nudge-x{position:absolute;top:.3rem;right:.55rem;font-size:1.05rem;opacity:.55}.chatbot__nudge-x:hover{opacity:1}
