@font-face{font-family:"Quest Display";src:url('assets/LilitaOne-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--quest-plum:#332039;--quest-gold:#ffe190;--quest-paper:#fff1cc;--journey-branch-a:url('assets/garden-branch-v8-a.webp');--journey-branch-b:url('assets/garden-branch-v8-b.webp');--village-scene:url('assets/journey-v9/garden-village-fork-v9.webp');--fork-scene:var(--village-scene)}
[data-stop=gate] .scene-camera{transform:translate3d(-20px,24px,140px) rotateY(-3deg)}[data-stop=trail] .scene-camera{transform:translate3d(45px,10px,200px) rotateY(3deg)}[data-stop=fork] .scene-camera{transform:translate3d(0,32px,265px) rotateY(0deg)}[data-stop=bridge] .scene-camera{transform:translate3d(180px,28px,270px) rotateY(8deg)}[data-stop=garden] .scene-camera{transform:translate3d(-180px,28px,270px) rotateY(-8deg)}[data-stop=gate] .village-friends{opacity:0;visibility:hidden;pointer-events:none;transform:translateZ(100px) translateY(80px)}[data-stop=gate] .village-gate{transform:translateZ(85px) scale(1.05);opacity:1;pointer-events:auto}[data-stop=trail] .scenery-fork,[data-stop=fork] .scenery-fork,[data-stop=bridge] .scenery-fork,[data-stop=garden] .scenery-fork{opacity:1}[data-stop=trail] .village-friends,[data-stop=fork] .village-friends,[data-stop=bridge] .village-friends,[data-stop=garden] .village-friends{opacity:0;visibility:hidden;pointer-events:none}[data-stop=trail] .village-gate,[data-stop=fork] .village-gate,[data-stop=bridge] .village-gate,[data-stop=garden] .village-gate{transform:translateZ(390px) scale(2.6);opacity:0;visibility:hidden;pointer-events:none}[data-stop=trail] .trail-friends,[data-stop=fork] .fork-friends{opacity:1;visibility:visible;pointer-events:auto}[data-stop=bridge] .destination-friends,[data-stop=garden] .destination-friends{opacity:1;visibility:visible}[data-stop=bridge] .friend-troll,[data-stop=garden] .friend-gnome{opacity:1;visibility:visible;pointer-events:auto}.playing .friend-kitten{animation:kitten-play 2.6s ease-in-out both}.playing .friend-puppy{animation:puppy-play 2.6s .15s ease-in-out both}.playing .play-leaf{animation:leaf-play 2.6s ease-in-out both}
#journey-app:not([data-view=scene]) .journey-header{position:relative;background:#273c37;min-height:100px}#journey-app[data-view=intro] .journey-header{display:none}#journey-app[data-view=catalogue],#journey-app[data-view=notes]{background:#fff5dc;min-height:100svh;padding-bottom:35px}#journey-app:not([data-view=scene]) .prototype-note{position:static;color:#806950;margin:25px auto 10px;max-width:600px;padding:0 20px;text-shadow:none}.journey-content-view{padding-top:25px}.view-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;letter-spacing:.1em}.view-toolbar>p{margin:0}.view-toolbar button{font-size:12px;min-height:44px;padding:8px 15px;border:1px solid #b29268;background:#ffedbf;border-radius:7px}.view-title{font:400 clamp(33px,5vw,52px)/1.1 "Quest Display",sans-serif;margin-top:23px;margin-bottom:20px;letter-spacing:0;color:#523355}.journey-content-view .quest-catalogue{padding-top:12px}.journey-content-view .catalogue-intro>h2{font-family:"Quest Display",sans-serif;font-weight:400;font-size:30px}.journey-content-view .catalogue-notes-links{flex-wrap:wrap}.journey-content-view .book-detail h3,.journey-content-view .planned-series h3{font-family:"Quest Display",sans-serif;font-weight:400}.journey-content-view .coming,.journey-content-view .how,.journey-content-view .inside{margin-top:30px}.journey-content-view .parent-brief{margin-top:30px}.journey-content-view .parent-brief>img{max-height:230px;object-fit:contain}.journey-content-view .catalogue-facet-menu>h3{font-family:"Quest Display",sans-serif;font-weight:400}.journey-content-view :focus-visible{outline-color:#9c466f}.journey-content-view .catalogue-notes-links a{font-size:12px}
@media(max-width:1050px){.journey-header{padding:14px 18px}.journey-brand{width:245px}.journey-header nav{max-width:450px}.journey-header nav button{font-size:12px;padding:9px 13px}.journey-story{bottom:38px;width:min(610px,calc(100% - 60px));padding:18px 25px}.journey-map{bottom:12px;left:13px}.journey-map summary{font-size:11px;padding:8px 12px}.world-friend{width:170px;height:185px;bottom:31%}.friend-kitten{left:25%}.friend-puppy{right:24%;width:185px}.friend-mouse{left:25%;width:120px;height:170px}.friend-badger{right:24%;width:145px;height:165px}.friend-owl{left:24%;bottom:48%;height:100px;width:95px}.friend-raven{right:24%;bottom:49%;height:105px;width:100px}.friend-troll{left:30%;width:175px;height:210px}.friend-gnome{right:29%;width:150px;height:200px}.fork-signs{gap:35px;top:41%}.fork-signs button{font-size:17px;min-width:185px;padding:10px 15px}.village-gate{bottom:33%}.foreground-arch{top:-9%;width:62%;height:62%}.arch-left{left:-29%}.arch-right{right:-29%}.foreground-flowers{left:-15%;bottom:-10%;width:48%;height:40%}}
@media(max-width:600px){.intro-tools{inset:15px 14px auto}.intro-tools button{font-size:10px;padding:9px 12px}.scroll-arrival{width:86vw}.invitation-hint{font-size:15px;margin-bottom:25px}.discovery-scroll{padding:24px 13px}.scroll-roller{height:28px}.scroll-roller:before,.scroll-roller:after{height:22px;width:19px;top:2px}.roller-top{top:11px}.roller-bottom{bottom:11px}.intro-revealed .scroll-paper{height:245px}.scroll-lettering{font-size:52px;line-height:1.03;max-width:90%}.scroll-ornament{font-size:26px}.discovery-tagline{font-size:22px;max-width:280px;margin:25px auto 20px}.enter-village{font-size:15px;padding:12px 18px;gap:14px}.intro-feedback{font-size:10px}.journey-header{padding:10px 13px;align-items:center;flex-direction:column;gap:7px;background:linear-gradient(#142d39ee,#1b333966,transparent);min-height:130px}.journey-brand{width:250px}.journey-header nav{justify-content:center;gap:6px;max-width:100%}.journey-header nav button{font-size:10px;min-height:44px;padding:8px 11px}.journey-header nav button[data-open-view=notes]{display:none}.journey-story{bottom:58px;width:calc(100% - 30px);padding:16px 17px 14px}.journey-story h1{font-size:27px}.journey-story>p:not(.journey-chapter){font-size:11px;line-height:1.45}.journey-live{font-size:10px!important;min-height:15px}.journey-actions{margin-top:10px;gap:8px}.journey-actions button{font-size:14px;padding:9px 14px;gap:10px}.journey-actions #journey-back{font-size:9px;padding:8px 9px}.journey-chapter{font-size:9px}.journey-map{bottom:14px;left:15px}.journey-map summary{min-height:38px;font-size:10px}.journey-map nav{bottom:47px}.prototype-note{display:none}.journey-scenery{inset:-7% -53%;background-position:center 65%}.foreground-arch{top:2%;width:96%;height:43%}.arch-left{left:-57%}.arch-right{right:-57%}.foreground-flowers{left:-34%;bottom:-4%;width:84%;height:38%}.world-friend{bottom:39%;width:135px;height:155px;transform:translateZ(20px)}.friend-kitten{left:14%}.friend-puppy{right:11%;width:142px}.world-friend span{font-size:12px;padding:5px 11px;bottom:-12px}.play-leaf{bottom:48%;width:24px;height:14px;left:47%;transform:translateZ(20px)}.village-gate{width:260px;left:calc(50% - 130px);bottom:43%;height:160px}.gate-post{height:160px;width:22px}.journey-gate-leaf{width:109px;height:125px;gap:6px;left:20px}.gate-right{left:auto;right:20px}.journey-gate-leaf:before{top:43px;height:13px}.journey-gate-leaf:after{top:91px;height:13px}.gate-invitation{top:76px;font-size:16px;padding:6px 12px}[data-stop=gate] .village-gate{transform:translateZ(25px) scale(.9)}.friend-mouse{left:19%;bottom:42%;width:85px;height:135px;transform:translateZ(10px)}.friend-badger{right:16%;bottom:42%;width:106px;height:130px;transform:translateZ(20px)}.friend-owl{left:20%;bottom:58%;width:70px;height:85px;transform:translateZ(-15px)}.friend-raven{right:16%;bottom:58%;width:70px;height:85px;transform:translateZ(-15px)}.friend-troll{left:31%;bottom:41%;width:137px;height:175px;transform:translateZ(15px)}.friend-gnome{right:31%;bottom:41%;width:120px;height:170px;transform:translateZ(15px)}.fork-signs{top:41%;gap:15px;width:calc(100% - 42px);align-items:stretch}.fork-signs button{min-width:0;width:50%;font-size:15px;gap:7px;padding:10px 12px;min-height:65px}[data-stop=gate] .scene-camera{transform:translate3d(-7px,16px,100px) rotateY(-2deg)}[data-stop=trail] .scene-camera{transform:translate3d(10px,15px,130px) rotateY(2deg)}[data-stop=fork] .scene-camera{transform:translate3d(0,18px,155px)}[data-stop=bridge] .scene-camera{transform:translate3d(65px,15px,175px) rotateY(7deg)}[data-stop=garden] .scene-camera{transform:translate3d(-65px,15px,175px) rotateY(-7deg)}#journey-app:not([data-view=scene]) .journey-header{min-height:135px}.view-toolbar{font-size:9px}.view-toolbar button{font-size:11px}.view-title{font-size:34px}.journey-content-view .quest-catalogue{margin-top:0}.journey-content-view .catalogue-intro>h2{font-size:25px}}
@media(max-height:640px) and (min-width:601px){.journey-story{width:560px;padding:12px 24px;bottom:17px}.journey-story h1{font-size:26px}.journey-story>p:not(.journey-chapter){font-size:11px}.journey-actions{margin-top:8px}.world-friend{bottom:34%;height:145px;width:160px}.journey-map{bottom:15px}.intro-revealed .scroll-paper{height:210px}.scroll-arrival{max-width:650px}.invitation-hint{margin-bottom:8px}.scroll-ornament{font-size:24px;margin-bottom:8px}.discovery-tagline{margin:12px 0}.intro-feedback{margin-top:13px}}
#journey-app[data-motion=still] *,#journey-app[data-motion=still] *:before,#journey-app[data-motion=still] *:after{animation:none!important;transition:none!important}.intro-revealed[data-motion=still] .enter-village,#journey-app[data-motion=still] .intro-revealed .enter-village{opacity:1;visibility:visible}#journey-app[data-motion=still] .scroll-arrival{transform:none;opacity:1}#journey-app[data-motion=still] .discovery-sparks,#journey-app[data-motion=still] .discovery-rays{display:none}
@media(prefers-reduced-motion:reduce){#journey-app *,#journey-app *:before,#journey-app *:after{animation:none!important;transition:none!important}.intro-revealed .enter-village{opacity:1;visibility:visible}.scroll-arrival{opacity:1;transform:none}.discovery-sparks,.discovery-rays{display:none}}
@keyframes invitation-arrives{from{transform:translateY(-65vh) rotateX(24deg) rotateZ(-9deg);opacity:0}65%{opacity:1}to{transform:translateY(0) rotateX(0) rotateZ(0);opacity:1}}@keyframes enter-appears{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes discovery-rays{0%{opacity:0;transform:scale(.3) rotate(-14deg)}25%{opacity:.95}to{opacity:0;transform:scale(1.3) rotate(18deg)}}@keyframes discovery-spark{0%{opacity:0;transform:rotate(var(--a)) translateX(40px) scale(.3)}20%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateX(var(--d)) scale(1.4)}}@keyframes kitten-play{0%,100%{translate:0 0}35%{translate:48px -9px;rotate:3deg}65%{translate:75px 3px;rotate:-1deg}}@keyframes puppy-play{0%,100%{translate:0 0}35%{translate:-38px 5px;rotate:-3deg}65%{translate:-65px -5px;rotate:1deg}}@keyframes leaf-play{0%{translate:0 0;rotate:-25deg}40%{translate:45px -50px;rotate:160deg}70%{translate:-15px -20px;rotate:290deg}100%{translate:0 0;rotate:335deg}}
.intro-revealed .enter-village{visibility:hidden;animation-name:enter-ready}@keyframes enter-ready{from{opacity:0;visibility:hidden;translate:0 8px}to{opacity:1;visibility:visible;translate:0 0}}#journey-app[data-motion=still] .intro-revealed .enter-village{visibility:visible;opacity:1}@media(prefers-reduced-motion:reduce){.intro-revealed .enter-village{visibility:visible;opacity:1}}
/* Shared landscape and camera coordinates are retained across every stop. */
body:has(#journey-app[data-view=intro]),body:has(#journey-app[data-view=scene]){height:100svh;overflow:hidden}
.scroll-seal{z-index:4}.scenery-fork{display:none!important}
[data-stop=glade] .village-gate{opacity:0;visibility:hidden}
.world-friend.greeted span{background:#ffe193;box-shadow:0 0 0 3px #fff4c077,0 3px 0 #78573166}
@media(min-width:601px){.world-friend{bottom:40%}.friend-mouse,.friend-badger{bottom:44%}.friend-owl,.friend-raven{bottom:57%}.friend-troll,.friend-gnome{bottom:44%}.village-gate{bottom:43%}}
@media(max-width:600px){.journey-header nav button[data-open-view=notes]{display:block;padding:8px 9px}.journey-header nav button{padding-left:9px;padding-right:9px}.playing .friend-kitten{animation-name:small-kitten-play}.playing .friend-puppy{animation-name:small-puppy-play}.playing .play-leaf{animation-name:small-leaf-play}}
@keyframes small-kitten-play{0%,100%{translate:0 0}45%{translate:10px -7px;rotate:1deg}}
@keyframes small-puppy-play{0%,100%{translate:0 0}45%{translate:-8px -4px;rotate:-1deg}}
@keyframes small-leaf-play{0%,100%{translate:0 0}45%{translate:4px -22px;rotate:160deg}}
.gate-invitation{z-index:5;transform:translateZ(4px)}
@media(min-width:601px){[data-stop=bridge] .scene-camera{transform:translate3d(450px,28px,350px) rotateY(10deg)}[data-stop=garden] .scene-camera{transform:translate3d(-450px,28px,350px) rotateY(-10deg)}.friend-troll{left:7%}.friend-gnome{right:7%}}
@media(max-width:600px){[data-stop=bridge] .scene-camera{transform:translate3d(235px,15px,225px) rotateY(7deg)}[data-stop=garden] .scene-camera{transform:translate3d(-235px,15px,225px) rotateY(-7deg)}.friend-troll{left:-28%}.friend-gnome{right:-28%}}
.journey-map summary{min-height:44px}
@media(min-width:601px){[data-stop=bridge] .scene-camera{transform:translate3d(clamp(210px,35vw,450px),28px,350px) rotateY(10deg)}[data-stop=garden] .scene-camera{transform:translate3d(clamp(-450px,-35vw,-210px),28px,350px) rotateY(-10deg)}}
@media(max-width:600px){[data-stop=bridge] .scene-camera{transform:translate3d(60vw,15px,225px) rotateY(7deg)}[data-stop=garden] .scene-camera{transform:translate3d(-60vw,15px,225px) rotateY(-7deg)}}
