@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--night:#0c0a10;--panel:#141019;--plum:#261a2a;--wine:#421828;--gold:#d0a863;--amber:#f3c881;--cream:#eee6d9;--muted:#a79aa0;--rule:rgba(239,225,208,.16);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--night);color:var(--cream);font:15px var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.header{height:86px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10;background:rgba(12,10,16,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--rule)}.brand{display:flex;align-items:baseline;gap:9px;color:var(--cream);font:600 18px var(--sans);letter-spacing:.16em}.brand-wordmark{color:var(--cream);font:600 18px var(--sans);letter-spacing:.18em}.brand-descriptor{align-self:center;padding-left:9px;border-left:1px solid var(--gold);color:var(--gold);font:8px var(--sans);letter-spacing:.2em}.nav{display:flex;align-items:center;gap:30px}.nav a{font-size:10px;letter-spacing:.08em;color:#e9e0d8;transition:color .25s}.nav a:hover,.underlink:hover{color:var(--amber)}.nav .nav-cta{border:1px solid rgba(208,168,99,.65);padding:13px 18px;color:var(--amber)}.nav-cta span{margin-left:16px}.menu-toggle{display:none}.hero{height:min(780px,calc(100svh - 86px));min-height:610px;position:relative;overflow:hidden;background:var(--night)}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:saturate(.76) brightness(.75);animation:heroIn 1.6s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,8,14,.92) 0%,rgba(10,8,14,.72) 34%,rgba(10,8,14,.08) 78%),linear-gradient(0deg,rgba(10,8,14,.78),transparent 32%,rgba(10,8,14,.15))}.hero-copy{position:absolute;left:11vw;top:50%;transform:translateY(-48%);max-width:620px}.eyebrow{color:var(--gold);font-size:9px;letter-spacing:.23em;text-transform:uppercase;margin:0 0 20px}.hero .eyebrow{display:flex;align-items:center;gap:11px}.hero .eyebrow span{width:20px;height:1px;background:var(--gold)}h1,h2{font:500 clamp(46px,6.9vw,94px)/1.02 var(--serif);letter-spacing:-.035em;margin:0}h1 em,h2 em{color:var(--amber);font-weight:500}.hero-description{max-width:430px;color:#d0c4c3;font-size:13px;line-height:1.85;margin:23px 0 28px}.hero-actions{display:flex;gap:13px}.button{min-height:48px;padding:0 19px;display:inline-flex;align-items:center;justify-content:space-between;gap:22px;font-size:9px;letter-spacing:.13em;text-transform:uppercase;transition:transform .25s,background .25s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:#1b1110}.button-gold:hover{background:var(--amber)}.button-ghost{border:1px solid rgba(238,230,217,.4);color:var(--cream)}.button-ghost:hover{background:rgba(255,255,255,.08)}.hero-foot{position:absolute;bottom:30px;left:6vw;right:6vw;display:flex;align-items:center;gap:15px;color:#c7b9b3;font-size:8px;letter-spacing:.17em}.hero-foot-line{height:1px;background:rgba(239,225,208,.3);flex:1}.scroll-mark{position:absolute;right:6vw;bottom:27px;width:28px;height:28px;border:1px solid rgba(239,225,208,.35);border-radius:50%;display:grid;place-items:center;color:var(--amber)}.section-wrap{padding:120px 10vw}.intro{display:grid;grid-template-columns:.5fr 1.4fr 1fr;gap:35px;border-bottom:1px solid var(--rule)}.intro-index{font-size:8px;letter-spacing:.16em;color:var(--gold)}.intro-index span{color:#66534c;padding:0 8px}.intro-main h2,.section-top h2,.experience h2,.location h2{font-size:clamp(40px,5.5vw,72px)}.intro-aside{padding-top:28px}.intro-aside>p{margin:0;color:#bbafb1;font-size:12px;line-height:1.9}.rating{display:flex;align-items:center;gap:12px;margin-top:27px}.rating strong{font:italic 31px var(--serif);color:var(--amber)}.rating span{font-size:9px;line-height:1.6;color:var(--muted)}.underlink{display:inline-flex;gap:18px;align-items:center;border-bottom:1px solid rgba(208,168,99,.45);padding:0 0 8px;color:var(--amber);font-size:9px;letter-spacing:.1em;text-transform:uppercase;transition:color .2s}.intro-aside .underlink{margin-top:22px}.rooms{background:linear-gradient(180deg,#100c14,#0c0a10)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-note{max-width:300px;color:var(--muted);font-size:12px;line-height:1.8}.room-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:20px}.room-card{min-width:0}.photo-button{display:block;position:relative;padding:0;border:0;width:100%;background:#1d1720;overflow:hidden;cursor:zoom-in}.photo-button img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.65,.3,1),filter .4s;filter:saturate(.83)}.photo-button:hover img{transform:scale(1.035);filter:saturate(1)}.room-card .photo-button{height:390px}.room-card-large .photo-button{height:475px}.photo-open{position:absolute;right:17px;top:17px;width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(10,8,12,.22);color:white;opacity:0;transform:translateY(5px);transition:.25s}.photo-button:hover .photo-open{opacity:1;transform:none}.room-caption{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:12px;padding:17px 0 0;border-top:1px solid var(--rule);margin-top:13px}.room-number{color:var(--gold);font:italic 12px var(--serif)}.room-caption h3{margin:0;font:500 18px var(--serif);letter-spacing:.07em}.room-caption p{margin:5px 0 0;color:var(--muted);font-size:9px}.room-arrow{color:var(--gold)}.source-note{font-size:9px;color:#756d72;margin-top:24px}.terrace{height:620px;position:relative;overflow:hidden;background:#171017}.terrace>img{width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:brightness(.72) saturate(.82)}.terrace-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,8,13,.94),rgba(12,8,13,.52) 42%,rgba(12,8,13,.03) 100%),linear-gradient(0deg,rgba(12,8,13,.55),transparent 55%)}.terrace-content{position:absolute;left:14vw;top:50%;transform:translateY(-50%);max-width:410px}.terrace-content h2{font-size:clamp(54px,7vw,90px)}.terrace-content>p:not(.eyebrow){color:#d1c5c3;font-size:12px;line-height:1.8;max-width:300px;margin:21px 0}.terrace-hours{display:flex;gap:18px;align-items:center;border-top:1px solid rgba(255,255,255,.3);padding-top:16px;margin-top:26px}.terrace-hours span{font-size:8px;letter-spacing:.18em;color:var(--gold)}.terrace-hours strong{font:18px var(--serif);font-weight:500}.terrace-label{position:absolute;bottom:28px;right:6vw;font-size:8px;letter-spacing:.18em;color:#dac9be}.experience{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:start}.experience-head{position:sticky;top:130px}.experience-items{border-top:1px solid var(--rule)}.experience-items article{display:grid;grid-template-columns:40px 1fr 18px;gap:15px;align-items:start;padding:23px 0;border-bottom:1px solid var(--rule)}.experience-items article>span:first-child{font:italic 12px var(--serif);color:var(--gold)}.experience-items h3{font:500 23px var(--serif);margin:0 0 7px}.experience-items p{font-size:11px;color:var(--muted);margin:0;line-height:1.7}.plus{color:var(--gold);font-size:16px}.gallery{padding-top:30px}.gallery .section-top{align-items:center}.gallery-grid{display:grid;grid-template-columns:1.05fr .8fr 1.05fr;grid-template-rows:260px 200px;gap:14px}.gallery-one{grid-row:span 2}.gallery-two{grid-column:span 2}.gallery-three{grid-column:2 / 4}.gallery-grid .photo-button{height:100%}.gallery-grid .photo-button img{object-fit:cover}.menu-section{padding-top:20px}.menu-card{min-height:350px;border:1px solid rgba(208,168,99,.35);background:radial-gradient(ellipse at 82% 15%,rgba(78,34,52,.5),transparent 42%),linear-gradient(130deg,#18101a,#0e0b12);padding:55px 7vw;position:relative;overflow:hidden}.menu-mark{width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:italic 24px var(--serif);margin-bottom:31px}.menu-card h2{font-size:clamp(37px,4.5vw,58px)}.menu-card>p:not(.eyebrow){max-width:470px;color:var(--muted);font-size:11px;line-height:1.8;margin:17px 0 25px}.menu-wordmark{position:absolute;right:4vw;bottom:-28px;color:rgba(255,255,255,.035);font:clamp(90px,17vw,220px) var(--serif);letter-spacing:.08em}.location{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;border-top:1px solid var(--rule)}.location-title .button{margin-top:27px}.location-details{padding-top:8px}.map-card{height:220px;position:relative;overflow:hidden;background:#17151c;border:1px solid rgba(208,168,99,.3);margin-bottom:27px}.map-lines{position:absolute;inset:-20%;opacity:.65;background:linear-gradient(28deg,transparent 48%,rgba(208,168,99,.2) 49%,rgba(208,168,99,.2) 50%,transparent 51%),linear-gradient(95deg,transparent 45%,rgba(208,168,99,.13) 46%,rgba(208,168,99,.13) 47%,transparent 48%),linear-gradient(156deg,transparent 62%,rgba(208,168,99,.16) 63%,rgba(208,168,99,.16) 64%,transparent 65%);background-size:180px 130px,210px 170px,260px 200px}.map-pin{position:absolute;left:50%;top:42%;width:38px;height:38px;border-radius:50% 50% 50% 0;transform:translate(-50%,-50%) rotate(-45deg);background:var(--gold);box-shadow:0 0 40px rgba(208,168,99,.32)}.map-pin span{display:grid;place-items:center;width:100%;height:100%;transform:rotate(45deg);color:#261710;font:italic 20px var(--serif)}.map-label{position:absolute;top:58%;left:50%;transform:translateX(-50%);text-align:center;font-size:9px;letter-spacing:.14em}.map-label small{display:block;color:var(--gold);font-size:7px;margin-top:6px}.map-card>a{position:absolute;right:14px;bottom:13px;font-size:8px;color:var(--amber);letter-spacing:.1em}.contact-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.contact-columns small{color:var(--gold);font-size:8px;letter-spacing:.17em}.contact-columns p,.contact-columns>a{display:block;color:#d4c9c5;font-size:10px;line-height:1.8;margin:13px 0 19px}.contact-columns a:hover{color:var(--amber)}.footer{border-top:1px solid var(--rule);padding:26px 6vw 30px;display:grid;grid-template-columns:1.2fr .8fr 1fr 1fr;gap:20px;align-items:center}.footer>span{font-size:8px;letter-spacing:.12em;color:var(--muted)}.footer nav{display:flex;gap:17px}.footer nav a,.footer-hours{font-size:8px;color:#bbb0ad}.footer>small{grid-column:1/-1;color:#645c62;font-size:8px}.mobile-bar{display:none}.lightbox{border:1px solid rgba(208,168,99,.4);padding:42px;background:rgba(12,10,16,.97);max-width:92vw;max-height:92vh;color:white}.lightbox::backdrop{background:rgba(5,4,7,.9);backdrop-filter:blur(5px)}.lightbox img{display:block;max-width:84vw;max-height:76vh;object-fit:contain}.lightbox p{text-align:center;font-size:10px;color:#d5c6bd}.lightbox button{position:absolute;right:10px;top:6px;border:0;background:none;color:white;font-size:28px;cursor:pointer}@keyframes heroIn{from{transform:scale(1.04);opacity:.55}to{transform:scale(1);opacity:1}}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.reveal.is-visible{opacity:1;transform:none}@media(max-width:850px){.header{padding:0 5vw;height:76px}.nav{gap:17px}.nav a{font-size:9px}.section-wrap{padding:90px 7vw}.intro{grid-template-columns:.3fr 1.2fr 1fr;gap:22px}.room-card .photo-button{height:310px}.room-card-large .photo-button{height:390px}.terrace{height:540px}.gallery-grid{grid-template-rows:210px 165px}.location{gap:4vw}.footer{grid-template-columns:1fr 1fr}.footer nav{grid-column:1/-1;grid-row:2}.footer>small{grid-row:3}}@media(max-width:620px){html{scroll-padding-top:72px}.header{height:68px;padding:0 5vw}.brand{font-size:16px}.brand-emblem{width:35px;height:35px}.menu-toggle{display:block;background:none;border:0;padding:8px}.menu-toggle i{display:block;width:22px;height:1px;background:var(--cream);margin:6px 0;transition:transform .2s}.menu-toggle[aria-expanded="true"] i:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] i:last-child{transform:translateY(-3.5px) rotate(-45deg)}.nav{display:none;position:absolute;left:0;right:0;top:67px;padding:12px 6vw 22px;background:rgba(12,10,16,.98);border-bottom:1px solid var(--rule);flex-direction:column;align-items:stretch;gap:0}.nav.is-open{display:flex}.nav a{padding:15px 0;border-bottom:1px solid var(--rule);font-size:11px}.nav .nav-cta{margin-top:12px;padding:14px}.hero{height:calc(100svh - 68px);min-height:630px;max-height:800px}.hero-image{object-position:57% center}.hero-shade{background:linear-gradient(90deg,rgba(10,8,14,.82),rgba(10,8,14,.35) 100%),linear-gradient(0deg,rgba(10,8,14,.8),transparent 48%)}.hero-copy{left:7vw;right:7vw;top:45%;transform:translateY(-42%)}h1{font-size:clamp(48px,13vw,72px)}.hero-description{font-size:12px;max-width:340px}.hero-actions{flex-direction:column;align-items:flex-start}.button{min-height:46px}.hero-foot{left:7vw;right:7vw;bottom:22px;gap:8px;font-size:7px}.hero-foot span:last-child{display:none}.hero-foot-line{max-width:60px}.scroll-mark{display:none}.section-wrap{padding:73px 7vw}.intro{display:grid;grid-template-columns:1fr 1fr;gap:14px}.intro-index{grid-column:1/-1}.intro-main{grid-column:1/-1}.intro-main h2,.section-top h2,.experience h2,.location h2{font-size:clamp(39px,11vw,58px)}.intro-aside{grid-column:1/-1;padding-top:4px}.intro-aside>p{font-size:11px}.section-top{display:block;margin-bottom:30px}.section-note{margin-top:19px}.room-grid{grid-template-columns:1fr;gap:28px}.room-card .photo-button,.room-card-large .photo-button{height:290px}.room-card-large .photo-button{height:350px}.room-caption{padding-top:14px}.terrace{height:520px}.terrace>img{object-position:58% center}.terrace-overlay{background:linear-gradient(90deg,rgba(12,8,13,.82),rgba(12,8,13,.18)),linear-gradient(0deg,rgba(12,8,13,.62),transparent 55%)}.terrace-content{left:8vw;right:8vw}.terrace-content h2{font-size:clamp(56px,15vw,76px)}.terrace-content>p:not(.eyebrow){font-size:11px}.experience{display:block}.experience-head{position:static;margin-bottom:35px}.experience-items article{padding:20px 0}.experience-items h3{font-size:21px}.gallery{padding-top:0}.gallery .section-top{display:flex;align-items:end;gap:15px}.gallery .section-top .underlink{font-size:7px;white-space:nowrap}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:250px 155px 155px;gap:9px}.gallery-one{grid-column:span 2;grid-row:auto}.gallery-two{grid-column:auto}.gallery-three{grid-column:auto}.gallery-grid .photo-button img{object-fit:cover}.menu-card{padding:35px 7vw;min-height:320px}.menu-card h2{font-size:42px}.menu-card>p:not(.eyebrow){font-size:10px;max-width:300px}.menu-wordmark{font-size:110px;right:-6vw}.location{display:block}.location-title{margin-bottom:35px}.map-card{height:200px}.contact-columns{grid-template-columns:1fr 1fr;gap:8px 20px}.contact-columns>div:last-child{grid-column:1/-1}.footer{padding:25px 7vw 82px;grid-template-columns:1fr 1fr;gap:20px}.footer>.brand{grid-column:1/-1}.footer nav{flex-wrap:wrap;gap:14px}.footer-hours{grid-column:1/-1}.footer>small{grid-column:1/-1}.mobile-bar{display:block;position:fixed;z-index:9;left:0;right:0;bottom:0;padding:10px 6vw calc(10px + env(safe-area-inset-bottom));background:rgba(12,10,16,.95);border-top:1px solid var(--rule);backdrop-filter:blur(16px)}.mobile-bar a{display:flex;justify-content:space-between;align-items:center;background:var(--gold);color:#20140e;padding:14px 16px;font-size:9px;letter-spacing:.15em}.lightbox{padding:35px 14px}.lightbox img{max-width:84vw;max-height:70vh}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
