@font-face{font-family:Jakarta;src:url('assets/jakarta.ttf') format('truetype');font-weight:200 800;font-display:swap;unicode-range:U+0000-024F,U+1E00-1EFF}
/* Web interpretation of Apple's foundations. A system-native control layer,
   brand display type, and the existing Unfold mascot. No imitation native tab bar.
   Layer scale: header 10, language menu 20, skip link 30. */
:root{color-scheme:light dark;--canvas:#f5f5f7;--surface:#fbfbfd;--ink:#1d1d1f;--muted:#5b5b65;--accent:#6652b8;--on-accent:#fff;--tint:#efedf8;--line:#d3d1dc;--focus:#6652b8;--art:#e9f1eb;--shadow:rgba(45,35,82,.08);font-size:106.25%}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--canvas);color:var(--ink);font:400 1rem/1.65 -apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:650;line-height:1.15;text-wrap:balance}h1,h2{font-family:Jakarta,-apple-system,system-ui,sans-serif;letter-spacing:-.045em}p{text-wrap:pretty}h1{font-size:clamp(2.6rem,5.2vw,4.7rem)}h2{font-size:clamp(1.9rem,3.5vw,3rem)}h3{font-size:1.35rem;letter-spacing:-.025em}a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:5px}a:hover{color:var(--accent)}.wrap{width:min(100% - 5rem,1180px);margin-inline:auto}.section{padding-block:5rem}.skip-link{position:absolute;inset-block-start:-100px;inset-inline-start:20px;padding:12px 20px;background:var(--accent);color:var(--on-accent);z-index:30}.skip-link:focus{inset-block-start:12px}.site-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;padding-block:1rem;border-bottom:1px solid var(--line);position:relative;z-index:10}.wordmark{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:750 1.8rem/1 Jakarta,system-ui,sans-serif;letter-spacing:-.08em;color:var(--ink)}.wordmark-petal{display:block;width:9px;height:17px;border-radius:100% 0 100% 0;background:var(--accent);transform:rotate(20deg);margin-top:-18px}.site-header nav{display:flex;justify-content:center;align-items:center;gap:1.5rem;flex-wrap:wrap}.site-header nav a{font-size:.82rem;font-weight:500;min-height:44px;display:inline-flex;align-items:center}.site-header nav a[aria-current]{color:var(--accent);text-decoration:underline;text-underline-offset:6px}.language-menu{position:relative;font-size:.82rem;justify-self:end}.language-menu summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;cursor:pointer;white-space:nowrap}.language-menu summary::-webkit-details-marker{display:none}.language-menu summary span{font-size:1rem}.language-options{position:absolute;inset-block-start:calc(100% + 10px);inset-inline-end:0;min-width:260px;display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 35px var(--shadow);z-index:20}.language-options a{display:flex;align-items:center;padding:10px;min-height:44px;border-radius:10px;text-align:start}.language-options a:hover,.language-options a[aria-current]{background:var(--tint);color:var(--accent)}.language-options a[aria-current]{text-decoration:underline;text-underline-offset:3px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:50px;padding:13px 22px;background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);border-radius:999px;font-size:.94rem;font-weight:600;line-height:1.4;max-width:100%;text-align:center;transition:transform .18s,box-shadow .18s}.button:hover{color:var(--on-accent);transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow)}.button:active{transform:scale(.98)}.button-secondary{background:var(--surface);color:var(--accent);border-color:var(--line)}.button-secondary:hover{color:var(--accent)}.forward{display:inline-block}.hero{display:grid;grid-template-columns:1.16fr .84fr;align-items:center;gap:2rem;padding-block:3.4rem 4.5rem;min-height:620px}.hero-copy{max-width:680px}.launch-note{display:inline-block;font-size:.82rem;line-height:1.5;font-weight:600;color:var(--muted);margin-bottom:1.2rem}.hero-description{max-width:520px;color:var(--muted);font-size:1.15rem;line-height:1.65;margin-block:1.5rem 1.8rem}.hero-figure{position:relative;display:grid;place-items:center;min-width:0}.hero-figure::before{content:'';position:absolute;inset:15% 4% 4%;background:var(--tint);border-radius:45% 45% 40% 40%;z-index:-1}.mascot{display:block;flex:none;background-image:url('assets/mascot-poses-q90.1c2864ccb9a1.webp');background-repeat:no-repeat;max-width:100%;width:380px;aspect-ratio:550/656;background-size:342% 127.439%;background-position:4.884% 54.444%}.mascot-think{width:320px;aspect-ratio:489/656;background-size:384.663% 127.439%;background-position:50.575% 54.444%}.mascot-celebrate{width:350px;aspect-ratio:636/656;background-size:295.755% 127.439%;background-position:97.51% 54.444%}.section-heading{max-width:710px;margin-bottom:2.4rem}.section-heading p{margin-top:1rem;color:var(--muted);max-width:570px}.feature-grid{display:grid;grid-template-columns:1.07fr 1fr;gap:20px}.feature{border-radius:28px;overflow:hidden;background:var(--surface)}.feature-copy{padding:2rem}.feature-copy p{color:var(--muted);margin-top:1rem;font-size:.94rem;line-height:1.7}.feature-games{grid-row:span 2;display:flex;flex-direction:column;justify-content:space-between;background:var(--art)}.feature-games h3{font-size:1.9rem}.feature-games .feature-copy{padding:2.4rem}.feature-games img{width:100%;aspect-ratio:1.25;object-fit:cover}.feature-puzzles,.feature-math{display:grid;grid-template-columns:1.35fr 1fr;gap:10px;align-items:center}.feature-puzzles img{aspect-ratio:1;object-fit:cover;width:100%;border-radius:18px;margin-inline-end:16px}.feature-math{background:var(--tint)}.fraction-art{text-align:center;padding-inline-end:20px}.fraction-disc{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:1;max-width:165px;margin-inline:auto;border-radius:50%;overflow:hidden;border:5px solid var(--surface);direction:ltr}.fraction-disc span{display:grid;place-items:center;background:#176b72;color:#fff;font-size:1.9rem}.fraction-disc span+span{background:#775ccc;border-left:2px solid var(--surface)}.fraction-art p{font-size:.72rem;color:var(--muted);margin-top:12px;line-height:1.5}.quest-row{display:flex;align-items:center;gap:24px;margin-top:1.8rem;padding-block:1.2rem}.quest-row img{width:120px;height:85px;object-fit:cover;border-radius:16px}.quest-row h3{font-size:1.1rem}.quest-row p{font-size:.94rem;max-width:650px;color:var(--muted);margin-top:6px}.companion-section{background:var(--surface)}.companion-layout{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:5rem}.companion-figure{display:grid;place-items:center}.companion-copy{max-width:560px}.companion-copy>p{margin-top:1.3rem;color:var(--muted)}.companion-copy .button{margin-top:1.8rem}.companion-copy .greeting{min-height:3.4rem;font-size:.94rem;color:var(--accent)}.demo-section{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.demo-copy p{color:var(--muted);margin-top:1.3rem;max-width:420px}.demo-copy .subtle{font-size:.88rem}.puzzle-panel{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:1.6rem}.puzzle-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.puzzle-heading h3{font-size:1rem;line-height:1.4}.reset{background:transparent;border:1px solid var(--line);border-radius:999px;min-height:44px;padding:8px 15px;color:var(--ink);font-size:.82rem}.reset:hover{background:var(--tint)}.puzzle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px;direction:ltr}.tile{aspect-ratio:1;min-height:44px;background:var(--canvas);border:2px solid var(--line);border-radius:18px;padding:12px;display:grid;place-items:center;transition:transform .16s,border-color .16s,background .16s}.tile:hover{transform:translateY(-2px);border-color:var(--accent)}.tile:active{transform:scale(.97)}.shape-frame{display:grid;place-items:center;width:68%;aspect-ratio:1;background:var(--accent)}.shape{width:44%;aspect-ratio:1;background:var(--surface)}.square{border-radius:4px}.circle{border-radius:50%}.tile.correct{background:var(--tint);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.tile.incorrect{border-color:var(--muted);border-style:dashed}.puzzle-feedback{font-size:.88rem;color:var(--muted);margin-top:1.3rem;min-height:4.2rem;line-height:1.6}.puzzle-feedback.success{color:var(--accent);font-weight:600}.quick-help{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding-top:1rem}.question{border-bottom:1px solid var(--line)}.question summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:70px;padding-block:18px;list-style:none;cursor:pointer;font-weight:600;font-size:.94rem;line-height:1.5}.question summary::-webkit-details-marker{display:none}.question summary span{font-size:1.5rem;flex:none;font-weight:400}.question[open] summary span{transform:rotate(45deg)}.question p{color:var(--muted);padding-bottom:1.4rem;font-size:.94rem}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--accent);min-height:44px;margin-top:1.5rem;text-decoration:underline;text-underline-offset:5px;font-weight:600;font-size:.94rem}.closing{display:flex;flex-direction:column;align-items:center;gap:20px;padding:4.8rem 1.8rem;background:var(--tint);border-radius:28px;text-align:center;margin-bottom:4rem}.closing p{color:var(--muted)}.closing .launch-note{margin-block:10px 0}.site-footer{border-top:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-block:1.4rem 2rem;font-size:.82rem;color:var(--muted)}.site-footer p{padding-block:12px}.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 22px}.site-footer a{min-height:44px;display:inline-flex;align-items:center}.support-main{max-width:840px;padding-block:4rem 5rem}.page-intro h1{font-size:clamp(2.5rem,5vw,4rem);max-width:800px}.page-intro>p:not(.launch-note){color:var(--muted);font-size:1.1rem;margin-top:1.4rem;max-width:640px}.page-intro .button{margin-top:1.8rem}.contact-address{display:block;width:fit-content;max-width:100%;margin-top:1rem;padding-block:8px;min-height:44px;color:var(--accent);font-size:.94rem;overflow-wrap:anywhere}.contact-note{padding:1.8rem;background:var(--surface);border:1px solid var(--line);border-radius:24px;margin-block:2.7rem}.contact-note h2,.data-request h2{font-size:1.5rem;letter-spacing:-.025em}.contact-note p,.data-request p{color:var(--muted);margin-top:.8rem}.support-questions{margin-top:2rem}.data-request{margin-top:3rem}.email-inline{color:var(--accent);text-decoration:underline;text-underline-offset:4px;unicode-bidi:isolate;overflow-wrap:anywhere}.legal-main{max-width:800px;padding-block:4rem}.legal-main h1{font-size:clamp(2.4rem,5vw,3.8rem)}.updated{font-size:.88rem;color:var(--muted);margin-block:1rem 2.5rem}.legal-lead{font-size:1.08rem}.legal-main section{margin-top:2.5rem}.legal-main h2{font-size:1.5rem;letter-spacing:-.025em;line-height:1.35}.legal-main section p{margin-top:1rem;color:var(--muted)}.service-links{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;margin:1rem 0 0;padding:0}.service-links a{display:inline-flex;min-height:44px;align-items:center;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
[dir=rtl] .forward{transform:scaleX(-1)}:lang(ar){letter-spacing:normal}:lang(ar) h1,:lang(ar) h2{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;letter-spacing:0;line-height:1.4}:lang(hi) h1,:lang(hi) h2,:lang(ja) h1,:lang(ja) h2,:lang(zh) h1,:lang(zh) h2{font-family:system-ui,-apple-system,sans-serif;letter-spacing:0;line-height:1.3}:lang(ar) .hero-description,:lang(hi) .hero-description{line-height:1.85}
@media(prefers-color-scheme:dark){:root{--canvas:#17171b;--surface:#222228;--ink:#f5f5f7;--muted:#c0bdc9;--accent:#b9adf3;--on-accent:#242031;--tint:#302b43;--line:#686371;--focus:#c7baf9;--art:#28362d;--shadow:rgba(0,0,0,.22)}}
@media(prefers-contrast:more){:root{--muted:#3d3d47;--line:#77717f}a:not(.button){text-decoration:underline;text-underline-offset:4px}.tile{border-color:var(--ink)}}
@media(prefers-color-scheme:dark) and (prefers-contrast:more){:root{--muted:#e5e1ed;--line:#a19ba9}}
@media(prefers-reduced-motion:no-preference){.hero-copy{animation:arrival .5s both}.hero-figure{animation:arrival .6s .08s both}.mascot-greet{animation:greet .5s ease-out}@keyframes arrival{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes greet{0%,100%{transform:translateY(0)}45%{transform:translateY(-8px)}}}
@media(max-width:63.9375em){.wrap{width:calc(100% - 3rem)}.hero{min-height:540px;gap:1rem}.hero h1{font-size:clamp(2.5rem,5vw,3.8rem)}.hero-description{font-size:1.05rem}.hero-figure .mascot{width:300px}.companion-layout,.demo-section,.quick-help{gap:3rem}.feature-copy,.feature-games .feature-copy{padding:1.5rem}.feature-puzzles,.feature-math{grid-template-columns:1.4fr 1fr}.site-header{gap:1rem}.site-header nav{gap:1rem}}
@media(max-width:47.9375em){.wrap{width:calc(100% - 2.4rem)}.site-header{grid-template-columns:1fr auto;gap:.4rem 1rem;padding-block:.8rem .4rem}.site-header nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:.3rem 1.4rem}.site-header nav a{font-size:.82rem}.language-menu{grid-column:2;grid-row:1}.wordmark{font-size:1.6rem}.language-menu summary{max-width:170px;white-space:normal}.language-options{min-width:260px}.hero{grid-template-columns:1fr;padding-block:2.6rem 2.8rem;gap:1.8rem;min-height:0}.hero-copy{max-width:590px}.hero h1{font-size:clamp(2.45rem,8vw,3.7rem)}.hero-description{font-size:1.05rem;max-width:470px;margin-block:1.3rem 1.5rem}.hero-figure .mascot{width:260px}.hero-figure::before{inset:15% 18% 4%}.section{padding-block:3.5rem}.feature-grid{grid-template-columns:1fr;gap:16px}.feature-games{grid-row:auto}.feature-games .feature-copy{padding:1.8rem}.feature-games img{aspect-ratio:1.9}.feature-puzzles,.feature-math{grid-template-columns:1.35fr 1fr;min-height:250px}.feature-copy{padding:1.5rem}.feature-copy p{font-size:.88rem}.feature h3{font-size:1.4rem}.feature-games h3{font-size:1.8rem}.fraction-disc span{font-size:1.6rem}.fraction-art{padding-inline-end:16px}.quest-row{gap:18px}.quest-row img{width:85px;height:70px}.quest-row p{font-size:.88rem}.companion-layout{grid-template-columns:1fr;gap:2rem}.companion-figure .mascot{width:190px}.companion-copy{max-width:570px}.companion-copy .greeting{min-height:3rem}.demo-section,.quick-help{grid-template-columns:1fr;gap:2rem}.puzzle-panel{padding:1.2rem}.puzzle-grid{gap:10px}.puzzle-feedback{min-height:4.8rem}.quick-help{padding-top:0}.closing{padding:3rem 1.4rem;margin-bottom:2.5rem}.closing h2{font-size:2.1rem}.site-footer{flex-direction:column;gap:8px;padding-block:1rem 1.5rem}.site-footer nav{gap:8px 20px}.support-main,.legal-main{padding-block:2.6rem 3.5rem}.page-intro h1{font-size:2.6rem}.contact-note{padding:1.4rem}.service-links{gap:8px 20px}}
@media(max-width:22.4375em){.wrap{width:calc(100% - 2rem)}.hero h1{font-size:2.2rem}.feature-puzzles,.feature-math{grid-template-columns:1fr}.feature-puzzles img{width:150px;justify-self:center;margin-bottom:20px;margin-inline-end:0}.fraction-art{width:160px;justify-self:center;padding:0;margin-bottom:24px}.language-menu summary{font-size:.75rem;padding:8px 10px}.site-header nav{gap:4px 1rem}.language-options{min-width:250px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){.shape-frame{background:ButtonText}.shape{background:ButtonFace}.tile.correct{border:4px double Highlight}.tile.incorrect{border:3px dashed CanvasText}.button{border:2px solid ButtonText}.wordmark-petal{background:LinkText}.hero-figure::before{display:none}}
/* Keep disclosures predictable and let larger text reflow without clipping. */
.language-menu:not([open]) .language-options{display:none}.hero-figure{isolation:isolate}.site-header{grid-template-columns:auto minmax(0,1fr) auto}
@media(max-width:47.9375em){.site-header{display:flex;flex-wrap:wrap}.wordmark{flex:1 1 90px}.language-menu{flex:0 1 auto;margin-inline-start:auto}.site-header nav{flex:1 0 100%;order:3}.hero-actions{flex-wrap:wrap}}

/* Respect the browser font preference as well as zoom and long localized words. */
body{overflow-wrap:break-word;hyphens:auto}.site-header nav a,.site-footer a{min-width:44px}.language-options{width:min(22rem,calc(100vw - 2rem));min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));overflow-wrap:anywhere}.feature-puzzles,.feature-math{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
@media(max-width:22.4375em){.feature-puzzles,.feature-math{grid-template-columns:1fr}}
