@font-face{font-family:Jost;src:url(/fonts/jost-regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Jost;src:url(/fonts/jost-medium.woff2) format("woff2");font-weight:500 700;font-display:swap}@font-face{font-family:Zen;src:url(/fonts/zen-mark.woff2) format("woff2");font-display:swap}:root{--felt: oklch(from #0e1a14 l c h);--deep: oklch(from #0a140f l c h);--raised: oklch(from #1c2a22 l c h);--ivory: oklch(from #f2ede0 l c h);--sage: oklch(from #93a79a l c h);--ink: oklch(from #4f6156 l c h);--red: oklch(from #e23d2e l c h);--width: 1168px;--gutter: 32px;--tile-radius: 24px;color-scheme:dark;font-family:Jost,sans-serif;color:var(--ivory);background:var(--felt);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;font-size:18px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:6px}img,video{display:block;max-width:100%;height:auto}figure,p,h1,h2{margin:0}.wrap{width:min(var(--width),calc(100% - var(--gutter) * 2));margin-inline:auto}.skip{position:absolute;top:-80px;background:var(--ivory);color:var(--felt);padding:12px;z-index:5}.skip:focus{top:8px}.header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:12px;font-weight:500;font-size:24px;letter-spacing:.01em}.brand svg{width:42px;height:42px}.header nav{display:flex;gap:40px;color:var(--sage)}.header a:hover,.text-link:hover,.footer a:hover{color:#fff}.header-demo{font-size:16px;border-bottom:1px solid var(--sage);padding-block:8px}.header-demo span{margin-left:12px}.hero{text-align:center;padding-top:64px}.japanese{font-family:Zen,serif;font-size:26px;letter-spacing:.24em;color:var(--sage)}h1{font-size:clamp(3.5rem,7vw,6.25rem);font-weight:400;line-height:1.08;letter-spacing:-.045em;margin-top:20px}.intro{color:var(--sage);font-size:clamp(1.125rem,1.7vw,1.375rem);line-height:1.5;margin:24px auto 28px;max-width:640px}.button{display:inline-flex;align-items:center;justify-content:center;gap:40px;min-height:56px;padding:12px 26px;border-radius:8px;background:var(--ivory);color:var(--felt);font-weight:500;transition:background .18s ease,transform .18s ease}.button:hover{background:#fffdf5;transform:translateY(-2px)}.aside{font-size:15px;color:var(--sage);margin-top:12px}.hero-stage{position:relative;margin-top:72px;padding:24px 140px 0 0;text-align:left;min-height:780px}.desktop-app{width:100%;border:1px solid var(--raised);border-radius:14px;box-shadow:0 24px 64px #0004}.hero-phone{position:absolute;right:0;top:104px;width:310px}.phone{border:6px solid var(--raised);border-radius:28px;overflow:hidden;background:var(--deep);box-shadow:0 20px 48px #0003}.phone video{width:100%;aspect-ratio:390/844}.video-toggle{display:flex;align-items:center;justify-content:center;gap:24px;width:100%;border:0;background:transparent;color:var(--sage);padding:14px 8px;font-size:15px;cursor:pointer}.video-toggle:hover{color:var(--ivory)}h2{font-size:clamp(2.75rem,4.4vw,4.5rem);font-weight:400;letter-spacing:-.035em;line-height:1.08}.section-label{font-size:17px;color:var(--sage);margin-bottom:20px}.score-copy{padding:56px 0 136px;max-width:720px;text-align:center}.score-copy>p:not(.section-label){color:var(--sage);max-width:570px;margin:28px auto 24px}.text-link{display:inline-flex;gap:24px;align-items:center;border-bottom:1px solid currentColor;padding-block:8px}.score-notes{display:flex;gap:48px;margin-top:64px;text-align:left;border-top:1px solid var(--raised);padding-top:32px}.score-notes p{flex:1}.score-notes strong{display:block;font-weight:500}.score-notes span{display:block;font-size:16px;color:var(--sage);margin-top:8px}.learn-section{background:var(--ivory);color:var(--felt);padding:112px 0 128px}.feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:center}.feature-copy>p:not(.section-label){color:var(--sage);margin-top:24px;max-width:420px}.feature-copy .text-link{margin-top:24px}.learn-section .section-label,.learn-section .feature-copy>p:not(.section-label),.learn-section figcaption{color:var(--ink)}.learn-section .text-link:hover{color:#000}.lesson-spread{display:flex;align-items:flex-start;gap:24px}.lesson-spread figure{width:50%}.lesson-spread img{border-radius:16px;border:1px solid #4f615630}.lesson-spread figcaption{font-size:14px;margin-top:16px}.rule-view{margin-top:112px}.practice{grid-template-columns:1fr 1fr;padding-block:128px;gap:120px}.practice-view{width:318px;justify-self:center}.closing{padding:72px 0 128px;text-align:center;border-top:1px solid var(--raised)}.closing h2{margin:24px 0 32px}.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:32px;border-top:1px solid var(--raised);font-size:15px;color:var(--sage)}.footer .brand{font-size:20px;color:var(--ivory)}@supports (animation-timeline: view()){.rise{animation:settle both;animation-timeline:view();animation-range:entry 0% entry 90%}@keyframes settle{0%{transform:translateY(24px)}to{transform:translateY(0)}}}@media(min-width:1500px){.hero-stage{min-height:820px}}@media(max-width:900px){.header nav{gap:24px}.hero-stage{min-height:670px;padding-right:100px}.hero-phone{width:260px;top:80px}.feature{gap:40px;grid-template-columns:1fr 1.1fr}.lesson-spread{gap:16px}.practice{gap:64px}.practice-view{width:280px}.footer p{display:none}}@media(max-width:600px){:root{--gutter: 24px}.header{height:88px;gap:12px}.brand{font-size:22px;gap:8px}.brand svg{width:34px;height:34px}.header nav{display:none}.header-demo{font-size:14px}.header-demo span{margin-left:4px}.hero{padding-top:36px}.japanese{font-size:22px}h1{font-size:clamp(3.2rem,12vw,4.5rem)}.intro{margin-top:24px}.desktop-break{display:none}.hero-stage{margin-top:48px;min-height:0;padding:0}.desktop-app{display:none}.hero-phone{position:relative;top:auto;right:auto;width:min(100%,320px);margin:auto}.score-copy{padding:72px 0 88px}.score-notes{gap:24px;margin-top:40px;padding-top:24px}.score-notes strong{font-size:17px}.score-notes span{font-size:15px}.feature{grid-template-columns:1fr;gap:48px}.learn-section{padding:72px 0}.feature-copy>p:not(.section-label){max-width:none}.lesson-spread{gap:16px}.rule-view{margin-top:64px}.lesson-spread img{border-radius:10px}.lesson-spread figcaption{font-size:13px;line-height:1.5}.practice{padding-block:80px;gap:48px}.practice .feature-copy{grid-row:1}.practice-view{width:min(100%,300px)}.closing{padding:72px 0 80px}.footer{align-items:flex-start;font-size:14px;gap:16px}.footer>a:last-child{max-width:150px;text-align:right}.section-label{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover{transform:none}}.footer a{min-height:32px;display:inline-flex;align-items:center}
