:root{color:#353a35;font-synthesis:none;background:#d2dedd;font-family:Arial,Helvetica,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline-offset:6px;outline:3px solid #ac5e48}#app,#scene{width:100%;height:100%;position:fixed;inset:0}#scene{display:block}.masthead{pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:35px;left:42px;right:42px}.brand{color:inherit;pointer-events:auto;gap:13px;text-decoration:none;display:flex}.brand svg{fill:none;stroke:currentColor;stroke-width:2px;width:35px;height:37px}.brand>span{letter-spacing:2px;font-family:Georgia,Times New Roman,serif;font-size:23px}.brand small{letter-spacing:4.8px;margin-top:6px;font-family:Arial,sans-serif;font-size:9px;display:block}.edition{letter-spacing:2px;align-items:center;gap:10px;font-size:10px;display:flex}.status-dot{background:#8b4838;border-radius:50%;width:5px;height:5px}.edition-number{border-left:1px solid #9caaa4;margin-left:5px;padding-left:14px;font-size:13px}.welcome{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f4eced;border:1px solid #ffffffb3;width:375px;padding:30px;position:absolute;top:50%;left:42px;transform:translateY(-47%);box-shadow:0 16px 60px #2f3d3012}.eyebrow{letter-spacing:2.1px;font-size:9px;font-weight:600}.welcome>.eyebrow{color:#8b4838}h1{letter-spacing:-1.9px;margin:23px 0;font-family:Georgia,Times New Roman,serif;font-size:54px;font-weight:400;line-height:1.03}.intro{color:#64665d;margin-bottom:24px;font-size:13px;line-height:1.85}.route{color:#96755c;border-top:1px solid #dbd9cf;align-items:center;gap:10px;padding:19px 0;font-size:9px;display:flex}.route b{color:#545a50;padding-left:5px;font-weight:400}.route-line{background:#b9b8aa;width:22px;height:1px}button{color:#fff9ec;cursor:pointer;background:#834837;border:0;justify-content:space-between;width:100%;padding:18px 20px;font-size:13px;transition:background .2s;display:flex}button:hover{background:#6c392b}button:disabled{opacity:.5;cursor:wait}button span{font-size:19px;line-height:14px}#message{color:#786c5d;min-height:14px;margin:10px 0 18px;font-size:10px;line-height:1.5}.controls{border-top:1px solid #dbd9cf;justify-content:space-around;align-items:center;gap:15px;padding-top:19px;display:flex}.controls>span{flex-direction:column;align-items:center;gap:3px;display:flex}.key-row{gap:3px;display:flex}kbd{color:#676f61;background:#faf9f2;border:1px solid #c7c9bd;border-radius:3px;justify-content:center;align-items:center;min-width:21px;height:21px;padding:0 4px;font-family:Arial,sans-serif;font-size:9px;display:inline-flex}.controls small{color:#72786b;margin-top:7px;font-size:10px}.control-text svg{fill:none;stroke:#858d7e;stroke-width:1.1px;width:23px;height:38px}.control-text>kbd{margin:10px 0}.desktop-note{text-align:center;color:#909285;letter-spacing:.4px;margin:18px 0 0;font-size:9px}.location-card{text-shadow:0 1px 7px #eee9dd;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:74px;left:42px}.location-card>.eyebrow{color:#687264}.location-card strong{font-family:Georgia,serif;font-size:24px;font-weight:400}.location-card>span:last-child{color:#65705e;font-size:11px}.map-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f5f3e9e8;border:1px solid #fff9;width:181px;padding:14px;position:absolute;bottom:74px;right:42px}.map-top{letter-spacing:.8px;color:#747969;justify-content:space-between;font-size:7px;display:flex}.map-top span:last-child{font-size:6px}.map-card svg{width:100%;height:163px;margin-top:6px}.map-bottom{color:#727766;border-top:1px solid #d4d7c9;align-items:center;gap:5px;padding-top:10px;font-size:8px;display:flex}.map-bottom>span:last-child{color:#939687;margin-left:auto;font-size:7px}.map-dot{background:#8b4838;border-radius:50%;width:5px;height:5px}footer{color:#626d5b;letter-spacing:.35px;justify-content:space-between;font-size:9px;display:flex;position:absolute;bottom:25px;left:42px;right:42px}footer i{border-left:1px solid #949c89;height:8px;margin:0 9px;display:inline-block}#crosshair{pointer-events:none;border:1px solid #fff9;border-radius:50%;width:5px;height:5px;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 2px #0008}.walking .welcome{display:none}.walking #crosshair{display:block}.walking .masthead{opacity:.8}.walking .location-card{text-shadow:none;background:#f5f3e9de;padding:14px 18px}.walking .map-card{opacity:.82}[hidden]{display:none!important}@media (height<=760px){.welcome{width:345px;padding:23px}h1{margin:17px 0;font-size:44px}.intro{margin-bottom:14px}.route{padding:13px 0}.controls{padding-top:12px}.desktop-note{margin-top:12px}.location-card{bottom:59px}.location-card strong{font-size:21px}}@media (width<=900px){.masthead{top:22px;left:24px;right:24px}.welcome{width:310px;left:24px}h1{font-size:43px}.map-card{width:150px;right:24px}.location-card{left:24px}footer{left:24px;right:24px}.edition{letter-spacing:1px;font-size:8px}}@media (width<=600px){.welcome{width:min(345px,100% - 32px);left:50%;transform:translate(-50%,-47%)}.map-card,.location-card,.edition,footer span:last-child{display:none}.brand>span{font-size:18px}.brand svg{width:30px;height:30px}}.design-credit{color:#8b4838;letter-spacing:1.8px;text-align:center;white-space:nowrap;margin:16px 0 0;font-size:10px;font-weight:600;line-height:1.5}.welcome .design-credit{border-top:1px solid #dbd9cf;padding-top:12px}.tour-toolbar .design-credit{pointer-events:none;background:#f5f3e9ed;margin-top:10px;padding:6px 10px;position:absolute;top:100%;right:0}.welcome{scrollbar-width:thin;width:365px;max-height:calc(100vh - 200px);padding:25px 28px;overflow:auto}.welcome h1{margin:19px 0;font-size:48px}.welcome .intro{margin-bottom:16px}.welcome .route{padding:14px 0}.welcome .controls{padding-top:13px}.welcome #message{min-height:28px;margin-bottom:12px}.welcome .desktop-note{margin-top:12px}.secondary{color:#6f5847;background:0 0;border:1px solid #c8bca7;padding:13px 16px;font-size:11px}.secondary:hover{background:#e9e1d4}.menu-actions{justify-content:space-between;gap:12px;margin:8px 0 11px;display:flex}.text-button{color:#705541;background:0 0;gap:16px;width:auto;padding:9px 0;font-size:10px;display:flex}.text-button:hover{color:#9a4c31;background:0 0;text-decoration:underline}.location-card .text-button{margin-top:2px;padding:2px 0}.tour-toolbar{align-items:center;gap:16px;display:none;position:absolute;top:102px;right:42px}.tour-toolbar>span{background:#f5f3e9d9;padding:12px 14px;font-size:11px}.walking .tour-toolbar{display:flex}.tool-button{color:#5c594c;background:#f5f3e9eb;align-items:center;gap:12px;width:auto;padding:10px 13px;font-size:11px}.tool-button:hover{background:#fff9ed}.tool-button kbd{height:19px;font-size:8px}.drag-navigation #scene{cursor:grab}.drag-navigation #scene:active{cursor:grabbing}#scene:focus-visible{outline:none}dialog{color:#3e4239;background:#f7f3e9;border:1px solid #cfc6b2;width:min(440px,100vw - 40px);max-height:calc(100vh - 50px);padding:28px 32px;overflow:auto;box-shadow:0 20px 100px #1e2a3159}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#253b414a}.dialog-heading{justify-content:space-between;align-items:center;display:flex}.dialog-heading .eyebrow{color:#916b51}dialog h2{margin:16px 0;font:400 36px Georgia,serif}dialog p{color:#6a6d61;font-size:13px;line-height:1.8}dialog .close-button{color:#6b6d62;background:0 0;width:30px;height:30px;padding:0;font-size:26px;display:block}.close-button:hover{background:#eae2d5}dialog label{justify-content:space-between;align-items:center;margin-top:24px;margin-bottom:12px;font-size:12px;display:flex}dialog output{color:#986c50;font-variant-numeric:tabular-nums}dialog input[type=range]{accent-color:#8b4838;cursor:pointer;width:100%}dialog select{color:#484f42;background:#faf7f0;border:1px solid #c8c5b5;width:100%;padding:11px;font:12px Arial}dialog .checkbox-label{justify-content:flex-start;gap:10px}dialog input[type=checkbox]{accent-color:#8b4838}dialog .settings-note{color:#848476;font-size:10px}.dialog-done{justify-content:center;margin-top:24px}.info-note{background:#eae4d7;border-left:2px solid #b59a73;padding:14px}dialog a{color:#886343;font-size:10px;line-height:1.7}.walking .location-card{max-width:340px}@media (height<=800px){.welcome{max-height:calc(100vh - 155px);padding:18px 24px;top:47%}.welcome h1{margin:13px 0;font-size:38px}.welcome .intro{margin-bottom:10px;font-size:12px;line-height:1.6}.welcome .controls{display:none}.welcome .desktop-note{font-size:8px}.location-card{bottom:52px}.location-card strong{font-size:19px}.location-card .eyebrow{font-size:8px}.location-card>span:last-of-type{font-size:10px}.welcome .route{padding:10px 0}.welcome #message{margin:8px 0}.welcome .menu-actions{margin-bottom:0}.masthead{top:25px}}@media (width<=900px){.tour-toolbar{top:82px;right:24px}.tour-toolbar>span{max-width:170px;font-size:10px}.welcome{width:330px}}@media (width<=600px){.tour-toolbar>span{display:none}.tour-toolbar{top:24px;right:20px}.walking .location-card{max-width:none;display:flex;bottom:58px;left:20px;right:20px}.welcome{max-height:calc(100vh - 150px)}}.welcome{max-height:calc(100vh - 280px);top:43%}.welcome h1{font-size:43px}.welcome .intro{font-size:12px;line-height:1.75}.location-card{max-width:350px}@media (height<=800px){.welcome{max-height:calc(100vh - 230px);top:43%}.welcome h1{font-size:38px}}.sensitivity-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:8px;display:flex}.sensitivity-actions>span{color:#6a6d61;font-size:10px;line-height:1.5}.sensitivity-actions .text-button{flex-shrink:0;width:auto;padding:6px 0;font-size:10px}#scene{touch-action:none;-webkit-user-select:none;user-select:none}.location-card{text-shadow:none;background:#f5f3e9e8;padding:14px 18px}.location-card .text-button{background:0 0}body:not(.walking) .location-card{gap:5px;padding:10px 14px;bottom:48px}.lion-start{margin-top:8px}.map-card{width:226px}.map-card svg{height:150px}.sound-settings{border-top:1px solid #d6ccbc;margin-top:24px;padding-top:2px}.tool-button[aria-pressed=false]{color:#79766b}.tour-toolbar{flex-wrap:wrap;justify-content:flex-end}.daylight-settings{border-top:1px solid #d6ccbc;margin-top:24px;padding-top:2px}.time-presets{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px;display:grid}.time-presets button{color:#69523e;background:#e7dece;justify-content:center;padding:10px 4px;font-size:10px}.time-presets button:hover{background:#d6c5aa}.scene-clock{letter-spacing:.5px;color:#665442;background:#f5f3e9e8;padding:8px 12px;font-size:10px}.edition{flex-wrap:wrap;justify-content:flex-end}body[data-daylight=night] .brand,body[data-daylight=night] .edition,body[data-daylight=night] footer{color:#e7e5db}body[data-daylight=night] .brand svg{stroke:#e7e5db}body[data-arrival=overview] .welcome,body[data-arrival=suspended] .welcome{width:285px;max-height:calc(100vh - 190px);padding:24px;top:auto;bottom:78px;overflow:auto;transform:none}body[data-arrival=overview] .welcome h1,body[data-arrival=suspended] .welcome h1{font-size:38px;line-height:1.1}body[data-arrival=overview] .controls,body[data-arrival=suspended] .controls,body[data-arrival=overview] .route,body[data-arrival=suspended] .route,body[data-arrival=overview] .location-card,body[data-arrival=overview] .map-card,body[data-arrival=suspended] .location-card,body[data-arrival=suspended] .map-card,body[data-arrival=flying] .location-card,body[data-arrival=flying] .map-card,body[data-arrival=flying] .welcome,body[data-arrival=flying] .tour-toolbar,body[data-arrival=flying] #crosshair{display:none}.arrival-panel{text-align:center;background:#f5f3e9ed;border:1px solid #fff9;width:310px;padding:20px 26px;position:absolute;bottom:78px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #29382d16}.arrival-panel p{margin:12px 0;font:18px Georgia,serif}.arrival-panel progress{accent-color:#8b4838;width:100%;height:4px}.arrival-panel small{color:#74776d;font-size:9px}.arrival-panel .text-button{background:0 0;justify-content:center;gap:12px;width:auto;margin:10px auto 2px}.arrival-panel kbd{font-size:8px}#arrival-skip{justify-content:center;margin-top:5px;padding:9px 0;font-size:10px}@media (height<=740px){body[data-arrival=overview] .welcome,body[data-arrival=suspended] .welcome{padding:16px 22px;bottom:55px}body[data-arrival=overview] .welcome h1,body[data-arrival=suspended] .welcome h1{font-size:31px}}.time-bar{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#655746;background:#f5f1e8ed;border:1px solid #fff8;border-radius:8px;width:390px;padding:12px 18px 10px;position:absolute;top:25px;left:50%;transform:translate(-50%);box-shadow:0 5px 28px #13253220}.time-bar-heading{white-space:nowrap;align-items:center;gap:10px;display:flex}.time-bar label{letter-spacing:1.3px;font-size:8px}.time-bar output{font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.time-bar button{color:#5b503e;background:#ded5c3;border-radius:4px;flex-shrink:0;width:auto;padding:6px 8px;font-size:9px}.time-bar button:hover{background:#cdbb9e}.time-bar button[aria-pressed=false]{color:#674b22;background:#e7cf9e}.time-track{margin:4px 0 2px;position:relative}.time-track input{appearance:none;cursor:ew-resize;touch-action:pan-y;background:0 0;width:100%;height:26px;margin:0;display:block}.time-track input::-webkit-slider-runnable-track{background:linear-gradient(90deg,#26314e 0%,#55627f 18%,#dfa16f 26%,#edd6a2 38%,#f4da88 50%,#e1b67d 65%,#c36e50 75%,#474769 84%,#26314e 100%);border-radius:6px;height:6px}.time-track input::-moz-range-track{background:linear-gradient(90deg,#26314e,#dfa16f 26%,#f4da88 50%,#c36e50 75%,#26314e);border-radius:6px;height:6px}.time-track input::-webkit-slider-thumb{appearance:none;background:#956346;border:3px solid #fff8e6;border-radius:50%;width:17px;height:17px;margin-top:-5.5px;box-shadow:0 1px 6px #1c243b66}.time-track input::-moz-range-thumb{background:#956346;border:3px solid #fff8e6;border-radius:50%;width:11px;height:11px;box-shadow:0 1px 6px #1c243b66}.time-track input:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #a5744e}.time-marks{pointer-events:none;justify-content:space-between;padding:0 3px;display:flex}.time-marks>span{color:#7c6750;flex-direction:column;align-items:center;gap:1px;font-size:15px;line-height:15px;display:flex}.time-marks>span:first-child,.time-marks>span:last-child{color:#5a617f}.time-marks>span:nth-child(3){color:#af7937}.time-marks small{font-variant-numeric:tabular-nums;font-size:8px;line-height:11px}.time-bar>span{text-align:center;color:#857764;margin-top:6px;font-size:8px;display:block}body[data-daylight=night] .time-bar{color:#ede2ce;background:#202c3deb;border-color:#8f9bac50}body[data-daylight=night] .time-bar button{color:#ece3d3;background:#465163}body[data-daylight=night] .time-bar button[aria-pressed=false]{color:#fff1d8;background:#745a39}body[data-daylight=night] .time-marks>span{color:#d7b674}body[data-daylight=night] .time-marks>span:first-child,body[data-daylight=night] .time-marks>span:last-child{color:#afbfdd}body[data-daylight=night] .time-bar>span{color:#b9b9b7}@media (width<=1150px){.time-bar{top:88px}.tour-toolbar{top:210px}.welcome{max-height:calc(100vh - 380px);top:225px;transform:none}body[data-arrival=overview] .welcome,body[data-arrival=suspended] .welcome{max-height:calc(100vh - 310px)}}@media (width<=600px){.time-bar{width:calc(100% - 32px);padding:10px 14px;top:76px}.time-bar-heading{gap:6px}.time-bar label{letter-spacing:.5px;font-size:7px}.time-bar output{font-size:10px}.time-bar button{font-size:8px}.tour-toolbar{gap:8px;top:194px;right:16px}.tour-toolbar .tool-button{padding:9px 10px}.welcome{right:16px;width:auto!important;max-height:calc(100vh - 280px)!important;top:220px!important;bottom:52px!important;left:16px!important;transform:none!important}.welcome h1{font-size:32px}.walking .location-card{bottom:52px}footer{font-size:8px;bottom:20px}}#scene{touch-action:none}.touch-controls{pointer-events:none;display:none;position:absolute;inset:0}.mobile.walking[data-arrival=complete] .touch-controls{display:block}.move-pad{left:max(20px,env(safe-area-inset-left));bottom:max(20px,env(safe-area-inset-bottom));touch-action:none;-webkit-user-select:none;user-select:none;pointer-events:auto;background:#eee8d966;border:1px solid #fff9;border-radius:50%;width:124px;height:124px;position:absolute;box-shadow:0 3px 20px #13253225}.stick{width:44px;height:44px;transform:translate(var(--stick-x,0px),var(--stick-y,0px));background:#f5efdedb;border:1px solid #fff;border-radius:50%;position:absolute;top:39px;left:39px;box-shadow:0 2px 8px #0002}.pad-label{text-align:center;letter-spacing:2px;color:#403b31;font-size:9px;position:absolute;bottom:10px;left:0;right:0}.touch-look-hint{right:max(20px,env(safe-area-inset-right));bottom:max(35px,env(safe-area-inset-bottom));text-align:center;color:#494638;background:#f5efdec9;border-radius:6px;width:145px;padding:10px;font-size:11px;line-height:1.5;position:absolute}.mobile #app{height:100dvh}.mobile .masthead{top:max(12px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));right:16px}.mobile .brand>span{font-size:16px}.mobile .brand small{letter-spacing:3px;font-size:8px}.mobile .brand svg{width:25px;height:29px}.mobile .edition,.mobile footer,.mobile .route,.mobile .controls,.mobile #drag-start,.mobile #navigation-mode,.mobile kbd,.mobile .time-marks,.mobile #time-bar-help{display:none}.mobile .time-bar{top:calc(56px + env(safe-area-inset-top));-webkit-backdrop-filter:none;backdrop-filter:none;width:calc(100% - 32px);max-width:440px;padding:6px 12px 2px}.mobile .time-bar label{font-size:8px}.mobile .time-bar button{min-height:32px}.mobile .time-track input{height:32px}.mobile .welcome,body.mobile[data-arrival=overview] .welcome,body.mobile[data-arrival=suspended] .welcome{-webkit-backdrop-filter:none;backdrop-filter:none;overscroll-behavior:contain;border-radius:8px;max-width:440px;padding:16px 18px;left:16px!important;right:16px!important;top:calc(141px + env(safe-area-inset-top))!important;width:auto!important;max-height:calc(100dvh - 155px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;bottom:auto!important;transform:none!important}.mobile .welcome h1{margin:10px 0;font-size:30px}.mobile .welcome h1 br{display:none}.mobile .welcome .intro{margin:8px 0 12px;font-size:12px;line-height:1.5}.mobile .welcome button{min-height:44px;padding:11px 12px}.mobile .welcome .text-button{padding:8px 0;font-size:11px}.mobile .welcome .menu-actions{gap:16px;margin:0}.mobile .welcome #message{min-height:0;margin:7px 0;font-size:10px}.mobile .welcome .desktop-note{margin:8px 0;font-size:10px;line-height:1.4}.mobile .welcome .design-credit{margin-top:8px;padding-top:8px;font-size:10px}.mobile .tour-toolbar{top:calc(139px + env(safe-area-inset-top));gap:8px;right:16px}.mobile .tour-toolbar button{min-height:44px;font-size:12px}.mobile .tour-toolbar .design-credit{margin-top:5px;font-size:9px}.mobile .location-card{display:none}.mobile.walking .location-card{border-radius:6px;gap:4px;max-width:170px;padding:9px 11px;display:flex;bottom:100px;left:auto;right:16px}.mobile .location-card strong{font-size:16px}.mobile .location-card>.eyebrow,.mobile #location-note{display:none}.mobile .location-card .text-button{min-height:36px;font-size:11px}.mobile .map-card{-webkit-backdrop-filter:none;backdrop-filter:none;width:140px;padding:8px;bottom:195px;right:16px}.mobile.walking .map-card:not([hidden]){display:block}.mobile .map-card svg{height:90px}.mobile .arrival-panel{width:calc(100% - 32px);max-width:360px;padding:16px;top:auto;bottom:24px;left:50%;transform:translate(-50%)}.mobile .arrival-panel small{display:none}.mobile dialog{max-height:calc(100dvh - 32px - env(safe-area-inset-top));border-radius:8px;padding:18px 22px}.mobile dialog h2{font-size:28px}.mobile dialog label{margin-top:16px}.mobile dialog button{min-height:44px}.mobile dialog input[type=range]{min-height:36px}.mobile dialog select{font-size:16px}@media (orientation:landscape){.mobile .time-bar{left:auto;right:max(16px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));width:290px;transform:none}.mobile .welcome,body.mobile[data-arrival=overview] .welcome,body.mobile[data-arrival=suspended] .welcome{top:58px!important;left:max(16px,env(safe-area-inset-left))!important;width:min(360px,48vw)!important;max-height:calc(100dvh - 70px - env(safe-area-inset-bottom))!important;right:auto!important}.mobile .welcome h1{font-size:24px}.mobile .welcome .eyebrow,.mobile .welcome .intro{display:none}.mobile .tour-toolbar{top:92px}.mobile .location-card{bottom:85px}.mobile .move-pad{width:112px;height:112px;bottom:12px}.mobile .stick{top:33px;left:33px}.mobile .touch-look-hint{bottom:16px}.mobile .map-card{width:120px;bottom:158px}}
