.kapi-walker{width:100%;height:var(--kapi-walker-h,132px);border-bottom:1.5px solid var(--kapi-border);max-width:1040px;margin:0 auto;position:relative;overflow:hidden}.kapi-walker svg.kapi-walker-fig{height:calc(var(--kapi-walker-h,132px) - 10px);width:auto;animation:87s linear infinite kw-cross;position:absolute;bottom:2px;left:0}.kapi-walker .kapi-walker-toggle svg{width:15px;height:15px}@keyframes kw-cross{0%{transform:translate(-220px)}to{transform:translate(1260px)}}.kapi-walker .kw-leg{transform-box:view-box;animation:1.4s linear infinite kw-step}.kapi-walker .kw-leg-near-hind{transform-origin:118px 154px}.kapi-walker .kw-leg-near-front{transform-origin:245px 156px;animation-delay:-.35s}.kapi-walker .kw-leg-far-hind{transform-origin:138px 154px;animation-delay:-.7s}.kapi-walker .kw-leg-far-front{transform-origin:227px 156px;animation-delay:-1.05s}@keyframes kw-step{0%{animation-timing-function:linear;transform:rotate(-13deg)}70%{animation-timing-function:cubic-bezier(.35,0,.25,1);transform:rotate(15deg)}to{transform:rotate(-13deg)}}.kapi-walker .kw-body{transform-box:view-box;transform-origin:205px 118px;animation:1.4s linear infinite kw-bob}@keyframes kw-bob{0%{animation-timing-function:ease-out;transform:translateY(-1px)rotate(-.4deg)}35%{animation-timing-function:ease-in;transform:translateY(3px)rotate(.6deg)}60%{animation-timing-function:ease-out;transform:translateY(-1px)rotate(-.4deg)}85%{animation-timing-function:ease-in;transform:translateY(3px)rotate(.6deg)}to{transform:translateY(-1px)rotate(-.4deg)}}.kapi-walker .kw-ear{transform-box:view-box;transform-origin:263px 50px;animation:1.4s ease-in-out -.15s infinite kw-ear-lag}@keyframes kw-ear-lag{0%,50%,to{transform:rotate(2deg)}30%,80%{transform:rotate(-2deg)}}.kapi-walker .kw-eye{transform-box:view-box;transform-origin:298px 80px;animation:5.6s linear infinite kw-blink}@keyframes kw-blink{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.08)}}.kapi-walker .kapi-walker-flora{pointer-events:none;position:absolute;inset:0}.kapi-walker-flora svg.kw-clump{transform-origin:50% 100%;animation:87s linear infinite both kw-bloom;position:absolute;bottom:2px}@keyframes kw-bloom{0%{transform:scaleY(0)}1.4%{transform:scaleY(1.08)}2.2%{transform:scaleY(1)}96%{transform:scaleY(1)}99%,to{transform:scaleY(0)}}.kapi-walker .kw-sway{transform-box:fill-box;transform-origin:50% 100%;animation:3.2s ease-in-out infinite alternate kw-sway}@keyframes kw-sway{0%{transform:rotate(-2.2deg)}to{transform:rotate(2.2deg)}}.kapi-walker-toggle{background:var(--kapi-raised);width:30px;height:30px;color:var(--kapi-water);border:1px solid var(--kapi-border);cursor:pointer;opacity:.65;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;bottom:10px;right:8px}.kapi-walker-toggle:hover,.kapi-walker-toggle:focus-visible{opacity:1}.kapi-walker[data-paused] svg,.kapi-walker[data-paused] svg *{animation-play-state:paused}.kapi-walker.kapi-walker--ledge{border-bottom:none;width:auto;max-width:none;margin:0;position:absolute;top:0;left:0;right:0;transform:translateY(-100%)}.kapi-walker--ledge svg.kapi-walker-fig,.kapi-walker--ledge .kw-clump{bottom:0}.kapi-walker--ledge .kapi-walker-toggle{width:24px;height:24px;bottom:4px;right:4px}.kapi-walker--ledge .kapi-walker-toggle svg{width:12px;height:12px}@media (prefers-reduced-motion:reduce){.kapi-walker svg,.kapi-walker svg *{animation:none!important}.kapi-walker svg.kapi-walker-fig{left:clamp(12px,4vw,48px)}.kapi-walker-toggle{display:none}}
.ml-home{background:var(--surface-canvas);min-height:100vh;color:var(--text-primary);font-family:var(--font-body)}.ml-home a{color:inherit}.ml-nav,.ml-hero,.ml-band,.ml-section,.ml-footer{width:min(1120px,100% - 36px);margin-inline:auto}.ml-nav{justify-content:space-between;align-items:center;gap:18px;min-height:68px;display:flex}.ml-brand,.ml-nav-actions,.ml-actions,.ml-english-actions,.ml-text-link,.ml-card-foot,.ml-trust,.ml-market-panel-head,.ml-market-actions a{align-items:center;display:flex}.ml-brand{font-family:var(--font-rounded);gap:10px;font-size:19px;font-weight:800;text-decoration:none}.ml-nav-actions{gap:6px}.ml-nav-actions a,.ml-text-link{border-radius:var(--radius-md);min-height:38px;color:var(--text-secondary);font-family:var(--font-rounded);padding:8px 12px;font-size:14px;font-weight:700;text-decoration:none}.ml-nav-actions a:hover,.ml-text-link:hover{background:var(--surface-raised);color:var(--text-primary)}.ml-hero{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:end;gap:clamp(24px,5vw,48px);padding:clamp(28px,6vw,58px) 0 32px;display:grid}.ml-hero-copy{min-width:0}.ml-home h1,.ml-home h2,.ml-home h3,.ml-home p{letter-spacing:0}.ml-home h1{max-width:820px;color:var(--text-primary);font-family:var(--font-rounded);margin:0;font-size:clamp(40px,7vw,72px);font-weight:900;line-height:.98}.ml-sub,.ml-band p,.ml-course-card p,.ml-person-card p,.ml-school-card p,.ml-empty p,.ml-market-panel p{color:var(--text-secondary);line-height:1.5}.ml-sub{max-width:690px;margin:18px 0 0;font-size:18px}.ml-actions{flex-wrap:wrap;gap:10px;margin-top:28px}.ml-primary,.ml-secondary,.ml-disabled-action{border-radius:var(--radius-md);min-height:44px;font-family:var(--font-rounded);padding:11px 16px;font-size:15px;font-weight:800}.ml-primary,.ml-secondary{align-items:center;gap:8px;text-decoration:none;display:inline-flex}.ml-home .ml-primary,.ml-home .ml-primary:visited{background:var(--action-primary);color:var(--action-primary-text);border:1px solid var(--action-primary)}.ml-home .ml-primary:hover,.ml-home .ml-primary:focus-visible,.ml-home .ml-primary:active{background:color-mix(in srgb, var(--action-primary) 88%, var(--text-primary));color:var(--action-primary-text)}.ml-home .ml-primary-quiet,.ml-home .ml-primary-quiet:visited{background:var(--surface-card);color:var(--action-primary);border-color:color-mix(in srgb, var(--action-primary) 28%, var(--border-subtle))}.ml-home .ml-primary-quiet:hover,.ml-home .ml-primary-quiet:focus-visible,.ml-home .ml-primary-quiet:active{color:var(--action-primary)}.ml-secondary{background:var(--surface-card);color:var(--text-primary);border:var(--border-hairline)}.ml-secondary:hover{background:var(--surface-raised)}.ml-google-g{flex:none;width:18px;height:18px}.ml-market-panel{background:var(--surface-card);border:var(--border-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:18px}.ml-market-panel-head{color:var(--action-primary);gap:12px;margin-bottom:14px}.ml-market-panel h2{color:var(--text-primary);font-family:var(--font-rounded);margin:0;font-size:20px;font-weight:800}.ml-market-panel p{margin:2px 0 0;font-size:14px}.ml-market-actions{flex-direction:column;align-items:stretch;gap:8px}.ml-market-actions a{background:var(--surface-raised);border:var(--border-hairline);border-radius:var(--radius-md);min-height:46px;color:var(--text-primary);font-family:var(--font-rounded);justify-content:space-between;gap:12px;padding:11px 12px;font-size:14px;font-weight:800;text-decoration:none}.ml-market-actions a:hover{filter:brightness(.96)}.ml-band{border-top:var(--border-hairline);border-bottom:var(--border-hairline);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;padding:22px 0;display:grid}.ml-band h2,.ml-section h2{color:var(--text-primary);font-family:var(--font-rounded);margin:0;font-size:26px;font-weight:900;line-height:1.15}.ml-band p{max-width:760px;margin:8px 0 0;font-size:16px}.ml-english-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.ml-disabled-action{border:var(--border-hairline);background:color-mix(in srgb, var(--surface-card) 64%, var(--surface-raised));color:var(--text-quiet);cursor:default;align-items:center;gap:8px;display:inline-flex}.ml-section{padding:36px 0 0}.ml-section-head{justify-content:space-between;align-items:end;gap:18px;margin-bottom:14px;display:flex}.ml-text-link{flex:none;gap:6px}.ml-course-row,.ml-teacher-grid,.ml-school-grid{overscroll-behavior-inline:contain;scroll-snap-type:x proximity;grid-auto-columns:minmax(260px,340px);grid-auto-flow:column;gap:14px;padding:2px 2px 10px;display:grid;overflow-x:auto}.ml-course-card,.ml-person-card,.ml-school-card{scroll-snap-align:start;background:var(--surface-card);border:var(--border-hairline);border-radius:var(--radius-md);min-height:218px;box-shadow:var(--shadow-card);color:inherit;transition:box-shadow var(--dur-base) var(--ease-standard), transform var(--dur-base) var(--ease-standard);flex-direction:column;gap:12px;padding:18px;text-decoration:none;display:flex}.ml-course-card:hover,.ml-person-card:hover,.ml-school-card:hover{box-shadow:var(--shadow-active);transform:translateY(-2px)}.ml-course-card:focus-visible,.ml-person-card:focus-visible,.ml-school-card:focus-visible,.ml-primary:focus-visible,.ml-secondary:focus-visible,.ml-nav-actions a:focus-visible,.ml-text-link:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.ml-card-top{flex-wrap:wrap;gap:6px;display:flex}.ml-card-top span,.ml-trust{border-radius:var(--radius-full);background:var(--surface-raised);width:fit-content;color:var(--action-primary);font-family:var(--font-rounded);padding:4px 9px;font-size:12px;font-weight:800}.ml-course-card h3,.ml-person-card h3,.ml-school-card h3,.ml-empty h3{color:var(--text-primary);font-family:var(--font-rounded);margin:0;font-size:20px;font-weight:900;line-height:1.16}.ml-course-card p,.ml-person-card p,.ml-school-card p{margin:0;font-size:14px}.ml-card-foot{color:var(--text-secondary);justify-content:space-between;gap:12px;margin-top:auto;font-size:13px}.ml-card-foot strong{color:var(--action-primary);font-family:var(--font-rounded);font-size:17px}.ml-person-photo,.ml-school-logo{border-radius:var(--radius-full);border:var(--border-hairline);background:var(--surface-raised);object-fit:cover;width:48px;height:48px;display:block}.ml-card-person{align-items:center;gap:8px;min-width:0;display:inline-flex}.ml-card-person img{border-radius:var(--radius-full);border:var(--border-hairline);background:var(--surface-raised);object-fit:cover;flex:none;width:28px;height:28px}.ml-muted-line{color:var(--text-secondary);font-size:13px;line-height:1.35}.ml-trust{gap:5px}.ml-school-card{min-height:224px}.ml-school-logo{border-radius:var(--radius-md)}.ml-empty{border:1px dashed color-mix(in srgb, var(--text-quiet) 38%, transparent);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface-card) 65%, transparent);min-height:112px;color:var(--text-quiet);align-items:center;gap:14px;padding:18px;display:flex}.ml-empty h3{font-size:18px}.ml-empty p{margin:4px 0 0;font-size:14px}.ml-footer{color:var(--text-secondary);flex-wrap:wrap;gap:14px;padding:42px 0 28px;font-size:13px;display:flex}.ml-footer a{border-radius:var(--radius-md);align-items:center;min-height:32px;padding:6px 8px;text-decoration:none;display:inline-flex}.ml-footer a:hover{background:var(--surface-raised);color:var(--text-primary)}@media (max-width:820px){.ml-hero,.ml-band{grid-template-columns:1fr}.ml-hero{align-items:stretch;padding-top:22px}.ml-english-actions{justify-content:flex-start}}@media (max-width:560px){.ml-nav,.ml-hero,.ml-band,.ml-section,.ml-footer{width:min(100% - 28px,1120px)}.ml-nav{flex-direction:column;align-items:flex-start;padding:14px 0}.ml-home h1{font-size:42px}.ml-actions,.ml-primary,.ml-secondary,.ml-disabled-action{width:100%}.ml-primary,.ml-secondary,.ml-disabled-action{justify-content:center}.ml-course-row,.ml-teacher-grid,.ml-school-grid{grid-auto-columns:minmax(244px,86vw)}.ml-section-head{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.ml-course-card,.ml-person-card,.ml-school-card{transition:none}.ml-course-card:hover,.ml-person-card:hover,.ml-school-card:hover{transform:none}}
