
.digital-menu-identity{display:flex;align-items:center;gap:13px;min-width:0}.digital-menu-identity>img{flex:0 0 auto;width:68px;height:58px;object-fit:contain;padding:5px;border-radius:12px;background:#ffffffed}.digital-menu-identity>div{min-width:0}.dish-photo-caption>img{width:min(150px,42vw);height:50px;object-fit:contain;margin-bottom:4px;padding:5px 10px;border-radius:10px;background:#ffffffed}
:root{--ink:#17323d;--brand:#123746;--accent:#a7834d;--paper:#fff;--muted:#6d7d84;--line:#d9e2e5;--safe-top:env(safe-area-inset-top);--safe-bottom:env(safe-area-inset-bottom)}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#dbe7ea;overflow:hidden;-webkit-tap-highlight-color:transparent}
button,input,select{font:inherit}.hidden{display:none!important}
.topbar{position:fixed;z-index:60;top:0;left:0;right:0;height:calc(60px + var(--safe-top));padding:var(--safe-top) 12px 0 14px;display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(180deg,rgba(18,55,70,.98),rgba(18,55,70,.91));box-shadow:0 2px 14px rgba(0,0,0,.18)}
.brand-block{line-height:1}.eyebrow{font-size:8px;letter-spacing:.14em;opacity:.75}.topbar h1{font-size:20px;margin:5px 0 0}.top-actions{display:flex;align-items:center;gap:8px}
.brand-slogan{margin:2px 0 0;color:#d9c38d;font-size:7px;font-weight:800;letter-spacing:.16em}
.home-change-room{margin:4px 0 0;padding:0;border:0;background:transparent;color:#8b6b35;font-size:10px;font-weight:800;text-decoration:underline;text-underline-offset:2px}.concierge-weather i{font-style:normal}.alfred-correction{display:block;color:#8b6b35;font-size:10px;font-weight:800}
.top-actions select{height:38px;min-width:58px;border:1px solid rgba(255,255,255,.28);border-radius:12px;padding:0 9px;background:rgba(255,255,255,.13);color:#fff;font-weight:700}
.gps-fab{position:relative;width:42px;height:42px;padding:0;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#1678b8;box-shadow:0 5px 17px rgba(3,28,42,.34)}
.gps-fab svg{width:23px;height:23px;fill:currentColor;z-index:2}.gps-ring{position:absolute;inset:-5px;border:2px solid rgba(255,255,255,.7);border-radius:50%;opacity:0}
.gps-loading .gps-ring{animation:pulse 1.2s infinite}.gps-loading svg{animation:spin 1.2s linear infinite}.gps-active{background:#1f9d63;color:#fff}.gps-error{background:#b43c3c;color:#fff}
@keyframes pulse{50%{opacity:1;transform:scale(1.08)}}@keyframes spin{to{transform:rotate(360deg)}}
.map-viewport{position:fixed;inset:calc(60px + var(--safe-top)) 0 0;overflow:auto;display:block;touch-action:pan-x pan-y;background:#dbe7ea;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:auto}
.map-stage{position:relative;display:block;width:100%;min-width:100%;line-height:0;transform-origin:0 0}.map-stage img{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none}
.marker-layer{position:absolute;inset:0}.marker{position:absolute;transform:translate(-50%,-50%);width:11px;height:11px;border:1px solid #fff;border-radius:50%;background:#9e2039;box-shadow:0 1px 2px rgba(0,0,0,.38);display:flex;align-items:center;justify-content:center;color:#fff;z-index:4;padding:0;box-sizing:border-box;transition:width .16s ease,height .16s ease,box-shadow .16s ease}
.marker.service{background:#176989}.marker.active{width:16px;height:16px;z-index:8;box-shadow:0 0 0 2px #d4af37,0 2px 5px rgba(0,0,0,.38)}.marker-number{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:transparent;color:#fff;font-size:7px;font-weight:900;line-height:1;letter-spacing:-.35px}.marker.service .marker-number{color:#fff}.marker.active .marker-number{outline:none;font-size:8px}
#routeLayer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}.route-shadow{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.route-line{fill:none;stroke:#087fbd;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.user-marker{position:absolute;transform:translate(-50%,-50%);width:22px;height:22px;border:4px solid #fff;border-radius:50%;background:#1687d1;box-shadow:0 0 0 8px rgba(22,135,209,.2),0 2px 8px rgba(0,0,0,.35);z-index:10}
.mobile-search{position:fixed;z-index:45;left:10px;right:10px;bottom:calc(10px + var(--safe-bottom))}
.search-box{height:50px;display:flex;align-items:center;gap:9px;padding:0 14px;background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.8);border-radius:17px;box-shadow:0 10px 30px rgba(20,45,55,.28);backdrop-filter:blur(14px)}
.search-box svg{width:21px;height:21px;fill:#5f737c;flex:0 0 auto}.search-box input{width:100%;height:100%;border:0;background:transparent;outline:none;font-size:16px;color:var(--ink)}
.suggestions{position:absolute;left:0;right:0;bottom:102px;max-height:min(42vh,330px);overflow:auto;background:#fff;border-radius:16px;box-shadow:0 10px 32px rgba(20,45,55,.28)}
.suggestion{padding:12px 14px;border-bottom:1px solid #edf1f2}.suggestion:last-child{border:0}.suggestion small{display:block;color:var(--muted);margin-top:3px}
.chips{display:flex;gap:7px;margin-top:7px;overflow-x:auto;scrollbar-width:none;padding:0 2px}.chips::-webkit-scrollbar{display:none}.chip{white-space:nowrap;min-height:35px;border:0;border-radius:999px;padding:7px 12px;background:rgba(255,255,255,.95);box-shadow:0 3px 11px rgba(20,45,55,.16);font-size:13px}.chip.active{background:var(--brand);color:#fff}
.zoom-controls{position:fixed;right:10px;top:calc(72px + var(--safe-top));z-index:42;display:flex;flex-direction:column;overflow:hidden;border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 5px 18px rgba(20,45,55,.22)}
.zoom-controls button{width:42px;height:42px;border:0;border-bottom:1px solid #e6edef;background:transparent;font-weight:800;font-size:20px;color:var(--ink)}.zoom-controls button:last-child{border:0;font-size:11px}
.route-bar{position:fixed;z-index:80;top:calc(68px + var(--safe-top));left:10px;right:10px;min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:10px 42px 10px 13px;background:rgba(255,255,255,.98);border-radius:17px;box-shadow:0 9px 28px rgba(20,45,55,.25)}
.route-copy{min-width:0}.route-bar small{display:block;color:var(--muted)}.route-bar strong{display:block;max-width:45vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-metrics{display:flex;gap:9px;color:#12668b;white-space:nowrap;font-size:14px}.route-bar>button{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:29px;height:29px;border:0;border-radius:50%;font-size:19px}
.poi-card{position:fixed;z-index:100;left:0;right:0;bottom:0;max-height:82vh;padding:10px 16px calc(18px + var(--safe-bottom));background:#fff;border-radius:25px 25px 0 0;box-shadow:0 -14px 42px rgba(20,45,55,.34);animation:sheetUp .22s ease-out}
@keyframes sheetUp{from{transform:translateY(25%);opacity:.4}}
.sheet-handle{width:44px;height:5px;margin:0 auto 9px;border-radius:4px;background:#d5dddf}.poi-card-scroll{max-height:calc(82vh - 22px);overflow:auto;padding-bottom:2px}
.card-close{position:absolute;right:13px;top:18px;width:36px;height:36px;border:0;border-radius:50%;background:#eef2f3;font-size:24px;color:var(--ink)}
.category-label{display:block;padding-right:45px;font-size:11px;color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.poi-card h2{margin:6px 44px 8px 0;font-size:25px;line-height:1.13}.status{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;background:#edf7f1;font-weight:800;margin:5px 0 8px}
.schedule{border-top:1px solid var(--line);margin-top:9px;padding-top:8px}.schedule-row{display:flex;justify-content:space-between;gap:15px;padding:7px 0;line-height:1.25}.schedule-row span{color:#51676f}.schedule-row b{text-align:right;white-space:nowrap}
.notices{margin:8px 0}.notice{padding:11px 12px;background:#fff5df;border-radius:12px;margin-top:7px;font-size:14px;line-height:1.35}.notice.alert{background:#fdeaea;color:#8f2929}
.poi-rooms{margin:12px 0;padding:13px;border:1px solid var(--line);border-radius:16px;background:#f7faf9}.poi-rooms-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.poi-rooms-head b{font-size:14px;color:#173b46}.poi-rooms-head span{padding:4px 8px;border-radius:999px;background:#e4f0ed;color:#235e55;font-size:11px;font-weight:800}.poi-room-list{display:flex;flex-wrap:wrap;gap:6px}.poi-room-number{padding:6px 8px;border-radius:9px;background:#fff;border:1px solid #dbe5e2;color:#26484d;font-size:12px;font-weight:750;font-variant-numeric:tabular-nums}
.primary-btn{position:sticky;bottom:0;width:100%;height:52px;border:0;border-radius:15px;background:var(--brand);color:#fff;font-weight:800;font-size:16px;margin-top:12px;box-shadow:0 6px 17px rgba(18,55,70,.23)}
.toast{position:fixed;left:50%;bottom:calc(105px + var(--safe-bottom));transform:translateX(-50%);z-index:200;max-width:calc(100vw - 30px);background:#18343f;color:#fff;padding:11px 15px;border-radius:12px;box-shadow:0 8px 20px rgba(0,0,0,.22);text-align:center}
html[dir="rtl"] .card-close{right:auto;left:13px}html[dir="rtl"] .poi-card h2{margin-right:0;margin-left:44px}html[dir="rtl"] .category-label{padding-right:0;padding-left:45px}html[dir="rtl"] .route-bar{padding-right:13px;padding-left:42px}html[dir="rtl"] .route-bar>button{right:auto;left:8px}html[dir="rtl"] .schedule-row b{text-align:left}
@media(min-width:720px){.topbar{height:72px;padding-left:20px;padding-right:20px}.map-viewport{inset:calc(72px + var(--safe-top)) 0 0}.mobile-search{left:18px;right:auto;width:390px;bottom:18px}.zoom-controls{top:calc(86px + var(--safe-top));right:18px}.poi-card{left:auto;right:18px;bottom:18px;width:400px;max-height:calc(100vh - 108px);border-radius:22px;padding-bottom:18px}.poi-card-scroll{max-height:calc(100vh - 145px)}.route-bar{left:50%;right:auto;width:520px;transform:translateX(-50%)}.map-stage{min-width:1200px}.map-viewport{display:block}}
@media(max-height:600px) and (orientation:landscape){.topbar{height:52px}.map-viewport{inset:calc(52px + var(--safe-top)) 0 0}.eyebrow{display:none}.topbar h1{margin:0}.mobile-search{width:min(370px,48vw);left:8px;right:auto;bottom:8px}.poi-card{left:auto;right:8px;bottom:8px;width:min(420px,48vw);max-height:calc(100vh - 68px);border-radius:20px}.poi-card-scroll{max-height:calc(100vh - 100px)}}
.menu-btn{min-width:92px;height:42px;border:0;border-radius:13px;background:#f3b51b;color:#173746;font-size:15px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;box-shadow:0 5px 14px rgba(0,0,0,.24)}.menu-btn .menu-icon{font-size:21px;line-height:1}.topbar{gap:8px}.brand-block{flex:1}.side-menu{position:fixed;z-index:130;top:0;bottom:0;left:0;width:min(88vw,390px);background:#fff;box-shadow:12px 0 36px rgba(0,0,0,.28);padding:calc(14px + var(--safe-top)) 14px calc(14px + var(--safe-bottom));overflow:auto}.side-menu-head{display:flex;align-items:center;justify-content:space-between;font-size:20px;margin-bottom:12px}.side-menu-head button{width:38px;height:38px;border:0;border-radius:50%;font-size:24px}.side-search input{width:100%;height:46px;border:1px solid var(--line);border-radius:14px;padding:0 13px;font-size:16px}.category-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.category-filter{display:flex;align-items:center;gap:7px;padding:8px;border:1px solid var(--line);border-radius:11px;font-size:13px}.location-list{border-top:1px solid var(--line)}.location-row{display:flex;width:100%;text-align:left;justify-content:space-between;gap:10px;border:0;border-bottom:1px solid #edf1f2;background:transparent;padding:12px 4px}.location-row small{display:block;color:var(--muted);margin-top:3px}.menu-backdrop{position:fixed;z-index:125;inset:0;background:rgba(0,0,0,.38)}html[dir="rtl"] .side-menu{left:auto;right:0}html[dir="rtl"] .location-row{text-align:right}
.route-shadow{stroke:#fff;stroke-width:8!important}.route-line{stroke:#1a73e8;stroke-width:5!important}.user-marker b{position:absolute;left:50%;top:27px;transform:translateX(-50%);white-space:nowrap;background:#fff;color:#176989;padding:4px 8px;border-radius:8px;font-size:11px;line-height:1;box-shadow:0 2px 7px rgba(0,0,0,.22)}.navigation-active .marker-layer{display:none}.navigation-active .mobile-search{display:none}.poi-actions{display:grid;gap:8px;margin-top:12px}.secondary-btn{display:flex;align-items:center;justify-content:center;height:48px;border:1px solid var(--brand);border-radius:15px;color:var(--brand);text-decoration:none;font-weight:800}.secondary-btn.reserve{background:#a7834d;color:#fff;border-color:#a7834d}.poi-actions .primary-btn{margin-top:0}

/* V12.3 continuous GPS and Locate Me */
.user-marker{transition:left .45s linear,top .45s linear}
.gps-fab.gps-active{box-shadow:0 0 0 5px rgba(22,135,209,.22),0 4px 14px rgba(0,0,0,.22)}

/* V12.5 GPS permission message */
.permission-modal{position:fixed;z-index:260;inset:0;background:rgba(7,25,34,.62);display:flex;align-items:center;justify-content:center;padding:22px}.permission-card{width:min(92vw,420px);background:#fff;border-radius:22px;padding:24px;text-align:center;box-shadow:0 20px 55px rgba(0,0,0,.35)}.permission-icon{font-size:38px}.permission-card h2{margin:10px 0 8px;font-size:22px}.permission-card p{margin:0;color:#536a74;line-height:1.5}.permission-card button{width:100%;height:48px;margin-top:18px;border:0;border-radius:14px;background:#123746;color:#fff;font-weight:800;font-size:16px}


/* V13.1 welcome and accommodation */
.welcome-screen{position:fixed;z-index:500;inset:0;display:flex;align-items:center;justify-content:center;padding:22px;background:linear-gradient(180deg,rgba(12,43,56,.86),rgba(8,27,36,.94)),var(--experience-home-image,url('resort-map.jpeg')) center/cover no-repeat}.welcome-panel{width:min(94vw,440px);max-height:94vh;overflow:auto;background:rgba(255,255,255,.98);border-radius:28px;padding:30px 24px calc(24px + var(--safe-bottom));box-shadow:0 28px 80px rgba(0,0,0,.38)}.welcome-logo{text-align:center;font-size:35px;letter-spacing:.22em;font-weight:900;color:#143c4b}.welcome-kicker{text-align:center;margin:3px 0 22px;font-size:10px;letter-spacing:.13em;color:#8a6b38;font-weight:800}.welcome-panel h2{text-align:center;margin:0 0 8px;font-size:29px}.welcome-panel>p#welcomeSubtitle{text-align:center;color:#61747c;line-height:1.45;margin:0 0 20px}.welcome-panel label{display:block;margin:14px 0 7px;font-weight:800;font-size:13px;color:#294a57}.welcome-panel select,.welcome-panel input{width:100%;height:52px;border:1px solid #d5e0e4;border-radius:15px;background:#fff;padding:0 14px;font-size:16px;outline:none}.welcome-panel select:focus,.welcome-panel input:focus{border-color:#1a708f;box-shadow:0 0 0 3px rgba(26,112,143,.12)}.welcome-hint{font-size:12px;color:#74858b;margin:7px 2px 0}.welcome-continue,.welcome-skip{width:100%;height:52px;border-radius:15px;font-weight:850;font-size:15px}.welcome-continue{margin-top:20px;border:0;background:#123746;color:#fff}.welcome-skip{margin-top:8px;border:0;background:transparent;color:#5f727a}.my-accommodation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:11px 0;padding:11px 12px;border-radius:14px;background:#eef6f8;border:1px solid #d7e7eb}.my-accommodation small{display:block;color:#667b83;margin-bottom:2px}.my-accommodation b{display:block;color:#173d4c}.my-accommodation button{border:0;border-radius:10px;padding:8px 10px;background:#123746;color:#fff;font-weight:800}.marker.accommodation{background:#7a4fbd;border-color:#fff;width:36px;height:42px}.marker.accommodation .marker-number{width:auto;min-width:25px;padding:0 4px;font-size:8px;color:#6b3caf}.marker.accommodation .marker-number:before{content:''}




/* V15.3 — zoom-responsive markers, base 14 px, maximum zoom 8x */
:root{--marker-size:14px;--marker-font-size:8px;--selected-marker-size:20px}
.marker{width:var(--marker-size)!important;height:var(--marker-size)!important;min-width:var(--marker-size)!important;min-height:var(--marker-size)!important;padding:0!important;border:1px solid rgba(255,255,255,.96)!important;border-radius:50%!important;transform:translate(-50%,-50%)!important;box-shadow:0 1px 2px rgba(0,0,0,.35)!important;background:#607d8b!important;overflow:visible;box-sizing:border-box!important;transition:width .14s ease,height .14s ease,box-shadow .14s ease!important}
.marker .marker-number{display:none!important;align-items:center;justify-content:center;width:100%!important;height:100%!important;padding:0!important;background:transparent!important;color:#fff!important;font-size:var(--marker-font-size)!important;font-weight:800!important;line-height:1!important;letter-spacing:-.35px!important}
body.marker-numbers-visible .marker.building .marker-number,body.marker-numbers-visible .marker.villa .marker-number{display:flex!important}
.marker.restaurant{background:#9e2039!important}.marker.bar{background:#c44747!important}.marker.pool{background:#1976b8!important}.marker.beach{background:#1aa6a6!important}.marker.building{background:#6f42c1!important}.marker.villa{background:#9b6bd3!important}.marker.service{background:#607d8b!important}.marker.spa{background:#2b9b83!important}.marker.kids{background:#e67e22!important}.marker.bus{background:#d6a800!important}
.marker.active{width:var(--selected-marker-size)!important;height:var(--selected-marker-size)!important;min-width:var(--selected-marker-size)!important;min-height:var(--selected-marker-size)!important;z-index:12!important;box-shadow:0 0 0 2px #d4af37,0 2px 5px rgba(0,0,0,.38)!important}.marker.active .marker-number{display:flex!important;font-size:calc(var(--marker-font-size) + 1px)!important}.marker.hidden{display:none!important}
.map-viewport{touch-action:none}

/* V15.4 — free one-finger map panning */
.map-viewport{touch-action:none;cursor:grab}
.map-viewport.map-dragging{cursor:grabbing}
.map-stage,.map-stage img,.marker-layer{user-select:none;-webkit-user-select:none}

/* V16.2 — smartphone-first guest experience */
:root{--app-accent-color:#123746;--dock-height:70px}
.topbar{height:calc(62px + var(--safe-top));padding:var(--safe-top) 10px 0;background:linear-gradient(135deg,var(--app-accent-color),#0b2935);backdrop-filter:blur(18px)}
.menu-btn{min-width:48px;width:48px;height:44px;padding:0;border-radius:15px}.menu-btn #menuBtnLabel{display:none}.brand-block{text-align:center}.eyebrow{font-size:7px}.topbar h1{font-size:19px}.top-actions select{min-width:52px;height:40px;padding:0 6px}.gps-fab{width:42px;height:42px}
.map-viewport{inset:calc(110px + var(--safe-top)) 0 calc(var(--dock-height) + var(--safe-bottom));background:#d9e7e9}
.map-filters{position:fixed;z-index:55;left:0;right:0;top:calc(62px + var(--safe-top));height:48px;display:flex;align-items:center;gap:7px;padding:6px 10px;overflow-x:auto;background:rgba(248,246,240,.97);box-shadow:0 3px 14px rgba(15,45,58,.13);scrollbar-width:none}.map-filters::-webkit-scrollbar{display:none}.map-filters .chip{flex:0 0 auto;min-height:36px;margin:0;padding:8px 12px;border:1px solid #d9e2e5;border-radius:999px;background:#fff;color:#294b58;box-shadow:none;font-size:12px;font-weight:800}.map-filters .chip.active{background:var(--app-accent-color);border-color:var(--app-accent-color);color:#fff}.map-filters .chip:disabled{opacity:.42;text-decoration:line-through}
.shuttle-chip i{display:inline-block;width:7px;height:7px;margin-left:4px;border-radius:50%;background:#8b9699}.shuttle-chip i.live{background:#2db67f;box-shadow:0 0 0 3px rgba(45,182,127,.14)}
.zoom-controls{right:10px;top:calc(122px + var(--safe-top));border-radius:16px}.zoom-controls button{width:44px;height:44px}
.return-room-btn{position:fixed;right:10px;top:calc(264px + var(--safe-top));z-index:43;width:76px;min-height:48px;border:0;border-radius:15px;background:#f3b51b;color:#173746;box-shadow:0 5px 18px rgba(20,45,55,.26);display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 8px;font-weight:900}.return-room-btn span{font-size:22px}.return-room-btn b{font-size:11px;line-height:1.1}.return-room-btn:disabled{opacity:.42}
.location-guard{position:fixed;z-index:58;left:10px;right:64px;top:calc(119px + var(--safe-top));display:flex;align-items:flex-start;gap:9px;max-width:520px;padding:10px 12px;border:1px solid #efc56e;border-radius:14px;background:rgba(255,249,231,.97);box-shadow:0 6px 20px rgba(76,54,8,.18);color:#6b4b08}.location-guard>span{font-size:20px}.location-guard strong,.location-guard small{display:block}.location-guard strong{font-size:12px}.location-guard small{margin-top:2px;font-size:10px;line-height:1.3}
.navigation-disabled-reason{display:block;text-align:center;color:#9a6115;font-size:12px;line-height:1.35}.primary-btn:disabled{background:#b9c2c5;color:#f5f7f7;box-shadow:none}
.location-outside #shuttleRouteLayer,.location-outside #shuttleStationLayer,.location-outside #busLayer,.filter-hidden{display:none!important}

.mobile-dock{position:fixed;z-index:70;left:0;right:0;bottom:0;height:calc(var(--dock-height) + var(--safe-bottom));padding:7px 8px var(--safe-bottom);display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:rgba(255,255,255,.97);border-top:1px solid rgba(210,220,223,.85);box-shadow:0 -8px 28px rgba(12,42,54,.12);backdrop-filter:blur(18px)}.mobile-dock button{min-width:0;border:0;border-radius:14px;background:transparent;color:#6b7c83;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.mobile-dock button span{font-size:21px;line-height:1}.mobile-dock button b{font-size:10px;white-space:nowrap}.mobile-dock button.active{background:#eaf2f3;color:var(--app-accent-color)}.mobile-dock button:disabled{opacity:.35}

.side-menu{width:min(94vw,410px);padding:calc(18px + var(--safe-top)) 14px calc(86px + var(--safe-bottom));border-radius:0 24px 24px 0}.side-menu-head{position:sticky;top:calc(-18px - var(--safe-top));z-index:2;margin:-18px -14px 14px;padding:calc(18px + var(--safe-top)) 14px 12px;background:rgba(255,255,255,.97);backdrop-filter:blur(15px)}.side-search{position:sticky;top:55px;z-index:2;background:#fff;padding-bottom:8px}.side-search input{height:50px;border-radius:16px;background:#f7f9f9}.category-filters{grid-template-columns:1fr 1fr}.category-filter{min-height:44px;border-radius:13px;background:#fbfcfc}.location-row{min-height:58px;padding:12px 6px}.location-row b{font-size:14px}.location-row small{font-size:11px}

.poi-card{max-height:min(88vh,760px);max-height:min(88dvh,760px);padding:10px 16px calc(88px + var(--safe-bottom));border-radius:28px 28px 0 0}.poi-card-scroll{max-height:calc(88dvh - 34px)}.poi-card h2{font-size:24px}.poi-actions{position:sticky;bottom:0;padding-top:8px;background:linear-gradient(transparent,#fff 10%)}.primary-btn,.secondary-btn{min-height:52px;border-radius:16px}
.route-bar{top:calc(120px + var(--safe-top));z-index:65;min-height:64px;border-radius:18px}
.toast{bottom:calc(var(--dock-height) + 14px + var(--safe-bottom));border-radius:15px}
.welcome-screen{padding:12px}.welcome-panel{width:min(96vw,440px);max-height:96dvh;border-radius:25px;padding:24px 20px calc(20px + var(--safe-bottom))}.welcome-logo{font-size:31px}.welcome-panel h2{font-size:25px}.welcome-panel select,.welcome-panel input,.welcome-continue,.welcome-skip{height:50px}

/* Shuttle map and live panel */
#shuttleRouteLayer,.shuttle-station-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6}#shuttleRouteLayer polyline{stroke-width:3.4!important}
.shuttle-station{position:absolute;transform:translate(-50%,-50%);width:14px;height:18px;padding:0;border:1px solid #fff;border-radius:4px 4px 2px 2px;color:#fff;font-size:0;box-shadow:0 1px 5px #0008;pointer-events:auto}.shuttle-station::before{content:"";position:absolute;left:2px;right:2px;top:2px;height:6px;border-radius:1px;background:#eef8fb}.shuttle-station::after{content:"";position:absolute;left:3px;right:3px;top:12px;height:2px;border-radius:1px;background:#fff}.shuttle-station.blue{background:#1976d2}.shuttle-station.red{background:#e53935}.shuttle-station.both{background:linear-gradient(90deg,#1976d2 50%,#e53935 50%)}.shuttle-station.nearest,.shuttle-station.trip-start,.shuttle-station.trip-end{width:20px;height:24px;z-index:10;box-shadow:0 0 0 4px rgba(255,194,43,.35),0 2px 8px #0007}
.bus-layer{position:absolute;inset:0;pointer-events:none;z-index:8}.bus-marker{position:absolute;transform:translate(-50%,-50%);width:37px;height:37px;padding:0;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;background:#0d4054;color:#fff;box-shadow:0 4px 15px #0006;font-size:9px;font-weight:900;pointer-events:auto}
.shuttle-backdrop{position:fixed;z-index:105;inset:0;background:rgba(4,18,27,.52);backdrop-filter:blur(3px)}.shuttle-sheet{position:fixed;z-index:110;left:0;right:0;bottom:0;width:100%;max-height:64vh;max-height:64dvh;overflow:auto;padding:12px 16px calc(24px + var(--safe-bottom));border-radius:28px 28px 0 0;background:#f7f4ed;box-shadow:0 -20px 60px rgba(0,0,0,.28);transition:max-height .25s ease}.shuttle-sheet.planner-open{max-height:91vh;max-height:91dvh}.shuttle-sheet>.sheet-handle{position:sticky;top:0}.shuttle-close{position:absolute;right:16px;top:16px;width:40px;height:40px;border:0;border-radius:50%;background:#e9e4db;color:#244653;font-size:24px}.shuttle-kicker{color:#a57e3e;font-size:10px;font-weight:800;letter-spacing:2px}.shuttle-head h2{margin:5px 0;font-family:Georgia,serif;color:#123746;font-size:30px}.shuttle-head p{margin:0;color:#6f7d82;font-size:13px}
.shuttle-recommendation{display:grid;gap:3px;margin:16px 0 8px;padding:13px;border-left:5px solid #1976d2;border-radius:14px;background:#fff}.shuttle-recommendation small{color:#78878c}.shuttle-recommendation b{color:#173746}.shuttle-recommendation span{color:#19705b;font-size:12px}
.shuttle-map-bar{position:fixed;z-index:44;left:12px;right:12px;bottom:calc(76px + var(--safe-bottom));display:grid;grid-template-columns:minmax(0,1fr) minmax(168px,1.15fr);align-items:stretch;gap:8px;max-width:650px;margin:auto;padding:8px;border:1px solid rgba(255,255,255,.82);border-radius:20px;background:rgba(255,255,255,.96);box-shadow:0 12px 34px rgba(10,37,49,.25);backdrop-filter:blur(16px)}.shuttle-map-live{display:flex;align-items:center;gap:9px;min-width:0;padding:6px 7px}.shuttle-map-live i{width:11px;height:11px;flex:0 0 auto;border-radius:50%;background:#28a96b;box-shadow:0 0 0 5px rgba(40,169,107,.13);animation:pulse 1.8s infinite}.shuttle-map-live span,.shuttle-map-live small,.shuttle-map-live b{display:block;min-width:0}.shuttle-map-live small{color:#718087;font-size:9px;font-weight:900;letter-spacing:.1em}.shuttle-map-live b{margin-top:2px;overflow:hidden;color:#173746;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.shuttle-map-bar>button{display:flex;align-items:center;justify-content:space-between;gap:7px;min-width:0;padding:10px 12px;border:0;border-radius:14px;background:linear-gradient(135deg,#173746,#225f72);color:#fff;text-align:left}.shuttle-map-bar>button span,.shuttle-map-bar>button b,.shuttle-map-bar>button small{display:block}.shuttle-map-bar>button b{font-size:12px;line-height:1.15}.shuttle-map-bar>button small{margin-top:2px;color:#d7e8ed;font-size:9px}.shuttle-map-bar>button strong{font-size:24px;font-weight:400}.home-active .shuttle-map-bar,.navigation-active .shuttle-map-bar{display:none!important}.shuttle-planner{margin:10px 0 14px;padding:13px;border-radius:16px;background:#fff;box-shadow:0 3px 14px rgba(16,43,56,.07)}.shuttle-planner label{display:block;margin-bottom:7px;color:#173746;font-size:12px;font-weight:800}.shuttle-search-row{display:flex;gap:8px}.shuttle-search-row input{min-width:0;flex:1;height:46px;border:1px solid #c9d4d8;border-radius:12px;padding:0 11px;font-size:14px}.shuttle-search-row button{min-width:104px;border:0;border-radius:12px;background:#173746;color:#fff;font-weight:800}.shuttle-live-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:16px 2px 8px}.shuttle-live-heading b{color:#173746;font-size:14px}.shuttle-live-heading small{max-width:52%;color:#77858a;text-align:right;font-size:10px}
.shuttle-status{display:flex;align-items:center;gap:9px;margin:16px 0 10px;padding:11px 13px;border-radius:13px;background:#e9eee9;color:#46675d;font-size:12px}.shuttle-status span{width:8px;height:8px;border-radius:50%;background:#98a39f}.shuttle-status.live span{background:#2db67f;box-shadow:0 0 0 4px rgba(45,182,127,.13)}.shuttle-list{display:grid;gap:9px}.shuttle-card{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:11px;padding:13px;border:1px solid #e0ded8;border-radius:15px;background:#fff}.bus-badge{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#123746;color:#fff;font-size:11px;font-weight:900}.shuttle-card h3{margin:0 0 4px;font-size:14px}.shuttle-card p{margin:0;color:#7b878a;font-size:11px}.bus-speed{text-align:right;color:#1d7158;font-size:13px;font-weight:800}.bus-speed small{display:block;color:#8b9697;font-size:9px;font-weight:500}.shuttle-empty{text-align:center;padding:24px 12px;color:#899293;font-size:13px}.shuttle-updated{text-align:center;margin-top:12px;color:#8c9495;font-size:10px}
.shuttle-mini-map{margin:12px 0;border-radius:16px;overflow:hidden;background:#fff}.shuttle-mini-title{display:flex;justify-content:space-between;padding:10px 12px;font-size:11px}.shuttle-mini-canvas{position:relative}.shuttle-mini-canvas img{display:block;width:100%}.shuttle-mini-canvas svg{position:absolute;inset:0;width:100%;height:100%}.mini-walk-line{fill:none;stroke:#e53935;stroke-width:1.4;stroke-dasharray:2 1}.mini-bus-line{fill:none;stroke-width:2}.mini-origin{fill:#1976d2}.mini-station{fill:#ffc107}.mini-destination{fill:#e53935}.shuttle-journey{display:grid;gap:8px;margin:12px 0}.shuttle-journey h3{margin:0 0 4px}.journey-step{padding:11px 12px;border-left:4px solid #e53935;border-radius:12px;background:#fff}.journey-step.bus.blue{border-color:#1976d2}.journey-step.bus.red{border-color:#e53935}.journey-step b,.journey-step span{display:block}.journey-step span{margin-top:3px;color:#6f7d82;font-size:11px}

button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #f3b51b;outline-offset:2px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(min-width:720px){
 .mobile-dock{display:none}.map-viewport{inset:calc(120px + var(--safe-top)) 0 0}.map-filters{top:calc(72px + var(--safe-top));padding-left:18px;padding-right:18px}.topbar{height:calc(72px + var(--safe-top));padding-left:18px;padding-right:18px}.menu-btn{width:auto;min-width:98px}.menu-btn #menuBtnLabel{display:inline}.brand-block{text-align:left}.location-guard{top:calc(132px + var(--safe-top));left:18px}.zoom-controls{top:calc(134px + var(--safe-top));right:18px}.return-room-btn{top:calc(278px + var(--safe-top));right:18px}.poi-card{bottom:18px;padding-bottom:18px}.shuttle-sheet{left:50%;right:auto;width:min(560px,calc(100% - 36px));transform:translateX(-50%);border-radius:28px 28px 0 0}
}
.mobile-dock button[data-mobile-action="alfred"] span img{width:30px;height:30px;object-fit:contain;border-radius:50%;background:#fff}

/* V18.3.5 Voice of Guest */
.voice-guest-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;width:100%;margin-top:14px;padding:15px 16px;border:1px solid rgba(118,99,66,.24);border-radius:20px;background:linear-gradient(135deg,rgba(255,253,248,.98),rgba(244,238,225,.96));color:var(--alfred-navy);text-align:left;box-shadow:0 10px 26px rgba(13,52,67,.08)}
.voice-guest-card .voice-guest-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--alfred-navy);color:#d7c18e;font-size:26px}.voice-guest-card>span:nth-child(2){display:grid;gap:3px}.voice-guest-card small{color:var(--alfred-gold);font-size:8px;font-weight:900;letter-spacing:.15em}.voice-guest-card b{font:500 17px Georgia,serif}.voice-guest-card em{color:#6d7974;font-size:10px;font-style:normal;line-height:1.35}.voice-guest-card>strong{font-size:27px;font-weight:400;color:var(--alfred-gold)}
.voice-guest-backdrop{position:fixed;z-index:175;inset:0;background:rgba(5,22,31,.55);backdrop-filter:blur(4px)}
.voice-guest-sheet{position:fixed;z-index:180;left:50%;bottom:0;width:min(620px,100%);max-height:94dvh;overflow:auto;transform:translateX(-50%);padding:12px 20px calc(24px + var(--safe-bottom));border-radius:28px 28px 0 0;background:#fffdf8;color:var(--alfred-navy);box-shadow:0 -24px 70px rgba(5,22,31,.3);animation:sheetUp .22s ease-out}
.voice-guest-close{position:absolute;right:16px;top:16px;width:38px;height:38px;border:0;border-radius:12px;background:#eee9df;color:var(--alfred-navy);font-size:24px}.voice-guest-head{padding:10px 46px 13px 0}.voice-guest-head small{color:var(--alfred-gold);font-size:9px;font-weight:900;letter-spacing:.16em}.voice-guest-head h2{margin:5px 0 6px;font:500 28px/1.15 Georgia,serif}.voice-guest-head p{margin:0;color:#697873;font-size:12px;line-height:1.5}
.voice-guest-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}.voice-guest-form>label,.voice-guest-form fieldset{display:grid;gap:6px;min-width:0;margin:0;padding:0;border:0}.voice-guest-form>label:nth-of-type(3),.voice-guest-form>small,.voice-guest-form>button,.voice-guest-result{grid-column:1/-1}.voice-guest-form label>span,.voice-guest-form legend{color:#435b60;font-size:10px;font-weight:800}.voice-guest-form select,.voice-guest-form textarea{width:100%;border:1px solid #d8dfda;border-radius:13px;background:#fff;color:var(--alfred-navy);padding:11px 12px;font:12px Arial,sans-serif;outline:none}.voice-guest-form select{height:46px}.voice-guest-form textarea{resize:vertical;line-height:1.5}.voice-guest-form select:focus,.voice-guest-form textarea:focus{border-color:#a98b51;box-shadow:0 0 0 3px rgba(169,139,81,.13)}.voice-guest-form>small{color:#71807a;font-size:10px}
.voice-rating{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:3px;min-height:46px;align-items:center}.voice-rating input{position:absolute;opacity:0;pointer-events:none}.voice-rating label{color:#cbd1cc;cursor:pointer;font-size:34px;line-height:1}.voice-rating label:hover,.voice-rating label:hover~label,.voice-rating input:checked~label{color:#b58e43}.voice-rating input:focus-visible+label{outline:2px solid var(--alfred-navy);outline-offset:2px;border-radius:4px}
.voice-guest-submit{min-height:48px;border:0;border-radius:14px;background:var(--alfred-navy);color:#fff;font-size:12px;font-weight:900}.voice-guest-submit:disabled{opacity:.65}.voice-guest-result{padding:12px 14px;border-radius:13px;font-size:11px;line-height:1.45}.voice-guest-result.success{background:#eaf5ef;color:#176342}.voice-guest-result.attention{background:#fff4dc;color:#765414}.voice-guest-result.error{background:#fdebea;color:#9b2d2d}
.public-review-section{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:17px;padding-top:16px;border-top:1px solid rgba(118,99,66,.18)}.public-review-section>div:first-child{display:grid;gap:3px}.public-review-section b{font:500 16px Georgia,serif}.public-review-section small{color:#6c7a75;font-size:10px;line-height:1.4}.public-review-actions{display:flex;gap:7px}.public-review-actions a{display:grid;place-items:center;min-height:42px;padding:8px 12px;border:1px solid rgba(118,99,66,.28);border-radius:12px;background:#fff;color:var(--alfred-navy);text-decoration:none;font-size:10px;font-weight:900}
html[dir="rtl"] .voice-guest-card,html[dir="rtl"] .voice-guest-sheet{text-align:right}html[dir="rtl"] .voice-guest-close{right:auto;left:16px}html[dir="rtl"] .voice-guest-head{padding-right:0;padding-left:46px}.voice-guest-open{overflow:hidden}
@media(max-width:560px){.voice-guest-form{grid-template-columns:1fr}.voice-guest-form>label,.voice-guest-form fieldset{grid-column:1}.public-review-section{grid-template-columns:1fr}.public-review-actions{display:grid;grid-template-columns:1fr 1fr}.voice-guest-sheet{padding-left:16px;padding-right:16px}.voice-guest-card{margin-top:12px}}
@media(min-width:720px){.concierge-home{grid-template-areas:"welcome weather" "search search" "answer answer" "actions agendaHead" "actions agenda" "exploreHead mapHead" "categories map" "voice voice"}.voice-guest-card{grid-area:voice;margin-top:2px}.voice-guest-sheet{bottom:22px;border-radius:28px}}
@media(min-width:720px) and (max-width:980px){.concierge-home{grid-template-areas:"welcome" "weather" "search" "answer" "actions" "exploreHead" "categories" "agendaHead" "agenda" "mapHead" "map" "voice"}}

/* V18.3 Alfred conversational concierge */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.alfred-chat-fab{position:fixed;z-index:92;right:14px;bottom:calc(var(--dock-height) + 14px + var(--safe-bottom));display:flex;align-items:center;gap:9px;min-height:48px;padding:6px 14px 6px 7px;border:1px solid rgba(183,154,98,.48);border-radius:999px;background:var(--alfred-navy);color:var(--alfred-ivory);box-shadow:0 12px 32px rgba(6,28,39,.3);font-size:11px;font-weight:850;letter-spacing:.02em}
.alfred-chat-fab img{width:35px;height:35px;padding:4px;border-radius:50%;background:var(--alfred-ivory)}
body.home-active .alfred-chat-fab{display:none}
@media(max-width:719px){body.shuttle-map-active .alfred-chat-fab{bottom:calc(var(--dock-height) + 96px + var(--safe-bottom))}}
.alfred-chat-backdrop{position:fixed;z-index:280;inset:0;background:rgba(4,19,28,.52);backdrop-filter:blur(4px)}
.alfred-chat-panel{position:fixed;z-index:290;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;background:linear-gradient(180deg,#f7f2e8 0,#f7f5ef 26%,#eef3f1 100%);color:var(--alfred-navy);overflow:hidden}
.alfred-chat-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:calc(11px + var(--safe-top)) 12px 11px;border-bottom:1px solid rgba(118,99,66,.18);background:rgba(255,253,248,.97);box-shadow:0 5px 18px rgba(13,52,67,.07)}
.alfred-chat-avatar{display:grid;place-items:center;width:44px;height:44px;overflow:hidden;border:1px solid rgba(118,99,66,.25);border-radius:15px;background:var(--alfred-ivory)}.alfred-chat-avatar img{width:82%;height:82%}
.alfred-chat-head>div:nth-child(2){display:grid;gap:3px}.alfred-chat-head strong{font:500 20px Georgia,serif}.alfred-chat-head small{display:flex;align-items:center;gap:6px;color:#70807a;font-size:10px}.alfred-chat-head small i{width:7px;height:7px;border-radius:50%;background:#2aa876;box-shadow:0 0 0 3px rgba(42,168,118,.12)}
.alfred-chat-head>button{width:38px;height:38px;border:0;border-radius:12px;background:#ece8de;color:var(--alfred-navy);font-size:20px}.alfred-chat-head #alfredChatClose{font-size:25px}
.alfred-chat-messages{display:flex;flex-direction:column;gap:10px;overflow:auto;padding:18px 14px 12px;scroll-behavior:smooth;overscroll-behavior:contain}
.alfred-chat-message{display:grid;gap:4px;max-width:88%;animation:alfredMessageIn .18s ease-out}.alfred-chat-message.user{align-self:flex-end;justify-items:end}.alfred-chat-message.assistant{align-self:flex-start;justify-items:start}
.alfred-chat-bubble{padding:11px 13px;border:1px solid rgba(118,99,66,.16);border-radius:17px 17px 17px 5px;background:#fffdf8;color:#253f47;box-shadow:0 5px 15px rgba(13,52,67,.07);font-size:13px;line-height:1.48;white-space:pre-wrap}.alfred-chat-message.user .alfred-chat-bubble{border-color:var(--alfred-navy);border-radius:17px 17px 5px 17px;background:var(--alfred-navy);color:#fff}
.alfred-chat-message>small{padding:0 5px;color:#87918d;font-size:8px}.alfred-chat-message-actions{display:flex;flex-wrap:wrap;gap:6px;max-width:100%;margin-top:3px}.alfred-chat-message-actions button,.alfred-chat-message-actions a{min-height:36px;padding:8px 11px;border:1px solid rgba(118,99,66,.32);border-radius:11px;background:#fffdf8;color:var(--alfred-navy);text-decoration:none;font-size:10px;font-weight:850}.alfred-chat-message-actions .primary{border-color:var(--alfred-gold-soft);background:var(--alfred-gold-soft);color:var(--alfred-navy)}
.alfred-chat-typing .alfred-chat-bubble{display:flex;align-items:center;gap:5px;min-width:55px}.alfred-chat-typing i{width:6px;height:6px;border-radius:50%;background:#8b7956;animation:alfredTyping 1.1s infinite}.alfred-chat-typing i:nth-child(2){animation-delay:.16s}.alfred-chat-typing i:nth-child(3){animation-delay:.32s}
.alfred-chat-quick-actions{display:flex;gap:7px;overflow-x:auto;padding:8px 12px 9px;scrollbar-width:none}.alfred-chat-quick-actions::-webkit-scrollbar{display:none}.alfred-chat-quick-actions button{flex:0 0 auto;min-height:34px;padding:7px 11px;border:1px solid rgba(118,99,66,.25);border-radius:999px;background:#fffdf8;color:var(--alfred-navy);font-size:10px;font-weight:750}
.alfred-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:9px 11px calc(9px + var(--safe-bottom));border-top:1px solid rgba(118,99,66,.16);background:rgba(255,253,248,.97)}.alfred-chat-compose textarea{width:100%;max-height:120px;min-height:46px;resize:none;padding:12px 14px;border:1px solid #d4dad6;border-radius:16px;background:#fff;color:#173746;outline:none;font-size:14px;line-height:1.35}.alfred-chat-compose textarea:focus{border-color:var(--alfred-gold-soft);box-shadow:0 0 0 3px rgba(183,154,98,.14)}.alfred-chat-compose button{width:46px;height:46px;border:0;border-radius:15px;background:var(--alfred-navy);color:#fff;font-size:17px}.alfred-chat-compose button:disabled{opacity:.5}
.alfred-chat-disclaimer{padding:6px 13px calc(7px + var(--safe-bottom));background:rgba(255,253,248,.97);color:#7d6a49;text-align:center;font-size:8px;line-height:1.3}
html[dir="rtl"] .alfred-chat-message.assistant{align-self:flex-end;justify-items:end}html[dir="rtl"] .alfred-chat-message.user{align-self:flex-start;justify-items:start}html[dir="rtl"] .alfred-chat-bubble{border-radius:17px 17px 5px 17px}html[dir="rtl"] .alfred-chat-message.user .alfred-chat-bubble{border-radius:17px 17px 17px 5px}
@keyframes alfredTyping{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}@keyframes alfredMessageIn{from{opacity:0;transform:translateY(6px)}}
@media(min-width:720px){
 .alfred-chat-fab{right:24px;bottom:24px}.alfred-chat-panel{inset:18px 18px 18px auto;width:min(440px,calc(100% - 36px));border:1px solid rgba(118,99,66,.24);border-radius:26px;box-shadow:0 24px 80px rgba(5,24,34,.35)}.alfred-chat-head{padding-top:11px}.alfred-chat-compose{padding-bottom:9px}.alfred-chat-disclaimer{padding-bottom:8px}
}
html[dir="rtl"] .side-menu{border-radius:24px 0 0 24px}.menu-buttons{display:grid;gap:8px}

/* V16.3 Digital Concierge */
.concierge-home{display:none}
@media(max-width:719px){
 body.home-active{overflow:auto;background:#f4f1ea}
 body.home-active .topbar,body.home-active #mapViewport,body.home-active #mapFilters,body.home-active #zoomControls,body.home-active #returnRoomBtn,body.home-active #locationGuard{display:none!important}
 body.home-active .concierge-home{display:block}
 .concierge-home{min-height:calc(100dvh - 70px);padding:calc(18px + var(--safe-top)) 18px calc(98px + var(--safe-bottom));background:linear-gradient(180deg,#f9f7f2 0,#f4f1ea 42%,#eef2f1 100%);color:#14333d}
 .concierge-welcome{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px}
 .concierge-brand{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#123746;color:#fff;font-family:Georgia,serif;font-size:22px}
 .concierge-welcome small{display:block;font-size:9px;letter-spacing:.14em;color:#7b877f}
 .concierge-welcome h2{margin:2px 0 0;font-family:Georgia,serif;font-size:22px;font-weight:500}
 .concierge-welcome p{margin:1px 0;color:#728078;font-size:11px}
 .home-change-room{margin:4px 0 0;padding:0;border:0;background:transparent;color:#8b6b35;font-size:10px;font-weight:800;text-decoration:underline;text-underline-offset:2px}.concierge-weather i{font-style:normal}.alfred-correction{display:block;color:#8b6b35;font-size:10px;font-weight:800}
 #conciergeLanguage{width:58px;height:39px;border:1px solid #d7ddd8;border-radius:13px;background:#fff;color:#14333d;padding:0 7px;font-weight:700}
 .concierge-weather{display:flex;justify-content:space-between;align-items:center;margin:19px 0 12px;padding:9px 12px;border:1px solid #dfe3df;border-radius:13px;background:#ffffffb8;font-size:12px}
 .concierge-weather small{color:#617069}
 .concierge-search{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:16px;border-radius:20px;background:#123746;color:#fff;box-shadow:0 13px 28px #12374627}
 .concierge-search>span{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#ffffff17;color:#d5b873;font-size:20px}
 .concierge-search label{display:grid;gap:2px}.concierge-search label small{color:#c1cdca;font-size:11px}
 .concierge-message-row{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:3px}
 .concierge-search input{width:100%;min-width:0;border:1px solid #ffffff26;border-radius:12px;background:#ffffff12;color:#fff;padding:11px 12px;outline:none}
 .concierge-search input:focus{border-color:#d5b873;box-shadow:0 0 0 3px #d5b87324}
 .concierge-send{display:flex;align-items:center;justify-content:center;gap:6px;min-width:76px;border:1px solid #d5b873;border-radius:12px;background:#d5b873;color:#123746;padding:0 12px;font-size:10px;font-weight:900}
 .concierge-send span{font-size:13px;transform:rotate(-8deg)}
 html[dir="rtl"] .concierge-send span{transform:rotate(188deg)}
 .concierge-search input::placeholder{color:#c5cfcc}
 .concierge-suggestions{grid-column:1/-1;display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.concierge-suggestions::-webkit-scrollbar{display:none}
 .concierge-suggestions button{flex:0 0 auto;padding:7px 9px;border:1px solid #ffffff26;border-radius:999px;background:#ffffff10;color:#e8eeee;font-size:9px}
 .concierge-answer{display:grid;gap:9px;margin-top:10px;padding:14px;border:1px solid #d9e1dc;border-radius:17px;background:#fff;color:#14333d;box-shadow:0 9px 22px #18382e0c}
 .concierge-answer-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px}.concierge-answer-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf3f1;color:#123746}
 .concierge-answer h3{margin:0;font-family:Georgia,serif;font-size:16px;font-weight:500}.concierge-answer p{margin:0;color:#66756e;font-size:11px;line-height:1.45}
 .concierge-answer-actions{display:flex;flex-wrap:wrap;gap:7px}.concierge-answer-actions button,.concierge-answer-actions a{min-height:38px;padding:9px 11px;border:1px solid #d6ded9;border-radius:11px;background:#fff;color:#14333d;text-decoration:none;font-size:10px;font-weight:800}
 .concierge-answer-actions .primary{border-color:#123746;background:#123746;color:#fff}
 .concierge-answer-list{display:grid;gap:6px}.concierge-answer-place{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;width:100%;padding:9px 10px;border:1px solid #e1e6e2;border-radius:11px;background:#fafcfb;color:#14333d;text-align:left}.concierge-answer-place span{display:grid;gap:2px}.concierge-answer-place small{color:#728078;font-size:9px}
 .concierge-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
 .concierge-actions button{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;text-align:left;min-height:74px;padding:13px;border:1px solid #dde2de;border-radius:18px;background:#fff;color:#14333d;box-shadow:0 7px 18px #18382e0d}
 .concierge-actions button>span{grid-row:1/3;display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#edf3f1;color:#123746;font-size:20px}
 .concierge-actions button b{align-self:end;font-size:13px}.concierge-actions button small{align-self:start;color:#75827b;font-size:10px}
 .concierge-section-head{display:flex;align-items:center;justify-content:space-between;margin:21px 1px 10px}
 .concierge-section-head h3{margin:0;font-family:Georgia,serif;font-size:18px;font-weight:500}
 .concierge-section-head button{border:0;background:transparent;color:#556a62;font-size:11px}
 .agenda-heading{align-items:flex-end}.agenda-heading small{color:#718078;font-size:10px;text-transform:capitalize}
 .agenda-list{display:grid;gap:8px}
 .agenda-item{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:10px;width:100%;padding:12px;border:1px solid #dfe4e0;border-radius:16px;background:#fff;color:#14333d;text-align:left}
 .agenda-item time{display:grid;place-items:center;min-height:38px;border-radius:11px;background:#edf3f1;font-weight:800;font-size:12px}
 .agenda-item span{display:grid;gap:3px}.agenda-item b{font-size:12px}.agenda-item small{color:#748079;font-size:10px}
 .agenda-item em{padding:5px 7px;border-radius:999px;background:#123746;color:#fff;font-size:8px;font-style:normal;letter-spacing:.05em}
 .agenda-item.active{border-color:#c9a75e;background:#fffaf0}.agenda-empty{padding:18px 12px;border:1px dashed #ccd5cf;border-radius:16px;color:#748079;text-align:center;font-size:11px}
 .concierge-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
 .concierge-categories button{display:grid;justify-items:center;gap:7px;min-width:0;padding:11px 3px;border:1px solid #dfe4e0;border-radius:15px;background:#fff;color:#14333d;font-size:10px}
 .concierge-categories span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#edf3f1;color:#123746;font-size:17px}
 .concierge-map-preview{display:grid;grid-template-columns:112px 1fr;align-items:center;gap:12px;width:100%;overflow:hidden;padding:0;border:1px solid #dce2dd;border-radius:20px;background:#fff;color:#14333d;text-align:left;box-shadow:0 9px 22px #18382e0c}
 .concierge-map-preview img{width:112px;height:92px;object-fit:cover}
 .concierge-map-preview span{display:grid;gap:5px;padding-right:10px}.concierge-map-preview b{font-size:12px}.concierge-map-preview small{font-size:10px;color:#748079}
 .mobile-dock{background:#fbfcfadd;border-top-color:#dce2dd;backdrop-filter:blur(18px)}
 .mobile-dock button.active{background:transparent;color:#123746}.mobile-dock button.active span{display:grid;place-items:center;min-width:32px;min-height:28px;background:#123746;color:#fff;border-radius:11px}
}
.event-now-popup{position:fixed;z-index:140;top:calc(14px + var(--safe-top));left:50%;width:min(420px,calc(100% - 24px));transform:translateX(-50%);display:grid;gap:5px;padding:16px 48px 15px 16px;border:1px solid #d6b86e;border-radius:18px;background:#fffaf0;color:#173746;box-shadow:0 16px 45px #071b2740}
.event-now-popup>small{color:#a17934;font-size:9px;font-weight:900;letter-spacing:.14em}.event-now-popup>strong{font-family:Georgia,serif;font-size:20px}.event-now-popup>span{color:#5f706e;font-size:12px;line-height:1.4}
.event-now-popup #closeEventNow{position:absolute;right:10px;top:10px;width:32px;height:32px;border:0;border-radius:50%;background:#eee8dc;color:#173746;font-size:20px}
.event-now-popup #viewEventAgenda{justify-self:start;margin-top:5px;padding:8px 11px;border:0;border-radius:10px;background:#123746;color:#fff;font-size:11px;font-weight:800}

.welcome-hint.validation-error{color:#b42318;font-weight:700}.my-accommodation b{line-height:1.35}

/* V17.4 professional directions */
.route-destination-marker{position:absolute;z-index:12;display:flex;align-items:center;gap:7px;transform:translate(-17px,-42px);pointer-events:none}.route-destination-marker>span{display:grid;place-items:center;width:34px;height:40px;border:3px solid #fff;border-radius:17px 17px 17px 4px;background:#173746;color:#fff;box-shadow:0 4px 12px #081e2a59;font-size:20px}.route-destination-marker>b{max-width:160px;padding:7px 10px;border:1px solid #dbe4e6;border-radius:10px;background:#fff;color:#173746;box-shadow:0 4px 14px #0b27343d;font-size:11px;line-height:1.2;white-space:normal}
.travel-mode-backdrop{position:fixed;z-index:155;inset:0;background:rgba(5,22,31,.48);backdrop-filter:blur(3px)}
.travel-mode-sheet{position:fixed;z-index:160;left:0;right:0;bottom:0;padding:10px 16px calc(22px + var(--safe-bottom));border-radius:28px 28px 0 0;background:#f8faf9;box-shadow:0 -20px 60px #061c2938;animation:sheetUp .22s ease-out}
.travel-mode-close{position:absolute;right:15px;top:15px;width:38px;height:38px;border:0;border-radius:12px;background:#e9efed;color:#173746;font-size:24px}.travel-mode-kicker{display:block;margin-top:4px;color:#8b6b35;font-size:9px;font-weight:900;letter-spacing:.16em}.travel-mode-sheet h2{margin:5px 46px 14px 0;font:500 27px/1.15 Georgia,serif;color:#173746}
.travel-destination{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:11px 12px;border:1px solid #dce6e3;border-radius:15px;background:#fff}.travel-destination-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#173746;color:#fff;font-size:19px}.travel-destination>span:last-child{display:grid;gap:2px;min-width:0}.travel-destination small{color:#70817d;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.travel-destination b{overflow:hidden;color:#173746;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.travel-mode-options{display:grid;gap:9px}.travel-mode-option{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;min-height:74px;padding:11px 13px;border:1px solid #d9e3e0;border-radius:18px;background:#fff;color:#173746;text-align:left;box-shadow:0 5px 16px #102f3a0b}.travel-mode-option:active{transform:scale(.99)}.travel-mode-option>.travel-mode-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e9f1fe;color:#1a73e8;font-size:24px}.travel-mode-option>span:nth-child(2){display:grid;gap:4px}.travel-mode-option b{font-size:15px}.travel-mode-option small{color:#6d7f7c;font-size:11px;line-height:1.3}.travel-mode-option>strong{font-size:25px;font-weight:400;color:#778580}.travel-mode-option.shuttle>.travel-mode-icon{background:#e8f3ef;color:#176c57}.travel-mode-option.shuttle em{position:absolute;right:35px;top:10px;display:flex;align-items:center;gap:4px;color:#16805e;font-size:8px;font-style:normal;font-weight:900;letter-spacing:.08em}.travel-mode-option.shuttle em i{width:6px;height:6px;border-radius:50%;background:#28a96b;box-shadow:0 0 0 3px #28a96b20}
.shuttle-walk-shadow{fill:none;stroke:#fff;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.shuttle-walk-line{fill:none;stroke:#1a73e8;stroke-width:4;stroke-dasharray:1.2 1.2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.travel-mode-icon svg{width:25px;height:25px;fill:currentColor}
.shuttle-station.nearest,.shuttle-station.trip-start,.shuttle-station.trip-end{border-radius:6px 6px 3px 3px;box-shadow:0 0 0 3px rgba(18,55,70,.2),0 3px 9px #0006}.shuttle-station.trip-start{outline:2px solid #2aa876;outline-offset:2px}.shuttle-station.trip-end{outline:2px solid #173746;outline-offset:2px}
html[dir="rtl"] .travel-mode-close{right:auto;left:15px}html[dir="rtl"] .travel-mode-sheet h2{margin-right:0;margin-left:46px}html[dir="rtl"] .travel-mode-option{text-align:right}html[dir="rtl"] .travel-mode-option.shuttle em{right:auto;left:35px}
@media(min-width:720px){.travel-mode-sheet{left:50%;right:auto;width:460px;bottom:22px;transform:translateX(-50%);border-radius:28px;padding-bottom:22px}.route-destination-marker>b{max-width:220px}}

/* V17.5 live Shuttle intelligence */
.bus-arrival{display:block;margin-top:5px;color:#176b55;font-size:10px;font-weight:800;line-height:1.35}
.bus-marker[data-route-line="blue"]{background:#165a96}
.bus-marker[data-route-line="red"]{background:#a9363e}

/* V18 Alfred browser experience */
.alfred-ai-badge{justify-self:end;padding:4px 7px;border:1px solid #d8bd7b;border-radius:999px;background:#fff8e8;color:#8a682e;font-size:8px;font-weight:900;letter-spacing:.1em}.alfred-thinking{animation:alfredPulse 1.25s ease-in-out infinite}.alfred-loading .concierge-send{opacity:.7;cursor:wait}@keyframes alfredPulse{50%{box-shadow:0 0 0 8px #d5b87320;transform:scale(.96)}}
@media(min-width:720px){
 body.home-active{overflow:auto;background:linear-gradient(135deg,#f9f7f2 0,#f2eee5 48%,#eaf0ee 100%)}body.home-active .topbar,body.home-active #mapViewport,body.home-active #mapFilters,body.home-active #zoomControls,body.home-active #returnRoomBtn,body.home-active #locationGuard{display:none!important}body.home-active .concierge-home{display:grid}
 .concierge-home{grid-template-columns:minmax(0,1.15fr) minmax(340px,.75fr);grid-template-areas:"welcome weather" "search search" "answer answer" "actions agendaHead" "actions agenda" "exploreHead mapHead" "categories map";gap:16px 28px;width:min(1380px,100%);min-height:100vh;margin:auto;padding:32px clamp(28px,5vw,78px) 118px;color:#14333d}
 .mobile-dock{display:grid;left:50%;right:auto;bottom:18px;width:430px;height:66px;padding:7px 10px;transform:translateX(-50%);border:1px solid #d9e1dd;border-radius:22px;background:#fbfcfaf2;box-shadow:0 14px 38px #0c2a3626;backdrop-filter:blur(18px)}.mobile-dock button{border-radius:15px}.mobile-dock button.active{background:#eaf2f0;color:#123746}.mobile-dock button.active span{display:grid;place-items:center;min-width:34px;min-height:28px;border-radius:10px;background:#123746;color:#fff}
 .concierge-welcome{grid-area:welcome;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}.concierge-brand{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#123746;color:#fff;font:28px Georgia,serif;box-shadow:0 10px 24px #12374629}.concierge-welcome small{display:block;color:#7b877f;font-size:10px;letter-spacing:.16em}.concierge-welcome h2{margin:3px 0 0;font:500 28px Georgia,serif}.concierge-welcome p{margin:2px 0;color:#728078;font-size:12px}.home-change-room{font-size:11px}#conciergeLanguage{width:72px;height:44px;border:1px solid #d7ddd8;border-radius:14px;background:#fff;color:#14333d;padding:0 10px;font-weight:800}
 .concierge-weather{grid-area:weather;display:flex;align-items:center;justify-content:space-between;align-self:center;padding:13px 15px;border:1px solid #dfe3df;border-radius:15px;background:#ffffffc9;font-size:13px}.concierge-weather small{color:#617069}
 .concierge-search{grid-area:search;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:22px 24px;border-radius:24px;background:linear-gradient(135deg,#123746,#1b5262);color:#fff;box-shadow:0 18px 44px #12374630}.concierge-search>span{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#ffffff17;color:#d5b873;font-size:23px}.concierge-search label{display:grid;gap:3px}.concierge-search label b{font:500 21px Georgia,serif}.concierge-search label small{color:#c9d5d2;font-size:12px}.concierge-message-row{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:5px}.concierge-search input{width:100%;height:52px;border:1px solid #ffffff2b;border-radius:14px;background:#ffffff14;color:#fff;padding:0 16px;outline:none;font-size:15px}.concierge-search input::placeholder{color:#c5cfcc}.concierge-search input:focus{border-color:#d5b873;box-shadow:0 0 0 3px #d5b87324}.concierge-send{display:flex;align-items:center;justify-content:center;gap:7px;min-width:104px;border:1px solid #d5b873;border-radius:14px;background:#d5b873;color:#123746;padding:0 17px;font-weight:900}.concierge-suggestions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px}.concierge-suggestions button{padding:8px 11px;border:1px solid #ffffff26;border-radius:999px;background:#ffffff10;color:#edf2f0;font-size:10px}
 .concierge-answer{grid-area:answer;display:grid;gap:10px;padding:18px 20px;border:1px solid #d9e1dc;border-radius:19px;background:#fff;color:#14333d;box-shadow:0 10px 28px #18382e12}.concierge-answer-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.concierge-answer-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#edf3f1;color:#123746;font-weight:900}.concierge-answer h3,.concierge-answer p{margin:0}.concierge-answer h3{font:500 18px Georgia,serif}.concierge-answer p{color:#66756e;font-size:13px;line-height:1.5}.concierge-answer-actions{display:flex;flex-wrap:wrap;gap:8px}.concierge-answer-actions button,.concierge-answer-actions a{min-height:40px;padding:9px 13px;border:1px solid #d6ded9;border-radius:11px;background:#fff;color:#14333d;text-decoration:none;font-size:11px;font-weight:800}.concierge-answer-actions .primary{border-color:#123746;background:#123746;color:#fff}.concierge-answer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.concierge-answer-place{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:10px 12px;border:1px solid #e1e6e2;border-radius:12px;background:#fafcfb;color:#14333d;text-align:left}.concierge-answer-place span{display:grid;gap:2px}.concierge-answer-place small{color:#728078;font-size:10px}
 .concierge-actions{grid-area:actions;display:grid;grid-template-columns:1fr 1fr;gap:11px;align-self:start}.concierge-actions button{display:grid;grid-template-columns:auto 1fr;column-gap:11px;align-items:center;min-height:86px;padding:15px;border:1px solid #dde2de;border-radius:20px;background:#fff;color:#14333d;text-align:left;box-shadow:0 8px 22px #18382e0d}.concierge-actions button>span{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#edf3f1;color:#123746;font-size:21px}.concierge-actions button b{align-self:end;font-size:14px}.concierge-actions button small{align-self:start;color:#75827b;font-size:10px}
 .concierge-actions+.concierge-section-head{grid-area:exploreHead}.concierge-categories{grid-area:categories;display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.concierge-categories+.concierge-section-head{grid-area:agendaHead}.agenda-list{grid-area:agenda;display:grid;gap:8px;align-self:start}.agenda-list+.concierge-section-head{grid-area:mapHead}.concierge-map-preview{grid-area:map;display:grid;grid-template-columns:145px 1fr;align-items:center;align-self:start;gap:14px;overflow:hidden;padding:0;border:1px solid #dce2dd;border-radius:21px;background:#fff;color:#14333d;text-align:left;box-shadow:0 10px 25px #18382e0d}.concierge-map-preview img{width:145px;height:110px;object-fit:cover}.concierge-map-preview span{display:grid;gap:5px;padding-right:14px}.concierge-map-preview small{color:#748079}.concierge-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:5px 1px 0}.concierge-section-head h3{margin:0;font:500 20px Georgia,serif}.concierge-section-head button{border:0;background:transparent;color:#556a62}.agenda-item{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid #dfe4e0;border-radius:16px;background:#fff;color:#14333d;text-align:left}.agenda-item time{display:grid;place-items:center;min-height:40px;border-radius:11px;background:#edf3f1;font-weight:800}.agenda-item span{display:grid;gap:3px}.agenda-item small{color:#748079}.agenda-item em{padding:5px 7px;border-radius:999px;background:#123746;color:#fff;font-size:8px;font-style:normal}.agenda-empty{padding:20px;border:1px dashed #ccd5cf;border-radius:16px;color:#748079;text-align:center}.concierge-categories button{display:grid;justify-items:center;gap:8px;padding:13px 5px;border:1px solid #dfe4e0;border-radius:17px;background:#fff;color:#14333d}.concierge-categories span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#edf3f1;color:#123746;font-size:18px}
}
@media(min-width:720px) and (max-width:980px){.concierge-home{grid-template-columns:1fr;grid-template-areas:"welcome" "weather" "search" "answer" "actions" "exploreHead" "categories" "agendaHead" "agenda" "mapHead" "map";max-width:760px}.concierge-weather{margin:0}.concierge-map-preview{grid-template-columns:180px 1fr}.concierge-map-preview img{width:180px}}

/* V18.2 Alfred Digital Concierge identity */
:root{--alfred-navy:#0d3443;--alfred-navy-2:#174b5b;--alfred-gold:#766342;--alfred-gold-soft:#b79a62;--alfred-ivory:#fffaf0;--alfred-surface:#fffdf8;--brand:var(--alfred-navy);--accent:var(--alfred-gold)}
.welcome-panel{border:1px solid rgba(118,99,66,.2);background:rgba(255,253,248,.98)}
.welcome-logo{display:block;width:min(320px,88%);height:auto;margin:0 auto 8px;text-align:initial;font-size:initial;letter-spacing:initial}
.topbar{background:linear-gradient(130deg,var(--alfred-navy),#092632 72%,#123e4c);border-bottom:1px solid rgba(183,154,98,.35)}
.brand-block{display:flex;flex:1;min-width:0;align-items:center;gap:12px;text-align:left}
.topbar-logo{display:block;width:190px;max-width:42vw;height:47px;object-fit:contain;object-position:left center}
.brand-meta{display:grid;gap:3px;min-width:0;padding-left:12px;border-left:1px solid rgba(215,193,142,.32)}
.brand-meta .eyebrow{overflow:hidden;max-width:260px;color:#f3ead6;font-size:8px;font-weight:700;letter-spacing:.15em;text-overflow:ellipsis;white-space:nowrap;opacity:.82}
.version-badge{justify-self:start;padding:3px 7px;border:1px solid rgba(215,193,142,.4);border-radius:999px;color:#d7c18e;font-size:8px;font-weight:800;letter-spacing:.08em}
.concierge-home{background:radial-gradient(circle at 12% 2%,rgba(183,154,98,.13),transparent 28%),linear-gradient(145deg,#fffdf8 0,#f6f2e9 52%,#edf3f1 100%)}
.concierge-brand{overflow:hidden!important;border:1px solid rgba(118,99,66,.24)!important;background:var(--alfred-ivory)!important;box-shadow:0 10px 26px rgba(13,52,67,.14)!important}
.concierge-brand img{display:block;width:82%;height:82%;object-fit:contain}
.concierge-welcome small{color:var(--alfred-gold)!important;font-weight:800!important;letter-spacing:.18em!important}
.concierge-search{background:linear-gradient(135deg,var(--alfred-navy),var(--alfred-navy-2))!important;border:1px solid rgba(215,193,142,.3)}
.concierge-search>span{font-size:0!important;background:rgba(255,250,240,.96) url('alfred-mark.svg') center/82% no-repeat!important}
.concierge-send{border-color:var(--alfred-gold-soft)!important;background:var(--alfred-gold-soft)!important;color:var(--alfred-navy)!important}
.concierge-actions button,.concierge-categories button,.agenda-item,.concierge-map-preview,.concierge-weather,.concierge-answer{border-color:rgba(118,99,66,.18)!important;background:rgba(255,253,248,.94)!important}
.concierge-actions button>span,.concierge-categories span,.agenda-item time{background:#f1ece1!important;color:var(--alfred-navy)!important}
.home-change-room,.concierge-section-head button{color:var(--alfred-gold)!important}
.mobile-dock{border-color:rgba(118,99,66,.22)!important;background:rgba(255,253,248,.94)!important}
.mobile-dock button.active{color:var(--alfred-gold)!important}
.mobile-dock button.active span{background:var(--alfred-navy)!important;color:var(--alfred-ivory)!important;box-shadow:0 5px 14px rgba(13,52,67,.2)}
.chip.active,.primary-btn,.welcome-continue{background:var(--alfred-navy)!important}
.map-filters{scrollbar-width:none}.map-filters::-webkit-scrollbar{display:none}
@media(max-width:719px){
 .topbar-logo{width:152px;max-width:47vw;height:42px}.brand-meta{padding-left:8px}.brand-meta .eyebrow{display:none}.version-badge{padding:2px 6px;font-size:7px}
 body.home-active .concierge-home{background:radial-gradient(circle at 12% 0,rgba(183,154,98,.14),transparent 25%),linear-gradient(160deg,#fffdf8,#f6f1e8 58%,#edf3f1)}
 .concierge-welcome{padding-top:2px}.concierge-brand{width:48px!important;height:48px!important;border-radius:16px!important}
 .concierge-search{border-radius:22px!important;box-shadow:0 16px 32px rgba(13,52,67,.2)!important}
 .concierge-actions button{min-height:78px!important}.concierge-categories button{min-height:88px}
 .mobile-dock{box-shadow:0 -8px 28px rgba(13,52,67,.11)!important}
}
@media(min-width:720px){
 .topbar-logo{width:225px;max-width:none;height:54px}.brand-meta{display:flex;align-items:center;gap:10px}.brand-meta .eyebrow{max-width:none}
 .concierge-home{position:relative}.concierge-home:before{content:"";position:fixed;top:-180px;right:-140px;width:520px;height:520px;border:1px solid rgba(118,99,66,.09);border-radius:50%;pointer-events:none}
 .concierge-brand{width:62px!important;height:62px!important;border-radius:19px!important}
 .concierge-search{box-shadow:0 22px 52px rgba(13,52,67,.22)!important}
}

/* V18.4 separate Resort Search and Alfred AI */
.resort-search{position:relative;background:rgba(255,253,248,.98)!important;border:1px solid rgba(118,99,66,.2)!important;color:var(--alfred-navy)!important;box-shadow:0 14px 36px rgba(13,52,67,.1)!important}
.resort-search>span{font-size:25px!important;background:#efeadd!important;color:var(--alfred-navy)!important}
.resort-search label small{color:#71807a!important}.resort-search input{border:1px solid #d8dfda!important;background:#fff!important;color:var(--alfred-navy)!important}.resort-search input::placeholder{color:#8a9691!important}.resort-search input:focus{border-color:#a98b51!important;box-shadow:0 0 0 3px rgba(169,139,81,.13)!important}
.resort-search .concierge-suggestions button{border-color:rgba(118,99,66,.22)!important;background:#f5f1e8!important;color:#435b60!important}.resort-search .concierge-send{box-shadow:0 6px 15px rgba(118,99,66,.16)}
.alfred-home-invite{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:15px;width:100%;padding:17px 19px;border:1px solid rgba(215,193,142,.34);border-radius:22px;background:linear-gradient(135deg,var(--alfred-navy),#174b5b);color:#fff;text-align:left;box-shadow:0 17px 40px rgba(13,52,67,.2)}
.alfred-home-avatar{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(215,193,142,.38);border-radius:18px;background:#fffaf0}.alfred-home-avatar img{width:82%;height:82%;object-fit:contain}.alfred-home-invite>span:nth-child(2){display:grid;gap:4px}.alfred-home-invite small{color:#d7c18e;font-size:8px;font-weight:900;letter-spacing:.16em}.alfred-home-invite b{font:500 20px/1.2 Georgia,serif}.alfred-home-invite em{color:#d0dcda;font-size:11px;font-style:normal;line-height:1.4}.alfred-home-invite>strong{display:flex;align-items:center;gap:8px;color:#d7c18e;font-size:22px;font-weight:400}.alfred-home-invite>strong span{font-size:10px;font-weight:900;white-space:nowrap}
body.home-active .alfred-chat-fab{display:none}
html[dir="rtl"] .alfred-home-invite{text-align:right}
@media(max-width:560px){.alfred-home-invite{grid-template-columns:48px minmax(0,1fr) auto;gap:11px;padding:14px}.alfred-home-avatar{width:48px;height:48px;border-radius:15px}.alfred-home-invite b{font-size:17px}.alfred-home-invite em{font-size:10px}.alfred-home-invite>strong span{display:none}}
@media(min-width:720px){.concierge-home{grid-template-areas:"welcome weather" "search search" "alfred alfred" "answer answer" "actions agendaHead" "actions agenda" "exploreHead mapHead" "categories map" "voice voice"}.alfred-home-invite{grid-area:alfred}.voice-guest-card{grid-area:voice}.resort-search{grid-area:search}}
@media(min-width:720px) and (max-width:980px){.concierge-home{grid-template-areas:"welcome" "weather" "search" "alfred" "answer" "actions" "exploreHead" "categories" "agendaHead" "agenda" "mapHead" "map" "voice"}}
/* V18.5 structured multilingual digital menus */
.digital-menu-open{width:100%;min-height:48px;border:1px solid #b79a62!important;border-radius:14px;background:linear-gradient(135deg,#123746,#174b5b)!important;color:#fff!important}.digital-menu-backdrop{position:fixed;z-index:210;inset:0;background:rgba(3,18,26,.58);backdrop-filter:blur(4px)}.digital-menu-sheet{position:fixed;z-index:215;top:0;right:0;bottom:0;width:min(720px,100%);display:flex;flex-direction:column;background:#f7f5ef;color:#153641;box-shadow:-18px 0 55px #0017}.digital-menu-head{display:flex;align-items:center;justify-content:space-between;padding:calc(22px + var(--safe-top)) 22px 19px;background:linear-gradient(135deg,#0d3443,#174b5b);color:#fff}.digital-menu-head small{color:#d7c18e;font-size:9px;font-weight:900;letter-spacing:.17em}.digital-menu-head h2{margin:4px 48px 0 0;font:500 29px/1.1 Georgia,serif}.digital-menu-head button{width:42px;height:42px;border:1px solid #ffffff22;border-radius:14px;background:#ffffff12;color:#fff;font-size:27px}.digital-menu-tools{display:grid;gap:10px;padding:14px 18px 10px;border-bottom:1px solid #dedbd3;background:#fffdf8}.digital-menu-search{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:0 12px;border:1px solid #d8ddd8;border-radius:14px;background:#fff}.digital-menu-search span{color:#806b42;font-size:19px}.digital-menu-search input{height:47px;border:0;background:transparent;outline:0;color:#153641;font-size:14px}.digital-menu-tabs,.digital-menu-diets{display:flex;gap:7px;overflow:auto;padding-bottom:2px;scrollbar-width:none}.digital-menu-tabs::-webkit-scrollbar,.digital-menu-diets::-webkit-scrollbar{display:none}.digital-menu-tabs button,.digital-menu-diets button{flex:0 0 auto;padding:8px 11px;border:1px solid #d8ddd8;border-radius:999px;background:#fff;color:#536963;font-size:10px;font-weight:800}.digital-menu-tabs button.active{border-color:#123746;background:#123746;color:#fff}.digital-menu-diets button{background:#f0ede4}.digital-menu-diets button.active{border-color:#9d824d;background:#e8dcc3;color:#5e4820}.digital-menu-content{flex:1;overflow:auto;padding:17px 18px calc(90px + var(--safe-bottom))}.guest-menu-section{margin-bottom:20px}.guest-menu-section>h3{margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid #d9d5ca;font:500 22px Georgia,serif}.guest-dish-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.guest-dish-card{overflow:hidden;border:1px solid #dddcd5;border-radius:18px;background:#fffdf9;box-shadow:0 7px 19px #18382e0c}.guest-dish-card>img{width:100%;height:150px;object-fit:cover}.guest-dish-copy{display:grid;gap:8px;padding:13px}.guest-dish-title{display:flex;align-items:flex-start;justify-content:space-between;gap:7px}.guest-dish-title h4{margin:0;font:500 17px/1.2 Georgia,serif}.guest-dish-title i{flex:0 0 auto;padding:4px 6px;border-radius:999px;background:#efe4ca;color:#725b2d;font-size:7px;font-style:normal;font-weight:900}.guest-dish-copy>p{margin:0;color:#6a7974;font-size:11px;line-height:1.5}.guest-dish-meta{display:flex;flex-wrap:wrap;gap:5px}.guest-dish-meta span{padding:4px 6px;border-radius:7px;background:#eef2f0;color:#4f665f;font-size:8px;font-weight:800}.guest-dish-meta span.diet{background:#e9f2e7;color:#3b6a41}.guest-dish-copy>small{color:#785d3f;font-size:9px;line-height:1.4}.guest-dish-copy>footer{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px;margin-top:2px;padding-top:9px;border-top:1px solid #edece7}.guest-dish-copy>footer strong{font-size:9px;color:#176a50}.guest-dish-copy>footer strong.extra_charge,.guest-dish-copy>footer strong.supplement{color:#8a642d}.guest-dish-copy>footer>b{color:#123746;font-size:14px}.guest-dish-copy>footer em{grid-column:1/-1;color:#75817d;font-size:8px;font-style:normal;text-transform:uppercase}.guest-dish-card.sold-out{opacity:.58}.guest-menu-empty{padding:45px 15px;border:1px dashed #d0d5d1;border-radius:17px;color:#75817d;text-align:center}.digital-menu-footer{position:absolute;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 18px calc(11px + var(--safe-bottom));border-top:1px solid #dedbd3;background:#fffdf8eF;backdrop-filter:blur(15px)}.digital-menu-footer small{max-width:70%;color:#776a58;font-size:8px;line-height:1.4}.digital-menu-footer a{flex:0 0 auto;color:#765f35;font-size:9px;font-weight:900}.menu-open{overflow:hidden}html[dir="rtl"] .digital-menu-head h2{margin-right:0;margin-left:48px}html[dir="rtl"] .guest-dish-copy{text-align:right}
@media(max-width:560px){.digital-menu-head{padding-right:16px;padding-left:16px}.digital-menu-head h2{font-size:25px}.digital-menu-tools,.digital-menu-content{padding-right:12px;padding-left:12px}.guest-dish-grid{grid-template-columns:1fr}.guest-dish-card{display:grid;grid-template-columns:112px 1fr}.guest-dish-card>img{width:112px;height:100%;min-height:170px}.guest-dish-card:not(:has(img)){grid-template-columns:1fr}.digital-menu-footer small{max-width:64%}}

/* V18.7 Concierge Home */
.concierge-home-secondary,.explore-heading,.concierge-categories,.concierge-suggestions{display:none!important}.concierge-hero-title{margin:20px 0 15px;color:var(--alfred-navy);font:500 clamp(33px,8.5vw,52px)/1.04 Georgia,serif;letter-spacing:-.025em}.concierge-search.resort-search{display:block!important;padding:7px!important;border-radius:18px!important;background:#fffdf9!important}.concierge-search.resort-search>span,.concierge-search.resort-search>label{display:none!important}.concierge-search .concierge-message-row{display:grid;grid-template-columns:minmax(0,1fr) auto;margin:0!important}.concierge-search.resort-search input{height:52px!important;border:0!important;background:transparent!important;padding:0 12px!important;font-size:14px}.concierge-search.resort-search input:focus{box-shadow:none!important}.concierge-actions{margin-top:16px}.concierge-actions button{min-height:96px!important;border-color:rgba(183,154,98,.26)!important;border-radius:20px!important;box-shadow:0 10px 25px rgba(13,52,67,.08)!important}.concierge-actions button b{font:500 17px Georgia,serif!important}.agenda-list{overflow:hidden;border-radius:20px;box-shadow:0 10px 25px rgba(13,52,67,.07)}.agenda-item{border-radius:0!important;border-width:0 0 1px!important;box-shadow:none!important}.agenda-item:first-child{border-radius:20px 20px 0 0!important}.agenda-item:last-child{border-bottom:0!important;border-radius:0 0 20px 20px!important}.concierge-map-preview{min-height:118px!important}.concierge-map-preview img{height:118px!important}.mobile-dock{grid-template-columns:repeat(3,1fr)!important}.mobile-dock button[data-mobile-action="alfred"] span{background:var(--alfred-navy);color:var(--alfred-ivory);box-shadow:0 6px 16px rgba(13,52,67,.2)}

/* Full screen dish photography */
.guest-dish-photo{position:relative;display:block;width:100%;height:150px;overflow:hidden;padding:0;border:0;background:#e9e5dc;cursor:zoom-in}.guest-dish-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.guest-dish-photo>span{position:absolute;right:9px;bottom:9px;display:grid;place-items:center;width:31px;height:31px;border:1px solid #ffffff80;border-radius:11px;background:#102f3dcc;color:#fff;font-size:15px;backdrop-filter:blur(8px)}.guest-dish-photo:active img{transform:scale(1.025)}.dish-photo-viewer{position:fixed;z-index:260;inset:0;display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:center;justify-items:center;padding:calc(62px + var(--safe-top)) 16px calc(20px + var(--safe-bottom));background:rgba(3,15,22,.96);color:#fff;backdrop-filter:blur(15px)}.dish-photo-viewer>img{max-width:min(1100px,100%);max-height:calc(100dvh - 190px);object-fit:contain;border-radius:18px;box-shadow:0 24px 80px #0008;touch-action:pinch-zoom}.dish-photo-close{position:absolute;z-index:2;top:calc(13px + var(--safe-top));right:15px;width:44px;height:44px;border:1px solid #ffffff2e;border-radius:14px;background:#ffffff14;color:#fff;font-size:29px;backdrop-filter:blur(10px)}.dish-photo-caption{display:grid;justify-items:center;gap:4px;padding-top:15px;text-align:center}.dish-photo-caption small{color:#d7c18e;font-size:8px;font-weight:900;letter-spacing:.17em}.dish-photo-caption h2{margin:0;font:500 22px Georgia,serif}.dish-photo-caption span{color:#aebdbd;font-size:9px}.dish-photo-open{overflow:hidden}

@media(max-width:560px){.concierge-hero-title{margin-top:17px}.concierge-weather{margin-bottom:0!important}.concierge-section-head.agenda-heading{margin-top:20px}.guest-dish-photo{width:112px;height:100%;min-height:170px}.guest-dish-card:not(:has(.guest-dish-photo)){grid-template-columns:1fr}.dish-photo-viewer{padding-right:10px;padding-left:10px}.dish-photo-viewer>img{max-height:calc(100dvh - 175px);border-radius:14px}}
@media(min-width:720px){.concierge-hero-title{grid-area:hero;margin:8px 0 2px;font-size:58px}.concierge-home{grid-template-areas:"welcome weather" "hero hero" "search search" "answer answer" "agendaHead agendaHead" "agenda agenda" "actions mapHead" "actions map" "voice voice"!important}.concierge-actions{grid-area:actions!important}.agenda-heading{grid-area:agendaHead!important}.agenda-list{grid-area:agenda!important}.concierge-map-preview{grid-area:map!important}.concierge-section-head:has(#conciergeMapTitle){grid-area:mapHead!important}}

/* V18.7.1 faithful Design 2 · Concierge Home */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
body.home-active{background:#f8f3ea!important}
body.home-active .concierge-home{display:block!important}
.concierge-home{width:min(920px,100%)!important;min-height:100dvh!important;margin:0 auto!important;padding:calc(22px + var(--safe-top)) clamp(18px,4vw,42px) calc(104px + var(--safe-bottom))!important;background:radial-gradient(circle at 78% 22%,rgba(216,190,145,.18),transparent 24%),linear-gradient(180deg,#fffaf2 0,#f9f4eb 64%,#f5efe5 100%)!important;color:#102f43!important}
.concierge-home:before{display:none!important}
.concierge-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin:0!important;padding:0 0 22px!important;border-bottom:1px solid rgba(166,132,78,.18)!important}
.concierge-header-logo{display:block;width:clamp(185px,32vw,260px);height:auto;flex:0 1 auto}
.concierge-header-tools{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0;color:#6e6457}
.concierge-header .concierge-weather{display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;white-space:nowrap}
.concierge-header .concierge-weather i{color:#ae844c;font-size:25px;font-style:normal}.concierge-header .concierge-weather b{color:#5e574e;font-size:16px;font-weight:500}.concierge-header .concierge-weather small{display:none}
.concierge-room-control{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;height:auto!important;padding:0 0 0 12px!important;border:0!important;border-left:1px solid rgba(151,123,80,.28)!important;border-radius:0!important;background:transparent!important;color:#5e574e!important}
.concierge-room-control>span{color:#ad8148;font-size:26px;line-height:1}.concierge-room-control>b{display:block;max-width:78px;overflow:hidden;font-size:15px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.concierge-language-control{display:flex;align-items:center;gap:5px;padding:7px 8px;border:1px solid rgba(151,123,80,.32);border-radius:999px;background:rgba(255,255,255,.42);color:#5e574e}.concierge-language-control>span{font-size:16px}.concierge-language-control select{width:49px!important;height:24px!important;padding:0 3px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#4f4a44!important;font-size:13px!important;font-weight:600!important}
.rixos-home-signature{display:grid;justify-items:center;gap:5px;margin:26px auto 15px;color:#8a7352;text-align:center}.rixos-home-signature strong{font:500 clamp(23px,5vw,34px)/1.05 Georgia,'Times New Roman',serif;letter-spacing:.12em}.rixos-home-signature small{font:600 clamp(9px,2vw,12px)/1.2 Arial,Helvetica,sans-serif;letter-spacing:.17em}
.concierge-hero-title{max-width:720px;margin:24px auto 26px!important;color:#102f43!important;font:500 clamp(43px,8.2vw,72px)/1.02 Georgia,'Times New Roman',serif!important;letter-spacing:-.035em!important;text-align:center}
.concierge-search.resort-search{position:relative!important;display:flex!important;align-items:center!important;width:100%!important;min-height:72px!important;margin:0 0 26px!important;padding:8px 13px 8px 24px!important;border:1px solid rgba(180,139,82,.32)!important;border-radius:24px!important;background:rgba(255,255,255,.7)!important;box-shadow:0 12px 28px rgba(92,64,31,.11)!important;color:#7b7975!important}
.concierge-search.resort-search>span{display:grid!important;place-items:center!important;flex:0 0 31px!important;width:31px!important;height:31px!important;background:transparent!important;color:#858986!important}.concierge-search.resort-search>span svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.concierge-search.resort-search>label,.concierge-search.resort-search .concierge-suggestions{display:none!important}.concierge-search .concierge-message-row{display:flex!important;flex:1!important;min-width:0!important;margin:0!important}.concierge-search.resort-search input{width:100%!important;height:54px!important;padding:0 13px!important;border:0!important;background:transparent!important;color:#193948!important;font-size:17px!important;box-shadow:none!important}.concierge-search.resort-search input::placeholder{color:#8d8c89!important}.concierge-search.resort-search .concierge-send{display:none!important}
.concierge-answer{margin:-12px 0 24px!important;border-color:rgba(166,132,78,.2)!important;border-radius:20px!important}
.concierge-agenda-card{position:relative;margin:0 0 22px;padding:20px 24px;border:1px solid rgba(180,139,82,.35);border-radius:24px;background:rgba(255,252,247,.82);box-shadow:0 10px 27px rgba(80,56,30,.07);overflow:hidden}.concierge-agenda-card:after{content:"";position:absolute;right:-25px;bottom:-48px;width:210px;height:210px;border-radius:50%;background:repeating-radial-gradient(ellipse at center,transparent 0 11px,rgba(181,151,106,.045) 12px 13px);pointer-events:none}
.concierge-agenda-card .agenda-heading{position:relative;z-index:1;display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 0 14px!important}.concierge-agenda-card .agenda-heading h3{color:#15364a;font:500 clamp(22px,4vw,30px) Georgia,serif!important}.concierge-agenda-card .agenda-heading small{color:#9a8365;font-size:10px}
.concierge-agenda-card .agenda-list{position:relative;z-index:1;display:block!important;overflow:visible!important;border-radius:0!important;box-shadow:none!important}.concierge-agenda-card .agenda-item{display:grid!important;grid-template-columns:86px minmax(0,1fr) auto!important;align-items:center!important;gap:18px!important;width:100%!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#17394a!important;box-shadow:none!important;text-align:left}.agenda-event-art{display:grid;place-items:center;width:86px;height:86px;overflow:hidden;border:3px solid #fff;border-radius:50%;background:radial-gradient(circle at 60% 32%,#ffbd6d 0 5%,transparent 6%),linear-gradient(145deg,#263e4a 0 33%,#d07948 34% 50%,#5e493d 51% 63%,#152e3d 64%);box-shadow:0 0 0 1px #be9660,0 7px 18px rgba(45,30,19,.16);color:#fff;font-size:25px}.agenda-event-art img{width:100%;height:100%;object-fit:cover}.agenda-event-copy{display:grid!important;gap:7px!important}.agenda-event-copy b{font:500 clamp(20px,3.5vw,29px)/1.05 Georgia,serif!important}.agenda-event-copy small{color:#736d65!important;font-size:12px!important}.agenda-event-copy .agenda-event-time{color:#d76650!important}.agenda-event-action{display:grid;justify-items:end;gap:9px}.agenda-event-action em{padding:7px 10px!important;border-radius:8px!important;background:#e66d58!important;color:#fff!important;font-size:8px!important;font-style:normal!important;letter-spacing:.06em!important;box-shadow:0 5px 12px rgba(190,76,55,.18)}.agenda-event-action b{padding:8px 17px;border:1px solid #aa7f45;border-radius:999px;color:#9a713d;font-size:9px;letter-spacing:.06em;white-space:nowrap}.concierge-agenda-card .agenda-empty{padding:20px;border-color:rgba(180,139,82,.35);background:rgba(255,255,255,.35)}
.concierge-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px!important;margin:0 0 24px!important}.concierge-actions button{position:relative!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto auto 1fr!important;align-items:start!important;min-height:196px!important;padding:24px 26px!important;overflow:hidden!important;border:1px solid #b79058!important;border-radius:23px!important;background:radial-gradient(circle at 90% 110%,rgba(78,118,128,.24),transparent 43%),linear-gradient(145deg,#0b3142,#123e4e)!important;color:#fff!important;box-shadow:0 13px 28px rgba(9,42,56,.15)!important;text-align:left!important}.concierge-actions button:after{content:"";position:absolute;right:-28px;bottom:-52px;width:175px;height:175px;border:1px solid rgba(196,164,107,.08);border-radius:50%;box-shadow:0 0 0 17px rgba(196,164,107,.025),0 0 0 35px rgba(196,164,107,.018)}.concierge-actions button>span{grid-column:1/-1!important;grid-row:auto!important;display:block!important;width:54px!important;height:54px!important;margin-bottom:15px!important;border-radius:0!important;background:transparent!important;color:#d2a55f!important}.concierge-actions button svg{width:54px;height:54px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.concierge-actions button b{align-self:auto!important;color:#fff!important;font:500 clamp(25px,4vw,33px)/1 Georgia,serif!important}.concierge-actions button small{align-self:auto!important;max-width:210px;margin-top:8px;color:#dbe4e3!important;font-size:13px!important;line-height:1.35!important}.concierge-actions button>i{grid-column:2;grid-row:2/4;align-self:center;color:#d2a55f;font:300 43px/1 Arial,sans-serif;font-style:normal}.concierge-actions button:active{transform:scale(.985)}
.concierge-map-preview{position:relative!important;display:block!important;width:100%!important;min-height:250px!important;margin:0 0 22px!important;padding:0!important;overflow:hidden!important;border:1px solid rgba(180,139,82,.36)!important;border-radius:24px!important;background:#e7e5d6!important;box-shadow:0 12px 28px rgba(66,53,38,.12)!important;text-align:left!important}.concierge-map-preview img{display:block!important;width:100%!important;height:250px!important;object-fit:cover!important;filter:saturate(.72) sepia(.08) brightness(1.08)!important}.concierge-map-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,250,240,.94),rgba(255,250,240,.2) 45%,transparent 66%);pointer-events:none}.concierge-map-title{position:absolute!important;z-index:2!important;left:28px!important;top:24px!important;display:grid!important;gap:7px!important;max-width:48%!important;padding:0!important}.concierge-map-title b{color:#15364a!important;font:500 clamp(24px,4vw,32px) Georgia,serif!important}.concierge-map-title small{color:#756e62!important;font-size:10px!important}.concierge-map-pin{position:absolute!important;z-index:3!important;left:60%!important;top:52%!important;width:28px!important;height:28px!important;padding:0!important;border:4px solid #fff!important;border-radius:50%!important;background:#0c3548!important;box-shadow:0 4px 12px rgba(7,38,52,.35)!important;transform:translate(-50%,-50%)}
.voice-guest-card{margin-top:0!important;border-color:rgba(180,139,82,.26)!important;background:rgba(255,252,247,.68)!important;box-shadow:none!important}
.mobile-dock{grid-template-columns:repeat(3,1fr)!important;border-top:1px solid rgba(164,132,82,.22)!important;background:rgba(255,251,244,.96)!important}.mobile-dock button{color:#17364a!important}.mobile-dock button.active{background:transparent!important;color:#17364a!important}.mobile-dock button span{font-size:23px!important}.mobile-dock button[data-mobile-action="alfred"] span{display:grid!important;place-items:center!important;width:46px!important;height:46px!important;margin-top:-17px!important;border-radius:50%!important;background:#0d3443!important;color:#d5ae6b!important;box-shadow:0 7px 18px rgba(13,52,67,.28)!important}.mobile-dock button[data-mobile-action="alfred"] b{margin-top:-4px}
html[dir="rtl"] .concierge-agenda-card .agenda-item,html[dir="rtl"] .concierge-actions button,html[dir="rtl"] .concierge-map-preview{text-align:right!important}html[dir="rtl"] .concierge-map-title{right:28px!important;left:auto!important}html[dir="rtl"] .concierge-map-preview:after{background:linear-gradient(-90deg,rgba(255,250,240,.94),rgba(255,250,240,.2) 45%,transparent 66%)}
@media(max-width:600px){.concierge-home{padding-right:16px!important;padding-left:16px!important}.concierge-header{gap:8px!important;padding-bottom:15px!important}.concierge-header-logo{width:157px}.concierge-header-tools{gap:7px}.concierge-header .concierge-weather i{font-size:20px}.concierge-header .concierge-weather b{font-size:13px}.concierge-room-control{padding-left:7px!important}.concierge-room-control>span{font-size:21px}.concierge-room-control>b{max-width:43px;font-size:12px}.concierge-language-control{gap:2px;padding:5px 4px}.concierge-language-control>span{font-size:13px}.concierge-language-control select{width:42px!important;font-size:11px!important}.rixos-home-signature{margin-top:18px}.concierge-hero-title{margin:20px auto 22px!important;font-size:clamp(39px,12vw,54px)!important}.concierge-search.resort-search{min-height:64px!important;margin-bottom:20px!important;padding-left:17px!important;border-radius:20px!important}.concierge-search.resort-search input{font-size:14px!important}.concierge-agenda-card{padding:17px;border-radius:21px}.concierge-agenda-card .agenda-heading{margin-bottom:12px!important}.concierge-agenda-card .agenda-heading small{display:none}.concierge-agenda-card .agenda-item{grid-template-columns:65px minmax(0,1fr)!important;gap:12px!important}.agenda-event-art{width:65px;height:65px}.agenda-event-copy b{font-size:19px!important}.agenda-event-copy small{font-size:10px!important}.agenda-event-action{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;margin-top:2px}.agenda-event-action em{order:2}.concierge-actions{gap:9px!important}.concierge-actions button{min-height:168px!important;padding:18px!important;border-radius:20px!important}.concierge-actions button>span,.concierge-actions button svg{width:46px!important;height:46px!important}.concierge-actions button>span{margin-bottom:12px!important}.concierge-actions button b{font-size:23px!important}.concierge-actions button small{font-size:11px!important}.concierge-map-preview,.concierge-map-preview img{height:205px!important;min-height:205px!important}.concierge-map-title{left:20px!important;top:20px!important}.concierge-map-title small{display:none}.concierge-map-pin{left:64%!important}.voice-guest-card{margin-bottom:4px!important}}
@media(min-width:720px){.concierge-home{display:block!important}.concierge-header{grid-area:auto!important}.concierge-actions{grid-area:auto!important}.concierge-map-preview{grid-area:auto!important}.concierge-agenda-card{grid-area:auto!important}.mobile-dock{bottom:18px!important}.concierge-map-preview,.concierge-map-preview img{height:300px!important;min-height:300px!important}}

/* Event details and navigation */
.event-detail-backdrop{position:fixed;z-index:225;inset:0;background:rgba(3,18,26,.62);backdrop-filter:blur(5px)}
.event-detail-sheet{position:fixed;z-index:230;right:0;bottom:0;left:0;max-height:94dvh;overflow:auto;border-radius:28px 28px 0 0;background:#f8f4eb;color:#143746;box-shadow:0 -24px 70px rgba(0,18,28,.38)}
.event-detail-close{position:absolute;z-index:3;top:14px;right:14px;width:42px;height:42px;border:1px solid #ffffff4d;border-radius:14px;background:#102f3dcc;color:#fff;font-size:27px;backdrop-filter:blur(8px)}
.event-detail-media{height:230px;overflow:hidden;background:radial-gradient(circle at 70% 25%,rgba(222,173,98,.7),transparent 20%),linear-gradient(145deg,#123746,#315c67)}.event-detail-media img{display:block;width:100%;height:100%;object-fit:cover}.event-detail-media.no-image:after{content:"ALFRED · EVENTS & SHOWS";display:grid;place-items:center;width:100%;height:100%;color:#d7c18e;font-size:10px;font-weight:900;letter-spacing:.18em}
.event-detail-content{display:grid;gap:12px;padding:20px 18px calc(24px + var(--safe-bottom))}.event-detail-content>small{color:#9a7440;font-size:9px;font-weight:900;letter-spacing:.17em}.event-detail-content h2{margin:0;font:500 30px/1.08 Georgia,serif}.event-detail-meta{display:flex;flex-wrap:wrap;gap:8px}.event-detail-meta span{padding:8px 10px;border-radius:11px;background:#fff;color:#586c69;font-size:11px}.event-detail-content>p{margin:0;color:#63736f;font-size:13px;line-height:1.55}.event-detail-today{display:grid;gap:8px;margin-top:4px;padding-top:14px;border-top:1px solid rgba(118,99,66,.18)}.event-detail-today h3{margin:0;font:500 18px Georgia,serif}.event-detail-today>div{display:flex;gap:7px;overflow:auto;scrollbar-width:none}.event-detail-today>div::-webkit-scrollbar{display:none}.event-detail-today button{flex:0 0 auto;display:grid;gap:3px;min-width:135px;padding:10px 12px;border:1px solid #ddd6c8;border-radius:13px;background:#fff;color:#173746;text-align:left}.event-detail-today button.active{border-color:#a9864d;background:#fff9eb}.event-detail-today button b{font-size:11px}.event-detail-today button small{color:#78847f;font-size:9px}.event-detail-navigate{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:52px;margin-top:4px;border:0;border-radius:15px;background:linear-gradient(135deg,#0d3443,#174b5b);color:#fff;box-shadow:0 9px 23px rgba(13,52,67,.2)}.event-detail-navigate span{color:#d7c18e;font-size:21px}.event-detail-navigate b{font-size:13px}.event-detail-open{overflow:hidden}
html[dir="rtl"] .event-detail-close{right:auto;left:14px}html[dir="rtl"] .event-detail-today button{text-align:right}
@media(min-width:720px){.event-detail-sheet{top:50%;right:auto;bottom:auto;left:50%;display:grid;grid-template-columns:minmax(280px,.85fr) minmax(360px,1fr);width:min(900px,calc(100% - 40px));max-height:min(720px,calc(100dvh - 40px));transform:translate(-50%,-50%);border-radius:28px}.event-detail-media{height:100%;min-height:560px}.event-detail-content{align-content:center;padding:38px}.event-detail-close{right:16px}.event-detail-today>div{display:grid;grid-template-columns:1fr 1fr}.event-detail-today button{min-width:0}}

/* CONNECT 19.0 */
:root{--connect-gold:#c9a35b;--connect-navy:#0d1b2a;--connect-ivory:#fffaf2}
.elevate-experience{position:relative;width:100%;min-height:210px;margin:0 0 22px;overflow:hidden;border:0;border-radius:24px;background:linear-gradient(90deg,rgba(5,20,30,.9),rgba(5,20,30,.25)),var(--experience-home-image,url('resort-map.jpeg')) center 52%/cover;color:#fff;text-align:left;box-shadow:0 16px 35px rgba(13,27,42,.18)}
.elevate-experience>span{display:flex;flex-direction:column;align-items:flex-start;max-width:440px;padding:28px}.elevate-experience small{color:#edc877;font-size:10px;font-weight:900;letter-spacing:.16em}.elevate-experience b{margin-top:8px;font:500 clamp(27px,6vw,40px)/1.05 Georgia,serif}.elevate-experience em{margin-top:10px;color:#edf0ed;font-size:13px;font-style:normal;line-height:1.45}.elevate-experience strong{margin-top:18px;padding:10px 13px;border:1px solid #d9b86d;border-radius:10px;color:#f1d18a;font-size:11px}
.concierge-actions{display:block!important}.concierge-actions button{display:flex!important;min-height:58px!important;margin:0!important;padding:16px 5px!important;border:0!important;border-bottom:1px solid #dedbd2!important;border-radius:0!important;background:transparent!important;color:var(--connect-navy)!important;box-shadow:none!important}.concierge-actions button:nth-child(3),.concierge-actions button:nth-child(4){display:none!important}.concierge-actions button>span,.concierge-actions button small{display:none!important}.concierge-actions button b{color:var(--connect-navy)!important;font:500 17px Georgia,serif!important}.concierge-actions button>i{margin-left:auto;color:#9b7b47!important;font-size:27px!important}.concierge-actions button:after{display:none!important}
.mobile-dock{grid-template-columns:repeat(4,1fr)!important}.mobile-dock button.active{background:transparent!important;color:var(--connect-gold)!important}
.profile-screen{position:fixed;z-index:65;inset:0 0 calc(var(--dock-height) + var(--safe-bottom));overflow:auto;padding:calc(18px + var(--safe-top)) 18px 30px;background:linear-gradient(180deg,#fffdf8,#f6f1e8);color:var(--connect-navy)}
.profile-screen>header{display:grid;grid-template-columns:42px minmax(0,160px) 1fr;align-items:center;gap:10px;padding-bottom:15px;border-bottom:1px solid #e5ddcf}.profile-screen>header button{width:40px;height:40px;border:0;border-radius:50%;background:#fff;color:var(--connect-navy);font-size:30px}.profile-screen>header img{width:150px;height:48px;object-fit:contain}.profile-screen>header h1{margin:0;text-align:right;font:500 23px Georgia,serif}.profile-guest{display:flex;align-items:center;gap:13px;padding:22px 3px}.profile-guest>span{display:grid;place-items:center;width:62px;height:62px;border:1px solid var(--connect-gold);border-radius:50%;color:#9a7338;font:500 25px Georgia,serif}.profile-guest h2{margin:0;font:500 23px Georgia,serif}.profile-guest small{color:#8a7656}.profile-guest>b{margin-left:auto;padding:7px 10px;border-radius:999px;background:var(--connect-navy);color:#e7be69;font-size:9px;letter-spacing:.08em}.profile-stay{display:flex;align-items:center;justify-content:space-between;padding:17px;border:1px solid #e1d8c8;border-radius:18px;background:#fff;box-shadow:0 8px 20px rgba(51,38,18,.05)}.profile-stay small,.profile-stay strong{display:block}.profile-stay small{color:#8d7a59;font-size:8px;letter-spacing:.12em}.profile-stay strong{margin-top:4px;font-size:17px}.profile-stay button{padding:10px 14px;border:1px solid var(--connect-gold);border-radius:11px;background:#fff;color:#785c2d;font-weight:800}.profile-screen section{margin-top:20px}.profile-screen section h3{margin:0 0 8px;font:500 17px Georgia,serif}.profile-screen section>button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;padding:0 13px;border:0;border-bottom:1px solid #e7e1d7;background:#fff;color:var(--connect-navy);text-align:left}.profile-screen section>button:first-of-type{border-radius:14px 14px 0 0}.profile-screen section>button:last-of-type{border-bottom:0;border-radius:0 0 14px 14px}.profile-screen section>button span{color:#877552;font-size:12px}.club-whatsapp{display:block;margin-top:12px;padding:15px;border-radius:14px;background:var(--connect-navy);color:#e9c16d;text-align:center;text-decoration:none;font-weight:800}.club-whatsapp.disabled{opacity:.5;pointer-events:none}.profile-screen>footer{padding:24px;text-align:center;color:#7f755f;font-size:12px}.profile-screen>footer a{color:#a27634;font-weight:900;text-decoration:none}
@media(min-width:720px){.profile-screen{left:50%;width:min(720px,100%);transform:translateX(-50%);box-shadow:0 0 60px rgba(13,27,42,.12)}}

/* The map state must override every desktop and mobile Home layout. */
.concierge-home.screen-hidden{display:none!important;visibility:hidden!important;pointer-events:none!important}
.experience-screen{position:fixed;inset:0 0 74px;z-index:1120;background:#f7f5f0;overflow-y:auto;color:#102b37}.experience-screen>header{padding:24px 20px 34px;background:linear-gradient(150deg,#fff 35%,#ead7b1);position:relative}.experience-screen>header button{position:absolute;left:16px;top:18px;border:0;background:#fff;border-radius:50%;width:42px;height:42px;font-size:30px}.experience-screen>header img{display:block;width:150px;margin:0 auto 34px}.experience-screen>header small{color:#a87527;font-weight:800;letter-spacing:.18em}.experience-screen>header h1{font-family:Georgia,serif;font-size:34px;margin:8px 0}.experience-screen>header p{margin:0;color:#52646d}.experience-list{display:grid;gap:18px;padding:20px;max-width:980px;margin:auto}.experience-list article{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 12px 35px #14324114}.experience-list article>img{width:100%;height:220px;object-fit:cover}.experience-list article>div{padding:20px}.experience-media-gallery{display:flex!important;gap:8px!important;padding:0!important;overflow-x:auto;scroll-snap-type:x mandatory}.experience-media-gallery img,.experience-media-gallery video{flex:0 0 100%;width:100%;height:240px;object-fit:cover;scroll-snap-align:start;background:#071b26}.experience-list small{color:#b17d2f;font-weight:800;letter-spacing:.08em}.experience-list h2{font-family:Georgia,serif;margin:7px 0}.experience-list p{color:#60717a;line-height:1.55}.experience-list span{display:block;font-weight:800;margin:12px 0}.experience-list a{display:block;background:#b78335;color:white;text-align:center;text-decoration:none;padding:14px;border-radius:12px;font-weight:800}.empty-experiences{text-align:center;background:#fff;padding:48px 24px;border-radius:22px}@media(min-width:760px){.experience-list{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-screen{inset:0}}

/* Approved X CONNECT Home · Standard and Club Privé */
.concierge-home{display:block!important;width:min(100%,460px)!important;min-height:100dvh!important;margin:0 auto!important;padding:calc(14px + var(--safe-top)) 14px calc(92px + var(--safe-bottom))!important;background:#fff!important;color:#0d1b2a!important;box-shadow:0 0 45px rgba(13,27,42,.08)!important}.concierge-header{display:grid!important;grid-template-columns:105px 1fr!important;align-items:start!important;gap:10px!important;padding:0 0 10px!important}.concierge-header-logo{width:105px!important;height:48px!important;object-fit:contain!important}.concierge-header-tools{display:flex!important;justify-content:flex-end!important;gap:7px!important}.concierge-weather{padding:5px!important;background:transparent!important;border:0!important}.concierge-weather small,.concierge-room-control,.concierge-language-control>span{display:none!important}.concierge-language-control{order:-1!important;padding:6px 2px!important;border:0!important;background:transparent!important}.concierge-language-control select{width:42px!important;color:#0d1b2a!important}.concierge-header #conciergeGreeting{display:block!important;visibility:visible!important;grid-column:1/-1!important;margin-top:4px!important;color:#0d1b2a!important;font:500 24px/1.1 Georgia,serif!important}.rixos-home-signature,.alfred-home-invite,.explore-heading,.concierge-categories,.concierge-map-preview,.voice-guest-card{display:none!important}.concierge-hero-title{margin:-6px 0 13px!important;text-align:left!important;color:#55616a!important;font:400 12px/1.35 Arial,sans-serif!important}.standard-home-hero{display:block;width:100%;height:145px;object-fit:cover;border-radius:0}.concierge-search.resort-search{position:relative!important;z-index:2!important;min-height:48px!important;margin:-10px 8px 12px!important;padding:0 13px!important;border:1px solid #d9d9d6!important;border-radius:9px!important;background:#fff!important;box-shadow:0 5px 15px rgba(13,27,42,.1)!important}.concierge-search.resort-search>span{width:25px!important;height:25px!important;flex-basis:25px!important}.concierge-search.resort-search input{height:46px!important;font-size:12px!important}.concierge-agenda-card{margin:0 0 12px!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}.concierge-agenda-card:after{display:none!important}.concierge-agenda-card .agenda-heading{display:grid!important;grid-template-columns:1fr auto!important;margin:0 0 7px!important}.concierge-agenda-card .agenda-heading h3{font:500 16px Georgia,serif!important}.concierge-agenda-card .agenda-heading button{border:0;background:transparent;color:#b37d2d;font-size:10px}.concierge-agenda-card .agenda-heading small{display:none!important}.concierge-agenda-card .agenda-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important;overflow:hidden!important}.concierge-agenda-card .agenda-item{display:block!important;min-height:84px!important;padding:9px!important;border:1px solid #e5e2dc!important;border-radius:6px!important;background:#fff!important}.agenda-event-art,.agenda-event-action{display:none!important}.agenda-event-copy{display:flex!important;flex-direction:column!important;gap:4px!important}.agenda-event-copy b{font:600 11px/1.2 Arial,sans-serif!important}.agenda-event-copy small{font-size:8px!important}.agenda-event-copy .agenda-event-time{order:-1;color:#243a48!important;font-weight:700!important}.elevate-experience{min-height:140px!important;margin:0 0 5px!important;border-radius:8px!important;background:linear-gradient(90deg,rgba(4,17,27,.92),rgba(4,17,27,.1)),var(--experience-home-image,url('home-hero-approved.jpg')) center/cover!important}.elevate-experience>span{padding:15px!important}.elevate-experience b{margin-top:4px!important;font-size:22px!important}.elevate-experience em{max-width:220px;margin-top:5px!important;font-size:10px!important}.elevate-experience strong{margin-top:10px!important;padding:7px 9px!important;font-size:9px!important}.concierge-actions{display:block!important;margin:0!important}.concierge-actions button,.concierge-actions button:nth-child(3),.concierge-actions button:nth-child(4){display:flex!important;min-height:42px!important;padding:0 9px!important;border:0!important;border-bottom:1px solid #e7e4de!important;background:#fff!important}.concierge-actions button b{font:500 13px Georgia,serif!important}.concierge-actions button>i{margin-left:auto!important;font-size:23px!important}.club-home-identity{margin:-5px 0 10px}.club-home-identity>img{display:block;width:165px;height:55px;margin:-12px auto 3px;object-fit:cover;object-position:center 43%}.club-home-identity>div{position:relative}.club-home-identity span{display:block;font:500 23px Georgia,serif}.club-home-identity small{display:block;margin-top:2px;font-size:11px}.club-home-identity b{position:absolute;right:0;bottom:0;padding:6px 10px;border-radius:8px;background:#0d2a3b;color:#e1ad4e;font-size:9px}.club-home-hidden{display:none!important}.club-home-exclusive{margin:0 0 9px}.club-home-exclusive h3{margin:0 0 6px;font:500 16px Georgia,serif}.club-home-exclusive>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.club-home-exclusive button{position:relative;height:105px;padding:0;overflow:hidden;border:0;border-radius:7px;background:#081b27;color:#fff;text-align:left}.club-home-exclusive button img{width:100%;height:100%;object-fit:cover}.club-home-exclusive button:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.82))}.club-home-exclusive button span{position:absolute;z-index:2;right:9px;bottom:8px;left:9px}.club-home-exclusive button b,.club-home-exclusive button small{display:block}.club-home-exclusive button b{font:500 14px Georgia,serif}.club-home-exclusive button small{font-size:9px}.club-home-exclusive>a{display:flex;justify-content:center;align-items:center;min-height:40px;margin-top:6px;border-radius:6px;background:#07243a;color:#dda83e;text-decoration:none;font:600 12px Georgia,serif}.club-home-exclusive>a b{margin-left:auto;padding-right:13px}.club-home-exclusive>a.disabled{opacity:.55;pointer-events:none}.club-home-identity.hidden,.club-home-exclusive.hidden,.standard-home-hero.hidden{display:none!important}@media(min-width:720px){.concierge-home{width:min(100%,540px)!important}.standard-home-hero{height:180px}.mobile-dock{width:min(100%,540px)!important;left:50%!important;transform:translateX(-50%)!important}}
.concierge-header #conciergeGreeting{position:static!important;width:auto!important;height:auto!important;padding:0!important;overflow:visible!important;clip:auto!important;clip-path:none!important;white-space:normal!important}

/* CONNECT Home refinement · compact assistant, 2x2 shortcuts and current event sheet */
.alfred-home-invite{display:grid!important;grid-template-columns:42px minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;width:auto!important;min-height:68px!important;margin:0 8px 13px!important;padding:10px 12px!important;border:1px solid rgba(183,132,52,.35)!important;border-radius:12px!important;background:linear-gradient(105deg,#fffaf0,#f7ead0)!important;color:#0d2636!important;box-shadow:0 5px 15px rgba(61,45,19,.07)!important;text-align:left!important}.alfred-home-invite .alfred-home-avatar{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;overflow:hidden!important;border-radius:10px!important;background:#fff!important}.alfred-home-invite .alfred-home-avatar img{width:75px!important;height:32px!important;max-width:none!important;object-fit:contain!important}.alfred-home-invite>span:nth-child(2){display:grid!important;gap:2px!important}.alfred-home-invite small{color:#a3732d!important;font-size:7px!important;font-weight:900!important;letter-spacing:.12em!important}.alfred-home-invite b{color:#102d3b!important;font:500 15px/1.15 Georgia,serif!important}.alfred-home-invite em{display:block!important;color:#6f756f!important;font-size:9px!important;font-style:normal!important}.alfred-home-invite>strong{color:#a87934!important;font-size:0!important}.alfred-home-invite>strong:after{content:"›";font-size:25px!important;font-weight:400!important}
.concierge-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin:8px 0 2px!important}.concierge-actions button,.concierge-actions button:nth-child(3),.concierge-actions button:nth-child(4){position:relative!important;display:flex!important;align-items:flex-end!important;min-width:0!important;min-height:82px!important;padding:13px!important;overflow:hidden!important;border:1px solid rgba(165,128,71,.22)!important;border-radius:10px!important;background:linear-gradient(145deg,#fbfaf7,#f2eee6)!important;box-shadow:0 4px 12px rgba(31,40,39,.045)!important}.concierge-actions button:before{content:"";position:absolute;right:-18px;top:-22px;width:65px;height:65px;border:1px solid rgba(188,148,82,.13);border-radius:50%;box-shadow:0 0 0 9px rgba(188,148,82,.035)}.concierge-actions button b{position:relative!important;z-index:1!important;max-width:80%!important;color:#173342!important;font:500 15px/1.15 Georgia,serif!important}.concierge-actions button>i{position:relative!important;z-index:1!important;margin-left:auto!important;color:#ae7e37!important;font-size:22px!important}.concierge-actions button:active{transform:scale(.98)!important;background:#f4ead8!important}
.event-detail-backdrop{z-index:1250!important;background:rgba(6,24,33,.5)!important;backdrop-filter:blur(7px)!important}.event-detail-sheet{z-index:1260!important;right:12px!important;bottom:12px!important;left:12px!important;width:auto!important;max-height:min(88dvh,720px)!important;border:1px solid rgba(184,145,82,.25)!important;border-radius:22px!important;background:#fffdf9!important;color:#102f3d!important;box-shadow:0 24px 70px rgba(4,24,34,.3)!important}.event-detail-media{height:210px!important;min-height:0!important;border-radius:21px 21px 0 0!important;background:linear-gradient(145deg,#102f3d,#315c67)!important}.event-detail-media.no-image:after{content:"CONNECT · TODAY’S AGENDA"!important;color:#e3bd72!important}.event-detail-close{top:12px!important;right:12px!important;width:38px!important;height:38px!important;border:1px solid rgba(255,255,255,.5)!important;border-radius:50%!important;background:rgba(9,35,48,.8)!important}.event-detail-content{display:block!important;padding:19px 18px calc(20px + var(--safe-bottom))!important}.event-detail-content>small{display:block!important;margin-bottom:7px!important;color:#b07d31!important}.event-detail-content h2{margin:0 0 11px!important;font:500 28px/1.08 Georgia,serif!important}.event-detail-meta{display:flex!important;gap:6px!important;margin-bottom:12px!important}.event-detail-meta span{padding:7px 9px!important;border:1px solid #e6dfd2!important;border-radius:999px!important;background:#fff!important;font-size:10px!important}.event-detail-content>p{margin:0 0 14px!important;color:#64716f!important;font-size:12px!important}.event-detail-today{margin:0!important;padding:12px 0 0!important}.event-detail-today h3{font-size:16px!important}.event-detail-today>div{display:flex!important;grid-template-columns:none!important;gap:6px!important}.event-detail-today button{min-width:125px!important;padding:9px 10px!important;border-radius:9px!important}.event-detail-navigate{min-height:48px!important;margin-top:15px!important;border-radius:11px!important;background:#0d3041!important;box-shadow:none!important}
@media(min-width:720px){.concierge-home{width:min(100%,620px)!important;max-width:620px!important}.event-detail-sheet{top:50%!important;right:auto!important;bottom:auto!important;left:50%!important;display:grid!important;grid-template-columns:42% 58%!important;width:min(760px,calc(100% - 40px))!important;transform:translate(-50%,-50%)!important}.event-detail-media{height:100%!important;min-height:470px!important;border-radius:21px 0 0 21px!important}.event-detail-content{align-self:center!important;padding:30px!important}}
.event-detail-sheet.hidden,.event-detail-backdrop.hidden{display:none!important}
