/* September UX review: preserve the original brand, clarify actions. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:root{scroll-padding-top:150px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--marine);outline-offset:4px}
.room .go{gap:12px}.room .go a{justify-content:center;padding:8px 10px;border:1px solid currentColor;border-radius:3px;text-decoration:none}.room .go a:hover{background:var(--marine);color:white}.room .go .go-enq:hover{background:var(--rose);color:white}
.rm-link{grid-column:1/-1;min-height:44px;display:inline-flex;align-items:center;color:var(--marine);text-decoration:underline;text-underline-offset:4px}.rm-link:hover{color:var(--rose)}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.gallery-controls button{min-width:44px;min-height:44px;border:1px solid var(--marine);background:transparent;color:var(--marine);font:inherit;border-radius:3px}.gallery-controls button:hover{background:var(--marine);color:white}.gallery-controls span{font-family:var(--mono);font-size:12px}.gallery-note{font-size:12px;line-height:1.6;margin-top:12px;color:var(--ink-2)}.pd-photo{max-width:none!important}.pd-photo .listing-gallery-image{object-fit:contain;background:var(--sunk)}
.hmo-guide{max-width:850px;margin:auto;padding:40px 0 80px}.hmo-guide h2{font-family:var(--display);font-size:clamp(27px,4vw,40px);line-height:1.15;margin:42px 0 18px}.hmo-guide p,.hmo-guide li{line-height:1.8;margin-bottom:14px}.hmo-guide ul,.hmo-guide ol{padding-left:24px}.hmo-guide .guide-index{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}.guide-index a{padding:12px 16px;border:1px solid var(--line);color:var(--marine);border-radius:3px}.hmo-guide details{border-bottom:1px solid var(--line);padding:16px 0}.hmo-guide summary{cursor:pointer;font-weight:600;min-height:44px;display:list-item;padding:10px 0}.hmo-guide details p{padding-top:12px}.hmo-guide .guide-note{border-left:3px solid var(--rose);padding:16px 22px;background:var(--sunk)}
.page-loading{overflow:hidden}.loading-screen{position:fixed;inset:0;z-index:1000;background:var(--marine);color:#fff;display:grid;place-items:center;padding:24px;overflow:auto}.loading-card{width:min(100%,470px);text-align:center}.loading-card>img{width:min(100%,340px);height:auto;margin:0 auto 36px}.loading-card h2{font-family:var(--display);font-size:clamp(30px,6vw,44px);line-height:1.1;margin:24px 0 16px}.loading-card p{line-height:1.6}.loading-card .btn{margin-top:24px;min-height:48px}.loading-card .loading-small{font-size:12px;opacity:.8;margin-top:22px}.loading-doors{display:flex;justify-content:center;gap:12px}.loading-doors i{height:65px;width:38px;border:3px solid #fff;position:relative;animation:door-breathe 1.3s ease-in-out infinite alternate}.loading-doors i:first-child{border-color:var(--rose-hi)}.loading-doors i:last-child{animation-delay:.4s}.loading-doors i:after{content:'';position:absolute;right:5px;top:32px;width:6px;height:3px;background:currentColor}@keyframes door-breathe{to{opacity:.4;transform:translateY(-5px)}}
@media(prefers-reduced-motion:reduce){.loading-doors i{animation:none}html{scroll-behavior:auto}}
@media(max-width:820px){.hdr .nav a{min-height:44px}.hdr{padding:8px 0}.hdr-in{gap:4px 12px}.hdr .nav{gap:16px}.hub{padding-top:170px}}
@media(max-width:400px){.hdr .btn.hide-sm{font-size:9px;padding:8px}.logo .brand-wordmark{width:180px}.room .go a{padding:8px;font-size:11px}}
