:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fbfbfd;--shell:#f5f5f7;--surface:#fff;--surface-2:#f5f5f7;--ink:#1d1d1f;--ink-2:#6e6e73;--ink-3:#86868b;--line:#e3e3e8;--hair:#00000012;--fill:#0000000a;--fill-2:#00000012;--btn:#1d1d1f;--on-btn:#fff;--btn-hover:#3a3a3c;--track:#e3e3e8;--scrim:#00000052;--shadow-lg:0 30px 80px #00000029;--font-text:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Helvetica,Arial,sans-serif;--font-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Helvetica,Arial,sans-serif;--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease-drawer:cubic-bezier(.32,.72,0,1);--side:236px;--top:56px;--r-lg:20px;--r:14px;--r-sm:10px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0a0b;--shell:#111113;--surface:#161618;--surface-2:#1c1c1f;--ink:#f5f5f7;--ink-2:#a1a1a6;--ink-3:#7c7c80;--line:#2c2c2f;--hair:#ffffff14;--fill:#ffffff0d;--fill-2:#ffffff17;--btn:#f5f5f7;--on-btn:#0a0a0b;--btn-hover:#d2d2d7;--track:#2c2c2f;--scrim:#0000008f;--shadow-lg:0 30px 80px #0009}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0a0b;--shell:#111113;--surface:#161618;--surface-2:#1c1c1f;--ink:#f5f5f7;--ink-2:#a1a1a6;--ink-3:#7c7c80;--line:#2c2c2f;--hair:#ffffff14;--fill:#ffffff0d;--fill-2:#ffffff17;--btn:#f5f5f7;--on-btn:#0a0a0b;--btn-hover:#d2d2d7;--track:#2c2c2f;--scrim:#0000008f;--shadow-lg:0 30px 80px #0009}}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--top) + 16px)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);min-width:320px;color:var(--ink);font-family:var(--font-text);letter-spacing:-.016em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;margin:0;font-size:15px;line-height:1.47}img{max-width:100%;display:block}button,input,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button,a,[role=button],[role=tab]{touch-action:manipulation;-webkit-user-select:none;user-select:none}input,textarea{font-size:16px}a{color:inherit;text-decoration:none}p{margin:0}h1,h2,h3,h4{font-weight:600;font-family:var(--font-display);text-wrap:balance;margin:0}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:8px}.i{vertical-align:middle;flex:none;width:1em;height:1em;display:inline-block}.num{font-variant-numeric:tabular-nums}.dim{color:var(--ink-3)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:200;background:var(--btn);color:var(--on-btn);border-radius:980px;padding:10px 16px;font-size:14px;position:absolute;top:-60px;left:12px}.skip:focus{top:10px}.app{grid-template-columns:var(--side) minmax(0,1fr);min-height:100dvh;display:grid}.side{z-index:40;background:var(--shell);height:100dvh;box-shadow:inset -1px 0 0 var(--hair);flex-direction:column;padding:14px 12px 12px;display:flex;position:sticky;top:0}.brand{height:44px;font-family:var(--font-display);letter-spacing:-.02em;align-items:center;padding:0 10px;font-size:19px;font-weight:600;display:flex}.brand sup{color:var(--ink-3);margin-left:1px;font-size:8px;font-weight:500;position:relative;top:-6px}.side-group{margin-top:20px}.side-label{color:var(--ink-3);letter-spacing:-.01em;padding:0 10px 8px;font-size:12px}.side-nav{gap:2px;display:grid;position:relative}.side-nav a{z-index:1;border-radius:var(--r-sm);height:36px;color:var(--ink-2);align-items:center;gap:11px;padding:0 10px;font-size:14px;transition:color .2s,background-color .2s;display:flex;position:relative}.side-nav a .i{font-size:18px}.side-nav a[aria-current=true]{color:var(--ink);font-weight:500}.side-nav a .count{color:var(--ink-3);margin-left:auto;font-size:12px}.side-ink{border-radius:var(--r-sm);background:var(--fill-2);height:36px;transform:translateY(var(--y,0));opacity:var(--o,0);transition:transform .28s var(--ease-in-out), opacity .2s ease;pointer-events:none;position:absolute;top:0;left:0;right:0}.thumb{background:var(--fill-2);border-radius:7px;flex:none;width:22px;height:22px;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%}.side-space{flex:1}.side-note{box-shadow:0 -1px 0 var(--hair);margin:0 4px 10px;padding:14px 10px 12px}.side-note b{font-size:13px;font-weight:600;display:block}.side-note p{color:var(--ink-2);margin-top:4px;font-size:12px;line-height:1.45}.side-note .meter{background:var(--track);border-radius:3px;height:3px;margin-top:10px;overflow:hidden}.side-note .meter i{background:var(--ink);transform-origin:0;width:100%;height:100%;transform:scaleX(var(--p,0));display:block}.js .side-note .meter i{transform:scaleX(0)}.js .side-note.is-in .meter i{transform:scaleX(var(--p,0));transition:transform 1s var(--ease-out) .4s}.profile{border-radius:var(--r-sm);text-align:left;transition:background-color .2s ease, transform .16s var(--ease-out);align-items:center;gap:10px;padding:8px;display:flex}.profile:active{transform:scale(.98)}.avatar{background:var(--btn);width:30px;height:30px;color:var(--on-btn);letter-spacing:0;border-radius:10px;place-items:center;font-size:12px;font-weight:600;display:grid}.profile strong{font-size:13px;font-weight:600;display:block}.profile small{color:var(--ink-3);font-size:12px;display:block}.main{min-width:0}.nav{z-index:30;height:var(--top);background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);justify-content:space-between;align-items:center;gap:16px;padding:0 32px;transition:box-shadow .24s;display:flex;position:sticky;top:0}.nav.is-stuck{box-shadow:0 1px 0 var(--hair)}.crumb{color:var(--ink-3);font-size:13px}.crumb b{color:var(--ink);font-weight:600}.nav-right{align-items:center;gap:8px;display:flex}.search-btn{border-radius:var(--r-sm);background:var(--fill);min-width:210px;height:34px;color:var(--ink-3);letter-spacing:-.01em;transition:background-color .2s ease, transform .16s var(--ease-out);align-items:center;gap:8px;padding:0 10px 0 11px;font-size:13px;display:inline-flex}.search-btn .i{font-size:15px}.search-btn .label{text-align:left;flex:1}.search-btn kbd{color:var(--ink-3);font-family:inherit;font-size:11px}.search-btn:active{transform:scale(.98)}.seg{border-radius:var(--r-sm);background:var(--fill);grid-auto-columns:1fr;grid-auto-flow:column;height:34px;padding:3px;display:inline-grid;position:relative}.seg button{z-index:1;color:var(--ink-3);border-radius:8px;padding:0 11px;font-size:12px;font-weight:500;transition:color .2s;position:relative}.seg button[aria-pressed=true]{color:var(--ink)}.seg .thumb-ind{background:var(--surface);width:calc(33.3333% - 2px);box-shadow:0 1px 2px #00000014, 0 0 0 .5px var(--hair);transform:translateX(calc(var(--i,2) * 100%));transition:transform .28s var(--ease-in-out);border-radius:8px;position:absolute;top:3px;bottom:3px;left:3px}[data-theme=dark] .seg .thumb-ind{background:#2c2c2f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .seg .thumb-ind{background:#2c2c2f}}.menu-btn{border-radius:var(--r-sm);width:36px;height:36px;transition:background-color .2s ease, transform .16s var(--ease-out);place-items:center;font-size:20px;display:none}.menu-btn:active{transform:scale(.94)}.content{max-width:1200px;margin:0 auto;padding:36px 40px 72px}.side-back{border-radius:var(--r-sm);height:34px;color:var(--ink-2);align-items:center;gap:8px;margin-top:6px;padding:0 10px;font-size:13px;transition:color .2s,background-color .2s;display:flex}.side-back .i{transition:transform .2s var(--ease-out);font-size:15px}@media (hover:hover) and (pointer:fine){.side-back:hover{color:var(--ink);background:var(--fill)}.side-back:hover .i{transform:translate(-2px)}}.crumb a{transition:color .2s}@media (hover:hover) and (pointer:fine){.crumb a:hover{color:var(--ink)}}.page-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.page-head h1{letter-spacing:-.018em;font-size:clamp(32px,3.4vw,44px);line-height:1.08}.page-head p{color:var(--ink-2);letter-spacing:-.022em;margin-top:10px;font-size:17px}.page-meta{color:var(--ink-3);text-align:right;white-space:nowrap;padding-bottom:4px;font-size:13px}.section{margin-top:44px}.section-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.section-head h2{letter-spacing:-.012em;font-size:24px;line-height:1.17}.section-head p{color:var(--ink-2);margin-top:4px;font-size:14px}.card{border-radius:var(--r-lg);background:var(--surface);box-shadow:0 0 0 1px var(--hair)}.panel{padding:24px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.panel-head h3{letter-spacing:-.022em;font-size:17px}.panel-head span{color:var(--ink-3);font-size:13px}.btn{background:var(--btn);height:40px;color:var(--on-btn);letter-spacing:-.016em;white-space:nowrap;transition:transform .16s var(--ease-out), background-color .2s ease;border-radius:980px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:500;display:inline-flex}.btn .i{font-size:15px}.btn:active{transform:scale(.97)}.btn.quiet{background:var(--fill-2);color:var(--ink)}.btn.small{height:32px;padding:0 14px;font-size:13px}.link{height:40px;color:var(--ink-2);transition:color .2s ease, transform .16s var(--ease-out);align-items:center;gap:3px;font-size:14px;display:inline-flex}.link .i{transition:transform .2s var(--ease-out);font-size:13px}.link:active{transform:scale(.97)}.actions{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.icon-btn{background:var(--fill);width:34px;height:34px;color:var(--ink);transition:background-color .2s ease, transform .16s var(--ease-out);border-radius:50%;place-items:center;font-size:17px;display:inline-grid}.icon-btn:active{transform:scale(.94)}@media (hover:hover) and (pointer:fine){.side-nav a:not([aria-current=true]):hover{color:var(--ink);background:var(--fill)}.profile:hover{background:var(--fill)}.search-btn:hover{background:var(--fill-2)}.seg button:hover{color:var(--ink)}.menu-btn:hover{background:var(--fill)}.btn:hover{background:var(--btn-hover)}.btn.quiet:hover{background:var(--fill-2);color:var(--ink)}.link:hover{color:var(--ink)}.link:hover .i{transform:translate(3px)}.icon-btn:hover{background:var(--fill-2)}}.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:440px;display:grid;overflow:hidden}.hero-copy{flex-direction:column;padding:34px 36px 30px;display:flex}.hero h2{letter-spacing:-.016em;max-width:14em;font-size:clamp(28px,2.9vw,38px);line-height:1.08}.hero-copy>p{max-width:32em;color:var(--ink-2);letter-spacing:-.022em;margin-top:14px;font-size:17px;line-height:1.47}.hero-foot{margin-top:auto;padding-top:28px}.hero-media{background:var(--surface-2);position:relative;overflow:hidden}.hero-media img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.js .hero-media img{opacity:0;transform:scale(1.05)}.js .is-loaded .hero-media img{opacity:1;transition:transform 1.4s var(--ease-out), opacity .7s ease;transform:none}@media (hover:hover) and (pointer:fine){.js .is-loaded.hero:hover .hero-media img{transition:transform 1.2s var(--ease-out);transform:scale(1.025)}}.ticks{grid-template-columns:repeat(var(--n,34), 1fr);align-items:end;gap:3px;max-width:420px;height:20px;display:grid}.ticks i{background:var(--track);transform-origin:bottom;border-radius:2px;height:100%;position:relative;overflow:hidden}.ticks i.on{background:var(--ink)}.ticks i.now:after{content:"";background:var(--ink);transform-origin:bottom;position:absolute;inset:0;transform:scaleY(.5)}.js .ticks i{opacity:.4;transform:scaleY(.35)}.js .ticks.is-in i{opacity:1;transition:transform .6s var(--ease-out) var(--d,0s), opacity .3s ease var(--d,0s);transform:none}.ticks-label{color:var(--ink-3);margin-top:10px;font-size:13px}.ticks-label b{color:var(--ink);font-weight:600}.courses{grid-template-columns:1.35fr 1fr 1fr 1fr;gap:16px;display:grid}.course{text-align:left;transition:transform .32s var(--ease-out), box-shadow .32s ease;flex-direction:column;display:flex;overflow:hidden}.course-img{background:var(--surface-2);height:190px;overflow:hidden}.course-img img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out)}.course-body{flex-direction:column;flex:1;padding:16px 18px 18px;display:flex}.course-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.course-top h3{letter-spacing:-.02em;font-size:16px}.course-top span{color:var(--ink-3);white-space:nowrap;font-size:12px}.course-body p{color:var(--ink-2);margin-top:6px;font-size:13px;line-height:1.45}.course-foot{color:var(--ink-3);justify-content:space-between;gap:10px;margin-top:auto;padding-top:16px;font-size:12px;display:flex}.course-foot b{color:var(--ink);font-weight:600}@media (hover:hover) and (pointer:fine){.course:hover{box-shadow:0 0 0 1px var(--hair), 0 18px 40px #0000000f;transform:translateY(-3px)}.course:hover .course-img img{transform:scale(1.04)}}.course:active{transform:scale(.99)}.acc+.acc{box-shadow:0 -1px 0 var(--hair)}.acc-head{text-align:left;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:14px;width:100%;padding:15px 0;display:grid}.acc-k{color:var(--ink-3);font-size:12px;display:block}.acc-t{letter-spacing:-.02em;margin-top:1px;font-size:15px;font-weight:600;display:block}.acc-s{color:var(--ink-3);white-space:nowrap;align-items:center;gap:7px;font-size:12px;display:inline-flex}.acc-s .i{color:var(--ink);font-size:14px}.acc-c{color:var(--ink-3);transition:transform .26s var(--ease-out);place-items:center;font-size:15px;display:grid}.acc.is-open .acc-c{transform:rotate(180deg)}.acc-body{transition:grid-template-rows .26s var(--ease-out);grid-template-rows:0fr;display:grid}.acc.is-open .acc-body{grid-template-rows:1fr}.acc-body>div{overflow:hidden}.lessons{opacity:0;margin:0;padding:0 0 14px;list-style:none;transition:opacity .2s}.acc.is-open .lessons{opacity:1;transition-delay:60ms}.lessons li{grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:12px;padding:7px 0;font-size:14px;display:grid}.lessons .dim{font-size:12px}.mark{width:18px;height:18px;box-shadow:inset 0 0 0 1.5px var(--line);color:var(--on-btn);border-radius:50%;place-items:center;font-size:11px;display:grid}li.done .mark{background:var(--ink);box-shadow:none}li.done>span:nth-child(2){color:var(--ink-2)}li.now .mark{box-shadow:inset 0 0 0 1.5px var(--ink)}li.now .mark:after{content:"";background:var(--ink);border-radius:50%;width:6px;height:6px}li.now>span:nth-child(2){font-weight:600}.ring{width:18px;height:18px;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:2.4px}.ring .bg{stroke:var(--track)}.ring .fg{stroke:var(--ink);stroke-linecap:round;stroke-dasharray:var(--len) var(--len);stroke-dashoffset:var(--len)}.js [data-once].is-in .ring .fg,html:not(.js) .ring .fg{stroke-dashoffset:calc(var(--len) * (1 - var(--p)));transition:stroke-dashoffset 1.1s var(--ease-out) .3s}.js [data-reveal]{opacity:0;transform:translateY(12px)}.js [data-reveal].is-in{opacity:1;transition:opacity .6s var(--ease-out) var(--d,0s), transform .7s var(--ease-out) var(--d,0s);transform:none}.ln{margin-bottom:-.1em;padding-bottom:.1em;display:block;overflow:hidden}.ln>span{display:block}.js .reveal-lines .ln>span{transform:translateY(105%)}.js .reveal-lines.is-in .ln>span{transition:transform .8s var(--ease-out) var(--d,0s);transform:none}dialog{color:var(--ink);background:0 0;border:0;max-width:none;max-height:none;padding:0}dialog::backdrop{background:var(--scrim)}.modal{border-radius:var(--r-lg);background:var(--surface);width:min(640px,100vw - 32px);max-height:min(86dvh,780px);box-shadow:var(--shadow-lg), 0 0 0 1px var(--hair);margin:auto;overflow:hidden}.modal[open]{animation:modal-in .24s var(--ease-out);flex-direction:column;display:flex}.modal[open]::backdrop{animation:.24s fade-in}.modal.is-closing{animation:modal-out .17s var(--ease-out) forwards}.modal.is-closing::backdrop{animation:.17s forwards fade-out}@keyframes modal-in{0%{opacity:0;transform:scale(.96)translateY(6px)}}@keyframes modal-out{to{opacity:0;transform:scale(.97)}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.modal-scroll{padding:36px 36px 32px;overflow:auto}.modal-close{z-index:2;position:absolute;top:14px;right:14px}.modal h2{letter-spacing:-.014em;padding-right:36px;font-size:26px;line-height:1.15}.modal .lead{color:var(--ink-2);margin-top:10px;font-size:15px}.modal-list{margin:22px 0 0;padding:0;list-style:none}.modal-list li{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:14px;padding:11px 0;font-size:14px;display:grid}.modal-list li+li{box-shadow:0 -1px 0 var(--hair)}.modal-list .dim{font-size:12px}.modal .actions{margin-top:24px}.palette{background:var(--surface);width:min(600px,100vw - 28px);box-shadow:var(--shadow-lg), 0 0 0 1px var(--hair);border-radius:16px;margin:min(14vh,120px) auto auto;overflow:hidden}.palette::backdrop{background:#0003}.palette-field{height:54px;box-shadow:0 1px 0 var(--hair);align-items:center;gap:10px;padding:0 16px;display:flex}.palette-field .i{color:var(--ink-3);font-size:18px}.palette-field input{background:0 0;border:0;outline:0;flex:1;font-size:16px}.palette ul{max-height:340px;margin:0;padding:7px;list-style:none;overflow:auto}.palette li button{text-align:left;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:10px 11px;font-size:14px;display:flex}.palette li button span{color:var(--ink-3);font-size:12px}.palette li button[aria-selected=true]{background:var(--fill-2)}.palette .empty{color:var(--ink-3);padding:16px 12px;font-size:14px}.foot{box-shadow:0 -1px 0 var(--hair);color:var(--ink-3);justify-content:space-between;gap:16px;margin-top:56px;padding-top:18px;font-size:12px;display:flex}.foot nav{gap:16px;display:flex}@media (hover:hover) and (pointer:fine){.foot a:hover{color:var(--ink)}}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}.scrim{z-index:35;background:var(--scrim);opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s linear .3s;position:fixed;inset:0}.scrim.is-open{opacity:1;visibility:visible;transition:opacity .3s}@media (width<=1100px){.courses{grid-template-columns:repeat(2,minmax(0,1fr))}.search-btn{min-width:0}}@media (width<=900px){.app{display:block}.side{width:min(280px,84vw);height:100dvh;transition:transform .42s var(--ease-drawer);box-shadow:none;position:fixed;top:0;bottom:0;left:0;transform:translate(-102%)}.side.is-open{transform:none;box-shadow:24px 0 60px #0000001f}.menu-btn{display:grid}.nav{padding:0 16px}.crumb{display:none}.content{padding:24px 16px 56px}.hero{grid-template-columns:minmax(0,1fr)}.hero-media{order:-1;min-height:260px}.hero-copy{padding:24px 22px 22px}.page-head{flex-direction:column;align-items:flex-start;gap:6px}.page-meta{text-align:left}}@media (width<=600px){.search-btn .label,.search-btn kbd{display:none}.search-btn{justify-content:center;width:34px;padding:0}.seg button{padding:0 8px}.courses{grid-template-columns:minmax(0,1fr)}.course-img{height:200px}.modal-scroll{padding:28px 22px 24px}}@media (prefers-reduced-motion:reduce){.js [data-reveal]{transform:none}.js [data-reveal].is-in{transition:opacity .3s}.js .reveal-lines .ln>span,.js .hero-media img,.js .ticks i{transform:none}.js .ticks.is-in i{transition:opacity .3s ease var(--d,0s)}.side-ink,.seg .thumb-ind,.side{transition-duration:0s}.modal[open]{animation-name:fade-in}.modal.is-closing{animation-name:fade-out}}.calm *,.calm :before,.calm :after{scroll-behavior:auto!important;transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.calm [data-reveal],.calm .reveal-lines .ln>span{opacity:1!important;transform:none!important}.calm .c-hero,.calm .c-hero-media,.calm .clip-reveal>img{clip-path:none!important;transform:none!important}.v-toast{left:50%;bottom:calc(var(--toast-b,24px) + env(safe-area-inset-bottom,0px));z-index:60;background:var(--btn);max-width:calc(100vw - 32px);color:var(--on-btn);opacity:0;visibility:hidden;transition:transform .2s var(--ease-out), opacity .16s ease, visibility 0s linear .2s;border-radius:999px;align-items:center;gap:10px;padding:12px 18px;font-size:14px;font-weight:500;display:flex;position:fixed;transform:translate(-50%,16px);box-shadow:0 18px 50px #0000003d}.v-toast.is-on{opacity:1;visibility:visible;transition:transform .38s var(--ease-out), opacity .22s ease;transform:translate(-50%)}.v-toast .i{flex:none;font-size:17px}::view-transition-group(*){animation-duration:.46s;animation-timing-function:cubic-bezier(.77,0,.175,1)}::view-transition-old(*){animation-duration:.24s}::view-transition-new(*){animation-duration:.24s}::view-transition-group(root){animation-duration:0s}button.avatar{cursor:pointer;transition:transform .16s var(--ease-out);border:0}button.avatar:active{transform:scale(.94)}.v-sheet{background:var(--surface);width:min(720px,100vw - 32px);max-height:min(86dvh,820px);color:var(--ink);box-shadow:var(--shadow-lg), 0 0 0 1px var(--hair);border-radius:28px;margin:auto;padding:0;overflow:hidden}.v-sheet[open]{flex-direction:column;display:flex}.v-sheet::backdrop{background:var(--scrim);animation:.26s fade-in}.v-sheet.no-vt[open]{animation:modal-in .24s var(--ease-out)}.v-sheet-scroll{overscroll-behavior:contain;padding:32px 32px 28px;overflow:auto}.v-sheet-media{background:var(--surface-2);flex:none;height:220px;position:relative;overflow:hidden}.v-sheet-media img{object-fit:cover;width:100%;height:100%}.v-sheet h2{letter-spacing:-.02em;padding-right:40px;font-size:28px;line-height:1.12}.v-sheet .lead{color:var(--ink-2);margin-top:8px;font-size:15px}.v-sheet-close{z-index:2;position:absolute;top:14px;right:14px}.v-sheet .acc-list{margin-top:18px}.v-sheet .actions{margin-top:24px}@media (width<=760px){.v-sheet{border-radius:24px 24px 0 0;width:100vw;max-height:88dvh;margin:auto 0 0}.v-sheet-scroll{padding:26px 20px calc(24px + env(safe-area-inset-bottom,0px))}}@media (pointer:coarse){.icon-btn{width:40px;height:40px}.seg{height:40px}}@media (prefers-reduced-motion:reduce){.v-toast,.v-toast.is-on{transform:translate(-50%)}}:root{--toast-b:92px}html{scroll-padding-bottom:120px}.f-wrap{max-width:1000px;margin:0 auto;padding:0 40px}.f-main{padding-bottom:160px}.nav.f-top{padding:0 max(24px,50% - 470px)}.f-top-l{align-items:center;gap:14px;display:flex}.f-top-l .brand{padding:0}.f-date{color:var(--ink-3);font-size:13px}.f-top-r{align-items:center;gap:8px;display:flex}.dock{left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:40;background:color-mix(in srgb, var(--surface) 72%, transparent);-webkit-backdrop-filter:saturate(180%)blur(22px);backdrop-filter:saturate(180%)blur(22px);box-shadow:0 0 0 1px var(--hair), 0 18px 50px #00000024, inset 0 1px 0 #fff6;border-radius:999px;padding:6px;position:fixed;transform:translate(-50%)}[data-theme=dark] .dock{box-shadow:0 0 0 1px var(--hair), 0 18px 50px #00000080, inset 0 1px 0 #ffffff0f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .dock{box-shadow:0 0 0 1px var(--hair), 0 18px 50px #00000080, inset 0 1px 0 #ffffff0f}}.dock-base,.dock-over{gap:2px;display:flex}.dock-base>a,.dock-base>button,.dock-over>span{letter-spacing:-.01em;white-space:nowrap;border-radius:999px;align-items:center;gap:8px;height:44px;padding:0 16px;font-size:13px;font-weight:500;display:flex}.dock-base>a,.dock-base>button{color:var(--ink-2);transition:color .2s ease, transform .16s var(--ease-out)}.dock-base>a:active,.dock-base>button:active{transform:scale(.96)}.dock-base .i,.dock-over .i{font-size:18px}.dock-over{--l:0px;--r:100%;pointer-events:none;background:var(--btn);color:var(--on-btn);clip-path:inset(0 var(--r,100%) 0 var(--l,0px) round 999px);transition:clip-path .38s var(--ease-in-out);border-radius:999px;position:absolute;inset:6px}@media (hover:hover) and (pointer:fine){.dock-base>a:hover,.dock-base>button:hover{color:var(--ink)}}.js .dock{transform:translate(-50%,160%)}.js .dock.is-in{transition:transform .8s var(--ease-drawer) .5s;transform:translate(-50%)}html:not(.js) .dock-over{display:none}.live{left:50%;bottom:calc(86px + env(safe-area-inset-bottom,0px));z-index:41;background:var(--btn);color:var(--on-btn);opacity:0;visibility:hidden;transition:transform .2s var(--ease-out), opacity .16s ease, visibility 0s linear .2s;border-radius:999px;align-items:center;gap:12px;padding:8px 8px 8px 12px;display:flex;position:fixed;transform:translate(-50%,24px)scale(.96);box-shadow:0 18px 50px #0000003d}.live.is-on{opacity:1;visibility:visible;transition:transform .42s var(--ease-drawer), opacity .24s ease;transform:translate(-50%)}.live-ring{width:30px;height:30px;transform:rotate(-90deg)}.live-ring circle{fill:none;stroke-width:3px}.live-ring .bg{stroke:color-mix(in srgb, var(--on-btn) 22%, transparent)}.live-ring .fg{stroke:var(--on-btn);stroke-linecap:round;stroke-dasharray:81.68;stroke-dashoffset:0}.live-t b{letter-spacing:-.01em;font-size:15px;font-weight:600;display:block}.live-t span{opacity:.66;font-size:11px;display:block}.live .icon-btn{background:color-mix(in srgb, var(--on-btn) 14%, transparent);width:34px;height:34px;color:var(--on-btn)}.f-hero{padding:clamp(36px,9vh,104px) 0 0}.f-hello{color:var(--ink-2);letter-spacing:-.022em;font-size:17px}.f-h1{letter-spacing:-.032em;max-width:17em;margin-top:14px;font-size:clamp(34px,4.5vw,58px);line-height:1.06}.f-h1 .dim{color:var(--ink-3)}.pill-img{vertical-align:-.07em;background:var(--surface-2);border-radius:999px;width:1.9em;height:.84em;margin:0 .04em;display:inline-block;overflow:hidden}.pill-img img{object-fit:cover;object-position:50% 22%;width:100%;height:100%}.js [data-words] .pill-img{clip-path:inset(0 50% round 999px)}.js [data-words].is-in .pill-img{clip-path:inset(0 round 999px);transition:clip-path 1.1s var(--ease-out) var(--pd,.5s)}.w{vertical-align:top;margin-bottom:-.14em;padding-bottom:.14em;display:inline-block;overflow:hidden}.w>span{display:inline-block}.js [data-words] .w>span{transform:translateY(108%)}.js [data-words].is-in .w>span{transition:transform .9s var(--ease-out) calc(var(--wi,0) * 32ms + 80ms);transform:none}.f-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:34px;display:flex}.btn.big{height:48px;padding:0 22px;font-size:15px}.f-hint{color:var(--ink-3);flex-basis:100%;margin-top:2px;font-size:13px}.hold{background:var(--fill-2);height:48px;transition:transform .16s var(--ease-out);border-radius:999px;padding:0;position:relative;overflow:hidden}.hold-base,.hold-fill{letter-spacing:-.016em;white-space:nowrap;align-items:center;gap:8px;height:100%;padding:0 22px;font-size:15px;font-weight:500;display:flex}.hold .i{font-size:17px}.hold-fill{background:var(--btn);color:var(--on-btn);clip-path:inset(0 100% 0 0);transition:clip-path .22s var(--ease-out);position:absolute;inset:0}.hold.is-holding{transform:scale(.97)}.hold.is-holding .hold-fill{clip-path:inset(0);transition:clip-path var(--hold,1.2s) linear}.hold.is-done .hold-fill{clip-path:inset(0)}.hold[aria-disabled=true]{cursor:default}.f-now{margin:56px 0 0}.f-now-img{aspect-ratio:21/9;background:var(--surface-2);border-radius:28px;position:relative;overflow:hidden}.f-now-img img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.js .f-now .f-now-img{clip-path:inset(10% 6% round 44px)}.js .f-now .f-now-img img{transform:scale(1.1)}.js .f-now.is-in .f-now-img{clip-path:inset(0 round 28px);transition:clip-path 1.3s var(--ease-out)}.js .f-now.is-in .f-now-img img{transition:transform 1.7s var(--ease-out);transform:none}.f-now-cap{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:18px;display:flex}.f-now-cap b{letter-spacing:-.022em;font-size:19px;font-weight:600;display:block}.f-now-cap span{color:var(--ink-2);margin-top:3px;font-size:14px;display:block}.f-sec{scroll-margin-top:calc(var(--top) + 24px);margin-top:clamp(96px,12vw,150px)}.f-h2{letter-spacing:-.026em;max-width:22em;font-size:clamp(28px,3.3vw,42px);line-height:1.1}.f-h2 .dim{color:var(--ink-3)}.f-sub{color:var(--ink-2);margin-top:10px;font-size:15px}.f-plan{margin:34px 0 0;padding:0;list-style:none}.f-step{cursor:pointer;box-shadow:0 -1px 0 var(--hair);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 0;display:grid}.f-step:last-child{box-shadow:0 -1px 0 var(--hair), 0 1px 0 var(--hair)}.f-step b{letter-spacing:-.022em;font-size:17px;font-weight:600;transition:color .2s;display:block}.f-step small{color:var(--ink-3);margin-top:2px;font-size:13px;display:block}.f-step .num{color:var(--ink-3);font-size:14px}.f-check{width:34px;height:34px;box-shadow:inset 0 0 0 1.5px var(--line);color:#0000;transition:background-color .2s ease, box-shadow .2s ease, color .2s ease, transform .16s var(--ease-out);border-radius:50%;place-items:center;font-size:15px;display:grid}.f-check:active{transform:scale(.92)}.f-check .i{opacity:0;transition:transform .26s var(--ease-out), opacity .16s ease;transform:scale(.6)}.f-step.is-done .f-check{background:var(--ink);box-shadow:none;color:var(--on-btn)}.f-step.is-done .f-check .i{opacity:1;transform:none}.f-step.is-done b{color:var(--ink-3);text-decoration:line-through;text-decoration-thickness:1.5px;-webkit-text-decoration-color:var(--ink-3);-webkit-text-decoration-color:var(--ink-3);text-decoration-color:var(--ink-3)}@media (hover:hover) and (pointer:fine){.f-step:not(.is-done) .f-check:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}}.f-goal{color:var(--ink-2);align-items:center;gap:12px;margin-top:22px;font-size:14px;display:flex}.f-goal b{color:var(--ink);font-weight:600}.f-goal .ring{width:24px;height:24px}.f-goal .ring .fg{transition:stroke-dashoffset .9s var(--ease-out)}.f-week{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:40px;margin-top:34px;display:grid}.f-big{font-family:var(--font-display);letter-spacing:-.045em;font-size:clamp(56px,8vw,104px);font-weight:600;line-height:.95}.f-week p{color:var(--ink-2);margin-top:12px;font-size:15px}.f-week .f-big{color:var(--ink);margin:0;font-size:clamp(64px,9vw,112px)}.f-bars{margin:0}.f-bars .cols{grid-template-columns:repeat(7,1fr);align-items:end;gap:10px;height:120px;display:grid}.f-bars .cols i{background:var(--track);transform-origin:bottom;height:100%;transform:scaleY(var(--s));border-radius:8px;display:block}.f-bars .cols i.today{background:var(--ink)}.js .f-bars .cols i{transform:scaleY(.03)}.js .f-bars.is-in .cols i{transform:scaleY(var(--s));transition:transform .9s var(--ease-out) var(--d,0s)}.f-bars .days{color:var(--ink-3);text-align:center;grid-template-columns:repeat(7,1fr);gap:10px;margin-top:10px;font-size:12px;display:grid}.f-bars .days span:last-child{color:var(--ink);font-weight:600}.f-head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.f-courses{margin:30px 0 0;padding:0;list-style:none}.f-course{box-shadow:0 -1px 0 var(--hair);transition:transform .16s var(--ease-out);grid-template-columns:64px minmax(0,1fr) auto 16px;align-items:center;gap:18px;padding:14px 0;display:grid}.f-course:last-child{box-shadow:0 -1px 0 var(--hair), 0 1px 0 var(--hair)}.f-course:active{transform:scale(.99)}.f-thumb{background:var(--surface-2);border-radius:16px;width:64px;height:64px;overflow:hidden}.f-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease-out)}.f-course b{letter-spacing:-.022em;font-size:17px;font-weight:600;display:block}.f-course small{color:var(--ink-2);margin-top:2px;font-size:13px;display:block}.f-course .state{color:var(--ink-3);text-align:right;font-size:13px}.f-course .state b{color:var(--ink);font-size:13px;display:inline}.f-course>.i{color:var(--ink-3);transition:transform .22s var(--ease-out), color .2s ease;font-size:14px}@media (hover:hover) and (pointer:fine){.f-course:hover .f-thumb img{transform:scale(1.06)}.f-course:hover>.i{color:var(--ink);transform:translate(3px)}}.f-quote{margin:34px 0 0}.f-quote blockquote{max-width:20em;font-family:var(--font-display);letter-spacing:-.024em;margin:0;font-size:clamp(26px,3.2vw,40px);font-weight:600;line-height:1.14}.f-quote figcaption{color:var(--ink-3);margin-top:14px;font-size:13px}.f-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px;display:grid}.f-note{background:var(--fill);transition:transform .16s var(--ease-out), background-color .2s ease;border-radius:20px;padding:22px}.f-note:active{transform:scale(.985)}.f-note p{font-size:15px;line-height:1.5}.f-note small{color:var(--ink-3);margin-top:12px;font-size:12px;display:block}@media (hover:hover) and (pointer:fine){.f-note:hover{background:var(--fill-2)}}.f-log{margin:30px 0 0;padding:0;list-style:none}.f-log li{box-shadow:0 -1px 0 var(--hair);grid-template-columns:170px minmax(0,1fr);gap:20px;padding:14px 0;font-size:15px;display:grid}.f-log time{color:var(--ink-3);font-size:13px}.f-foot{margin-top:120px}@media (width<=800px){.f-week{grid-template-columns:minmax(0,1fr);gap:26px}}@media (width<=600px){.f-wrap{padding:0 20px}.nav.f-top{padding:0 16px}.f-date{display:none}.f-h1{font-size:clamp(32px,9vw,40px)}.f-now-img{aspect-ratio:4/3.2;border-radius:22px}.f-log li{grid-template-columns:minmax(0,1fr);gap:2px}.f-notes{grid-template-columns:minmax(0,1fr)}.f-course{grid-template-columns:56px minmax(0,1fr) auto;gap:14px}.f-course>.i{display:none}.f-thumb{border-radius:14px;width:56px;height:56px}.dock{left:12px;right:12px;transform:none}.js .dock{transform:translateY(160%)}.js .dock.is-in{transform:none}.dock-base>a,.dock-base>button,.dock-over>span{flex-direction:column;flex:1;justify-content:center;gap:2px;height:52px;padding:0 4px;font-size:10.5px}.dock-base,.dock-over{justify-content:stretch}.live{bottom:calc(92px + env(safe-area-inset-bottom,0px))}}@media (width<=400px){.f-top .avatar{display:none}}@media (prefers-reduced-motion:reduce){.js [data-words] .w>span{transform:none}.js [data-words] .pill-img,.js .f-now .f-now-img{clip-path:none}.js .f-now .f-now-img img{transform:none}.js .f-bars .cols i{transform:scaleY(var(--s))}.js .dock,.live,.live.is-on{transform:translate(-50%)}.dock-over{transition-duration:0s}}@media (prefers-reduced-motion:reduce) and (width<=600px){.js .dock{transform:none}}.calm [data-words] .w>span{transform:none!important}.calm [data-words] .pill-img,.calm .f-now .f-now-img{clip-path:none!important}.calm .f-now .f-now-img img,.calm .f-bars .cols i{transform:scaleY(var(--s,1))!important}.calm .f-now .f-now-img img{transform:none!important}.calm .dock{transform:translate(-50%)!important}@media (width<=600px){.calm .dock{transform:none!important}}.n-hero{grid-template-columns:minmax(0,1fr) minmax(0,.62fr);align-items:end;gap:clamp(28px,5vw,72px);display:grid}.n-hero .f-h1{max-width:10.5em}.n-lead{letter-spacing:-.022em;max-width:32em;color:var(--ink-2);margin-top:22px;font-size:19px;line-height:1.45}.n-frame{aspect-ratio:3/4;background:var(--surface-2);border-radius:28px;position:relative;overflow:hidden}.n-frame img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.js .n-frame-wrap .n-frame{clip-path:inset(8% round 40px)}.js .n-frame-wrap.is-in .n-frame{clip-path:inset(0 round 28px);transition:clip-path 1.3s var(--ease-out) .3s}.n-cap{color:var(--ink-3);margin-top:14px;font-size:13px}.n-cap b{color:var(--ink);font-weight:600}.n-reco{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:clamp(28px,5vw,64px);margin-top:34px;display:grid}.n-reco-desc{letter-spacing:-.022em;max-width:32em;color:var(--ink-2);font-size:19px;line-height:1.45}.n-facts{flex-wrap:wrap;gap:6px 28px;margin-top:24px;display:flex}.n-facts div{min-width:92px}.n-facts dt{color:var(--ink-3);font-size:12px}.n-facts dd{font-family:var(--font-display);letter-spacing:-.02em;margin:2px 0 0;font-size:24px;font-weight:600}.n-lessons-head{color:var(--ink-3);margin-bottom:10px;font-size:13px}.n-lessons{margin:0;padding:0;list-style:none}.n-lessons li{box-shadow:0 -1px 0 var(--hair);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:14px;padding:14px 0;font-size:15px;display:grid}.n-lessons li:last-child{box-shadow:0 -1px 0 var(--hair), 0 1px 0 var(--hair)}.n-lessons .free{margin-left:10px;font-size:12px;font-weight:600}.n-promises{margin:34px 0 0;padding:0;list-style:none}.n-promises li{box-shadow:0 -1px 0 var(--hair);grid-template-columns:44px minmax(0,1fr);align-items:start;gap:18px;padding:22px 0;display:grid}.n-promises li:last-child{box-shadow:0 -1px 0 var(--hair), 0 1px 0 var(--hair)}.n-promises .i{margin-top:2px;font-size:26px}.n-promises b{font-family:var(--font-display);letter-spacing:-.022em;font-size:clamp(22px,2.4vw,28px);font-weight:600;line-height:1.15;display:block}.n-promises p{max-width:40em;color:var(--ink-2);margin-top:6px;font-size:15px;line-height:1.5}.n-gains{gap:10px;margin:22px 0 0;padding:0;list-style:none;display:grid}.n-gains li{letter-spacing:-.02em;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px;font-size:16px;line-height:1.4;display:grid}.n-gains .i{margin-top:2px;font-size:17px}.n-incl{margin:28px 0 0;padding:0;list-style:none}.n-incl li{letter-spacing:-.02em;box-shadow:0 -1px 0 var(--hair);grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;padding:12px 0;font-size:16px;display:grid}.n-incl .i{margin-top:2px;font-size:17px}.n-offer{box-shadow:0 -1px 0 var(--hair);margin-top:30px;padding-top:22px}.n-offer .f-actions{margin-top:0}.n-price{color:var(--ink-2);margin-top:12px;font-size:14px}.n-price b{color:var(--ink);font-weight:600}.n-read{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(24px,4vw,56px);margin-top:34px;display:grid}.n-read-img{aspect-ratio:4/5;background:var(--surface-2);border-radius:28px;position:relative;overflow:hidden}.n-read-img img{object-fit:cover;object-position:50% 34%;width:100%;height:100%;transition:transform .9s var(--ease-out);position:absolute;inset:0}.n-read-meta{color:var(--ink-3);font-size:14px}.n-read h3{letter-spacing:-.026em;margin-top:8px;font-size:clamp(26px,3vw,36px);line-height:1.1}.n-excerpt{letter-spacing:-.018em;max-width:34em;color:var(--ink-2);margin-top:18px;font-size:18px;line-height:1.6;position:relative;-webkit-mask-image:linear-gradient(#000 55%,#0000);mask-image:linear-gradient(#000 55%,#0000)}.n-excerpt p+p{margin-top:12px}.n-read .f-actions{margin-top:8px}.n-read-time{color:var(--ink-3);font-size:14px}@media (hover:hover) and (pointer:fine){.n-read:hover .n-read-img img{transform:scale(1.03)}}.n-buy{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(24px,4vw,56px);display:grid}.n-buy-box{background:var(--fill);border-radius:28px;padding:28px}.n-buy-box .btn{width:100%;margin-top:10px}.n-buy-box .btn:first-of-type{margin-top:22px}.n-buy-price{align-items:baseline;gap:8px;display:flex}.n-buy-price b{font-family:var(--font-display);letter-spacing:-.03em;font-size:48px;font-weight:600;line-height:1}.n-buy-price span{color:var(--ink-2);font-size:15px}.n-buy-for{color:var(--ink-2);margin-top:6px;font-size:14px}.n-buy-note{color:var(--ink-3);margin-top:14px;font-size:12px}.n-sum{margin-top:22px}.n-sum div{box-shadow:0 -1px 0 var(--hair);justify-content:space-between;gap:16px;padding:12px 0;font-size:15px;display:flex}.n-sum .total{box-shadow:0 -1px 0 var(--hair), 0 1px 0 var(--hair);font-weight:600}.n-note{color:var(--ink-3);margin-top:14px;font-size:12px}.modal .n-excerpt{margin-top:18px;font-size:16px}.n-acc{box-shadow:0 -1px 0 var(--hair), 0 1px 0 var(--hair)}.n-acc .acc-t{font-size:17px}.n-faq .acc-head{grid-template-columns:minmax(0,1fr) 22px;padding:20px 0}.n-faq .acc-t{font-size:17px;font-weight:500}.n-faq .acc-c{color:var(--ink);font-size:18px}.n-faq .acc.is-open .acc-c{transform:rotate(45deg)}.n-answer{max-width:60ch;color:var(--ink-2);padding:0 0 22px;font-size:15px;line-height:1.6}.k-hero{height:calc(100svh - var(--top) - 16px);isolation:isolate;view-timeline-name:--khero;background:var(--k-tone,#e2ded3);--k-shade:linear-gradient(90deg, #e2ded3f0 0%, #e2ded3bf 34%, #e2ded300 58%);border-radius:28px;min-height:600px;max-height:1000px;margin:0 16px;position:relative;overflow:hidden}[data-theme=dark] .k-hero{--k-tone:#121211;--k-shade:linear-gradient(90deg, #0a0a0bf0 0%, #0a0a0bb3 40%, #0a0a0b59 100%)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .k-hero{--k-tone:#121211;--k-shade:linear-gradient(90deg, #0a0a0bf0 0%, #0a0a0bb3 40%, #0a0a0b59 100%)}}.k-hero-media{z-index:-2;width:68%;position:absolute;top:0;bottom:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 38%);mask-image:linear-gradient(90deg,#0000 0%,#000 38%)}.k-hero-media img{object-fit:cover;width:100%;height:100%}.k-hero:before{content:"";z-index:-1;background:var(--k-shade);position:absolute;inset:0}.k-hero-copy{width:min(560px,46%);position:absolute;bottom:clamp(36px,5.4vw,72px);left:clamp(28px,4.4vw,72px)}.k-hero h1{letter-spacing:-.04em;font-size:clamp(56px,7.4vw,124px);line-height:.94}.k-hero .n-lead{margin-top:26px}.k-hero .f-actions{margin-top:30px}.k-hero .f-hint{margin-top:4px}.js .k-hero{clip-path:inset(2.5% round 44px)}.js .k-hero.is-loaded{clip-path:inset(0 round 28px);transition:clip-path 1.3s var(--ease-out)}.js .k-hero-media{transform:scale(1.12)}.js .k-hero.is-loaded .k-hero-media{transition:transform 1.9s var(--ease-out);transform:none}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.k-hero-media img{animation:linear both k-drift;animation-timeline:--khero;animation-range:exit}.k-hero-copy{animation:linear both k-lift;animation-timeline:--khero;animation-range:exit exit 55%}}}@keyframes k-drift{to{transform:scale(1.1)translateY(7%)}}@keyframes k-lift{to{opacity:0;transform:translateY(-8vh)}}.k-glance{grid-template-columns:repeat(5,minmax(0,1fr));margin:40px 0 0;padding:0;list-style:none;display:grid}.k-glance li{box-shadow:-1px 0 0 var(--hair);padding:4px 22px}.k-glance li:first-child{box-shadow:none;padding-left:0}.k-glance b{font-family:var(--font-display);letter-spacing:-.026em;font-size:clamp(26px,2.6vw,34px);font-weight:600;line-height:1.1;display:block}.k-glance span{color:var(--ink-3);margin-top:4px;font-size:13px;display:block}.k-outcomes{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;margin:34px 0 0;padding:0;list-style:none;display:grid}.k-outcomes li{box-shadow:0 -1px 0 var(--hair);padding:26px 0}.k-outcomes b{max-width:18em;font-family:var(--font-display);letter-spacing:-.024em;font-size:clamp(22px,2.2vw,27px);font-weight:600;line-height:1.16;display:block}.k-outcomes p{max-width:34em;color:var(--ink-2);margin-top:10px;font-size:15px;line-height:1.5}.k-outcomes small{color:var(--ink-3);margin-top:12px;font-size:13px;display:block}.k-final{background:var(--fill);border-radius:28px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(24px,4vw,56px);margin-top:48px;padding:clamp(24px,3vw,40px);display:grid}.k-final h3{letter-spacing:-.03em;font-size:clamp(28px,3.2vw,40px);line-height:1.08}.k-final p{max-width:30em;color:var(--ink-2);margin-top:14px;font-size:17px;line-height:1.5}.k-final small{color:var(--ink-3);margin-top:16px;font-size:13px;display:block}.k-final-img{aspect-ratio:4/3.4;background:var(--surface-2);border-radius:20px;position:relative;overflow:hidden}.k-final-img img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.k-mods-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.k-mods{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:30px;display:grid}.k-mod{background:var(--fill);text-align:left;transition:background-color .2s ease, transform .16s var(--ease-out);border-radius:22px;flex-direction:column;padding:22px 24px;display:flex}.k-mod:active{transform:scale(.985)}.k-mod-top{color:var(--ink-3);justify-content:space-between;gap:12px;font-size:13px;display:flex}.k-mod b{font-family:var(--font-display);letter-spacing:-.022em;margin-top:10px;font-size:21px;font-weight:600;line-height:1.2;display:block}.k-mod p{color:var(--ink-2);margin-top:6px;font-size:14px;line-height:1.5}.k-mod-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:18px;font-size:13px;font-weight:500;display:flex}.k-mod-foot .more{align-items:center;gap:4px;display:inline-flex}.k-mod-foot .more .i{transition:transform .22s var(--ease-out);font-size:13px}.k-mod-foot .free{color:var(--ink);font-weight:600}@media (hover:hover) and (pointer:fine){.k-mod:hover{background:var(--fill-2)}.k-mod:hover .more .i{transform:translate(3px)}}.v-sheet .k-sheet-k{color:var(--ink-3);margin-bottom:6px;font-size:13px}.v-sheet .n-lessons{margin-top:20px}.v-sheet .k-all h3{letter-spacing:-.02em;margin-top:28px;font-size:17px}.v-sheet .k-all h3 span{color:var(--ink-3);font-weight:400}.v-sheet .k-all .n-lessons{margin-top:10px}.k-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 32px;margin:34px 0 0;padding:0;list-style:none;display:grid}.k-steps li{box-shadow:0 -1px 0 var(--hair);padding-top:20px}.k-steps .i{font-size:24px;display:block}.k-steps b{letter-spacing:-.022em;margin-top:14px;font-size:18px;font-weight:600;display:block}.k-steps p{color:var(--ink-2);margin-top:6px;font-size:14px;line-height:1.5}.k-note{color:var(--ink-3);margin-top:28px;font-size:14px}.k-filter-wrap{scrollbar-width:none;max-width:100%;margin:-2px;padding:2px;overflow-x:auto}.k-filter-wrap::-webkit-scrollbar{display:none}.k-filter{background:var(--fill);border-radius:999px;width:max-content;padding:3px;display:inline-flex;position:relative}.k-filter-base,.k-filter-over{display:flex}.k-filter-base button,.k-filter-over>span{white-space:nowrap;border-radius:999px;align-items:center;gap:7px;height:34px;padding:0 14px;font-size:13px;font-weight:500;display:flex}.k-filter-base button{color:var(--ink-2);transition:color .2s ease, transform .16s var(--ease-out)}.k-filter-base button:active{transform:scale(.96)}.k-filter .n{opacity:.6;font-size:12px}.k-filter-over{--l:0px;--r:100%;pointer-events:none;background:var(--btn);color:var(--on-btn);clip-path:inset(0 var(--r,100%) 0 var(--l,0px) round 999px);transition:clip-path .32s var(--ease-in-out);border-radius:999px;position:absolute;inset:3px}@media (hover:hover) and (pointer:fine){.k-filter-base button:hover{color:var(--ink)}}html:not(.js) .k-filter-over{display:none}.k-lib{box-shadow:0 1px 0 var(--hair);margin:26px 0 0;padding:0;list-style:none}.k-lib>li{box-shadow:0 -1px 0 var(--hair);grid-template-columns:72px minmax(0,1fr) 110px auto;align-items:center;gap:20px;padding:18px 0;display:grid}.k-lib>li[hidden]{display:none}.k-lib .f-thumb{border-radius:18px;width:72px;height:72px}.k-lib-t b{letter-spacing:-.022em;font-size:18px;font-weight:600;display:block}.k-lib-t a{transition:color .2s}.k-lib-t small{color:var(--ink-2);margin-top:3px;font-size:13px;display:block}.k-prog{align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.k-prog .ring{width:32px;height:32px}.k-prog .ring circle{stroke-width:3px}.k-prog.is-new{color:var(--ink-3);font-weight:400}.k-lib .btn{height:40px}.k-lib>li.k-lib-empty{color:var(--ink-2);padding:26px 0;font-size:15px;display:block}.k-lib>li.k-lib-empty[hidden]{display:none}.k-lib-empty b{color:var(--ink);font-weight:600}@media (hover:hover) and (pointer:fine){.k-lib>li:hover .f-thumb img{transform:scale(1.06)}.k-lib-t a:hover{color:var(--ink-2)}}.k-empty{margin:0;padding:0;list-style:none}.k-empty li{border-top:1px dashed var(--line);grid-template-columns:64px minmax(0,1fr);align-items:center;gap:18px;padding:16px 0;display:grid}.k-empty li:last-child{border-bottom:1px dashed var(--line)}.k-slot{border:1.5px dashed var(--line);width:64px;height:64px;color:var(--ink-3);border-radius:16px;place-items:center;font-size:20px;display:grid}.k-bar{background:var(--fill-2);border-radius:5px;height:10px;display:block}.k-bar+.k-bar{background:var(--fill);margin-top:9px}.k-empty b{letter-spacing:-.02em;font-size:16px;font-weight:600;display:block}.k-empty small{color:var(--ink-3);margin-top:3px;font-size:13px;display:block}.k-disc{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px;display:grid}.k-disc-card{text-align:left;flex-direction:column;display:flex}.k-disc-img{aspect-ratio:4/3;background:var(--surface-2);border-radius:24px;position:relative;overflow:hidden}.k-disc-img img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out);position:absolute;inset:0}.k-disc-card>b{font-family:var(--font-display);letter-spacing:-.022em;margin-top:16px;font-size:22px;font-weight:600;display:block}.k-disc-card p{color:var(--ink-2);margin-top:6px;font-size:15px;line-height:1.5}.k-disc-card .f-actions{margin-top:14px}@media (hover:hover) and (pointer:fine){.k-disc-card:hover .k-disc-img img{transform:scale(1.03)}}.k-disc.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}.k-disc.is-3 .k-disc-img{aspect-ratio:4/4.6}@media (width<=900px){.k-disc.is-3{grid-template-columns:minmax(0,1fr)}.k-disc.is-3 .k-disc-img{aspect-ratio:4/3}}.k-glance.is-4{grid-template-columns:repeat(4,minmax(0,1fr))}.brand{align-items:center;display:inline-flex}.brand .logo{width:auto;height:22px;display:block}.brand .logo.is-dark,[data-theme=dark] .brand .logo.is-light{display:none}[data-theme=dark] .brand .logo.is-dark{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .brand .logo.is-light{display:none}:root:not([data-theme=light]) .brand .logo.is-dark{display:block}}.v-me{position:relative}@media (width<=400px){.f-top .v-me .avatar{display:grid}.f-top .seg button{padding:0 7px;font-size:11.5px}}.v-menu{z-index:60;background:var(--surface);min-width:250px;box-shadow:var(--shadow-lg), 0 0 0 1px var(--hair);transform-origin:100% 0;opacity:0;visibility:hidden;transition:transform .15s var(--ease-out), opacity .15s ease, visibility 0s linear .15s;border-radius:16px;padding:6px;position:absolute;top:calc(100% + 10px);right:0;transform:scale(.96)}.v-menu.is-open{opacity:1;visibility:visible;transition:transform .2s var(--ease-out), opacity .14s ease;transform:none}.v-menu-who{box-shadow:0 1px 0 var(--hair);margin-bottom:4px;padding:10px 12px 12px}.v-menu-who b{font-size:14px;font-weight:600;display:block}.v-menu-who span{color:var(--ink-3);margin-top:1px;font-size:12px;display:block}.v-menu a,.v-menu button{width:100%;color:var(--ink);text-align:left;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.v-menu .i{color:var(--ink-2);font-size:17px}@media (hover:hover) and (pointer:fine){.v-menu a:hover,.v-menu button:hover{background:var(--fill-2)}}.js .dock[data-global]{transform:translate(-50%)}.dock[data-global] .dock-over.is-none{visibility:hidden}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}.dock[data-global]{view-transition-name:app-dock}.calm .dock[data-global]{view-transition-name:none}.remind .check{opacity:0;width:0;transition:width .24s var(--ease-out), opacity .2s ease;display:inline-grid;overflow:hidden}.remind.is-on .check{opacity:1;width:14px}.remind.is-on{background:var(--btn);color:var(--on-btn)}.f-course.is-static{cursor:default;grid-template-columns:64px minmax(0,1fr) auto auto}.f-course.is-static:active{transform:none}.f-course .remind{height:34px;padding:0 14px;font-size:13px}@media (width<=1000px){.k-glance{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:22px}.k-glance li:nth-child(4){box-shadow:none;padding-left:0}.k-glance.is-4{grid-template-columns:repeat(2,minmax(0,1fr))}.k-glance.is-4 li:nth-child(3){box-shadow:none;padding-left:0}.k-glance.is-4 li:nth-child(4){box-shadow:-1px 0 0 var(--hair);padding-left:22px}.k-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}}@media (width<=860px){.n-hero,.n-reco,.n-read,.n-buy,.k-final,.k-outcomes{grid-template-columns:minmax(0,1fr)}.k-hero{border-radius:24px;height:auto;min-height:0;max-height:none;margin:0 12px}.k-hero:before{display:none}.k-hero-media{width:100%;height:56svh;min-height:320px;position:relative;-webkit-mask-image:none;mask-image:none}.k-hero-copy{width:auto;padding:26px 22px 30px;position:static}.k-hero h1{font-size:clamp(46px,13vw,64px)}.n-frame-wrap{order:-1}.n-frame{aspect-ratio:4/3.2}.n-read-img{aspect-ratio:4/3}}@media (width<=600px){.js .dock[data-global]{transform:none}.f-course.is-static{grid-template-columns:56px minmax(0,1fr) auto}.f-course.is-static .state{display:none}.brand .logo{height:20px}.k-glance{grid-template-columns:repeat(2,minmax(0,1fr))}.k-glance li,.k-glance li:first-child,.k-glance li:nth-child(4){box-shadow:0 -1px 0 var(--hair);padding:14px 0 0}.k-glance li:last-child{grid-column:1/-1}.k-glance.is-4 li:last-child{grid-column:auto}.k-glance.is-4 li:nth-child(4){box-shadow:0 -1px 0 var(--hair);padding:14px 0 0}.k-mods,.k-steps,.k-disc{grid-template-columns:minmax(0,1fr)}.k-lib>li{grid-template-columns:56px minmax(0,1fr) auto;grid-template-areas:"img txt txt""img prog act";gap:10px 14px}.k-lib .f-thumb{border-radius:14px;grid-area:img;align-self:start;width:56px;height:56px}.k-lib-t{grid-area:txt}.k-prog{grid-area:prog}.k-lib-act{grid-area:act;justify-self:end}.k-lib .btn{height:36px;padding:0 14px;font-size:13px}.k-final{border-radius:22px;padding:20px}.dock:has(.dock-base>:nth-child(5)) .dock-base>*{letter-spacing:-.01em;padding:0 2px;font-size:10px}.dock:has(.dock-base>a:nth-child(5)) .dock-over>span{letter-spacing:-.01em;padding:0 2px;font-size:10px}.n-frame,.n-read-img{border-radius:22px}.n-buy-box{border-radius:22px;padding:22px}}@media (prefers-reduced-motion:reduce){.js .n-frame-wrap .n-frame,.js .k-hero,.js .k-hero.is-loaded{clip-path:none}.js .k-hero-media{transform:none}}.calm .n-frame-wrap .n-frame,.calm .k-hero{clip-path:none!important}.calm .k-hero-media{transform:none!important}@media (prefers-reduced-motion:reduce){.k-filter-over{transition-duration:0s}}.ticks,.b-lesson .ticks{max-width:min(420px, calc(var(--n,34) * 12.5px))}.f-now-cap .ticks{width:min(360px, 100%, calc(var(--n,34) * 12.5px))}
