h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600}p,li{line-height:1.75}a:focus-visible{outline:3px solid #7b5b14;outline-offset:5px}.skip{position:absolute;top:-70px;left:16px;background:white;padding:12px;z-index:99}.skip:focus{top:10px}.guest-header{border-bottom:1px solid var(--line)}.guest-header .shell{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:12px 0}.guest-header img{width:230px;height:70px;object-fit:contain}.guest-header nav{display:flex;gap:24px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.guest-header a{text-decoration:none}.guest-header a[aria-current]{color:#795b19}.guest-shell{width:min(1000px,calc(100% - 48px));margin:auto}.welcome{padding:64px 0 36px;max-width:780px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;color:#795b19}h1{font-size:clamp(44px,6vw,70px);line-height:1.02;margin:18px 0}.guest-intro{font-size:18px;color:var(--muted);max-width:620px}section{border-top:1px solid var(--line);padding:36px 0;scroll-margin-top:20px}.section-heading{display:flex;align-items:center;gap:18px}.section-heading>span{color:#795b19;font-size:12px;letter-spacing:.08em}.section-heading h2{font-size:36px;line-height:1.1;margin:0 0 6px}section>p{max-width:800px;color:var(--muted)}.wifi-details{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:var(--white);margin-top:22px}.wifi-details>div{padding:24px 28px}.wifi-details>div+div{border-left:1px solid var(--line)}.credential{font-size:26px;margin:8px 0 0;user-select:all}.rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.rooms article{padding:24px;background:var(--white);border:1px solid var(--line)}h3{font-size:27px;margin:0 0 12px}.rooms ul{padding:0;list-style:none;margin:0}.rooms li{font-size:14px;padding:8px 0}.rooms small{display:block;color:var(--muted)}.climate-details{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:24px}.climate-details p{color:var(--muted);margin-bottom:0}.checkout-list{list-style:none;padding:0}.checkout-list li{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.checkout-list span{color:var(--muted)}.goodbye{padding:28px;margin-top:26px;background:#eee4d2}.goodbye p{margin:0;max-width:700px}.guest-footer{width:min(1000px,calc(100% - 48px));margin:12px auto 0;padding:24px 0 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}@media(max-width:700px){.guest-header .shell{flex-direction:column;gap:12px;padding:10px 0 18px}.guest-header img{width:180px;height:55px}.guest-header nav{gap:18px;font-size:11px}.guest-shell{width:calc(100% - 36px)}.welcome{padding-top:38px}.rooms,.climate-details{grid-template-columns:1fr;gap:16px}.section-heading h2{font-size:31px}.checkout-list li{grid-template-columns:1fr;gap:3px}.wifi-details>div{padding:20px 16px}.credential{font-size:22px}.guest-intro{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.arrival-photo{margin:26px 0 0}.arrival-photo img{display:block;width:100%;height:auto;border:1px solid var(--line)}.arrival-photo figcaption{margin-top:10px;color:var(--muted);font-size:13px;line-height:1.6}

/* Adapted from the Shanghai guide's fixed quicknav and copy controls. */
:root{--nav-h:57px}
body{padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px))}
.copy-btn{margin-top:12px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--ink);font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;cursor:pointer}
.copy-btn:hover{background:#fff;border-color:var(--gold)}
.copy-btn:active{transform:translateY(1px)}
.copy-btn:focus-visible{outline:3px solid #7b5b14;outline-offset:4px}
.copy-status{min-height:24px;margin:10px 0 0;font-size:13px}
.quicknav{position:fixed;left:0;right:0;bottom:0;z-index:60;height:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:rgba(247,240,228,.96);backdrop-filter:blur(18px);border-top:1px solid var(--line);box-shadow:0 -8px 26px rgba(43,47,54,.06)}
.quicknav-inner{max-width:1064px;height:100%;margin:0 auto;padding:0 32px;display:flex;align-items:center;gap:30px;overflow-x:auto;scrollbar-width:none}
.quicknav-inner::-webkit-scrollbar{display:none}
.quicknav a{position:relative;flex:0 0 auto;white-space:nowrap;text-decoration:none;padding:18px 0 16px;color:var(--muted);font-size:16px;font-weight:600;line-height:1.2;letter-spacing:.02em}
.quicknav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.quicknav a:hover,.quicknav a.active{color:var(--ink)}
.quicknav a.active::after{transform:scaleX(1)}
.quicknav a:focus-visible{outline-offset:-3px}
@media(max-width:700px){:root{--nav-h:54px}.quicknav-inner{padding:0 18px;gap:24px}.quicknav a{font-size:14px}}
@media(max-width:360px){.wifi-details{grid-template-columns:1fr}.wifi-details>div+div{border-left:0;border-top:1px solid var(--line)}}
@media(prefers-reduced-motion:reduce){.quicknav a::after{transition:none}}
