:root{--ink:#070d15;--navy:#101a2a;--blue:#344b70;--gold:#c6ab81;--paper:#eee9df;--muted:#a7adb4;--line:rgba(205,195,178,.2);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--gutter:clamp(24px,6.5vw,112px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--ink);color:var(--paper);font:400 14px/1.8 var(--sans);-webkit-font-smoothing:antialiased}
body.is-locked{overflow:hidden}
button,a{-webkit-tap-highlight-color:transparent}
button,input{font:inherit}
button,a{touch-action:manipulation}
button{color:inherit}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:7px}
::selection{background:#b99d72;color:var(--ink)}
img{max-width:100%;display:block}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:400;font-family:var(--serif);line-height:1.02}
svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.1}
section{position:relative}
button{border:0;background:none}
button[hidden],[hidden]{display:none!important}
.skip-link{position:fixed;left:24px;top:-80px;z-index:100;background:var(--paper);color:var(--ink);padding:12px 20px}
.skip-link:focus{top:15px}
.site-header{height:106px;position:absolute;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 4.4vw;z-index:30;border-bottom:1px solid rgba(236,228,212,.12);transition:background .3s,box-shadow .3s}
.site-header.scrolled{position:fixed;height:82px;background:rgba(7,13,21,.96);box-shadow:0 4px 25px #0002;animation:header-enter .3s ease}
.brand{display:flex;gap:10px;align-items:center}
.brand-symbol{width:58px;height:42px;object-fit:contain}
.brand-type{font:500 26px/1 var(--serif);white-space:nowrap}
.brand-plus{font-family:var(--sans);font-weight:400;position:relative;top:-3px;font-size:22px}
.brand-type small{display:block;text-align:center;font:400 9px/1.1 var(--sans);letter-spacing:.38em;margin-top:9px}
.desktop-nav{display:flex;gap:34px;font-size:12px}
.desktop-nav a{position:relative;padding:12px 0;color:#d2d2d1}
.desktop-nav a:after{content:'';position:absolute;bottom:5px;left:0;width:0;height:1px;background:var(--gold);transition:width .25s}
.desktop-nav a:hover:after{width:100%}
.header-actions{display:flex;align-items:center;gap:24px}
.reserve-small{display:flex;gap:34px;border:1px solid rgba(220,202,177,.5);padding:12px 21px;font-size:12px;transition:background .25s}
.reserve-small:hover{background:#ffffff10}
.reserve-small span{color:var(--gold);font-size:18px;line-height:1.2}
.menu-toggle{display:none;width:36px;height:44px;position:relative;padding:8px}
.menu-toggle span{display:block;width:25px;height:1px;background:var(--paper);margin:7px 0;transition:transform .2s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mobile-menu{position:fixed;z-index:25;inset:0;background:var(--ink);padding:140px 32px 80px}
.mobile-menu nav{display:grid;gap:20px;font:400 40px/1.3 var(--serif)}
.mobile-menu p{margin-top:45px;color:var(--muted)}
.hero{min-height:780px;height:100svh;max-height:1200px;overflow:hidden;isolation:isolate}
.hero-content{position:relative;padding-top:clamp(190px,23.5vh,310px);padding-left:var(--gutter);width:60%;z-index:2}
.hero-location{display:flex;align-items:center;gap:12px;color:#d1c6b6;letter-spacing:.08em;font-size:11px;margin-bottom:31px}

h1{font-size:clamp(88px,8.7vw,150px);letter-spacing:-.037em;line-height:.86}
h1 span{display:block}
.hero-description{font-size:14px;color:#c0c3c8;line-height:1.95;margin-top:30px;margin-bottom:30px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:19px 24px;font:500 12px/1.5 var(--sans);min-height:58px;transition:background .25s,color .25s,border-color .25s}
.button svg{flex-shrink:0;transition:transform .3s}
.button:hover svg{transform:translateX(4px)}


.button-outline{border:1px solid #c7b591;color:var(--paper)}
.button-outline:hover{background:var(--paper);color:var(--ink)}
.hero-bottom{position:absolute;bottom:33px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.035em;color:#b2b8bf}
.hero-bottom>a:nth-child(2){position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:25px;align-items:center}
.hero-bottom span{color:var(--gold);font-size:19px}
.hero-instagram{display:flex;gap:15px;align-items:center}
.hero-side-note{position:absolute;right:20px;top:43%;writing-mode:vertical-rl;letter-spacing:.15em;color:#aaa79e;font-size:9px}
.universe{padding:105px var(--gutter) 115px;overflow:hidden;isolation:isolate;background:#080f1a}
.star-stage{position:absolute;inset:0;z-index:-1;overflow:hidden}
.star-stage:after{content:'';position:absolute;inset:0;background:linear-gradient(#070d15,transparent 30%,rgba(8,15,26,.1) 50%,#080f1a 95%)}
.universe-intro{text-align:center;font:400 22px/1.3 var(--serif);color:#c4c5ca}

.galaxy-title{text-align:center;font:400 clamp(90px,18vw,300px)/1.2 var(--serif);letter-spacing:.035em;margin:20px -20px 55px;color:#e0dfdc;text-shadow:0 0 80px rgba(102,132,180,.18);white-space:nowrap}
.universe-copy{display:grid;grid-template-columns:1fr 1fr;gap:12%;max-width:1060px;margin:auto}
.universe-copy>p{font:400 43px/1.15 var(--serif);letter-spacing:-.01em}
.universe-copy>div{max-width:420px;color:var(--muted);font-size:13px;line-height:1.95}
.universe-copy>div>p+p{margin-top:15px}
.text-link{display:inline-flex;gap:26px;align-items:center;font-size:12px;border-bottom:1px solid #928577;padding:8px 0;color:var(--paper);transition:color .2s}
.text-link span{font-size:19px;color:var(--gold);transition:transform .2s}
.text-link:hover{color:var(--gold)}
.text-link:hover span{transform:translate(2px,-2px)}
.universe-copy .text-link{margin-top:22px}
.experience{padding:115px var(--gutter) 125px;background:#0c121b}
.section-heading{display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:end;gap:30px;margin-bottom:70px}
.section-context{font-size:11px;color:#c1ad8c;letter-spacing:.045em}
.section-heading .section-context{align-self:start;padding-top:10px}
.section-heading h2{font-size:clamp(54px,5.2vw,84px);letter-spacing:-.025em}
.section-heading>p:last-child{color:var(--muted);font-size:12px;justify-self:end}
.experience-layout{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center;max-width:1180px;margin:auto}
.experience-visual{position:relative;height:610px;overflow:hidden}
.experience-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 60%,#0008)}
.experience-visual>img{width:100%;height:100%;object-fit:cover;object-position:78% center;transition:opacity .22s,transform .6s}
.experience-visual.cocktails>img{object-position:center}
.experience-visual.lounge>img{object-position:center;filter:saturate(.55)}
.image-caption{position:absolute;z-index:1;left:30px;bottom:25px;font-size:11px;color:#d5cec5}

.experience-content{align-self:stretch;display:flex;flex-direction:column;padding:38px 0;max-width:410px}
.experience-tabs{display:flex;gap:10px;margin-bottom:36px;flex-wrap:wrap}
.experience-panel{flex:1}

.experience-panel h3{font-size:64px;letter-spacing:-.02em;margin-bottom:27px}
.experience-panel>p{font-size:13px;color:#adb2bc;max-width:345px}
.experience-panel .experience-note{margin-top:22px;font-size:11px;color:#c1ad8c}
.experience-link{align-self:flex-start;margin-top:32px}
.interlude{text-align:center;padding:69px 30px 76px;background:#c0aa89;color:#15191c;overflow:hidden}
.interlude>p{font-size:11px;letter-spacing:.07em;margin-bottom:21px}
.interlude-line{display:flex;justify-content:center;align-items:center;gap:40px;font:400 clamp(29px,4vw,68px)/1.1 var(--serif);letter-spacing:-.02em;white-space:nowrap}

.nights{padding:135px var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;background:radial-gradient(ellipse at 100% 100%,#131c2b,transparent 50%),var(--ink)}
.nights-copy{max-width:460px}
.nights h2{font-size:clamp(54px,5vw,80px);letter-spacing:-.035em;margin-top:28px;margin-bottom:30px}
.nights-copy>p:not(.section-context){font-size:13px;color:var(--muted);line-height:1.95;max-width:375px}
.nights-copy .button{margin-top:34px}
.nights-copy>small{display:block;margin-top:14px;font-size:10px;color:#8b939d}
.night-art{position:relative;aspect-ratio:4/5;max-height:620px;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px solid #b5a17d30;background:radial-gradient(ellipse at 50% 50%,#27314850,transparent 60%),#09111d;isolation:isolate;overflow:hidden}
.night-art-stars{position:absolute;inset:0;background:url('assets/galaxy.webp') center/cover;opacity:.26;filter:saturate(.2);z-index:-2}
.night-art:after{content:'';position:absolute;inset:16px;border:1px solid #b5a17d22;pointer-events:none}
.night-halo{position:absolute;left:50%;top:50%;width:85%;height:63%;transform:translate(-50%,-50%) rotate(-24deg);border:1px solid #ceab7670;border-radius:50%;box-shadow:0 0 40px #b4996d0b,inset 0 0 30px #b4996d0b;z-index:-1}

.night-signature{font:400 24px/1.3 var(--serif);margin-bottom:23px}
.night-signature>span{color:var(--gold)}
.night-art-title{text-align:center;font:400 clamp(65px,7.5vw,110px)/.86 var(--serif);letter-spacing:-.035em}
.night-art-title>span{display:block;color:#cbbda8;font-style:italic;margin-top:7px}
.night-art-bottom{position:absolute;bottom:42px;font-size:10px;letter-spacing:.14em;display:flex;gap:24px;align-items:center}
.night-art-bottom>span{color:var(--gold);font-size:18px}
.private-nights{margin:0 var(--gutter);padding:50px 0 70px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;border-top:1px solid var(--line)}

.private-nights h2{font-size:30px;max-width:600px}
.private-nights p{font-size:12px;color:var(--muted);margin-top:13px}
.private-nights .text-link{align-self:center;white-space:nowrap}
.visit{padding:120px var(--gutter) 110px;background:#121c2a;background-image:radial-gradient(ellipse at 100% 0,#293e5633,transparent 50%)}
.visit-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:70px}
.visit-top h2{font-size:clamp(64px,6.3vw,100px);letter-spacing:-.025em;margin-top:27px}

.visit-details{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:40px;border-top:1px solid var(--line);padding-top:35px}
.detail-label{font-size:10px;color:#b7a07a;letter-spacing:.06em;margin-bottom:16px}
address{font-style:normal;font-size:15px;color:#e4e2df;line-height:1.85}
.visit-address .text-link{margin-top:19px}
.visit-phone{font:400 26px/1.3 var(--serif)}
.visit-details>div>p:not(.detail-label){font-size:11px;color:var(--muted);margin-top:14px}
.visit-book{justify-self:end}
.visit-book .button{min-width:238px}
.site-footer{padding:62px var(--gutter) 27px;background:#080d14}
.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:54px;gap:30px}
.footer-wordmark{font:400 52px/1 var(--serif);letter-spacing:-.02em}
.footer-wordmark>span{font-family:var(--sans);font-size:36px;font-weight:400;color:var(--gold);vertical-align:6px}
.footer-top>p{font:400 21px/1.3 var(--serif);color:#939ba7}
.footer-top>a:last-child{font-size:12px;display:flex;gap:15px}
.footer-top>a:last-child span{color:var(--gold)}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px;color:#919aa5;font-size:9px}
.footer-bottom>button{font-size:9px;padding:0}

dialog{border:1px solid rgba(197,171,132,.35);color:var(--paper);background:radial-gradient(ellipse at top right,#27394b55,transparent 55%),var(--ink);padding:66px 48px 42px;width:500px;max-width:calc(100% - 32px);max-height:calc(100svh - 32px);overflow:auto;text-align:center;margin:auto}
dialog[open]{animation:dialog-enter .3s ease}
dialog::backdrop{background:#03070dc9;backdrop-filter:blur(7px)}
.dialog-close{position:absolute;right:14px;top:13px;width:44px;height:44px;font-size:32px;font-weight:400;line-height:1}

dialog h2{font-size:55px;margin:18px 0 25px}
dialog>p:not(.section-context){font-size:12px;color:#aeb6c0;line-height:1.9}
dialog .button{width:100%;margin:29px 0 24px}
dialog .booking-assistance{padding-top:22px;border-top:1px solid var(--line);font-size:11px}
dialog .booking-assistance a{display:inline-block;font:400 26px/1.5 var(--serif);color:var(--paper);margin:8px 0 26px}
dialog>small{font-size:9px;color:#8492a3}
#privacy-dialog{text-align:left}
#privacy-dialog h2{font-size:44px}
#privacy-dialog>p{margin:18px 0}
@keyframes header-enter{from{transform:translateY(-100%)}to{transform:translateY(0)}}
@keyframes dialog-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero-content{padding-top:25vh}
.hero-description{margin-top:40px;margin-bottom:35px}
.hero h1{font-size:160px}
.experience-layout{max-width:1340px}
.experience-visual{height:680px}
.experience-content{max-width:460px}}
@media(max-width:1100px){.desktop-nav{gap:22px}
.hero{min-height:740px}
.hero-content{padding-top:210px}
.hero h1{font-size:105px}
.hero-bottom>a:nth-child(2){left:55%}
.section-heading{grid-template-columns:.7fr 1.5fr 1fr;gap:20px}
.experience-layout{gap:8%}
.experience-visual{height:530px}
.experience-panel h3{font-size:54px}
.experience-content{padding:20px 0}
.experience-tabs{gap:26px;margin-bottom:37px}
.nights{gap:7%;padding-top:100px;padding-bottom:100px}
.private-nights{grid-template-columns:1fr;gap:20px}
.private-nights .text-link{grid-column:1;justify-self:start}
.visit-details{gap:22px;grid-template-columns:1fr 1fr}
.visit-book{grid-column:1/-1;justify-self:start;padding-top:20px}
.visit-book .detail-label{display:none}
}
@media(max-width:760px){:root{--gutter:26px}
.site-header{height:88px;padding:0 22px}
.site-header.scrolled{height:76px}
.brand{gap:6px}
.brand-symbol{width:46px;height:32px}
.brand-type{font-size:24px}
.brand-type small{font-size:8px;margin-top:7px}
.brand-plus{font-size:18px}
.desktop-nav{display:none}
.menu-toggle{display:block}
.reserve-small{padding:8px 12px;gap:16px;font-size:10px;min-height:38px}
.header-actions{gap:9px}
.hero{height:900px;height:100svh;min-height:780px;max-height:1000px}
.hero-content{padding-top:173px;width:100%;padding-right:20px}
.hero-location{font-size:10px;margin-bottom:26px}
.hero h1{font-size:clamp(72px,16vw,108px);line-height:.91;letter-spacing:-.035em;text-shadow:0 0 30px #0007}
.hero-description{margin-top:31px;font-size:13px;line-height:1.8;margin-bottom:28px}
.button{padding:17px 22px;gap:30px;min-height:55px}
.hero-bottom{bottom:75px;font-size:9px;align-items:start}
.hero-bottom>a:nth-child(2){position:static;transform:none;gap:15px;font-size:9px}
.hero-bottom>p{max-width:115px}
.hero-instagram,.hero-side-note{display:none}
.universe{padding:74px var(--gutter) 75px}
.universe-intro{font-size:21px}

.galaxy-title{font-size:20vw;letter-spacing:0;margin:25px -6px 36px}
.universe-copy{grid-template-columns:1fr;gap:28px}
.universe-copy>p{font-size:39px}
.universe-copy>div{font-size:12px;max-width:440px}
.universe-copy .text-link{margin-top:15px}
.experience{padding:75px var(--gutter) 70px}
.section-heading{display:block;margin-bottom:36px}
.section-heading .section-context{padding:0;margin-bottom:20px}
.section-heading h2{font-size:56px}
.section-heading>p:last-child{margin-top:22px;font-size:12px}
.experience-layout{grid-template-columns:1fr;gap:34px}
.experience-visual{height:auto;aspect-ratio:4/4.5}
.experience-content{padding:0;max-width:none}
.experience-tabs{margin-bottom:25px;gap:0;justify-content:space-between}

.experience-panel h3{font-size:47px;margin-bottom:22px}
.experience-panel>p{font-size:12px;max-width:440px}
.experience-panel{min-height:230px}
.experience-panel .experience-note{margin-top:17px;font-size:10px}
.experience-link{margin-top:19px}
.image-caption{left:22px;font-size:10px;bottom:22px}

.interlude{padding:42px 20px 47px}
.interlude>p{margin-bottom:18px;font-size:10px}
.interlude-line{flex-wrap:wrap;gap:12px;font-size:34px;white-space:normal}



.nights{grid-template-columns:1fr;padding:77px var(--gutter);gap:47px}
.nights h2{font-size:54px;margin-top:23px;margin-bottom:24px}
.nights-copy>p:not(.section-context){font-size:12px;max-width:440px}
.nights-copy .button{margin-top:26px}
.nights-copy>small{font-size:9px}
.night-art{max-width:500px;justify-self:center}
.night-art-title{font-size:85px}
.night-art-bottom{bottom:33px;font-size:9px}
.night-signature{font-size:25px}
.private-nights{padding:36px 0 50px;grid-template-columns:1fr;column-gap:15px}

.private-nights h2{font-size:28px;line-height:1.2}
.private-nights p{font-size:11px;margin-top:15px}
.private-nights .text-link{font-size:11px}
.visit{padding:76px var(--gutter) 66px}
.visit-top{margin-bottom:38px}
.visit-top h2{font-size:54px;margin-top:24px}

.visit-details{grid-template-columns:1fr;gap:35px;padding-top:30px}
.visit-book{grid-column:auto;padding-top:0;width:100%}
.visit-book .button{width:100%}
.visit-book .detail-label{display:block}
.visit-address .text-link{margin-top:15px}
.visit-details .detail-label{margin-bottom:11px}
.site-footer{padding:45px var(--gutter) 99px}
.footer-top{flex-wrap:wrap;gap:25px;padding-bottom:30px}
.footer-wordmark{font-size:44px}
.footer-top>p{font-size:18px;order:3;flex-basis:100%}
.footer-top>a:last-child{font-size:11px}
.footer-bottom{flex-wrap:wrap;gap:12px;padding-top:20px;font-size:8px}
.footer-bottom>span:nth-child(2){display:none}
.footer-bottom>button{margin-left:auto;font-size:9px}


dialog{padding:48px 25px 30px}
dialog h2{font-size:47px}
dialog>p:not(.section-context){font-size:11px}
dialog .button{padding:15px 19px}

.dialog-close{right:8px;top:6px}
#privacy-dialog h2{font-size:36px}}
@media(max-width:380px){.brand-symbol{display:none}
.reserve-small{gap:8px}
.hero{min-height:760px}
.hero h1{font-size:76px}
.hero-content{padding-top:170px}
.hero-bottom>a:nth-child(2){max-width:150px}
.visit-top h2{font-size:46px}
.section-heading h2{font-size:50px}
.nights h2{font-size:47px}
.interlude-line{font-size:30px;gap:11px}
.experience-panel{min-height:255px}
.night-art-title{font-size:77px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{animation:none!important;transition:none!important}
.galaxy-title,.night-halo{transform:none!important}}
body{isolation:isolate}
.cosmos{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;background:linear-gradient(#070d1588,#070d1588),#070d15 url('assets/galaxy-hubble.jpg') 60% center/cover;clip-path:inset(100vh 0 0 0)}
.hero{background:#070d15}
.hero-bottom,.hero-side-note{z-index:2}
.universe{background:linear-gradient(#070d15 0%,#070d1500 24%,#070d1510 80%,#070d1535 100%)}
.experience{background:linear-gradient(#070d1535,#070d1524 30%,#070d1524 80%,#070d1540)}
.experience-content{position:relative}
.experience-content:before{content:'';position:absolute;inset:-30px -45px;z-index:-1;background:radial-gradient(ellipse,#070d158a,transparent 72%);pointer-events:none}
.interlude{background:linear-gradient(100deg,#b59b7020,#84725c32,#b59b7012);color:var(--paper);border-block:1px solid #c5af882e}
.interlude>p{color:var(--gold)}

.nights{background:linear-gradient(90deg,#070d154f,#070d151a)}
.night-art{background:#09111d55;backdrop-filter:blur(1px)}
.night-art-stars{opacity:.11}
.private-nights{background:transparent}
.visit{background:linear-gradient(#070d152e,#070d155c)}
.site-footer{background:#070d1573}
.universe-copy>div,.section-heading>p:last-child,.experience-panel>p,.nights-copy>p:not(.section-context){color:#bac0cc}
@media(max-width:760px){.experience-content:before{inset:-15px}
.universe{background:linear-gradient(#070d15,#070d151a 20%,#070d1535)}
.experience,.nights{background:#070d153d}}
.motion-toggle{position:fixed;z-index:24;right:18px;bottom:18px;width:38px;height:38px;display:grid;place-items:center;border:1px solid #d7c5a345;border-radius:50%;background:#070d15b8;color:#cfc5b4;backdrop-filter:blur(8px)}
.motion-toggle svg{width:17px;height:17px;stroke-width:1.5}
.motion-play{display:none}
.motion-toggle[aria-pressed=true] .motion-play{display:block}
.motion-toggle[aria-pressed=true] .motion-pause{display:none}
body.is-locked .motion-toggle{display:none}
@media(max-width:760px){.motion-toggle{bottom:82px;right:15px;width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){.motion-toggle{display:none}}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cosmos{background:#050911;overflow:hidden}
.cosmos video{width:100%;height:100%;object-fit:cover;object-position:50% 50%;opacity:.6;filter:saturate(.65)}
.cosmos:after{content:'';position:absolute;inset:0;background:linear-gradient(#070d1520,#070d1540),radial-gradient(ellipse at center,transparent,#070d1533)}
.galaxy-title{position:relative;font-family:var(--serif);font-weight:500;width:100%;height:auto;aspect-ratio:1040/190.0000;margin:40px auto 65px;line-height:1;letter-spacing:0;transform:none!important}
.galaxy-letter-art{position:absolute;inset:0;display:block;background:none;mask:url('assets/galaxy-letter-mask.svg?v=cormorant-500-1') center/100% 100% no-repeat;-webkit-mask:url('assets/galaxy-letter-mask.svg?v=cormorant-500-1') center/100% 100% no-repeat}
.galaxy-letter-canvas{display:block;width:100%;height:100%;visibility:hidden}
.galaxy-letter-art[data-content-state="montage"] .galaxy-letter-canvas{visibility:visible}
.galaxy-letter-art[data-content-state="still"]{background:#101847 url('assets/galaxy-letter-rapid.webp') center/cover}
.universe{background:linear-gradient(#070d15,#070d1590 18%,#070d1580 73%,#070d1520)}
.motion-credit{font-size:10px;line-height:1.8;color:#a7aeba;margin-top:8px}
.motion-credit a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.galaxy-title{margin:40px auto 50px;aspect-ratio:1040/190.0000}
.cosmos video{object-position:47% center;opacity:.60}
.universe{background:linear-gradient(#070d15,#070d1570 20%,#070d1535)}
.motion-credit{font-size:9px;max-width:340px}}
.smoke-rendered video{opacity:0}
.cosmos video{opacity:.78;filter:none}
@media(max-width:760px){.cosmos video{opacity:.72}}
/* One hero scene: image fallback, a single compositor and a fixed reading shade. */
.hero-visual{position:absolute;inset:76px 0 0;z-index:0;overflow:hidden;isolation:isolate}
.hero-visual>img,.venue-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:60% 50%}
.hero-visual>img{opacity:1;transform:none}
.venue-canvas{opacity:0;pointer-events:none;transition:opacity .45s ease}
.venue-canvas[data-ready=true]{opacity:1}
.hero-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#070d1599 0%,#070d1540 38%,transparent 72%),linear-gradient(0deg,#070d15 0%,#070d1510 24%,#070d1515 100%)}
.scene-sources{position:fixed;width:1px;height:1px;left:-10px;bottom:0;overflow:hidden;pointer-events:none;opacity:0}
.scene-sources video{width:1px;height:1px}
@media(max-width:760px){
.hero-visual{inset:60px 0 auto;height:74svh;min-height:560px;max-height:670px}
.hero-visual>img{object-position:67% 50%}
.hero-shade{background:linear-gradient(90deg,#070d1555,transparent 80%),linear-gradient(#070d1540,#070d1510 30%,#070d1566 63%,#070d15 100%)}
}
@media(prefers-reduced-motion:reduce){.venue-canvas{transition:none}}
/* Fine-pointer comet: exact tip, short trail, no interaction layer on touch. */
.comet-cursor{position:fixed;inset:0;z-index:1000;pointer-events:none;overflow:hidden;opacity:0;contain:strict}
.comet-cursor.is-visible{opacity:1}
.comet-trail{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.comet-trail path{fill:none;stroke:url(#comet-light);stroke-linecap:round;stroke-linejoin:round}
.comet-aura{stroke-width:6;opacity:.14}
.comet-thread{stroke-width:1.6;opacity:.85}
.comet-tip{position:absolute;left:0;top:0;width:0;height:0;will-change:transform}
.comet-tip:before{content:'';position:absolute;left:-2px;top:-2px;width:4px;height:4px;background:#fff5e3;border-radius:50%;box-shadow:0 0 5px 1px #eee3ffb3,0 0 13px 4px #9997e63d;transition:box-shadow .16s ease}
.comet-tip:after{content:'';position:absolute;left:-5px;top:-5px;width:10px;height:10px;background:#fff5e3b3;clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%)}
.comet-cursor.is-link .comet-tip:before{box-shadow:0 0 6px 2px #fff4d5,0 0 16px 5px #b3a1ff66}
.comet-cursor.is-pressed .comet-tip:after{opacity:.35}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
html.has-comet,html.has-comet *{cursor:none!important}
}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.comet-cursor{display:none}}

/* Native UHD astronomy background; foreground remains in its own paint layer. */
.cosmos{z-index:0;background:#050911}
main,.site-footer{position:relative;z-index:1}
.cosmos video{opacity:1;filter:brightness(1.18);object-position:50% 50%;transform:none}
.cosmos:after{background:none}
.universe{background:linear-gradient(#070d1599,transparent 26%,transparent 75%,#070d1526)}
@media(max-width:760px){.cosmos video{opacity:1;object-position:50% 50%}.universe{background:linear-gradient(#070d1580,transparent 22%,#070d151a)}}


.universe-intro,.universe-copy{text-shadow:0 2px 14px #030508,0 1px 3px #030508}



/* Editorial copy: natural line lengths after removing the ornaments. */
.interlude-line{display:block;text-wrap:balance}.night-art-bottom{display:block}.universe-intro{margin-bottom:30px}
@media(max-width:760px){.interlude-line{max-width:360px;margin-inline:auto}.private-nights{row-gap:24px}}


/* Galaxy actions: smoked glass, a fine brass rim and the venue's blue light. */
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;width:max-content;max-width:100%}
.hero-actions .lounge-action--reserve{min-width:235px}
.hero-actions .lounge-action--member{min-width:210px}
.hero-membership-note{max-width:425px;margin-top:18px;font:400 11px/1.65 var(--sans);color:#c1bdca;text-shadow:0 1px 8px #050711}
.header-actions{gap:12px}
.header-member{font-size:12px;color:#c9c5d6}
.reserve-small:hover{background:linear-gradient(115deg,#282138,#121928 56%,#171320) padding-box,linear-gradient(135deg,#e2c8a1,#a88b66 36%,#706080 68%,#b89a72) border-box}
.experience-link.lounge-action{min-height:56px;font-size:22px;padding:14px 25px;align-self:flex-start}
.shisha-membership{margin-top:23px;padding-top:19px;border-top:1px solid #aa9eb62e;max-width:345px;font-size:11px;line-height:1.75;color:#b8b6c5}
.shisha-membership .membership-inline{margin-top:7px}
.visit-book .lounge-action{display:flex;min-width:235px;min-height:56px;font-size:22px;padding:14px 22px}
.visit-book .visit-membership{margin-top:12px;font-size:20px}
.visit-book>p:not(.detail-label){max-width:265px}
.booking-membership{margin:0 0 22px}
.booking-membership .membership-inline{margin-top:8px}
dialog .lounge-action{margin-bottom:22px;font-size:24px;min-height:62px}
.mobile-actions{display:none}
.mobile-menu .menu-membership{font-size:29px;color:#c3b2d0;margin-top:10px}
@media(max-width:1100px){.header-actions{gap:10px}.lounge-action--compact{padding:11px 18px}.desktop-nav{gap:22px}}
@media(min-width:761px) and (max-width:980px){.header-member{display:none}.hero-actions{gap:12px}.hero-actions .lounge-action{min-width:0;padding-inline:24px;font-size:22px}}
@media(max-width:760px){
 .header-member{display:none}.header-actions{gap:9px}.lounge-action--compact{min-height:42px;padding:10px 19px;font-size:12px}
 .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:430px}
 .hero-actions .lounge-action{min-width:0;min-height:56px;padding:14px 12px;font-size:clamp(18px,5vw,20px)}
 .hero-membership-note{max-width:330px;color:#d4cedb;font-size:11px;line-height:1.65;margin-top:15px}
 .mobile-actions{position:fixed;left:0;right:0;bottom:0;z-index:24;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 16px;padding-bottom:calc(10px + env(safe-area-inset-bottom));border-top:1px solid #b4a2be26;background:#090f1bf2;backdrop-filter:blur(14px);box-shadow:0 -7px 25px #03050b44}
 .mobile-actions .lounge-action{min-height:44px;padding:11px 12px;font-size:19px;min-width:0}
 body.is-locked .mobile-actions{display:none}
 .motion-toggle{bottom:calc(82px + env(safe-area-inset-bottom))}
 .site-footer{padding-bottom:calc(105px + env(safe-area-inset-bottom))}
 .shisha-membership{max-width:none}.experience-link.lounge-action{margin-top:26px}
 .visit-book .lounge-action{width:100%;min-height:56px}
 dialog .lounge-action{font-size:22px;min-height:56px}
}
@media(max-width:360px){.header-actions{gap:6px}.lounge-action--compact{padding-inline:13px}.hero-actions{grid-template-columns:1fr;max-width:300px}.hero-actions .lounge-action{font-size:21px;min-height:52px;padding:13px 19px}.mobile-actions{padding-inline:12px;gap:8px}.mobile-actions .lounge-action{font-size:18px}}
@media(prefers-reduced-motion:reduce){.lounge-action,.lounge-action:before{transition:none}.lounge-action:hover,.lounge-action:active{transform:none}}

/* Secondary document links keep the venue footer short. */
.footer-legal{display:flex;align-items:center;gap:18px}.footer-legal a,.footer-legal button{display:inline-flex;align-items:center;min-height:32px;padding:0;color:#a7aebb;font:400 10px/1.5 var(--sans)}.footer-legal a:hover,.footer-legal button:hover{color:#ede3d4}.footer-legal a:focus-visible,.footer-legal button:focus-visible{outline:2px solid #d9c9aa;outline-offset:4px}@media(max-width:760px){.footer-legal{margin-left:auto;gap:14px}.footer-legal a,.footer-legal button{font-size:10px;min-height:36px}}

/* Real venue footage inside the original Galaxy Nights rectangle. */
.night-film{background:#0a0d15;backdrop-filter:none;border-color:#b49c754d}
.night-film:after{inset:12px;border-color:#f5e5c71f;z-index:2}
.night-film-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%}
.night-film-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#08091145,transparent 25%,transparent 48%,#080911b3 85%,#080911ed)}
.night-film-signature{position:absolute;left:28px;top:26px;color:#f5e9d5;font:500 25px/1 var(--serif);text-shadow:0 1px 9px #070811}
.night-film-caption{position:absolute;left:28px;bottom:35px;right:85px;z-index:3}
.night-film-title{font:500 clamp(42px,5.5vw,69px)/.9 var(--serif);letter-spacing:-.035em;color:#f5ead8;text-shadow:0 2px 14px #08091177}
.night-film-title em{display:block;font-weight:400;color:#d4c3ae}
.night-film-caption a{display:inline-flex;align-items:center;min-height:36px;margin-top:13px;border-bottom:1px solid #d0b99566;color:#e5d8c7;font-size:10px;letter-spacing:.025em}
.night-film-toggle{position:absolute;z-index:4;right:28px;bottom:42px;width:44px;height:44px;border-radius:50%;border:1px solid #e5d5bb66;background:#0b101bc9;color:#eee2cd;display:grid;place-items:center;transition:background .2s ease}
.night-film-toggle[hidden]{display:none}.night-film-toggle:hover{background:#313046}.night-film-toggle:disabled{opacity:.5;cursor:default}
.night-film-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}
.night-film-pause{display:none}.night-film-toggle[data-playing=true] .night-film-play{display:none}.night-film-toggle[data-playing=true] .night-film-pause{display:block}
.night-film-toggle:focus-visible,.night-film-caption a:focus-visible{outline:2px solid #f2e2c7;outline-offset:4px}
.night-film-progress{position:absolute;z-index:4;left:28px;right:28px;bottom:21px;height:1px;background:#e4d1b92e;pointer-events:none}
.night-film-progress span{display:block;width:100%;height:100%;background:#dec5a0;transform:scaleX(0);transform-origin:left}
@media(max-width:760px){.night-film-signature{top:25px;left:25px;font-size:24px}.night-film-caption{left:25px;bottom:36px;right:75px}.night-film-title{font-size:60px}.night-film-toggle{right:25px;bottom:42px}.night-film-progress{left:25px;right:25px}}
@media(max-width:360px){.night-film-title{font-size:49px}.night-film-caption{left:22px}.night-film-toggle{right:22px}}

/* One soft handover from the room to the existing astronomical background. */
.hero{--transition-depth:0px;-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 calc(100% - var(--transition-depth)),#000e calc(100% - var(--transition-depth)*.75),#0007 calc(100% - var(--transition-depth)*.35),transparent 100%);mask-image:linear-gradient(to bottom,#000 0,#000 calc(100% - var(--transition-depth)),#000e calc(100% - var(--transition-depth)*.75),#0007 calc(100% - var(--transition-depth)*.35),transparent 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.universe{background:linear-gradient(transparent 0%,transparent 78%,#070d1526 100%)}

/* Shared type rhythm: natural wrapping, readable measures and aligned columns. */
main p,dialog p{text-wrap:pretty}
h2,h3,.universe-statement{text-wrap:balance;overflow-wrap:normal;hyphens:none}
.hero-description{max-width:39ch}
.hero h1>span{white-space:nowrap}
.universe-copy{grid-template-columns:1fr 1fr;gap:10%;align-items:start}
.universe-copy>.universe-statement{font-size:clamp(43px,4.4vw,66px);line-height:1.06;max-width:12ch;letter-spacing:-.025em}
.universe-copy>div{max-width:44ch}
.section-heading{grid-template-columns:1fr 1fr;gap:20px 11%;max-width:1180px;margin-inline:auto}
.section-heading .section-context{grid-column:1/-1;padding:0}
.section-heading h2,.nights h2,.visit-top h2{font-size:clamp(54px,5.4vw,84px);line-height:1.05;letter-spacing:-.03em;max-width:14ch}
.section-heading>p:last-child{justify-self:start;max-width:33ch;font-size:13px;text-wrap:pretty}
.experience-panel h3{font-size:clamp(43px,4.1vw,63px);line-height:1.08;max-width:15ch}
.experience-panel>p,.nights-copy>p:not(.section-context){max-width:43ch;line-height:1.9}
.nights h2{max-width:13ch}
.private-nights h2{font-size:clamp(30px,3.2vw,43px);line-height:1.12;max-width:24ch}
.private-nights p{max-width:64ch}
.visit-top h2{max-width:16ch}
.visit-details>div{min-width:0}
.visit-details>div>p:not(.detail-label){max-width:32ch;text-wrap:pretty}
.visit-phone{white-space:nowrap}
.footer-top>p{text-wrap:balance}
dialog h2{font-size:clamp(42px,4vw,55px);line-height:1.05;text-wrap:balance;max-width:12ch;margin-inline:auto}
dialog .booking-assistance a{display:block}
.booking-membership .membership-inline{display:table;margin:8px auto 0}
@media(min-width:761px) and (max-width:980px){.hero h1{font-size:clamp(78px,10vw,100px)}.hero-content{width:66%}}
@media(max-width:760px){
 .hero-description{max-width:35ch;font-size:13px}
 .universe-copy{grid-template-columns:1fr;gap:27px}
 .universe-copy>.universe-statement{font-size:clamp(38px,9.7vw,53px);max-width:none}
 .universe-copy>div{max-width:46ch}
 .section-heading{display:block}
 .section-heading h2,.nights h2,.visit-top h2{font-size:clamp(46px,12vw,65px);line-height:1.06;max-width:14ch}
 .section-heading>p:last-child{font-size:12px;max-width:36ch;margin-top:22px}
 .experience-panel h3{font-size:clamp(40px,10.5vw,53px);max-width:16ch}
 .nights h2{max-width:13ch}
 .private-nights h2{font-size:32px;max-width:23ch}
 .visit-top h2{max-width:14ch}
 .visit-details>div>p:not(.detail-label){max-width:40ch}
}
@media(max-width:360px){.hero h1{font-size:clamp(64px,20vw,72px)}.hero-description{max-width:31ch}.section-heading h2,.nights h2,.visit-top h2{font-size:43px}}

/* License notices live with the existing site legal information. */
.legal-media{margin-top:28px;padding-top:24px;border-top:1px solid #9b96b33d;text-align:left;font:400 12px/1.85 var(--sans);color:#c0bdd0}.legal-media h3{font:500 23px/1.25 var(--serif);color:#eee6ed;margin:0 0 16px}.legal-media p{margin:0 0 18px}.legal-media a{text-decoration:underline;text-underline-offset:3px;color:#d9c6e3}.legal-media-list{margin-top:20px}.join-privacy>h3,#privacy-dialog>h3{font:500 22px/1.3 var(--serif);margin:22px 0 12px}.join-privacy>h2,#privacy-dialog>h2{max-width:none;font-size:38px;text-align:left}

/* Keep editorial text legible as bright stars cross the background movie. */
.universe-intro,.universe-copy,.section-heading,.experience-panel,.nights-copy,.private-nights,.visit-top,.visit-details{text-shadow:0 1px 2px #030509,0 0 6px #030509,0 0 18px #030509}
.nights-copy>p:not(.section-context),.experience-panel>p,.section-heading>p:last-child{color:#d9dbe2}
