@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap&v=1');
:root{--ink:#234b3c;--muted:#747b70;--paper:#faf9f5;--orange:#f57c47;--line:#e4e6dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #f57c47;outline-offset:5px}button{border:0}button[hidden]{display:none}.wrap{max-width:1240px;width:calc(100% - 112px);margin-inline:auto}.site-header{height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-family:Manrope,Arial,sans-serif;font-size:29px;font-weight:800;letter-spacing:-1.4px;display:flex;align-items:center;gap:7px}.brand-mark{width:31px;height:35px;background:var(--ink);color:#fff;border-radius:11px 11px 11px 3px;display:inline-flex;justify-content:center;align-items:center;font-size:29px;transform:rotate(-8deg);position:relative}.brand-mark span{font-size:22px;position:absolute;right:4px;top:0;color:#e4eebd}.brand-period{margin-left:-7px;color:var(--orange)}nav{display:flex;gap:35px;font-size:14px}nav a:hover,.text-link:hover{color:#d96532}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--ink);color:white;border-radius:7px;padding:18px 24px;font-size:14px;font-weight:600;transition:transform .2s,background .2s}.button:hover{background:#32614e;transform:translateY(-2px)}.button span{font-size:21px;line-height:1}.button-small{padding:13px 19px;gap:24px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:35px;padding-block:79px 74px;min-height:630px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px;line-height:1.6}.hero .eyebrow{letter-spacing:1px;font-size:11px;display:flex;align-items:center;gap:8px}.status-dot{width:7px;height:7px;border-radius:50%;background:#79a578}.hero h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(43px,4.6vw,65px);line-height:1.11;font-weight:600;letter-spacing:-3px;margin:23px 0}.hero h1 em{font-family:Georgia,serif;font-weight:400;position:relative}.hero h1 em:after{content:'';position:absolute;bottom:-3px;left:0;width:100%;height:6px;border-top:2px solid var(--orange);border-radius:50%;transform:rotate(-4deg)}.hero-description{color:var(--muted);line-height:1.85;font-size:15px}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:30px}.text-link{font-size:12px;white-space:nowrap}.play{display:inline-flex;width:28px;height:28px;border:1px solid #c9d1c3;border-radius:50%;align-items:center;justify-content:center;font-size:9px;margin-right:7px}.micro-copy{display:flex;gap:17px;font-size:10px;color:var(--muted);margin-top:22px}.hero-art{height:435px;position:relative;display:flex;align-items:center;justify-content:center}.orbit{position:absolute;border:1px solid #dce1ce;width:390px;height:390px;border-radius:50%}.orbit-two{width:450px;height:305px;transform:rotate(-38deg)}.hero-art:before{content:'';width:330px;height:330px;position:absolute;background:#e8edda;border-radius:50%}.word-card{width:318px;height:308px;background:#fffef8;transform:rotate(-6deg);border:1px solid #d8ddcb;box-shadow:10px 16px 0 #dbe4c9;z-index:2;border-radius:14px;padding:25px;position:relative}.card-top{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.3px;font-weight:700}.sound{width:30px;height:30px;background:#f0f3e8;border-radius:50%;font-size:12px}.japanese-word{display:block;font-size:37px;font-weight:600;margin-top:26px;letter-spacing:2px}.romanization{font-size:12px;color:var(--muted);display:block;margin:9px 0 21px}.word-divider{height:1px;background:var(--line)}.word-bottom{margin-top:19px;display:flex;flex-direction:column;gap:8px}.word-bottom strong{font-size:14px;font-weight:500}.word-bottom span{font-size:9px;color:var(--muted)}.word-flower{position:absolute;right:21px;bottom:20px;color:var(--orange);font-size:47px}.floating-note{position:absolute;display:flex;align-items:center;gap:12px;background:#fffef8;padding:14px 18px;box-shadow:0 5px 23px #234b3c0c;border:1px solid #e4e7da;border-radius:10px;z-index:3;font-size:11px}.note-top{top:22px;right:4px;transform:rotate(5deg)}.small-sun{color:var(--orange);font-size:23px}.note-bottom{bottom:35px;left:0;transform:rotate(3deg)}.note-bottom strong,.note-bottom small{display:block;font-size:11px}.note-bottom small{font-size:9px;color:var(--muted);margin-top:5px}.check-round{width:30px;height:30px;background:#eaf0dc;border-radius:50%;display:grid;place-items:center}.art-spark{position:absolute;left:10px;top:36px;font-size:58px;color:var(--orange);transform:rotate(12deg)}.art-star{position:absolute;right:-8px;bottom:82px;font-size:52px}.handwritten{position:absolute;bottom:-16px;right:22px;font-family:Georgia,serif;font-style:italic;font-size:14px;transform:rotate(-4deg);color:#7c8971}.handwritten span{font-size:30px}.benefit-strip{border-block:1px solid var(--line);background:#f1f3e9}.benefits{display:flex;justify-content:space-between;gap:20px;padding-block:25px;font-size:12px}.benefits>span{color:var(--muted);font-size:11px}.benefits strong{font-weight:500}.section{padding-block:77px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:33px;gap:25px}h2{font-family:Manrope,Arial,sans-serif;font-size:33px;font-weight:500;letter-spacing:-1.2px;line-height:1.27;margin:12px 0}p{line-height:1.7}.section-heading>p{font-size:12px;color:var(--muted);margin-bottom:3px}.language-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.language-card{text-align:left;padding:24px 22px 18px;border:1px solid #dee2d3;border-radius:10px;min-height:250px;position:relative;transition:transform .2s,box-shadow .2s}.language-card:hover{transform:translateY(-7px);box-shadow:0 12px 25px #234b3c0c}.english{background:#edf0df}.japanese{background:#f7e8dd}.spanish{background:#f5edcf}.french{background:#e7ecea}.language-symbol{display:block;font-family:Georgia,serif;font-size:52px;letter-spacing:-3px;height:105px;position:relative;padding-top:5px}.language-symbol>span{position:absolute;right:9px;top:0;font-size:32px;letter-spacing:0}.english .language-symbol>span{color:#8caa74}.japanese .language-symbol>span{color:#d78a74;font-size:27px;right:15px;top:16px}.spanish .language-symbol{font-size:41px;padding-top:17px}.spanish .language-symbol>span{color:#d8a04b;right:0;top:0;font-size:31px}.french .language-symbol{font-size:34px;padding-top:22px}.french .language-symbol>span{color:#849f97;right:0}.language-label{display:flex;flex-direction:column;gap:6px}.language-label strong{font-size:18px;font-weight:500}.language-label>span{font-size:10px;color:#69766a}.circle-arrow{position:absolute;right:20px;bottom:63px;border:1px solid #b9c5af;border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-size:17px}.course-tag{display:block;font-size:9px;margin-top:21px;border-top:1px solid #234b3c15;padding-top:13px;color:#7c8175}.under-note{text-align:center;font-size:11px;color:var(--muted);margin:24px 0 0}.practice-section{background:#eef1e6;border-block:1px solid #e2e6d7;padding:65px 0}.practice-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.practice-layout h2{font-size:38px}.practice-layout p{font-size:13px;color:var(--muted)}.practice-detail{display:flex;align-items:center;gap:16px;margin-top:29px}.practice-detail>span{font-family:Georgia,serif;font-style:italic;border:1px solid #bdcbb1;border-radius:50%;padding:10px;font-size:20px}.practice-detail strong,.practice-detail small{display:block;font-size:12px;font-weight:500}.practice-detail small{font-size:10px;color:var(--muted);margin-top:7px}.quiz-card{background:#fffef9;border:1px solid #dbe1cf;border-radius:12px;padding:29px 30px;box-shadow:0 9px 0 #e3e8d8}.quiz-top{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.3px}.progress-track{height:4px;background:#edf0e5;border-radius:5px;margin-top:16px;overflow:hidden}#quiz-progress{width:33.333%;height:100%;background:#88a46a;transition:width .3s}.quiz-card h3{font-size:18px;font-weight:500;line-height:1.6;margin:23px 0 18px}#quiz-options{display:grid;gap:9px}.quiz-option{padding:11px 14px;border:1px solid #e0e4d6;background:transparent;border-radius:6px;text-align:left;font-size:12px;display:flex;gap:13px;align-items:center}.quiz-option:before{content:attr(data-letter);border:1px solid #dce2d1;width:22px;height:22px;border-radius:4px;display:grid;place-items:center;font-size:9px;color:#8a907d}.quiz-option:hover{background:#f3f6e9}.quiz-option.correct{background:#e7efdb;border-color:#7a9e64}.quiz-option.incorrect{background:#fbe7df;border-color:#df9c80}.quiz-option:disabled{cursor:default;color:inherit}.quiz-card #quiz-feedback{font-size:10px;margin:17px 0 0;min-height:18px}.quiz-next{width:100%;margin-top:14px;padding:12px}.center-heading{text-align:center}.center-heading>p:last-child{font-size:12px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px;gap:44px}.steps article{text-align:center;position:relative}.step-icon{width:58px;height:58px;border:1px solid #dae0cd;border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;font-size:29px;background:#f0f3e7}.steps article:nth-child(2) .step-icon{background:#f8eade}.steps article:nth-child(3) .step-icon{background:#f1edda}.step-number{font-size:8px;letter-spacing:1.4px;color:var(--muted)}.steps h3{font-size:18px;font-weight:500;margin:14px 0 9px}.steps p{font-size:11px;color:var(--muted);line-height:1.9}.tools-section{border-top:1px solid var(--line);padding-block:57px 70px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;align-items:center}.tool-intro p:last-child{font-size:12px;color:var(--muted)}.tool-card{text-align:left;background:transparent;padding:0}.tool-visual{display:flex;height:155px;border:1px solid #e0e3d5;border-radius:9px;background:#f0f2e8;margin-bottom:19px;align-items:center;justify-content:center;position:relative;overflow:hidden}.flash-visual>span{background:#fffef8;border:1px solid #dce2ce;border-radius:6px;padding:20px 27px;font-family:Georgia,serif;font-size:23px;transform:rotate(-10deg);box-shadow:0 4px 10px #234b3c08}.flash-visual>span+span{margin-left:-27px;transform:rotate(10deg);background:#e2eacb;font-family:Arial,sans-serif;font-size:19px;margin-top:27px}.timer-visual{background:#f6ece2;font-family:Manrope,Arial,sans-serif;font-size:49px;letter-spacing:2px;padding-bottom:20px}.timer-visual>span{color:#c8b6a4}.timer-visual>small{position:absolute;bottom:26px;font:8px Arial,sans-serif;letter-spacing:2px}.tool-card>strong{display:flex;justify-content:space-between;font-size:16px;font-weight:500}.tool-card>p{font-size:11px;color:var(--muted)}.tool-card:hover .tool-visual{border-color:#8ca777}.final-cta{background:var(--ink);border-radius:13px;text-align:center;color:#fffef5;padding:46px 25px 48px;position:relative;overflow:hidden}.final-cta .eyebrow{color:#ccdbbf;font-size:8px}.final-cta h2{font-size:38px}.final-cta>p:not(.eyebrow){font-size:12px;color:#ced8cc}.button-orange{background:#f58b58;color:#183c2e;margin-top:12px;font-size:12px}.button-orange:hover{background:#ffa779}.cta-flower{position:absolute;left:64px;top:50px;font-size:92px;color:#c4d697;transform:rotate(15deg)}.cta-star{position:absolute;right:70px;bottom:48px;font-size:90px;color:#efaa70}footer{min-height:132px;display:flex;align-items:center;gap:25px}footer .brand{font-size:23px}footer .brand-mark{transform:scale(.8) rotate(-8deg);margin-right:-5px}footer p{font-size:10px;color:var(--muted)}footer>span{margin-left:auto;font-size:10px;color:var(--muted)}.footer-link{background:transparent;color:var(--muted);font-size:10px;padding:5px}dialog{width:min(490px,calc(100% - 32px));max-height:85vh;overflow:auto;border:1px solid #d7dfca;border-radius:15px;background:var(--paper);color:var(--ink);padding:26px;box-shadow:0 30px 120px #122b3c44}dialog::backdrop{background:#153c3066;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.dialog-top button{background:#e9eddf;border-radius:50%;width:30px;height:30px;font-size:23px}.dialog-word{text-align:center;background:#eaf0de;padding:35px 15px;border-radius:9px;margin:20px 0;font-size:37px}.dialog-sub{text-align:center;color:var(--muted);font-size:13px}.dialog-actions{display:flex;gap:12px;justify-content:center;margin-top:20px}.dialog-actions button{flex:1;gap:10px}.button-secondary{background:#e4ead9;color:var(--ink)}.button-secondary:hover{background:#d8e2c8}.timer-display{font-size:75px;letter-spacing:2px;text-align:center;font-variant-numeric:tabular-nums;margin:30px 0}.timer-select{display:flex;justify-content:center;gap:9px}.timer-select button{background:#e6ebdc;border-radius:5px;padding:9px 15px}.timer-select button[aria-pressed=true]{background:var(--ink);color:white}.course-list{display:grid;gap:8px;padding:0;list-style:none}.course-list li{padding:14px;background:#edf0e4;border-radius:6px;display:flex;justify-content:space-between}.course-list li small{color:var(--muted)}.course-disclaimer{font-size:12px;color:var(--muted)}@media(min-width:1500px){.hero{padding-block:95px}.hero h1{font-size:68px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:10px}.hero h1{font-size:52px}.hero-actions{gap:13px}.button{padding:16px}.hero-art{transform:scale(.9)}.language-card{padding-inline:17px}.french .language-symbol{font-size:28px}.practice-layout{gap:45px}.benefits{font-size:11px}.benefits>span{font-size:10px}}@media(max-width:800px){.wrap{width:calc(100% - 40px)}.site-header{height:85px}.brand{font-size:25px}nav{gap:18px;font-size:12px}.site-header>.button{display:none}.hero{grid-template-columns:1fr;padding-block:42px 38px}.hero-copy{text-align:center}.hero .eyebrow,.hero-actions,.micro-copy{justify-content:center}.hero h1{font-size:57px}.hero-art{max-width:460px;width:100%;margin:15px auto 0;height:420px;transform:scale(.94)}.benefits{flex-wrap:wrap;justify-content:center;gap:16px 24px}.benefits>span{width:100%;text-align:center}.section{padding-block:50px}.section-heading{align-items:start}.section-heading h2{font-size:27px}.section-heading>p{font-size:10px;min-width:145px}.language-grid{grid-template-columns:repeat(2,1fr)}.practice-layout{grid-template-columns:1fr;gap:30px}.practice-layout>div:first-child{text-align:center}.practice-detail{justify-content:center}.quiz-card{max-width:470px;width:100%;margin:auto}.steps{gap:18px}.steps h3{font-size:15px}.steps p{font-size:10px}.tools-section{grid-template-columns:1fr 1fr;gap:25px}.tool-intro{grid-column:1/-1;text-align:center}.tool-intro h2 br{display:none}.cta-flower{left:15px;font-size:55px;top:20px}.cta-star{right:15px;font-size:55px;bottom:20px}.final-cta h2{font-size:32px}.final-cta{padding-inline:45px}footer{gap:15px;flex-wrap:wrap;padding-block:26px;min-height:115px}footer p{display:none}}@media(max-width:480px){.wrap{width:calc(100% - 36px)}.site-header{height:78px}.brand{font-size:23px}nav{gap:15px;font-size:11px}.brand-mark{width:26px;height:30px;font-size:25px}.hero h1{font-size:46px;letter-spacing:-2px}.hero-description{font-size:13px}.hero .eyebrow{font-size:9px}.hero-actions{gap:15px;flex-wrap:wrap}.micro-copy{gap:12px;font-size:9px}.hero-art{transform:scale(.86);margin-top:-5px;margin-bottom:-20px;height:405px}.orbit{width:340px;height:340px}.orbit-two{width:395px;height:270px}.note-top{right:-15px;top:28px}.note-bottom{left:-14px}.art-spark{left:-10px}.handwritten{right:0;font-size:12px}.section-heading{display:block}.section-heading>p{margin-top:14px}.language-grid{gap:12px}.language-card{min-height:225px;padding:20px 15px 16px}.language-symbol{font-size:44px;height:88px}.spanish .language-symbol{font-size:34px}.french .language-symbol{font-size:26px}.language-symbol>span{right:0;font-size:25px}.language-label strong{font-size:17px}.language-label>span{font-size:9px}.circle-arrow{right:13px;bottom:59px;width:23px;height:23px}.course-tag{font-size:8px}.practice-layout h2{font-size:32px}.quiz-card{padding:24px 20px}.quiz-card h3{font-size:16px}.center-heading h2{font-size:28px}.steps{grid-template-columns:1fr;gap:30px;margin-top:30px}.steps h3{font-size:19px}.steps p{font-size:12px}.step-icon{margin-bottom:14px}.tools-section{gap:17px;padding-top:35px}.tool-visual{height:130px}.flash-visual>span{font-size:19px;padding:16px}.flash-visual>span+span{font-size:14px;padding:16px 12px}.timer-visual{font-size:34px}.tool-card>strong{font-size:13px}.tool-card>p{font-size:10px}.final-cta{padding:40px 25px}.final-cta h2{font-size:29px}.cta-flower{font-size:34px;left:7px;top:9px}.cta-star{font-size:35px;right:8px;bottom:9px}.final-cta>p:not(.eyebrow){font-size:11px}footer>span{font-size:9px}.dialog-actions .button{font-size:12px;padding:13px 10px}.timer-display{font-size:65px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.unit-grid{display:grid;gap:10px;margin:24px 0}.unit-button{display:flex;align-items:center;gap:13px;text-align:left;background:#edf1e4;border:1px solid #dce3ce;border-radius:8px;padding:15px;width:100%}.unit-button:hover{background:#e1e9d3}.unit-number{font-size:20px;color:#769361}.unit-button>span:nth-child(2){flex:1}.unit-button strong,.unit-button small{display:block}.unit-button strong{font-size:14px;font-weight:600}.unit-button small{font-size:10px;color:var(--muted);margin-top:5px}.lesson-back{background:transparent;padding:0;color:var(--muted);font-size:12px;margin:4px 0 15px}.expanded-words li{align-items:center;gap:15px}.expanded-words li>div{min-width:0;flex:1}.expanded-words strong{display:block;font-size:15px;font-weight:500;overflow-wrap:anywhere}.expanded-words small{display:block;line-height:1.5;margin-top:6px}.expanded-words .sound{flex-shrink:0}.lesson-counter{display:flex;justify-content:space-between;font-size:11px;margin:15px 0}.lesson-progress{width:100%;height:7px;accent-color:#789d62;margin-bottom:20px}.lesson-prompt{font-size:23px;line-height:1.5;font-weight:500;overflow-wrap:anywhere;margin:13px 0 23px}#lesson-options{display:grid;gap:10px}#lesson-options .quiz-option{line-height:1.6;font-size:14px}#lesson-options .quiz-option:before{flex-shrink:0}.lesson-feedback{font-size:12px;color:var(--muted);min-height:42px}.lesson-result{font-size:72px;font-weight:600;margin:20px 0}.lesson-result span{font-size:30px;color:var(--muted)}.dialog-word{overflow-wrap:anywhere;font-size:clamp(22px,5vw,37px)}.dialog-actions{flex-wrap:wrap}.dialog-actions .button{min-width:95px}.course-tag{font-size:9px}@media(max-width:480px){.course-tag{font-size:8px}.lesson-prompt{font-size:20px}.expanded-words strong{font-size:14px}}

