:root{--bg:#0d0d0c;--paper:#e9e1d4;--gold:#c6a46b;--line:rgba(255,255,255,.18)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:#f7f2ea;font-family:Manrope,sans-serif}
.site-header{position:absolute;z-index:10;left:0;right:0;top:0;height:92px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
a{color:inherit;text-decoration:none}
.brand{font:600 29px/1 Playfair Display,serif;letter-spacing:.12em}
.brand span{color:var(--gold)}
.nav-links{display:flex;gap:34px;font-size:13px}
.nav-links a{opacity:.8}
.nav-links a:hover{opacity:1}
.header-actions,.lang-switch{display:flex;align-items:center;gap:10px}
.lang-switch{border:1px solid var(--line);border-radius:99px;padding:3px}
.lang-switch button{border:0;background:none;color:#fff;padding:6px 8px;border-radius:99px;font:600 10px Manrope;cursor:pointer}
.lang-switch button.active{background:#fff;color:#111}
.reserve{padding:12px 18px;border:1px solid rgba(255,255,255,.55);font-size:12px}
.menu-button{display:none;border:0;background:none;color:#fff;font-size:22px}
.hero{height:100vh;min-height:720px;position:relative;overflow:hidden}
.hero>img{width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.83),rgba(0,0,0,.2) 65%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 40%)}
.hero-copy{position:absolute;left:7vw;right:7vw;bottom:8vh}
.kicker,.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:var(--gold)}
h1{max-width:900px;font:500 clamp(64px,8.4vw,138px)/.9 Playfair Display,serif;letter-spacing:-.045em;margin:28px 0 55px}
.hero-bottom{display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px}
.hero-bottom p{max-width:530px;line-height:1.6;margin:0;color:#ddd}
.hero-bottom a,.text-link{color:var(--gold);border-bottom:1px solid;padding-bottom:5px}
.demo-label{position:absolute;right:25px;top:125px;writing-mode:vertical-rl;letter-spacing:.2em;font-size:9px}
.story{padding:140px 7vw;display:grid;grid-template-columns:80px 1.35fr 1fr;gap:5vw;align-items:start}
.section-number{font:italic 30px Playfair Display;color:var(--gold)}
h2{font:500 clamp(43px,5.6vw,88px)/.98 Playfair Display,serif;letter-spacing:-.035em;margin:15px 0}
.story-text{font-size:18px;line-height:1.8;color:#bbb;margin-top:45px}
.menu-section{background:var(--paper);color:#171614;display:grid;grid-template-columns:1fr 1fr}
.menu-photo{position:relative;min-height:760px}
.menu-photo img{width:100%;height:100%;object-fit:cover}
.menu-photo span{position:absolute;left:25px;bottom:25px;padding:9px 13px;background:#111;color:#fff;font-size:11px}
.menu-copy{padding:9vw 7vw}
.menu-copy h2{max-width:600px}
.menu-copy ul{list-style:none;padding:0;margin:60px 0 40px}
.menu-copy li{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #bdb4a7;padding:22px 0}
.menu-copy b,.menu-copy small{display:block}
.menu-copy b{font-size:17px}
.menu-copy small{color:#746d64;margin-top:7px}
.booking{text-align:center;padding:140px 7vw}
.booking h2{max-width:850px;margin:18px auto 55px}
.booking form{display:grid;grid-template-columns:1fr 1fr auto;max-width:900px;margin:auto;border:1px solid var(--line)}
.booking input,.booking button{min-height:64px;border:0;border-right:1px solid var(--line);background:transparent;color:#fff;padding:0 18px;font:14px Manrope}
.booking button{background:var(--gold);color:#17130d;padding:0 28px;cursor:pointer}
.contact-line{max-width:900px;margin:45px auto 0;display:flex;justify-content:space-between;color:#aaa;font-size:13px}
footer{border-top:1px solid var(--line);padding:40px 7vw;display:flex;align-items:center;justify-content:space-between;color:#aaa;font-size:12px}
footer .brand{color:#fff;font-size:20px}
@media(max-width:760px){.site-header{height:72px}
.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#111;padding:25px 5vw;flex-direction:column}
.nav-links.open{display:flex}
.reserve{display:none}
.menu-button{display:block}
.hero{min-height:680px}
.hero-copy{left:5vw;right:5vw}
.hero-bottom{align-items:start;gap:30px;flex-direction:column}
.demo-label{display:none}
.story{padding:90px 5vw;grid-template-columns:1fr}
.story .section-number{display:none}
.story-text{margin-top:10px}
.menu-section{grid-template-columns:1fr}
.menu-photo{min-height:470px}
.menu-copy{padding:80px 5vw}
.booking{padding:90px 5vw}
.booking form{grid-template-columns:1fr}
.booking input{border-bottom:1px solid var(--line)}
.contact-line{flex-direction:column;gap:14px}
footer{padding:35px 5vw}
}

.chef-section{display:grid;grid-template-columns:1.08fr .92fr;background:#171715}
.chef-copy{padding:10vw 7vw}
.chef-copy blockquote{font:italic clamp(38px,4.6vw,72px)/1.12 Playfair Display;margin:35px 0 55px}
.chef-name{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:25px}
.chef-name span,.chef-bio{color:#aaa}
.chef-bio{line-height:1.7;max-width:650px;margin-top:40px}
.chef-photo{min-height:860px;position:relative}
.chef-photo img{width:100%;height:100%;object-fit:cover}
.chef-photo span{position:absolute;right:20px;top:20px;font-size:9px;letter-spacing:.2em}
.gallery-section{padding:140px 7vw;background:#eee7dc;color:#161513}
.gallery-head{display:grid;grid-template-columns:.7fr 1.6fr 1fr;gap:4vw;align-items:end;margin-bottom:65px}
.gallery-head h2{margin:0}
.gallery-head>p:last-child{line-height:1.7;color:#706b63}
.gallery-grid{display:grid;grid-template-columns:1.15fr .7fr .85fr;gap:16px;align-items:end}
.gallery-grid figure{margin:0}
.gallery-grid figure:nth-child(1) img{height:650px}
.gallery-grid figure:nth-child(2) img{height:470px}
.gallery-grid figure:nth-child(3) img{height:560px}
.gallery-grid img{width:100%;object-fit:cover}
.gallery-grid figcaption{font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-top:13px}
.events{padding:130px 7vw}
.events-title{display:flex;gap:60px;align-items:start}
.events-title>span{color:var(--gold)}
.event-cards{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid var(--line)}
.event-cards article{padding:35px 35px 55px 0;border-right:1px solid var(--line)}
.event-cards article+article{padding-left:35px}
.event-cards small{color:var(--gold)}
.event-cards h3{font:40px Playfair Display;margin:50px 0 20px}
.event-cards p{line-height:1.7;color:#aaa}
.review{padding:130px 12vw;text-align:center;background:var(--gold);color:#17130d}
.review>span{font:90px Playfair Display}
.review blockquote{font:italic clamp(38px,4.5vw,70px)/1.15 Playfair Display;margin:0 auto 35px;max-width:1100px}
.review p{font-size:11px;text-transform:uppercase;letter-spacing:.16em}
@media(max-width:760px){
  .chef-section{grid-template-columns:1fr}
  .chef-copy{padding:90px 5vw}
  .chef-photo{min-height:600px}
  .gallery-section{padding:90px 5vw}
  .gallery-head{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr}
  .gallery-grid figure img{height:470px!important}
  .events{padding:90px 5vw}
  .events-title{gap:20px}
  .event-cards{grid-template-columns:1fr}
  .event-cards article,.event-cards article+article{padding:30px 0;border-right:0;border-bottom:1px solid var(--line)}
  .review{padding:90px 5vw}
}

/* Interface v3: fixed editorial rail instead of a conventional header */
.ember-rail{position:fixed;z-index:30;left:0;top:0;bottom:0;width:92px;background:#0b0b0a;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;padding:28px 0;color:#fff}
.ember-rail .brand{font-size:31px}.rail-nav{margin:auto;display:flex;flex-direction:column;gap:48px}.rail-nav a{display:flex;flex-direction:column;align-items:center;gap:8px}.rail-nav i{font-style:normal;font-size:8px;color:var(--gold)}.rail-nav span{font-size:9px;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.15em;text-transform:uppercase}.rail-bottom{display:flex;flex-direction:column;gap:18px;align-items:center}.ember-rail .lang-switch{flex-direction:column;border:0}.rail-reserve{width:42px;height:42px;border-radius:50%;background:var(--gold);color:#17130d;display:grid;place-items:center}.ember-mobilebar{display:none}.hero,.story,.menu-section,.chef-section,.gallery-section,.events,.review,.booking,body>footer{margin-left:92px}.hero-copy{left:6vw}.hero-wordmark{position:absolute;left:0;bottom:calc(100% + 28px);font:600 clamp(90px,15vw,240px)/.7 Playfair Display;color:rgba(255,255,255,.09);letter-spacing:-.08em;pointer-events:none}.site-header{display:none!important}
@media(max-width:760px){.ember-rail{display:none}.ember-mobilebar{display:flex;position:fixed;z-index:40;left:0;right:0;top:0;height:70px;padding:0 5vw;align-items:center;justify-content:space-between;background:#0b0b0a;border-bottom:1px solid var(--line)}.ember-mobilebar .menu-button{display:block;font:10px Manrope;letter-spacing:.14em}.ember-mobilebar .nav-links{top:70px}.hero,.story,.menu-section,.chef-section,.gallery-section,.events,.review,.booking,body>footer{margin-left:0}.hero-wordmark{font-size:28vw}}


