/* Learning On My Own — local fonts, responsive layouts, native disclosures, no scripts. */
@font-face{font-family:Nunito;src:url(fonts/nunito-regular.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Nunito;src:url(fonts/nunito-bold.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Nunito;src:url(fonts/nunito-extrabold.woff2) format('woff2');font-weight:800 900;font-display:swap}
:root{--bg:#faf8f2;--bg-2:#f1eee4;--card:#fffefb;--ink:#183c32;--muted:#5b6860;--line:#dddcd1;--brand:#24684c;--brand-bright:#12b886;--coral:#de694d;--gold:#e1af4e;--accent:var(--brand);--accent-soft:#e6f0e6;--accent-ink:#fff;--focus:#184a39;--radius:20px;--shadow:0 16px 40px -24px #20382c55;color-scheme:light dark}
.theme-math-magician{--accent:#176548;--accent-soft:#e4f4e9}
.theme-solvetrail{--accent:#0f6e60;--accent-soft:#dcefea}
.theme-quantroute{--accent:#5b45c9;--accent-soft:#e9e5f9}
.theme-french{--accent:#2e2a63;--accent-soft:#ece7f6}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;font:400 1.0625rem/1.65 Nunito,system-ui,sans-serif;color:var(--ink);background:var(--bg)}
img,video{display:block;max-width:100%;height:auto}a{color:var(--accent);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}
a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:5px;border-radius:5px}
h1,h2,h3{font-weight:800;line-height:1.13;letter-spacing:-.035em;margin:0 0 .55em}h1{font-size:clamp(2.3rem,5.1vw,4.2rem)}h2{font-size:clamp(1.7rem,3.3vw,2.75rem)}h3{font-size:1.3rem;letter-spacing:-.02em}p{margin:0 0 1em}strong,b{font-weight:800}section{padding:clamp(44px,6vw,76px) 0}
.wrap{width:min(1160px,100% - 48px);margin-inline:auto}.lede{font-size:clamp(1.08rem,1.7vw,1.24rem);color:var(--muted);max-width:39em}.eyebrow{display:block;color:var(--accent);font-size:.72rem;line-height:1.5;font-weight:800;text-transform:uppercase;letter-spacing:.14em;margin-bottom:18px}.small{font-size:.82rem;color:var(--muted)}.tiny-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:8px}.text-link{display:inline-block;font-weight:800;text-decoration:none;border-bottom:1px solid currentColor;padding:5px 0}.skip{position:absolute;left:-10000px;top:8px;z-index:30;background:var(--card);padding:10px 16px}.skip:focus{left:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;padding:13px 21px;border-radius:10px;text-decoration:none;font-size:.93rem;line-height:1.35;font-weight:800;border:1px solid transparent;transition:background .15s,transform .15s}.btn:hover{transform:translateY(-2px)}.btn-primary,.btn-play{background:var(--accent);color:var(--accent-ink)}.btn-outline{border-color:var(--line);color:var(--accent);background:var(--card)}.btn svg{width:20px;height:20px}.btn span[aria-hidden]{font-size:1.3em}.cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.launch-cta{display:flex;align-items:flex-start;flex-direction:column;gap:10px;max-width:460px}.availability{font-size:.78rem;font-weight:800;color:var(--muted)}.launch-cta>.small{margin:0;max-width:350px;line-height:1.5}
/* The native apps menu works with keyboard and touch, including without JavaScript. */
.site-head{position:relative;border-bottom:1px solid var(--line);background:var(--bg);z-index:20}.head-row{min-height:88px;display:flex;align-items:center;gap:30px}.logo{display:flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none;font-size:1.05rem;font-weight:700;white-space:nowrap}.logo b{color:var(--brand)}.logo svg{flex-shrink:0}.site-head nav{display:flex;gap:28px;align-items:center;margin-left:auto;font-size:.88rem;font-weight:700}.site-head nav>a{padding:12px 0;color:var(--ink);text-decoration:none}.head-cta{background:var(--ink);color:var(--bg);font-size:.82rem;min-height:42px;padding:10px 17px}.app-menu{position:relative;border:0;padding:0}.app-menu summary{font-size:.88rem;line-height:1.4;padding:14px 22px 14px 0;color:var(--ink);font-weight:700}.app-menu summary::after{content:'⌄';font-size:1rem;right:0;top:10px;color:inherit;transform:none}.menu-panel{position:absolute;left:-20px;top:49px;min-width:245px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow);z-index:25}.menu-panel a{display:block;text-decoration:none;padding:10px;border-radius:7px;color:var(--ink)}.menu-panel a:hover,.menu-panel a[aria-current]{background:var(--bg-2)}.menu-panel b,.menu-panel span{display:block}.menu-panel span{font-size:.78rem;color:var(--muted)}[aria-current='page']{text-decoration:underline!important}
/* Home: clear choice first, original product screens as proof. */
.home-hero{padding:70px 0 62px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:56px}.hero-copy h1{font-size:clamp(2.8rem,4.7vw,4.5rem);line-height:1.08;letter-spacing:-.055em}.hero-copy h1 em{font-style:normal;color:var(--brand)}.hero-copy .lede{max-width:450px;margin-top:25px}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}.hero-actions .text-link{font-size:.91rem}.hero-proof{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:5px 18px;font-size:.78rem;color:var(--muted);margin:27px 0 10px}.hero-proof li::before{content:'✓';color:var(--brand);margin-right:6px;font-weight:800}.hero-status{margin:0;font-size:.74rem}.hero-visual{position:relative;min-height:520px;background:#e9eddf;border:1px solid #dde2d3;border-radius:180px 180px 26px 26px;isolation:isolate}.visual-label{position:absolute;top:22px;left:0;right:0;text-align:center;color:#355740;font-size:.69rem;letter-spacing:.04em;font-weight:800}.showcase-phone{position:absolute;width:43%;background:#182c24;border:7px solid #182c24;border-radius:23px;box-shadow:0 20px 35px -15px #24392d77}.showcase-phone .slot{border-radius:16px;overflow:hidden}.showcase-phone img{width:100%}.showcase-math{top:93px;left:7%;transform:rotate(-7deg);z-index:2}.showcase-french{top:68px;right:6%;transform:rotate(7deg);z-index:1}.screen-label{display:none}.visual-mascot{position:absolute;bottom:-5px;right:3%;width:135px;z-index:4}.visual-note{position:absolute;bottom:20px;left:21px;color:#355740;font-family:Georgia,serif;font-style:italic;font-size:1.14rem;line-height:1.4;transform:rotate(-5deg);z-index:3}.apps-section{border-top:1px solid var(--line);background:var(--bg-2)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:26px}.section-heading h2{margin:0}.section-heading p{font-size:.9rem;line-height:1.5;color:var(--muted);margin:0}.goal-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.goal-links a{border:1px solid var(--line);background:var(--bg);padding:9px 14px;border-radius:30px;font-weight:700;font-size:.77rem;text-decoration:none;color:var(--ink);min-height:42px;display:flex;align-items:center}.goal-links a:hover{border-color:var(--brand)}
.app-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.app-card{background:var(--card);border:1px solid var(--line);border-top:3px solid var(--accent);padding:28px;border-radius:16px;display:flex;flex-direction:column;color:var(--ink)}.card-math-magician{--accent:#176548;--accent-soft:#e4f4e9}.card-solvetrail{--accent:#0f6e60;--accent-soft:#dcefea}.card-quantroute{--accent:#5b45c9;--accent-soft:#e9e5f9}.card-french{--accent:#2e2a63;--accent-soft:#ece7f6}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:12px}.card-top img{width:58px;height:58px;border-radius:13px}.app-status{font-size:.7rem;font-weight:800;background:var(--bg-2);color:var(--muted);padding:5px 10px;border-radius:20px}.card-audience{font-size:.72rem;color:var(--accent);font-weight:800;margin-bottom:7px}.app-card h3{font-size:1.8rem;margin-bottom:4px}.app-card .card-promise{font-size:1.09rem;font-weight:800;line-height:1.4;margin-bottom:13px}.app-card>p:not(.card-promise){color:var(--muted);font-size:.94rem;max-width:400px;margin-bottom:12px}.benefit-list{padding:0;list-style:none;font-size:.85rem;line-height:1.5;margin:0 0 24px}.benefit-list li{margin:7px 0;padding-left:22px;position:relative}.benefit-list li::before{content:'✓';position:absolute;left:0;color:var(--accent);font-weight:800}.free-strip{margin-top:auto;background:var(--accent-soft);padding:14px 16px;border-radius:9px;line-height:1.5;min-height:76px;display:flex;flex-direction:column;gap:2px}.free-strip b{font-size:.77rem;color:var(--accent)}.free-strip span{font-size:.81rem;color:var(--ink)}.card-bottom{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:18px}.btn-card{background:var(--accent);color:#fff;font-size:.81rem;min-height:44px;padding:11px 15px}.sample-link{font-size:.78rem;font-weight:700}
.sample-section{border-bottom:1px solid var(--line)}.sample-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.sample-grid>.demo-card{max-width:475px}.sample-grid p{color:var(--muted)}.demo-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:var(--shadow)}.demo-equation{font-family:Georgia,serif;font-size:clamp(2.2rem,4vw,3.4rem);line-height:1.3;color:var(--ink);margin:16px 0 28px}.demo-foot{display:block;text-align:center;font-size:.7rem;color:var(--muted);padding-top:17px}.demo-card .eyebrow{margin-bottom:0}.answer-reveal{background:var(--accent-soft);border:1px solid var(--line);border-radius:10px;padding:0 18px;margin:22px 0}.answer-reveal summary{font-size:.91rem;min-height:50px;padding:14px 30px 14px 0}.answer-body{padding:5px 0 12px}.answer-body p:last-child{margin-bottom:0}.answer-number{font-size:1.8rem}.why{background:var(--bg-2)}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:37px}.why-grid>div{padding-top:22px;border-top:1px solid var(--line)}.why-grid p{font-size:.94rem;color:var(--muted);margin:0}.principle-number{font-size:.75rem;letter-spacing:.14em;color:var(--accent);display:block;margin-bottom:17px;font-weight:800}.maker-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:56px}.maker-section p{font-size:.96rem;color:var(--muted)}.maker-art span{display:block;text-align:center;color:var(--muted);font-family:Georgia,serif;font-size:1rem;font-style:italic;margin-top:20px}.closing-panel{background:var(--accent-soft);text-align:center;border-radius:18px;padding:48px 24px}.closing-panel p{color:var(--muted)}
/* App pages */
.app-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;padding-top:62px;padding-bottom:50px}.app-hero h1{font-size:clamp(2.3rem,4.3vw,3.7rem)}.icon-row{display:flex;align-items:center;gap:14px;margin-bottom:24px}.icon-row img{width:56px;height:56px;border-radius:13px}.icon-row span{font-size:.8rem;line-height:1.45;color:var(--muted);font-weight:800}.app-hero .lede{margin-bottom:24px}.hero-free{border-left:2px solid var(--accent);padding-left:14px;font-size:.81rem;line-height:1.5;color:var(--muted);max-width:440px;margin:24px 0 0}.stage{position:relative;display:flex;align-items:flex-end;justify-content:center;padding:22px 0}.stage::before{content:'';position:absolute;inset:0;border-radius:140px 140px 24px 24px;background:var(--accent-soft);z-index:-1}.stage{isolation:isolate}.stage .mascot{position:absolute;width:145px;left:0;bottom:0;z-index:2}.phone{width:min(250px,70vw);border:7px solid #1b2233;border-radius:26px;box-shadow:0 25px 50px -25px #1b223366;overflow:hidden;margin-left:12%}.phone .slot img{width:100%;border-radius:0}.slot{margin:0}.slot-shot img{border-radius:14px}.slot-todo{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:240px;border:2px dashed var(--accent);padding:20px;background:var(--accent-soft);text-align:center;border-radius:16px}.slot-todo code{overflow-wrap:anywhere;max-width:100%;font-size:.78rem}.slot-empty{background:var(--accent-soft);min-height:240px;display:grid;place-items:center;border-radius:16px}.slot-empty img{border-radius:14px}.phone .slot-todo,.phone .slot-empty{min-height:420px;border-radius:0}.page-jumps{display:flex;justify-content:center;gap:38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;flex-wrap:wrap}.page-jumps a{font-size:.84rem;font-weight:800;text-decoration:none;padding:6px 0;min-height:32px}.sample-callout{display:flex;justify-content:space-between;gap:28px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:15px;padding:24px 28px;margin-top:36px}.sample-callout h2{font-size:1.3rem;margin-bottom:8px}.sample-callout .eyebrow{font-size:.67rem;margin-bottom:8px}.sample-callout p{font-size:.85rem;color:var(--muted);margin:0}.sample-callout .btn{flex-shrink:0;font-size:.82rem}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:0;list-style:none;counter-reset:steps;margin:28px 0 0}.steps li{counter-increment:steps;padding:24px;background:var(--card);border:1px solid var(--line);border-radius:14px}.steps li::before{content:'0' counter(steps);font-size:.79rem;display:block;color:var(--accent);font-weight:800;letter-spacing:.08em;margin-bottom:16px}.steps p{color:var(--muted);font-size:.93rem;margin-bottom:0}.feature{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:40px 0;align-items:center;border-bottom:1px solid var(--line)}.feature:last-child{border-bottom:0}.feature:nth-of-type(even) .feature-media{order:-1}.feature h3{font-size:1.85rem;max-width:430px}.feature p{font-size:.99rem;color:var(--muted);max-width:445px}.feature-media{display:flex;justify-content:center;align-items:center;padding:20px;background:var(--accent-soft);border-radius:20px}.feature-media .slot{width:min(245px,76vw)}.feature-media img{box-shadow:var(--shadow)}.feature-media .slot-todo,.feature-media .slot-empty{aspect-ratio:9/16}.trust{background:var(--accent-soft);border-radius:18px;padding:38px}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.trust-grid>div{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px}.trust-grid b{display:block;font-size:.94rem;margin-bottom:7px}.trust-grid span{display:block;font-size:.86rem;color:var(--muted)}.who ul{padding-left:22px;color:var(--muted)}.who li{margin:8px 0}.who .small{max-width:750px}.free-plan{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;padding:22px;background:var(--accent-soft);margin:28px 0}.free-plan b{display:block;color:var(--accent);margin-bottom:8px}.free-plan p{font-size:.95rem;max-width:780px;margin:0}.prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.price{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px}.price h3{font-size:1.13rem;margin-top:15px}.price .amt{font-size:2.1rem;font-weight:800;letter-spacing:-.04em;line-height:1.3;margin:12px 0}.amt small{font-size:.85rem;letter-spacing:0;color:var(--muted)}.price p{font-size:.83rem;color:var(--muted);margin:0}.price.best{border:2px solid var(--accent);box-shadow:var(--shadow)}.tag{display:inline-block;min-height:22px;font-weight:800;font-size:.66rem;letter-spacing:.05em;color:var(--accent);background:var(--accent-soft);padding:4px 9px;border-radius:20px}.price-note{margin:19px 0 0}.final{text-align:center}.final .cta{justify-content:center}.final .launch-cta{align-items:center}.final .hero-free{display:none}.quote-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}blockquote{margin:0;padding:24px;background:var(--card);border:1px solid var(--line);border-radius:16px}cite{color:var(--muted);font-size:.9rem;font-style:normal}.video{margin:0;border:1px solid var(--line);border-radius:16px;overflow:hidden}.video video,.video img{width:100%}.video figcaption{background:var(--card);padding:16px;font-size:.9rem}.pill{background:var(--accent-soft);padding:5px 12px;border-radius:20px;font-size:.8rem}
.scene-hero{position:relative;isolation:isolate;overflow:hidden;background:#15112b;color:#f1eeff;padding:0;--accent:#b6a9ff;--accent-ink:#15112b;--muted:#c5bee1;--focus:#f2c970}.scene-bg{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;z-index:-1}.scene-hero .scene-bg{opacity:.45}.scene-hero .stage::before{background:#a293e514}.scene-hero .phone{margin-left:0}.scene-hero .hero-free{border-color:#b6a9ff}.scene-band{position:relative;isolation:isolate;overflow:hidden;border-radius:20px;padding:50px 24px 145px;color:#fff;--accent:#fff;--accent-ink:#174737;--muted:#fff;--focus:#ffd35c}.scene-band::before{content:'';position:absolute;inset:0;background:#0b3a2c66;z-index:-1}.scene-band .btn-primary{background:#fff;color:#174737}.scene-band .launch-cta>.small{background:#0b3a2c;padding:7px 12px;border-radius:6px}
/* FAQs, support and editorial lessons. */
.faq{max-width:820px}details{border-bottom:1px solid var(--line);padding:3px 0}summary{font-size:1rem;cursor:pointer;font-weight:800;list-style:none;position:relative;padding:18px 34px 18px 0;line-height:1.5}summary::-webkit-details-marker{display:none}summary::after{content:'+';position:absolute;right:5px;top:12px;font-size:1.5rem;font-weight:400;color:var(--accent)}details[open]>summary::after{content:'−'}details>p{font-size:.94rem;color:var(--muted);padding-bottom:12px;margin:0}.support-hero{padding-bottom:25px}.support-hero .lede{max-width:650px}.contact-card{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;background:var(--accent-soft);border:1px solid var(--line);border-radius:15px;padding:28px;margin-top:30px}.contact-card h2{font-size:1.4rem}.contact-card p{font-size:.9rem;max-width:550px;margin:0}.contact-card .btn{font-size:.85rem;overflow-wrap:anywhere}.faq+.faq{padding-top:10px}.notfound{text-align:center}.notfound img{width:190px;margin:0 auto 20px}.notfound .lede{margin-inline:auto}.notfound .cta{justify-content:center}.breadcrumb{display:block;font-size:.84rem;font-weight:700;text-decoration:none;margin:0 0 30px}.resource-hero{max-width:1160px;padding-bottom:20px}.resource-hero h1{max-width:700px}.resource-hero .lede{max-width:660px}.resource-list{padding-top:20px}.resource-card{display:grid;grid-template-columns:50px 1fr 32px;gap:24px;align-items:center;padding:30px 22px;color:var(--ink);text-decoration:none;border-top:1px solid var(--line)}.resource-card:last-child{border-bottom:1px solid var(--line)}.resource-card:hover{background:var(--accent-soft)}.resource-card h2{font-size:1.65rem}.resource-card p{color:var(--muted);font-size:.92rem;margin:0}.resource-card .eyebrow{margin-bottom:10px}.resource-number{font-family:Georgia,serif;font-size:1.4rem;color:var(--muted)}.resource-arrow{font-size:1.7rem;color:var(--accent)}.lesson-article{max-width:780px;padding:45px 0 60px}.lesson-heading{padding:10px 0 32px;border-bottom:1px solid var(--line);margin-bottom:36px}.lesson-heading h1{font-size:clamp(2.2rem,4.8vw,3.5rem)}.lesson-heading .small{margin-bottom:0}.lesson-content h2{font-size:1.6rem;margin:35px 0 17px}.lesson-content p{color:var(--muted)}.lesson-content b,.lesson-content strong{color:var(--ink)}.lesson-content .worked-example{background:var(--accent-soft);padding:25px 28px;border-radius:14px;margin:30px 0}.worked-example .eyebrow{margin-bottom:15px}.worked-example h3{font-size:1.65rem}.worked-example p:last-child{margin-bottom:0}.worked-example ol{padding-left:24px}.worked-example li{margin:10px 0}.worked-example table{width:100%;border-collapse:collapse;margin:20px 0;text-align:left}.worked-example th,.worked-example td{padding:12px;border:1px solid var(--line)}.worked-example th{background:var(--card);font-size:.85rem}.french-example{font-size:1.35rem;color:var(--ink)!important;overflow-wrap:anywhere}.lesson-next{margin:44px 0 24px;padding:28px;background:var(--card);border:1px solid var(--line);border-radius:14px}.lesson-next h2{font-size:1.6rem}.lesson-next p{color:var(--muted);font-size:.95rem}
.site-foot{background:var(--bg-2);border-top:1px solid var(--line);padding:48px 0 28px;font-size:.85rem}.foot-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:28px}.foot-grid>div:first-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.5fr;gap:0 50px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:24px}.foot-grid>div:first-child>p:nth-child(n+3){grid-column:2}.foot-brand{font-weight:700;font-size:1.2rem}.foot-brand b{color:var(--brand)}.foot-grid h2{font-size:.74rem;letter-spacing:0;line-height:1.4;color:var(--ink)}.foot-grid a{display:block;color:var(--muted);padding:5px 0;text-decoration:none;overflow-wrap:anywhere}.foot-grid a:hover{text-decoration:underline}.foot-grid>div:first-child>p:nth-child(4) a{display:inline-block;margin-right:18px}.disclaimer{border-top:1px solid var(--line);padding-top:23px;margin-top:30px;font-size:.73rem;line-height:1.5;color:var(--muted)}.disclaimer p{margin-bottom:8px}
@media(prefers-color-scheme:dark){:root{--bg:#111d19;--bg-2:#182721;--card:#1d2f27;--ink:#f0f1e8;--muted:#b4c3b8;--line:#35473d;--brand:#8bd1ac;--accent:#8bd1ac;--accent-ink:#10281c;--accent-soft:#264337;--focus:#f6cf78;--shadow:0 20px 40px -22px #0009}.theme-math-magician,.card-math-magician{--accent:#81d7ab;--accent-soft:#244334}.theme-solvetrail,.card-solvetrail{--accent:#7bd2bf;--accent-soft:#1d4037}.theme-quantroute,.card-quantroute{--accent:#c4b7ff;--accent-soft:#342f51}.theme-french,.card-french{--accent:#d2c7f3;--accent-soft:#34314f}.hero-visual{background:#243b31;border-color:#354e40}.visual-label,.visual-note{color:#d0e3c7}.showcase-phone{background:#151b18;border-color:#151b18}.btn-card{color:#16201b}.scene-hero{--accent:#b6a9ff;--accent-ink:#15112b;--muted:#c5bee1;--focus:#f2c970}.scene-band{--accent:#fff;--accent-ink:#174737;--muted:#fff;--focus:#ffd35c}}
@media(min-width:1440px){.hero-grid{gap:72px}.hero-visual{min-height:540px}}
@media(max-width:1050px){.head-row{gap:18px}.site-head nav{gap:20px}.head-cta{display:none}.hero-grid{gap:30px}.hero-visual{min-height:470px}.showcase-phone{border-width:6px}.visual-note{font-size:.9rem;bottom:22px}.visual-mascot{width:110px}.app-hero{gap:35px}.prices{grid-template-columns:repeat(2,1fr)}.sample-grid{gap:40px}.foot-grid{gap:18px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.head-row{min-height:76px;flex-wrap:wrap;gap:0;padding:16px 0 12px}.logo{font-size:1rem}.site-head nav{margin-left:0;width:100%;justify-content:space-between;gap:16px;margin-top:8px}.site-head nav>a{padding:8px 0}.app-menu summary{padding-top:8px;padding-bottom:8px}.app-menu summary::after{top:4px}.menu-panel{top:36px;left:0}.home-hero{padding:38px 0 42px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero-copy h1{font-size:clamp(2.8rem,8.5vw,4rem)}.hero-copy .lede{margin-top:19px}.hero-actions{margin-top:23px;gap:18px}.hero-proof{margin-top:21px;gap:5px 13px}.hero-visual{width:min(440px,100%);min-height:500px;margin:0 auto}.showcase-math{top:82px}.showcase-french{top:65px}.visual-note{font-size:1.03rem}.visual-mascot{width:130px}.section-heading{align-items:start}.section-heading>p{display:none}.goal-links{display:grid;grid-template-columns:1fr 1fr}.goal-links a{border-radius:8px;line-height:1.4;padding:9px 11px}.app-cards{grid-template-columns:1fr}.app-card{padding:24px}.app-card .card-promise{font-size:1.05rem}.card-bottom{justify-content:space-between;align-items:center}.sample-grid{grid-template-columns:1fr;gap:25px}.demo-card{padding:25px;width:100%;max-width:none!important}.sample-grid h2 br{display:none}.why-grid{grid-template-columns:1fr;gap:24px}.why-grid>div{padding-top:16px}.principle-number{margin-bottom:10px}.maker-section{grid-template-columns:1fr;gap:24px}.maker-art{max-width:540px;margin:auto}.maker-art span{margin-top:8px}.app-hero{grid-template-columns:1fr;gap:30px;padding-top:35px}.app-hero h1{font-size:clamp(2.3rem,8vw,3.4rem)}.stage{width:min(420px,100%);margin:auto;padding:25px 0}.stage .mascot{width:120px}.page-jumps{gap:10px 25px}.sample-callout{flex-direction:column;align-items:flex-start;padding:22px;margin-top:28px}.steps{grid-template-columns:1fr;gap:14px}.feature{grid-template-columns:1fr;gap:22px;padding:32px 0}.feature:nth-of-type(even) .feature-media{order:0}.feature h3{font-size:1.6rem}.feature p{max-width:none}.feature-media{padding:24px}.trust{padding:24px}.trust-grid{grid-template-columns:1fr;gap:12px}.prices{grid-template-columns:1fr}.price{padding:23px}.price h3{margin-top:8px}.price .amt{margin:12px 0}.closing-panel{padding:36px 23px}.foot-grid{grid-template-columns:1fr 1fr;gap:25px}.foot-grid>div:first-child{display:block;padding-bottom:15px}.resource-card{grid-template-columns:26px 1fr 20px;gap:14px;padding:25px 8px}.resource-card h2{font-size:1.3rem}.resource-card p{font-size:.87rem}.resource-number{font-size:1.2rem}.resource-card .eyebrow{font-size:.62rem}.lesson-article{padding-top:28px}.lesson-heading{padding-bottom:20px}.lesson-content .worked-example{padding:22px}.lesson-next{padding:22px}.contact-card{padding:22px}.contact-card .btn{width:100%;font-size:.78rem}.scene-band{padding-bottom:110px}}
@media(max-width:380px){.wrap{width:calc(100% - 28px)}.hero-visual{min-height:435px}.visual-label{font-size:.61rem}.visual-mascot{width:110px}.visual-note{font-size:.87rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.app-card{padding:20px}.card-bottom{align-items:flex-start;flex-direction:column}.btn-primary{max-width:100%}.head-row nav{font-size:.8rem;gap:12px}.app-menu summary{font-size:.8rem}.hero-copy h1{font-size:2.65rem}.scene-band .launch-cta>.small{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-head,.site-foot,.page-jumps,.lesson-next,.skip{display:none}.wrap{width:100%}body{background:#fff;color:#111;font-size:11pt}details>.answer-body{display:block!important}a{color:#111}.lesson-article{padding:0}.worked-example{break-inside:avoid}.lesson-content h2{break-after:avoid}}
/* Hero picture panel: tall enough on wider screens that the phones end above the handwritten note */
@media(min-width:761px){.hero-visual{min-height:610px}}
@media(min-width:761px) and (max-width:1050px){.hero-visual{min-height:560px}}
@media(min-width:1440px){.hero-visual{min-height:660px}}
/* Apps menu: a drawn chevron (the ⌄ glyph showed as a far-off "v" on Android); points up when open */
.app-menu summary::after{content:'';width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg);top:calc(50% - 6px);right:4px}
.app-menu[open]>summary::after{content:'';transform:rotate(-135deg);top:calc(50% - 2px)}
@media(max-width:760px){.card-bottom .btn{width:100%;justify-content:space-between}}
/* Phones: the app-page mascot sat on top of the app's own buttons; move the phone right so the mascot stands beside it */
@media(max-width:760px){.stage .phone{width:min(220px,62vw);margin-left:auto;margin-right:8px}.stage .mascot{width:min(100px,26vw);left:-4px}}
/* Phones: the 3 menu items are equal, evenly spaced buttons (they read as loose text before) */
@media(max-width:760px){
.site-head nav{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.site-head nav>a,.app-menu summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 6px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font-size:.85rem;font-weight:700;line-height:1.2;text-align:center;text-decoration:none}
.app-menu summary::after{position:static;flex-shrink:0;margin-top:-4px}
.app-menu[open]>summary::after{margin-top:4px}
.app-menu[open]>summary{border-color:var(--brand)}
.site-head nav>a[aria-current='page']{border-color:var(--brand);text-decoration:none!important;box-shadow:inset 0 -3px 0 var(--brand)}
.menu-panel{top:52px;left:0}
}
@media(max-width:340px){.site-head nav>a,.app-menu summary{font-size:.78rem;padding:8px 4px;gap:5px}}
/* Goal buttons: icon + goal + app name + arrow, equal size, centred (they were uneven text boxes) */
.goal-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:32px}
.goal-links a{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;min-height:68px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);text-decoration:none;line-height:1.3;transition:border-color .15s,transform .15s}
.goal-links a:hover{border-color:var(--brand);transform:translateY(-1px)}
.goal-links picture,.goal-links img{display:block;width:40px;height:40px;border-radius:10px}
.goal-links b{display:block;font-size:.9rem;font-weight:800}
.goal-links small{display:block;margin-top:2px;font-size:.76rem;font-weight:700;color:var(--muted)}
.goal-arrow{color:var(--brand);font-weight:800;font-size:1.05rem}
@media(max-width:760px){.goal-links{grid-template-columns:1fr;gap:10px}.goal-links a{border-radius:12px;padding:12px 14px}}
