@font-face{font-family:Kufi;src:url('./noto-kufi.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Yuanti;src:url('./yuanti-light.woff2') format('woff2');font-weight:300;font-display:swap}
@font-face{font-family:Century;src:url('./century.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--navy:#233446;--orange:#e67e22;--paper:#faf9f7;--ink:#183349;--header-height:92px;--masthead-height:clamp(580px,41.667vw,680px);--body-font:Kufi,sans-serif;color-scheme:light;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body-font);font-size:14px;line-height:1.9;-webkit-font-smoothing:antialiased}html[lang=zh-Hans]{--body-font:Yuanti,'Yuanti SC','PingFang SC',sans-serif}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}img{display:block;max-width:100%}.icon{width:24px;height:24px;flex:none}a:focus-visible,button:focus-visible{outline:2px solid #f6a858;outline-offset:7px}a:hover{color:var(--orange)}.shell{width:min(1440px,calc(100% - 96px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;inset-inline-start:20px;top:-100px;z-index:20;background:#fff;color:var(--navy);padding:10px 20px;border-radius:5px}.skip-link:focus{top:10px}
.masthead{position:relative;height:var(--masthead-height);background:#11283a;color:#f7f7f6;overflow:hidden;isolation:isolate}.ambient{position:absolute;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at 24% 22%,#3b566957,transparent 47%),radial-gradient(ellipse at 68% 55%,#102434 10%,transparent 68%),linear-gradient(125deg,#163044,#0c2233 70%,#132c40)}.ambient::after{content:'';position:absolute;inset:74% -15% -20%;background:repeating-linear-gradient(178deg,#4d6a7900 0px,#93afbf0a 4px,#233a4900 12px);transform:perspective(300px) rotateX(24deg);filter:blur(3px)}html[dir=ltr] .ambient{transform:scaleX(-1)}
.site-header{position:relative;z-index:5;height:var(--header-height)}.header-inner{height:100%;display:flex;align-items:center;gap:48px}.brand{display:block;flex-shrink:0}.header-brand{width:180px;height:66px}.brand img{width:100%;height:100%;object-fit:contain;object-position:center}.header-nav{display:flex;align-items:center;gap:34px;flex:1;font-size:14px;line-height:24px;white-space:nowrap}.header-nav a{display:flex;align-items:center;gap:8px}.header-nav .icon{width:13px;height:13px}.beta-link{border-inline-start:1px solid #afbbc75e;padding-inline-start:32px}.header-actions{display:flex;align-items:center;gap:12px;margin-inline-start:auto}.language-switch{display:flex;align-items:center;gap:9px;font-size:16px;min-height:44px;white-space:nowrap}.language-switch[lang=zh-Hans]{font-family:Yuanti,sans-serif;font-size:19px}.language-switch[lang=ar]{font-family:Kufi,sans-serif;font-size:14px}.language-switch .icon{width:20px;height:20px}.menu-button{display:none;color:#fff;border:0;background:transparent;width:42px;height:42px;padding:9px}
.hero{position:relative;height:calc(var(--masthead-height) - var(--header-height))}.hero-inner{height:100%;display:flex;align-items:flex-start;position:relative;z-index:2;pointer-events:none}.hero-copy{width:38%;padding-block-start:34px;pointer-events:auto}.hero-copy h1{font-size:clamp(42px,4.3vw,66px);font-weight:650;line-height:1.38;letter-spacing:-1.6px;min-height:2.76em}.hero-copy h1 span{display:block;white-space:nowrap}.hero-intro{font-size:15px;line-height:1.9;margin-top:18px;min-height:57px;max-width:420px;color:#f1f2f4}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:53px;padding:11px 24px;border-radius:10px;background:linear-gradient(110deg,#e67714,#ef8624);color:#fff;font-size:16px;line-height:1.8;box-shadow:0 2px 0 #ffbf631f inset,0 7px 30px #03131d1a;transition:background .2s,box-shadow .2s,transform .2s}.primary-button:hover,.primary-button:active,.primary-button:focus-visible{color:#fff;background:#ed892f;box-shadow:0 0 24px #ef862428}.primary-button:active{transform:translateY(1px)}.primary-button .icon{width:22px;height:22px}.hello{display:flex;align-items:center;gap:22px;margin-top:28px;min-height:72px;direction:ltr;justify-content:flex-end}.hello-chinese{display:flex;flex-direction:column;align-items:center;font:300 31px/1.3 Yuanti,'Yuanti SC',sans-serif}.hello-pinyin{font:400 20px/1.4 Century,sans-serif;letter-spacing:.03em}.hello-divider{height:44px;width:1px;background:#eff5fc66}.hello-arabic{font:400 19px/1.6 Kufi,sans-serif}.hero-art{position:absolute;inset-inline-end:-36px;bottom:-36px;width:69%;max-width:1130px;aspect-ratio:1738/905;isolation:isolate}.stage{position:absolute;inset:0;container-type:inline-size;direction:ltr}.stage-image{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 12px 10px #0003)}.tree-wrap{position:absolute;inset-inline-end:-6%;bottom:20%;width:41%;z-index:-1;transform-origin:center bottom}.tree{width:100%;height:auto;filter:blur(1.7px) brightness(.74);opacity:.9;transform-origin:43% 94%;animation:tree-breathe 11s ease-in-out infinite alternate}.tone{--center:.2186;position:absolute;left:calc(var(--center)*100% - 8.75%);top:11%;width:17.5%;height:54%;padding:0;border:0;background:transparent;color:#19354b;border-radius:8px;cursor:pointer}.tone-2{--center:.4062}.tone-3{--center:.5984}.tone-4{--center:.7883}.tone-curve{position:absolute;inset:0 0 auto;width:100%;overflow:visible;filter:drop-shadow(0 2px 1px #172d3966)}.tone-track{stroke-width:5;fill:none;stroke-linecap:round}.tone-ball{filter:drop-shadow(0 1px 1px #a4531240)}.pinyin{position:absolute;top:63%;left:50%;transform:translate(-50%,-50%);display:flex;font:400 7.2cqw/1 Century,'Century Gothic',sans-serif;letter-spacing:-.035em;white-space:nowrap}.vowel{position:relative}.tone-accent{position:absolute;top:-.19em;left:20%;width:67%;height:.33em;overflow:visible}.tone-accent path{fill:none;stroke:currentColor;stroke-width:7.5;stroke-linecap:round;stroke-linejoin:round}.tone:focus-visible{outline-offset:-2px;outline-color:#f0a342aa}.tone:hover .pinyin{color:#213d52}html[dir=ltr] .stage-image,html[dir=ltr] .tree-wrap{transform:scaleX(-1)}html[dir=ltr] .tone-1{--center:.2117}html[dir=ltr] .tone-2{--center:.4016}html[dir=ltr] .tone-3{--center:.5938}html[dir=ltr] .tone-4{--center:.7814}html[dir=ltr] .hello{justify-content:flex-start}html[lang=zh-Hans] .header-nav{font-size:19px}html[lang=zh-Hans] .hero-copy h1{font-weight:300;letter-spacing:.01em}html[lang=zh-Hans] .hero-intro{font-size:21px}html[lang=zh-Hans] .primary-button{font-size:21px}
.tools-section{padding-block:28px 30px;background:var(--paper);position:relative;z-index:3}.tools-heading{height:84px}.tools-heading h2{font-size:25px;font-weight:650;line-height:1.7}.tools-heading p{font-size:13px;line-height:1.9;margin-top:4px;color:#3e5870}.tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:15px 4px}.tool-card{padding-inline:30px;border-inline-start:1px solid #23344620;display:grid;grid-template-rows:39px 39px minmax(65px,1fr) minmax(27px,auto);align-items:start;min-width:0;transition:color .18s}.tool-card:first-child{padding-inline-start:0;border:0}.tool-card:last-child{padding-inline-end:0}.tool-card>.icon{color:var(--orange);width:32px;height:32px}.tool-card h3{font-size:20px;font-weight:650;line-height:1.8}.tool-card p{font-size:14px;line-height:1.95;color:#354e65;max-width:270px}.tool-link{display:flex;align-items:center;gap:9px;font-size:14px;color:#d96a12}.tool-link .icon{width:19px;height:19px;transition:transform .2s}html[dir=rtl] .tool-link .icon{transform:scaleX(-1)}.tool-card:hover{color:#bf5b0e}.tool-card:hover .tool-link{gap:14px}html[lang=zh-Hans] .tools-heading h2{font-size:31px;font-weight:300}html[lang=zh-Hans] .tools-heading p{font-size:18px}html[lang=zh-Hans] .tool-card h3{font-size:25px;font-weight:300}html[lang=zh-Hans] .tool-card p{font-size:19px;line-height:1.55}html[lang=zh-Hans] .tool-link{font-size:20px}.mountains{height:116px;background:#faf9f7 url('./mountains.webp') center 66%/cover no-repeat;mask-image:linear-gradient(to bottom,transparent,#000 22%)}
.site-footer{position:relative;background:radial-gradient(ellipse at 60% 0%,#28445966,transparent 65%),#20374a;color:#f4f5f6}.footer-inner{padding-block:43px 0}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;column-gap:60px;min-height:196px}.footer-brand-block{padding-inline-start:90px}.footer-brand{width:190px;height:70px;margin-block:-5px 13px}.footer-motto{font-size:13px;line-height:1.95;color:#d5e0e9;font-weight:400}.footer-motto span{display:block}.footer-tools{display:flex;flex-direction:column;align-items:flex-start}.site-footer h2{font-size:14px;font-weight:500;line-height:24px;margin:0 0 14px;color:#f89a49}.footer-tools>a{font-size:13px;line-height:28px}.footer-contact{display:flex;flex-direction:column;align-items:flex-start}.email{font:400 14px/28px Century,Arial,sans-serif;white-space:nowrap}.footer-beta{font-size:13px;margin-top:20px;padding-top:12px;border-top:1px solid #9eafbd70;line-height:28px}.footer-emblem{position:absolute;inset-inline-start:0;top:43px;inline-size:calc(max(0px,(100vw - 1440px)/2) + 115px);height:78px;background:#e6eef4;border-start-end-radius:45px;border-end-end-radius:45px;display:flex;align-items:center;justify-content:flex-end;padding-inline-end:18px}.footer-emblem img{width:52px;height:52px;object-fit:contain}.footer-meta{border-top:1px solid #c2d2df33;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px}.footer-meta small{font-size:11px;line-height:1.8}.motion-toggle{display:flex;align-items:center;gap:7px;font-size:11px;color:#cdd9e2;background:transparent;border:0;padding:8px 0;min-height:40px}.motion-toggle .icon{width:17px;height:17px}.motion-toggle:hover{color:#fff}html[lang=zh-Hans] .footer-motto{font-size:17px;font-weight:300;line-height:1.5}html[lang=zh-Hans] .site-footer h2{font-size:19px;font-weight:300}html[lang=zh-Hans] .footer-tools>a,html[lang=zh-Hans] .footer-beta{font-size:17px}html[lang=zh-Hans] .footer-meta small,html[lang=zh-Hans] .motion-toggle{font-size:14px}
@keyframes tree-breathe{from{transform:rotate(-.6deg) skewX(-.25deg)}to{transform:rotate(.7deg) skewX(.35deg)}}
.motion-paused .tree{animation-play-state:paused}
@media(min-width:1600px){.hero-copy{padding-block-start:45px}}
@media(max-width:1200px){.header-inner{gap:30px}.header-nav{gap:20px;font-size:12px}.beta-link{padding-inline-start:20px}.header-brand{width:150px}.hero-copy{width:39%;padding-block-start:42px}.hero-copy h1{font-size:46px}.hero-intro{font-size:13px}.hero-art{width:72%;inset-inline-end:-55px;bottom:-10px}.primary-button{font-size:14px;padding-inline:19px;min-height:50px}.hello{margin-top:24px}.tool-card{padding-inline:20px}.tool-card h3{font-size:18px}.tool-card p{font-size:12px}.footer-grid{gap:34px}.footer-brand{width:164px;height:64px}.footer-brand-block{padding-inline-start:85px}.footer-emblem{inline-size:112px}html[lang=zh-Hans] .header-nav{font-size:17px}html[lang=zh-Hans] .hero-intro{font-size:18px}html[lang=zh-Hans] .tool-card p{font-size:17px}}
@media(max-width:980px){:root{--header-height:80px;--masthead-height:600px}.shell{width:calc(100% - 56px)}.header-inner{gap:20px}.header-brand{width:146px;height:58px}.header-nav{gap:15px;font-size:11px}.beta-link{padding-inline-start:15px}.language-switch{gap:6px}.language-switch .icon{width:17px}.hero-copy{padding-block-start:48px;width:42%}.hero-copy h1{font-size:39px}.hero-intro{max-width:285px}.hero-art{width:73%;bottom:8px;inset-inline-end:-60px}.hello{gap:17px}.hello-chinese{font-size:27px}.hello-arabic{font-size:16px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:35px}.tool-card{padding-inline:28px;grid-template-rows:39px 39px minmax(59px,1fr) minmax(27px,auto)}.tool-card:nth-child(3){padding-inline-start:0;border-inline-start:0}.tool-card h3{font-size:20px}.tool-card p{font-size:14px}.footer-grid{gap:25px;grid-template-columns:1.15fr .8fr 1fr}.footer-brand-block{padding-inline-start:57px}.footer-brand{width:146px;height:62px}.footer-motto{font-size:11px}.footer-emblem{inline-size:78px;height:66px;padding-inline-end:11px}.footer-emblem img{width:45px;height:45px}.email{font-size:12px}.footer-tools>a,.footer-beta{font-size:12px}html[lang=zh-Hans] .header-nav{font-size:15px}html[lang=zh-Hans] .footer-motto{font-size:15px}}
@media(max-width:760px){:root{--header-height:76px;--masthead-height:800px}.shell{width:calc(100% - 40px)}.header-inner{justify-content:space-between;gap:14px}.header-brand{width:134px;height:54px}.header-actions{margin-inline-start:auto}.menu-button{display:block}.header-nav{display:none;position:absolute;top:70px;inset-inline:20px;flex-direction:column;align-items:stretch;padding:18px 22px;background:#20384bf7;border:1px solid #ffffff21;border-radius:12px;box-shadow:0 10px 24px #00152266;gap:0;font-size:14px}.header-nav.is-open{display:flex}.header-nav a{min-height:44px}.beta-link{border-inline:0;border-top:1px solid #ffffff21;padding:8px 0 0;margin-top:8px}.language-switch{font-size:13px;min-height:44px}.language-switch[lang=zh-Hans]{font-size:17px}.language-switch[lang=ar]{font-size:12px}.hero-copy{width:100%;padding-top:23px}.hero-copy h1{font-size:40px;line-height:1.4;min-height:112px;letter-spacing:-1px}.hero-intro{font-size:13px;max-width:100%;min-height:48px;line-height:1.85;margin-top:14px}.primary-button{min-height:48px;font-size:14px;padding:10px 20px}.hello{margin-top:21px;min-height:62px}.hello-chinese{font-size:27px}.hello-pinyin{font-size:17px}.hello-arabic{font-size:17px}.hello-divider{height:37px}.hero-art{width:108%;max-width:none;inset-inline-end:-4%;bottom:1px}.tree-wrap{width:36%;bottom:22%;inset-inline-end:-1%}.tree{filter:blur(1px) brightness(.66)}.tools-section{padding-block:25px}.tools-heading{height:101px}.tools-heading h2{font-size:22px}.tools-heading p{font-size:12px;max-width:300px}.tool-grid{gap:25px 0;padding-top:10px}.tool-card{padding-inline:18px;grid-template-rows:38px 41px minmax(82px,1fr) minmax(27px,auto)}.tool-card h3{font-size:16px;line-height:1.8;white-space:nowrap}.tool-card p{font-size:12px;line-height:1.9}.tool-link{font-size:12px}.tool-card>.icon{width:30px;height:30px}.mountains{height:94px;background-size:auto 190px;background-position:center 66%}.footer-inner{padding-top:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:26px 20px;min-height:370px}.footer-brand-block{grid-column:1/-1;min-height:132px;padding-inline-start:69px}.footer-brand{width:158px;height:62px;margin-bottom:7px}.footer-motto{font-size:12px;line-height:1.75}.footer-emblem{top:32px;inline-size:78px;height:65px}.footer-emblem img{width:43px;height:43px}.site-footer h2{font-size:12px}.footer-tools>a,.footer-beta{font-size:12px;line-height:27px}.footer-contact .email{font-size:10.5px;line-height:28px}.footer-beta{margin-top:14px;padding-top:10px}.footer-meta{min-height:70px;gap:10px}.footer-meta small{font-size:9px;max-width:210px}.motion-toggle{font-size:10px;gap:4px}.motion-toggle .icon{width:15px}html[lang=zh-Hans] .hero-copy h1{font-size:40px}html[lang=zh-Hans] .hero-intro{font-size:19px}html[lang=zh-Hans] .primary-button{font-size:20px}html[lang=zh-Hans] .tools-heading h2{font-size:28px}html[lang=zh-Hans] .tools-heading p{font-size:17px}html[lang=zh-Hans] .tool-card h3{font-size:22px}html[lang=zh-Hans] .tool-card p{font-size:17px;line-height:1.55}html[lang=zh-Hans] .tool-link{font-size:18px}html[lang=zh-Hans] .footer-motto{font-size:16px;line-height:1.4}html[lang=zh-Hans] .footer-meta small{font-size:12px}html[lang=zh-Hans] .motion-toggle{font-size:12px}}
@media(max-width:380px){:root{--masthead-height:766px}.shell{width:calc(100% - 32px)}.hero-copy h1,html[lang=zh-Hans] .hero-copy h1{font-size:36px;min-height:101px}.header-brand{width:119px}.header-actions{gap:4px}.tool-card{padding-inline:11px}.tool-card h3{font-size:14px}html[lang=zh-Hans] .tool-card h3{font-size:20px}.footer-contact .email{font-size:9px}.footer-meta small{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tree{animation:none!important}*,*::before,*::after{transition:none!important}.motion-toggle{display:none}}
/* Identical action and greeting geometry in both writing directions. */
.primary-button{width:248px;height:56px;min-height:56px;padding-block:0;line-height:1.4}
@media(max-width:1200px){.primary-button{width:226px;height:52px;min-height:52px}}
@media(max-width:760px){.primary-button{width:220px;height:48px;min-height:48px}}
.hero-copy{display:flex;flex-direction:column;align-items:flex-start}
.hello{align-self:stretch}
@media(max-width:760px){:root{--masthead-height:calc(450px + 56.25vw)}}
@media(max-width:380px){:root{--masthead-height:calc(430px + 56.25vw)}}
@media(max-width:980px){.hero-intro{height:76px;min-height:76px}}
.site-header{position:absolute;inset-block-start:0;inset-inline:0;color:#f7f7f6}
.masthead{padding-block-start:var(--header-height)}
@media(min-width:1201px){.footer-emblem{inline-size:calc(max(48px,(100vw - 1440px)/2) + 70px)}}

/* Upcoming individual/school lessons are information, without a link or hover action. */
.tool-card-upcoming{cursor:default}.tool-card-upcoming:hover{color:inherit}.tool-card-upcoming h3{display:flex;align-items:center;gap:8px;flex-wrap:wrap;white-space:normal}.coming-soon{font-size:10px;font-weight:400;line-height:1.8;color:#607587;white-space:nowrap}.footer-coming-soon{display:flex;align-items:center;gap:8px;font-size:13px;line-height:28px}.footer-coming-soon small{font-size:10px;color:#b7cbd7}html[lang=zh-Hans] .coming-soon,html[lang=zh-Hans] .footer-coming-soon small{font-size:13px}html[lang=zh-Hans] .footer-coming-soon{font-size:17px}@media(max-width:980px){.footer-coming-soon{font-size:12px}}

.tool-card-upcoming{grid-template-rows:39px minmax(39px,auto) minmax(65px,1fr) minmax(27px,auto)}.coming-soon{color:inherit;opacity:.75}.footer-coming-soon small{color:inherit;opacity:.75}@media(max-width:760px){.tool-card-upcoming{grid-template-rows:38px minmax(41px,auto) minmax(82px,1fr) minmax(27px,auto)}}@media(max-width:380px){html[lang=zh-Hans] .tool-card-upcoming h3{gap:4px}html[lang=zh-Hans] .coming-soon{font-size:11px}}
