@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Manrope:wght@400;500;600&display=swap');
.hotel-experience{--paper:#f4f0e8;--ink:#252b2c;--night:#181d1e;--bronze:#d8bd95;--line:#b8b5ac}
@scope (.hotel-experience){
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.7 Manrope,Arial,sans-serif}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,canvas:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #b36c25;outline-offset:5px}button:disabled{opacity:.6;cursor:default}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.02;letter-spacing:-.035em}.skip{position:fixed;left:16px;top:-100px;background:#fff;padding:15px;z-index:100}.skip:focus{top:16px}.site-header{position:absolute;top:0;left:0;right:0;z-index:10;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;color:white;border-bottom:1px solid #ffffff42}.wordmark{font:32px Georgia,serif;letter-spacing:.22em}.site-header nav{display:flex;align-items:center;gap:35px}.site-header button{border:1px solid #ffffff80;color:white;background:#1721295c;padding:11px 20px}.arrival{height:310svh}.arrival-screen{position:sticky;top:0;height:100svh;min-height:530px;overflow:hidden;background:var(--night);color:#fff}.arrival-images,.arrival-images img,.arrival-shade{position:absolute;inset:0;width:100%;height:100%}.arrival-images img{object-fit:cover;opacity:0}.arrival-images img:first-child{opacity:1}.arrival-shade{background:linear-gradient(180deg,#10191d66,transparent 35%,#0f1b20bd)}.hero-title{position:absolute;left:7%;bottom:24%;max-width:800px}.hero-title h1{font-size:clamp(65px,8.7vw,140px)}.hero-title p{margin-top:25px;font-size:16px}.arrival-footer{position:absolute;left:5%;right:5%;bottom:60px;display:flex;justify-content:space-between;align-items:end}.chapter-number,.section-index{font-size:12px;letter-spacing:.16em}.arrival-footer p{font-size:22px;font-family:Georgia,serif;margin-top:12px}.round-link{display:grid;place-items:center;width:52px;height:52px;border:1px solid #ffffff8c;border-radius:50%;font-size:22px}.arrival-line{position:absolute;bottom:36px;left:5%;right:5%;height:1px;background:#ffffff50}.arrival-line span{display:block;width:100%;height:100%;background:var(--bronze);transform:scaleX(0);transform-origin:left}.arrival-caption-note{position:absolute;bottom:10px;right:5%;font-size:12px;color:#fff}.intro{padding:130px 9%;display:grid;grid-template-columns:1fr 2fr;gap:30px 80px}.intro .section-index{grid-column:1/-1}.intro h2{font-size:clamp(56px,6vw,90px)}.intro>p:last-child{align-self:end;max-width:380px;line-height:1.9}.experience{height:300svh;background:var(--night);color:#f6f0e6}.experience-screen{height:100svh;min-height:650px;position:sticky;top:0;padding:34px 5% 24px;display:flex;flex-direction:column;gap:20px;overflow:hidden}.experience-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:8px 30px}.experience-heading .section-index{grid-column:1/-1;color:#d6c3a7}.experience-heading h2{font-size:clamp(40px,4.8vw,68px)}.experience-heading>p{justify-self:end;font-size:13px;max-width:300px}.experience-frame{position:relative;flex:1;min-height:300px;background:#212627;overflow:hidden;transform-origin:center}.renderings,.renderings img,#spatial-canvas,.frame-shade{position:absolute;inset:0;width:100%;height:100%}.renderings img{object-fit:cover}#bar-render{opacity:0}#spatial-canvas{opacity:0;transition:opacity .55s;touch-action:pan-y;cursor:grab}.renderings{transition:opacity .55s}.experience-frame[data-mode="3d"] #spatial-canvas{opacity:1}.experience-frame[data-mode="3d"] .renderings{opacity:0}.frame-shade{pointer-events:none;background:linear-gradient(#0006,transparent 25%,transparent 60%,#0009)}.frame-top,.frame-bottom{position:absolute;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between;gap:20px;pointer-events:none}.frame-top{top:20px}.frame-top span{font-size:12px}.frame-top button,.frame-bottom button{pointer-events:auto;border:1px solid #ffffff7a;color:#fff;background:#171e1edb;padding:10px 16px;font-size:12px;min-height:44px}.frame-bottom{bottom:25px}.frame-bottom h3{font-size:38px}.frame-bottom p{font-size:12px;margin-top:8px;max-width:430px}.route-line{display:flex;align-items:center;gap:22px}.route-line button{background:none;border:0;color:inherit;padding:8px 0;font-size:12px;min-height:44px}.route-line>span{height:1px;background:#ffffff3d;flex:1}.route-line i{display:block;width:100%;height:100%;background:var(--bronze);transform:scaleX(0);transform-origin:left}#load-status{position:absolute;top:85px;right:25px;padding:0 12px;max-width:320px;background:#181d1ee8;font-size:12px}#load-status:not(:empty){padding:10px 12px}.stay{padding:110px 7% 0}.stay-heading{display:grid;grid-template-columns:1fr 1fr;gap:24px}.stay-heading .section-index{grid-column:1/-1}.stay-heading h2{font-size:clamp(65px,7vw,110px)}.stay-heading>p:last-child{align-self:end;justify-self:end}.collage{display:grid;grid-template-columns:1.1fr .9fr;gap:55px 65px;margin-top:65px;align-items:start}.tile{background:none;border:0;padding:0;text-align:left;overflow:hidden}.tile img{width:100%;height:440px;object-fit:cover;display:block;transition:transform .8s}.tile:hover img{transform:scale(1.025)}.tile>span{display:block;position:relative;border-bottom:1px solid var(--line);padding:18px 0 22px;font:26px Georgia,serif}.tile small{display:block;font:12px Manrope,Arial,sans-serif;letter-spacing:.15em;margin-bottom:10px}.tile b{float:right;font-weight:400}.tile.pool{margin-top:130px}.tile.pool img{height:330px}.tile.dining img{height:360px}.tile.gym{margin-top:80px}.tile.gym img{height:340px}.stay-cta{text-align:center;padding:140px 0}.stay-cta h2{font-size:clamp(60px,7vw,100px);margin:20px 0 35px}.solid-button{display:inline-block;padding:16px 25px;border:1px solid var(--night);background:var(--night);color:#fff}.stay-cta small{display:block;margin-top:20px;font-size:12px}footer{padding:50px 5%;display:flex;justify-content:space-between;align-items:start;gap:30px;background:var(--night);color:#eee9df;font-size:12px}footer p{margin:15px 0}footer a:not(.wordmark){border-bottom:1px solid #ffffff60;padding-bottom:6px}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s,transform .75s}.js-motion .reveal.visible{opacity:1;transform:none}.tile:nth-child(even){transition-delay:.12s}dialog{width:min(960px,92vw);max-height:90svh;border:0;padding:30px;background:var(--paper);color:var(--ink);overflow:auto}dialog::backdrop{background:#11191ddd;backdrop-filter:blur(7px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;font-size:12px;letter-spacing:.14em}.dialog-top button{width:44px;height:44px;border:1px solid var(--line);background:transparent}dialog h2{font-size:56px;margin:18px 0 22px}#space-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}#space-grid button{padding:0;background:none;border:1px solid var(--line);text-align:left}#space-grid img{width:100%;height:130px;object-fit:cover;display:block}#space-grid span{display:block;padding:14px}#room-image{display:block;width:100%;max-height:55svh;object-fit:cover}#room-routes{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}#room-routes button{border:1px solid var(--line);padding:12px 16px;background:none}.room-detail p{max-width:600px}#booking{max-width:570px}#booking>p{font-size:13px}form{display:grid;gap:20px;margin-top:25px}form label{display:grid;gap:8px;font-size:12px}input,select{min-height:48px;width:100%;border:1px solid #8d918b;background:transparent;padding:10px;color:inherit}.date-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}#stay-summary{font-size:13px}
@media(max-width:700px){.site-header{padding:24px 6%}.wordmark{font-size:24px}.site-header nav{gap:16px;font-size:12px}.site-header nav>a{display:none}.site-header button{padding:9px 13px}.arrival{height:260svh}.hero-title{left:7%;bottom:27%;right:6%}.hero-title h1{font-size:clamp(56px,12vw,84px)}.hero-title p{font-size:14px}.arrival-footer{left:7%;right:7%}.arrival-footer p{font-size:19px}.intro{padding:75px 7%;grid-template-columns:1fr;gap:25px}.intro .section-index{grid-column:auto}.intro>p:last-child{max-width:340px}.experience{height:260svh}.experience-screen{padding:25px 5% 16px;gap:15px;min-height:620px}.experience-heading{display:block}.experience-heading h2{font-size:44px;margin:12px 0}.experience-heading>p{font-size:12px}.frame-top,.frame-bottom{left:16px;right:16px;gap:12px}.frame-top span{font-size:12px;max-width:100px}.frame-top button{font-size:12px;padding:9px 12px}.frame-bottom h3{font-size:30px}.frame-bottom p{font-size:12px;max-width:210px}.frame-bottom button{white-space:nowrap;font-size:12px}.stay{padding:75px 7% 0}.stay-heading{grid-template-columns:1fr}.stay-heading .section-index{grid-column:auto}.stay-heading h2{font-size:64px}.stay-heading>p:last-child{justify-self:start}.collage{gap:35px;grid-template-columns:1fr;margin-top:40px}.tile.pool,.tile.gym{margin-top:0}.tile img,.tile.pool img,.tile.gym img,.tile.dining img{height:350px}.tile>span{font-size:23px}.stay-cta{padding:90px 0}.stay-cta h2{font-size:64px}footer{flex-direction:column;padding:40px 7%;gap:20px}dialog{padding:20px}dialog h2{font-size:44px}#space-grid{grid-template-columns:1fr 1fr}#space-grid img{height:100px}#space-grid span{font-size:12px;padding:12px}.date-row{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.arrival,.experience{height:auto}.arrival-screen{position:relative}.experience-screen{position:relative;height:850px;max-height:none}.js-motion .reveal{opacity:1;transform:none}.tile img{transform:none!important}}

/* Readable controls and text over changing architectural imagery. */
.site-header{background:#181d1e;color:#fff}.site-header button,.round-link{background:#181d1e}.arrival-shade{background:linear-gradient(90deg,#10191d99,transparent 80%),linear-gradient(180deg,#10191d44,transparent 35%,#0f1b20d9)}.frame-top>span{padding:8px 12px;background:#181d1e;color:#fff}.frame-bottom>div{padding:12px 16px;background:#181d1ef2}.arrival-caption-note{padding:3px 8px;background:#181d1e}.experience-heading h2{grid-column:1}.intro h2{grid-column:1}.intro>p:last-child{grid-column:2}.stay-heading h2{grid-column:1}@media(max-width:700px){.intro>p:last-child{grid-column:1}.frame-bottom>div{padding:10px}.frame-bottom p{font-size:12px}.frame-top span{max-width:130px}}

/* Photographic camera movement is scrubbed by native document scroll. */
#arrival-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none}
.video-ready #arrival-video{opacity:1}
@media(prefers-reduced-motion:reduce){#arrival-video{display:none}}

.rooms-section{padding:100px 7%;background:#e8e7e3}.room-options{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:48px}.room-options .tile img{height:360px}.room-options .tile p{font:14px/1.8 Manrope,Arial,sans-serif;padding-top:16px;max-width:440px}.arrival-room-links{position:absolute;top:28px;right:5%;display:flex;gap:10px;opacity:0;visibility:hidden;transition:opacity .25s}.arrival-room-links button{background:#181d1eea;color:#fff;border:1px solid #c8baa4;padding:11px 16px;min-height:44px}.arrival.rooms-visible .arrival-room-links{opacity:1;visibility:visible}@media(max-width:700px){.rooms-section{padding:70px 7%}.room-options{grid-template-columns:1fr;gap:35px}.room-options .tile img{height:280px}.arrival-room-links{top:20px;right:7%}.arrival-room-links button{font-size:12px;padding:10px 12px}}@media(prefers-reduced-motion:reduce){.arrival-room-links{top:auto;bottom:120px;opacity:1;visibility:visible}}

.arrival{height:420svh}@media(max-width:700px){.arrival{height:360svh}}@media(prefers-reduced-motion:reduce){.arrival{height:auto}}

.arrival{height:580svh}.arrival-room-links{flex-wrap:wrap;justify-content:flex-end}@media(max-width:700px){.arrival{height:480svh}.arrival-room-links{left:7%;gap:6px}.arrival-room-links button{padding:8px 10px}}@media(prefers-reduced-motion:reduce){.arrival{height:auto}}

}
.hotel-experience .experience{margin-top:0}.hotel-experience .stay-cta small{display:block}.hotel-experience dialog{color:#252b2c}.hotel-experience h2,.hotel-experience h3{font-family:Georgia,serif}