@font-face{font-family:'Fira Display';src:url('assets/FiraSansExtraCondensed-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{--pine:#082b1d;--paper:#f8f7f4;--ink:#103426;--line:#d8ded7;--gutter:4.8vw;--display:'Fira Display','Arial Narrow',sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px;scrollbar-color:#587462 var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}::selection{background:#c5d5bb;color:var(--pine)}a{color:inherit;text-decoration:none;text-underline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--display);font-weight:700;line-height:.99;letter-spacing:-.025em;text-wrap:balance}h2{font-size:clamp(42px,5.75vw,86px)}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #b08137;outline-offset:5px}.skip-link{position:fixed;z-index:100;top:12px;left:16px;padding:12px 20px;background:var(--paper);color:var(--pine);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}[hidden]{display:none!important}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:48px;padding:12px 23px;font-size:16px;font-weight:500;line-height:1.2;border:1px solid transparent;transition:background 180ms,color 180ms,transform 180ms;white-space:nowrap}.button:active{transform:scale(.97)}.button-outline{border-color:currentColor}.button-outline:hover{background:var(--paper);color:var(--pine)}.button-light{background:var(--paper);color:var(--pine)}.button-light:hover{background:#dfe9d7}.button-green{background:var(--pine);color:var(--paper)}.button-green:hover{background:#254d38}.text-link{display:inline-flex;align-items:center;gap:24px;line-height:1.5;padding-bottom:5px;border-bottom:1px solid currentColor;white-space:nowrap}.text-link svg{transition:transform 180ms var(--ease)}.text-link:hover svg{transform:translateX(4px)}.chapter{font-size:12px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:27px;line-height:1.4}.short-rule{display:block;width:45px;height:1px;background:currentColor;margin:32px 0 24px}.lead{font-size:clamp(18px,2.05vw,30px);line-height:1.35}.header{position:absolute;z-index:20;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px var(--gutter);background:var(--pine);color:var(--paper)}.brand img{width:135px;height:auto;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:38px;padding-top:0;font-size:16px}.desktop-nav>a:not(.button){padding:8px 0;border-bottom:1px solid transparent}.desktop-nav>a:not(.button):hover{border-color:currentColor}.desktop-nav .button{min-height:42px;padding:9px 22px}.header.scrolled{position:fixed;padding:12px var(--gutter);background:var(--pine);align-items:center}.header.scrolled .brand img{width:92px}.header.scrolled .desktop-nav{padding:0}.mobile-toggle,.mobile-reserve{display:none}
.hero{position:relative;height:100svh;min-height:640px;max-height:1080px;overflow:hidden;color:var(--paper);background:#594a2c}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{will-change:transform}.hero-image img{width:100%;height:100%;object-position:50% 50%}.hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.33) 0%,rgba(0,0,0,.02) 40%,rgba(0,0,0,.43) 100%)}.hero-copy{position:absolute;left:var(--gutter);bottom:11.7%;z-index:1}.hero h1{font-size:clamp(76px,9.6vw,154px);line-height:.94;text-transform:uppercase;letter-spacing:-.015em;text-wrap:initial}.hero-copy>p{font-size:clamp(18px,2.13vw,31px);margin-top:15px}.scroll-cue{position:absolute;bottom:3.3%;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;gap:20px;font-size:13px;padding:10px 0;z-index:1}.scroll-line{flex:1;height:1px;background:rgba(248,247,244,.7);transform-origin:left center}.scroll-cue svg{width:18px;height:18px}.encounter{display:grid;grid-template-columns:45.8% 54.2%;align-items:center;padding:40px 0;min-height:570px}.encounter-copy{padding:10px 24px 10px var(--gutter)}.encounter h2{font-size:clamp(42px,5.3vw,78px);text-wrap:initial;width:115%;transform:scaleX(.86);transform-origin:left center}.encounter-photo{height:clamp(370px,34.3vw,550px);overflow:hidden}.encounter-photo img{width:100%;height:100%;will-change:transform}.table-story{border-top:1px solid #e9eae5;padding:44px 0 38px;overflow:clip}.table-frame{width:100%}.table-heading{padding:0 var(--gutter);display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px}.table-heading .chapter{margin-bottom:12px}.table-heading h2{font-size:clamp(42px,5.75vw,86px)}.table-heading .text-link{margin-bottom:7px}.food-gallery{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none}.food-gallery::-webkit-scrollbar{display:none}.food-track{display:flex;gap:20px;padding:0 var(--gutter);width:max-content}.food-track figure{width:36vw;flex:none;scroll-snap-align:center}.food-track .food-feature{width:52.3vw}.food-track img{width:100%;height:32.2vw;max-height:535px}.food-track figcaption{font-size:20px;margin-top:11px}.food-track a{display:block;overflow:hidden}.food-track img{transition:transform 450ms var(--ease)}.food-track a:hover img{transform:scale(1.025)}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;padding:22px var(--gutter) 0}.gallery-hint{font-size:14px}.gallery-controls{display:flex;gap:12px}.gallery-controls button{width:44px;height:44px;display:grid;place-items:center;background:transparent;border:1px solid var(--line);color:var(--pine);transition:background 180ms}.gallery-controls button:hover{background:#e5e9df}.gallery-controls button:active{transform:scale(.97)}.gallery-controls button:disabled{opacity:.35;cursor:default}.night-story{height:650px;background:var(--pine);position:relative;color:var(--paper)}.night-frame{height:100%;width:100%;position:relative;overflow:hidden}.night-image,.night-day{position:absolute;inset:0;width:100%;height:100%;object-position:50% 50%}.night-day{opacity:0}.night-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,12,20,.66),rgba(0,0,0,.02) 80%)}.night-copy{position:absolute;left:var(--gutter);top:9%;z-index:1}.night-copy h2{font-size:clamp(55px,6.65vw,102px);line-height:.98;text-wrap:initial}.night-copy .chapter{margin-bottom:18px}.night-copy .short-rule{margin:26px 0 16px}.night-copy>p:last-child{font-size:clamp(18px,2.1vw,30px)}.night-progress{position:absolute;bottom:28px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;gap:24px;font-size:12px}.night-line{height:1px;flex:1;background:rgba(255,255,255,.35)}.night-line i{height:1px;display:block;width:100%;background:var(--paper);transform-origin:left}.booking{padding:62px var(--gutter) 38px;background:var(--pine);color:var(--paper)}.booking-main{display:grid;grid-template-columns:57.3% 42.7%;gap:0;margin-bottom:44px}.booking h2{font-size:clamp(46px,5.2vw,80px);text-wrap:initial}.booking-actions{display:flex;gap:20px;flex-wrap:wrap;margin-top:32px;padding-right:40px}.visit-details{border-left:1px solid rgba(248,247,244,.5);padding:15px 0 15px 48px;display:flex;flex-direction:column;justify-content:center;gap:28px}.visit-details>div{display:flex;align-items:center;gap:23px;font-size:15px;line-height:1.55}.visit-details svg{width:32px;height:32px}.visit-details address{font-style:normal}.footer{border-top:1px solid rgba(248,247,244,.6);display:flex;justify-content:space-between;align-items:center;padding-top:27px}.footer img{width:190px;height:auto;object-fit:contain}.instagram{display:flex;gap:16px;align-items:center;padding:12px}.instagram:hover{text-decoration:underline}
@media(min-width:1000px) and (prefers-reduced-motion:no-preference){html.story-motion .table-story{height:var(--table-story-height,165svh);padding:0}html.story-motion .table-frame{position:sticky;top:86px;height:calc(100svh - 86px);display:flex;flex-direction:column;justify-content:center;padding:30px 0}html.story-motion .food-gallery{overflow:hidden;scroll-snap-type:none}html.story-motion .food-track{will-change:transform}html.story-motion .food-track img{height:min(32.2vw,45svh,calc(100svh - 400px))}html.story-motion .night-story{height:170svh}html.story-motion .night-frame{position:sticky;top:0;height:100svh}html.story-motion .night-day{opacity:1}html.story-motion .night-image{opacity:0}html.story-motion .night-copy{opacity:0;top:18%}html.story-motion .night-copy h2{font-size:clamp(70px,7.7vw,120px)}}
.menu-redirect main{display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding:60px var(--gutter);max-width:800px}.menu-redirect h1{font-size:clamp(64px,10vw,110px)}.menu-redirect img{width:160px;height:auto;object-fit:contain}
@media(min-width:1800px){:root{--gutter:max(4.8vw,calc((100vw - 1660px)/2))}.encounter{min-height:620px}.food-track figure{width:600px}.food-track .food-feature{width:860px}.food-track img{height:535px}}
@media(max-width:999px){.header{padding-top:16px}.desktop-nav{gap:22px;font-size:14px;padding-top:0}.desktop-nav .button{font-size:14px;padding:8px 14px}.hero{min-height:0;max-height:950px}.hero h1{font-size:clamp(76px,10.3vw,110px)}.hero-copy>p{font-size:20px}.encounter{min-height:39.5vw;padding:25px 0}.encounter-photo{height:34.3vw;min-height:0}.encounter .chapter{margin-bottom:24px}.encounter h2{font-size:5.8vw}.short-rule{margin:24px 0 20px}.encounter .lead{font-size:21px}.table-heading{gap:25px}.table-heading h2{font-size:5.8vw}.table-heading .text-link{font-size:14px;gap:16px}.food-track figcaption{font-size:17px}.night-story{height:50vw;min-height:420px}.night-copy h2{font-size:7vw}.night-copy>p:last-child{font-size:20px}.booking{padding-top:45px}.booking-main{grid-template-columns:57% 43%;margin-bottom:35px}.booking h2{font-size:5.7vw}.booking-actions{gap:12px;padding-right:25px;margin-top:26px}.booking-actions .button{font-size:14px;gap:15px;padding:12px 15px}.visit-details{padding-left:28px;gap:22px}.visit-details>div{font-size:13px;gap:15px}.visit-details svg{width:26px;height:26px}.footer img{width:160px}}
@media(max-width:640px){:root{--gutter:22px}html{scroll-padding-top:78px}.header{padding:15px var(--gutter)}.brand img{width:120px}.desktop-nav{display:none}.mobile-toggle{display:flex;align-items:center;gap:12px;border:1px solid rgba(248,247,244,.7);color:inherit;background:transparent;padding:10px 12px;min-height:44px;font-size:14px;margin-top:0}.menu-lines{width:17px;height:9px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.header.scrolled{padding-top:9px;padding-bottom:9px}.header.scrolled .mobile-toggle{margin:0}.header #mobile-nav{position:absolute;left:0;right:0;top:100%;padding:10px var(--gutter) 25px;background:var(--pine);border-top:1px solid rgba(255,255,255,.15);color:var(--paper)}#mobile-nav a{display:block;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.2)}.hero{height:calc(100svh - 38px);min-height:600px;max-height:850px}.hero-image img{object-position:56% 50%}.hero-copy{bottom:15%;right:20px}.hero h1{font-size:clamp(45px,15.4vw,96px);line-height:.98;white-space:nowrap}.hero-copy>p{font-size:16px;max-width:27ch;margin-top:18px;line-height:1.5}.scroll-cue{bottom:5%;gap:12px;font-size:11px}.scroll-cue svg{width:16px}.encounter{grid-template-columns:1fr;padding:40px 0 0;min-height:0}.encounter-copy{padding:0 var(--gutter) 36px}.chapter{font-size:11px;margin-bottom:22px}.encounter h2{font-size:clamp(42px,11.5vw,66px);width:100%;transform:none}.encounter .lead{font-size:19px}.desktop-break{display:none}.encounter-photo{height:70vw;min-height:0;margin-left:var(--gutter)}.table-story{padding:40px 0 27px}.table-heading{display:block;margin-bottom:24px}.table-heading h2{font-size:clamp(42px,11.5vw,66px);max-width:10ch;line-height:1}.table-heading .text-link{margin:23px 0 0;font-size:14px;gap:22px}.food-track{gap:14px}.food-track figure,.food-track .food-feature{width:82vw}.food-track img{height:62vw;max-height:none}.food-track figcaption{font-size:16px}.gallery-bottom{padding-top:18px}.gallery-hint{font-size:12px;max-width:21ch}.gallery-controls{gap:8px}.night-story{height:620px;min-height:0}.night-image{object-position:53% 50%}.night-shade{background:linear-gradient(180deg,rgba(0,12,20,.63),rgba(0,12,20,.06) 70%)}.night-copy{top:44px;right:15px}.night-copy h2{font-size:clamp(53px,13.4vw,79px)}.night-copy>p:last-child{font-size:17px}.night-copy .short-rule{margin:24px 0 17px}.night-progress{bottom:28px;font-size:11px;gap:15px}.booking{padding-top:43px;padding-bottom:100px}.booking-main{grid-template-columns:1fr;margin-bottom:36px}.booking h2{font-size:clamp(48px,12.4vw,74px)}.booking-actions{flex-direction:column;align-items:stretch;max-width:360px;padding-right:0;gap:12px;margin-top:28px}.booking-actions .button{font-size:15px;min-height:50px}.visit-details{border-left:0;border-top:1px solid rgba(248,247,244,.35);padding:30px 0 0;margin-top:36px;gap:24px}.visit-details>div{font-size:14px;gap:18px}.visit-details svg{width:25px;height:25px}.footer{padding-top:25px}.footer img{width:125px}.instagram{font-size:14px;gap:9px;padding:10px 0}.instagram svg{width:20px;height:20px}.mobile-reserve{display:flex;position:fixed;z-index:30;bottom:0;left:0;right:0;justify-content:center;padding:15px 15px calc(15px + env(safe-area-inset-bottom));border-top:1px solid rgba(248,247,244,.35);font-size:14px;min-height:52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-image,.encounter-photo img{transform:none!important}.night-day{display:none}.night-image,.night-copy{opacity:1!important}.food-track{transform:none!important}}
