:root{--ink:#0a2138;--muted:#526b80;--paper:#ffffff;--wash:#f3f7fb;--line:#d5e2ee;--accent:#087b9c;--green:#0a2945}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--wash);color:var(--ink);font:16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;padding-bottom:88px}a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.skip-link{position:absolute;top:-90px;z-index:10;padding:12px;background:white}.skip-link:focus{top:8px}.topbar{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px max(24px,calc((100% - 1080px)/2));border-bottom:1px solid var(--line);background:var(--paper)}.brand{display:flex;align-items:center;gap:14px;text-decoration:none}.brand strong{display:block;font-size:20px;letter-spacing:-.5px;font-weight:600}.brand small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:3px;color:var(--accent)}.hf-logo{display:block;width:46px;height:46px;object-fit:contain;flex:none}.header-contact{padding:10px 16px;border:1px solid var(--line);border-radius:6px;text-decoration:none;font-size:13px;min-height:44px}.welcome{padding:56px max(24px,calc((100% - 1080px)/2)) 38px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent);margin:0 0 16px}h1{font-size:clamp(32px,5vw,54px);font-weight:500;line-height:1.15;letter-spacing:-1.8px;margin:0 0 20px}.intro{font-size:18px;color:var(--muted);margin:0 0 20px}.demo-note{font-size:12px;color:var(--muted);max-width:600px}.guide-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1080px;margin:0 auto 56px}.guide-menu a{display:flex;align-items:center;gap:16px;min-height:92px;padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:9px;text-decoration:none;font-size:15px;font-weight:500;box-shadow:0 3px 8px #0a213808}.guide-menu a:hover{border-color:var(--accent);background:white}.menu-icon{width:24px;flex:none;color:var(--accent)}.menu-icon svg{display:block;width:24px;height:24px}.detail{max-width:760px;margin:0 auto;padding:30px 0 44px}.back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:24px;text-decoration:none;font-size:14px}.detail h1{font-size:36px;letter-spacing:-1px}.guide-card{background:var(--paper);padding:24px;border:1px solid var(--line);border-radius:9px;margin-top:16px}.guide-card h3{font-size:18px;margin:0 0 12px;font-weight:600}.guide-card p{font-size:15px;margin:8px 0;color:var(--muted)}.guide-card p strong{color:var(--ink)}.guide-card ul{font-size:15px;color:var(--muted);padding-left:22px}.wifi-value{display:block;font-size:23px;font-weight:500;word-break:break-word;margin-bottom:16px}.copy,.directions{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:1px solid var(--green);border-radius:6px;background:var(--green);color:white;font-weight:500;font-size:14px;text-decoration:none;cursor:pointer}.view-map{color:var(--green);background:transparent}.map-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.schedule{display:grid;grid-template-columns:1fr auto;gap:10px;font-size:15px}.schedule dt{color:var(--muted)}.schedule dd{margin:0;font-weight:500}.reception-bar{position:fixed;bottom:0;left:0;right:0;z-index:5;background:var(--green);color:#fff;min-height:76px;padding:12px 24px calc(12px + env(safe-area-inset-bottom));text-align:center;text-decoration:none;font-size:15px;font-weight:500}.reception-bar span{display:block;font-size:11px;color:#b5d6e9;margin-top:4px}footer{max-width:1080px;margin:auto;border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}footer strong{color:var(--ink);font-weight:500}.toast{position:fixed;bottom:94px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:12px 18px;border-radius:6px;background:var(--ink);color:#fff;opacity:0;pointer-events:none;z-index:10;font-size:14px}.toast.show{opacity:1}@media(max-width:1128px){.guide-menu,footer{margin-left:24px;margin-right:24px}.detail{padding-left:24px;padding-right:24px}}@media(max-width:720px){.topbar{padding:16px 20px;min-height:86px}.brand{gap:10px}.brand strong{font-size:18px}.hf-logo{width:38px;height:38px}.header-contact{padding:10px 12px}.welcome{padding:38px 20px 28px}h1{font-size:36px;letter-spacing:-1.2px}.intro{font-size:16px}.guide-menu{grid-template-columns:1fr 1fr;gap:10px;margin:0 20px 36px}.guide-menu a{padding:18px 14px;min-height:98px;gap:12px;font-size:14px;flex-direction:column;align-items:flex-start}.detail{padding:20px}.detail h1{font-size:32px}.guide-card{padding:20px}footer{margin:0 20px;display:grid;gap:8px}.schedule{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Hospitality Flow identity; section layout and interaction sizes remain intact. */
.topbar{background:#0a1422;color:#fff;border-bottom-color:#29435b}.brand strong{font-weight:650}.brand small{font-size:11px;text-transform:none;letter-spacing:.25px;color:#8ec4eb}.header-contact{border-color:#42607a;color:#edf7ff}.header-contact:hover{background:#153149}.welcome{background:linear-gradient(120deg,#0a1422,#102f4d);color:#fff;border-bottom:3px solid #16bde8}.welcome .eyebrow{color:#63d5f0}.welcome .intro{color:#c5d7e7}.welcome .demo-note{color:#afc7dc}h1{font-weight:600}.guide-menu{padding-top:28px}.guide-menu a{border-radius:12px;box-shadow:0 4px 14px #0a213807}.guide-menu a:hover{border-color:#16bde8;background:#f3fbff}.menu-icon{color:#087b9c}.guide-card{border-radius:12px;box-shadow:0 3px 12px #0a213805}.copy,.directions{border-radius:8px}.copy:hover,.directions:not(.view-map):hover{background:#154969}.view-map{background:#eef9ff;border-color:#9ccbdc}.reception-bar{background:#0a2138;border-top:2px solid #16bde8}footer strong{color:#126d95}.toast{border:1px solid #3f6a86}
@media(max-width:420px){.topbar{gap:10px}.brand{gap:8px}.brand strong{font-size:14px;letter-spacing:-.3px}.brand small{font-size:9px;letter-spacing:0}.hf-logo{width:26px;height:26px}.header-contact{font-size:11px;padding:10px}.guide-menu{padding-top:22px}}