@charset "UTF-8";
:root{--ink:#203b3d;--navy:#243b50;--green:#41695d;--sage:#dce8dc;--cream:#f8f5ec;--paper:#fffdf8;--line:#d9dfd4;--muted:#657672;--yellow:#f1cf75;--pink:#ead2d5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;font-size:15px;line-height:1.9}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #9b6b24;outline-offset:4px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5;letter-spacing:.035em}p{margin-bottom:20px}button{border:0}h1{font-size:clamp(32px,4.3vw,60px);line-height:1.45;letter-spacing:.06em}h2{font-size:clamp(25px,2.7vw,37px)}h3{font-size:19px}small{font-size:12px}.skip{position:fixed;top:-80px;left:20px;z-index:99;background:var(--ink);color:white;padding:10px 20px}.skip:focus{top:8px}.prototype-label{text-align:center;font-size:11px;background:#e5ebdf;letter-spacing:.1em;color:#536651;padding:4px}.site-header{max-width:1360px;margin:auto;padding:24px 48px;display:flex;align-items:center;gap:40px}.brand{display:flex;gap:10px;align-items:center;text-decoration:none!important;line-height:1;white-space:nowrap}.brand img{width:39px;height:39px}.brand span{font:800 23px system-ui;letter-spacing:.02em}.brand small{display:block;font:600 9px system-ui;letter-spacing:.19em;margin-top:1px}.site-header nav{display:flex;gap:30px;margin-left:auto;font-size:13px;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:54px;border-radius:6px;padding:12px 24px;font-weight:700;font-size:14px;text-decoration:none!important;transition:transform .15s,background .15s}.button:hover{transform:translateY(-2px)}.button.dark{background:var(--ink);color:#fff}.button.dark:hover{background:#355a56}.button.small{font-size:12px;padding:10px 20px;min-height:44px}.button.outline{border:1px solid #71857a;background:transparent}.section-width{max-width:1256px;margin:0 auto;padding-left:48px;padding-right:48px}.eyebrow{font:700 11px/1.6 system-ui;letter-spacing:.15em;color:#628474;margin-bottom:17px}.tiny-squares{color:#c19142;letter-spacing:.1em;margin-right:10px}.hero{display:grid;grid-template-columns:1fr 1.06fr;align-items:center;gap:52px;padding-top:65px;padding-bottom:100px}.hero-copy h1{margin:0 0 24px}.period{color:#b99156}.hero-lead{font-size:18px;font-weight:600;line-height:2}.hero-description{font-size:13px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:28px;margin:28px 0 12px}.text-link{font-size:13px;font-weight:700;display:inline-flex;align-items:center;gap:22px;border-bottom:1px solid #8ba095;padding-bottom:5px}.mini-note{font-size:11px;color:var(--muted);margin:0}.hero-world{position:relative;padding-bottom:56px}.world-label{font-size:11px;letter-spacing:.12em;margin:0 0 15px;display:flex;gap:10px;align-items:center}.live-dot,.stage-toolbar i,.trial-label i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#4a806b}.world-screen{background:#c3d5cc;border-radius:36px 5px 36px 5px;padding:14px 14px 0;box-shadow:12px 15px 0 #dfe6da;transform:rotate(1.2deg);overflow:hidden}.world-screen img{height:307px;width:100%;object-fit:cover;object-position:center; border-radius:22px 3px 0 0}.screen-caption{display:flex;justify-content:space-between;gap:5px;align-items:center;font-size:9px;padding:13px 2px;color:#315146}.screen-caption>span:first-child{font-weight:700;font-size:12px}kbd{font-family:system-ui;font-size:11px;display:inline-block;min-width:21px;padding:1px 5px;border:1px solid #9faea2;border-bottom-width:2px;border-radius:4px;background:#f8fcf8;color:#264841;text-align:center}.floating-mission{position:absolute;left:-30px;bottom:16px;transform:rotate(-3deg);padding:18px 23px;background:var(--paper);border:1px solid var(--line);box-shadow:0 5px 16px #23362c0c;border-radius:10px}.floating-mission .eyebrow{font-size:10px;display:block;margin-bottom:9px}.floating-mission strong{font-size:17px;line-height:1.7}.key-sequence{display:flex;align-items:center;gap:12px;margin-top:12px}.key-sequence kbd{font-size:16px;min-width:32px}.motion-line{width:65px;height:6px;background:linear-gradient(to right,#b1c8b5 65%,#dbe9d9 65%);border-radius:8px}.hero-friends{position:absolute;right:10px;bottom:23px;display:flex;align-items:end}.hero-friends img{width:63px;height:75px;object-fit:contain;image-rendering:pixelated}.hero-friends span{font-size:10px;line-height:1.6;margin:0 0 22px 10px;transform:rotate(4deg)}.art-caption{position:absolute;bottom:-18px;right:0;font-size:9px;color:#718076}.marquee{display:flex;justify-content:center;align-items:center;gap:42px;padding:21px;background:#e6ebdf;border-top:1px solid #d6dfce;border-bottom:1px solid #d6dfce;font-size:14px;font-weight:600;letter-spacing:.07em;overflow:hidden;white-space:nowrap}.marquee i{color:#b89b55;font-style:normal;font-size:11px}.about-section{padding-top:96px;padding-bottom:92px;display:grid;grid-template-columns:.9fr 1.6fr;gap:50px}.section-heading h2{margin:0}.purpose-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.step-no{font:500 34px Georgia,serif;color:#a3b49d}.purpose-steps h3{font-size:16px;margin-top:19px;margin-bottom:15px;letter-spacing:0}.purpose-steps p{font-size:13px;line-height:2;color:#64716a}.feature-section{background:#e7ede2;padding:70px 0}.feature-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;align-items:center}.feature-image{position:relative;padding-bottom:36px}.feature-image>img{width:100%;border-radius:12px;box-shadow:0 12px 0 #cfdbcd}.feature-key{display:flex;gap:13px;align-items:center;position:absolute;right:-20px;bottom:2px;background:#fffdf5;padding:13px 20px;border-radius:7px;box-shadow:0 4px 20px #293c3210;font-size:11px;line-height:1.8}.feature-key kbd{font-size:22px;min-width:46px;padding:3px}.feature-copy p:not(.eyebrow){font-size:14px;color:#596e62}.feature-copy h2{font-size:30px}.cognitive-section,.sample-section{padding-top:95px;padding-bottom:85px}.section-heading.horizontal{display:flex;gap:70px;align-items:end;justify-content:space-between;margin-bottom:40px}.section-heading.horizontal>p{max-width:440px;color:#617267;font-size:14px;margin:0}.abilities{display:grid;grid-template-columns:repeat(5,1fr);margin:40px 0 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.abilities a{display:flex;flex-direction:column;padding:26px 20px 28px;border-right:1px solid var(--line);transition:background .2s}.abilities a:first-child{padding-left:0}.abilities a:last-child{border:0}.abilities a:hover{background:#e8ecdf;text-decoration:none}.abilities span{font:500 15px Georgia;color:#87a189;margin-bottom:20px}.abilities strong{font-size:20px;line-height:1.65;letter-spacing:.06em;min-height:70px}.abilities small{font-size:10px;color:#73806d;margin-top:13px}.small-note{font-size:11px;line-height:1.9;color:#758074}.cognitive-section>.small-note{max-width:940px;margin-bottom:24px}.sample-section{border-top:1px solid var(--line)}.demo-teasers{display:grid;grid-template-columns:repeat(4,1fr);gap:21px}.teaser{background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:transform .15s;text-decoration:none!important}.teaser:hover{transform:translateY(-5px)}.teaser-art{height:145px;background:#f1f2e8;overflow:hidden}.teaser-art img{width:100%;height:100%;object-fit:cover}.teaser-copy{padding:21px}.teaser .eyebrow{font-size:10px;margin-bottom:9px}.teaser h3{font-size:17px;margin:0 0 8px;letter-spacing:0}.teaser p:not(.eyebrow){font-size:12px;color:#6d7e72;line-height:1.9;margin-bottom:16px}.teaser-copy>span{font-size:12px;font-weight:700}.section-bottom{margin-top:35px;display:flex;justify-content:space-between;align-items:center;gap:20px}.section-bottom>span{font-size:12px;color:#758074}.report-section{background:#e1e8df;padding:85px 0}.report-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.report-layout>div>p:not(.eyebrow){font-size:14px;color:#5c7064}.parent-tip{display:flex;align-items:center;gap:26px;margin-top:35px}.parent-tip img{height:85px;width:75px}.parent-tip p{font-size:12px;line-height:1.9;margin:0}.report-paper{background:#fffef9;padding:30px 34px;border-radius:3px;box-shadow:10px 13px 0 #cbd6c9,0 6px 24px #29403212;transform:rotate(1deg)}.paper-top{display:flex;align-items:center;gap:10px;margin-bottom:23px;font-weight:700;font-size:14px}.paper-top img{width:27px}.paper-top small{display:block;font-size:9px;font-weight:400;color:#6a7d6c;margin-top:2px}.report-paper h3{font-size:11px;color:#77917b;margin-bottom:8px}.report-paper p{font-size:11px!important;line-height:1.9;margin-bottom:0;color:#395443!important}.report-paper strong{font-size:12px;display:block;margin-bottom:8px}.report-paper em{font-size:9px;font-style:normal;display:block;font-weight:400}.report-paper>small{font-size:9px;display:block;line-height:1.8;margin-bottom:8px}.paper-divider{height:1px;background:#dfe7dc;margin:18px 0}.report-paper .paper-foot{margin-top:15px;font-size:8px;color:#7c897a}.faq-section{padding-top:90px;padding-bottom:90px;max-width:950px}.faq-section h2{margin-bottom:35px}.faq-section details{border-top:1px solid var(--line);padding:20px 0}.faq-section details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:600;font-size:14px;padding-right:12px}.faq-section details p{margin:18px 0 0;font-size:13px;color:#67786c;line-height:2.05}.faq-section details a{text-decoration:underline}.cta-section{padding-top:50px;padding-bottom:70px;display:flex;align-items:center;justify-content:center;gap:70px}.cta-section>img{width:130px;height:145px;transform:rotate(-5deg)}.cta-section h2{font-size:32px}.cta-section p:not(.eyebrow){font-size:13px;color:#617568}.site-footer{max-width:1256px;margin:auto;border-top:1px solid var(--line);padding:40px 48px 25px;display:flex;gap:22px;align-items:center;flex-wrap:wrap}.site-footer>p{font-size:11px;margin:0}.site-footer>div{margin-left:auto;display:flex;gap:23px;font-size:11px}.site-footer>small{width:100%;font-size:9px;color:#899285;margin-top:8px}.catalog-main{padding-top:60px;padding-bottom:70px}.catalog-title{position:relative;margin-bottom:54px}.catalog-title h1{font-size:40px;margin-bottom:20px}.catalog-title>p:not(.eyebrow){font-size:14px;color:#687a6c}.catalog-count{font-size:12px;position:absolute;right:0;bottom:0;border-bottom:1px solid #9bac96;padding-bottom:8px}.catalog-count i{font-style:normal;margin:0 6px}.filter-bar{padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:18px}.filter-tabs{display:flex;gap:9px;flex-wrap:wrap}.filter-tabs button{border:1px solid #cbd6c4;background:transparent;padding:7px 17px;border-radius:30px;font-size:12px}.filter-tabs button[aria-pressed=true]{color:white;background:var(--green);border-color:var(--green)}.search-label{display:flex;align-items:center;gap:16px;font-size:11px}.search-label input{font-size:12px;border:1px solid #cbd6c4;background:var(--paper);padding:9px 13px;border-radius:5px;width:320px;max-width:100%;color:var(--ink)}#catalog-status{margin:16px 0 24px}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.catalog-card{border:1px solid var(--line);border-radius:8px;background:var(--paper);overflow:hidden;display:flex;flex-direction:column}.catalog-art{height:160px;background:#eaeee3;padding:0;width:100%;display:block;position:relative}.catalog-art img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.catalog-art:hover img{transform:scale(1.035)}.catalog-card-body{padding:23px;display:flex;flex-direction:column;flex:1}.catalog-card h3{font-size:18px;margin:4px 0 10px;letter-spacing:0}.catalog-card .eyebrow{font-family:inherit;font-size:10px;margin-bottom:3px;letter-spacing:.07em}.catalog-card p:not(.eyebrow){font-size:12px;color:#64756a;line-height:1.8;flex:1}.skill-tags{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px}.skill-tags span{background:#edf1e8;color:#586d5d;font-size:10px;padding:3px 9px;border-radius:3px}.card-links{display:flex;gap:14px;justify-content:space-between;align-items:center;border-top:1px solid #e0e7db;padding-top:15px}.card-links button{background:none;padding:0;font-size:12px;font-weight:700}.card-links a{font-size:11px;font-weight:700;color:#527c60}.available-badge{position:absolute;right:10px;bottom:10px;background:var(--paper);padding:3px 10px;border-radius:3px;font-size:10px;box-shadow:0 2px 8px #34543819}.world-heading{margin-top:70px;margin-bottom:30px}.world-heading h2{font-size:27px}.world-heading>p:last-child{color:#647b69;font-size:12px}.library-footer{text-align:center;margin-top:55px;padding:35px;background:#e7ecdf;border-radius:10px;font-size:14px}.game-dialog{border:0;padding:0;width:660px;max-width:calc(100% - 30px);max-height:90vh;max-height:90dvh;background:var(--paper);color:var(--ink);border-radius:14px;box-shadow:0 22px 100px #102a3533}.game-dialog::backdrop{background:#17312db3;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:12px;top:12px;border-radius:50%;width:38px;height:38px;font-size:25px;background:#fffef4;z-index:2;line-height:1;box-shadow:0 1px 8px #1b3a3122}.dialog-image{height:220px;width:100%;object-fit:cover;background:#e7ecdf}.dialog-body{padding:30px 35px}.dialog-body h2{font-size:27px;margin-bottom:20px}.dialog-body h3{font-size:12px;color:#628471;margin-top:24px;margin-bottom:8px}.dialog-body p{font-size:13px;line-height:2}.domain-box{font-size:11px!important;padding:15px;background:#edf1e8;border-left:3px solid #91ad94}.dialog-end{display:flex;gap:17px;align-items:center;margin-top:25px}.dialog-end p{margin:0;font-size:11px;color:#67826b}.try-main{padding-top:45px;padding-bottom:65px}.try-title{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:32px}.try-title h1{font-size:32px;margin:0 0 12px}.try-title p:not(.eyebrow){font-size:13px;color:#6b7c70;margin:0}.trial-label{font-size:11px;background:#e3ecd9;white-space:nowrap;padding:6px 14px;border-radius:30px}.trial-label i{margin-right:8px}.demo-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;border-bottom:1px solid var(--line);padding-bottom:26px;margin-bottom:28px}.demo-tab{display:flex;align-items:center;gap:13px;text-align:left;background:var(--paper);border:1px solid #d0dac9;border-radius:7px;padding:10px 13px}.demo-tab img{width:60px;height:44px;border-radius:4px;object-fit:cover}.demo-tab span{font-size:12px;font-weight:700;line-height:1.7}.demo-tab small{display:block;font-size:10px;font-weight:400;color:#778976}.demo-tab[aria-pressed=true]{background:#e5edde;border:2px solid #668d70;padding:9px 12px}.demo-intro{display:flex;justify-content:space-between;gap:25px;align-items:center}.demo-intro .eyebrow{font-family:inherit;font-size:10px;letter-spacing:.08em;margin-bottom:5px}.demo-intro h2{font-size:26px;margin:0 0 7px}.demo-intro p:not(.eyebrow){font-size:13px;margin:0;color:#627867}.level-picker{display:flex;background:#e8ecdf;padding:4px;border-radius:7px;gap:3px}.level-picker button{font-size:12px;padding:9px 14px;background:transparent;border-radius:5px;white-space:nowrap;line-height:1.6}.level-picker small{display:block;font:600 9px system-ui;color:#758775;letter-spacing:.1em;margin-bottom:4px}.level-picker button[aria-pressed=true]{background:var(--paper);box-shadow:0 1px 5px #233a221a;color:#31553b;font-weight:700}.level-note{font-size:11px;color:#7a8879;margin:15px 0}.stage-shell{border:1px solid #b6c7b9;border-radius:12px;overflow:hidden;background:#fffefa;box-shadow:0 10px 26px #24382108}.stage-toolbar{background:#203a3c;color:#eef5e9;display:flex;justify-content:space-between;padding:9px 17px;font-size:10px;letter-spacing:.08em;align-items:center}.stage-toolbar i{margin-right:7px;background:#a7d1aa}.stage-toolbar button{background:transparent;color:#eef5e9;font-size:11px;padding:3px}.stage-shell iframe{display:block;width:100%;height:750px;border:0;background:#fffaf0}.stage-shell[data-game=key-world-rhythm] iframe{height:790px}.stage-shell:fullscreen{width:100%;height:100%;border-radius:0;overflow:auto}.stage-shell:fullscreen iframe{height:calc(100vh - 50px)}.after-demo{display:grid;grid-template-columns:1.25fr 1fr;gap:55px;margin:32px 0;padding:27px 30px;background:#e9eee3;border-radius:9px}.after-demo .eyebrow{font-size:10px;margin-bottom:8px}.after-demo h2{font-size:20px;margin-bottom:9px}.after-demo p{font-size:13px;margin:0;color:#58715e}.observation{padding-left:30px;border-left:1px solid #c8d7c4;display:flex;flex-direction:column;justify-content:center}.observation>span{font-size:10px;color:#7f917b;margin-bottom:8px}.complete-card{background:#e6eeda;padding:25px;display:flex;align-items:center;gap:23px;border:1px solid #bed0b7;border-radius:8px;margin-bottom:27px}.complete-card[hidden]{display:none}.complete-check{font:25px system-ui;border-radius:50%;background:#3d6f4c;color:white;width:42px;height:42px;text-align:center;line-height:42px;flex-shrink:0}.complete-card h3{font-size:15px;margin-bottom:6px}.complete-card p{font-size:12px;margin:0}.complete-card .small-note{font-size:10px;margin-top:5px}.complete-card button{margin-left:auto;white-space:nowrap}.try-bottom{display:flex;gap:20px;justify-content:space-between;align-items:start}.try-bottom>p{font-size:11px;color:#778676}.try-help{padding-top:16px;border-top:1px solid var(--line)}.try-help summary{font-size:12px}.try-help p{font-size:12px;color:#6b7e6d;margin-top:15px;max-width:900px}.empty-state{padding:40px;border:1px dashed #afbfa5;border-radius:8px;grid-column:1/-1;font-size:14px;text-align:center}.empty-state button{display:block;margin:15px auto 0;background:#456d55;color:white;border-radius:5px;padding:8px 18px}
@media(min-width:1450px){.hero{gap:75px}.world-screen img{height:330px}}
@media(max-width:1050px){.site-header{padding:23px 28px;gap:24px}.site-header nav{gap:20px}.section-width{padding-left:30px;padding-right:30px}.hero{gap:32px;padding-top:40px}.hero h1{font-size:45px}.hero-lead{font-size:16px}.hero-description{font-size:12px}.world-screen img{height:270px}.screen-caption span:last-child{display:none}.floating-mission{left:-10px}.hero-friends img{width:50px}.hero-friends span{display:none}.about-section{grid-template-columns:1fr}.feature-layout{gap:45px}.report-layout{gap:55px}.teaser-copy{padding:17px}.teaser h3{font-size:15px}.demo-tab{gap:8px;padding:9px}.demo-tab img{width:42px;height:39px}.demo-tab[aria-pressed=true]{padding:8px}.level-picker button{padding:8px 10px}.site-footer{padding-left:30px;padding-right:30px}.site-footer>div{margin-left:0}.catalog-count{position:static}.hero-actions{gap:18px}.hero-actions .button{padding:12px 18px;gap:20px}.abilities strong{font-size:18px}}
@media(max-width:760px){body{font-size:14px}.prototype-label{font-size:9px}.site-header{padding:18px 20px;gap:13px}.site-header nav{display:none}.site-header>.button{margin-left:auto}.brand span{font-size:20px}.brand img{width:34px;height:34px}.section-width{padding-left:23px;padding-right:23px}.hero{grid-template-columns:1fr;gap:28px;padding-top:30px;padding-bottom:55px}.hero h1{font-size:44px}.hero-lead{font-size:16px}.hero-description{font-size:12px}.hero-world{max-width:510px;width:100%;margin:auto;padding-top:10px;padding-bottom:60px}.world-screen img{height:260px}.floating-mission{left:-5px;bottom:16px}.hero-friends{right:18px;bottom:23px}.hero-friends img{width:58px}.art-caption{font-size:8px}.marquee{justify-content:flex-start;gap:26px;padding:17px 22px;font-size:12px}.about-section{padding-top:55px;padding-bottom:40px;gap:26px}.purpose-steps{grid-template-columns:1fr;gap:0}.purpose-steps article{position:relative;border-bottom:1px solid var(--line);padding:0 0 15px 55px;margin-bottom:20px}.step-no{position:absolute;left:0;top:9px;font-size:26px}.purpose-steps h3{font-size:17px;margin:12px 0}.purpose-steps p{margin:0}.feature-section{padding:40px 0}.feature-layout{grid-template-columns:1fr;gap:25px}.feature-key{right:-5px}.feature-copy h2{font-size:27px}.cognitive-section,.sample-section{padding-top:55px;padding-bottom:50px}.section-heading.horizontal{display:block;margin-bottom:30px}.section-heading.horizontal>p{margin-top:22px;font-size:13px}.abilities{grid-template-columns:repeat(2,1fr);margin-top:30px}.abilities a{border-bottom:1px solid var(--line);padding:18px!important}.abilities a:nth-child(2n){border-right:0}.abilities a:last-child{grid-column:1/-1;border:0;flex-direction:row;gap:22px;align-items:center}.abilities span{margin-bottom:10px}.abilities strong{font-size:18px;min-height:0}.abilities small{margin-top:10px;font-size:9px}.demo-teasers{grid-template-columns:repeat(2,1fr);gap:12px}.teaser-art{height:110px}.teaser-copy{padding:15px}.teaser h3{font-size:14px}.teaser-copy p:not(.eyebrow){font-size:11px}.section-bottom{flex-direction:column;align-items:start}.section-bottom>span{font-size:11px}.report-section{padding:50px 0}.report-layout{grid-template-columns:1fr;gap:35px}.report-paper{padding:27px;max-width:450px;width:calc(100% - 9px);margin:auto}.faq-section{padding-top:55px;padding-bottom:30px}.faq-section summary{font-size:13px}.faq-section details p{font-size:12px}.cta-section{padding-top:40px;gap:23px;align-items:start;padding-bottom:45px}.cta-section>img{width:58px;height:78px;margin-top:30px}.cta-section h2{font-size:24px}.cta-section .hero-actions{flex-direction:column;align-items:start;gap:20px}.cta-section p:not(.eyebrow){font-size:12px}.site-footer{padding:30px 23px 20px;gap:18px}.site-footer>p{width:100%}.site-footer>div{flex-wrap:wrap;gap:16px;font-size:10px}.site-footer>small{font-size:8px}.catalog-main{padding-top:28px}.catalog-title h1{font-size:32px}.catalog-title{margin-bottom:30px}.catalog-title p:not(.eyebrow){font-size:12px}.filter-tabs{gap:7px}.filter-tabs button{font-size:11px;padding:6px 12px}.search-label{flex-direction:column;align-items:start;gap:7px}.search-label input{width:100%}.catalog-grid{grid-template-columns:repeat(2,1fr);gap:12px}.catalog-art{height:105px}.catalog-card-body{padding:15px}.catalog-card h3{font-size:14px}.catalog-card p:not(.eyebrow){font-size:11px}.skill-tags{gap:4px;margin-bottom:10px}.skill-tags span{font-size:9px;padding:2px 6px}.card-links{align-items:start;gap:10px;flex-direction:column}.card-links button{font-size:10px}.card-links a{font-size:10px}.available-badge{font-size:8px;padding:2px 5px;right:7px;bottom:7px}.dialog-body{padding:24px}.dialog-image{height:175px}.dialog-body h2{font-size:22px}.dialog-end{align-items:start;flex-direction:column}.try-main{padding-top:25px;padding-left:13px;padding-right:13px}.try-title{display:block}.try-title h1{font-size:26px}.try-title p:not(.eyebrow){font-size:12px}.trial-label{display:inline-block;margin-top:15px}.demo-tabs{grid-template-columns:repeat(2,1fr);gap:8px;padding-bottom:20px;margin-bottom:20px}.demo-tab img{width:48px;height:40px}.demo-tab span{font-size:11px}.demo-intro{display:block;padding:0 6px}.demo-intro h2{font-size:24px}.demo-intro p:not(.eyebrow){font-size:12px}.level-picker{margin-top:18px;width:100%}.level-picker button{flex:1;padding:9px 5px;font-size:11px}.level-note{font-size:10px;padding:0 6px}.stage-shell iframe{height:800px}.stage-shell[data-game=key-world-rhythm] iframe{height:850px}.after-demo{grid-template-columns:1fr;gap:19px;padding:23px;margin:22px 0}.after-demo h2{font-size:18px}.after-demo p{font-size:12px}.observation{border-left:0;border-top:1px solid #c8d7c4;padding:18px 0 0}.complete-card{flex-wrap:wrap;padding:20px;gap:12px}.complete-card>div{flex:1}.complete-card button{width:100%;margin:8px 0 0}.try-bottom{flex-direction:column;margin-bottom:23px;gap:5px;padding:0 6px}.try-bottom p{font-size:10px;margin-bottom:10px}.try-help{padding:15px 6px 0}.try-help summary{font-size:11px}.desktop{display:none}.empty-state{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* d02: clearly visible steps, shared across every preview game. */
.demo-intro{display:block}.step-panel{position:sticky;top:0;z-index:6;background:#f8f5ecf5;border:1px solid #b3c5ad;border-radius:9px;padding:12px 16px;margin-top:22px;box-shadow:0 3px 14px #28482c0a;backdrop-filter:blur(8px)}.step-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.step-heading strong{font-size:13px}.step-heading>span{font-size:11px;color:#758775}.step-panel .level-picker{display:grid;grid-template-columns:repeat(3,1fr);background:none;padding:0;gap:12px;margin:0}.step-panel .level-picker button{display:flex;align-items:center;justify-content:center;gap:13px;min-height:67px;border:1px solid #c2d1bc;background:#fffdf7;padding:10px 14px;text-align:left;font-size:14px;white-space:normal}.step-panel .level-picker button>b{display:grid;place-items:center;width:35px;height:35px;background:#e7eddf;border-radius:50%;font:700 21px system-ui;flex-shrink:0}.step-panel .level-picker button small{font-size:10px;margin-bottom:2px}.step-panel .level-picker button[aria-pressed=true]{border:2px solid #416e50;background:#e3eddc;padding:9px 13px;box-shadow:0 0 0 2px #cbdcc4}.step-panel .level-picker button[aria-pressed=true]>b{color:white;background:#416e50}.demo-teasers{grid-template-columns:repeat(4,1fr)}
@media(max-width:760px){.step-panel{padding:10px;margin-top:17px;border-radius:7px}.step-heading{margin-bottom:8px}.step-heading strong{font-size:11px}.step-heading>span{font-size:9px}.step-panel .level-picker{gap:6px}.step-panel .level-picker button{gap:7px;font-size:11px;padding:8px 6px;min-height:59px}.step-panel .level-picker button[aria-pressed=true]{padding:7px 5px}.step-panel .level-picker button>b{width:25px;height:25px;font-size:17px}.step-panel .level-picker small{font-size:8px}.demo-teasers{grid-template-columns:repeat(2,1fr)}}

/* d03: touch targets and an unchanged STEP panel that leaves room for the game. */
body{overflow-wrap:anywhere}.site-header a,.filter-tabs button,.card-links button,.dialog-close,.try-help summary,.stage-toolbar button{min-height:44px}.dialog-close{min-width:44px}.search-label input{font-size:16px}.stage-shell,.after-demo,.complete-card{min-width:0}.stage-shell iframe{display:block;width:100%;border:0}.complete-actions{display:flex;gap:8px;flex-wrap:wrap}.complete-actions a{font-size:12px;padding:10px}.step-panel{position:relative;top:auto}.try-title .device-note{max-width:100%}.room-story{padding:65px 0}.room-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.room-story img{width:100%;border-radius:20px}.room-story h2{font-size:30px}.room-story ol{padding-left:22px}.room-story li{margin:12px 0}.room-story .small-note{font-size:12px}.room-link{color:#41695d;font-weight:700}.stage-shell:fullscreen{overflow:auto;background:#fffaf0}.stage-shell:fullscreen iframe{height:calc(100dvh - 48px)!important}@media(max-width:760px){.room-story{padding:40px 0}.room-story-grid{grid-template-columns:1fr;gap:22px}.room-story h2{font-size:25px}.complete-actions{width:100%}.complete-actions a{width:100%;text-align:center;justify-content:center}.demo-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-tab{min-width:0;gap:8px;padding:10px}.demo-tab[aria-pressed=true]{padding:9px}.step-panel{position:relative}.dialog-close{width:44px;height:44px}}

/* Full program structure, separate from the three sample steps. */
.level-structure{background:#edf3e7;border:1px solid #d7e3d1;border-radius:13px;padding:17px 20px;margin:22px 0 25px}
.level-structure>span{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;color:#688273;margin-bottom:7px}
.level-structure>strong{display:block;font-size:19px;line-height:1.7;color:#304b3c}
.level-structure>p{font-size:13px;line-height:1.85;color:#536d5e;margin:8px 0 0}
@media(max-width:600px){.level-structure{padding:15px}.level-structure>strong{font-size:17px}}
