:root{
  --bg:#090909;--bg2:#101010;--paper:#e9e5dc;--ink:#f1efe9;--muted:#9a9994;--line:#262626;--accent:#b9b2a3;
  --pad:clamp(18px,4vw,64px);--max:1500px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.menu-open,body.lightbox-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.skip{position:fixed;left:12px;top:-60px;z-index:1000;background:#fff;color:#000;padding:10px 14px}.skip:focus{top:12px}.site-header{position:absolute;z-index:50;top:0;left:0;width:100%;height:86px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.14)}.brand,.footer-brand{font-family:Georgia,"Times New Roman",serif;font-size:25px;letter-spacing:-1px}.brand span,.footer-brand span{font-style:italic;color:#d5cec0}.desktop-nav{display:flex;gap:30px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.desktop-nav a{opacity:.78;transition:opacity .25s}.desktop-nav a:hover{opacity:1}.header-actions{display:flex;align-items:center;gap:18px}.lang-switch{border:0;background:none;padding:8px 0;cursor:pointer;font-size:11px;letter-spacing:.12em}.lang-divider,.lang-other{opacity:.45}.menu-btn{display:none;border:0;background:none;width:36px;height:36px;padding:8px;cursor:pointer}.menu-btn span{display:block;width:100%;height:1px;background:#fff;margin:6px 0;transition:transform .25s,opacity .25s}.mobile-menu{position:fixed;z-index:40;inset:0;background:rgba(8,8,8,.985);padding:120px var(--pad) 40px;display:grid;align-items:center;opacity:0;visibility:hidden;transition:.3s}.mobile-menu nav{display:grid;gap:16px}.mobile-menu a{font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,10vw,62px);line-height:1.05}.menu-open .mobile-menu{opacity:1;visibility:visible}.menu-open .menu-btn span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-btn span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;isolation:isolate;overflow:hidden;background:#111}.hero-media{position:absolute;z-index:-3;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 32%;filter:saturate(.82) contrast(.98)}.hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.14) 76%),linear-gradient(0deg,rgba(0,0,0,.72) 0%,transparent 54%)}.hero-content{width:min(960px,94%);padding:clamp(150px,24vh,260px) var(--pad) clamp(80px,11vh,120px)}.eyebrow,.kicker{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#c4c0b7}.hero h1{margin:14px 0 24px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(68px,11vw,168px);font-weight:400;line-height:.72;letter-spacing:-.065em}.hero h1 em{font-weight:400;color:#d5cec0}.hero-copy{max-width:530px;margin:0 0 32px;color:#d0cec8;font-size:clamp(14px,1.3vw,18px);line-height:1.65}.hero-cta{display:flex;gap:12px;flex-wrap:wrap}.btn{min-height:50px;padding:0 23px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.34);font-size:11px;letter-spacing:.12em;text-transform:uppercase;transition:background .25s,color .25s,border-color .25s,transform .25s}.btn:hover{transform:translateY(-2px)}.btn-light{background:var(--paper);border-color:var(--paper);color:#111}.btn-ghost{background:rgba(0,0,0,.14);backdrop-filter:blur(8px)}.scroll-cue{position:absolute;right:var(--pad);bottom:38px;display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#aaa}.scroll-cue i{width:48px;height:1px;background:#777}
.section{padding:clamp(86px,12vw,170px) var(--pad);max-width:var(--max);margin:auto}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(42px,6vw,86px);letter-spacing:-.045em;line-height:.92;margin:12px 0 0}.section-note{margin:0;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.gallery-card{position:relative;overflow:hidden;background:#141414;border:0;padding:0;cursor:zoom-in;min-height:280px;grid-column:span 4;aspect-ratio:4/5}.gallery-card:nth-child(5n+1){grid-column:span 5}.gallery-card:nth-child(5n+2){grid-column:span 3;aspect-ratio:3/4}.gallery-card:nth-child(5n+3){grid-column:span 4;aspect-ratio:4/5}.gallery-card:nth-child(5n+4){grid-column:span 3;aspect-ratio:3/4}.gallery-card:nth-child(5n+5){grid-column:span 5;aspect-ratio:5/6}.gallery-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s;filter:saturate(.92)}.gallery-card:hover img{transform:scale(1.025);filter:saturate(1)}.gallery-card::after{content:attr(data-index);position:absolute;right:12px;bottom:10px;font-size:9px;letter-spacing:.16em;color:#fff;text-shadow:0 1px 8px #000;opacity:.7}.gallery-card:focus-visible{outline:2px solid #fff;outline-offset:3px}
.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:8vw}.about-index{font-family:Georgia,"Times New Roman",serif;font-size:clamp(80px,15vw,220px);line-height:.8;color:#1c1c1c}.about-copy{max-width:780px}.about-copy h2{margin-bottom:38px}.about-copy>p:not(.kicker){font-size:clamp(16px,1.8vw,23px);line-height:1.65;color:#bbb9b2;max-width:720px}.statement{padding:16vw var(--pad);background:var(--paper);color:#111;overflow:hidden}.statement p,.statement strong{display:block;margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(70px,15vw,230px);line-height:.7;letter-spacing:-.075em}.statement p{color:#858077}.statement strong{font-style:italic;text-align:right;margin-top:.12em}.booking{min-height:72svh;display:flex;align-items:center}.booking-inner{max-width:960px}.booking h2{font-size:clamp(54px,8vw,120px);max-width:900px}.booking-inner>p:not(.kicker){max-width:580px;color:#aaa;font-size:16px;line-height:1.7;margin:30px 0}.booking-btn{margin-top:6px}.footer{border-top:1px solid var(--line);padding:70px var(--pad) 26px;max-width:var(--max);margin:auto}.footer-brand{font-size:clamp(40px,6vw,78px);margin-bottom:62px}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;padding-bottom:66px}.footer-grid>div{display:grid;align-content:start;gap:8px}.footer-label{color:#777;font-size:10px;letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px}.footer-grid p:not(.footer-label),.footer-grid a{margin:0;font-size:14px}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;color:#6f6f6f;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:rgba(5,5,5,.97);color:#fff}.lightbox[open]{display:grid;place-items:center}.lightbox::backdrop{background:#050505}.lightbox figure{margin:0;width:min(88vw,1200px);height:86dvh;display:grid;grid-template-rows:1fr auto;place-items:center;gap:10px}.lightbox img{max-width:100%;max-height:calc(86dvh - 34px);width:auto;height:auto;object-fit:contain;box-shadow:0 20px 70px rgba(0,0,0,.45)}.lightbox figcaption{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8c8c8c}.lightbox-close,.lightbox-nav{position:absolute;border:0;background:rgba(20,20,20,.4);cursor:pointer;z-index:2}.lightbox-close{right:18px;top:14px;font-size:34px;line-height:1;width:44px;height:44px}.lightbox-nav{top:50%;transform:translateY(-50%);font-family:Georgia,serif;font-size:54px;width:56px;height:80px}.lightbox-prev{left:16px}.lightbox-next{right:16px}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.desktop-nav{display:none}.menu-btn{display:block}.site-header{height:72px}.hero-content{padding-top:140px}.scroll-cue{display:none}.section-head{align-items:start;flex-direction:column}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-card,.gallery-card:nth-child(n){grid-column:span 1;aspect-ratio:4/5;min-height:0}.gallery-card:nth-child(3n+2){aspect-ratio:3/4}.about{grid-template-columns:1fr}.about-index{font-size:110px}.footer-grid{grid-template-columns:1fr 1fr}.lightbox-nav{width:44px;height:62px;font-size:42px;background:rgba(0,0,0,.35)}.lightbox-prev{left:0}.lightbox-next{right:0}}
@media(max-width:560px){.hero{min-height:92svh}.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.42) 62%,rgba(0,0,0,.3)),linear-gradient(90deg,rgba(0,0,0,.42),transparent)}.hero-media img{object-position:center 28%}.hero-content{width:100%;padding:128px var(--pad) 54px}.hero h1{font-size:clamp(66px,24vw,104px);line-height:.76;margin-top:10px}.hero-copy{font-size:14px;max-width:92%;margin-bottom:24px}.hero-cta{display:grid;grid-template-columns:1fr 1fr}.btn{min-height:47px;padding:0 12px;font-size:9px}.section{padding-top:88px;padding-bottom:88px}.section h2{font-size:43px}.section-note{font-size:9px}.gallery{gap:6px}.gallery-card:nth-child(n){aspect-ratio:3/4}.gallery-card:nth-child(4n+1){grid-column:span 2;aspect-ratio:16/12}.about-index{display:none}.about-copy>p:not(.kicker){font-size:16px}.statement{padding-top:28vw;padding-bottom:28vw}.statement p,.statement strong{font-size:22vw}.booking{min-height:68svh}.booking h2{font-size:55px}.footer{padding-top:58px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-brand{font-size:48px;margin-bottom:44px}.footer-bottom{gap:16px;align-items:flex-end}.lightbox figure{width:94vw;height:83dvh}.lightbox img{max-height:calc(83dvh - 34px)}.lightbox-close{right:8px;top:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
