:root{--t-fast:.2s;--t-med:.3s;--t-slow:.6s;--space-md:120px;--shadow-soft:0 10px 30px -18px rgba(18,16,9,.25);--shadow-lift:0 26px 48px -24px rgba(18,16,9,.3);--ratio-card:3/2;--ratio-portrait:4/5;--ratio-wide:16/9;--font-fraunces:"Fraunces",serif;--font-manrope:"Manrope",sans-serif;--gold-text:#946c2a;--dur-fast:200ms;--dur-mid:300ms;--dur-slow:600ms;--dur-cinematic:1.2s;--ease:cubic-bezier(.22,1,.36,1);--radius-sharp:2px;--radius-pill:22px;--shadow-soft:0 24px 48px -24px rgba(18,16,9,.25);--space-sm:80px;--space-md:130px;--space-lg:160px;--ink:#121009;--ink-2:#1c1810;--paper:#f6f3eb;--paper-2:#ede7d8;--gold:#c48f40;--gold-2:#debe7a;--champagne:#e8d9b0;--hairline:#dcd2b8;--muted:#6e6552;--radius:2px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-manrope),sans-serif;overflow-x:hidden}body.locked{overflow:hidden;height:100vh}h1,h2,h3,h4{font-family:var(--font-fraunces),serif;font-weight:500;line-height:1.04;letter-spacing:-.015em}em.fx{font-style:italic;font-weight:400;color:var(--gold)}a{color:inherit;text-decoration:none}.container{max-width:1360px;margin:0 auto;padding:0 48px}@media(max-width:700px){.container{padding:0 22px}}.eyebrow{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-text);font-weight:700;display:flex;align-items:center;gap:14px}.eyebrow:before{content:"";width:34px;height:1px;background:var(--gold)}.grain{position:fixed;inset:-100%;z-index:2;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grainShift 8s steps(10) infinite}@keyframes grainShift{0%,to{transform:translate(0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-4%)}60%{transform:translate(-3%,-2%)}80%{transform:translate(4%,2%)}}header{position:fixed;top:0;left:0;right:0;z-index:100;padding:26px 48px;display:flex;align-items:center;justify-content:space-between;transition:var(--t-slow) ease;border-bottom:1px solid transparent}header.scrolled{background:hsla(44,38%,94%,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:14px 48px;border-color:var(--hairline)}header.on-dark:not(.scrolled) .book-btn,header.on-dark:not(.scrolled) .logo,header.on-dark:not(.scrolled) .nav-mobile-toggle,header.on-dark:not(.scrolled) nav a{color:var(--paper)}header.on-light{background:hsla(44,38%,94%,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-color:var(--hairline)}header.on-light .logo,header.on-light .nav-mobile-toggle,header.on-light nav a{color:var(--ink)}@media(max-width:700px){header,header.scrolled{padding:16px 22px}}.logo{font-family:var(--font-fraunces),serif;font-size:21px;letter-spacing:.2em;font-weight:600}nav{display:flex;gap:36px;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase}nav a{position:relative;padding:4px 0;opacity:.8}nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--gold);transition:right var(--dur-mid) var(--ease)}nav a.active:after,nav a:hover:after{right:0}nav a.active,nav a:hover{opacity:1}.book-btn{border:1px solid var(--gold);padding:10px 24px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;transition:var(--t-med);position:relative;overflow:hidden}.book-btn:hover{background:var(--gold);color:var(--paper)!important}.nav-mobile-toggle{display:none}@media(max-width:900px){nav{display:none}.nav-mobile-toggle{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}}.mobile-menu-overlay{position:fixed;inset:0;z-index:150;background:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;opacity:0;visibility:hidden;transform:translateY(-12px);transition:var(--t-med)}.mobile-menu-overlay.open{opacity:1;visibility:visible;transform:none}.mobile-menu-close{position:absolute;top:22px;right:26px;background:none;border:none;color:var(--paper);font-size:30px;cursor:pointer}.mobile-menu-nav{display:flex;flex-direction:column;align-items:center;gap:22px}.mobile-menu-nav a{font-family:var(--font-fraunces),serif;font-size:28px;color:var(--paper)}.mobile-menu-nav a:hover{color:var(--gold-2)}.mobile-menu-nav a.book-btn{margin-top:10px;font-family:var(--font-manrope);font-size:12px;border-color:var(--gold-2)}@media(min-width:901px){.mobile-menu-overlay{display:none}}@keyframes revealIn{0%{opacity:0;transform:translateY(36px)}to{opacity:1;transform:none}}.reveal{opacity:1}html.anim .reveal{animation:revealIn .9s var(--ease) both}html.anim .reveal.rd1{animation-delay:.08s}html.anim .reveal.rd2{animation-delay:.16s}html.anim .reveal.rd3{animation-delay:.24s}html.anim .reveal.armed{animation-play-state:paused}@media(prefers-reduced-motion:reduce){html.anim .reveal{animation:none}}.line-reveal{overflow:hidden;padding-bottom:.16em;margin-bottom:-.16em}.line-reveal span{display:block;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}.line-reveal.visible span{transform:none}.zoom-frame{overflow:hidden;position:relative}.zoom-frame .ph{transition:transform var(--dur-cinematic) var(--ease)}.zoom-frame:hover .ph{transform:scale(1.06)}.ph{display:flex;align-items:center;justify-content:center;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);background:linear-gradient(145deg,var(--paper-2),#e4dcc8);width:100%;height:100%}.ph.dark{background:linear-gradient(145deg,#262116,#1c1810);color:hsla(44,38%,94%,.35)}section{padding:var(--space-md) 0;position:relative}@media(max-width:700px){section{padding:var(--space-sm) 0}}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:70px}@media(max-width:900px){.sec-head{flex-direction:column;align-items:flex-start;margin-bottom:44px}}.sec-head h2{font-size:clamp(34px,4.6vw,58px);margin-top:18px;max-width:15ch}.sec-num{font-family:var(--font-fraunces),serif;font-size:clamp(60px,7vw,110px);line-height:1;color:transparent;-webkit-text-stroke:1px var(--hairline);-webkit-user-select:none;-moz-user-select:none;user-select:none}.sec-note{margin-top:16px;color:var(--muted);font-size:15px;line-height:1.7;max-width:50ch}.marquee{background:var(--ink);color:var(--champagne);overflow:hidden;padding:20px 0;border-top:1px solid hsla(41,57%,63%,.25);border-bottom:1px solid hsla(41,57%,63%,.25)}.marquee-track{display:flex;gap:56px;width:max-content;animation:marq 28s linear infinite;font-family:var(--font-fraunces),serif;font-size:17px;letter-spacing:.06em;white-space:nowrap}.marquee-track i{font-style:normal;color:var(--gold-2)}@keyframes marq{to{transform:translateX(-50%)}}.btn-primary,.btn-secondary{display:inline-block;padding:16px 38px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;transition:var(--t-med);position:relative}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:var(--gold);color:var(--ink)}.btn-secondary{border:1px solid var(--ink)}.btn-secondary:hover{background:var(--ink);color:var(--paper)}.text-link{display:inline-flex;align-items:center;gap:10px;margin-top:28px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:5px}.text-link svg{transition:transform .35s}.text-link:hover svg{transform:translateX(5px)}footer{background:var(--ink);color:hsla(44,38%,94%,.62);padding:0;position:relative;z-index:10}.footer-word{font-family:var(--font-fraunces),serif;font-size:clamp(64px,14vw,220px);line-height:.9;color:transparent;-webkit-text-stroke:1px hsla(41,57%,63%,.28);text-align:center;padding:70px 0 30px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;grid-gap:40px;gap:40px;padding:40px 0 50px;border-bottom:1px solid hsla(44,38%,94%,.1)}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;row-gap:34px}}.footer-grid h2{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2);margin-bottom:16px;font-family:var(--font-manrope);font-weight:600}.footer-grid a,.footer-grid p{display:block;font-size:13.5px;margin-bottom:9px;color:hsla(44,38%,94%,.68)}.footer-grid a:hover{color:var(--gold-2)}.footer-bottom{display:flex;justify-content:space-between;padding:24px 0 30px;font-size:12px;color:hsla(44,38%,94%,.38);flex-wrap:wrap;gap:10px}.wa-float{position:fixed;bottom:26px;right:26px;z-index:90;width:54px;height:54px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;color:var(--ink);box-shadow:var(--shadow-soft);cursor:pointer;transition:var(--t-med);font-weight:700}.wa-float:hover{transform:scale(1.08)}.wa-float.hidden-over-footer{opacity:0;pointer-events:none;transform:scale(.8)}.page-hero{height:62vh;min-height:440px;position:relative;display:flex;align-items:flex-end;background:var(--ink);color:var(--paper);overflow:hidden}.page-hero .ph,.page-hero:after{position:absolute;inset:0}.page-hero:after{content:"";background:linear-gradient(180deg,rgba(18,16,9,.2),rgba(18,16,9,.72))}.page-hero-content{position:relative;z-index:3;padding:0 48px 64px;width:100%}@media(max-width:700px){.page-hero-content{padding:0 22px 44px}}.page-hero h1{font-size:clamp(38px,6vw,78px);color:var(--paper);max-width:18ch}.breadcrumb{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:hsla(44,38%,94%,.5);margin-bottom:18px}.breadcrumb a:hover{color:var(--gold-2)}.page-hero .eyebrow{color:var(--gold-2);margin-bottom:16px}.page-hero .eyebrow:before{background:var(--gold-2)}#pageFade{position:fixed;inset:0;z-index:999;background:var(--ink);display:flex;align-items:center;justify-content:center;transition:opacity .55s,visibility .55s}#pageFade.hide{opacity:0;visibility:hidden;pointer-events:none}.page-fade-logo{font-family:var(--font-fraunces),serif;font-size:26px;letter-spacing:.22em;color:var(--gold-2);opacity:0;transition:opacity var(--dur-mid) var(--ease)}#pageFade.show-logo .page-fade-logo{opacity:1}#preloader{position:fixed;inset:0;z-index:1000;background:var(--ink);display:flex;align-items:center;justify-content:center;transition:opacity .8s ease,visibility .8s ease}#preloader.hide{opacity:0;visibility:hidden;pointer-events:none}.trace-wrap{position:relative;text-align:center}.trace-letters{font-family:var(--font-fraunces),serif;font-size:56px;letter-spacing:.2em}.trace-path{fill:none;stroke:var(--gold-2);stroke-width:1.2;stroke-dasharray:1400;stroke-dashoffset:1400;animation:traceLine 2s ease forwards}.trace-fill{fill:var(--gold-2);opacity:0;animation:fillIn .6s ease 1.9s forwards}@keyframes traceLine{to{stroke-dashoffset:0}}@keyframes fillIn{to{opacity:1}}.pre-count{position:absolute;bottom:-58px;left:0;right:0;font-family:var(--font-fraunces),serif;font-size:13px;letter-spacing:.3em;color:hsla(44,38%,94%,.4)}.hero{height:100vh;position:relative;display:flex;align-items:flex-end;background:var(--ink);color:var(--paper);overflow:hidden}.hero-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:hsla(44,38%,94%,.28);font-size:11px;letter-spacing:.2em;text-transform:uppercase;background:linear-gradient(160deg,#1c1810,#121009)}.hero-word{position:absolute;top:50%;left:50%;transform:translate(-50%,-56%);font-family:var(--font-fraunces),serif;font-size:clamp(120px,26vw,420px);line-height:1;color:transparent;-webkit-text-stroke:1px hsla(41,57%,63%,.14);-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;white-space:nowrap}@media(min-width:768px){.hero-word{display:none}}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,16,9,.1) 30%,rgba(18,16,9,.82))}.hero-content{position:relative;z-index:3;padding:0 48px 90px;width:100%}@media(max-width:700px){.hero-content{padding:0 22px 64px}}.hero-eyebrow{font-size:11.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-2);margin-bottom:24px;display:flex;align-items:center;gap:16px}.hero-eyebrow:before{content:"";width:44px;height:1px;background:var(--gold-2)}.hero h1{font-size:clamp(44px,7.4vw,104px);color:var(--paper);max-width:14ch}.hero-sub{margin-top:26px;max-width:44ch;font-size:16.5px;color:hsla(44,38%,94%,.72);font-weight:300;line-height:1.7}.hero-meta{position:absolute;right:48px;bottom:150px;z-index:3;text-align:right;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:hsla(44,38%,94%,.45);line-height:2.2}@media(max-width:900px){.hero-meta{display:none}}.hero-scroll{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:3;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:hsla(44,38%,94%,.55);display:flex;flex-direction:column;align-items:center;gap:10px}.hero-scroll .line{width:1px;height:40px;background:hsla(44,38%,94%,.35);position:relative;overflow:hidden}.hero-scroll .line:after{content:"";position:absolute;top:-100%;left:0;width:100%;height:100%;background:var(--gold-2);animation:scrollLine 1.9s ease-in-out infinite}@keyframes scrollLine{0%{top:-100%}50%{top:0}to{top:100%}}.story{display:grid;grid-template-columns:1fr 1fr;grid-gap:80px;gap:80px;align-items:center}@media(max-width:900px){.story{grid-template-columns:1fr;gap:36px}}.story-img{aspect-ratio:var(--ratio-portrait)}.story-copy h2{font-size:clamp(32px,4vw,52px);margin-top:18px}.story-copy p{margin-top:20px;color:var(--muted);line-height:1.8;font-size:15.5px}.rooms-wrap{background:var(--paper)}.room-showcase{display:grid;grid-template-columns:1fr 1fr}@media(max-width:900px){.room-showcase{grid-template-columns:1fr}}.room-media{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden}@media(max-width:900px){.room-media{position:relative;height:52vh}}.room-slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}.room-slide.active{opacity:1}.room-progress{position:absolute;bottom:34px;left:34px;z-index:5;display:flex;gap:8px}.room-progress i{width:26px;height:2px;background:rgba(18,16,9,.2);transition:var(--t-med)}.room-progress i.on{background:var(--gold)}.room-block,.room-blocks{display:flex;flex-direction:column}.room-block{min-height:100vh;justify-content:center;padding:0 72px;border-bottom:1px solid var(--hairline)}@media(max-width:900px){.room-block{min-height:auto;padding:52px 22px}}.room-idx{font-family:var(--font-fraunces),serif;font-size:15px;color:var(--gold-text);letter-spacing:.14em}.room-block h3{font-size:clamp(30px,3.4vw,46px);margin-top:14px}.room-meta{display:flex;gap:16px;margin-top:14px;font-size:12px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.room-block p.desc{margin-top:18px;color:var(--muted);line-height:1.75;max-width:44ch;font-size:15px}.room-price-row{margin-top:28px;display:flex;align-items:baseline;gap:22px}.room-price-row .amount{font-family:var(--font-fraunces),serif;font-size:22px;color:var(--gold)}.panoramic{height:72vh;position:relative;overflow:hidden;background:var(--ink)}.panoramic .ph{position:absolute;inset:-12%;height:auto}.panoramic:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,16,9,.15),rgba(18,16,9,.6))}.pan-caption{position:absolute;bottom:44px;left:48px;color:var(--paper);z-index:3}@media(max-width:700px){.pan-caption{left:22px;bottom:30px}}.pan-caption h3{font-size:clamp(26px,3.4vw,42px);margin-top:12px;max-width:22ch}.pan-caption .eyebrow{color:var(--gold-2)}.pan-caption .eyebrow:before{background:var(--gold-2)}.vip{background:var(--ink);color:var(--paper);overflow:hidden}.vip .sec-num{-webkit-text-stroke-color:hsla(41,57%,63%,.22)}.vip .eyebrow{color:var(--gold-2)}.vip .eyebrow:before{background:var(--gold-2)}.vip-grid{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:80px;gap:80px;align-items:center}@media(max-width:900px){.vip-grid{grid-template-columns:1fr;gap:40px}}.vip h2{color:var(--paper);font-size:clamp(36px,5vw,64px);margin-top:18px}.vip h2 .stroke{color:transparent;-webkit-text-stroke:1px var(--gold-2)}.vip p{margin-top:20px;color:hsla(44,38%,94%,.66);line-height:1.8;font-size:15.5px;max-width:46ch}.vip-img{aspect-ratio:var(--ratio-portrait)}.vip .text-link{color:var(--paper);border-color:var(--gold-2)}.vip-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.vip-tags span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;border:1px solid hsla(41,57%,63%,.4);padding:7px 14px;border-radius:var(--radius-pill);color:var(--champagne)}.standard{background:var(--paper-2)}.standard-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--hairline);border:1px solid var(--hairline)}@media(max-width:700px){.standard-grid{grid-template-columns:1fr}}.standard-col{background:var(--paper);padding:52px}@media(max-width:700px){.standard-col{padding:34px 24px}}.standard-col h3{font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:26px;font-family:var(--font-manrope);font-weight:700}.standard-col.yes h3{color:var(--gold-text)}.standard-col ul{list-style:none}.standard-col li{display:flex;gap:12px;font-size:14.5px;color:var(--muted);margin-bottom:15px;line-height:1.5}.standard-col.yes li:before{content:"—";color:var(--gold);font-weight:700}.standard-col.no li:before{content:"·";color:#b3a893;font-weight:700}.fine-print{margin-top:24px;font-size:12.5px;color:var(--muted);font-style:italic}.dining-teaser{background:var(--ink);color:var(--paper)}.dining-teaser .eyebrow{color:var(--gold-2)}.dining-teaser .eyebrow:before{background:var(--gold-2)}.dining-teaser .sec-num{-webkit-text-stroke-color:hsla(41,57%,63%,.22)}.dt-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:80px;gap:80px;align-items:center}@media(max-width:900px){.dt-grid{grid-template-columns:1fr;gap:40px}}.dt-grid h2{color:var(--paper);font-size:clamp(32px,4.4vw,56px);margin-top:18px}.dt-grid p{margin-top:20px;color:hsla(44,38%,94%,.66);line-height:1.8;font-size:15.5px}.dt-grid .text-link{color:var(--paper);border-color:var(--gold-2)}.dt-img{aspect-ratio:var(--ratio-portrait)}.mosaic{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:110px;grid-gap:16px;gap:16px}@media(max-width:900px){.mosaic{grid-auto-rows:90px}}.m1{grid-column:span 5;grid-row:span 3}.m2{grid-column:span 4;grid-row:span 2}.m3{grid-column:span 3;grid-row:span 3}.m4{grid-column:span 4;grid-row:span 2}.m5{grid-column:span 3;grid-row:span 1}@media(max-width:700px){.m1,.m2,.m3,.m4,.m5{grid-column:span 6;grid-row:span 2}}.testi-track{display:flex;gap:48px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px;scrollbar-width:none}.testi-track::-webkit-scrollbar{display:none}.testi{flex:0 0 500px;max-width:86vw;scroll-snap-align:start;border-left:2px solid var(--gold);padding-left:30px}.testi .stars{font-size:13px;letter-spacing:3px;color:rgba(146,108,42,.26);margin-bottom:14px}.testi .stars .on{color:var(--gold)}.testi .who{font-family:var(--font-fraunces),serif;font-size:18px;line-height:1.2}.testi .ctx{margin:3px 0 16px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.testi p.quote{font-family:var(--font-fraunces),serif;font-size:20px;font-style:italic;line-height:1.55}.contact{background:var(--paper-2);text-align:center}.contact h2{font-size:clamp(34px,5.4vw,66px);max-width:16ch;margin:20px auto 0}.contact p{max-width:46ch;margin:20px auto 0;color:var(--muted);line-height:1.75}.contact-actions{display:flex;gap:18px;justify-content:center;margin-top:40px;flex-wrap:wrap}.occasion-note{margin-top:30px;font-size:13.5px;color:var(--muted);font-style:italic}#cookieBanner{position:fixed;left:24px;right:24px;bottom:-160px;z-index:95;max-width:560px;margin:0 auto;background:var(--ink);color:var(--paper);border:1px solid hsla(41,57%,63%,.3);padding:22px 26px;box-shadow:var(--shadow-lift);transition:bottom .6s ease}#cookieBanner.show{bottom:26px}#cookieBanner p{font-size:13.5px;line-height:1.6;color:hsla(44,38%,94%,.75)}#cookieBanner .cookie-actions{display:flex;gap:12px;margin-top:16px}#cookieBanner button{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding:10px 18px;cursor:pointer;border:1px solid var(--gold-2);background:transparent;color:var(--paper)}#cookieBanner button.accept{background:var(--gold-2);color:var(--ink)}.rooms-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:44px;gap:44px}@media(max-width:900px){.rooms-grid{grid-template-columns:1fr}}.room-card{border:1px solid var(--hairline);background:var(--paper);transition:transform var(--dur-slow) var(--ease),box-shadow var(--dur-slow) var(--ease)}.room-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lift)}.room-card .zoom-frame{aspect-ratio:var(--ratio-card)}.rc-body{padding:30px}.rc-body h2{font-size:26px;margin-top:10px}.rc-meta{display:flex;gap:16px;margin-top:12px;font-size:11.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.rc-body p.desc{margin-top:14px;color:var(--muted);line-height:1.7;font-size:14.5px}.rc-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.rc-tags span{font-size:10px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--hairline);padding:5px 11px;border-radius:var(--radius-pill);color:var(--muted)}.rc-foot{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding-top:20px;border-top:1px solid var(--hairline)}.rc-foot .amount{font-family:var(--font-fraunces),serif;font-size:20px;color:var(--gold-text)}.split{display:grid;grid-template-columns:1fr 1fr;grid-gap:80px;gap:80px;align-items:center}@media(max-width:900px){.split{grid-template-columns:1fr;gap:36px}}.split .zoom-frame{aspect-ratio:var(--ratio-portrait)}.split-copy h2{font-size:clamp(30px,4vw,50px);margin-top:16px}.split-copy p{margin-top:18px;color:var(--muted);line-height:1.8;font-size:15.5px}.hours-row{display:flex;justify-content:space-between;font-size:14px;padding:13px 0;border-bottom:1px solid var(--hairline)}.hours-row span:last-child{color:var(--muted)}.cats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--hairline);border:1px solid var(--hairline)}@media(max-width:900px){.cats{grid-template-columns:1fr}}.cat{background:var(--paper);padding:44px 32px}.cat .num{font-family:var(--font-fraunces),serif;font-size:30px;color:var(--gold-text);margin-bottom:14px}.cat h3{font-size:17px;margin-bottom:10px}.cat p{font-size:13.5px;color:var(--muted);line-height:1.65}.dark-band{background:var(--ink);color:var(--paper)}.dark-band .eyebrow{color:var(--gold-2)}.dark-band .eyebrow:before{background:var(--gold-2)}.dark-band h2{color:var(--paper)}.dark-band p{color:hsla(44,38%,94%,.66)}.dark-band .text-link{color:var(--paper);border-color:var(--gold-2)}.dark-band .zoom-frame{aspect-ratio:4/5}.quote-pull{max-width:760px;margin:0 auto;text-align:center}.quote-pull p{font-family:var(--font-fraunces),serif;font-style:italic;font-size:clamp(24px,3.2vw,36px);line-height:1.45}.quote-pull .name{margin-top:20px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.testi-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--hairline);border:1px solid var(--hairline)}@media(max-width:900px){.testi-grid{grid-template-columns:1fr}}.testi-card{background:var(--paper);padding:46px}@media(max-width:700px){.testi-card{padding:32px 24px}}.testi-card .stars{font-size:13px;letter-spacing:3px;color:rgba(146,108,42,.26);margin-bottom:14px}.testi-card .stars .on{color:var(--gold)}.testi-card .who{font-family:var(--font-fraunces),serif;font-size:18px;line-height:1.2}.testi-card .ctx{margin:3px 0 16px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.testi-card p.quote{font-family:var(--font-fraunces),serif;font-style:italic;font-size:18px;line-height:1.6}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;grid-gap:80px;gap:80px;align-items:start}@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:44px}}.contact-details{display:grid;grid-template-columns:1fr 1fr;grid-gap:26px;gap:26px;margin-top:36px}.contact-details h3{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-text);margin-bottom:8px;font-family:var(--font-manrope);font-weight:700}.contact-details p{font-size:14.5px;color:var(--muted);line-height:1.6}.c-form{background:var(--paper);border:1px solid var(--hairline);padding:44px}@media(max-width:700px){.c-form{padding:26px 20px}}.c-form label{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:20px}.c-form input,.c-form select,.c-form textarea{display:block;width:100%;margin-top:9px;padding:13px 14px;font-family:var(--font-manrope);font-size:14.5px;color:var(--ink);background:var(--paper-2);border:1px solid var(--hairline);outline:none;transition:border-color var(--t-med)}.c-form input:focus,.c-form select:focus,.c-form textarea:focus{border-color:var(--gold)}.c-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}@media(max-width:700px){.c-row{grid-template-columns:1fr}}.c-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px}.c-actions button{cursor:pointer;border:none;font-family:var(--font-manrope)}.c-actions .btn-secondary{border:1px solid var(--ink);background:transparent}.c-note{margin-top:18px;font-size:12.5px;color:var(--muted);line-height:1.6}.c-note a{border-bottom:1px solid var(--gold)}.map-wrap{border:1px solid var(--hairline);filter:grayscale(.35) sepia(.12);overflow:hidden}.legal-page section{padding-top:var(--space-lg)}.legal-wrap{max-width:760px}.legal-back{display:inline-block;margin-bottom:30px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);transition:color var(--t-fast)}.legal-back:hover{color:var(--gold-text)}.legal-wrap h1{font-size:clamp(34px,5vw,58px);margin-top:16px}.legal-date{margin-top:14px;font-size:12.5px;color:var(--muted);font-style:italic}.legal-wrap h2{font-size:18px;margin-top:44px;margin-bottom:12px}.legal-wrap p{color:var(--muted);line-height:1.85;font-size:15px;margin-bottom:12px}.legal-wrap a{border-bottom:1px solid var(--gold)}.legal-wrap code{background:var(--paper-2);padding:2px 7px;font-size:13px}.price-wrap{display:inline-flex;align-items:baseline;gap:12px;flex-wrap:wrap}.price-badge{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;background:var(--gold);color:var(--paper);padding:4px 10px;border-radius:var(--radius-pill);font-weight:700}.price-old{font-size:14px;color:var(--muted);text-decoration:line-through;font-family:var(--font-manrope)}.price-until{flex-basis:100%;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-text);font-weight:600}.brand{display:inline-flex;align-items:center;gap:12px}.logo-mark{height:40px;width:auto;display:block}header.scrolled .logo-mark{height:32px}.brand .logo{letter-spacing:.2em}.footer-brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}.footer-brand img{height:46px;width:auto}.footer-brand span{font-family:var(--font-fraunces),serif;font-size:19px;letter-spacing:.14em;color:var(--paper)}.pre-stage{position:relative;width:230px;height:230px;margin:0 auto;display:flex;align-items:center;justify-content:center}.pre-ring{position:absolute;inset:0;transform:rotate(-90deg)}.pre-ring .ring-main{fill:none;stroke:var(--gold-2);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:660;stroke-dashoffset:660;animation:ringTrace 1.9s cubic-bezier(.6,.05,.25,1) .15s forwards}.pre-ring .ring-halo{fill:none;stroke:hsla(41,57%,63%,.22);stroke-width:.8;stroke-dasharray:710;stroke-dashoffset:710;animation:ringTrace 2.3s ease .35s forwards}@keyframes ringTrace{to{stroke-dashoffset:0}}.pre-logo{width:128px;height:auto;opacity:0;transform:scale(.9);animation:logoIn .9s cubic-bezier(.22,1,.36,1) 1.55s forwards}@keyframes logoIn{to{opacity:1;transform:scale(1)}}.pre-word{margin-top:26px;font-family:var(--font-fraunces),serif;font-size:15px;letter-spacing:.42em;color:var(--champagne);opacity:0;animation:fadeUp .8s ease 2s forwards;text-align:center}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.page-fade-inner{display:flex;flex-direction:column;align-items:center;gap:12px}.page-fade-inner img{width:54px;height:auto}.ph-img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}.ph{position:relative}.zoom-frame .ph-img{transition:transform var(--dur-cinematic) var(--ease)}.zoom-frame:hover .ph-img{transform:scale(1.06)}.hero-bg .ph-img,.page-hero .ph-img{position:absolute;inset:0}.btn-gold{display:inline-block;padding:16px 38px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;transition:var(--t-med);background:var(--gold);color:var(--paper)}.btn-gold:hover{background:var(--ink);color:var(--paper)}.btn-ghost{display:inline-block;padding:16px 38px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;transition:var(--t-med);border:1px solid hsla(44,38%,94%,.4);color:var(--paper)}.btn-ghost:hover{border-color:var(--gold-2);color:var(--gold-2)}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s ease}.hero-video.playing{opacity:1}.room-detail-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:70px;gap:70px;align-items:start}@media(max-width:900px){.room-detail-grid{grid-template-columns:1fr;gap:40px}}.rd-gallery{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.rd-gallery .zoom-frame{aspect-ratio:var(--ratio-card);position:relative}.rd-gallery .zoom-frame:first-child{grid-column:span 2;aspect-ratio:var(--ratio-wide)}.rd-specs{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--hairline);border:1px solid var(--hairline);margin-top:34px}.rd-spec{background:var(--paper);padding:20px 22px}.rd-spec h3{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-text);margin-bottom:7px;font-family:var(--font-manrope);font-weight:700}.rd-spec p{font-size:14.5px;color:var(--ink)}.rd-amenities{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.rd-amenities span{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--hairline);padding:7px 14px;border-radius:var(--radius-pill);color:var(--muted)}.rd-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:36px}.rd-placeholder{aspect-ratio:var(--ratio-wide);border:1px dashed var(--hairline);display:flex;justify-content:center;flex-direction:column;font-size:12px;background:var(--paper-2)}.back-link,.rd-placeholder{align-items:center;gap:10px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase}.back-link{display:inline-flex;font-size:11.5px;margin-bottom:30px}.back-link:hover{color:var(--gold)}.c-status{margin-top:16px;font-size:13.5px;padding:13px 16px;border:1px solid var(--hairline)}.c-status.ok{border-color:#7ba05b;color:#4d6b37;background:#f2f6ec}.c-status.err{border-color:#b3543f;color:#8a3a28;background:#faf0ed}.hp-field{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}.booking-bar{max-width:1080px;background:var(--ink);border:1px solid hsla(41,60%,67%,.28);box-shadow:var(--shadow-lift);display:grid;grid-template-columns:1fr 1fr .7fr .7fr auto;grid-gap:1px;gap:1px;background-clip:padding-box}@media(max-width:1140px){.booking-bar{margin:-46px 22px 0}}@media(max-width:900px){.booking-bar{grid-template-columns:1fr 1fr;margin:-30px 22px 0}}.bb-field{background:var(--ink);padding:18px 22px;border-right:1px solid hsla(44,38%,94%,.08)}.bb-field:last-of-type{border-right:none}.bb-field label{display:block;font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-2);margin-bottom:7px;font-weight:700}.bb-field input,.bb-field select{width:100%;background:transparent;border:none;outline:none;color:var(--paper);font-family:var(--font-manrope);font-size:14px;color-scheme:dark}.bb-btn{display:flex;align-items:center;justify-content:center;background:var(--gold);color:var(--ink);padding:0 38px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;transition:var(--t-med)}.bb-btn:hover{background:var(--gold-2)}@media(max-width:900px){.bb-btn{grid-column:span 2;padding:17px 0}}.booking-bar{position:relative;z-index:20;max-width:1100px;margin:-46px auto 0;padding:0 24px}.booking-bar form{background:var(--paper);border:1px solid var(--hairline);box-shadow:var(--shadow-soft);display:grid;grid-template-columns:1fr 1fr .7fr .7fr auto;grid-gap:0;gap:0;align-items:stretch}.booking-bar label{display:flex;flex-direction:column;gap:7px;padding:18px 22px;border-right:1px solid var(--hairline);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:700}.booking-bar input,.booking-bar select{border:none;background:transparent;font-family:var(--font-manrope);font-size:14.5px;color:var(--ink);outline:none;padding:0}.bb-btn{border:none;cursor:pointer;font-family:var(--font-manrope);padding:0 40px}@media(max-width:900px){.booking-bar{margin-top:-24px}.booking-bar form{grid-template-columns:1fr 1fr}.booking-bar label{border-bottom:1px solid var(--hairline)}.bb-btn{grid-column:span 2;padding:17px}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.rb-mobile{display:none}@media(max-width:900px){.room-media{display:none}.rb-mobile{display:block;position:relative;aspect-ratio:16/10;margin-bottom:22px;overflow:hidden}.room-block{padding:44px 22px}}.bmodal-backdrop{position:fixed;inset:0;z-index:300;background:rgba(18,16,9,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:22px;opacity:0;visibility:hidden;transition:opacity var(--dur-mid) var(--ease),visibility var(--dur-mid) var(--ease)}.bmodal-backdrop.open{opacity:1;visibility:visible}.bmodal{background:var(--paper);max-width:520px;width:100%;padding:44px;position:relative;transform:translateY(14px);transition:transform var(--dur-mid) var(--ease)}.bmodal-backdrop.open .bmodal{transform:none}@media(max-width:700px){.bmodal{padding:30px 22px}}.bmodal h3{font-size:26px;margin:12px 0 24px}.bmodal label{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:16px}.bmodal input,.bmodal select{display:block;width:100%;margin-top:8px;padding:12px 13px;font-family:var(--font-manrope);font-size:14.5px;background:var(--paper-2);border:1px solid var(--hairline);outline:none}.bmodal .b-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.bmodal-close{position:absolute;top:14px;right:18px;background:none;border:none;font-size:26px;cursor:pointer;color:var(--muted)}[data-lightbox] [data-full]{cursor:zoom-in}.lb{position:fixed;inset:0;z-index:2000;background:rgba(10,9,5,.94);display:flex;align-items:center;justify-content:center;padding:40px;animation:lbIn .25s var(--ease) both}@keyframes lbIn{0%{opacity:0}to{opacity:1}}.lb-figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px}.lb-figure img{max-width:92vw;max-height:82vh;object-fit:contain;box-shadow:0 24px 70px rgba(0,0,0,.5)}.lb-count{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-2)}.lb-close{top:18px;right:26px;font-size:40px;z-index:2}.lb-close,.lb-nav{position:fixed;background:none;border:none;color:var(--paper);line-height:1;cursor:pointer}.lb-nav{top:50%;transform:translateY(-50%);font-size:60px;padding:0 18px;opacity:.65;transition:opacity var(--t-fast)}.lb-nav:hover{opacity:1}.lb-prev{left:6px}.lb-next{right:6px}@media(max-width:700px){.lb-nav{font-size:40px;padding:0 8px}.lb-close{font-size:34px;top:12px;right:16px}.lb-figure img{max-height:78vh}}