:root{color-scheme:light;--cream:#fff7df;--ink:#243f37;--gold:#edc780}*{box-sizing:border-box}body{margin:0;background:#536e58;color:var(--cream);font-family:'DM Sans',sans-serif;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #ffdc95;outline-offset:5px}button:disabled{opacity:.5;cursor:wait}#world{position:fixed;inset:0;overflow:hidden}#scene{width:100%;height:100%;display:block;touch-action:none;cursor:grab}#scene:active{cursor:grabbing}.topbar{position:absolute;z-index:5;top:max(25px,env(safe-area-inset-top));left:32px;right:32px;display:flex;align-items:center;justify-content:space-between;gap:20px;text-shadow:0 2px 12px #173c4166}.back{color:var(--cream);text-decoration:none;font-size:13px;display:flex;gap:9px;align-items:center}.wordmark{position:absolute;left:50%;transform:translateX(-50%);font-family:Fraunces,serif;font-size:30px;line-height:1;color:var(--cream);text-decoration:none;text-align:center}.wordmark small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:2.2px;margin-top:6px}.tools{display:flex;gap:7px;margin-left:auto}.tools button{border:1px solid #fff5d531;border-radius:50px;background:#224c4740;backdrop-filter:blur(15px);color:var(--cream);min-width:38px;height:38px;padding:0 12px;font-size:14px}.tools button span{font-size:10px;margin-left:3px}.tools button[aria-pressed=true]{background:#f8d994;color:#334b3d}.place-heading{position:absolute;z-index:2;left:50%;transform:translateX(-50%);top:102px;text-align:center;width:min(90%,650px);pointer-events:none;text-shadow:0 2px 20px #204b4b65;transition:opacity .5s}.place-heading>span{font-size:9px;letter-spacing:3px;font-weight:600}.place-heading h1{font:500 clamp(32px,4vw,56px)/1.05 Fraunces,serif;margin:9px 0}.place-heading p{font-size:12px;opacity:.9;margin:10px 0}.destinations{position:absolute;z-index:5;bottom:max(42px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:8px;border-radius:60px;background:#163d3ccc;border:1px solid #ffefc542;box-shadow:0 10px 40px #163a3340;backdrop-filter:blur(20px);width:max-content;max-width:95%}.destinations button{color:var(--cream);display:flex;gap:12px;align-items:center;text-align:left;padding:12px 22px;border:0;background:transparent;border-radius:40px;font-size:13px;transition:background .3s}.destinations button.active{background:#f8e4af;color:#35523e}.destination-icon{font-size:28px;line-height:1}.destinations small{display:block;font-size:7px;letter-spacing:1.25px;margin-top:5px}.destinations i{height:28px;width:1px;background:#fff6d72b}.destinations .map-toggle{font-size:24px;padding:10px 16px}.hint{position:absolute;bottom:17px;left:0;right:0;font-size:9px;letter-spacing:.5px;text-align:center;pointer-events:none;text-shadow:0 1px 10px #12392f}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#153e4c55,transparent 27%,transparent 75%,#153b3455)}#hotspots{position:absolute;inset:0;pointer-events:none;z-index:3}.hotspot{position:absolute;left:0;top:0;pointer-events:auto;transform:translate(-50%,-50%);background:#fff7e6e8;backdrop-filter:blur(12px);color:#355047;box-shadow:0 4px 25px #153e3529;border:1px solid #fffbeb;border-radius:30px;padding:9px 15px;font-size:11px;white-space:nowrap;transition:opacity .3s,background .2s}.hotspot:before{content:'';display:inline-block;width:6px;height:6px;background:#b98c40;border-radius:50%;margin-right:7px;box-shadow:0 0 0 4px #efd9a64d}.hotspot:hover{background:#ffe5a9}.hotspot[hidden]{display:none}#notice{position:absolute;z-index:8;left:50%;transform:translate(-50%,15px);bottom:150px;max-width:min(500px,85vw);text-align:center;font-size:13px;background:#24493ee8;border:1px solid #e8d7a345;padding:15px 22px;border-radius:25px;opacity:0;transition:.35s;pointer-events:none}#notice.show{opacity:1;transform:translate(-50%,0)}.invitation{position:absolute;z-index:4;left:5%;bottom:175px;max-width:300px;text-shadow:0 2px 16px #163b2f66;transition:opacity .6s,transform .6s}.little-label{font-size:8px;letter-spacing:2px;font-weight:600}.invitation h2{font:500 36px/1.1 Fraunces,serif;margin:13px 0}.invitation p{font-size:13px;line-height:1.8;margin:0 0 20px}.invitation button,.primary{border:0;background:#f9e5b1;color:#314d3d;padding:14px 23px;border-radius:30px;font-weight:600;font-size:12px;box-shadow:0 6px 24px #314c3520}.invitation button span{margin-left:20px}.invitation.dismissed{opacity:0;transform:translateY(20px);pointer-events:none}#travelVeil{position:absolute;inset:0;background:#fff3ce;opacity:0;pointer-events:none;z-index:6;transition:opacity .3s}#loading{position:absolute;inset:0;background:#e6e5cd;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#3b614a;text-align:center;padding:30px;transition:opacity 1s}#loading.loaded{opacity:0;pointer-events:none}.growing-tree{font-size:80px;animation:breathe 2s infinite}#loading>span{font-size:9px;letter-spacing:3px}#loading h2{font:400 32px Fraunces,serif}#loading p{font-size:12px}dialog{border:1px solid #f8e9c4;border-radius:30px;box-shadow:0 30px 100px #122f3970;color:#2d493e;background:#fff8e9;width:min(560px,92vw);max-height:85dvh;padding:40px;overflow:auto}dialog::backdrop{background:#123b4266;backdrop-filter:blur(9px)}.close-panel{position:sticky;top:0;float:right;z-index:3;border:0;border-radius:50%;background:#e8eddb;width:32px;height:32px;font-size:22px;color:#365344;margin:-19px -19px 0 0}dialog h2{font:500 36px/1.12 Fraunces,serif;margin:10px 0 15px}dialog p{font-size:13px;line-height:1.85}dialog .little-label{color:#94723c}dialog img{width:100%;max-height:240px;object-fit:cover;border-radius:17px;margin:16px 0}dialog .story-actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0}.secondary{border:1px solid #ccd7bc;color:#36523e;background:transparent;padding:13px 18px;border-radius:30px;font-size:12px}.audio-controls{padding:18px;background:#eceddc;border-radius:18px;margin-top:20px}.audio-controls button{border:0;background:#365a47;color:#fff8e5;border-radius:30px;padding:10px 20px}.audio-controls input{width:100%;accent-color:#64845b;margin-top:15px}.audio-time{display:flex;justify-content:space-between;font-size:10px;margin-top:7px}.reader-text{font-size:16px!important;line-height:1.9!important}.reader-nav{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-top:20px}.map-choice{display:block;text-align:left;width:100%;margin:12px 0;padding:20px;background:#e9edda;border:1px solid #d7dfc5;border-radius:16px;color:#36523e}.map-choice strong{display:block;font:500 23px Fraunces,serif}.map-choice span{display:block;font-size:11px;margin-top:5px}.quiet-note{color:#6a7764;font-size:11px!important}.error-message{max-width:440px;font-size:15px;line-height:1.8}.error-message a{color:inherit}@keyframes breathe{50%{transform:translateY(-7px) rotate(5deg)}}@media(max-width:650px){.topbar{left:15px;right:15px;top:19px}.wordmark{font-size:24px}.wordmark small{font-size:6px}.back span,.tools span{display:none}.tools{gap:4px}.tools button{padding:0;min-width:32px;height:32px}.tools #help{display:none}.place-heading{top:86px}.place-heading h1{font-size:34px}.place-heading>span{font-size:7px;letter-spacing:2px}.place-heading p{font-size:10px}.destinations{bottom:43px;padding:6px;gap:2px}.destinations button{padding:12px 13px;gap:7px;font-size:11px}.destinations small{font-size:5px;letter-spacing:.6px}.destination-icon{font-size:23px}.destinations .map-toggle{padding:10px;font-size:19px}.invitation{left:7%;bottom:160px;max-width:240px}.invitation h2{font-size:29px}.invitation p{font-size:12px}.little-label{font-size:7px}.hint{font-size:7px;bottom:23px}.hotspot{font-size:9px;padding:9px 12px}dialog{padding:30px 25px}dialog h2{font-size:30px}#notice{font-size:11px;bottom:145px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.playing-story{position:absolute;right:30px;top:88px;z-index:5;display:flex;gap:1px;background:#fff3d9e8;border:1px solid #fff3d9;border-radius:25px;overflow:hidden;box-shadow:0 4px 24px #1a493a20}.playing-story[hidden]{display:none}.playing-story button{border:0;background:transparent;color:#35523e;font-size:11px;padding:11px 15px}.playing-story button+button{border-left:1px solid #b1bd9e}.wonder-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}@media(max-width:650px){.playing-story{top:auto;bottom:139px;right:16px}.playing-story button{font-size:10px;padding:10px 12px}}

.wordmark img{display:block;width:78px;height:78px;object-fit:contain}.wordmark{top:-13px}.tools button{min-height:38px}#hotspots .hotspot{max-width:calc(100vw - 28px)}@media(max-width:650px){.wordmark{top:-10px}.wordmark img{width:67px;height:67px}.tools button{min-width:35px;min-height:35px}}
#loading[hidden]{display:none}

/* The scenic world stays edge to edge; these controls float over it. */
body{background:#285844}.topbar{text-shadow:0 2px 15px #173d35aa}.place-heading{text-shadow:0 2px 26px #18382caa,0 2px 6px #18382c55}.place-heading h1{font-size:clamp(32px,3.8vw,54px)}.hotspot{background:#fff7dfde;border-color:#fff7dfb0;box-shadow:0 3px 20px #223e2e25;font-size:10px;padding:9px 14px}.hotspot:before{box-shadow:0 0 0 4px #efd9a640}.invitation{text-shadow:0 2px 18px #163d2ddd,0 1px 4px #163d2d99}.vignette{background:linear-gradient(#0f292c55,transparent 24%,transparent 78%,#102e2b55)}.wonder-button{position:absolute;z-index:5;bottom:57px;left:30px;background:#25463dd6;color:#fff0c8;border:1px solid #fff0c850;border-radius:30px;padding:13px 20px;backdrop-filter:blur(15px);font-size:19px;box-shadow:0 5px 25px #17382b20}.wonder-button span{font-size:11px;margin-left:8px}.story-invite{position:absolute;z-index:5;bottom:145px;left:18px;border:1px solid #fff0c861;background:#25493de8;backdrop-filter:blur(15px);color:#fff2d3;border-radius:22px;padding:12px 18px;font-size:11px;text-align:left}.story-invite small{font-size:8px;display:block;margin-top:3px;opacity:.8;letter-spacing:.4px}.story-invite[hidden]{display:none}@media(min-width:651px){.story-invite{display:none}}@media(max-width:650px){.place-heading h1{font-size:32px}.place-heading{top:99px}.place-heading p{font-size:9px;max-width:260px;margin:10px auto}.place-heading>span{font-size:6px;letter-spacing:1.8px}.wonder-button{left:auto;right:17px;bottom:145px;width:43px;height:43px;padding:0;font-size:23px}.wonder-button span{display:none}.tools #help{display:block;min-width:29px;width:29px}.tools{gap:3px}.tools button{min-width:32px;min-height:34px}.wordmark img{width:61px;height:61px}.invitation{bottom:210px;max-width:240px}.invitation h2{font-size:30px}.hotspot{font-size:8px;padding:8px 11px}#notice{bottom:211px;font-size:10px}.hint{font-size:6px}.playing-story{bottom:199px}}

.look-edge{display:none}@media(max-width:650px){.look-edge{display:block;position:absolute;top:43%;z-index:4;width:30px;height:42px;padding:0;border:1px solid #fff4d83d;border-radius:30px;background:#254b3c66;backdrop-filter:blur(8px);color:#fff1d3;font-size:30px;line-height:35px}.look-left{left:8px}.look-right{right:8px}}
/* Keep discovery messages and phone controls clear of the animals' faces and paws. */
#notice{top:235px;bottom:auto}.playing-story{top:88px;bottom:auto}@media(max-width:650px){.story-invite{top:211px;bottom:auto}.wonder-button{top:216px;bottom:auto}.playing-story{top:275px;bottom:auto;right:18px}#notice{top:286px;bottom:auto}.hint{bottom:18px}}

html{background-color:#315a4a;color-scheme:light}

/* A little more pigment in the illustrated garden, without a hard contrast grade. */
#scene{filter:saturate(1.06) contrast(1.015)}
