:root{--paper:#f8f7f2;--ink:#202321;--muted:#707570;--green:#1e7358;--green-dark:#174f40;--lime:#d2ed79;--line:#dedfd7;--white:#fffefa;--display:'Plus Jakarta Sans',sans-serif;--body:'DM Sans',sans-serif;--page:min(1240px,calc(100% - 96px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--green);outline-offset:4px}.topbar{height:84px;max-width:1440px;padding:0 6.7%;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(32,35,33,.09)}.brand{display:inline-flex;align-items:center;gap:10px;font:800 19px var(--display);letter-spacing:-1px}.brand-mark{width:30px;height:30px;border-radius:9px;background:var(--green);color:white;display:grid;place-items:center;font:700 18px var(--body);letter-spacing:0}.topbar nav{display:flex;align-items:center;gap:36px;font-size:12px;font-weight:600}.topbar nav>a:not(.nav-cta){color:#555c56}.nav-cta{padding:12px 16px;border:1px solid #cfd1c8;border-radius:4px}.nav-cta span{margin-left:12px;color:var(--green)}.hero{max-width:1440px;margin:auto;min-height:620px;padding:80px 6.7% 88px;display:grid;grid-template-columns:1fr .92fr;align-items:center;position:relative;overflow:hidden}.hero-copy{max-width:570px;position:relative;z-index:2}.eyebrow,.section-kicker{font-size:10px;font-weight:700;letter-spacing:1.7px;color:var(--muted)}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 28px}.eyebrow-dot{height:7px;width:7px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px #1e73581c}.hero h1,.intro h2,.journey h2,.closing h2{font:700 clamp(43px,6vw,76px)/1.11 var(--display);letter-spacing:-4.5px;margin:0}.hero h1 .accent{color:var(--green)}.hero-description{max-width:445px;color:#686e68;font-size:15px;line-height:1.8;margin:22px 0 28px}.hero-actions{display:flex;align-items:center;gap:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:50px;padding:0 20px;border-radius:4px;font-weight:700;font-size:12px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:white}.button-primary:hover{background:var(--green-dark)}.play-icon{font-size:10px}.text-link,.underlined-link{font-size:12px;font-weight:700}.text-link span{margin-left:7px;color:var(--green)}.social-proof{display:flex;align-items:center;gap:12px;margin-top:44px;font-size:11px;color:#707570}.social-proof strong{color:var(--ink)}.social-proof i{font-style:normal;padding:0 5px;color:#b1b5ad}.stars{color:#e6a73b;letter-spacing:2px;font-size:13px}.hero-art{position:relative;height:460px;max-width:510px;width:100%;justify-self:end;background:#e9eee2;border-radius:2px;overflow:hidden;display:grid;place-items:center}.hero-art:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 52% 45%,#f9f5e9 0 22%,transparent 22.2%),linear-gradient(145deg,transparent 56%,#dce7d6 56%)}.sun{position:absolute;width:243px;height:243px;background:var(--lime);border-radius:50%;top:76px;left:50%;transform:translateX(-50%);opacity:.83}.orbit{position:absolute;border:1px solid rgba(30,115,88,.2);border-radius:50%;transform:rotate(-30deg)}.orbit-one{width:410px;height:178px}.orbit-two{width:355px;height:250px;transform:rotate(56deg)}.hero-kanji{position:relative;z-index:1;color:var(--green);font:700 192px/1 var(--body);text-shadow:5px 8px 0 rgba(30,115,88,.08);margin-top:-12px}.floating-note{position:absolute;z-index:2;display:flex;align-items:center;gap:11px;padding:12px 14px;background:#fffefa;box-shadow:0 10px 35px #263c291a;border:1px solid #e7e8df}.note-one{left:18px;top:101px}.note-two{right:15px;bottom:100px}.note-symbol{height:34px;width:34px;display:grid;place-items:center;background:#f2e3d7;color:#ba6448;border-radius:50%;font-size:20px}.floating-note small,.floating-note b{display:block}.floating-note small{font-size:9px;color:#8b9088;margin-bottom:4px}.floating-note b{font:700 10px var(--display)}.level-badge{width:34px;height:34px;border-radius:50%;background:var(--green);color:white;display:grid;place-items:center;font:700 11px var(--display)}.vertical-label{position:absolute;right:17px;top:23px;writing-mode:vertical-rl;color:#8d988b;font-size:8px;letter-spacing:2px}.art-caption{position:absolute;bottom:18px;left:21px;right:21px;display:flex;justify-content:space-between;color:#778277;font-size:8px;letter-spacing:1.2px}.hero-index{position:absolute;left:6.7%;bottom:27px;color:#a0a49d;font:600 9px var(--display);letter-spacing:2px}.hero-index em{font-style:normal;color:var(--green)}.intro{max-width:1240px;margin:auto;padding:82px 0 42px;border-top:1px solid var(--line)}.section-kicker{display:flex;gap:13px;align-items:center}.section-kicker span:first-child{color:var(--green)}.intro-content{margin:38px 0 0 12%;display:grid;grid-template-columns:1.1fr .8fr;align-items:end;gap:80px}.intro h2{font-size:clamp(34px,4.2vw,53px);letter-spacing:-2.8px}.intro h2 span{color:#9a9e95}.intro-content>div{max-width:365px}.intro-content p{font-size:13px;line-height:1.9;color:#737971;margin:0 0 20px}.underlined-link{display:inline-flex;gap:16px;align-items:center;border-bottom:1px solid #9da49a;padding-bottom:8px}.underlined-link span{color:var(--green)}.feature-grid{max-width:1240px;margin:0 auto;padding:37px 0 100px;display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.feature-card{min-height:352px;padding:19px 20px 17px;position:relative;display:flex;flex-direction:column;overflow:hidden}.card-hiragana{background:#efe9db}.card-kanji{background:#e5eee5}.card-grammar{background:#eee8e4}.card-level{background:#e9e9df}.card-top,.card-footer{display:flex;justify-content:space-between;align-items:center;font-size:8px;font-weight:700;letter-spacing:1px;color:#777c73}.card-arrow{font-size:17px;color:#777c73}.glyph{flex:1;display:grid;place-items:center}.hiragana-glyph{font-size:108px;color:#b8775a;transform:rotate(-8deg)}.kanji-glyph{font-size:60px;color:#42725c;letter-spacing:9px}.feature-card h3{font:700 16px var(--display);letter-spacing:-.5px;margin:5px 0 8px}.feature-card p{font-size:11px;line-height:1.7;color:#71776f;margin:0 0 22px;max-width:230px}.card-footer{justify-content:flex-start;gap:8px;border-top:1px solid #20232120;padding-top:12px}.card-footer span{color:#a8aaa3}.grammar-art{flex:1;display:flex;align-items:center;justify-content:center;gap:9px;color:#765b53;font-size:24px}.grammar-art b{font-size:20px;color:#b86e50}.grammar-art i{font-style:normal}.level-stack{flex:1;display:flex;align-items:center;justify-content:center;gap:8px}.level-stack span{width:36px;height:36px;display:grid;place-items:center;border:1px solid #b8bcad;border-radius:50%;font:700 10px var(--display);color:var(--green)}.level-stack span:nth-child(2n){transform:translateY(17px);background:#f6f5ed}.level-stack span:last-child{background:var(--green);color:white;border-color:var(--green)}.journey{background:var(--green-dark);color:#f8f7f2;min-height:475px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;padding:74px max(6.7%,calc((100% - 1240px)/2));position:relative}.journey-copy{position:relative;z-index:2;max-width:490px}.light{color:#becdc0}.light span:first-child{color:var(--lime)}.journey h2{font-size:clamp(42px,5vw,64px);letter-spacing:-3.5px;margin:41px 0 18px}.journey h2 em{font-style:normal;color:var(--lime)}.journey-copy>p{color:#c3d0c6;max-width:385px;font-size:13px;line-height:1.8;margin:0 0 25px}.button-light{background:var(--lime);color:var(--green-dark)}.journey-visual{position:relative;min-height:340px}.journey-circle{position:absolute;border-radius:50%;top:50%;left:52%;transform:translate(-50%,-50%)}.circle-back{width:320px;height:320px;border:1px solid #b7d19b63}.circle-front{width:238px;height:238px;background:#d2ed79;color:var(--green-dark);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 18px 55px #0c2d2433}.circle-kanji{font-size:106px;line-height:1;font-weight:500}.circle-caption{font-size:8px;text-align:center;letter-spacing:1.3px;line-height:1.7;margin-top:12px}.journey-stamp{position:absolute;z-index:2;right:4%;top:13%;width:72px;height:72px;border:1px solid #d2ed79;border-radius:50%;display:grid;place-content:center;text-align:center;color:var(--lime);font:700 9px/1.35 var(--display);letter-spacing:1px;transform:rotate(14deg)}.journey-line{position:absolute;top:50%;left:0;right:-12%;height:1px;background:#d2ed7940;transform:rotate(-25deg)}.closing{text-align:center;padding:105px 24px 100px;position:relative;overflow:hidden}.closing:before,.closing:after{content:"";position:absolute;width:220px;height:220px;border:1px solid #dfe1d6;border-radius:50%;top:50%;transform:translateY(-50%);z-index:-1}.closing:before{left:-110px}.closing:after{right:-110px}.closing-jp{color:var(--green);font-size:13px;letter-spacing:2px;margin:0 0 17px}.closing h2{font-size:clamp(42px,6vw,67px);letter-spacing:-3.5px;margin-bottom:28px}.closing h2 span{color:var(--green)}.closing-note{font-size:11px;color:#838880;margin:18px 0 0}footer{max-width:1440px;margin:auto;min-height:78px;padding:15px 6.7%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:#878c84;font-size:10px}footer .brand{color:var(--ink);font-size:16px}footer .brand-mark{width:25px;height:25px;font-size:15px}footer>a:last-child{color:var(--green);font-weight:700}
@media(max-width:900px){:root{--page:calc(100% - 48px)}.topbar{padding:0 24px}.topbar nav{gap:18px}.hero{padding:60px 24px 77px;min-height:550px;grid-template-columns:1fr .82fr}.hero-art{height:390px}.hero-kanji{font-size:155px}.floating-note{transform:scale(.88)}.note-one{left:4px}.note-two{right:2px}.hero-index{left:24px}.intro,.feature-grid{margin-left:24px;margin-right:24px}.intro-content{margin-left:5%;gap:34px}.feature-grid{grid-template-columns:repeat(2,1fr);padding-bottom:75px}.feature-card{min-height:320px}.journey{padding-left:24px;padding-right:24px}.journey-visual{transform:scale(.88)}}
@media(max-width:620px){.topbar{height:68px;padding:0 20px}.topbar nav>a:not(.nav-cta){display:none}.topbar nav{gap:0}.nav-cta{font-size:10px;padding:10px 12px}.brand{font-size:17px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:54px 20px 62px;gap:35px}.hero h1{font-size:48px;letter-spacing:-3.6px}.hero-description{font-size:13px;margin:17px 0 22px}.hero-actions{gap:15px;flex-wrap:wrap}.button{font-size:11px;padding:0 15px;min-height:46px}.text-link{font-size:11px}.social-proof{margin-top:28px;font-size:10px}.hero-art{height:350px;width:100%;max-width:none;justify-self:auto}.hero-kanji{font-size:152px}.sun{width:200px;height:200px;top:65px}.orbit-one{width:320px;height:150px}.orbit-two{width:280px;height:220px}.note-one{top:65px;left:0}.note-two{bottom:73px;right:0}.hero-index{display:none}.intro{margin:0 20px;padding:60px 0 25px}.intro-content{margin:30px 0 0;display:block}.intro h2{font-size:38px;letter-spacing:-2.5px}.intro-content>div{margin-top:18px}.feature-grid{margin:0 20px;gap:9px;padding:25px 0 62px}.feature-card{min-height:300px;padding:14px 13px}.feature-card h3{font-size:14px}.feature-card p{font-size:10px}.card-top,.card-footer{font-size:7px;letter-spacing:.7px}.hiragana-glyph{font-size:84px}.kanji-glyph{font-size:42px}.level-stack{gap:4px}.level-stack span{height:29px;width:29px;font-size:8px}.grammar-art{font-size:18px;gap:5px}.journey{display:block;padding:57px 20px 25px}.journey h2{font-size:47px;letter-spacing:-3px;margin:32px 0 14px}.journey-copy>p{font-size:12px}.journey-visual{min-height:300px;margin-top:15px;transform:none}.circle-back{width:270px;height:270px}.circle-front{width:205px;height:205px}.circle-kanji{font-size:85px}.journey-stamp{right:10%;top:9%}.closing{padding:78px 20px}.closing h2{font-size:46px;letter-spacing:-2.7px}footer{padding:16px 20px;gap:13px;flex-wrap:wrap;font-size:9px}footer>span{order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
