/* Independent 3D world. Room styles and original illustrated rider are retained. */
#world-canvas{position:absolute;inset:0;z-index:0}#world-canvas canvas{display:block;width:100%;height:100%}
#far-world,#trail-world,#foreground{display:none}.sky-wash{z-index:1;pointer-events:none}.sky-wash:after{opacity:.18}
#world{position:absolute;inset:0;width:auto;height:auto;transform:none!important;z-index:3;pointer-events:none}
.place{position:absolute;transform:translate(-50%,-100%);width:220px;height:230px;pointer-events:auto;align-items:flex-end;color:#354d51}
.place-object,.display-plinth{display:none}.place-caption{bottom:-24px;padding:8px 13px;gap:10px;box-shadow:2px 4px 0 #37596b22;background:#fcf0d5;border:1px solid #fff5dc;border-radius:3px 12px 4px 10px;pointer-events:none;transition:transform .25s}
.place-title{font-family:Caveat,cursive;font-size:25px;font-weight:600}.place-number{font-family:Shantell,sans-serif;font-size:10px}.place-sublabel{bottom:-47px;color:#354e58;font:10px Shantell,sans-serif;text-transform:none;letter-spacing:0;white-space:nowrap}
.place:hover .place-caption,.place:focus-visible .place-caption{transform:translateY(-5px) rotate(-2deg)}
#rider{z-index:4;transform-origin:110px 239px}.rider-shadow{display:none}.rider-name{color:#354f58}#sleeper{z-index:4;translate:0 0!important}.sleep-grass{display:none}
.world-vignette{z-index:5;background:linear-gradient(0deg,#294d6d28,transparent 22%),linear-gradient(180deg,#23537114,transparent 24%)}
.masthead{z-index:7}.wordmark,.masthead>p{color:#254a61}.brand-star{color:#e9a55d}
body[data-departure=sleeping] .story,body[data-departure=waking] .story{top:19%;left:6%;width:min(470px,36vw)}
body[data-departure=sleeping] #narration,body[data-departure=waking] #narration{color:#23445d;text-shadow:none}body[data-departure=sleeping] #narration em,body[data-departure=waking] #narration em{color:#335b70}
body[data-departure=riding] .story{top:19%;bottom:auto;left:6%;width:min(310px,23vw);transform:rotate(-1deg)}
body[data-departure=riding] .story:before{inset:-20px -22px -18px;background-color:#fbf1d9}
body[data-departure=riding] .story:after{top:-28px;left:34%;width:78px;height:19px}
body[data-departure=riding] #narration{font-size:clamp(28px,2.8vw,41px)}body[data-departure=riding] #narration em{font-size:.71em}
body[data-departure=riding] #narration{color:#274a5f}body[data-departure=riding] #narration em{color:#db7551}body[data-departure=riding] .story-link{color:#2b5268}
.chapter{color:#375365!important}.story-link{font-size:12px}.journey-footer{color:#264d60}.ride-hint small,.journey-count>span:last-child,.journey-count>span:first-child{color:#355d6d}#route button{color:#35566b}#route button[aria-current=step]{color:#1f455b}#route:before{background:#5e819366}#route button:before{background:#90b7b8;border-color:#4c788a}#route button[aria-current=step]:before{background:#f5d285;border-color:#b09b65}.scroll-mark{color:#355b6b}
.progress-track{background:#779cab55}#progress-fill{background:#efba69}
.wake-arrow path{stroke:#fff0af;filter:drop-shadow(1px 1px 0 #687f82)}
.poke{pointer-events:auto}.poke-cloud{opacity:.88}.bell-note{color:#fff2bd}
#end-message{top:31%;left:auto;right:6%;color:#38516e;width:28vw}#end-message>small{color:#3c5b72}.at-end .story{top:16%!important}
#world-error{position:absolute;z-index:9;left:6%;right:6%;top:45%;padding:25px;background:#fbf1d9;color:#254a61;border-radius:8px;line-height:1.5}
#world-error a{display:inline-block;margin-top:10px}
@media(max-width:700px){
 .masthead:after{display:none}.masthead>p{display:none}
 body[data-departure=sleeping] .story,body[data-departure=waking] .story{top:13%;left:7%;width:85%;max-width:370px}
 body[data-departure=sleeping] #narration,body[data-departure=waking] #narration{font-size:42px}
 body[data-departure=sleeping] #narration em,body[data-departure=waking] #narration em{font-size:26px}
 body[data-departure=riding] .story{top:14%;left:9%;width:76%;max-width:340px;transform:rotate(-.6deg)}
 body[data-departure=riding] #narration{font-size:32px}body[data-departure=riding] #narration em{font-size:23px;margin-top:3px}.chapter{margin-bottom:7px}
 body[data-departure=riding] .story:before{inset:-14px -16px -12px}body[data-departure=riding] .story:after{top:-22px}
 body[data-departure=riding] .story:before{content:"";display:block;position:absolute;z-index:-1;background:#fbf1d9;border-radius:8px 30px 10px 28px;box-shadow:3px 5px 0 #17365a24}
 body[data-departure=riding] .story:after{content:"";display:block;position:absolute;left:34%;width:76px;height:17px;background:#f4cf79b8;transform:rotate(-3deg);z-index:1}
 .story-link{display:inline-flex!important;font-size:11px;margin-top:7px}.place{width:165px}.place-title{font-size:23px}.place-caption{padding:6px 11px;bottom:-23px}.place-sublabel{display:none}
 #rider{z-index:4}.ride-hint-copy small{max-width:160px}.journey-footer{bottom:20px;gap:16px}.ride-hint{font-size:10px}#route button{font-size:8px;min-width:26px}
 #end-message{top:auto;bottom:165px;left:7%;right:auto;width:77%;font-size:22px}#sleeper{width:310px;height:155px}
}
@media(max-width:370px){#route button{font-size:7px;padding:0 2px}.wordmark{font-size:23px}}
@media(max-height:680px) and (min-width:701px){body[data-departure=riding] .story{top:19%;width:23vw;max-width:250px}body[data-departure=riding] #narration{font-size:31px}body[data-departure=riding] #narration em{font-size:22px}.story-link{margin-top:4px}.journey-footer{bottom:15px}.ride-hint small{display:none}}
@media(prefers-reduced-motion:reduce){.place-caption,.story,#sleeper{transition:none!important;animation:none!important}}
body[data-departure=sleeping] .story-link,body[data-departure=waking] .story-link{display:none!important}
