@font-face{font-family:Chewy;src:url('assets/fonts/chewy.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:Nunito;src:url('assets/fonts/nunito.woff2') format('woff2');font-display:swap;font-weight:400 900}
:root{color-scheme:light;--forest:#103d30;--cream:#fff8e6;--yellow:#ffda60;--text:#263b32;--body:Nunito,Arial,sans-serif;--hand:Chewy,'Trebuchet MS',cursive}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--text);font:400 16px/1.55 var(--body);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button,svg{flex-shrink:0}button{border:0}img{display:block;max-width:100%}button:focus-visible,a:focus-visible{outline:3px solid #fff8e6;outline-offset:5px;box-shadow:0 0 0 7px #235747}::selection{background:#ffdc76;color:#153e2e}.content-width{width:calc(100% - 11%);max-width:1280px;margin-inline:auto}.skip-link{position:fixed;z-index:30;top:12px;left:12px;padding:12px 20px;background:var(--cream);color:var(--forest);transform:translateY(-150%);border-radius:12px}.skip-link:focus{transform:translateY(0)}
.hero{position:relative;isolation:isolate;height:clamp(625px,42.5vw,815px);background:#173f35;color:var(--cream);overflow:hidden}.scenery,.scenery picture,.scenery img,.scenery video,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.scenery{z-index:-3}.scenery img,.scenery video{object-position:center center}.scenery video{opacity:0;transition:opacity .3s}.scenery video.is-playing{opacity:1}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(3,27,26,.3),transparent 63%),linear-gradient(180deg,rgba(7,31,26,.27),transparent 22%)}.site-header{position:relative;display:flex;align-items:center;height:92px;gap:52px;z-index:5}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:52px;height:58px;object-fit:contain}.brand span{font:400 37px/1 var(--hand);letter-spacing:1px;text-shadow:0 2px 2px #132f23}.site-header nav{display:flex;align-items:center;gap:42px;margin-left:15px}.site-header nav a,.site-header nav button{position:relative;padding:10px 0;background:transparent;color:var(--cream);font-weight:700;white-space:nowrap}.site-header nav a:after,.site-header nav button:after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left;background:var(--yellow);transition:transform .2s}.site-header nav a:hover:after,.site-header nav button:hover:after{transform:scaleX(1)}.button{display:inline-flex;gap:13px;align-items:center;justify-content:center;min-height:52px;padding:12px 28px;border-radius:40px;font-weight:900;font-size:18px;line-height:1.25;transition:transform .2s,box-shadow .2s,background .2s;position:relative}.button:hover{transform:translateY(-3px)}.button:active{transform:translateY(0)}.button svg{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.button-yellow{background:linear-gradient(130deg,#ffe68b,#ffce46);color:#19260d;box-shadow:inset 0 1px 0 #fff0bd,0 5px 16px #172a2330}.button-yellow:hover{box-shadow:inset 0 1px 0 #fff6cf,0 7px 22px #f2b32c40}.button-outline{border:1.5px solid #fff8e6;background:#113c3677;color:#fffdf2;font-size:17px;backdrop-filter:blur(6px);padding:12px 24px}.button-outline:hover{background:#1d5245}.header-play{margin-left:auto;min-width:116px;min-height:44px;padding:10px 22px;font-size:17px}.button-spark{font-size:15px}.menu-toggle{display:none}.hero-copy{position:relative;z-index:2;padding-top:48px;pointer-events:none}.hero-copy h1{font:400 clamp(58px,4.9vw,84px)/1.04 var(--hand);letter-spacing:.1px;margin:0;text-shadow:0 3px 12px #092f2650}.hero-copy h1 span{color:#ffe58d}.hero-copy p{font-size:clamp(19px,1.7vw,27px);font-weight:700;margin:17px 0 30px;text-shadow:0 2px 7px #002927}.hero-actions{display:flex;gap:18px;align-items:center;pointer-events:auto;width:max-content;max-width:100%}.availability{display:block;font-size:13px;color:#fcf4d2;margin:13px 0 0 23px;letter-spacing:.2px}.character-stage{position:absolute;right:8%;top:13%;width:39%;height:75%;z-index:1;touch-action:pan-y;pointer-events:none}.character-stage img,.character-stage canvas{position:absolute;width:100%;height:100%;object-fit:contain}.character-stage canvas{opacity:0;transition:opacity .4s}.character-stage.ready canvas{opacity:1}.character-stage.ready img{opacity:0}.character-fallback{transition:opacity .4s;filter:drop-shadow(0 13px 10px #112f2450)}.motion-toggle{position:absolute;z-index:3;bottom:69px;left:5.5%;display:flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid #fff6d944;border-radius:30px;background:#113c3599;color:#fff8e6;font-size:12px;min-height:36px;backdrop-filter:blur(6px)}.motion-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.shore{position:absolute;bottom:-1px;left:0;width:100%;height:81px;z-index:2;fill:var(--cream);pointer-events:none}
.discovery{position:relative;padding:0 0 24px;background:radial-gradient(ellipse at 50% 30%,#fffdf4,var(--cream) 70%);scroll-margin-top:20px}.section-heading{display:flex;align-items:center;justify-content:center;gap:20px}.section-heading h2{font:400 clamp(34px,3vw,46px)/1.15 var(--hand);color:var(--forest);margin:0}.sprig{color:#91ac58;font-size:47px;line-height:1;transform:rotate(-30deg)}.sprig.reverse{transform:scaleX(-1) rotate(-30deg)}.section-intro{text-align:center;margin:5px 0 24px;font-size:17px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;scroll-margin-top:35px}.world-card{text-align:center;min-width:0}.card-visual{display:block;width:100%;padding:0;background:#155947;border-radius:18px;overflow:hidden;position:relative;aspect-ratio:2.22;box-shadow:0 3px 1px #d2c39813}.card-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card-visual:hover img{transform:scale(1.045)}.card-explore{position:absolute;right:10px;bottom:10px;background:#fff8e6ef;color:var(--forest);font-size:13px;font-weight:900;padding:6px 12px;border-radius:25px;opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s;display:flex;gap:20px}.card-visual:hover .card-explore,.card-visual:focus-visible .card-explore{opacity:1;transform:translateY(0)}.world-card h3{font:400 25px/1.2 var(--hand);color:var(--forest);margin:12px 0 5px}.world-card p{font-size:16px;line-height:1.5;margin:0}.site-footer{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:29px;font-size:13px;color:#526145}.site-footer p{margin:0}.site-footer p span{color:#859750;margin-left:7px}.footer-rule{width:50px;height:1px;background:#b5b7a3}
.pond-dialog{position:fixed;inset:0;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #c8d0aa;border-radius:28px;padding:40px;background:var(--cream);color:var(--forest);box-shadow:0 30px 100px #071f2666;text-align:center}.pond-dialog::backdrop{background:#092d2cd9;backdrop-filter:blur(10px)}.pond-dialog[open]{animation:dialog-in .3s ease-out}.dialog-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:44px;height:44px;background:#fff8e6e8;border:1px solid #244a3c22;border-radius:50%;font:400 28px/1 var(--body);color:var(--forest);z-index:2}.dialog-frog{object-fit:contain;margin:0 auto 20px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:1.6px;color:#697747;display:block;margin:14px 0 12px}.pond-dialog h2{font:400 38px/1.1 var(--hand);margin:8px 0 20px}.pond-dialog p{font-size:17px;line-height:1.65}.button-green{background:#174f3c;color:var(--cream);font-size:15px;min-height:50px}.button-green:hover{background:#23654b}.game-slot{display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;margin:25px 0;padding:24px;border:1px solid #bac899;border-radius:18px;background:#e8edcf77}.game-slot>span:first-child{font-size:31px;color:#ac8c24}.game-slot>span:last-child{font-size:14px}.dialog-note{background:#e8edcf77;border-radius:16px;padding:15px}.illustrated-dialog{padding:0}.illustrated-dialog>img{width:100%;height:auto}.dialog-content{padding:18px 35px 35px}body.dialog-open{overflow:hidden}@keyframes dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1700px){.content-width{max-width:1550px}.hero-copy{padding-top:68px}.site-header{height:112px}.character-stage{right:8%;top:12%;height:77%}.hero-copy p{margin-top:22px}.hero-actions{margin-top:33px}.discovery{padding-top:3px}.cards{gap:42px}.section-intro{margin-bottom:26px}.card-visual{border-radius:22px}.world-card h3{font-size:28px}.world-card p{font-size:18px}}
@media(max-width:1150px){.site-header{gap:22px}.site-header nav{gap:25px;margin-left:0}.brand span{font-size:31px}.brand img{width:45px}.hero-copy{padding-top:52px}.hero-copy h1{font-size:58px}.hero-copy p{font-size:20px;max-width:470px}.hero-actions{gap:12px}.button{font-size:16px;padding:13px 22px}.character-stage{right:1%;top:24%;height:64%;width:43%}.hero-copy h1 span{display:inline-block;max-width:650px}.cards{gap:24px}.world-card p br{display:none}}
@media(max-width:850px){.content-width{width:90%}.site-header{height:82px;gap:18px}.site-header nav{gap:20px}.site-header nav a,.site-header nav button{font-size:14px}.brand span{font-size:28px}.brand img{width:40px;height:48px}.header-play{min-width:84px;padding:10px 18px;font-size:15px}.button-spark{display:none}.hero{height:690px}.hero-copy{padding-top:35px}.hero-copy h1{font-size:56px}.hero-copy p{font-size:19px;max-width:480px}.character-stage{width:44%;height:51%;top:auto;bottom:8%;right:6%}.hero-actions{flex-wrap:wrap;max-width:500px;gap:12px}.availability{margin-left:17px}.hero-shade{background:linear-gradient(90deg,#062d285c,transparent 80%)}.motion-toggle{left:5%}.cards{gap:19px}.card-visual{aspect-ratio:1.65;border-radius:14px}.world-card h3{font-size:23px}.world-card p{font-size:15px}.section-intro{font-size:16px}.section-heading h2{font-size:38px}.sprig{font-size:38px}}
@media(max-width:600px){html{scroll-padding-top:20px}.content-width{width:calc(100% - 40px);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.hero{height:820px;max-height:none}.site-header{height:83px;gap:12px;padding-top:env(safe-area-inset-top)}.brand{gap:5px}.brand img{width:40px;height:49px}.brand span{font-size:30px}.header-play{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:center;width:45px;height:45px;margin-left:auto;border:1px solid #fff8e644;background:#103a30a8;border-radius:50%;color:var(--cream)}.menu-toggle span{width:18px;height:2px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.site-header nav{display:none;position:absolute;right:0;top:74px;width:100%;padding:18px 22px;background:#153e32f5;box-shadow:0 15px 30px #07221b66;border:1px solid #a8c47944;border-radius:20px;backdrop-filter:blur(14px);align-items:stretch;gap:3px}.site-header nav.is-open{display:flex;flex-direction:column}.site-header nav a,.site-header nav button{text-align:left;font-size:17px;padding:12px 4px}.hero-copy{padding-top:26px;text-align:center}.hero-copy h1{font-size:clamp(39px,10.6vw,60px);line-height:1.07;text-shadow:0 3px 12px #092f2680}.hero-copy h1 span{max-width:100%;display:block;margin-top:5px}.hero-copy p{font-size:17px;line-height:1.5;margin:16px auto 23px;max-width:300px}.hero-actions{flex-direction:column;width:100%;gap:12px;max-width:none}.hero-actions .button{min-height:51px;font-size:16px}.hero-actions .button-yellow{padding-inline:25px}.hero-actions .button-outline{min-height:45px;padding:10px 21px;font-size:15px}.availability{margin:10px 0 0;font-size:12px}.hero-shade{background:linear-gradient(180deg,#092f3260 0%,#123e4270 39%,transparent 65%)}.character-stage{right:9%;bottom:5%;top:auto;width:82%;height:40%}.scenery img,.scenery video{object-position:center center}.shore{height:51px}.motion-toggle{left:auto;right:15px;bottom:53px;padding:7px 9px;min-height:34px;font-size:0;gap:0}.motion-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.motion-toggle svg{width:17px;height:17px}.discovery{padding:16px 0 25px}.section-heading{gap:9px}.section-heading h2{font-size:33px;white-space:nowrap}.sprig{font-size:32px}.section-intro{max-width:295px;margin:8px auto 25px;line-height:1.55}.cards{grid-template-columns:1fr;gap:30px;max-width:420px;margin:auto}.card-visual{aspect-ratio:2.05;border-radius:17px}.card-explore{opacity:1;transform:none;font-size:12px}.world-card h3{font-size:27px;margin-top:11px}.world-card p{font-size:16px;max-width:300px;margin:auto}.site-footer{gap:10px;margin-top:31px;font-size:11px;text-align:center}.footer-rule{width:22px;flex-shrink:0}.site-footer p{max-width:250px}.pond-dialog{padding:32px 23px 25px;border-radius:23px}.pond-dialog h2{font-size:33px}.pond-dialog p{font-size:16px}.illustrated-dialog{padding:0}.dialog-content{padding:18px 23px 25px}.game-slot{margin:20px 0}.eyebrow{font-size:10px;letter-spacing:1px}.button-green{font-size:14px}}
@media(max-width:374px){.hero{height:800px}.hero-copy{padding-top:19px}.hero-copy h1{font-size:39px}.hero-copy p{font-size:16px}.section-heading h2{font-size:30px}.section-heading{gap:6px}.sprig{font-size:26px}.brand span{font-size:28px}}
@media(max-height:500px) and (orientation:landscape){.hero{height:600px}.hero-copy{padding-top:25px}.hero-copy h1{font-size:46px}.hero-copy p{max-width:420px}.character-stage{height:58%;width:43%;bottom:7%;right:3%}.site-header{height:76px}}
.world-card p br:after{content:' '}.discovery{margin-top:-2px;background:var(--cream) url('assets/section-foliage.webp') center top/100% 100% no-repeat}.card-explore{background:#fff8e6;color:#174832}.character-stage{right:6.5%;width:42%}.character-stage img,.character-stage canvas{transition:none}.discovery>.content-width{width:80%;max-width:1232px}.site-footer{padding-bottom:9px}
@media(max-width:1150px){.world-card p br{display:initial}.world-card p br:after{content:''}.character-stage{right:1%;width:43%}}
@media(max-width:850px){.character-stage{right:3%;width:43%;bottom:12%}.discovery>.content-width{width:90%}.discovery{background-size:auto 100%}}
@media(max-width:600px){.hero{height:860px}.hero-copy{padding-top:20px}.hero-copy p{margin-bottom:18px}.character-stage{right:4%;width:82%;bottom:16%;height:32%}.card-explore{box-shadow:0 2px 5px #143c3522}.hero-copy h1{font-size:clamp(39px,10.6vw,60px)}.world-card p br{display:initial}.world-card p br:after{content:''}.discovery{background-size:auto 570px;background-position:center bottom}.discovery>.content-width{width:calc(100% - 40px)}}
.motion-toggle{min-height:44px;min-width:44px}
.pond-fly{position:absolute;left:0;top:0;z-index:10;width:78px;height:78px;pointer-events:none;visibility:hidden;will-change:transform;filter:drop-shadow(0 2px 2px #102c2c50)}.pond-fly canvas{display:block;width:100%;height:100%;pointer-events:none}
.discovery{background-size:cover}
@media(min-width:851px){.content-width{width:80%}.hero-copy h1{font-size:clamp(58px,5.2vw,88px)}}
@media(min-width:851px),(min-width:601px) and (hover:hover) and (pointer:fine){.character-stage{transform:scale(.9);transform-origin:center bottom}}
@media(min-width:851px) and (max-width:1150px){.hero-copy h1{font-size:58px}.site-header{gap:20px}.site-header nav{gap:24px}.brand span{font-size:29px}.header-play{min-width:94px}}
@media(max-width:600px){.discovery{background-size:auto 570px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.card-visual:hover img{transform:none}.button:hover{transform:none}}
.no-js .motion-toggle,.no-js .menu-toggle{display:none}.hero-copy .noscript-note{font-size:13px;line-height:1.5;max-width:420px;margin:12px 0}.error-page{min-height:100vh;display:grid;place-items:center;padding:30px}.error-card{max-width:620px;text-align:center}.error-card>img{margin:auto}.error-card h1{font:400 clamp(30px,5vw,48px)/1.1 var(--hand)}.error-card .language-switcher{position:static;width:max-content;margin:24px auto 0}
@media(max-width:600px){.no-js .site-header{height:auto;min-height:118px;flex-wrap:wrap;padding-top:18px}.no-js .site-header nav{display:flex;flex-direction:column;position:static;width:100%;order:5;margin-top:35px;padding:8px 12px;gap:0}.no-js .site-header nav a,.no-js .site-header nav button{font-size:14px;padding:7px 0}.no-js .hero{height:1100px}.hero-copy .noscript-note{margin:10px auto;max-width:295px}.no-js .character-stage{bottom:11%;height:27%}}
:lang(zh-Hans){--body:Nunito,"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",sans-serif}:lang(zh-Hans) .hero-copy h1,:lang(zh-Hans) .section-heading h2,:lang(zh-Hans) .world-card h3,:lang(zh-Hans) .pond-dialog h2,:lang(zh-Hans) .error-card h1{font-family:"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",sans-serif;font-weight:900;line-height:1.2}
@media(max-width:600px){.section-heading h2{white-space:normal;text-wrap:balance}.section-heading h2:lang(de){font-size:30px}:lang(zh-Hans) .hero-copy h1{font-size:clamp(34px,9.6vw,53px)}:lang(zh-Hans) .section-heading h2{font-size:28px}}
.section-heading h2{text-align:center}

:lang(zh-Hans) .hero-copy p,:lang(zh-Hans) .section-intro{text-wrap:balance}
@media(min-width:601px) and (max-width:700px){:lang(de) .site-header{gap:12px}:lang(de) .site-header nav{gap:12px}:lang(de) .site-header nav a,:lang(de) .site-header nav button{font-size:13px}}

/* Native language disclosure: compact trigger, scalable list and real vector flags. */
.language-switcher{position:relative;max-width:100%;font-size:13px;line-height:1.4;color:var(--cream);z-index:6}
.language-current{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:8px 12px;max-width:190px;list-style:none;border:1px solid #fff8e659;border-radius:24px;background:#103a30ed;box-shadow:0 3px 12px #08251b25;cursor:pointer;user-select:none;font-weight:800;transition:background .18s,border-color .18s}
.language-current::-webkit-details-marker{display:none}.language-current:hover,.language-switcher[open]>.language-current{background:#245343;border-color:#ffe58d}.language-current-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.language-flag{display:block;width:27px;height:18px;flex:0 0 27px;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px #00000017}.language-chevron,.language-selected{display:block;width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.language-chevron{transition:transform .18s}.language-switcher[open] .language-chevron{transform:rotate(180deg)}
.language-panel{position:absolute;top:calc(100% + 9px);right:0;width:264px;max-width:calc(100vw - 40px);padding:12px 7px 7px;border:1px solid #ced9b9;border-radius:18px;background:#fff9e9;color:#174d3b;box-shadow:0 14px 36px #06251d52,0 2px 7px #06251d20;text-align:left}.language-heading{margin:0;padding:0 10px 9px;font-size:11px;font-weight:900;letter-spacing:.6px;text-transform:uppercase;color:#58725b}.language-options{list-style:none;margin:0;padding:0;max-height:min(320px,calc(100dvh - 170px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a9bda4 transparent}.language-options li+li{margin-top:3px}.language-options a{display:flex;align-items:center;gap:12px;min-height:46px;padding:10px;border-radius:11px;color:#174d3b;font-size:14px;font-weight:700;line-height:1.3}.language-options a>span{flex:1;min-width:0;overflow-wrap:anywhere}.language-options a:hover{background:#edf1df}.language-options a[aria-current=page]{background:#f7e9b8;font-weight:900}.language-options a:focus-visible{outline:2px solid #28734e;outline-offset:-2px}.language-selected{color:#28734e}
.error-card .language-switcher{position:relative}.error-card .language-panel{left:50%;right:auto;transform:translateX(-50%)}
@media(max-width:600px){.site-header .language-current{gap:7px;min-width:60px;padding:8px}.site-header .language-current-name{display:none}.site-header .language-panel{right:-57px;width:280px}.site-header .language-options{max-height:min(320px,calc(100dvh - 130px))}.no-js .site-header .language-panel{right:0}}
@media(max-width:374px){.site-header .brand span{font-size:26px}.site-header .brand img{width:34px}}

.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.header-actions .header-play{margin-left:0}.site-header .menu-toggle{flex-shrink:0;margin-left:0}
@media(min-width:601px) and (max-width:1300px){.site-header{gap:24px}.site-header nav{gap:24px;margin-left:0}.site-header .brand span{font-size:29px}.site-header .language-current-name{display:none}.site-header .language-current{min-width:60px;padding:8px;gap:7px}}
@media(min-width:601px) and (max-width:1000px){.site-header .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:center;width:45px;height:45px;border:1px solid #fff8e644;background:#103a30a8;border-radius:50%;color:var(--cream)}.site-header .menu-toggle span{width:18px;height:2px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.site-header nav{display:none;position:absolute;right:0;top:calc(100% - 4px);width:min(360px,100%);padding:14px 20px;background:#153e32f5;border:1px solid #a8c47944;border-radius:20px;box-shadow:0 15px 30px #07221b66;backdrop-filter:blur(14px);gap:3px;align-items:stretch}.site-header nav.is-open{display:flex;flex-direction:column}.site-header nav a,.site-header nav button{text-align:left;font-size:17px;padding:12px 4px}.no-js .site-header{height:auto;min-height:82px;flex-wrap:wrap;padding-block:18px}.no-js .site-header .menu-toggle{display:none}.no-js .site-header nav{display:flex;flex-direction:row;justify-content:center;position:static;width:100%;order:5;gap:20px}}

/* Arabic reading direction; keep the landscape, mascot and header controls in place. */
html[dir=rtl]{--body:"Segoe UI",Tahoma,Arial,sans-serif;--hand:"Segoe UI",Tahoma,Arial,sans-serif}
[dir=rtl] .site-header,[dir=rtl] .header-actions{direction:ltr}
[dir=rtl] .site-header nav,[dir=rtl] .header-play,[dir=rtl] .language-switcher{direction:rtl}
[dir=rtl] .brand span{font-family:Chewy,'Trebuchet MS',cursive}
[dir=rtl] .site-header nav a,[dir=rtl] .site-header nav button,[dir=rtl] .language-panel{text-align:right}
[dir=rtl] .hero-copy h1,[dir=rtl] .section-heading h2,[dir=rtl] .world-card h3,[dir=rtl] .pond-dialog h2,[dir=rtl] .error-card h1{font-weight:700;line-height:1.4;letter-spacing:0}
[dir=rtl] .eyebrow,[dir=rtl] .language-heading,[dir=rtl] .availability{letter-spacing:0}
[dir=rtl] .hero-copy p{line-height:1.7}
[dir=rtl] .hero-actions svg,[dir=rtl] .card-explore>span{transform:scaleX(-1)}
[dir=rtl] .card-explore{right:auto;left:10px}
[dir=rtl] .dialog-close{right:auto;left:12px}
[dir=rtl] .section-heading h2{white-space:normal;text-align:center}
@media(min-width:601px){[dir=rtl] .hero-copy{direction:ltr}[dir=rtl] .hero-copy>*{direction:rtl;width:52%;max-width:680px;text-align:right}[dir=rtl] .hero-copy h1{font-size:clamp(42px,4.2vw,68px)}[dir=rtl] .hero-actions{justify-content:flex-start;flex-wrap:wrap}[dir=rtl] .availability{margin-left:0}}
@media(max-width:600px){[dir=rtl] .hero-copy h1{font-size:clamp(32px,9vw,48px);line-height:1.4}[dir=rtl] .hero-copy h1 span{display:inline;margin-top:0}[dir=rtl] .section-heading h2{font-size:30px}}

/* Script-aware typography: allow vowel marks and longer Cyrillic headings. */
html:lang(hi){--body:"Nirmala UI","Kohinoor Devanagari",Mangal,sans-serif;--hand:var(--body)}
html:lang(bn){--body:"Nirmala UI","Kohinoor Bangla",Vrinda,sans-serif;--hand:var(--body)}
html:lang(ru){--hand:Nunito,"Segoe UI",Arial,sans-serif}
:is(html:lang(hi),html:lang(bn),html:lang(ru)) .brand span{font-family:Chewy,'Trebuchet MS',cursive}
:is(html:lang(hi),html:lang(bn),html:lang(ru)) :is(.hero-copy h1,.section-heading h2,.world-card h3,.pond-dialog h2){font-weight:800;line-height:1.4;letter-spacing:0}
:is(html:lang(hi),html:lang(bn)) :is(.eyebrow,.language-heading,.availability){letter-spacing:0}
:is(html:lang(hi),html:lang(bn)) :is(.button,.language-current,.language-options a){line-height:1.6}
:is(html:lang(hi),html:lang(bn),html:lang(ru)) .section-heading h2{white-space:normal;text-align:center}
@media(min-width:601px){:is(html:lang(hi),html:lang(bn),html:lang(ru)) .hero-copy h1{font-size:clamp(34px,3.3vw,58px);max-width:56%}:is(html:lang(hi),html:lang(bn),html:lang(ru)) .hero-copy>p{max-width:52%}}
@media(max-width:600px){:is(html:lang(hi),html:lang(bn),html:lang(ru)) .hero-copy h1{font-size:clamp(28px,7.4vw,42px)}:is(html:lang(hi),html:lang(bn),html:lang(ru)) .hero-copy h1 span{display:inline;margin-top:0}:is(html:lang(hi),html:lang(bn),html:lang(ru)) .section-heading h2{font-size:28px}}
@media(max-width:600px){html:lang(ru) .hero-copy h1{font-size:clamp(22px,6.5vw,36px)}}

/* Japanese and Korean glyphs, and joined Urdu lettering. */
html:lang(ja){--body:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;--hand:var(--body)}
html:lang(ko){--body:"Malgun Gothic","Apple SD Gothic Neo",sans-serif;--hand:var(--body)}
html:lang(ur){--body:"Segoe UI",Tahoma,Arial,sans-serif;--hand:var(--body)}
:is(html:lang(ja),html:lang(ko)) .brand span{font-family:Chewy,'Trebuchet MS',cursive}
:is(html:lang(ja),html:lang(ko)) :is(.hero-copy h1,.section-heading h2,.world-card h3,.pond-dialog h2){font-weight:800;line-height:1.45;letter-spacing:0}
html:lang(ko) :is(h1,h2,h3,p,.button){word-break:keep-all;overflow-wrap:anywhere}
:is(html:lang(ja),html:lang(ko)) .section-heading h2{white-space:normal;text-align:center}
html:lang(ur) :is(.button,.language-current,.language-options a){line-height:1.65}
@media(min-width:601px){:is(html:lang(ja),html:lang(ko)) .hero-copy h1{font-size:clamp(32px,3.2vw,56px);max-width:56%}:is(html:lang(ja),html:lang(ko)) .hero-copy>p{max-width:52%}}
@media(max-width:600px){:is(html:lang(ja),html:lang(ko)) .hero-copy h1{font-size:clamp(28px,7.2vw,40px)}:is(html:lang(ja),html:lang(ko)) .hero-copy h1 span{display:inline;margin-top:0}:is(html:lang(ja),html:lang(ko)) .section-heading h2{font-size:28px}html:lang(ur) .hero-copy h1{font-size:clamp(28px,8vw,44px)}}

/* Preserve Vietnamese accents and Thai vowel marks with script-capable fonts. */
html:lang(vi){--body:"Segoe UI",Arial,sans-serif;--hand:var(--body)}
html:lang(th){--body:"Leelawadee UI","Thonburi",Tahoma,sans-serif;--hand:var(--body)}
:is(html:lang(vi),html:lang(th)) .brand span{font-family:Chewy,'Trebuchet MS',cursive}
:is(html:lang(vi),html:lang(th)) :is(.hero-copy h1,.section-heading h2,.world-card h3,.pond-dialog h2){font-weight:800;line-height:1.45;letter-spacing:0}
html:lang(th) :is(.button,.language-current,.language-options a){line-height:1.6}
html:lang(th) :is(.eyebrow,.language-heading,.availability){letter-spacing:0}
:is(html:lang(vi),html:lang(th)) .section-heading h2{white-space:normal;text-align:center}
@media(min-width:601px){:is(html:lang(id),html:lang(vi),html:lang(th)) .hero-copy h1{font-size:clamp(34px,3.5vw,60px);max-width:56%}:is(html:lang(id),html:lang(vi),html:lang(th)) .hero-copy>p{max-width:52%}}
@media(max-width:600px){:is(html:lang(id),html:lang(vi),html:lang(th)) .hero-copy h1{font-size:clamp(28px,7.5vw,42px)}:is(html:lang(id),html:lang(vi),html:lang(th)) .hero-copy h1 span{display:inline;margin-top:0}:is(html:lang(vi),html:lang(th)) .section-heading h2{font-size:28px}}

/* Additional European languages and Filipino: keep long titles clear of the mascot. */
:is(html:lang(pl),html:lang(ro)){--hand:"Segoe UI",Arial,sans-serif}
:is(html:lang(pl),html:lang(ro)) .brand span{font-family:Chewy,'Trebuchet MS',cursive}
:is(html:lang(pl),html:lang(ro)) :is(.hero-copy h1,.section-heading h2,.world-card h3,.pond-dialog h2){font-weight:800;line-height:1.35;letter-spacing:0}
:is(html:lang(fil),html:lang(pl),html:lang(nl),html:lang(ro),html:lang(sv),html:lang(da),html:lang(nb),html:lang(fi)) .section-heading h2{white-space:normal;text-align:center}
@media(min-width:601px){:is(html:lang(fil),html:lang(pl),html:lang(nl),html:lang(ro),html:lang(sv),html:lang(da),html:lang(nb),html:lang(fi)) .hero-copy h1{font-size:clamp(34px,3.5vw,60px);max-width:56%}:is(html:lang(fil),html:lang(pl),html:lang(nl),html:lang(ro),html:lang(sv),html:lang(da),html:lang(nb),html:lang(fi)) .hero-copy>p{max-width:52%}:is(html:lang(fil),html:lang(pl),html:lang(nl),html:lang(ro),html:lang(sv),html:lang(da),html:lang(nb),html:lang(fi)) .hero-actions{max-width:56%;flex-wrap:wrap}}
@media(max-width:600px){:is(html:lang(fil),html:lang(pl),html:lang(nl),html:lang(ro),html:lang(sv),html:lang(da),html:lang(nb),html:lang(fi)) .hero-copy h1{font-size:clamp(28px,7.5vw,42px)}:is(html:lang(fil),html:lang(pl),html:lang(nl),html:lang(ro),html:lang(sv),html:lang(da),html:lang(nb),html:lang(fi)) .hero-copy h1 span{display:inline;margin-top:0}:is(html:lang(fil),html:lang(pl),html:lang(nl),html:lang(ro),html:lang(sv),html:lang(da),html:lang(nb),html:lang(fi)) .section-heading h2{font-size:28px}:is(html:lang(fil),html:lang(pl),html:lang(nl),html:lang(ro),html:lang(sv),html:lang(da),html:lang(nb),html:lang(fi)) .hero-actions .button{max-width:100%}}

/* Legal information: readable without scripts, in the site's cream and green palette. */
.legal-footer{text-align:center;margin:0;padding:0 16px 28px;font-size:14px}
.legal-footer a,.legal-page a{color:#20513a;text-decoration:underline;text-underline-offset:4px}
.legal-page{background:#f7f3df;color:#243e30;min-height:100vh}
.legal-shell{max-width:900px;margin:auto;padding:32px 24px 64px;line-height:1.75;overflow-wrap:anywhere}
.legal-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:44px}
.legal-top img{width:64px;height:64px;object-fit:contain}
.legal-page h1{font-family:var(--hand);font-size:clamp(36px,6vw,56px);line-height:1.2;margin:0 0 12px}
.legal-page h2{font-size:23px;line-height:1.4;margin:32px 0 12px;color:#20513a}
.legal-page p,.legal-page ul{margin:12px 0}
.legal-page ul{padding-left:24px}
.legal-date{color:#59694e}.legal-contact{padding:20px;border:1px solid #bec9a9;border-radius:18px;background:#fffdf2}
.legal-page a:focus-visible{outline:3px solid #547637;outline-offset:5px}
@media(max-width:480px){.legal-shell{padding:20px 20px 40px}.legal-top{margin-bottom:28px}.legal-page h2{font-size:21px}}

/* Localized legal document and its native, script-free language menu. */
.legal-page .legal-top{flex-wrap:wrap}.legal-back{margin-inline-start:auto}
.legal-page .language-switcher{position:relative;inset:auto;flex-shrink:0;z-index:20}
.legal-page .language-panel{inset-inline-end:0;inset-inline-start:auto;max-width:calc(100vw - 40px)}
.legal-page .language-switcher .language-current{color:#fff8e6;text-decoration:none}
.legal-page .language-switcher .language-options a{color:#173e30;text-decoration:none}
.legal-page .language-switcher .language-options a[aria-current=page]{color:#173e30}
.legal-page ul{padding-left:0;padding-inline-start:24px}
.legal-page .language-options{padding:0}
.legal-page:is(:lang(ar),:lang(ur),:lang(hi),:lang(bn),:lang(ja),:lang(ko),:lang(zh),:lang(th)) h1{font-family:inherit;font-weight:800;line-height:1.5}
@media(max-width:480px){.legal-page .legal-top{gap:12px}.legal-back{font-size:14px}.legal-page .language-switcher{margin-inline-start:auto}.legal-page .language-panel{width:min(340px,calc(100vw - 40px))}}

/* Shared interior pages: the same enchanted pond, header and footer as the homepage. */
.interior-page{background:var(--cream);color:#243e30;min-height:100vh;display:flex;flex-direction:column}.interior-banner{flex-shrink:0}.interior-landscape{flex:1}
.interior-banner{position:relative;isolation:isolate;min-height:370px;padding-bottom:76px;background:#173e30}
.interior-scenery{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#092d3870,#123f3270 65%,#123f3290),url('/assets/pond-desktop.webp') center 43%/cover no-repeat}
.interior-banner:has(.language-switcher[open],.site-header nav.is-open){z-index:40}
.interior-banner .site-header{position:relative;z-index:30}.interior-banner .brand{color:var(--cream);text-shadow:0 2px 10px #123e32}
.interior-heading{text-align:center;color:#fff2b6;padding:27px 0 12px}
.interior-heading .sprig{font-size:34px;line-height:1;color:#ffe083;display:block}
.interior-heading h1{font-family:var(--hand);font-size:clamp(36px,4.3vw,64px);line-height:1.2;margin:12px auto 14px;max-width:1000px;text-wrap:balance;text-shadow:0 3px 18px #0c302bb3}
.interior-heading p{font-size:15px;color:#fff8e6;margin:0;text-shadow:0 2px 8px #123e32}
.interior-banner .shore{bottom:-1px;height:65px;pointer-events:none}
.interior-landscape{position:relative;isolation:isolate;padding:0 0 12px;background:none;--foliage-cycle:133.333334vw}
.interior-content{position:relative;max-width:960px;width:calc(100% - 48px);margin:-14px auto 0;padding:34px 62px 46px;border:1px solid #d6ddbd;background:#fffdf3;border-radius:26px;box-shadow:0 15px 45px #24472c0d;line-height:1.8;overflow-wrap:anywhere}
.legal-document h2{font-size:23px;color:#20513a;line-height:1.4;margin:30px 0 12px}
.legal-document h2:first-child{margin-top:0}.legal-document p{margin:12px 0}.legal-document ul{padding-inline-start:24px;margin:12px 0}
.legal-document a{color:#20513a;text-decoration:underline;text-underline-offset:4px}
.legal-document .legal-contact{margin-top:20px;background:#f2f3df;border:1px solid #d7dfbf;border-radius:16px;padding:22px}
.interior-footer .site-footer{margin-top:32px}.interior-page .legal-footer{padding-bottom:12px}
.interior-page:is(:lang(ar),:lang(ur),:lang(hi),:lang(bn),:lang(ja),:lang(ko),:lang(zh),:lang(th)) .interior-heading h1{font-family:inherit;font-weight:800;line-height:1.5}
@media(max-width:1000px){.interior-heading{padding-top:24px}.interior-banner{min-height:330px}}
@media(max-width:600px){.interior-banner{min-height:320px;padding-bottom:58px}.interior-heading{padding-top:22px}.interior-heading h1{font-size:clamp(30px,8vw,42px)}.interior-heading p{font-size:13px}.interior-content{width:calc(100% - 28px);padding:27px 23px 32px;border-radius:20px;font-size:15px;line-height:1.85}.legal-document h2{font-size:21px}.interior-banner .shore{height:42px}.interior-page .site-header nav{z-index:35}.interior-heading .sprig{font-size:28px}}

/* Repeat paired upright/reflected foliage; identical boundary pixels need no opacity fade. */
.interior-landscape::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('/assets/interior-foliage-tile.svg?v=mirror-1') center top/100% var(--foliage-cycle) repeat-y}

.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 22px;line-height:1.7}
.footer-links a[aria-current=page]{font-weight:700}
.demo-content{min-height:260px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px 0}
.demo-content .sprig{color:#81924d;font-size:38px}
.demo-content h2{font-size:24px;color:#20513a;margin:12px 0}
.demo-content p{max-width:570px;margin:0 auto}
@media(max-width:600px){.footer-links{gap:9px 16px;font-size:13px}.demo-content{min-height:240px}.demo-content h2{font-size:21px}}
