@import url('fonts.css');
:root{--cream:#f3efe6;--sand:#e8dfd2;--ink:#342a22;--walnut:#3e3228;--muted:#706052;--light-muted:#cfc0ad;--deep:#241b14;--shade-rgb:36,27,20;--line:rgba(52,42,34,.2);--line-on-dark:rgba(243,239,230,.24);--serif:'Cormorant Garamond','Baskerville','Times New Roman',serif;--sans:'Manrope','Helvetica Neue',sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(52px,6.6vw,104px);line-height:.99;letter-spacing:-.04em}em{font-weight:400}::selection{background:var(--walnut);color:var(--cream)}.eyebrow,.tiny{font-size:10px;letter-spacing:.18em;line-height:1.6;font-weight:500}.tiny{font-size:9px;letter-spacing:.14em}.section{padding:70px 6.2vw 110px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:24px}.body-copy{font-size:13px;line-height:1.95;max-width:345px;color:var(--muted)}.line-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:11px 0;border-bottom:1px solid currentColor;font-size:10px;letter-spacing:.12em;text-transform:uppercase;transition:opacity .3s,gap .4s}.line-link span{font-size:20px;line-height:1;transition:transform .35s}.line-link:hover span{transform:translate(3px,-3px)}.line-link:hover{opacity:.7}.skip{position:fixed;top:-70px;left:20px;padding:15px;background:var(--cream);z-index:100}.skip:focus{top:15px}
.intro{position:fixed;inset:0;background:var(--walnut);color:var(--cream);z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;pointer-events:none;animation:curtain 1.2s var(--ease) .25s forwards}.intro>span{font:100px var(--serif);letter-spacing:-.08em}.intro small{font-size:9px;letter-spacing:.18em}@keyframes curtain{to{transform:translateY(-100%);visibility:hidden}}
.header{position:absolute;top:0;left:0;width:100%;height:115px;padding:25px 4.4vw;z-index:20;display:flex;justify-content:space-between;align-items:center;color:var(--cream)}.wordmark{font:46px/.85 var(--serif);letter-spacing:-.065em;text-align:center}.wordmark span{display:block;margin-top:10px;font:7px var(--sans);letter-spacing:.12em}.desktop-nav{display:flex;gap:34px;margin-left:8vw}.desktop-nav a{font-size:10px;letter-spacing:.07em;padding:12px 0;position:relative}.desktop-nav a:after{content:'';position:absolute;bottom:5px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a:hover:after{transform:scaleX(1)}.header-actions{display:flex;align-items:center;gap:34px}.header .line-link{font-size:9px;gap:20px}.menu-toggle{width:34px;height:44px;display:grid;align-content:center;gap:7px;background:none;padding:5px}.menu-toggle span{height:1px;background:currentColor;width:24px;transition:width .3s}.menu-toggle span:last-child{width:16px;margin-left:auto}.menu-toggle:hover span:last-child{width:24px}.navigation{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;border:0;padding:90px 12vw;background:var(--walnut);color:var(--cream)}.navigation::backdrop{background:var(--ink)}.navigation[open]{animation:nav-in .5s var(--ease)}@keyframes nav-in{from{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:none}}.navigation nav{display:grid;margin:40px 0 30px}.navigation nav a{font:clamp(34px,5vw,70px)/1.3 var(--serif);width:fit-content}.navigation nav a:hover{font-style:italic}.navigation nav small{font:10px var(--sans);margin-right:20px;color:var(--light-muted)}.close-nav{position:absolute;top:30px;right:5vw;background:none;display:flex;align-items:center;gap:20px}.close-nav span{font:40px var(--serif)}
.hero{height:100svh;min-height:700px;max-height:1300px;position:relative;overflow:hidden;color:var(--cream);background:var(--walnut)}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media{will-change:transform}.hero-media img{object-position:center 48%;animation:hero-image 2.8s var(--ease) both}@keyframes hero-image{from{transform:scale(1.09)}to{transform:scale(1)}}.hero-shade{background:linear-gradient(180deg,rgba(var(--shade-rgb),.5),rgba(var(--shade-rgb),.21) 35%,rgba(var(--shade-rgb),.35) 58%,rgba(var(--shade-rgb),.7))}.hero-content{position:relative;z-index:1;text-align:center;padding-top:clamp(145px,20vh,230px);display:flex;align-items:center;flex-direction:column}.hero-content>.eyebrow{font-size:9px;letter-spacing:.22em}.hero-content h1{font-size:clamp(125px,15vw,215px);line-height:.85;letter-spacing:-.07em;margin:20px 0 30px;padding-right:.06em}.hero-content h1 span{font:9px var(--sans);letter-spacing:.36em;display:block;margin-top:20px;margin-right:-.06em}.hero-content h2{font-size:clamp(36px,4.6vw,66px);line-height:1.02;letter-spacing:-.035em}.hero-content .line-link{margin-top:26px;font-size:9px;gap:50px}.hero-enter{animation:hero-enter 1.4s var(--ease) both;animation-delay:.7s}.hero-enter:nth-child(2){animation-delay:.85s}.hero-enter:nth-child(3){animation-delay:1s}.hero-enter:nth-child(4){animation-delay:1.15s}@keyframes hero-enter{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}.hero-bottom{position:absolute;bottom:33px;left:4.4vw;right:4.4vw;display:flex;justify-content:space-between;align-items:flex-end;font-size:8px;line-height:1.8;letter-spacing:.17em}.hero-bottom>span:last-child{text-align:right}.scroll-cue{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:8px}.scroll-cue span{font-size:25px;animation:down 2.3s ease-in-out infinite}@keyframes down{50%{transform:translateY(6px)}}.hero-number{position:absolute;left:4.4vw;top:50%;font-size:8px;letter-spacing:.2em;writing-mode:vertical-rl}
.story{padding-top:65px}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;padding:75px 3.5vw 0}.story-copy h2{margin-bottom:35px}.story-copy .body-copy+.body-copy{margin-top:17px}.story-copy .line-link{margin-top:28px}.story-image{position:relative;height:590px}.story-image img{object-position:50% 50%}.story-image figcaption{position:absolute;bottom:-30px;font-size:9px;letter-spacing:.04em;color:var(--muted)}.image-note{position:absolute;top:0;right:-25px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.2em}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(32px);transition:opacity 1s var(--ease),transform 1.2s var(--ease)}.js .reveal.is-visible{opacity:1;transform:none}.story-image.reveal{transition-delay:.12s}
.menu-section{background:var(--walnut);color:var(--cream);padding-bottom:100px}.menu-section .section-top{border-bottom:1px solid var(--line-on-dark);padding-bottom:25px}.menu-heading{display:flex;align-items:flex-end;justify-content:space-between;padding:65px 0 55px}.menu-heading .body-copy{color:var(--light-muted);padding:0 3vw 10px 0}.menu-layout{display:grid;grid-template-columns:.95fr 1.2fr;gap:8vw;align-items:center}.menu-photo{height:490px;position:relative;overflow:hidden}.menu-photo img{transition:opacity .25s,transform 1s;object-position:50% 52%}.menu-photo:hover img{transform:scale(1.03)}.photo-label{position:absolute;bottom:20px;left:20px;font-size:8px;letter-spacing:.18em;color:white;text-shadow:0 1px 5px #000}.tabs{display:flex;gap:25px;border-bottom:1px solid var(--line-on-dark)}.tabs button{background:none;padding:15px 0 19px;font-size:10px;color:var(--light-muted);position:relative;white-space:nowrap}.tabs button[aria-selected=true]{color:var(--cream)}.tabs button:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--cream);transform:scaleX(0);transition:transform .3s}.tabs button[aria-selected=true]:after{transform:scaleX(1)}.dish{display:flex;gap:18px;align-items:baseline;border-bottom:1px solid var(--line-on-dark);padding:29px 0}.dish>span:first-child{font-size:9px;color:var(--light-muted)}.dish>span:last-child{margin-left:auto;font-size:18px;color:var(--light-muted)}.dish h3{font-size:29px;line-height:1.2;letter-spacing:-.025em}.dish p{font-size:10px;line-height:1.8;color:var(--light-muted);margin-top:8px}.menu-selection>.line-link{margin-top:38px;font-size:9px}.menu-note{font-size:8px;color:var(--light-muted);margin-top:16px}.menu-switch{animation:switch .4s var(--ease)}@keyframes switch{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.space{position:relative;height:760px;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--cream)}.space-media,.space-shade{position:absolute;inset:-60px 0}.space-media img{object-position:center}.space-shade{background:linear-gradient(rgba(var(--shade-rgb),0.200),rgba(var(--shade-rgb),0.502))}.space-content{position:relative;text-align:center;padding:20px}.space-content h2{font-size:clamp(45px,6.5vw,88px);margin:30px 0}.space-content>p:not(.eyebrow){font-size:11px;letter-spacing:.03em}.space-content .line-link{margin-top:30px}.space-caption{position:absolute;bottom:30px;font-size:8px;letter-spacing:.2em}
.class-section{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;padding:110px 10vw}.class-photo{height:570px;overflow:hidden}.class-photo img{object-position:50% 12%;transition:transform 1s}.class-photo:hover img{transform:scale(1.035)}.class-copy h2{margin:28px 0}.class-copy .line-link{margin-top:26px}.footer{background:var(--sand);padding-bottom:25px}.footer .section-top{border-bottom:1px solid var(--line);padding-bottom:25px}.footer-invite{display:flex;justify-content:space-between;align-items:center;margin:65px 0 60px}.footer-invite h2{font-size:clamp(52px,7.5vw,110px)}.round-link{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--muted);border-radius:50%;width:145px;height:145px;flex-shrink:0;margin-right:5vw;gap:10px;font-size:10px;line-height:1.6;letter-spacing:.15em;text-align:center;transition:background .4s,color .4s,transform .4s}.round-link>span:last-child{font-size:27px}.round-link:hover{background:var(--walnut);color:var(--cream);transform:rotate(-8deg)}.visit-details{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px;border-top:1px solid var(--line);padding-top:32px}.visit-details .eyebrow{display:block;margin-bottom:20px;color:var(--muted);font-size:8px}.visit-details a,.visit-details p{display:block;font-size:12px;line-height:1.9}.visit-details a:hover{text-decoration:underline}.footer-logo{display:flex;align-items:center;gap:6vw;border-bottom:1px solid var(--line);padding:30px 0 18px;font:clamp(130px,24vw,340px)/1 var(--serif);letter-spacing:-.07em}.footer-logo span{font:10px/1.9 var(--sans);letter-spacing:.21em}.footer-bottom{display:flex;justify-content:space-between;padding:25px 0 10px;gap:18px;font-size:7px;letter-spacing:.12em}.demo-note{font-size:8px;color:var(--muted);margin-top:12px}
@media(min-width:1600px){.story-image{height:720px}.menu-photo{height:650px}.section{padding-left:max(6.2vw,calc((100vw - 1500px)/2));padding-right:max(6.2vw,calc((100vw - 1500px)/2))}}
@media(max-width:1000px){.desktop-nav{gap:20px;margin-left:0}.header-actions{gap:22px}.story-grid{gap:7vw;padding-left:0;padding-right:0}.story-image{height:510px}.story-copy h2{font-size:70px}.menu-layout{gap:5vw;grid-template-columns:1fr 1.1fr}.tabs{gap:15px}.tabs button{font-size:9px}.dish h3{font-size:25px}.space{height:650px}.class-section{padding:90px 6.2vw;gap:8vw}.class-photo{height:500px}.class-copy h2{font-size:68px}}
@media(max-width:680px){html{scroll-padding-top:20px}.section{padding:45px 7vw 65px}.header{height:95px;padding:24px 6vw}.wordmark{font-size:38px}.wordmark span{font-size:6px}.desktop-nav{display:none}.header-actions{gap:22px}.header .line-link{font-size:8px;gap:12px}.hero{min-height:700px;max-height:1000px}.hero-media img{object-position:52% 49%}.hero-shade{background:linear-gradient(rgba(var(--shade-rgb),0.400),rgba(var(--shade-rgb),0.251) 40%,rgba(var(--shade-rgb),0.467))}.hero-content{padding-top:155px}.hero-content>.eyebrow{font-size:7px;letter-spacing:.16em}.hero-content h1{font-size:145px;margin:28px 0 32px}.hero-content h1 span{font-size:7px;letter-spacing:.26em}.hero-content h2{font-size:43px;line-height:1.05}.hero-content .line-link{margin-top:28px}.hero-bottom{left:7vw;right:7vw;bottom:25px;font-size:6px;letter-spacing:.1em}.hero-number{display:none}.scroll-cue{font-size:6px}.scroll-cue span{font-size:23px}.section-top .tiny{display:none}.eyebrow{font-size:8px}.story-grid{display:flex;flex-direction:column;gap:45px;padding-top:42px;align-items:stretch}.story-copy h2{font-size:66px}.body-copy{font-size:12px;max-width:100%}.story-image{height:auto;aspect-ratio:3/4;margin-bottom:15px}.story-image figcaption{font-size:8px}.menu-heading{display:block;padding:42px 0 30px}.menu-heading h2{font-size:66px}.menu-heading .body-copy{padding:22px 0 0;font-size:11px}.menu-layout{grid-template-columns:1fr;gap:28px}.menu-photo{height:350px}.menu-photo img{object-position:50% 54%}.menu-section .section-top{gap:12px}.menu-section .section-top .line-link{font-size:8px;gap:12px;letter-spacing:.07em}.tabs{gap:26px;justify-content:space-between}.tabs button{font-size:9px}.dish{padding:23px 0}.dish h3{font-size:28px}.dish p{font-size:10px}.space{height:600px}.space-content h2{font-size:47px}.space-content>p:not(.eyebrow){font-size:10px;line-height:1.8;padding:0 30px}.space-media img{object-position:50%}.class-section{display:flex;flex-direction:column-reverse;gap:40px}.class-copy h2{font-size:66px}.class-photo{width:100%;height:470px}.footer-invite{display:block;margin:40px 0}.footer-invite h2{font-size:56px}.round-link{height:110px;width:110px;margin:35px 0 0;font-size:9px}.visit-details{grid-template-columns:1fr 1fr;gap:28px 15px}.visit-details>div:last-child{grid-column:1/-1}.visit-details a,.visit-details p{font-size:11px}.visit-details .eyebrow{margin-bottom:12px}.footer-logo{font-size:145px;gap:8vw;padding-top:40px}.footer-logo span{font-size:7px;letter-spacing:.13em}.footer-bottom{flex-wrap:wrap;font-size:6px;gap:14px}.footer-bottom>span:nth-child(2){order:3;width:100%}.footer-bottom>a{margin-left:auto}.navigation{padding:110px 8vw 40px}.navigation nav a{font-size:45px}.navigation nav{gap:8px;margin:35px 0}.navigation nav small{margin-right:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.intro{display:none}.js .reveal{opacity:1;transform:none}.hero-media,.space-media{transform:none!important}}
/* Quiet motion behind the existing hero typography. */
.hero-media video{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
.video-toggle{position:absolute;z-index:2;right:4.4vw;bottom:105px;display:flex;align-items:center;gap:14px;border:0;border-bottom:1px solid var(--line-on-dark);padding:12px 0;background:transparent;color:var(--cream);font:8px var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.video-toggle[hidden]{display:none}.video-toggle span{font-size:15px;letter-spacing:0}.video-toggle:focus-visible{outline:2px solid var(--cream);outline-offset:6px}
@media(max-width:680px){.hero-media video{object-position:57% center}.video-toggle{right:7vw;bottom:92px;font-size:7px}}
.hero-media{will-change:auto}
