@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700;12..96,800&family=Manrope:wght@400;500;600;700;800&family=Sora:wght@400;500;600;700;800&display=swap";:root{font-family:Manrope,sans-serif;color:#08212b;background:#f6fbfa;font-synthesis:none;--cobalt: #1648a8;--cobalt-deep: #0b2f75;--turquoise: #00a9a1;--turquoise-light: #8fe5db;--coral: #f25345;--saffron: #e5a91c;--green: #087a59;--ink: #08212b;--paper: #ffffff;--mist: #eaf6f4;--line: #b9d6d3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#f5f8f7}body:before{content:"";position:fixed;inset:0 0 auto;z-index:30;height:4px;background:var(--coral)}button,a,input{font:inherit}button{cursor:pointer}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3{margin:0;font-family:Bricolage Grotesque,sans-serif;line-height:.98}.site-header{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:10px clamp(22px,5vw,76px);color:#fff;background:#08212bf2;border-bottom:1px solid #ffffff1f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.site-header:after{content:"";position:absolute;inset:auto 0 -5px;height:5px;background:repeating-linear-gradient(135deg,var(--turquoise) 0 10px,var(--turquoise) 10px 15px,#ffffff 15px 17px,var(--cobalt) 17px 27px,var(--cobalt) 27px 32px,#ffffff 32px 34px)}.brand{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none}.brand-mark{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:var(--turquoise);color:#fff;font-family:Bricolage Grotesque;font-weight:800}.brand strong,.brand small{display:block}.brand strong{font-family:Bricolage Grotesque;font-size:19px}.brand small{margin-top:3px;color:#a8d9d4;text-transform:none;letter-spacing:.025em;font-size:9px;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:10px}.language-preferences{display:flex;gap:7px;align-items:center}.language-preferences label{display:grid;gap:2px;color:#a8d9d4;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.language-preferences select{min-width:104px;border:1px solid #ffffff30;border-radius:8px;padding:6px 26px 6px 8px;color:#fff;background:#13313a;font-size:11px;font-weight:700;text-transform:none}.mode-switch{display:flex;padding:4px;border:1px solid #ffffff30;border-radius:999px;background:#ffffff12}.mode-switch button{border:0;padding:9px 15px;border-radius:999px;color:#d5e7e5;background:transparent;font-size:12px;font-weight:800}.mode-switch .active{color:#fff;background:var(--turquoise)}.account-button{border:1px solid var(--turquoise-light);border-radius:999px;padding:10px 16px;color:#fff;background:transparent;font-size:12px;font-weight:800}.account-button:hover{color:var(--ink);background:var(--turquoise-light)}main{max-width:1400px;margin:auto;padding:0 clamp(18px,5vw,76px) 70px}.hero{min-height:475px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);align-items:center;gap:clamp(36px,6vw,84px);padding:66px 0 38px}.eyebrow,.section-heading span{color:var(--coral);text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:800}h1{max-width:760px;font-size:clamp(50px,6.4vw,91px);letter-spacing:-.055em}h1 em{color:var(--cobalt);font-style:normal;text-decoration:underline;text-decoration-color:var(--saffron);text-decoration-thickness:.11em;text-underline-offset:.08em}.hero-copy p{max-width:660px;margin:24px 0;color:#36515a;font-size:17px;line-height:1.72}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.primary{border:0;border-radius:10px;padding:16px 21px;color:#fff;background:var(--cobalt);box-shadow:0 7px 18px #1648a824;font-weight:800;transition:transform .2s ease,background .2s ease}.primary:hover{transform:translateY(-2px);background:var(--cobalt-deep)}.primary span{margin-left:25px}.listen-now{border:1px solid #9cb8b5;border-radius:10px;padding:15px 18px;color:var(--ink);background:#fff;font-weight:800}.adult-next-step{max-width:520px;display:grid;gap:4px;margin-top:24px;padding:15px 17px;border-left:4px solid var(--turquoise);border-radius:0 10px 10px 0;background:#fff;box-shadow:0 8px 22px #0c48550d}.adult-next-step span{color:var(--green);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.adult-next-step strong{font:800 17px Bricolage Grotesque}.adult-next-step small{color:#5e7378;line-height:1.45}.kid-reward-line{display:flex;gap:12px;align-items:center;margin-top:22px;color:#fff}.kid-reward-line strong{padding:7px 11px;border-radius:999px;color:var(--ink);background:var(--saffron);font-size:13px}.kid-reward-line span{font-size:12px;font-weight:700}.conversation-stage{min-height:390px;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4vw,54px);border-radius:28px;color:#fff;background:var(--cobalt-deep);box-shadow:0 18px 42px #0b2f7526}.conversation-stage:before{content:"";position:absolute;inset:0 0 auto;z-index:-1;height:8px;background:var(--turquoise)}.stage-label{align-self:flex-start;margin-bottom:22px;padding:7px 11px;border-radius:999px;color:#fff;background:var(--turquoise);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.dialogue-bubble{width:min(88%,360px);padding:17px 20px;border-radius:18px;box-shadow:0 7px 18px #0016}.dialogue-bubble strong,.dialogue-bubble small{display:block}.dialogue-bubble strong{font:800 clamp(24px,3vw,34px) "Bricolage Grotesque"}.dialogue-bubble small{margin-top:4px;font-size:13px}.speaker-one{color:var(--ink);background:#fff;border-bottom-left-radius:4px}.speaker-two{align-self:flex-end;margin-top:13px;color:var(--ink);background:#bce9e4;border-bottom-right-radius:4px}.conversation-stage button{align-self:flex-start;margin-top:22px;border:1px solid #ffffff80;border-radius:10px;padding:11px 14px;color:#fff;background:#031f5166;font-size:13px;font-weight:800}.conversation-stage button:hover{color:var(--ink);background:#fff}.stage-note{margin-top:16px;color:#b9ede8;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mascot-stage{height:430px;position:relative;isolation:isolate;overflow:hidden;border:5px solid var(--turquoise);border-radius:40% 40% 24px 24px;background:#1f100a;box-shadow:0 18px 42px #006d6826}.mascot-stage:after{content:"";position:absolute;inset:auto 0 0;height:8px;z-index:2;background:repeating-linear-gradient(135deg,var(--turquoise) 0 12px,var(--turquoise) 12px 18px,white 18px 20px,var(--coral) 20px 32px,var(--coral) 32px 38px,white 38px 40px)}.mascot-stage img{position:relative;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;display:block}.speech-bubble{position:absolute;z-index:3;top:74px;left:58px;max-width:calc(100% - 116px);padding:13px 17px;border-radius:18px 18px 18px 4px;color:var(--ink);background:#fff;box-shadow:0 8px 22px #0004}.speech-bubble strong,.speech-bubble span{display:block;white-space:nowrap}.speech-bubble strong{color:var(--coral);font:800 21px Bricolage Grotesque}.speech-bubble span{margin-top:2px;font-size:11px}.mascot-reward{position:absolute;z-index:3;right:18px;bottom:22px;padding:8px 12px;border-radius:999px;color:#fff;background:var(--coral);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.progress-card{display:grid;grid-template-columns:minmax(210px,auto) 1fr auto;gap:25px;align-items:center;margin:2px 0 38px;padding:20px 24px;border:1px solid var(--line);border-radius:16px;color:var(--ink);background:#fff;box-shadow:0 10px 28px #0c48550e}.progress-copy span,.progress-copy strong,.progress-copy small,.progress-score span,.progress-score small{display:block}.progress-copy span{color:var(--green);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.progress-copy strong{margin-top:4px}.progress-copy small{margin-top:3px;color:#61777b;font-size:11px}.progress-track{height:10px;overflow:hidden;border-radius:99px;background:#dfebe9}.progress-track i{display:block;height:100%;border-radius:inherit;background:var(--turquoise);transition:width .4s ease}.progress-score{min-width:64px;padding:9px 11px;border-radius:10px;color:#fff;background:var(--cobalt);text-align:center}.progress-score span{font-size:18px}.progress-score small{font-size:9px;text-transform:uppercase;letter-spacing:.08em}.kids-club{display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:12px;margin:-4px 0 42px}.club-title{position:relative;overflow:hidden;padding:23px 20px;border-radius:16px;color:#fff;background:var(--turquoise)}.club-title:after{content:"★";position:absolute;right:13px;bottom:-18px;color:#ffffff1b;font-size:90px}.club-title .eyebrow{color:#fff}.club-title h2{margin-top:7px;font-size:26px}.kids-club>button{border:1px solid var(--line);border-radius:16px;padding:18px;color:var(--ink);background:#fff;box-shadow:0 7px 18px #0c48550d;text-align:left;transition:transform .2s ease,border-color .2s ease}.kids-club>button:hover{transform:translateY(-2px);border-color:var(--turquoise)}.kids-club button>span,.kids-club button>strong,.kids-club button>small{display:block}.kids-club button>span{color:var(--coral);font-size:11px;font-weight:800}.kids-club button>strong{margin:8px 0 5px;font:800 18px Bricolage Grotesque}.kids-club button>small{color:#5d7076;line-height:1.4}.kids-world .hero{position:relative;margin-inline:calc(clamp(18px,5vw,76px)*-1);padding-inline:clamp(18px,5vw,76px);border-radius:0 0 34px 34px;background:var(--turquoise)}.kids-world .hero:after{content:"";position:absolute;inset:auto 0 0;height:8px;border-radius:0 0 34px 34px;background:repeating-linear-gradient(135deg,var(--cobalt) 0 14px,var(--cobalt) 14px 20px,#ffffff 20px 22px,var(--saffron) 22px 36px,var(--saffron) 36px 42px,#ffffff 42px 44px)}.kids-world .hero-copy .eyebrow,.kids-world .hero-copy p,.kids-world h1{color:#fff}.kids-world .primary{color:var(--ink);background:var(--saffron);box-shadow:none}.kids-world .primary:hover{background:#f1c64e}.kids-world .listen-now{border-color:#ffffffa6;color:#fff;background:transparent}.kids-world .listen-now:hover{color:var(--ink);background:#fff}.kids-world .mascot-stage{border-color:var(--saffron);box-shadow:0 18px 42px #003d392c}.kids-world .progress-card{margin-top:28px}.kids-world .kids-club>button{min-height:142px;border-width:2px}.kids-world .kids-club button>span{color:var(--cobalt);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.kids-world .kids-club button>strong{font-size:21px}.kids-world .lesson-number{width:42px;height:42px;border-color:var(--turquoise);color:var(--cobalt);background:#fff}.kids-world .lesson-link{min-height:60px}.kids-world .lesson-link.active{border-width:2px;box-shadow:none}.kids-world .lesson-panel{border-color:var(--turquoise)}.workspace{display:grid;grid-template-columns:330px minmax(0,1fr);gap:34px;align-items:start}.roadmap{position:sticky;top:108px}.section-heading{margin:0 0 14px 8px}.section-heading h2{margin-top:4px;font-size:34px}.roadmap nav{display:grid;gap:8px}.lesson-link{width:100%;display:flex;gap:13px;align-items:center;padding:11px;border:1px solid transparent;border-radius:13px;color:#27424a;background:transparent;text-align:left}.lesson-link:hover{border-color:#b8d9d5;background:#ffffffb8}.lesson-link.active{border-color:var(--turquoise);background:#fff;box-shadow:0 6px 16px #006d6818}.lesson-link.done{color:var(--green)}.lesson-link.done .lesson-number{border-color:var(--green);color:#fff;background:var(--green)}.lesson-number{flex:0 0 36px;height:36px;display:grid;place-items:center;border:2px solid #89aaa7;border-radius:12px;font-size:12px;font-weight:800}.lesson-number svg{width:16px}.lesson-link strong,.lesson-link small{display:block}.lesson-link strong{font-size:13px}.lesson-link small{margin-top:3px;color:#6b7b7d;font-size:11px}.lesson-panel{position:relative;overflow:hidden;padding:clamp(24px,4vw,54px);border:1px solid #b9d8d5;border-radius:26px;background:#fff;box-shadow:0 22px 60px #0b536311;scroll-margin-top:110px}.lesson-panel:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:repeating-linear-gradient(135deg,var(--turquoise) 0 16px,var(--turquoise) 16px 23px,white 23px 25px,var(--cobalt) 25px 41px,var(--cobalt) 41px 48px,white 48px 50px)}.lesson-kicker{display:flex;justify-content:space-between;gap:16px;color:var(--cobalt);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.lesson-panel>h2{margin-top:13px;font-size:clamp(40px,5vw,65px);letter-spacing:-.035em}.swahili-title{margin:8px 0 0;color:var(--coral);font-size:16px;font-weight:800;letter-spacing:.03em}.lesson-goal{max-width:760px;margin-bottom:18px;color:#4c646a;font-size:17px;line-height:1.65}.can-do{display:flex;gap:14px;align-items:center;padding:13px 15px;border-radius:12px;color:#063e35;background:#dff5ec}.can-do span{flex:0 0 auto;padding:6px 9px;border-radius:999px;color:#fff;background:var(--green);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.can-do strong{font-size:13px}.culture-note{display:flex;gap:14px;margin:25px 0;padding:18px;border:1px solid #e5c461;border-left:6px solid var(--saffron);border-radius:12px;color:#543d05;background:#fff6d8}.culture-note svg{flex:0 0 22px}.culture-note strong{font-size:13px}.culture-note p{margin:5px 0 0;font-size:13px;line-height:1.55}.phrase-heading{display:flex;justify-content:space-between;align-items:end;margin:32px 0 12px}.phrase-heading h3{font-size:27px}.phrase-heading span{color:#697d80;font-size:11px}.phrase-list{display:grid;grid-template-columns:1fr 1fr;gap:11px}.phrase{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px;border:1px solid #b6d7d3;border-radius:15px;color:var(--ink);background:#fafffe;text-align:left;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.phrase:hover{transform:translateY(-2px);border-color:var(--cobalt);box-shadow:0 9px 20px #1648a815}.phrase strong,.phrase small{display:block}.phrase strong{font-size:16px}.phrase small{margin-top:5px;color:#63767a}.sound{flex:0 0 40px;height:40px;display:grid;place-items:center;border-radius:13px;color:#fff;background:var(--cobalt)}.reveal{margin:13px 0 0;border:0;padding:6px 0;color:var(--cobalt);background:transparent;font-weight:800}.quiz{margin:36px 0 0;padding:25px;border:1px solid #9cd7d1;border-radius:16px;background:#eef8f6}.quiz h3{margin:9px 0 18px;font-size:23px}.choices{display:flex;flex-wrap:wrap;gap:9px}.choices button{border:1px solid #7599bd;border-radius:10px;padding:11px 15px;color:var(--ink);background:#fff;font-weight:800}.choices button:hover{border-color:var(--cobalt);color:#fff;background:var(--cobalt)}.feedback{min-height:21px;margin:14px 0 0;color:var(--green);font-weight:800}.lesson-actions{display:flex;justify-content:space-between;gap:14px;margin-top:28px;padding-top:20px;border-top:1px solid #cfe2e0}.lesson-actions button{padding:13px 16px;border-radius:11px;font-weight:800}.complete{display:flex;align-items:center;gap:8px;border:1px solid #789d99;color:var(--ink);background:#fff}.complete.completed{border-color:var(--green);color:#fff;background:var(--green)}.next{border:0;color:#fff;background:var(--cobalt)}.auth-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#031e2bd9;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.auth-dialog{position:relative;width:min(100%,480px);max-height:calc(100vh - 40px);overflow:auto;padding:clamp(25px,5vw,43px);border:1px solid var(--turquoise);border-radius:22px;color:var(--ink);background:#fff;box-shadow:0 30px 90px #0007}.auth-dialog:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:var(--turquoise)}.auth-dialog>h2{margin-top:9px;font-size:clamp(30px,5vw,41px)}.auth-close{position:absolute;top:15px;right:15px;width:39px;height:39px;border:0;border-radius:12px;color:#fff;background:var(--cobalt);font-size:24px;line-height:1}.auth-intro{margin:12px 0 22px;color:#51686d;line-height:1.6}.auth-google,.auth-form button,.auth-secondary{width:100%;min-height:49px;border:0;border-radius:11px;color:#fff;background:var(--cobalt);font-weight:800}.auth-google:hover,.auth-form button:hover{background:var(--cobalt-deep)}.auth-google:disabled,.auth-form button:disabled{cursor:not-allowed;opacity:.55}.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:#60767a;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#bfd7d4}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:18px;padding:4px;border-radius:12px;background:#def2ef}.auth-tabs button{min-height:43px;border:0;border-radius:9px;color:#34565b;background:transparent;font-weight:800}.auth-tabs button.active{color:#fff;background:var(--turquoise);box-shadow:0 3px 10px #006e682b}.auth-form{display:grid;gap:9px}.auth-form+.auth-form{margin-top:16px;padding-top:16px;border-top:1px solid #c9dfdc}.auth-form label{font-size:14px;font-weight:800}.auth-form input{width:100%;min-height:49px;border:1px solid #82aaa6;border-radius:10px;padding:11px 13px;color:var(--ink);background:#fff}.auth-form input:focus{outline:3px solid #00a9a135;border-color:var(--turquoise)}.auth-form small,.auth-privacy{color:#61777b;font-size:12px;line-height:1.45}.auth-code-form input{text-align:center;font-size:23px;font-weight:800;letter-spacing:.35em}.auth-message{margin:15px 0 0;padding:12px;border-radius:10px;font-size:13px;line-height:1.45}.auth-message.success{color:#07523d;background:#dcf4e9}.auth-message.error{color:#861e16;background:#ffe3df}.auth-privacy{margin:16px 0 0;text-align:center}.auth-status{display:grid;justify-items:center;gap:12px;padding:18px 0 4px;text-align:center}.auth-status h2{font-size:35px}.auth-status p{margin:0;color:#52696e;line-height:1.55}.auth-spinner{width:34px;height:34px;border:4px solid #cae3df;border-top-color:var(--coral);border-radius:50%;animation:auth-spin .8s linear infinite}.auth-success{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;color:#fff;background:var(--green);font-size:25px}.auth-identity{max-width:100%;overflow-wrap:anywhere}.auth-secondary{margin-top:7px;background:var(--coral)}.auth-backdrop button:focus-visible,.auth-backdrop input:focus-visible,.account-button:focus-visible{outline:3px solid var(--saffron);outline-offset:2px}@keyframes auth-spin{to{transform:rotate(360deg)}}footer{display:flex;justify-content:space-between;gap:20px;padding:26px clamp(22px,5vw,76px);color:#c8dedb;background:var(--ink);font-size:11px;text-transform:uppercase;letter-spacing:.1em}footer b{margin-left:7px;color:var(--saffron)}.feedback-link{color:#fff;font-weight:800;text-decoration-color:var(--saffron);text-decoration-thickness:2px;text-underline-offset:4px}.feedback-link:hover{color:var(--saffron)}.learning-notice,.learning-error{margin:12px 0 0;font-size:12px;font-weight:800}.learning-notice{color:var(--green)}.learning-error{color:#7c241b}.leaderboard-panel{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(260px,.8fr);gap:28px;align-items:start;margin:32px 0 0;padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 28px #0c48550e}.leaderboard-panel h2{margin-top:6px;font-size:32px}.leaderboard-panel p{color:#5d7076;line-height:1.5}.leaderboard-score{min-width:120px;padding:18px;border-radius:16px;color:#fff;background:var(--cobalt);text-align:center}.leaderboard-score strong,.leaderboard-score span{display:block}.leaderboard-score strong{font:800 30px Bricolage Grotesque}.leaderboard-score span{margin-top:3px;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.leaderboard-panel ol{margin:0;padding:0;list-style:none}.leaderboard-panel li{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #dfebe9;font-size:13px}.leaderboard-panel li:last-child{border-bottom:0}.leaderboard-empty,.leaderboard-unavailable{color:#657479;font-style:italic}html[data-mode=watoto]{--cobalt: #1648a8;--turquoise: #009f96;--coral: #ef5548;--saffron: #e9b228}html[data-mode=watoto] body{background:#f5faf8}html[data-mode=watoto] .lesson-panel{border-width:2px;border-radius:30px}html[data-mode=watoto] .phrase{border-width:2px;border-radius:19px}html[data-mode=watoto] .lesson-number{border-radius:50%}@media(max-width:1050px){.kids-club{grid-template-columns:1fr 1fr}.club-title{grid-column:1 / -1}}@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{max-width:780px}.conversation-stage{min-height:350px}.mascot-stage{height:390px}.workspace{grid-template-columns:1fr}.roadmap{position:static}.roadmap nav{grid-template-columns:repeat(2,1fr)}.phrase-list{grid-template-columns:1fr}.kids-world .hero{padding-bottom:44px}}@media(max-width:620px){.site-header{min-height:auto;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px 13px}.brand{margin-right:auto}.brand small{display:block;max-width:190px;white-space:normal;font-size:8px;line-height:1.25}.brand strong{font-size:17px}.brand-mark{width:42px;height:42px}.header-actions{width:100%;gap:7px;flex-wrap:wrap}.language-preferences{order:3;width:100%}.language-preferences label{flex:1}.language-preferences select{width:100%}.mode-switch button{padding:8px 10px}.account-button{padding:8px 11px}main{padding-inline:16px}.hero{min-height:auto;gap:35px;padding-top:48px}h1{font-size:clamp(48px,15vw,68px)}.hero-copy p{font-size:16px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions button{width:100%;min-height:52px}.adult-next-step{margin-top:19px}.conversation-stage{min-height:320px;padding:28px;border-radius:24px}.mascot-stage{height:300px;border-width:4px}.speech-bubble{top:42px;left:28px;max-width:calc(100% - 56px)}.mascot-reward{right:11px;bottom:17px}.progress-card{grid-template-columns:1fr auto;padding:18px}.progress-track{grid-column:1 / -1;grid-row:2}.kids-club{grid-template-columns:1fr}.club-title{grid-column:auto}.kids-world .hero{margin-inline:-16px;padding-inline:16px;border-radius:0 0 26px 26px}.kids-world .hero-copy{text-align:center}.kids-world .hero h1{font-size:clamp(43px,13.2vw,58px)}.kids-world .hero-copy p{margin-inline:auto}.kids-world .kid-reward-line{justify-content:center}.kids-world .mascot-stage{height:340px}.kids-world .kids-club>button{min-height:118px}.roadmap nav{grid-template-columns:1fr}.lesson-kicker{flex-direction:column;gap:5px}.lesson-panel{padding:28px 20px}.can-do{align-items:flex-start;flex-direction:column}.lesson-actions,footer{flex-direction:column}.lesson-actions button{width:100%}.phrase-heading span{display:none}.auth-backdrop{align-items:end;padding:0}.auth-dialog{max-height:92vh;border-radius:24px 24px 0 0;box-shadow:0 -20px 60px #0005}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{font-family:Sora,sans-serif;color:#172b38;background:#f7f3ea;--cobalt:#073b63;--cobalt-deep:#062b49;--turquoise:#007e80;--turquoise-light:#b8ded9;--coral:#b84b3e;--saffron:#d89b24;--green:#176a58;--ink:#172b38;--paper:#fffdf7;--mist:#eef3ef;--line:#d8c8a8}body{background:#f7f3ea}body:before{height:4px;background:var(--saffron)}h1,h2,h3,.brand strong,.brand-mark,.dialogue-bubble strong,.speech-bubble strong,.kids-club button>strong,.adult-next-step strong{font-family:Sora,sans-serif}.site-header{min-height:78px;background:#073b63f7;border-bottom-color:#ffffff24}.site-header:after{height:4px;bottom:-4px;background:repeating-linear-gradient(135deg,var(--turquoise) 0 12px,var(--turquoise) 12px 18px,#fff 18px 20px,var(--saffron) 20px 32px,var(--saffron) 32px 38px,#fff 38px 40px)}.brand-mark{width:44px;height:44px;border-radius:10px;color:var(--cobalt-deep);background:var(--saffron)}.brand-logo{width:34px;height:34px;overflow:visible}.brand-logo .logo-sun{fill:var(--coral)}.brand-logo .logo-sail,.brand-logo .logo-hull{fill:var(--cobalt-deep)}.brand-logo .logo-wave{fill:none;stroke:var(--turquoise);stroke-width:3;stroke-linecap:round}.mode-switch .active{background:var(--turquoise)}.account-button{border-color:#ffffff70}main{max-width:1280px}.hero{min-height:460px}h1{font-size:clamp(46px,5.7vw,78px);line-height:1.02}h1 em{color:var(--cobalt);text-decoration-color:var(--saffron)}.hero-copy p{color:#4b606b}.primary{border-radius:10px;background:var(--cobalt);box-shadow:0 8px 20px #073b6322}.primary:hover{background:var(--cobalt-deep)}.adult-next-step{border-left-color:var(--saffron);background:var(--paper);box-shadow:0 8px 22px #073b6310}.adult-next-step span{color:var(--turquoise)}.conversation-stage{border:1px solid #ffffff24;border-left:6px solid var(--saffron);border-radius:22px;background:var(--cobalt);box-shadow:0 18px 42px #073b6322}.conversation-stage:before{height:0}.stage-label{background:var(--turquoise)}.speaker-two{background:#dbece8}.progress-card{border-color:var(--line);border-radius:16px;background:var(--paper);box-shadow:0 10px 28px #073b630d}.progress-track{background:#e5ded0}.progress-track i{background:var(--turquoise)}.progress-score{background:var(--cobalt)}.workspace{gap:28px}.roadmap{padding:18px;border:1px solid var(--line);border-radius:18px;background:#fbf8f0}.lesson-link.active{border-color:#bba873;background:var(--paper);box-shadow:0 5px 14px #073b6310}.lesson-panel{border-color:var(--line);border-radius:20px;background:var(--paper);box-shadow:0 16px 42px #073b6310}.lesson-panel:before{height:6px;background:repeating-linear-gradient(135deg,var(--turquoise) 0 16px,var(--turquoise) 16px 23px,#fff 23px 25px,var(--saffron) 25px 41px,var(--saffron) 41px 48px,#fff 48px 50px)}.swahili-title,.kids-club button>span{color:var(--turquoise)}.can-do{color:#124b40;background:#e5f1ed}.culture-note{border-color:#dcc999;border-left-color:var(--saffron);background:#fff8e7}.phrase{border-color:#ddd2bb;border-radius:13px;background:#fffefa}.sound{background:var(--cobalt)}.quiz{border-color:#c7d9d5;background:#edf4f1}.next{background:var(--cobalt)}.auth-dialog{border-color:var(--line);border-radius:20px;background:var(--paper)}.auth-dialog:before{background:var(--turquoise)}html[data-mode=watoto]{--cobalt:#073b63;--cobalt-deep:#062b49;--turquoise:#007e80;--coral:#b84b3e;--saffron:#d89b24}html[data-mode=watoto] body{background:#f7f3ea}.kids-world .hero{background:var(--turquoise);border-radius:0 0 30px 30px}.kids-world .hero:after{height:7px;background:repeating-linear-gradient(135deg,var(--cobalt) 0 14px,var(--cobalt) 14px 20px,#fff 20px 22px,var(--saffron) 22px 36px,var(--saffron) 36px 42px,#fff 42px 44px)}.kids-world h1 em{color:#fff;text-decoration-color:var(--saffron)}.kids-world .primary{color:var(--cobalt-deep);background:var(--saffron)}.kids-world .listen-now{border-width:2px}.kids-world .mascot-stage{border-color:var(--saffron);border-radius:38% 38% 22px 22px;box-shadow:0 16px 36px #003d392b}.kids-world .mascot-stage:after{background:repeating-linear-gradient(135deg,var(--turquoise) 0 12px,var(--turquoise) 12px 18px,#fff 18px 20px,var(--saffron) 20px 32px,var(--saffron) 32px 38px,#fff 38px 40px)}.club-title{background:var(--cobalt)}.kids-world .kids-club>button{min-height:142px;border-color:#c8b98f;background:var(--paper);box-shadow:0 7px 18px #073b630d}.kids-world .lesson-panel{border-color:var(--line)}@media(max-width:900px){.roadmap{padding:14px}}@media(max-width:620px){.site-header{padding-block:12px}.kids-world .hero{border-radius:0 0 24px 24px}.kids-world .hero h1{font-size:clamp(42px,12.5vw,56px)}.kids-world .mascot-stage{height:340px}.roadmap{padding:12px}}.account-signout{width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:transparent;font-weight:800}.membership-panel{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.membership-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.membership-heading h3{margin-top:8px;font-size:24px;line-height:1.15}.membership-status{display:inline-block;padding:6px 9px;border-radius:999px;color:#fff;background:var(--cobalt);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.status-active{background:var(--green)}.status-pending{color:var(--ink);background:var(--saffron)}.status-past_due,.status-expired{background:var(--coral)}.status-canceled,.status-free,.status-unavailable{background:#68777c}.membership-close{border:0;padding:7px;color:var(--cobalt);background:transparent;font-size:12px;font-weight:800}.membership-panel>p{color:#52666e;line-height:1.55}.account-mapped{color:var(--green)!important;font-size:12px;font-weight:800}.membership-notice,.membership-warning,.membership-unavailable,.membership-error{margin:12px 0;padding:11px 13px;border-radius:10px;font-size:12px}.membership-notice{color:#165345!important;background:#e3f1ec}.membership-warning{color:#6d4a07!important;background:#fff2cd}.membership-unavailable{color:#4d5d64!important;background:#edf0ef}.membership-error{color:#7c241b!important;background:#fbe4df}.preview-button,.membership-primary{width:100%;min-height:48px;border:0;border-radius:10px;color:#fff;background:var(--turquoise);font-weight:800}.plan-grid{display:grid;gap:12px;margin-top:18px}.plan-card{padding:17px;border:1px solid var(--line);border-radius:14px;background:#fffefa}.plan-card>span{color:var(--turquoise);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.plan-card h4{margin:6px 0;color:var(--ink);font:800 18px Sora,sans-serif}.plan-card p{margin:0 0 13px;color:#5b6b71;font-size:12px;line-height:1.5}.provider-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.provider-options button{min-height:56px;border:1px solid #b9c9c5;border-radius:9px;color:var(--cobalt);background:#fff}.provider-options button:disabled{cursor:not-allowed;opacity:.48}.provider-options strong,.provider-options small{display:block}.provider-options strong{font-size:12px}.provider-options small{margin-top:3px;font-size:9px}.billing-button{width:100%;min-height:45px;margin-top:14px;border:1px solid var(--cobalt);border-radius:10px;color:var(--cobalt);background:#fff;font-weight:800}.server-authority{display:block;margin-top:14px;color:#68787d;line-height:1.45;text-align:center}.parent-boundary{padding:22px;border:2px solid var(--saffron);border-radius:16px;background:#fff9e9;text-align:left}.parent-boundary h3{margin:10px 0;font-size:24px}.parent-boundary p{color:#53666d;line-height:1.55}@media(max-width:620px){.provider-options{grid-template-columns:1fr}.auth-dialog:has(.membership-panel){max-height:94vh}.plan-card{padding:15px}}.phrase.unavailable{cursor:default}.phrase.unavailable:hover{transform:none;border-color:#ddd2bb;box-shadow:none}.recording-pending{flex:0 0 auto;padding:6px 8px;border-radius:999px;color:#68777c;background:#ece8df;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.audio-notice{margin:12px 0 0;color:#7c241b;font-size:12px;font-weight:800}.pronunciation-lab{margin:0 0 70px;padding:clamp(28px,5vw,55px);border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:0 16px 42px #073b6310}.lab-heading{max-width:760px}.lab-heading h2{margin-top:8px;font-size:clamp(34px,4.5vw,55px)}.lab-heading p{color:#52666e;line-height:1.65}.pronunciation-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}.pronunciation-groups article{padding:19px;border:1px solid #d8c8a8;border-radius:15px;background:#fbf8f0}.pronunciation-groups article>span{color:var(--turquoise);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.pronunciation-groups h3{margin:5px 0 14px;font-size:22px}.word-buttons{display:flex;flex-wrap:wrap;gap:8px}.word-buttons button{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #b9c9c5;border-radius:10px;color:var(--ink);background:#fff;font-weight:800}.word-buttons button:hover{color:#fff;border-color:var(--cobalt);background:var(--cobalt)}.word-buttons svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}.word-unavailable{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border:1px dashed #c8c2b6;border-radius:10px;color:#657479;background:#f2efe8;font-weight:800}.word-unavailable small{color:#7a7469;font-size:8px;letter-spacing:.05em;text-transform:uppercase}.audio-credit{margin:20px 0 0;color:#68777c;font-size:11px;line-height:1.55}.audio-credit a{color:var(--cobalt);font-weight:800}@media(max-width:900px){.pronunciation-groups{grid-template-columns:1fr}}@media(max-width:900px){.leaderboard-panel{grid-template-columns:1fr}}@media(max-width:620px){.pronunciation-lab{margin-bottom:35px;padding:25px 19px}}.conversation-stage{padding:0;min-height:0;display:block;background:var(--cobalt-deep)}.conversation-art{display:block;width:100%;height:auto}.conversation-copy{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px;padding:22px}.conversation-copy .stage-label,.conversation-copy .stage-note{grid-column:1/-1}.conversation-copy .stage-label{margin-bottom:0}.conversation-copy .dialogue-bubble{width:100%;min-width:0;overflow-wrap:anywhere}.conversation-copy .speaker-name{display:block;margin-bottom:3px;color:var(--turquoise);font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.conversation-copy .speaker-two{align-self:auto;margin-top:0}.conversation-copy button{margin-top:2px;justify-self:start}.conversation-copy .stage-note{margin-top:0}.picture-match{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:18px 24px;align-items:center;margin:26px 0 30px;padding:20px;border:1px solid #c8b98f;border-radius:18px;background:#fbf8f0}.picture-match-copy{grid-column:1/-1}.picture-match-copy h3{margin:7px 0 0;font-size:22px}.practice-note{display:block;margin-top:5px;color:#657477;font-size:12px;font-weight:700}.lesson-visual-context{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:22px;align-items:center;margin:26px 0 30px;padding:20px;border:1px solid #c8b98f;border-radius:18px;background:#fbf8f0}.lesson-visual-context img{display:block;width:100%;height:auto;border:1px solid #d8c8a8;border-radius:15px}.lesson-visual-context figcaption{display:grid;gap:7px}.lesson-visual-context strong{color:var(--cobalt);font-size:22px}.scene-dialogue{display:grid;gap:10px}.scene-turn{display:grid;gap:3px;padding:11px 13px;border-left:3px solid var(--turquoise);border-radius:0 10px 10px 0;background:#eef7f5}.scene-turn .scene-speaker{color:var(--turquoise);font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.scene-turn strong{font-size:18px}.lesson-visual-context figcaption>span:not(.eyebrow){color:#52656b}.lesson-visual-context small{margin-top:7px;color:#657477;font-weight:700}.picture-match>img{display:block;width:100%;height:auto;border:1px solid #d8c8a8;border-radius:15px;background:#fff}.picture-match-options{display:grid;gap:9px}.picture-match-options button{min-height:48px;padding:10px 14px;border:1px solid #b9c9c5;border-radius:10px;color:var(--cobalt);background:#fff;font-weight:800;text-align:left}.picture-match-options button:hover{color:#fff;border-color:var(--turquoise);background:var(--turquoise)}.picture-match-feedback{grid-column:1/-1;min-height:20px;margin:0;color:var(--cobalt);font-weight:800}.picture-next{grid-column:1/-1;justify-self:start;border:0;color:var(--turquoise);background:transparent;font-weight:800}@media(max-width:620px){.conversation-copy{grid-template-columns:minmax(0,1fr);padding:18px}.conversation-copy .stage-label,.conversation-copy .stage-note{grid-column:1}.conversation-copy .dialogue-bubble{padding:13px 16px}.picture-match,.lesson-visual-context{grid-template-columns:minmax(0,1fr)}.picture-match-copy,.picture-match-feedback,.picture-next{grid-column:1}.picture-match>img,.lesson-visual-context img{max-width:320px;justify-self:center}}footer{flex-wrap:wrap}.footer-partners{flex:1 0 100%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;padding:12px;background:#fff;border-radius:16px;box-sizing:border-box}.footer-partners a{display:flex;max-width:100%;border-radius:8px}.footer-partners img{display:block;max-width:100%;height:auto;object-fit:contain}.footer-partners a:focus-visible{outline:3px solid #833ab4;outline-offset:4px}@media(max-width:420px){.footer-partners{gap:14px}.footer-partners .footer-door{width:170px}}@media(min-width:901px){.roadmap{max-height:calc(100dvh - 128px);overflow-y:auto}.roadmap .lesson-link{scroll-margin-block:12px}}
