:root{--ink:#131315;--paper:#f0ede8;--gold:#c8955d;--gold-text:#86672f;--white:#eeecec;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}button{color:inherit}p{line-height:1.5}button:disabled{opacity:.45;cursor:default}[hidden]{display:none!important}.container{width:min(1180px,calc(100% - 80px));margin-inline:auto}.eyebrow{text-transform:uppercase;font-size:14px;letter-spacing:.09em}.muted{color:#766e65}.gold-rule{height:1px;background:var(--gold);width:140px;margin:20px auto}.visually-hidden,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link:focus{position:fixed;z-index:100;top:12px;left:12px;background:var(--paper);padding:16px}.site-header{background:var(--ink);color:var(--white);border-bottom:2px solid var(--gold)}.header-inner{height:124px;display:flex;align-items:center;gap:45px;position:relative}.brand img{width:180px;height:auto}.desktop-nav{display:flex;gap:32px;margin-left:auto;font-size:17px}.desktop-nav a{padding:12px 0;border-bottom:1px solid transparent;transition:color .2s}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--gold);border-color:var(--gold)}.header-call{font-family:var(--sans);font-size:13px;letter-spacing:.05em;border:1px solid #775a38;padding:12px 16px}.back{display:none}.button{min-height:50px;border:1px solid var(--gold);border-radius:3px;display:flex;align-items:center;justify-content:center;gap:10px;text-transform:uppercase;letter-spacing:.03em;background:var(--ink);color:var(--white);padding:12px 20px;font-size:18px;transition:background .2s,transform .2s}.button:hover{background:#29231d;transform:translateY(-2px)}.button img{object-fit:contain;flex-shrink:0}.home-intro{background:var(--ink);display:grid;grid-template-columns:1.18fr 1fr;min-height:620px;color:var(--white)}.home-view{overflow:hidden;position:relative}.home-view img{width:100%;height:100%;object-fit:cover;min-height:620px}.welcome{padding:64px 60px;text-align:center;align-self:center}.welcome h1{font-size:88px;font-weight:400;font-style:italic;line-height:1.1;margin-top:12px}.welcome .eyebrow{color:#d5ccc0}.lounge{color:var(--gold);text-transform:uppercase;letter-spacing:.22em;font-size:15px;margin-top:10px}.tagline{font-size:19px}.home-links{display:flex;flex-direction:column;gap:14px;margin:40px auto 0;max-width:350px}.home-interior{height:390px;overflow:hidden;background:var(--paper)}.home-interior img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.section-heading{text-align:center;padding:54px 0 32px}.section-heading h1{font-size:56px;font-weight:400;text-transform:uppercase;line-height:1.2;margin:10px 0}.section-heading .eyebrow{color:var(--gold-text)}.section-heading .muted{font-size:19px}.menu-tabs{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:520px;margin:0 auto 36px;position:sticky;top:0;padding-block:12px;background:var(--paper);z-index:3}.menu-tabs a{border:1px solid var(--gold);border-radius:3px;padding:10px 15px;text-align:center;text-transform:uppercase;font-size:19px;line-height:1.15}.menu-tabs a span{display:block;text-transform:none;color:var(--gold-text);font-size:15px;margin-top:2px}.menu-tabs a[aria-current]{background:var(--ink);color:var(--white)}.menu-tabs a[aria-current] span{color:var(--gold)}.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.category-card{height:148px;position:relative;isolation:isolate;display:flex;align-items:center;gap:20px;padding:22px 26px;background:var(--ink);border-radius:4px;color:var(--white);overflow:hidden}.category-card:after{content:'';position:absolute;inset:5px;border:1px solid var(--gold);border-radius:3px;pointer-events:none}.category-photo{position:absolute;z-index:-2;right:0;top:0;height:100%;width:75%;object-fit:cover;transition:transform .4s}.category-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#131315 0%,#131315f0 30%,#13131530 73%,#13131515)}.category-card:hover .category-photo{transform:scale(1.05)}.category-icon{width:58px;height:52px;object-fit:contain}.category-label{max-width:255px;padding-right:20px;display:flex;flex-direction:column;gap:6px;text-shadow:0 1px 5px #000}.category-label>span{text-transform:uppercase;font-size:26px;line-height:1.03}.category-label small{font-size:15px;color:#e1b47e;text-transform:uppercase;line-height:1.15}.category-arrow{position:absolute;right:14px;top:calc(50% - 11px)}.page-hero{position:relative;isolation:isolate;height:355px;background:var(--ink);color:var(--white);overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-shade{z-index:-1;background:linear-gradient(90deg,#000b,#0001),linear-gradient(0deg,#0008,transparent)}.hero-copy{padding-top:140px}.hero-copy .eyebrow{color:#e2b881}.hero-copy h1{font-size:64px;line-height:1.1;font-weight:400;max-width:640px;margin-top:6px}.event-hero h1{font-style:italic;font-size:80px}.category-hero .hero-photo{object-position:right center}.category-hero h1{text-transform:uppercase;font-size:52px}.dish-section{max-width:1140px}.menu-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;font-family:var(--sans);font-size:13px}.menu-toolbar>a{color:var(--gold-text)}.search-label input{border:0;border-bottom:1px solid #bfb3a2;background:transparent;padding:10px 4px;outline-offset:2px;width:240px;font-size:14px;border-radius:0}.dish-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:65px}.dish{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:18px;padding:26px 0;border-bottom:1px solid #d8d1c8;align-items:center;font-family:var(--sans)}.dish h2{font-size:16px;line-height:1.4;font-weight:700;margin-bottom:6px}.dish sup{font-size:10px;vertical-align:super;margin-left:3px}.dish p{font-size:14px;line-height:1.55}.translation{color:var(--gold-text);margin-top:12px}.translation h3{font-size:13px;line-height:1.4;font-weight:700;margin-bottom:4px}.translation p{font-size:13px}.dish-price{border-left:1px solid var(--gold);padding:12px 0 12px 15px;text-align:center}.dish-price span{display:block;font-size:11px;white-space:nowrap}.dish-price strong{display:block;font-size:21px;white-space:nowrap;margin-top:8px}.availability{font-size:11px;color:#925b31;display:block;margin-top:10px}.unavailable .dish-price{opacity:.5}.allergen-note{font-family:var(--sans);font-size:12px;color:#6c6258;margin-top:30px}.allergen-note span{font-size:11px}.empty-state{text-align:center;padding:70px 20px;max-width:620px;margin:auto}.empty-state h2{font-size:32px;font-weight:400;margin-bottom:16px}.empty-state p{font-family:var(--sans);font-size:14px;color:#6c6258;margin-top:10px}.events-intro{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:var(--white)}.events-photo{height:100%;width:100%;object-fit:cover}.events-welcome{text-align:center;padding:55px 45px}.events-welcome h1{font-size:60px;line-height:1;font-style:italic;font-weight:400;margin:18px 0}.events-welcome>p:not(.eyebrow){font-size:17px}.event-options{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}.event-options a{height:235px;position:relative;border:1px solid #9b7344;border-radius:3px;overflow:hidden;background:#111}.event-options a>img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.event-options a:hover>img{transform:scale(1.05)}.event-options a>span{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#000d);padding:35px 10px 15px;font-size:22px}.event-options small{display:block;font-size:13px;color:#e1b47e;text-transform:uppercase;margin-top:4px}.event-story{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:70px;align-items:center;max-width:1050px}.story-copy h2{font-size:58px;font-style:italic;font-weight:400;line-height:1.05;margin:20px 0}.story-copy>p:last-child{font-family:var(--sans);font-size:15px;line-height:1.9}.event-story figure{position:relative;height:390px;overflow:hidden;border-radius:3px}.event-story figure>img{width:100%;height:100%;object-fit:cover}.event-story figcaption{position:absolute;bottom:0;width:100%;padding:32px;background:linear-gradient(transparent,#000b);color:var(--white);text-align:center;font-size:24px;line-height:1.1}.event-story figcaption em{color:var(--gold);font-style:normal;text-transform:uppercase}.story-reversed .story-copy{order:2}.gallery-section{background:var(--ink);color:var(--white);padding:65px 0 75px}.gallery-section h2{font-size:55px;line-height:1.05;font-weight:400;font-style:italic;margin:18px 0 35px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-photo{border:0;background:#282624;padding:0;position:relative;overflow:hidden;aspect-ratio:1.3}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-photo:hover img{transform:scale(1.04)}.gallery-photo span{position:absolute;right:8px;bottom:8px;width:30px;height:30px;border:1px solid #ffffff80;background:#0008;color:white;border-radius:50%;font:22px var(--sans);opacity:0;transition:opacity .2s}.gallery-photo:hover span,.gallery-photo:focus-visible span{opacity:1}.gallery-section .call-button{max-width:400px;margin:36px auto 0}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:65px;align-items:center;max-width:1080px}.contact-row{display:flex;align-items:center;gap:24px;margin-bottom:25px}.contact-row img{flex:0 0 48px;width:48px;height:48px}.contact-row h2{color:var(--gold-text);font-size:16px;text-transform:uppercase;font-weight:500;line-height:1.4}.contact-row a,.contact-row p{font:15px/1.7 var(--sans)}.contact-row a:hover{text-decoration:underline}.contact-details .call-button{margin-top:35px}.map{display:block;border:1px solid #c6b89f;position:relative}.map img{width:100%;min-height:320px;object-fit:cover}.map span{display:block;padding:12px;text-align:center;background:var(--ink);color:var(--white);font-size:17px}.site-footer{text-align:center;padding:85px 20px 30px}.hotel-logo{margin:0 auto 20px;width:119px;height:108px}.site-footer>p{font-size:26px;line-height:1.3}.site-footer>p[lang]{font-size:18px;margin-top:6px}.footer-call{max-width:408px;margin:55px auto 0}.footer-nav{display:flex;gap:28px;justify-content:center;margin-top:38px;font-size:15px;color:var(--gold-text)}.site-footer>small{display:block;font:10px var(--sans);color:#756d64;margin-top:20px}.modal-open{overflow:hidden}#lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:20px 30px;border:0;background:#0b0b0bf5;color:#fff}#lightbox::backdrop{background:#000d}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;font:13px var(--sans)}#lightbox button{border:1px solid #ffffff40;background:#151515aa;color:#fff;width:48px;height:48px;font-size:34px;line-height:1}.lightbox-stage{position:relative;height:calc(100% - 120px);display:flex;align-items:center;justify-content:center;gap:24px}.lightbox-stage img{max-width:calc(100% - 150px);max-height:100%;object-fit:contain}.lightbox-stage button{position:absolute;top:50%;transform:translateY(-50%);z-index:1}#lightbox-prev{left:0}#lightbox-next{right:0}#lightbox-caption{text-align:center;font:14px var(--sans);margin-top:20px}
@media(min-width:1600px){.home-intro{min-height:700px}.home-view img{min-height:700px}.welcome{padding:80px}.welcome h1{font-size:105px}.home-interior{height:450px}}
@media(max-width:1000px){.container{width:calc(100% - 48px)}.header-inner{gap:20px}.desktop-nav{gap:20px}.header-call{display:none}.home-intro{grid-template-columns:1fr 1fr}.welcome{padding:45px 25px}.welcome h1{font-size:72px}.category-card{padding:18px;gap:12px}.category-label>span{font-size:22px}.category-icon{width:46px}.dish-grid{column-gap:32px}.dish{grid-template-columns:minmax(0,1fr) 76px;gap:12px}.dish-price{padding-left:10px}.dish-price strong{font-size:18px}.events-welcome{padding:40px 25px}.events-welcome h1{font-size:48px}.event-options{gap:16px}.event-story{gap:45px}.story-copy h2{font-size:48px}}
@media(max-width:680px){.container{width:calc(100% - 32px)}.desktop-nav,.header-call,.desktop-only{display:none}.header-inner{height:152px;justify-content:center;width:100%;padding:0 16px}.brand img{width:204px;height:83px}.back{display:flex;position:absolute;left:12px;top:54px;width:44px;height:44px;align-items:center;justify-content:center}.back img{transform:rotate(180deg);width:26px;height:26px}.page-home .site-header{position:relative;z-index:2;border-bottom:0;border-radius:0 0 50% 10% / 0 0 20% 5%;box-shadow:0 2px var(--gold)}.page-home .header-inner{height:142px}.home-intro{display:flex;flex-direction:column;min-height:0;margin-top:-34px}.home-view{height:300px;order:0}.home-view img{min-height:0;height:100%;object-fit:cover}.welcome{position:relative;background:var(--ink);width:100%;padding:38px 28px 64px;margin-top:-25px;z-index:1;border-top:2px solid var(--gold);border-radius:50% 50% 0 0 / 28px 28px 0 0}.welcome h1{font-size:58px;margin-top:20px;line-height:1}.welcome .eyebrow{font-size:13px;letter-spacing:.02em}.lounge{font-size:13px;letter-spacing:.16em;margin-top:8px}.welcome .gold-rule{margin:16px auto}.tagline{font-size:16px}.home-links{gap:16px;margin-top:44px;max-width:350px}.button{font-size:17px;min-height:50px;padding:10px 14px}.home-links .button img{width:38px;height:28px}.home-interior{height:auto;margin-top:-22px;position:relative;z-index:1}.home-interior img{width:100%;height:auto;object-fit:contain}.section-heading{padding:20px 0 10px}.section-heading h1{font-size:36px;margin:0}.menu-tabs{gap:12px;margin:4px auto 18px;padding-block:14px;max-width:none}.menu-tabs a{font-size:16px;line-height:1.1;padding:7px 12px;border-width:2px}.menu-tabs a span{font-size:14px;margin-top:1px}.category-grid{grid-template-columns:1fr;gap:12px}.category-card{height:106px;padding:15px 20px;gap:15px}.category-label{max-width:245px;padding-right:24px;gap:5px}.category-label>span{font-size:22px;line-height:1.03}.category-label small{font-size:13px;line-height:1.1;max-width:180px}.category-icon{width:53px;height:47px;flex:0 0 53px}.category-photo{width:76%;height:100%;object-fit:cover}.category-shade{background:linear-gradient(90deg,#131315 0%,#131315e8 34%,#13131515 90%)}.category-arrow{right:12px}.page-hero{height:240px}.hero-copy{padding-top:112px}.hero-copy h1{font-size:42px;max-width:320px}.hero-copy .eyebrow{font-size:13px;letter-spacing:.01em}.hero-shade{background:linear-gradient(0deg,#000b,transparent 80%)}.category-hero{height:230px;background:var(--paper)}.category-hero .hero-photo{object-position:center;object-fit:fill}.category-hero .hero-shade{display:none}.category-hero .hero-copy{padding-top:106px}.category-hero h1{font-size:32px;max-width:280px;text-shadow:0 1px 8px #000}.category-hero:after{content:'';position:absolute;bottom:-22px;left:0;right:0;height:32px;background:var(--paper);border-radius:50% 50% 0 0}.dish-section{width:calc(100% - 32px)}.menu-toolbar{padding:17px 0 10px;gap:14px;font-size:12px}.search-label{flex:0 1 160px;min-width:0}.search-label input{width:100%;font-size:12px;padding:10px 2px}.dish-grid{display:block}.dish{padding:22px 0;grid-template-columns:minmax(0,1fr) 88px;gap:18px}.dish h2{font-size:15px}.dish p{font-size:14px;line-height:1.5}.translation h3,.translation p{font-size:13px}.translation{margin-top:12px}.dish-price{padding:14px 0 14px 12px}.dish-price strong{font-size:21px}.dish-price span{font-size:11px}.allergen-note{font-size:11px}.events-intro{display:block}.events-photo{width:100%;height:255px;object-fit:cover}.events-welcome{position:relative;margin-top:-22px;padding:42px 24px 55px;border-top:2px solid var(--gold);border-bottom:2px solid var(--gold);border-radius:50% 50% 45% 45% / 24px 24px 22px 22px;background:var(--ink)}.events-welcome h1{font-size:56px;margin:20px 0;line-height:.95}.events-welcome>.eyebrow{font-size:14px;letter-spacing:0}.events-welcome>p:not(.eyebrow){font-size:16px}.event-options{gap:20px;margin-top:32px}.event-options a{height:210px}.event-options a>span{font-size:19px}.event-options small{font-size:12px}.event-story{padding-block:28px;gap:18px;grid-template-columns:1.12fr 1fr;width:calc(100% - 32px)}.story-copy .eyebrow{font-size:13px;letter-spacing:0}.story-copy h2{font-size:35px;margin:14px 0 12px}.story-copy>p:last-child{font-size:12px;line-height:1.75}.event-story figure{height:270px;margin-right:-16px}.event-story figcaption{font-size:16px;padding:20px 8px 12px}.story-reversed{grid-template-columns:1fr 1.08fr}.story-reversed figure{margin-right:0;margin-left:-16px;height:250px}.story-reversed .story-copy h2{font-size:32px}.event-hero h1{font-size:53px}.event-hero .hero-copy{padding-top:138px}.event-hero{height:248px}.gallery-section{padding:25px 0 70px}.gallery-section .eyebrow{font-size:14px;letter-spacing:0}.gallery-section h2{font-size:36px;margin:20px 0 28px}.gallery{gap:12px}.gallery-photo{aspect-ratio:1.14}.gallery-photo span{display:none}.gallery-section .call-button{margin-top:28px}.contact-hero .hero-copy{padding-top:100px}.contact-hero h1{font-size:39px;text-transform:uppercase;max-width:300px}.contact-hero{height:260px}.contact-hero .hero-photo{object-fit:fill}.contact-section{display:block;padding-top:45px}.contact-details{max-width:340px;margin:0 auto}.contact-row{gap:20px;margin-bottom:26px}.contact-row h2{font-size:15px}.contact-row a,.contact-row p{font-size:14px;line-height:1.7}.contact-row img{width:46px;height:46px;flex-basis:46px}.contact-details .call-button{margin:40px -16px 24px}.map img{min-height:0}.map span{font-size:15px;padding:10px}.site-footer{padding:60px 16px 25px}.site-footer>p{font-size:23px}.site-footer>p[lang]{font-size:16px}.hotel-logo{margin-bottom:20px}.footer-call{margin-top:65px}.footer-nav{font-size:14px;margin-top:35px}.page-category .site-footer{padding-top:60px}.lightbox-stage{gap:8px;height:calc(100% - 130px);position:relative}.lightbox-stage img{max-width:100%;max-height:100%}#lightbox{padding:16px 12px}.lightbox-stage button{top:auto;bottom:0;transform:none;width:44px!important;height:44px!important}#lightbox-prev{left:calc(50% - 55px)}#lightbox-next{right:calc(50% - 55px)}#lightbox-caption{font-size:12px;margin-top:15px}}
@media(max-width:360px){.category-card{gap:10px;padding-left:15px}.category-icon{width:42px;flex-basis:42px}.category-label>span{font-size:20px}.category-label small{font-size:12px}.dish{gap:12px;grid-template-columns:minmax(0,1fr) 78px}.dish-price strong{font-size:19px}.site-footer>p{font-size:20px}.event-story{gap:13px}.story-copy h2{font-size:30px}.story-reversed .story-copy h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.allergen-legend{margin-top:35px;border-block:1px solid #d4c8b8;padding:18px 0;font:13px/1.8 var(--sans);scroll-margin-top:24px}.allergen-legend summary{cursor:pointer;color:var(--gold-text);font-weight:600}.allergen-legend ol{columns:2;column-gap:40px;padding-left:24px;margin-top:18px}.allergen-legend li{break-inside:avoid;padding:4px 0}.dish sup a{text-decoration:underline;text-underline-offset:2px}.category-card:not(:has(.category-photo)) .category-label{max-width:none;padding-left:12px}.category-card:not(:has(.category-photo)){background:linear-gradient(110deg,#131315,#28211a)}@media(max-width:680px){.allergen-legend ol{columns:1}.category-card:not(:has(.category-photo)) .category-label{max-width:300px}}

/* Photo loading: stable dark surfaces and a short, restrained reveal. */
.home-view,.home-interior,.gallery-photo,.event-story figure,.event-options a,.map{background-color:#1d1d20}
.photo-pending{opacity:0}
.photo-reveal{animation:photo-reveal 280ms ease-out both}
@keyframes photo-reveal{from{opacity:0}to{opacity:1}}
#lightbox-image:not([src]){visibility:hidden}
#photo-loading{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);padding:7px 12px;border-radius:4px;background:#131315d9;color:#e6dfd2;font:13px var(--sans);pointer-events:none}
#photo-loading:empty{display:none}
@media(max-width:680px){#photo-loading{bottom:58px}}
@media(prefers-reduced-motion:reduce){.photo-reveal{animation:none}}
