@font-face{font-family:Ninja;src:url('/assets/Heading.otf')}@font-face{font-family:Body;src:url('/assets/Body.ttf')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff8e9;color:#172f38;font-family:Body,system-ui,sans-serif}h1,h2,h3,.button{font-family:Ninja,system-ui,sans-serif;font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.5}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #00a495;outline-offset:5px}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.header{height:96px;padding:0 max(32px,calc((100vw - 1280px)/2));display:flex;align-items:center;justify-content:space-between;background:#fffaf0;gap:28px;border-bottom:1px solid #e9dac0}.logo{width:150px;height:84px;object-fit:contain}.header nav{display:flex;gap:32px;font-size:15px}.header nav a:hover,.text-link:hover{color:#b61f27}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;border:0;background:#df292f;color:#fffaf0;padding:18px 28px;border-radius:14px;box-shadow:0 5px 0 #a61a21;font-size:22px;transition:transform .2s,background .2s}.button:hover{background:#ec363b;transform:translateY(-2px)}.button.small{font-size:18px;padding:12px 22px;gap:22px}.hero{min-height:580px;position:relative;display:grid;grid-template-columns:1.12fr 1fr;background:linear-gradient(90deg,rgba(7,33,43,.96),rgba(7,38,49,.62) 58%,rgba(7,38,49,.16)),url('/assets/courtyard.webp') center 53%/cover;color:#fff8e9;padding:70px max(32px,calc((100vw - 1180px)/2)) 45px;overflow:hidden}.hero-content{position:relative;z-index:2;padding-top:25px}.eyebrow{font-size:12px;letter-spacing:2.2px;font-weight:700;color:#f1ce95}.teal{color:#008b7c}h1{font-size:clamp(48px,5.2vw,76px);line-height:1.08;margin:23px 0}h1 em{font-style:normal;color:#ffe29a}.hero p{font-size:20px;line-height:1.65;max-width:440px;color:#e2ebe5}.actions{display:flex;gap:28px;align-items:center;margin:30px 0 22px}.quiet{border-bottom:1px solid #7b9999;padding-bottom:5px;font-size:15px}.hero-note{font-size:13px;color:#b4cbca}.hero-art{position:relative;min-height:465px}.hero-ninja{height:420px;position:absolute;bottom:24px;left:24%;filter:drop-shadow(0 20px 15px #001c2980);transform:rotate(5deg)}.sun{width:320px;height:320px;background:#ffc97422;position:absolute;border-radius:50%;left:20%;top:55px;box-shadow:0 0 100px #ffd78d35}.word-tiles{position:absolute;bottom:2px;left:2%;display:flex;gap:10px;transform:rotate(-8deg)}.word-tiles span{position:relative;display:grid;place-items:center;width:86px;height:86px;background:linear-gradient(#ff4c44,#da1e27);border:3px solid #ff8170;border-radius:17px;box-shadow:0 7px 0 #991c21;font:60px Ninja}.word-tiles span+span:before{content:'';position:absolute;width:15px;height:13px;background:#ef3637;left:-17px}.word-caption{position:absolute;bottom:-28px;left:15%;font-size:10px;letter-spacing:3px;color:#e5decc}.play-section{padding:70px 0 35px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px;gap:24px}.section-heading h2{margin:10px 0 0}h2{font-size:42px;line-height:1.15;margin:18px 0}h3{font-size:25px;margin:25px 0 10px}.section-heading p,.play-note{font-size:15px;line-height:1.6;color:#697d7b}.game-shell{background:#0c252e;border-radius:22px;overflow:hidden;border:1px solid #dac59d;box-shadow:0 15px 35px #213a3820}.game-stage{position:relative;aspect-ratio:16/9;min-height:360px;background:#102d35}.game-cover{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:linear-gradient(#071e3344,#071e3355),url('/assets/lantern.webp') center 58%/cover;color:#fff}.game-cover img{width:min(340px,65%);height:auto;margin-bottom:25px;filter:drop-shadow(0 5px 15px #0009)}.game-cover p{font-size:14px;margin-top:25px;color:#f6e3be}.game-stage iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.game-toolbar{padding:16px 22px;display:flex;justify-content:space-between;gap:15px;align-items:center;color:#c1d1cf;font-size:13px;flex-wrap:wrap}.game-toolbar>div{display:flex;align-items:center;gap:20px}.game-toolbar button{border:0;background:none;color:inherit;padding:5px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#29bc9c;margin-right:7px}.save-note{font-size:12px;color:#73827d;text-align:center;margin:17px 0}.how{padding:40px 0 80px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.steps article{position:relative;border-top:1px solid #dacbb0;padding:30px 12px 0 0}.step-number{position:absolute;right:14px;top:20px;font:42px Ninja;color:#e3d7c2}.steps p,.collection p,.journey p{font-size:16px;line-height:1.75;color:#687c7c}.mini-word{display:flex;gap:6px;height:70px;align-items:center;margin-top:10px}.mini-word b{font:36px Ninja;display:grid;place-items:center;background:#e52c34;color:#fff;width:56px;height:56px;border-radius:10px;box-shadow:0 4px #a01b26}.goal-demo{height:80px;width:220px;background:#fffcf4;border:1px solid #e7d1ae;border-radius:12px;padding:10px 14px}.goal-demo span{font-size:9px;font-weight:bold;display:block}.goal-demo strong{font-family:Ninja;font-size:18px}.goal-demo>div{height:6px;background:#ecdab9;border-radius:6px;margin-top:8px}.goal-demo i{display:block;width:65%;height:100%;background:#df292f;border-radius:6px}.belt-demo{height:80px;display:flex;align-items:center;gap:9px;color:#d1a248;font-size:27px}.belt-demo span{font:18px Ninja;color:#213940}.journey{background:linear-gradient(90deg,#09242ab0,#102d35 65%),url('/assets/lantern.webp') 20% 60%/cover;color:#fff8e9;overflow:hidden}.journey-inner{display:grid;grid-template-columns:.85fr 1fr;align-items:center;gap:70px;padding:60px 0}.journey p{color:#bfd0cc;max-width:490px;margin-bottom:28px}.journey h2{font-size:46px}.journey-art{height:340px;position:relative}.journey-art img{height:340px;position:absolute;left:10%;transform:rotate(-6deg)}.journey-seal{position:absolute;right:3%;bottom:30px;width:115px;height:115px;background:#ffe3a2;border:5px double #ab883a;border-radius:50%;display:grid;place-content:center;text-align:center;color:#294048;font:18px Ninja;transform:rotate(10deg)}.collection{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding:85px 0;align-items:center}.collection p{max-width:420px}.collection .muted{font-size:13px;color:#83918a}.text-link{display:inline-block;font-family:Ninja;font-size:19px;margin-top:15px;color:#007f72}.sticker-card{padding:25px;background:#fffcf5;border:1px solid #e8d4ae;border-radius:24px;text-align:center;box-shadow:0 6px #ecdfc7;transform:rotate(2deg)}.sticker-card img{display:block;width:90%;margin:16px auto}.sticker-caption{font-size:12px;color:#738079}footer{background:#f1e7d5;border-top:1px solid #e0d0b4}.footer-top{display:flex;align-items:center;gap:30px;padding:28px 0}.footer-top p{flex:1;color:#667c7a;font-size:14px}.footer-top a{font-family:Ninja;font-size:18px}.footer-bottom{border-top:1px solid #dbceb7;padding:20px 0;display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#6e7a73}.text-button{background:none;border:0;color:inherit;padding:0}dialog{border:1px solid #ddc7a1;border-radius:22px;padding:35px;max-width:550px;background:#fff8e9;color:#17343c}dialog p{line-height:1.7}dialog::backdrop{background:#001b28bb}.skip{position:fixed;top:-100px;left:20px;z-index:10;background:white;padding:10px}.skip:focus{top:10px}.game-shell:fullscreen{width:100%;height:100%;border:0;border-radius:0;display:flex;flex-direction:column}.game-shell:fullscreen .game-stage{flex:1;min-height:0}.play-page .play-section{padding:25px 0}.play-page .game-stage{height:calc(100dvh - 240px);aspect-ratio:auto}.play-page .hero,.play-page .how,.play-page .journey,.play-page .collection{display:none}
@media(max-width:800px){.header{padding:0 20px;height:82px}.header nav{gap:18px;font-size:13px}.header nav a:last-child{display:none}.logo{width:115px}.hero{padding:40px 30px;min-height:520px}.hero-ninja{height:330px;left:8%;bottom:65px}.hero-art{min-height:380px}.word-tiles{left:-10%;bottom:30px}.word-tiles span{width:66px;height:66px;font-size:44px}.word-caption{display:none}.hero p{font-size:17px}.hero .quiet{display:none}.wrap{width:calc(100% - 40px)}h2{font-size:34px}.journey-inner{gap:25px}.journey h2{font-size:37px}.collection{gap:30px}.game-stage{min-height:330px}.steps{gap:18px}.goal-demo{width:170px}.steps p{font-size:14px}.step-number{font-size:28px;right:0}.belt-demo{font-size:18px}.belt-demo span{font-size:14px}}
@media(max-width:560px){.header nav{display:none}.hero{display:flex;flex-direction:column;padding:35px 25px 25px}.hero-content{padding:0}.hero h1{font-size:47px;margin:18px 0}.hero p{max-width:290px}.hero-art{height:295px;min-height:295px;margin-top:10px}.hero-ninja{height:290px;left:44%;bottom:0}.word-tiles{left:0;bottom:12px}.word-tiles span{width:62px;height:62px}.sun{width:220px;height:220px;left:35%;top:25px}.hero-note{font-size:12px}.play-section{padding-top:40px}.section-heading{align-items:start}.play-note,.section-heading>p{display:none}.eyebrow{font-size:10px;letter-spacing:1.6px}.game-stage{aspect-ratio:5/7;min-height:0}.game-toolbar{padding:12px;font-size:11px;gap:10px}.game-toolbar>div{gap:12px}.steps{grid-template-columns:1fr}.steps article{padding:22px 0 12px}.step-number{font-size:42px;right:15px}.steps h3{margin-top:18px}.steps p{font-size:16px}.how{padding:30px 0 40px}.journey-inner{display:flex;flex-direction:column-reverse;padding:45px 0 0;gap:25px}.journey-art{width:100%;height:280px}.journey-art img{height:280px;left:12%}.journey-seal{right:15%}.journey h2{font-size:37px}.collection{grid-template-columns:1fr;padding:50px 0;gap:25px}.sticker-card{transform:rotate(0)}.footer-top{flex-wrap:wrap;gap:12px}.footer-top p{flex:1;font-size:12px}.footer-top a{width:100%;text-align:center;margin-top:8px}.footer-bottom{flex-wrap:wrap;justify-content:center}.play-page .game-stage{height:calc(100dvh - 245px);min-height:410px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.mobile-apps{padding:40px 0 60px;border-top:1px solid #e0d0b4;display:flex;align-items:center;justify-content:space-between;gap:30px}.mobile-apps h2{margin:12px 0}.mobile-apps p{color:#687c7c;line-height:1.6}.store-links{display:flex;gap:14px;flex-wrap:wrap}.store-link{display:flex;flex-direction:column;gap:6px;background:#102d35;color:#fff8e9;padding:16px 22px;border-radius:14px;min-width:195px}.store-link>span{font-size:12px;color:#c5d5d0}.store-link strong{font-family:Ninja;font-weight:400;font-size:25px;display:flex;justify-content:space-between;gap:20px}.store-link:hover{background:#18505a}.play-page .mobile-apps{display:none}.policy{max-width:800px;padding:45px 0 65px;line-height:1.8}.policy h1{font-size:44px}.policy h2{font-size:30px}.policy h3{font-size:24px}.policy a{text-decoration:underline}.policy details{border-top:1px solid #dacbb0;margin-top:35px;padding-top:25px}.policy summary{cursor:pointer;font-weight:bold}@media(max-width:800px){.mobile-apps{flex-direction:column;align-items:flex-start}.store-links{width:100%}.store-link{flex:1}}
