/* KidsApp — relative assets, system fonts, no external dependencies. */
:root{--navy:#101d35;--deep:#0c1629;--gold:#d7b776;--gold-light:#f0d99e;--ink:#17263c;--muted:#596679;--paper:#f7f8fb;--line:#dfe4ec;--white:#fff;--wrap:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-underline-offset:5px}img{max-width:100%;height:auto;display:block}button{font:inherit;cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5;overflow-wrap:anywhere}h2{font-size:clamp(1.6rem,2.4vw,2.2rem);letter-spacing:.02em}h3{font-size:1.15rem}p{margin-bottom:1.2rem}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #1b88c0;outline-offset:5px}.wrap{width:min(var(--wrap),calc(100% - 80px));margin-inline:auto}.section{padding-block:82px}.eyebrow{font-family:Georgia,"Times New Roman",serif;letter-spacing:.18em;font-size:.8rem;font-weight:bold;line-height:1.6;color:#8b6c30;margin-bottom:14px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:10px 18px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:96px}.brand{display:block;flex:0 0 224px}.brand img{width:224px;height:auto;aspect-ratio:2172/724;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:28px}.site-header nav a{font-size:.9rem;font-weight:600;text-decoration:none;position:relative;padding:16px 0;white-space:nowrap}.site-header nav a:hover{color:#8b6c30}.site-header nav a[aria-current=page]::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--gold)}.menu-toggle{display:none}
.hero{color:#fff;background:radial-gradient(ellipse at 95% 20%,#244772 0%,transparent 55%),var(--navy);position:relative;border-bottom:4px solid var(--gold)}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;min-height:616px;padding-block:64px}.hero .eyebrow{color:var(--gold-light)}.hero h1{font-family:"Hiragino Mincho ProN","Yu Mincho",Georgia,serif;font-weight:600;font-size:clamp(2.1rem,3.7vw,3.35rem);line-height:1.65;letter-spacing:.04em;margin-bottom:22px}.hero h1 span{color:var(--gold-light)}.hero-description{color:#d3dce9;font-size:1rem;line-height:2.1;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 28px;line-height:1.7;text-decoration:none;font-size:.94rem;font-weight:600;border:1px solid transparent;border-radius:3px;box-shadow:0 4px 0 rgba(0,0,0,.13);transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.gold-button{color:#18263b;background:var(--gold-light);border-color:#e5c880}.gold-button:hover{background:#ffebb9}.navy-button{color:#fff;background:var(--navy)}.navy-button:hover{background:#284164}.hero-bottom{display:flex;flex-wrap:wrap;gap:16px;margin-top:38px;padding-top:22px;border-top:1px solid #526077;font-size:.75rem;letter-spacing:.08em;color:#a8b9cf}
.hero-feature{display:grid;grid-template-columns:1fr 178px;gap:18px;position:relative;padding:32px 28px;border:1px solid #a68c5e;outline:1px solid #475777;outline-offset:6px;background:linear-gradient(135deg,#192c47dd,#0e1b30);box-shadow:0 25px 55px #060d1e66}.hero-feature:before,.hero-feature:after{content:"◆";color:var(--gold-light);font-size:15px;position:absolute;top:-17px;background:#172b47;padding-inline:8px}.hero-feature:before{left:16px}.hero-feature:after{right:16px}.feature-copy{align-self:center}.feature-copy .eyebrow{font-size:.72rem;letter-spacing:.12em;margin-bottom:16px}.feature-icon{border-radius:14px;margin-bottom:15px;border:1px solid #577095}.hero-feature h2{font-size:1.45rem;line-height:1.6;margin-bottom:12px;letter-spacing:.02em}.hero-feature p:not(.eyebrow){font-size:.875rem;line-height:1.9;color:#d3dce9}.game-screen{width:178px;align-self:center;border-radius:9px;border:1px solid #647493;box-shadow:0 16px 25px #0006;aspect-ratio:600/1300;object-fit:cover}.feature-number{position:absolute;right:20px;bottom:-21px;font:italic 1.7rem Georgia,serif;background:#132640;color:var(--gold-light);padding-inline:12px}.text-link{display:inline-block;font-size:.9rem;font-weight:600;color:var(--gold-light);text-decoration:none;border-bottom:1px solid #ad9566;padding-bottom:3px}.text-link:hover{border-bottom-width:2px}.dark-link{color:var(--ink);border-color:#a68c5e}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}.section-heading h2{margin-bottom:0}.section-heading .text-link{flex-shrink:0}.section-note{font-size:.875rem;color:var(--muted)}
.app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.app-card{position:relative;background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);padding:28px;display:flex;flex-direction:column;scroll-margin-top:120px}.card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px}.card-top img{width:88px;height:88px;object-fit:cover;border-radius:18px;border:1px solid #e1e4ea}.tag{font-size:.75rem;color:#735720;line-height:1.7;border:1px solid #e2d4b3;background:#faf7ef;padding:4px 10px;border-radius:2px}.app-card h3{margin-bottom:14px;font-size:1.13rem}.app-card p{font-size:.9rem;color:var(--muted);line-height:1.9;margin-bottom:24px}.store-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.store-link{background:var(--navy);color:#fff;text-decoration:none;font-family:-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;padding:10px 13px;border-radius:3px;font-size:.85rem;font-weight:600}.store-link:hover{background:#345276}.fineprint{font-size:.85rem;line-height:1.9;color:var(--muted)}.about-section{background:#edf1f7;border-block:1px solid var(--line);padding:72px 0}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.about-grid h2{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:2rem;line-height:1.8}.about-grid p{color:var(--muted)}.developer-info{margin:30px 0 0;border-top:1px solid #cbd4e1;font-size:.9rem}.developer-info div{display:grid;grid-template-columns:126px 1fr;gap:20px;border-bottom:1px solid #cbd4e1;padding-block:16px}.developer-info dt{font-weight:600}.developer-info dd{margin:0;overflow-wrap:anywhere}.support-section{display:flex;justify-content:space-between;align-items:center;gap:36px}.support-section h2{font-size:1.6rem;margin-bottom:12px}.support-section p{color:var(--muted);margin-bottom:0}.support-section .button{flex-shrink:0}.site-footer{background:var(--deep);color:#c4cedd;padding-block:44px}.footer-inner{display:grid;grid-template-columns:1fr auto;gap:12px 50px;align-items:center}.footer-brand{font-family:Georgia,serif;font-size:1.5rem;text-decoration:none;font-weight:bold;color:#fff}.gold{color:var(--gold)}.site-footer p{font-size:.85rem;margin-bottom:0}.site-footer nav{display:flex;flex-wrap:wrap;gap:22px;font-size:.85rem}.site-footer nav a{text-decoration:none}.site-footer nav a:hover{text-decoration:underline}.site-footer small{grid-column:1/-1;font-size:.75rem;color:#a3afc2;margin-top:20px}
.page-intro{color:#fff;background:linear-gradient(110deg,var(--navy),#223a59);padding:55px 0 58px;border-bottom:3px solid var(--gold)}.page-intro .eyebrow{color:var(--gold-light)}.page-intro h1{font-size:clamp(2rem,3vw,2.65rem);letter-spacing:.04em;margin-bottom:15px}.page-intro p:not(.eyebrow){color:#d3dce9;margin-bottom:0}.learning-section{background:#edf1f7;padding:70px 0;border-block:1px solid var(--line)}.learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.learning-grid h2{line-height:1.7}.learning-grid p{color:var(--muted)}.learning-list{list-style:none;padding:0;margin:0}.learning-list li{display:flex;align-items:start;gap:25px;padding:22px 0;border-bottom:1px solid #ccd5e2}.learning-list li:first-child{padding-top:0}.learning-list span{font:italic 1.55rem Georgia,serif;color:#9b7b3e}.learning-list h3{margin-bottom:8px}.learning-list p{margin:0;font-size:.9rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.contact-panel{padding:38px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold)}.contact-panel h2{font-size:1.5rem}.email-address{font-family:Georgia,serif;font-size:clamp(1.1rem,2.1vw,1.6rem);overflow-wrap:anywhere;display:inline-block;margin-bottom:22px;color:var(--ink)}.contact-panel p{font-size:.9rem;color:var(--muted)}.copy-email{display:block;padding:0;background:none;border:0;border-bottom:1px solid #a68c5e;margin-top:25px;color:var(--ink);font-size:.875rem}.copy-result{margin:8px 0;min-height:1.8em}.contact-guide h2{font-size:1.4rem}.contact-guide p{color:var(--muted);font-size:.95rem}.numbered-list{padding-left:1.6rem;margin:24px 0 28px}.numbered-list li{padding:9px 0 9px 8px}.numbered-list li::marker{color:#8b6c30;font-weight:bold}.contact-policy{padding-top:28px;margin-top:28px;border-top:1px solid var(--line)}.contact-policy h3{margin-bottom:10px}.policy-date{font-size:.85rem;margin-top:22px}.policy-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:70px;padding-block:68px 90px}.policy-toc{align-self:start;position:sticky;top:132px;border-top:2px solid var(--gold);padding-top:22px}.policy-toc a{display:block;font-size:.875rem;text-decoration:none;padding:10px 0;border-bottom:1px solid var(--line)}.policy-toc a:hover{color:#8b6c30}.policy-content section{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid var(--line)}.policy-content h2{font-size:1.35rem;display:flex;gap:18px;align-items:baseline}.policy-content h2 span{font:italic 1.1rem Georgia,serif;color:#8b6c30;flex-shrink:0}.policy-content p{font-size:.95rem;color:#455369;line-height:2}.policy-contact{background:#edf1f7;border-left:3px solid var(--gold);padding:26px}.policy-contact p{font-weight:600;color:var(--ink)}
@media(min-width:1000px){.app-grid.four-apps{grid-template-columns:repeat(2,minmax(0,1fr))}.four-apps .app-card{padding:30px}.four-apps .card-top{justify-content:start;gap:24px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.hero-grid{gap:36px}.hero-feature{grid-template-columns:1fr 148px;padding:24px 20px;gap:12px}.game-screen{width:148px}.site-header nav{gap:18px}.brand,.brand img{width:195px;flex-basis:195px}.about-grid{gap:50px}.app-card{padding:22px}.card-top{flex-wrap:wrap}.contact-grid{gap:36px}.policy-layout{gap:40px}}
@media(max-width:820px){.hero-grid{grid-template-columns:1fr;gap:42px;padding:50px 0 58px;min-height:0}.hero h1{font-size:2.65rem}.hero-feature{max-width:550px;grid-template-columns:1fr 178px;padding:28px;justify-self:stretch}.game-screen{width:178px}.hero-bottom{margin-top:28px}.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-grid .app-card:last-child:nth-child(odd){grid-column:1/-1}.about-grid,.learning-grid{grid-template-columns:1fr;gap:26px}.about-grid h2 br{display:none}.section{padding-block:58px}.about-section,.learning-section{padding-block:54px}.support-section{align-items:start;flex-direction:column;gap:24px}.footer-inner{grid-template-columns:1fr}.site-footer nav{margin-top:15px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-panel{max-width:600px}.policy-layout{grid-template-columns:1fr;gap:35px;padding-block:45px 60px}.policy-toc{position:static}.site-header nav{gap:14px}.site-header nav a{font-size:.8rem}.brand,.brand img{width:170px;flex-basis:170px}.header-inner{gap:20px;min-height:82px}}
@media(max-width:620px){.wrap{width:calc(100% - 36px)}html{scroll-padding-top:96px}.header-inner{flex-wrap:wrap;gap:0;min-height:80px;padding-block:10px}.brand,.brand img{width:175px;flex-basis:175px}.site-header nav{display:flex;flex-wrap:wrap;flex-basis:100%;gap:8px 18px;padding:8px 0 3px}.site-header nav a{font-size:.875rem;padding:7px 0}.js .menu-toggle{display:block;padding:7px 13px;border:1px solid #c8d0db;color:var(--ink);background:#fff;font-size:.875rem;margin-left:auto;border-radius:3px}.js .site-header nav{display:none}.js .site-header nav.is-open{display:flex}.hero h1{font-size:clamp(1.95rem,7vw,2.65rem);letter-spacing:.015em}.hero-grid{padding-top:40px;gap:38px}.hero-description{font-size:.95rem}.desktop-break{display:none}.hero-feature{grid-template-columns:minmax(0,1fr) 132px;padding:23px 18px;gap:12px}.game-screen{width:132px}.hero-feature h2{font-size:1.22rem}.feature-copy .eyebrow{font-size:.75rem;letter-spacing:.04em}.feature-icon{width:60px;height:60px}.hero-feature p:not(.eyebrow){font-size:.875rem}.hero-feature .text-link{font-size:.875rem}.hero-bottom{font-size:.75rem;gap:10px 14px}.section{padding-block:45px}.section-heading{align-items:start;flex-direction:column;gap:18px;margin-bottom:24px}.app-grid{grid-template-columns:1fr;gap:18px}.app-grid .app-card:last-child:nth-child(odd){grid-column:auto}.app-card{padding:24px}.card-top{justify-content:start;gap:25px;margin-bottom:20px}.about-grid h2{font-size:1.65rem}.developer-info div{grid-template-columns:1fr;gap:4px}.developer-info dt{font-size:.85rem;color:var(--muted)}.support-section h2{font-size:1.35rem}.page-intro{padding:40px 0}.page-intro h1{font-size:1.85rem}.page-intro p{font-size:.95rem}.contact-panel{padding:25px}.contact-panel h2{font-size:1.3rem}.email-address{font-size:1.35rem}.policy-content h2{font-size:1.2rem;gap:13px}.footer-inner{gap:10px}.site-footer nav{gap:12px 20px}.eyebrow{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Featured app carousel */
.hero-feature{display:block;padding:0;min-width:0}.feature-viewport{overflow:hidden;touch-action:pan-y}.feature-track{display:flex;transition:transform .55s ease}.feature-slide{display:grid;grid-template-columns:minmax(0,1fr) 178px;gap:18px;padding:32px 28px;flex:0 0 100%;min-width:0;align-items:center}.feature-art{width:178px;aspect-ratio:600/1300;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:24px;background:radial-gradient(circle,#385677,#12243e 70%);border:1px solid #647493;border-radius:9px;padding:14px;box-shadow:0 16px 25px #0006}.feature-art img{width:100%;border-radius:22%;box-shadow:0 12px 24px #0005}.feature-art span{color:var(--gold-light);font-size:.85rem;letter-spacing:.08em}.slider-controls{display:flex;align-items:center;justify-content:center;gap:14px;padding:0 20px 20px}.slider-arrow,.slider-pause{background:transparent;color:var(--gold-light);border:1px solid #a68c5e;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;padding:0;line-height:1}.slider-arrow:hover,.slider-pause:hover{background:#38506c}.slider-dots{display:flex;gap:12px}.slider-dot{padding:0;width:12px;height:12px;border:1px solid var(--gold-light);border-radius:50%;background:transparent}.slider-dot[aria-pressed=true]{background:var(--gold-light)}.feature-number{font-size:1.3rem}.slider-pause{font-size:.8rem}
@media(max-width:1100px) and (min-width:821px){.feature-slide{grid-template-columns:minmax(0,1fr) 148px;padding:24px 20px;gap:12px}.feature-art{width:148px}}
@media(max-width:820px){.hero-feature{padding:0}.feature-slide{padding:28px}}
@media(max-width:620px){.hero-feature{padding:0}.feature-slide{grid-template-columns:minmax(0,1fr) 132px;padding:23px 18px;gap:12px}.feature-art{width:132px;padding:10px}.feature-art span{font-size:.75rem}.slider-controls{gap:12px;padding-bottom:24px}}
@media(prefers-reduced-motion:reduce){.feature-track{transition:none}}

.feature-slide .game-screen{object-fit:contain;background:#14243b}
