@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Montserrat:wght@400;500;600&display=swap";:root{--font-sans:"Montserrat", sans-serif;--font-display:"DM Serif Display", serif;--background:oklch(96.5% .004 106);--foreground:oklch(27.5% .025 120);--primary:oklch(35% .035 123);--primary-foreground:oklch(97% .004 106);--muted-foreground:oklch(51% .018 120);--border:oklch(79% .011 110);--ring:oklch(44% .025 123);--brand-dark:oklch(36% .024 120);--brand-soft:oklch(52% .026 124);--surface:oklch(98.5% .003 105);--container:78rem;--gutter:clamp(1.25rem, 4vw, 4.5rem);--section-space:clamp(4.5rem, 8vw, 8rem);--section-space-compact:clamp(3.75rem, 6vw, 5.5rem);--panel-space:clamp(4.5rem, 7vw, 7rem);--transition:.45s cubic-bezier(.22, 1, .36, 1);--reveal-transition:.9s cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;border-color:var(--border)}html{scroll-behavior:smooth}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);margin:0;overflow-x:hidden}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}:focus-visible{outline:2px solid var(--ring);outline-offset:4px}.button{cursor:pointer;letter-spacing:.14em;text-transform:uppercase;height:3rem;transition:color var(--transition), background-color var(--transition), transform var(--transition);border:0;border-radius:0;justify-content:center;align-items:center;gap:.5rem;padding:0 1.75rem;font-size:.75rem;font-weight:500;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button--header{border:1px solid color-mix(in oklab, var(--primary-foreground) 50%, transparent);color:var(--primary-foreground);background:0 0}.button--header:hover,.button--outline-light:hover,.button--light{background:var(--primary-foreground);color:var(--primary)}.button--light:hover{background:color-mix(in oklab, var(--primary-foreground) 90%, transparent)}.button--outline-light{border:1px solid color-mix(in oklab, var(--primary-foreground) 55%, transparent);color:var(--primary-foreground);background:0 0}.site-header{z-index:50;height:6rem;padding:0 var(--gutter);color:var(--primary-foreground);transition:background-color var(--transition), height var(--transition);grid-template-columns:minmax(0,1fr) auto;align-items:center;animation:.8s cubic-bezier(.22,1,.36,1) .1s both headerEnter;display:grid;position:fixed;inset:0 0 auto}.site-header--solid{background:color-mix(in oklab, var(--primary) 96%, transparent);height:4.75rem}.brand-link{z-index:2;width:9.5rem;position:relative}.brand-link img,.footer-logo{width:100%;height:auto}.desktop-nav{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:2.25rem;font-size:.68rem;font-weight:500;display:none}.desktop-nav>a{position:relative}.desktop-nav>a:not(:last-child):after{content:"";height:1px;transition:right var(--transition);background:currentColor;position:absolute;bottom:-.5rem;left:0;right:100%}.desktop-nav>a:hover:after{right:0}.mobile-menu-button{z-index:2;width:2.75rem;height:2.75rem;color:var(--primary-foreground);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:relative}.menu-icon{gap:.4rem;width:1.4rem;display:grid}.menu-icon i{width:100%;height:1px;transition:transform var(--transition);background:currentColor}.menu-icon--open i:first-child{transform:translateY(.225rem)rotate(45deg)}.menu-icon--open i:last-child{transform:translateY(-.225rem)rotate(-45deg)}.mobile-nav{visibility:hidden;padding:8rem 1.5rem max(3rem, env(safe-area-inset-bottom));background:var(--primary);opacity:0;transition:opacity var(--transition), transform var(--transition), visibility var(--transition);flex-direction:column;gap:1.25rem;display:flex;position:fixed;inset:0;overflow-y:auto;transform:translateY(-1rem)}.mobile-nav--open{visibility:visible;opacity:1;transform:translateY(0)}.mobile-nav>a{font-family:var(--font-display);font-size:clamp(2rem,11vw,3.5rem)}.mobile-nav .mobile-reserve{border-top:1px solid color-mix(in oklab, var(--primary-foreground) 30%, transparent);font:500 .72rem var(--font-sans);letter-spacing:.14em;text-transform:uppercase;margin-top:auto;padding-top:1.5rem}.hero{min-height:max(36rem,94svh);color:var(--primary-foreground);align-items:flex-end;display:flex;position:relative;overflow:hidden}.hero-image,.hero-shade{width:100%;height:100%;position:absolute;inset:0}.hero-image{object-fit:cover;object-position:50% 62%;animation:14s ease-out both heroZoom;transform:scale(1.01)}.hero-shade{background:linear-gradient(90deg, color-mix(in oklab, var(--primary) 75%, transparent) 0%, color-mix(in oklab, var(--primary) 22%, transparent) 70%), linear-gradient(0deg, color-mix(in oklab, var(--primary) 52%, transparent), transparent 55%)}.hero-content{z-index:1;width:min(44rem, calc(100% - (var(--gutter) * 2)));margin:0 auto clamp(2.75rem, 8vh, 5.5rem) var(--gutter);position:relative}.hero-content>*{animation:.9s cubic-bezier(.22,1,.36,1) both heroContentEnter}.hero-content>:first-child{animation-delay:.18s}.hero-content>:nth-child(2){animation-delay:.28s}.hero-content>:nth-child(3){animation-delay:.4s}.hero-content>:nth-child(4){animation-delay:.52s}.hero h1,.section h2,.cuisine-section h2,.menu-section h2,.location-section h2,.reservation-section h2{font-family:var(--font-display);letter-spacing:0;font-weight:400;line-height:.94}.hero h1{margin:.85rem 0 1rem;font-size:clamp(3.15rem,9vw,8rem)}.hero-copy{max-width:33rem;font:400 clamp(.92rem, 1.4vw, 1.05rem) / 1.7 var(--font-sans);margin:0}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:1.75rem;display:flex}.hero-index{z-index:1;letter-spacing:.16em;text-transform:uppercase;writing-mode:vertical-rl;font-size:.65rem;animation:.8s .7s both fadeEnter;display:none;position:absolute;bottom:3.2rem;right:4.5rem}.eyebrow{color:var(--brand-soft);letter-spacing:.19em;text-transform:uppercase;margin:0;font-size:.65rem;font-weight:600}.eyebrow--light{color:color-mix(in oklab, var(--primary-foreground) 78%, transparent)}.text-link{border-bottom:1px solid color-mix(in oklab, currentColor 45%, transparent);letter-spacing:.12em;text-transform:uppercase;width:fit-content;transition:gap var(--transition);align-items:center;gap:.7rem;padding-bottom:.35rem;font-size:.7rem;font-weight:600;display:inline-flex}.text-link:hover{gap:1rem}.text-link--light{color:var(--primary-foreground)}.section{padding:var(--section-space) var(--gutter)}section[id]{scroll-margin-top:5.25rem}.section-inner{width:min(var(--container), 100%);margin-inline:auto}.intro-grid{gap:3rem;display:grid}.intro-content{align-content:center;gap:2rem;display:grid}.intro-heading h2,.gallery-heading h2,.reviews-inner h2{max-width:12ch;margin:.85rem 0 0;font-size:clamp(2.75rem,5.6vw,5.4rem)}.intro-heading h2{max-width:11ch;font-size:clamp(2.75rem,4.6vw,4.5rem);line-height:.98}.intro-copy{border-top:1px solid var(--border);max-width:30rem;color:var(--brand-dark);font:400 clamp(.95rem, 1.2vw, 1.05rem) / 1.8 var(--font-sans);padding-top:1.75rem}.intro-copy p{margin:0}.intro-copy p+p,.chef-copy p+p,.cuisine-copy p+p{margin-top:1.25rem}.intro-photo{margin:0}.intro-photo img{aspect-ratio:4/5;object-fit:cover;width:100%}.intro-photo figcaption{color:var(--muted-foreground);letter-spacing:.15em;text-transform:uppercase;justify-content:space-between;gap:1rem;margin-top:.9rem;font-size:.6rem;display:flex}.intro-photo figcaption span{color:var(--brand-dark)}.cuisine-section{background:var(--primary);color:var(--primary-foreground);display:grid}.cuisine-image-wrap{min-height:28rem;overflow:hidden}.cuisine-image-wrap img{object-fit:cover;width:100%;height:100%}.cuisine-copy{padding:var(--panel-space) var(--gutter);align-self:center}.cuisine-copy h2{max-width:38rem;margin:.85rem 0 1.75rem;font-size:clamp(2.75rem,5vw,5.4rem)}.cuisine-copy>p:not(.eyebrow){max-width:34rem;color:color-mix(in oklab, var(--primary-foreground) 80%, transparent);line-height:1.85}.rule{background:color-mix(in oklab, var(--primary-foreground) 40%, transparent);width:4rem;height:1px;margin:0 0 2rem}.gallery-section{padding-inline:0}.gallery-heading{padding:0 var(--gutter) clamp(2.5rem, 5vw, 4rem)}.gallery-heading h2{max-width:none}.gallery-heading h2 span{display:block}.gallery-grid{grid-template-rows:repeat(2,minmax(16rem,55vw));grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.gallery-image{object-fit:cover;width:100%;height:100%}.gallery-grid .gallery-image:nth-child(2){transition-delay:80ms}.gallery-grid .gallery-image:nth-child(3){transition-delay:.14s}.gallery-grid .gallery-image:nth-child(4){transition-delay:.2s}.gallery-image--1{grid-column:span 2}.gallery-image--4{display:none}.chef-section{background:var(--surface)}.chef-grid{gap:2.75rem;display:grid}.chef-main-photo img{aspect-ratio:4/5;object-fit:cover;width:100%}.chef-copy{align-self:center}.chef-copy h2{margin:.75rem 0 1.5rem;font-size:clamp(3.6rem,6.5vw,6.5rem)}.chef-copy>p:not(.eyebrow){max-width:30rem;color:var(--brand-dark);line-height:1.85}.menu-section{background:var(--brand-dark);color:var(--primary-foreground);display:grid}.menu-photo{min-height:24rem;overflow:hidden}.menu-photo img{object-fit:cover;width:100%;height:100%}.menu-copy{padding:var(--panel-space) var(--gutter);align-self:center}.menu-copy h2{margin:.9rem 0 1rem;font-size:clamp(3.4rem,6.5vw,6.5rem)}.menu-copy p:not(.eyebrow){color:color-mix(in oklab, var(--primary-foreground) 75%, transparent);margin-bottom:2rem}.coming-soon{border-left:1px solid;margin-left:.25rem;padding-left:.65rem;font-size:.55rem}.menu-status{border:1px solid color-mix(in oklab, var(--primary-foreground) 35%, transparent);min-height:3rem;color:color-mix(in oklab, var(--primary-foreground) 82%, transparent);letter-spacing:.14em;text-transform:uppercase;align-items:center;margin:0;padding:0 1.25rem;font-size:.72rem;font-weight:500;display:inline-flex}.reviews-section{padding-block:var(--section-space-compact);text-align:center}.reviews-inner{max-width:52rem}.reviews-inner h2{max-width:none;margin-inline:auto}.reviews-inner h2 span{display:block}.reviews-copy{max-width:none;color:var(--muted-foreground);margin:1.35rem auto;line-height:1.8}.reviews-inner .text-link{margin-inline:auto}.location-section{background:var(--surface);display:grid}.location-copy{padding:var(--panel-space) var(--gutter)}.location-copy h2{margin:.9rem 0 2rem;font-size:clamp(3.4rem,6.5vw,6.5rem)}.location-copy>p:not(.eyebrow){color:var(--brand-dark);line-height:1.8}.location-actions{flex-direction:column;align-items:flex-start;gap:1.35rem;margin-top:2rem;display:flex}.map-wrap{min-height:25rem}.map-wrap iframe{filter:grayscale()contrast(.88)sepia(.08);border:0;width:100%;height:100%;min-height:25rem}.reservation-section{min-height:clamp(32rem,72svh,40rem);color:var(--primary-foreground);text-align:center;place-items:center;display:grid;position:relative;overflow:hidden}.reservation-section>img,.reservation-shade{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.reservation-shade{background:color-mix(in oklab, var(--primary) 73%, transparent)}.reservation-copy{z-index:1;padding:var(--panel-space) var(--gutter);position:relative}.reservation-copy h2{margin:1rem 0 1.5rem;font-size:clamp(3.8rem,8vw,7.5rem)}.reservation-copy p{margin-bottom:2rem}.footer{padding:var(--section-space-compact) var(--gutter) 1.5rem;background:var(--primary);color:var(--primary-foreground)}.footer-inner{width:min(var(--container), 100%);align-items:start;gap:2.5rem;margin-inline:auto;display:grid}.footer-logo{width:11rem}.footer p{color:color-mix(in oklab, var(--primary-foreground) 68%, transparent);margin:0;font-size:.8rem;line-height:1.8}.footer nav{letter-spacing:.1em;text-transform:uppercase;flex-direction:column;gap:1rem;font-size:.68rem;display:flex}.footer nav a{transition:opacity var(--transition), transform var(--transition)}.footer nav a:hover{opacity:.72;transform:translate(.25rem)}.footer-bottom{width:min(var(--container), 100%);border-top:1px solid color-mix(in oklab, var(--primary-foreground) 18%, transparent);color:color-mix(in oklab, var(--primary-foreground) 55%, transparent);letter-spacing:.1em;text-transform:uppercase;justify-items:center;gap:1rem;margin:4rem auto 0;padding-top:1.25rem;font-size:.58rem;display:grid}.footer-credit a{color:var(--primary-foreground);transition:opacity .2s}.footer-credit a:hover{opacity:.72}.whatsapp-button{z-index:45;border:1px solid color-mix(in oklab, var(--primary-foreground) 32%, transparent);background:var(--primary);width:3.2rem;height:3.2rem;color:var(--primary-foreground);transition:transform var(--transition), background-color var(--transition);border-radius:50%;place-items:center;display:grid;position:fixed;bottom:1.15rem;right:1.15rem}.whatsapp-button:hover{background:var(--brand-dark);transform:translateY(-3px)}.whatsapp-button svg{fill:currentColor;width:1.35rem}.whatsapp-button:before{background:var(--brand-dark);width:max-content;color:var(--primary-foreground);content:attr(data-tooltip);letter-spacing:.08em;opacity:0;pointer-events:none;text-transform:uppercase;transition:var(--transition);padding:.55rem .7rem;font-size:.6rem;position:absolute;right:calc(100% + .8rem);transform:translate(.4rem)}.whatsapp-button:hover:before{opacity:1;transform:translate(0)}.reveal{opacity:0;transition:opacity var(--reveal-transition), transform var(--reveal-transition);will-change:transform, opacity;transform:translateY(1.5rem)}.reveal.is-visible{opacity:1;will-change:auto;transform:translateY(0)}.reveal-image{transform:scale(1.035)}.reveal-image.is-visible{transform:scale(1)}@keyframes headerEnter{0%{opacity:0;transform:translateY(-1rem)}}@keyframes heroContentEnter{0%{opacity:0;transform:translateY(1.25rem)}}@keyframes fadeEnter{0%{opacity:0}}@keyframes heroZoom{0%{transform:scale(1.06)}to{transform:scale(1.01)}}@media (width>=700px){.intro-photo img,.chef-main-photo img{aspect-ratio:1}.gallery-grid{grid-template-rows:24rem 30rem;grid-template-columns:1.25fr .8fr .8fr;gap:.75rem}.gallery-image--1{grid-area:1/1/3/2}.gallery-image--2{grid-column:2/4}.gallery-image--4{display:block}}@media (width>=960px){.site-header{padding-inline:var(--gutter)}.desktop-nav{display:flex}.mobile-menu-button,.mobile-nav{display:none}.hero-content{margin-bottom:clamp(4rem,9vh,6rem);margin-left:clamp(3rem,8vw,8rem)}.hero-index{display:block}.section{padding-inline:var(--gutter)}.intro-grid{grid-template-columns:minmax(0,1fr) minmax(20rem,.78fr);align-items:center;gap:clamp(3.5rem,7vw,7rem);max-width:70rem}.intro-photo img{aspect-ratio:1}.intro-content{gap:clamp(2rem,3vw,2.75rem)}.intro-heading h2{max-width:11ch}.reviews-inner h2 span,.reviews-copy{white-space:nowrap}.reviews-copy{font-size:clamp(.78rem,1.55vw,1rem)}.cuisine-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:49rem}.cuisine-copy{padding:var(--panel-space) clamp(3rem, 7vw, 8rem)}.gallery-heading{padding-inline:var(--gutter)}.chef-grid{grid-template-columns:minmax(20rem,.78fr) minmax(0,1fr);align-items:center;gap:clamp(3.5rem,7vw,7rem);max-width:70rem}.chef-main-photo img{aspect-ratio:1}.menu-section{grid-template-columns:1.2fr .8fr}.menu-photo{height:auto}.menu-copy{padding:var(--panel-space) clamp(3rem, 7vw, 8rem)}.location-section{grid-template-columns:.8fr 1.2fr}.location-copy{padding:var(--panel-space) clamp(3rem, 6vw, 7rem);align-self:center}.map-wrap,.map-wrap iframe{min-height:36rem}.footer{padding-inline:var(--gutter)}.footer-inner{grid-template-columns:1fr 1fr auto}.footer-bottom{grid-template-columns:1fr auto 1fr;justify-items:stretch}.footer-bottom>:nth-child(2){text-align:center}.footer-bottom>:last-child{text-align:right}.whatsapp-button{bottom:2rem;right:2rem}}@media (width<=479px){:root{--section-space:4rem;--section-space-compact:3.5rem;--panel-space:4rem}.site-header{height:5.25rem}.site-header--solid{height:4.5rem}.brand-link{width:8.25rem}.mobile-nav{padding-top:6.75rem}.hero{min-height:max(34rem,100svh)}.hero h1{font-size:clamp(2.65rem,14vw,3.15rem)}.hero-actions{align-items:flex-start;gap:1.25rem}.intro-heading h2,.gallery-heading h2,.reviews-inner h2,.cuisine-copy h2{font-size:clamp(2.4rem,12vw,2.75rem)}.chef-copy h2,.menu-copy h2,.location-copy h2{font-size:clamp(3rem,15vw,3.6rem)}.reservation-copy h2{font-size:clamp(3.25rem,17vw,3.8rem)}.intro-photo figcaption{flex-direction:column;gap:.4rem}.menu-status{justify-content:center;width:100%}.reservation-copy .button{width:100%;padding-inline:1rem}}@media (width>=1200px){.site-header{padding-inline:4.5rem}.intro-grid{grid-template-columns:minmax(0,1fr) minmax(24rem,.78fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}.site-header,.hero-content>*,.hero-index{animation:none}.button:hover,.footer nav a:hover,.whatsapp-button:hover{transform:none}}
