:root{--paper:#ece4d2;--ink:#26382c;--olive:#1b271f;--rust:#85523c;--line:#bcb9a5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3,.brand,.footer-brand{font-family:'DM Serif Display',Georgia,serif;font-weight:400}h2{font-size:clamp(46px,5vw,76px);line-height:1.05;letter-spacing:-1.5px}a,button,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #b78151;outline-offset:6px}header{display:flex;align-items:center;gap:30px;padding:25px 5%;border-bottom:1px solid var(--line)}.brand{display:flex;gap:10px;align-items:center;font-size:40px;line-height:1;white-space:nowrap}.brand svg{width:34px;height:38px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}nav{display:flex;gap:30px;margin-left:auto}nav a,.text-link{font-size:17px;min-height:44px;display:inline-flex;align-items:center}nav a:hover,.text-link:hover{color:var(--rust)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:16px 24px;border:1px solid currentColor;font-size:17px;min-height:54px;transition:background .2s,color .2s}.button:hover{background:var(--ink);color:var(--paper)}.button span{font-size:24px}.hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:5%;padding:65px 6% 75px;min-height:750px;overflow:hidden}.hero-copy{position:relative;align-self:center;padding:25px 0}.eyebrow{font-size:16px;margin-bottom:30px}.hero h1{font-size:clamp(110px,12.4vw,190px);letter-spacing:-7px;line-height:.76;margin:25px 0 40px}.hero h1 em{font-style:normal;display:inline-block;margin-left:40px}.intro{font-size:20px;margin-bottom:30px}.hero-image{align-self:stretch;min-height:610px;position:relative;border-radius:48% 48% 2px 2px;overflow:hidden}.hero-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:53% 50%}.herb-mark{position:absolute;width:140px;height:120px;right:0;top:0;color:var(--rust);transform-origin:20% 90%;animation:herb-sway 8s ease-in-out infinite}.section{padding:90px 6%}.food{position:relative;border-top:1px solid var(--line);background:#e6ddc8}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end}.section-heading p{max-width:360px}.food-art{position:relative;width:90%;max-width:1150px;margin:30px auto 5px}.food-art img{width:100%;height:auto}.steam{position:absolute;left:48%;top:0;width:15%;height:22%;fill:none;stroke:var(--rust);stroke-width:1.4;overflow:visible;opacity:.45}.steam path{stroke-dasharray:50 210;animation:steam-rise 6s linear infinite}.steam path:nth-child(2){animation-delay:-2s}.steam path:nth-child(3){animation-delay:-4s}
.menu-box{background:var(--olive);color:var(--paper);border:1px solid #57614e;margin-top:45px}.menu-box summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 36px;min-height:90px}.menu-box summary::-webkit-details-marker{display:none}.menu-box summary>span:first-child{font:42px/1.1 'DM Serif Display',serif}.menu-expand{display:flex;align-items:center;gap:25px;font-size:17px}.menu-expand b{font-weight:400;font-size:30px;transition:transform .3s}.when-open{display:none}.menu-box[open] .when-open{display:inline}.menu-box[open] .when-closed{display:none}.menu-box[open] .menu-expand b{transform:rotate(45deg)}.menu-box[open] summary{border-bottom:1px solid #59604f}.expanded-menu{padding:0 36px 35px}.menu-category{padding:30px 0;border-bottom:1px solid #59604f}.menu-category h4{font:30px/1.2 'DM Serif Display',serif;color:#d3b896;margin:0 0 25px}.menu-category ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:25px 45px}.menu-category li>span{font-size:19px}.menu-category p{font-size:16px;color:#c3bcad;margin-top:3px}.menu-source{font-size:16px;margin-top:25px;color:#c3bcad}.menu-source a{text-decoration:underline;text-underline-offset:4px}
.story{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:7%;background:var(--olive);color:var(--paper);padding:80px 6%;overflow:hidden}.table-art{position:relative}.table-art img{position:relative;z-index:1}.lamp-glow{position:absolute;top:13%;left:43%;width:20%;height:35%;border-radius:50%;background:radial-gradient(ellipse,#caa45b25,transparent 70%);animation:lamplight 7s ease-in-out infinite}.story-copy p{font-size:20px;margin:28px 0}.text-link{border-bottom:1px solid currentColor;gap:12px}.story .text-link:hover{color:#d3b896}.social{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-bottom:1px solid var(--line)}.social-title .text-link{margin-top:25px}.reels>a{display:flex;gap:20px;align-items:center;padding:25px 0;border-top:1px solid var(--line)}.reels>a:last-child{border-bottom:1px solid var(--line)}.reels h3{font:20px/1.4 'DM Sans',sans-serif;overflow-wrap:anywhere}.reels p{font-size:16px;margin-top:8px}.play{width:48px;height:48px;flex-shrink:0;display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;font-size:16px}.reels a:hover .play{background:var(--ink);color:var(--paper)}.visit{display:grid;grid-template-columns:1.15fr 1fr;gap:12%}.visit-intro{font-size:20px;margin:25px 0}.reservation-note{font-size:17px;margin:25px 0;max-width:450px}.hours{align-self:start;border-top:2px solid var(--ink);padding-top:25px;margin-top:40px}.hours h3{font-size:38px}.hours dl{margin:25px 0}.hours dl>div{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}dd{margin:0;white-space:nowrap}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:50px 6%;background:var(--olive);color:var(--paper);font-size:17px}.footer-brand{font-size:68px;line-height:1}footer a{min-height:44px;display:flex;align-items:center}.skip{position:fixed;top:-100px;left:15px;padding:12px;background:var(--paper);z-index:100}.skip:focus{top:10px}.reveal{animation:appear .8s ease-out both;animation-timeline:view();animation-range:entry 0% entry 25%}
@keyframes herb-sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes steam-rise{from{stroke-dashoffset:0;transform:translateY(8px);opacity:0}25%{opacity:.7}75%{opacity:.4}to{stroke-dashoffset:-260;transform:translateY(-10px);opacity:0}}@keyframes lamplight{0%,100%{opacity:.35;transform:scale(.95)}50%{opacity:.8;transform:scale(1.08)}}@keyframes appear{from{opacity:.65;transform:translateY(18px)}to{opacity:1;transform:none}}body.motion-paused *,body.motion-paused *:before{animation-play-state:paused!important}.motion-paused .reveal{animation:none}
@media(max-width:1100px){header{gap:20px;padding:20px 4%}nav{gap:20px}.brand{font-size:35px}.header-cta{display:none}.hero{gap:4%;padding:55px 5%;min-height:670px}.hero h1{font-size:140px}.hero-image{min-height:560px}.herb-mark{width:100px;right:0;top:-45px}.story{gap:5%}.visit{gap:7%}}
@media(max-width:760px){header{flex-wrap:wrap;gap:16px;padding:20px 6%}.brand{font-size:37px}nav{width:100%;margin:0;justify-content:space-between;border-top:1px solid var(--line);padding-top:7px}nav a{font-size:16px}.hero{display:flex;flex-direction:column;padding:35px 6% 40px;gap:32px;min-height:0}.hero-copy{width:100%;padding:0}.hero .eyebrow{font-size:16px;margin:0 0 30px}.hero h1{font-size:clamp(85px,23vw,140px);letter-spacing:-4px;line-height:.9;margin:0 0 28px}.hero h1 br{display:none}.hero h1 em{margin-left:10px}.herb-mark{width:85px;height:80px;top:auto;bottom:0;right:5%}.intro{font-size:18px;margin-bottom:24px}.hero-image{min-height:0;width:100%;aspect-ratio:1/1.08;border-radius:46% 46% 2px 2px}.section{padding:55px 6%}h2{font-size:48px}.section-heading{display:block}.section-heading p{margin-top:20px;max-width:none}.food-art{width:112%;margin:25px -6% 0}.steam{top:-1%;width:18%}.menu-box{margin-top:30px}.menu-box summary{padding:24px 20px;gap:15px;min-height:82px}.menu-box summary>span:first-child{font-size:32px}.menu-expand{font-size:16px;gap:12px}.expanded-menu{padding:0 20px 25px}.menu-category ul{grid-template-columns:1fr;gap:21px}.menu-category h4{font-size:28px}.story{display:flex;flex-direction:column;padding:45px 6% 55px;gap:25px}.table-art{width:110%}.story-copy{width:100%}.story-copy p{font-size:18px;margin:22px 0}.social,.visit{grid-template-columns:1fr;gap:35px}.social-title .text-link{margin-top:20px}.hours{margin-top:0}.hours dl>div{font-size:17px;gap:15px}.visit-intro{font-size:18px}.reels h3{font-size:18px}footer{flex-direction:column;align-items:start;gap:20px;padding:40px 6%}.footer-brand{font-size:58px}}
@media(max-width:370px){.brand{font-size:30px;gap:6px}.brand svg{width:25px}.hero h1{font-size:80px}.hours dl>div{font-size:16px}.button{padding:15px 18px;gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:760px){header .brand{order:0}header nav{order:2}}

/* Interior details drawn from the restaurant photographs. */
.story{background:#222521;grid-template-columns:1.65fr .85fr;gap:5%;padding:75px 4%}.story-copy h2{font-size:clamp(42px,4.2vw,64px)}.room-lights{position:absolute;inset:0;pointer-events:none;z-index:2}.room-lights i{position:absolute;width:5%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#f6b75555,transparent 70%);animation:room-glow 8s ease-in-out infinite}.room-lights i:nth-child(1){left:17%;top:6%}.room-lights i:nth-child(2){left:33%;top:14%;animation-delay:-2s}.room-lights i:nth-child(3){left:46%;top:20%;animation-delay:-4s}.room-lights i:nth-child(4){left:60%;top:22%;animation-delay:-1s}.room-lights i:nth-child(5){left:81%;top:14%;animation-delay:-5s}@keyframes room-glow{0%,100%{opacity:.2}50%{opacity:.7}}
@media(max-width:760px){.story{padding:45px 6% 55px;gap:28px}.table-art{width:112%}.story-copy h2{font-size:44px}}

/* Interior-led opening and a single, continuous editorial composition. */
header{background:#222521;color:var(--paper);border-color:#535448}.hero{background:#222521;color:var(--paper);grid-template-columns:.7fr 1.3fr;gap:2%;padding:50px 4% 65px 6%;min-height:650px;position:relative}.hero:after{content:'';position:absolute;bottom:0;left:6%;right:6%;height:1px;background:linear-gradient(90deg,transparent,#b78b54,transparent)}.hero-copy{z-index:3}.hero h1{font-size:clamp(100px,10.3vw,155px)}.hero .eyebrow{color:#d5c1a5}.hero-links{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.hero .text-link{font-size:16px}.hero .button:hover{background:var(--paper);color:var(--ink)}.opening-art{align-self:center;position:relative;width:108%;margin-left:-4%}.opening-art img{position:relative;z-index:1}.food{background:var(--paper);border:0;padding-top:85px}.food-composition{display:grid;grid-template-columns:.85fr 1.15fr;gap:6%;align-items:center}.food-photograph{margin:0;position:relative;padding:12px;border:1px solid #a69b82}.food-photograph .hero-image{min-height:0;aspect-ratio:1/1.1;border-radius:0}.food-photograph figcaption{font:25px/1.3 'DM Serif Display',serif;padding:16px 6px 3px}.food-drawing>p{max-width:370px;margin:0 auto;font-size:20px;text-align:center}.food-art{width:110%;margin:25px -5% 0}.menu-box{margin-top:65px;border-color:#8e795b}.social{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.visit{background:#e6ddc8}.visit h2{font-size:clamp(44px,4.6vw,68px)}.hours{border-top-color:#98774f}footer{background:#222521}.reels>a{border-color:#b8a78a}.play{border-color:#94754e}.header-cta:hover{background:var(--paper);color:var(--ink)}
@media(max-width:1100px){.hero{min-height:560px}.hero h1{font-size:115px}.hero-links{gap:16px}.opening-art{width:110%}.food-drawing>p{font-size:18px}}
@media(max-width:760px){.hero{padding:35px 6% 35px;gap:28px;min-height:0}.hero h1{font-size:clamp(80px,23vw,140px)}.hero .eyebrow{margin-bottom:25px}.hero .intro{margin-bottom:23px}.hero-links{gap:18px}.hero .text-link{font-size:16px}.opening-art{width:112%;margin:0 -6%;align-self:center}.food{padding-top:50px}.food-composition{grid-template-columns:1fr;gap:35px}.food-photograph{margin-right:8%}.food-photograph .hero-image{aspect-ratio:1.12}.food-drawing>p{text-align:left;margin:0;max-width:300px;font-size:18px}.food-art{width:110%;margin:12px -5% 0}.menu-box{margin-top:30px}.visit h2{font-size:44px}.hero-links .button{min-width:120px}}

/* A readable menu preview alongside the single food photograph. */
.food-composition{align-items:start;grid-template-columns:.85fr 1.15fr;gap:6%}.food-composition>.menu-box{margin:0}.food-composition>.food-photograph{position:sticky;top:30px}.menu-box summary{display:block;padding:32px}.menu-box summary>.menu-title{display:block;font-size:44px}.menu-preview{display:block;margin:25px 0 30px}.preview-item{display:block;padding:18px 0;border-bottom:1px solid #59604f}.preview-item strong{display:block;font-size:21px;font-weight:500;line-height:1.4}.preview-item>span{display:block;font-size:17px;color:#c3bcad;margin-top:5px}.menu-expand{display:flex;justify-content:space-between;padding-top:5px}.menu-box[open] .menu-preview{display:none}.menu-box[open] .menu-title{margin-bottom:22px}.menu-box .menu-category ul{grid-template-columns:1fr}.menu-box .menu-category h4{font-size:28px}.menu-box summary:hover .menu-expand{color:#e4bd86}
@media(max-width:760px){.food-composition{grid-template-columns:1fr;gap:30px}.food-composition>.food-photograph{position:static}.menu-box summary{padding:26px 22px}.menu-box summary>.menu-title{font-size:38px}.preview-item strong{font-size:20px}.preview-item>span{font-size:16px}.menu-preview{margin:18px 0 24px}}

/* Full-height portrait footage, with its original composition preserved. */
.video-showcase{display:flex;flex-direction:column;align-items:center;gap:26px;padding:60px 6% 45px;background:radial-gradient(ellipse at 50% 45%,#493d2c 0%,#222521 55%);color:var(--paper);border-top:1px solid #625743;border-bottom:1px solid #625743}.video-stage{width:min(100%,410px);padding:10px;border:1px solid #8f7956;box-shadow:0 18px 65px #0006;background:#181a16}.video-stage video{display:block;width:100%;height:auto;aspect-ratio:608/1080;object-fit:contain;background:#181a16}.video-showcase .text-link:hover{color:#d3b896}
@media(max-width:760px){.video-showcase{padding:35px 6%;gap:20px}.video-stage{max-width:360px;padding:6px}}
