@font-face{font-family:Unbounded;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/d0d9446e69c4847e-s.3h31fjnwrfycc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/4e1c87b7aa9e2f2f-s.3o02-8iknf6dl.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/3fd967fc5374d70a-s.42u1-lj4buy61.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Unbounded;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/dd14639a62c56cb2-s.0kda-l-rfpyyq.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Unbounded;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/b59689b1142d37ce-s.p.1bk8_xp319hr4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Unbounded Fallback;src:local(Arial);ascent-override:73.93%;descent-override:18.2%;line-gap-override:0.0%;size-adjust:134.59%}.unbounded_15285753-module__0VkvPG__className{font-family:Unbounded,Unbounded Fallback;font-style:normal}.unbounded_15285753-module__0VkvPG__variable{--font-display:"Unbounded", "Unbounded Fallback"}
@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4084ce120da2621a-s.0for97nelvzih.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/16d91c780434f2ce-s.0y1w0k24nk0rl.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/a45e4938f2a14ebd-s.3e-lg5zbsykpq.woff2)format("woff2");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-209F,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/611a8bd7707cff25-s.1vqdc5lvrb4tb.woff2)format("woff2");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AE,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F8D0-1F8D8,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FAC6,U+1FAC8,U+1FACC-1FADD,U+1FADF-1FAEB,U+1FAEF-1FAFA,U+1FB??}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4d81d00cb6dc755c-s.3j7br4w5g0o3h.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ef79401ea952b7f0-s.0t4d9turf_6_x.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8800dfc60902df36-s.2sla2yow9-9p_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Onest Fallback;src:local(Arial);ascent-override:92.2%;descent-override:28.99%;line-gap-override:0.0%;size-adjust:105.2%}.onest_e41fc6b0-module___V6H5q__className{font-family:Onest,Onest Fallback;font-style:normal}.onest_e41fc6b0-module___V6H5q__variable{--font-text:"Onest", "Onest Fallback"}
*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--canvas);color:var(--ink);font-family:var(--font-t);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"kern";margin:0;font-size:1.0625rem;line-height:1.55;overflow-x:clip}img,svg{max-width:100%;display:block}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1.5px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,h4,p,ul,ol,dl,figure{margin:0}ul,ol{padding:0;list-style:none}h1,h2,h3,h4{font-family:var(--font-d);letter-spacing:-.03em;text-wrap:balance;font-weight:700;line-height:1.06}p,li,dd{text-wrap:pretty}strong,b{font-weight:650}.tabular,time{font-variant-numeric:tabular-nums}:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:6px}::selection{background:var(--de);color:var(--ink)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}#main:focus{outline:none}.shell{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.muted{color:var(--ink-2)}.small{font-size:.875rem}.loading{padding:120px var(--gutter);text-align:center}.display-1{letter-spacing:-.045em;font-size:clamp(2.3rem,5.2vw,4.75rem);line-height:1}.display-2{letter-spacing:-.04em;font-size:clamp(1.75rem,3.3vw,3.1rem);line-height:1.04}.lead{max-width:40ch;color:var(--ink-2);font-size:clamp(1.08rem,1.4vw,1.3rem);line-height:1.5}.outline{color:var(--de)}.button{--b-bg:var(--ink);--b-fg:var(--canvas);border:2px solid var(--b-bg);background:var(--b-bg);min-height:48px;color:var(--b-fg);white-space:nowrap;transition:transform .35s var(--spring), background-color .2s, color .2s, border-color .2s;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:12px 22px;font-weight:650;line-height:1.2;text-decoration:none;display:inline-flex}.button svg{transition:transform .35s var(--spring);flex:none}.button:hover{transform:translateY(-2px)}.button:hover svg:last-child{transform:translate(3px)}.button:active{transform:translateY(0)scale(.97)}.button:disabled,.button[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none}.button-ghost{--b-bg:transparent;--b-fg:var(--ink);border-color:var(--ink)}.button-ghost:hover{background:var(--ink);color:var(--canvas)}.button-light{--b-bg:var(--canvas);--b-fg:var(--ink)}.button-small{min-height:44px;padding:8px 16px;font-size:.9375rem}.button-big{min-height:56px;padding:14px 28px;font-size:1.0625rem}.text-link,.text-button{min-height:44px;color:inherit;text-underline-offset:.3em;background:0 0;border:0;align-items:center;gap:6px;padding:8px 0;font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;display:inline-flex}.text-link:hover,.text-button:hover{text-decoration-thickness:3px}.icon-button{background:var(--cream);border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:inline-grid}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px solid var(--line-strong);background:var(--paper);min-height:44px;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .3s var(--spring), background-color .18s, border-color .18s, color .18s;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:.9375rem;font-weight:550;line-height:1.2;display:inline-flex;position:relative}.chip:hover{border-color:var(--ink)}.chip:active{transform:scale(.95)}.chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.chip:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:2px}.chip[aria-pressed=true],.chip[aria-checked=true]{background:var(--ink);border-color:var(--ink);color:var(--canvas);animation:chip-pop .4s var(--spring)}.chip:has(input:checked){background:var(--ink);border-color:var(--ink);color:var(--canvas);animation:chip-pop .4s var(--spring)}.chip[data-lang][aria-pressed=true],.chip[data-lang][aria-checked=true]{background:var(--c);border-color:var(--c);color:var(--on)}.chip[data-lang]:has(input:checked){background:var(--c);border-color:var(--c);color:var(--on)}.chip-swatch{background:var(--c);width:12px;height:12px;box-shadow:0 0 0 1.5px var(--paper);border-radius:4px 4px 4px 0;flex:none}.chip-count{background:var(--cream);min-width:1.6em;color:var(--ink);font-variant-numeric:tabular-nums;text-align:center;border-radius:999px;padding:1px 6px;font-size:.75rem;font-weight:650}.chip[aria-pressed=true] .chip-count{color:var(--ink);background:#ffffffd9}.chip:has(input:checked) .chip-count{color:var(--ink);background:#ffffffd9}.chip[data-empty]:not(:has(input:checked)){color:var(--ink-2);border-style:dashed}@keyframes chip-pop{0%{transform:scale(.92)}60%{transform:scale(1.06)}to{transform:scale(1)}}.level-tag{background:var(--ink);color:var(--canvas);font-family:var(--font-t);letter-spacing:.02em;font-variant-numeric:tabular-nums;vertical-align:.15em;white-space:nowrap;border-radius:6px;padding:1px 7px;font-size:.75rem;font-weight:700;display:inline-block}.badge{background:var(--es);min-width:22px;height:22px;color:var(--ink);border-radius:999px;place-items:center;padding:0 6px;font-size:.75rem;font-weight:700;display:inline-grid}.field{gap:6px;margin-bottom:18px;display:grid}.field label,.pref-label{font-size:.9375rem;font-weight:600}.optional{color:var(--ink-2);font-weight:400}input[type=text],input[type=email],input[type=tel],input:not([type]),select,textarea{border:1.5px solid var(--line-strong);border-radius:var(--r-m);background:var(--paper);width:100%;min-height:50px;padding:12px 16px;transition:border-color .18s}input:hover,select:hover,textarea:hover{border-color:var(--ink)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--en);outline-offset:1px;border-color:var(--ink)}[aria-invalid=true]{border-color:var(--bad);background:#fff8f6}.error{color:var(--bad);font-size:.9375rem;font-weight:600}.helper{color:var(--ink-2);font-size:.875rem}.notice{color:var(--ink-2);align-items:flex-start;gap:8px;font-size:.9rem;display:flex}.notice:before{content:"";background:var(--de);border-radius:50% 50% 50% 0;flex:none;width:10px;height:10px;margin-top:.4em}.tile{border-radius:var(--r-xl);background:var(--paper);padding:clamp(22px,3vw,40px);position:relative}.tile-title{letter-spacing:-.02em;margin-bottom:16px;font-size:1.05rem}.section-head{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:end;gap:24px 48px;margin-bottom:clamp(24px,4vw,48px);display:grid}.section-head p{color:var(--ink-2);max-width:46ch}.section-head>.text-link{justify-self:end}@media (max-width:860px){.section-head{grid-template-columns:1fr;align-items:start}.section-head>.text-link{justify-self:start}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal,.bento>.tile,.people-row>li,.week-band .timetable{animation:linear both rise;animation-timeline:view();animation-range:entry entry 55%}}}@keyframes rise{0%{opacity:0;transform:translateY(36px)scale(.98)}to{opacity:1;transform:none}}.hero{grid-template-rows:auto auto;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;padding-block:14px clamp(40px,6vw,80px);display:grid}.hero-main{min-height:min(640px, calc(100svh - var(--header-h) - 40px));flex-direction:column;grid-area:1/1/3/9;justify-content:space-between;gap:clamp(24px,3vw,36px);display:flex;overflow:hidden}.hero-title{letter-spacing:-.045em;max-width:13ch;font-size:clamp(2.05rem,4.4vw,4.2rem);line-height:1.02}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-next{flex-direction:column;grid-area:1/9/auto/13;display:flex}.hero-langs{background:0 0;grid-area:2/9/auto/13;padding:12px}.hero-langs ul{grid-template-columns:1fr 1fr;gap:8px;height:100%;display:grid}.hero-langs li:first-child{grid-column:1/-1}.lang-tile{border-radius:var(--r-l);background:var(--c);height:100%;min-height:92px;color:var(--on);transition:transform .4s var(--spring);flex-direction:column;justify-content:space-between;gap:10px;padding:14px 16px 12px;text-decoration:none;display:flex}.lang-tile:hover{transform:translateY(-4px)rotate(-1.2deg)}.lang-tile:active{transform:scale(.97)}.lang-tile-native{font-family:var(--font-d);letter-spacing:-.03em;font-size:clamp(1.15rem,1.6vw,1.5rem);font-weight:700;line-height:1}.lang-tile-meta{font-size:.8125rem;font-weight:600}.next-list{gap:4px;margin-bottom:auto;display:grid}.next-list a{border-radius:var(--r-m);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;margin-inline:-8px;padding:10px 8px;text-decoration:none;transition:background-color .2s;display:grid}.next-list a:hover{background:var(--soft)}.next-code{background:var(--c);width:40px;height:40px;color:var(--on);font-family:var(--font-d);border-radius:12px 12px 12px 3px;place-items:center;font-size:.75rem;font-weight:700;display:grid}.next-body{min-width:0;display:grid}.next-name{font-size:.9375rem;font-weight:650;line-height:1.3}.next-when{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.8125rem}.next-seats{color:var(--tx);white-space:nowrap;font-size:.8125rem;font-weight:650}.hello{--hello-size:clamp(3.2rem, 9.6vw, 8.6rem);--slot:2.2s;position:relative}.hello-stage{min-height:calc(var(--hello-size) * 1.42);align-items:end;display:grid}.hello-word{opacity:0;transform-origin:0 100%;animation:hello calc(var(--count) * var(--slot)) var(--ease) infinite both;animation-delay:calc(var(--i) * var(--slot));flex-wrap:wrap;grid-area:1/1;align-items:flex-end;gap:.6rem 1rem;display:flex}.hello-bubble{background:var(--c);color:var(--on);font-family:var(--font-d);font-size:var(--hello-size);letter-spacing:-.045em;white-space:nowrap;border-radius:.3em;margin-bottom:.2em;padding:.06em .3em .13em;font-weight:800;line-height:1.05;display:inline-block;position:relative}.hello-bubble:after{content:"";background:inherit;clip-path:polygon(0 0,100% 0,0 100%);width:.34em;height:.24em;position:absolute;bottom:-.19em;left:.42em}.hello-word:lang(ja) .hello-bubble,.hello-word:lang(zh) .hello-bubble,.hello-word:lang(el) .hello-bubble{letter-spacing:0;font-weight:800}.hello-name{color:var(--tx);margin-bottom:.6em;font-size:.875rem;font-weight:650}@keyframes hello{0%{opacity:0;transform:translateY(18%)rotate(-4deg)scale(.86)}2%{opacity:1;transform:none}7.2%{opacity:1;transform:none}8.33%{opacity:0;transform:translateY(-10%)scale(.97)}to{opacity:0;transform:translateY(-10%)scale(.97)}}.hello-pause:checked~.hello-stage .hello-word{animation-play-state:paused}.hello-toggle{border:1.5px solid var(--line-strong);background:var(--paper);cursor:pointer;border-radius:999px;align-items:center;min-height:44px;padding:6px 14px;font-size:.8125rem;font-weight:600;display:inline-flex;position:absolute;top:0;right:0}.hello-toggle:hover{border-color:var(--ink)}.hello-toggle>span{align-items:center;gap:6px;display:inline-flex}.hello-toggle-play,.hello-pause:checked~.hello-toggle .hello-toggle-pause{display:none!important}.hello-pause:checked~.hello-toggle .hello-toggle-play{display:inline-flex!important}.hello-pause:focus-visible~.hello-toggle{outline:3px solid var(--ink);outline-offset:3px}@media (prefers-reduced-motion:reduce){.hello-word{animation:none}.hello-word:first-child{opacity:1}.hello-toggle{display:none}}.band{padding-block:clamp(56px,8vw,112px)}.band-ink{background:var(--ink);color:var(--canvas);border-radius:var(--r-xl);margin-inline:clamp(8px,1vw,14px)}.check{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(32px,5vw,80px);display:grid}.check-copy{justify-items:start;gap:24px;display:grid}.check-copy p{color:#f8f5eec7;max-width:44ch}.week-band{padding-block:clamp(64px,9vw,128px) 0}.week-cta{flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:28px;display:flex}.legend{flex-wrap:wrap;gap:6px 16px;margin-top:16px;font-size:.875rem;font-weight:600;display:flex}.legend span{align-items:center;gap:8px;display:inline-flex}.legend span:before{content:"";background:var(--c);border-radius:5px 5px 5px 1px;width:14px;height:14px}.lesson{padding-block:clamp(64px,9vw,128px) 0}.bento{grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;display:grid}.tile-anatomy{grid-area:span 2/1/auto/8;align-content:start;gap:20px;display:grid}.tile-anatomy>p{color:var(--ink-2);max-width:50ch}.anatomy{gap:6px;margin-top:12px;display:flex}.anatomy li{flex:var(--min) 1 0;background:var(--c);min-width:104px;color:var(--on);border-radius:18px 18px 18px 4px;align-content:start;gap:2px;min-height:150px;padding:14px 12px 16px;font-size:.875rem;line-height:1.3;display:grid}.anatomy strong{font-family:var(--font-d);letter-spacing:-.02em;-webkit-hyphens:auto;hyphens:auto;font-size:.95rem}.anatomy-min{opacity:.85;margin-bottom:auto;padding-bottom:24px;font-size:.8125rem;font-weight:700}.tile-fact{background:var(--soft);flex-wrap:wrap;grid-column:span 5;align-items:center;gap:8px 20px;display:flex}.tile-fact:nth-of-type(3),.tile-fact:nth-of-type(4){grid-column:span 5}.fact-big{font-family:var(--font-d);letter-spacing:-.05em;color:var(--tx);flex:none;font-size:clamp(2.4rem,4.2vw,4rem);font-weight:800;line-height:1}.tile-fact p{flex:16ch;max-width:30ch;font-weight:550}.lesson .bento{grid-template-rows:auto auto auto}.lesson .tile-fact[data-lang=es],.lesson .tile-fact[data-lang=en]{grid-column:8/13}.lesson .tile-fact[data-lang=de]{grid-column:1/6}.tile-quote{grid-column:6/13;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px 20px;display:grid}.tile-quote p{font-size:1.125rem;font-weight:500}.tile-quote .text-link{grid-column:2}.people{padding-block:clamp(64px,9vw,128px) 0}.people-row{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;display:grid}.people-row li:nth-child(2n){margin-top:40px}.person{gap:4px;text-decoration:none;display:grid}.person .portrait{aspect-ratio:4/5;border-radius:var(--r-l) var(--r-l) var(--r-l) 6px;transition:transform .45s var(--spring)}.person:hover .portrait{transform:rotate(-1.5deg)scale(1.02)}.person-bubble{background:var(--c);color:var(--on);z-index:1;max-width:calc(100% - 10px);transition:transform .4s var(--spring);border-radius:14px 14px 14px 3px;justify-self:start;margin:-26px 0 8px 10px;padding:6px 12px;font-size:.875rem;font-weight:650;line-height:1.25;position:relative}.person:hover .person-bubble{transform:translateY(-4px)rotate(-2deg)}.person-name{font-family:var(--font-d);letter-spacing:-.02em;font-size:1rem;font-weight:700}.person-langs{color:var(--ink-2);font-size:.875rem}.portrait{background:var(--c);isolation:isolate;position:relative;overflow:hidden}.portrait img{object-fit:cover;filter:grayscale()contrast(1.12)brightness(1.06);mix-blend-mode:multiply}.portrait[data-lang=de] img,.portrait[data-lang=it] img,.portrait[data-lang=es] img{filter:grayscale()contrast(1.18)brightness(1.02)}.money-band{padding-block:clamp(64px,9vw,128px) 0}.bento-2 .tile-price{background:var(--de);grid-column:1/8;justify-items:start;gap:20px;display:grid}.bento-2 .tile-price p{max-width:48ch}.bento-2 .tile-faq{grid-column:8/13}.tile-faq ul{display:grid}.tile-faq li+li{border-top:1px solid var(--line)}.tile-faq a{justify-content:space-between;gap:16px;padding:14px 0;font-weight:600;text-decoration:none;display:flex}.tile-faq a:after{content:"";width:18px;height:18px;transition:transform .3s var(--spring);background:currentColor;flex:none;align-self:center;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") 50%/contain no-repeat}.tile-faq a:hover:after{transform:translate(4px)}.closing{text-align:center;justify-items:center;gap:32px;padding-block:clamp(80px,12vw,160px);display:grid}.closing h2{letter-spacing:-.05em;max-width:14ch;font-size:clamp(2.2rem,6vw,5.6rem);line-height:.98}.closing-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.page-head{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:end;gap:16px 56px;padding-block:clamp(28px,4vw,56px) clamp(20px,2.6vw,36px);display:grid}.page-head h1{letter-spacing:-.045em;font-size:clamp(2.1rem,4.4vw,4rem);line-height:1}.page-head p{color:var(--ink-2);max-width:46ch;font-size:1.125rem}@media (max-width:860px){.page-head{grid-template-columns:1fr}}.prose{gap:16px;max-width:68ch;display:grid}.prose h2{margin-top:24px;font-size:clamp(1.4rem,2.2vw,1.9rem)}.breadcrumb{padding-top:20px}.breadcrumb a{align-items:center;gap:8px;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.breadcrumb a:hover{text-decoration:underline}.empty{border:2px dashed var(--line-strong);border-radius:var(--r-xl);justify-items:start;gap:14px;padding:clamp(24px,4vw,48px);display:grid}.empty h2{font-size:1.5rem}.empty p{color:var(--ink-2);max-width:52ch}.empty-actions{flex-wrap:wrap;gap:10px;display:flex}.course-hero{border-radius:var(--r-xl);background:var(--c);color:var(--on);margin:8px clamp(8px,1vw,14px) 0;position:relative;overflow:hidden}.course-hero-inner{z-index:1;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px 64px;padding-block:clamp(28px,4vw,56px) clamp(32px,5vw,64px);display:grid;position:relative}.course-hero .breadcrumb{grid-column:1/-1;padding:0}.course-tags{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.course-tags span{border:1.5px solid;border-radius:999px;padding:4px 12px;font-size:.875rem;font-weight:650}.course-hero h1{letter-spacing:-.045em;max-width:16ch;font-size:clamp(2.1rem,4.8vw,4.4rem);line-height:1}.course-tagline{max-width:40ch;margin-top:18px;font-size:1.2rem}.course-keyfacts{grid-template-columns:1fr 1fr;align-self:end;gap:8px;display:grid}.course-keyfacts div{border-radius:var(--r-m);color:var(--ink);background:#ffffffeb;padding:14px 16px}.course-keyfacts dt{color:var(--ink-2);font-size:.8125rem}.course-keyfacts dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:1.05rem;font-weight:700}.course-hero-code{font-family:var(--font-d);letter-spacing:-.06em;color:#ffffff29;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:clamp(10rem,28vw,26rem);font-weight:800;line-height:1;position:absolute;bottom:-.28em;right:-.06em}[data-lang=es] .course-hero-code,[data-lang=de] .course-hero-code,[data-lang=it] .course-hero-code,.course-hero[data-lang=es] .course-hero-code,.course-hero[data-lang=de] .course-hero-code,.course-hero[data-lang=it] .course-hero-code{color:#16141d1a}.course-body{grid-template-columns:minmax(0,1fr) minmax(320px,400px);align-items:start;gap:clamp(32px,5vw,72px);padding-block:clamp(40px,6vw,80px);display:grid}.course-section+.course-section{margin-top:clamp(48px,6vw,80px)}.course-section>h2{margin-bottom:24px;font-size:clamp(1.6rem,2.6vw,2.4rem)}.outcomes{grid-template-columns:1fr 1fr;gap:12px;display:grid}.outcomes li{background:var(--soft);border-radius:22px 22px 22px 4px;padding:18px 20px 20px;font-size:1.05rem;font-weight:550;line-height:1.35;position:relative}.outcomes li:before{content:counter(list-item, decimal-leading-zero);font-family:var(--font-d);color:var(--tx);margin-bottom:18px;font-size:.875rem;font-weight:700;display:block}.syllabus{display:grid;position:relative}.syllabus li{border-top:1px solid var(--line);grid-template-columns:112px minmax(0,1fr) auto;gap:4px 20px;padding:18px 0;display:grid}.syllabus li:last-child{border-bottom:1px solid var(--line)}.syl-week{font-family:var(--font-d);color:var(--tx);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:700}.syl-title{font-size:1.1rem;font-weight:700}.syl-detail{color:var(--ink-2);grid-column:2}.syl-spot{background:var(--paper);border:1.5px solid var(--line-strong);text-align:right;border-radius:14px 14px 3px;grid-area:1/3/3;align-self:center;max-width:20ch;padding:6px 12px;font-size:.875rem;font-style:italic;font-weight:600}.teacher-card{border-radius:var(--r-xl);background:var(--paper);grid-template-columns:160px minmax(0,1fr);align-items:center;gap:24px;padding:18px;display:grid}.teacher-card .portrait{aspect-ratio:4/5;border-radius:var(--r-l) var(--r-l) var(--r-l) 6px}.teacher-card h3{margin-bottom:6px;font-size:1.4rem}.teacher-card p+p{margin-top:10px}.materials{gap:10px;display:grid}.materials li{align-items:flex-start;gap:12px;display:flex}.materials li:before{content:"";background:var(--c);border-radius:5px 5px 5px 1px;flex:none;width:14px;height:14px;margin-top:.3em}.course-aside{top:calc(var(--header-h) + 16px);position:sticky}.planner{border-radius:var(--r-xl);background:var(--paper);gap:16px;padding:22px;display:grid}.planner h2{font-size:1.35rem}.planner-total{border-top:1px solid var(--line);gap:2px;padding-top:16px;display:grid}.planner-actions{gap:8px;display:grid}.planner-actions .button{width:100%}.week-strip{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.week-strip span{background:var(--cream);height:34px;color:var(--ink-2);border-radius:10px;place-items:center;font-size:.75rem;font-weight:650;display:grid}.week-strip span[data-on]{background:var(--c);color:var(--on)}.course-bar{display:none}.teacher-filters{border-radius:var(--r-xl);background:var(--paper);gap:14px;margin-bottom:24px;padding:18px;display:grid}.teacher-filters .row{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.teacher-filters .row>span{min-width:96px;font-size:.875rem;font-weight:650}.teacher-count{margin-bottom:16px;font-weight:650}.teacher-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,540px),1fr));gap:14px;display:grid}.teacher-tile{border-radius:var(--r-xl);background:var(--paper);animation:card-in .5s var(--spring) both;grid-template-columns:200px minmax(0,1fr);gap:20px;padding:16px;display:grid}.teacher-tile .portrait{aspect-ratio:4/5;border-radius:var(--r-l) var(--r-l) var(--r-l) 6px;align-self:start}.teacher-tile h2{margin-bottom:8px;font-size:1.35rem}.teacher-langs{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.teacher-langs span{background:var(--c);color:var(--on);border-radius:999px;padding:3px 10px;font-size:.8125rem;font-weight:650}.teacher-tile .bio{color:var(--ink-2);font-size:.975rem}.teacher-spec{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.teacher-spec li{border:1.5px solid var(--line-strong);border-radius:999px;padding:2px 10px;font-size:.8125rem;font-weight:600}.teacher-courses{border-top:1px solid var(--line);gap:2px;margin-top:14px;padding-top:12px;font-size:.9375rem;display:grid}.teacher-courses a{justify-self:start;align-items:center;min-height:32px;font-weight:600;display:inline-flex}.price-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.price-table caption{text-align:left;color:var(--ink-2);padding-bottom:12px}.price-table th,.price-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:14px 12px}.price-table thead th{color:var(--ink-2);border-bottom:1.5px solid var(--ink);font-size:.8125rem;font-weight:650}.price-table td.num,.price-table th.num{text-align:right;white-space:nowrap}.price-table tbody th a{font-weight:650}.price-table .swatch{background:var(--c);border-radius:4px 4px 4px 1px;width:12px;height:12px;margin-right:10px;display:inline-block}.price-wrap{border-radius:var(--r-xl);background:var(--paper);padding:8px 20px 12px;overflow-x:auto}.price-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.price-card{border-radius:var(--r-xl);background:var(--soft);align-content:start;gap:10px;padding:24px;display:grid}.price-card h2{font-size:1.3rem}.price-card .from{font-family:var(--font-d);letter-spacing:-.05em;font-size:2.4rem;font-weight:800;line-height:1}.price-card ul{gap:6px;font-size:.9375rem;display:grid}.price-card li{align-items:flex-start;gap:8px;display:flex}.price-card li:before{content:"";background:var(--tx);flex:none;width:14px;height:14px;margin-top:.3em;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") 50%/contain no-repeat}.calc{border-radius:var(--r-xl);background:var(--ink);color:var(--canvas);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:24px;padding:24px;display:grid}.calc select{color:var(--ink)}.calc label{font-weight:650}.calc-out{gap:4px;display:grid}.calc-out strong{font-family:var(--font-d);letter-spacing:-.04em;font-size:clamp(1.6rem,3vw,2.4rem)}.calc-months{gap:6px;margin-top:8px;display:flex}.calc-months span{font-variant-numeric:tabular-nums;text-align:center;background:#f8f5ee1f;border-radius:12px;flex:1;padding:10px;font-size:.8125rem}.faq{gap:8px;display:grid}.faq details{border-radius:var(--r-l);background:var(--paper);transition:background-color .2s}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:14px 22px;font-size:1.05rem;font-weight:650;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";background:var(--cream);width:32px;height:32px;transition:transform .35s var(--spring);border-radius:50%;flex:none;place-items:center;font-size:1.25rem;display:grid}.faq details[open] summary:after{background:var(--de);transform:rotate(45deg)}.faq details>div{color:var(--ink-2);max-width:70ch;padding:0 22px 20px}.faq details:target{outline:3px solid var(--de)}.about-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;display:grid}.about-grid .tile{grid-column:span 6}.about-grid .tile-wide{grid-column:1/-1}.about-grid .tile h2{margin-bottom:14px;font-size:clamp(1.4rem,2.4vw,2rem)}.about-grid .tile p+p{margin-top:12px}.about-grid .tile[data-lang]{background:var(--soft)}.steps-diagram{counter-reset:s;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.steps-diagram li{background:var(--c);color:var(--on);border-radius:20px 20px 20px 4px;align-content:space-between;gap:16px;min-height:150px;padding:18px;display:grid}.steps-diagram li:before{counter-increment:s;content:counter(s);font-family:var(--font-d);font-size:2rem;font-weight:800;line-height:1}@media (max-width:1100px){.hero-main{grid-area:auto/1/auto/-1;min-height:0}.hero-next{grid-area:auto/1/auto/8}.hero-langs{grid-area:auto/8/auto/-1}.check{grid-template-columns:1fr}.people-row{grid-template-columns:repeat(3,minmax(0,1fr))}.people-row li:nth-child(2n){margin-top:0}.course-body{grid-template-columns:1fr}.course-aside{order:-1;position:static}}@media (max-width:860px){.hero-next,.hero-langs{grid-column:1/-1}.hero-langs{padding:0}.tile-anatomy,.lesson .tile-fact[data-lang],.tile-quote,.bento-2 .tile-price,.bento-2 .tile-faq,.about-grid .tile{grid-column:1/-1}.tile-anatomy{grid-row:auto}.course-hero-inner,.outcomes,.price-grid,.calc{grid-template-columns:1fr}.steps-diagram{grid-template-columns:1fr 1fr}}@media (max-width:640px){body{font-size:1rem}.hero{gap:10px;padding-top:8px}.hero-main{border-radius:var(--r-l);padding:22px 20px 24px}.hello{--hello-size:clamp(2.1rem, 10.5vw, 3.4rem)}.hello-stage{padding-right:46px}.hello-toggle{justify-content:center;width:44px;padding:0;top:-6px;right:-6px}.hello-toggle>span{gap:0;font-size:0}.hello-name{display:none}.hero-actions .button{width:100%}.anatomy{flex-direction:column}.anatomy li{flex:none;grid-template-columns:64px 1fr;column-gap:12px;min-height:0;padding:12px 14px}.anatomy-min{grid-row:span 2;margin:0;padding:0}.tile-fact{padding:20px}.people-row{grid-template-columns:1fr 1fr}.syllabus li{grid-template-columns:1fr}.syl-detail,.syl-spot{grid-area:auto/1}.syl-spot{text-align:left;justify-self:start;margin-top:6px}.teacher-card,.teacher-tile{grid-template-columns:96px minmax(0,1fr);gap:14px}.outcomes li:before{margin-bottom:6px}.band-ink{border-radius:0;margin-inline:0}.course-hero{border-radius:0 0 var(--r-l) var(--r-l);margin-inline:0}.course-keyfacts{grid-template-columns:1fr 1fr}.steps-diagram{grid-template-columns:1fr}.closing-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (max-width:1100px){.course-bar{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:40;background:var(--ink);color:var(--canvas);border-radius:999px;justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 8px 20px;display:flex;position:fixed;box-shadow:0 10px 30px #16141d40}.course-bar .price strong{font-size:1.15rem}.course-bar .price{min-width:0}.course-bar .price span{color:#f8f5eebf;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.course-bar .button{--b-bg:var(--c);--b-fg:var(--on);border-color:var(--c)}.course-bar :focus-visible{outline-color:var(--de)}body:has(.course-bar) .site-footer{margin-bottom:86px}}.syl-rhythm{margin:-12px 0 16px;font-weight:600}.week-dots{display:none}@media (max-width:760px){.week-dots{border-radius:var(--r-l);background:var(--paper);gap:4px;padding:14px 16px;display:grid}.week-dots a{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;min-height:44px;text-decoration:none;display:grid}.week-dots a+a{border-top:1px solid var(--line)}.week-dots b{font-family:var(--font-d);text-transform:capitalize;font-size:.875rem}.week-dots span{flex-wrap:wrap;gap:4px;display:flex}.week-dots i{background:var(--c);color:var(--on);font-variant-numeric:tabular-nums;border-radius:8px 8px 8px 2px;padding:2px 6px;font-size:.6875rem;font-style:normal;font-weight:700}}::view-transition-old(.page-fade){animation:vt-out .18s var(--ease) both}::view-transition-new(.page-fade){animation:vt-in .42s var(--ease) both}@keyframes vt-out{to{opacity:0;transform:translateY(-8px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(14px)}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}
:root{--canvas:#f8f5ee;--paper:#fff;--ink:#16141d;--ink-2:#55505e;--line:#16141d1f;--line-strong:#16141d47;--cream:#efeadf;--en:#2450e6;--en-tx:#1e44cf;--en-soft:#e4eafd;--es:#f04e2f;--es-tx:#c2361a;--es-soft:#fde5df;--de:#f6b524;--de-tx:#8f5e00;--de-soft:#fdf0cf;--fr:#7041f0;--fr-tx:#6236e0;--fr-soft:#ebe4fd;--it:#16a56c;--it-tx:#0c7a4e;--it-soft:#dcf2e7;--ok:#0c7a4e;--bad:#c2361a;--font-d:var(--font-display), "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Noto Sans CJK JP", "Yu Gothic", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-t:var(--font-text), "Hiragino Sans", "Noto Sans JP", system-ui, -apple-system, "Segoe UI", sans-serif;--r-s:10px;--r-m:16px;--r-l:26px;--r-xl:38px;--gutter:clamp(16px, 4vw, 56px);--max:1400px;--header-h:76px;--spring:cubic-bezier(.34, 1.56, .64, 1);--ease:cubic-bezier(.22, 1, .36, 1);--c:var(--ink);--on:var(--canvas);--tx:var(--ink);--soft:var(--cream)}[data-lang=en]{--c:var(--en);--on:#fff;--tx:var(--en-tx);--soft:var(--en-soft)}[data-lang=es]{--c:var(--es);--on:var(--ink);--tx:var(--es-tx);--soft:var(--es-soft)}[data-lang=de]{--c:var(--de);--on:var(--ink);--tx:var(--de-tx);--soft:var(--de-soft)}[data-lang=fr]{--c:var(--fr);--on:#fff;--tx:var(--fr-tx);--soft:var(--fr-soft)}[data-lang=it]{--c:var(--it);--on:var(--ink);--tx:var(--it-tx);--soft:var(--it-soft)}[data-lang=ink],[data-lang=bg]{--c:var(--ink);--on:var(--canvas);--tx:var(--ink);--soft:var(--cream)}
.skip-link{z-index:100;background:var(--ink);color:var(--canvas);border-radius:999px;padding:12px 18px;font-weight:650;position:fixed;top:10px;left:10px}.skip-link:not(:focus){opacity:0;pointer-events:none;clip-path:inset(50%)}.site-header{z-index:50;pointer-events:none;padding:10px clamp(8px,1vw,14px) 0;position:sticky;top:0}.header-bar{pointer-events:auto;-webkit-backdrop-filter:saturate(1.4)blur(14px);min-height:60px;box-shadow:0 0 0 1px var(--line);background:#f8f5eee6;border-radius:999px;align-items:center;gap:16px;padding:8px 8px 8px 18px;display:flex}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.header-bar{background:var(--canvas)}}.wordmark{flex:none;align-items:center;gap:10px;min-height:44px;text-decoration:none;display:inline-flex}.wordmark .mark{transition:transform .45s var(--spring)}.wordmark:hover .mark{transform:rotate(-8deg)scale(1.06)}.wordmark-text{font-family:var(--font-d);letter-spacing:-.04em;font-size:1.05rem;font-weight:700;line-height:1}.nav-panel{flex:1;justify-content:space-between;align-items:center;gap:12px;display:flex}.nav-links{align-items:center;gap:2px;margin-inline:auto;display:flex}.nav-links a{border-radius:999px;align-items:center;min-height:44px;padding:8px 14px;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background-color .2s;display:inline-flex;position:relative}.nav-links a:hover{background:var(--soft)}.nav-links a[aria-current=page]{background:var(--c);color:var(--on)}.nav-tools{align-items:center;gap:10px;display:flex}.language-picker{background:var(--cream);border-radius:999px;padding:3px;display:inline-flex}.language-picker>*{border-radius:999px;place-items:center;min-width:44px;min-height:38px;padding:0 10px;font-size:.8125rem;font-weight:700;text-decoration:none;display:inline-grid}.language-picker [aria-current]{background:var(--paper);box-shadow:0 1px 0 var(--line)}.language-picker a:hover{background:#fff9}.nav-toggle{display:none}@media (max-width:1100px){.header-bar{-webkit-backdrop-filter:none;background:var(--canvas);justify-content:space-between;padding-left:14px}.wordmark{z-index:2;position:relative}.nav-toggle{background:var(--ink);min-height:44px;color:var(--canvas);z-index:2;border:0;border-radius:999px;align-items:center;gap:10px;padding:8px 10px 8px 18px;font-weight:650;display:inline-flex}.nav-toggle-icon{background:var(--canvas);border-radius:50%;place-content:center;gap:5px;width:28px;height:28px;display:grid}.nav-toggle-icon i{background:var(--ink);width:13px;height:2px;transition:transform .35s var(--spring);border-radius:2px;display:block}[data-open=true] .nav-toggle-icon i:first-child{transform:translateY(3.5px)rotate(45deg)}[data-open=true] .nav-toggle-icon i:last-child{transform:translateY(-3.5px)rotate(-45deg)}.nav-panel{z-index:1;padding:96px var(--gutter) calc(28px + env(safe-area-inset-bottom));background:var(--canvas);visibility:hidden;opacity:0;clip-path:circle(0% at calc(100% - 48px) 40px);transition:clip-path .55s var(--ease), opacity .2s, visibility 0s .55s;flex-direction:column;justify-content:space-between;align-items:stretch;gap:24px;display:flex;position:fixed;inset:0;overflow-y:auto}[data-open=true] .nav-panel{visibility:visible;opacity:1;clip-path:circle(150% at calc(100% - 48px) 40px);transition:clip-path .6s var(--ease), opacity .2s, visibility 0s}.nav-links{flex-direction:column;align-items:stretch;gap:4px;margin:0}.nav-links a{border-radius:var(--r-l);font-family:var(--font-d);letter-spacing:-.04em;justify-content:space-between;padding:10px 16px;font-size:clamp(1.6rem,7vw,2.4rem);font-weight:700;display:flex}.nav-links a:after{content:"";background:var(--c);border-radius:6px 6px 6px 2px;width:18px;height:18px}.nav-links a[aria-current=page]:after{background:var(--on)}.nav-tools{justify-content:space-between}.nav-tools .button{min-height:52px;padding-inline:24px}[data-menu=open] body{overflow:hidden}}@media (min-width:1101px) and (max-width:1260px){.nav-links a{padding-inline:10px;font-size:.875rem}}.site-footer{border-radius:var(--r-xl);background:var(--ink);color:var(--canvas);margin:clamp(48px,8vw,96px) clamp(8px,1vw,14px) clamp(8px,1vw,14px);overflow:hidden}.footer-inner{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto;padding-block:clamp(40px,6vw,72px) 32px}.footer-hello{flex-wrap:wrap;gap:10px;margin-bottom:clamp(40px,6vw,72px);display:flex}.footer-hello span{background:var(--c);color:var(--on);font-family:var(--font-d);letter-spacing:-.045em;transition:transform .4s var(--spring);border-radius:.3em;padding:.08em .32em .14em;font-size:clamp(1.6rem,4.6vw,4.2rem);font-weight:800;line-height:1.05;position:relative}.footer-hello span[data-lang=bg]{background:var(--canvas);color:var(--ink)}.footer-hello span:nth-child(odd){transform:rotate(-2deg)}.footer-hello span:nth-child(2n){transform:rotate(1.5deg)translateY(6px)}.footer-hello span:hover{transform:rotate(0)translateY(-6px)scale(1.04)}.footer-grid{border-top:1px solid #f8f5ee2e;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:32px;padding-top:32px;display:grid}.footer-grid p,.footer-grid li{color:#f8f5eec7;font-size:.9375rem}.footer-grid p+p{margin-top:8px}.footer-brand{align-content:start;gap:14px;display:grid}.footer-brand .wordmark-text,.footer-brand .wordmark span{font-family:var(--font-d);letter-spacing:-.04em;color:var(--canvas);font-size:1.15rem;font-weight:700}.footer-brand p{max-width:32ch}.footer-title{font-family:var(--font-t);letter-spacing:.04em;text-transform:uppercase;color:var(--de);margin-bottom:12px;font-size:.8125rem;font-weight:700}.footer-grid ul{gap:2px;display:grid}.footer-grid a{min-height:36px;color:var(--canvas);align-items:center;text-decoration:none;display:inline-flex}.footer-grid a:hover{text-decoration:underline}.site-footer :focus-visible{outline-color:var(--de)}.footer-note{margin-top:14px;font-size:.8125rem!important}.footer-note a{text-decoration:underline;display:inline}@media (max-width:860px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (max-width:480px){.footer-grid{grid-template-columns:1fr}}.dock{display:none}@media (max-width:760px){.dock{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:40;background:var(--ink);border-radius:999px;grid-template-columns:auto 1fr;gap:6px;padding:6px;display:grid;position:fixed;box-shadow:0 10px 30px #16141d40}.dock a{border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:0 18px;font-weight:650;text-decoration:none;display:inline-flex}.dock-secondary{color:var(--canvas)}.dock-primary{background:var(--de);color:var(--ink)}.dock :focus-visible{outline-color:var(--de)}body:has(.dock) .site-footer{margin-bottom:86px}[data-menu=open] .dock{display:none}}@media (max-width:1100px){html{scroll-padding-bottom:96px}}.ext-icon{margin-left:4px}.language-picker>*{font-family:var(--font-d);letter-spacing:0}
.finder{grid-template-columns:290px minmax(0,1fr);align-items:start;gap:clamp(20px,3vw,40px);padding-bottom:48px;display:grid}.finder-aside{top:calc(var(--header-h) + 12px);max-height:calc(100svh - var(--header-h) - 24px);overscroll-behavior:contain;border-radius:var(--r-xl);background:var(--paper);scrollbar-width:thin;padding:20px;position:sticky;overflow-y:auto}.filters{gap:18px;display:grid}.filters fieldset{border:0;min-width:0;margin:0;padding:0}.filters legend{font-family:var(--font-d);letter-spacing:-.02em;margin-bottom:10px;padding:0;font-size:.9375rem;font-weight:700}.chips-lang{grid-template-columns:1fr 1fr;gap:6px;display:grid}.chips-lang .chip{border-radius:var(--r-m);justify-content:flex-start;gap:6px;padding-inline:10px 8px;font-size:.875rem}.chips-lang .chip .chip-count{margin-left:auto}.chips-level{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.chip-level{border-radius:var(--r-m);flex-direction:column;justify-content:center;gap:2px;min-height:56px;padding:6px 2px}.chip-level-code{font-family:var(--font-d);font-size:.875rem;font-weight:700}.chip-level .chip-count,.chip-day .chip-count{min-width:0;padding:0 5px;font-size:.6875rem}.level-scale{justify-content:space-between;margin:6px 2px 0;font-size:.75rem;display:flex}.chips-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.chip-day{text-transform:capitalize;border-radius:12px;flex-direction:column;justify-content:center;gap:2px;min-height:56px;padding:6px 0;font-size:.8125rem}.chip-time{border-radius:var(--r-m);flex:auto}.chip-time small{opacity:.8;font-size:.75rem;font-weight:500;display:block}.filters .text-link.small{min-height:36px;margin-top:4px;font-size:.875rem}.switch{cursor:pointer;align-items:center;gap:12px;min-height:44px;font-size:.9375rem;font-weight:600;display:flex;position:relative}.switch input{opacity:0;cursor:pointer;width:46px;height:28px;margin:0;position:absolute}.switch-track{background:var(--cream);width:46px;height:28px;box-shadow:inset 0 0 0 1.5px var(--line-strong);border-radius:999px;flex:none;transition:background-color .2s;position:relative}.switch-track:after{content:"";background:var(--paper);width:20px;height:20px;transition:transform .35s var(--spring);border-radius:50%;position:absolute;top:4px;left:4px;box-shadow:0 1px 3px #00000040}.switch input:checked+.switch-track{background:var(--it)}.switch input:checked+.switch-track:after{transform:translate(18px)}.switch input:focus-visible+.switch-track{outline:3px solid var(--ink);outline-offset:2px}.finder-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.finder-count{font-family:var(--font-d);letter-spacing:-.03em;margin-right:auto;font-size:clamp(1.2rem,2vw,1.6rem);font-weight:700;overflow:hidden}.tick{animation:tick .45s var(--spring);display:inline-block}@keyframes tick{0%{opacity:0;transform:translateY(60%)}}.view-switch{background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;padding:4px;display:inline-flex}.view-switch a{border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:6px 16px;font-size:.9375rem;font-weight:650;text-decoration:none;transition:background-color .2s,color .2s;display:inline-flex}.view-switch a:hover{background:var(--cream)}.view-switch a[aria-current=true]{background:var(--ink);color:var(--canvas)}.filters-open{display:none}.active-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.chip-active{background:var(--ink);color:var(--canvas);border-color:var(--ink);animation:chip-pop .35s var(--spring)}.chip-active svg{opacity:.8}.chip-saved svg{color:var(--de-tx)}.chip-saved[aria-pressed=true] svg{color:var(--de)}.level-hints{border-radius:var(--r-l);background:var(--de-soft);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;padding:10px 10px 10px 18px;font-size:.9375rem;font-weight:600;display:flex}.level-hints .text-link{min-height:36px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px;display:grid}.card-grid>li{display:grid}.group-card{border-radius:var(--r-xl);background:var(--paper);animation:card-in .5s var(--spring) both;transition:transform .35s var(--spring), box-shadow .25s;grid-template-rows:auto auto 1fr auto auto auto;gap:12px;padding:16px 18px 18px;display:grid;position:relative}.group-card:hover{box-shadow:0 0 0 2px var(--c);transform:translateY(-3px)}@keyframes card-in{0%{opacity:0;transform:translateY(14px)scale(.97)}}.gc-top{align-items:center;gap:10px;min-height:44px;display:flex}.gc-code{background:var(--c);width:48px;height:44px;color:var(--on);font-family:var(--font-d);transition:transform .4s var(--spring);border-radius:14px 14px 14px 3px;flex:none;place-items:center;font-size:.9375rem;font-weight:800;display:grid}.group-card:hover .gc-code{transform:rotate(-6deg)scale(1.05)}.gc-tags{color:var(--tx);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-right:auto;font-size:.875rem;font-weight:650;display:flex}.gc-highlight{background:var(--de);color:var(--ink);border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:700}.gc-title{letter-spacing:-.03em;font-size:1.25rem;line-height:1.12}.gc-link{text-decoration:none}.gc-link:hover{text-decoration:underline}.gc-facts{font-variant-numeric:tabular-nums;align-content:start;gap:6px;font-size:.9375rem;display:grid}.gc-facts li{align-items:flex-start;gap:10px;display:flex}.gc-facts svg{width:18px;height:18px;color:var(--tx);flex:none;margin-top:2px}.gc-teacher{color:var(--ink-2);align-items:center;gap:10px;font-size:.875rem;display:flex}.gc-teacher img{object-fit:cover;filter:grayscale();border-radius:50%;width:32px;height:32px}.seats{font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:.875rem;font-weight:600;display:flex}.seat-dots{gap:3px;display:flex}.seat-dots i{background:var(--c);border-radius:50%;width:10px;height:10px}.seat-dots i[data-taken]{box-shadow:inset 0 0 0 1.5px var(--line-strong);background:0 0}.seats[data-full]{color:var(--bad)}.gc-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;padding-top:14px;display:flex}.price{font-variant-numeric:tabular-nums;line-height:1.2;display:grid}.price strong{font-family:var(--font-d);letter-spacing:-.03em;font-size:1.35rem}.price span{color:var(--ink-2);font-size:.8125rem}.gc-actions{gap:6px;display:flex}.save-toggle{background:var(--cream);width:44px;height:44px;color:var(--ink);transition:transform .35s var(--spring), background-color .2s;border:0;border-radius:50%;place-items:center;display:grid}.save-toggle:hover{background:var(--de-soft)}.save-toggle[aria-pressed=true]{background:var(--de);animation:star-pop .5s var(--spring)}@keyframes star-pop{0%{transform:scale(.7)rotate(-20deg)}60%{transform:scale(1.18)rotate(8deg)}to{transform:scale(1)rotate(0)}}.group-card[data-full] .gc-code{background:repeating-linear-gradient(-45deg, var(--c) 0 6px, var(--soft) 6px 10px);color:var(--ink)}.unscheduled{margin-top:40px}.unscheduled h2{margin-bottom:12px;font-size:1.25rem}.unscheduled li{border-radius:var(--r-l);border:1.5px dashed var(--line-strong);flex-wrap:wrap;align-items:baseline;gap:6px 12px;padding:14px 18px;display:flex}.unscheduled li a{font-weight:700}.unscheduled .level-tag{background:var(--c);color:var(--on)}.fit-results{margin-top:32px}.fit-results h2{margin-bottom:16px;font-size:clamp(1.3rem,2.2vw,1.8rem)}.timetable{--hour:50px;--rows:14;border-radius:var(--r-xl);background:var(--paper);padding:14px 14px 18px 6px}.timetable.is-compact{--hour:36px}.tt-grid{grid-template-columns:48px repeat(7,minmax(0,1fr));grid-template-rows:auto calc(var(--hour) * var(--rows));column-gap:4px;display:grid}.tt-corner{grid-column:1}.tt-dayhead{font-family:var(--font-d);letter-spacing:-.02em;text-transform:capitalize;padding:4px 6px 12px;font-size:.875rem;font-weight:700}.tt-day-short{display:none}.tt-hours{grid-area:2/1;position:relative}.tt-hours span{top:calc(var(--row) * var(--hour) - .6em);color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.75rem;position:absolute;right:8px}.tt-col{background:repeating-linear-gradient(to bottom, var(--line) 0 1px, transparent 1px var(--hour)), var(--canvas);border-radius:14px;grid-row:2;position:relative}.tt-bands{pointer-events:none;grid-template-rows:4fr 5fr 5fr;display:grid;position:absolute;inset:0}.tt-bands span[data-free]{background:repeating-linear-gradient(-45deg,#16a56c2e 0 6px,#16a56c12 6px 12px);border-radius:10px;box-shadow:inset 0 0 0 2px #0c7a4e80}.tt-block{--gap:2px;top:calc(var(--top) * var(--hour) + 1px);height:calc(var(--len) * var(--hour) - 2px);left:calc(var(--lane) / var(--lanes) * 100% + var(--gap));width:calc(100% / var(--lanes) - var(--gap) * 2);background:var(--c);color:var(--on);transition:transform .35s var(--spring), opacity .3s, filter .3s;animation:block-in .5s var(--spring) both;border-radius:10px 10px 10px 3px;flex-direction:column;gap:1px;padding:6px 7px;font-size:.75rem;line-height:1.2;text-decoration:none;display:flex;position:absolute;overflow:hidden;container-type:inline-size}@keyframes block-in{0%{opacity:0;transform:scale(.6)}}.tt-block:hover,.tt-block:focus-visible{z-index:3;transform:scale(1.05)}.tt-block[data-full]{background:repeating-linear-gradient(-45deg, var(--c) 0 6px, transparent 6px 10px), var(--soft);color:var(--ink)}.tt-block[data-full] .tt-code,.tt-block[data-full] .tt-name,.tt-block[data-full] .tt-time,.tt-block[data-full] .tt-full{background:var(--paper);border-radius:4px;align-self:flex-start;padding:0 3px}.tt-block[data-dim]{opacity:.22;filter:grayscale(.8)}.tt-code{font-family:var(--font-d);letter-spacing:0;white-space:nowrap;font-size:.6875rem;font-weight:800}.tt-code b{font-weight:800}.tt-block[data-short] .tt-name{-webkit-line-clamp:1}.tt-block[data-tiny] .tt-name{display:none}.tt-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:650;display:-webkit-box;overflow:hidden}.tt-time{font-variant-numeric:tabular-nums;opacity:.9;white-space:nowrap;margin-top:auto}.tt-full{text-transform:uppercase;letter-spacing:.04em;font-size:.625rem;font-weight:800}.tt-start{font-variant-numeric:tabular-nums;margin-top:auto;font-weight:600;display:none}@container (max-width:84px){.tt-name,.tt-time{display:none}.tt-start{display:block}}.is-compact .tt-name{display:none}.is-compact .tt-block{padding:4px 6px}.tt-agenda{display:none}@media (max-width:1240px){.tt-day-long{display:none}.tt-day-short{display:inline}}@media (max-width:760px){.timetable{padding:8px 16px 12px}.tt-grid{display:none}.tt-agenda{gap:6px;display:grid}.is-compact .tt-agenda,.is-fit .tt-agenda,.timetable.is-fit,.is-compact{display:none}.tt-agenda>li{padding:10px 0 6px}.tt-agenda>li+li{border-top:1px solid var(--line)}.tt-agenda-day{text-transform:capitalize;align-items:center;gap:8px;margin-bottom:6px;font-size:1.05rem;display:flex}.tt-agenda-day span{background:var(--cream);min-width:24px;height:24px;font-family:var(--font-t);border-radius:999px;place-items:center;padding:0 6px;font-size:.75rem;display:inline-grid}.tt-agenda ul{gap:6px;display:grid}.tt-row{background:var(--soft);box-shadow:inset 5px 0 0 var(--c);border-radius:14px 14px 14px 4px;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;font-size:.875rem;text-decoration:none;transition:opacity .3s;display:grid}.tt-row[data-dim]{opacity:.35}.tt-row-time{font-variant-numeric:tabular-nums;padding-left:4px;font-weight:700}.tt-row-main{min-width:0;display:grid}.tt-row-code{color:var(--tx);font-size:.75rem;font-weight:700}.tt-row-name{font-weight:600;line-height:1.25}.tt-row-seats{white-space:nowrap;font-size:.75rem;font-weight:700}.tt-row-seats[data-full]{color:var(--bad)}.tt-agenda-empty{color:var(--ink-2);font-size:.875rem}}.painter{border-radius:var(--r-xl);background:var(--it-soft);margin-bottom:16px;padding:20px}.painter-head{flex-wrap:wrap;justify-content:space-between;gap:12px 24px;margin-bottom:16px;display:flex}.painter-head h2{align-items:center;gap:10px;margin-bottom:4px;font-size:1.35rem;display:flex}.painter-head p{max-width:48ch;font-size:.9375rem}.painter-presets{flex-wrap:wrap;align-content:flex-start;gap:6px;display:flex}.painter-presets .chip{min-height:40px;font-size:.875rem}.painter-grid{-webkit-user-select:none;user-select:none;grid-template-columns:96px repeat(7,minmax(0,1fr));gap:6px;display:grid}.painter-row{display:contents}.painter-day{text-align:center;text-transform:capitalize;font-size:.8125rem;font-weight:700}.painter-band{align-content:center;font-size:.8125rem;font-weight:650;line-height:1.2;display:grid}.painter-band small{color:var(--ink-2);font-weight:500}.painter-cell{background:var(--paper);touch-action:none;min-height:48px;transition:transform .3s var(--spring), background-color .15s;border:2px dashed #0c7a4e73;border-radius:12px}.painter-cell:hover{border-style:solid}.painter-cell[aria-pressed=true]{border:2px solid var(--it-tx);background:radial-gradient(circle at 50% 50%, var(--paper) 0 4px, transparent 5px), var(--it);animation:chip-pop .35s var(--spring)}.painter-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:12px;font-size:.9375rem;font-weight:600;display:flex}.painter-actions{flex-wrap:wrap;gap:4px 16px;display:flex}.painter-actions .text-button{min-height:40px;font-size:.9375rem}.sheet{border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--paper);width:100%;max-width:560px;max-height:min(88svh,900px);color:var(--ink);border:0;margin:auto auto 0;padding:0}.sheet::backdrop{background:#16141d80}.sheet[open]{animation:sheet-up .45s var(--ease)}@keyframes sheet-up{0%{transform:translateY(100%)}}.sheet-inner{grid-template-rows:auto 1fr auto;max-height:min(88svh,900px);display:grid}.sheet-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px 10px 22px;display:flex}.sheet-head h2{font-size:1.3rem}.sheet .filters{padding:18px 22px;overflow-y:auto}.sheet .chips-lang{grid-template-columns:1fr 1fr 1fr}.sheet .chips-days{grid-template-columns:repeat(7,minmax(0,1fr))}.sheet-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);grid-template-columns:auto 1fr;gap:8px;display:grid}@media (max-width:1100px){.finder{grid-template-columns:1fr}.finder-aside{display:none}.filters-open{display:inline-flex}}@media (max-width:640px){.finder-toolbar{grid-template-columns:1fr auto;display:grid}.finder-count{grid-area:1/1}.view-switch{grid-area:2/1/auto/-1;justify-self:stretch;display:flex}.view-switch a{flex:1;justify-content:center;gap:4px;padding:6px 8px;font-size:.8125rem}.view-switch a svg{display:none}.filters-open{grid-area:1/2;padding-inline:14px}.view-switch a{white-space:nowrap}.painter{margin-inline:calc(var(--gutter) * -1 + 4px);border-radius:var(--r-l);padding:16px 12px}.painter-grid{grid-template-columns:58px repeat(7,minmax(0,1fr));gap:4px}.painter-band small{display:none}.painter-cell{border-radius:9px;min-height:44px}.group-card{padding:14px 16px 16px}}
.lf-shell{padding-bottom:64px}.lf-pick-title{margin-bottom:18px;font-size:clamp(1.4rem,2.4vw,2rem)}.lf-langs{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.lf-lang{border-radius:var(--r-xl) var(--r-xl) var(--r-xl) 8px;background:var(--c);min-height:260px;color:var(--on);animation:card-in .6s var(--spring) both;animation-delay:calc(var(--i,0) * 60ms);transition:transform .45s var(--spring);grid-template-rows:1fr auto;gap:18px;padding:20px;text-decoration:none;display:grid;position:relative;overflow:hidden}.lf-lang:hover{transform:translateY(-6px)rotate(-1.5deg)}.lf-lang:active{transform:scale(.97)}.lf-lang{container-type:inline-size}.lf-lang-hello{font-family:var(--font-d);letter-spacing:-.05em;white-space:nowrap;font-size:clamp(1.8rem,16cqi,3.4rem);font-weight:800;line-height:.95}.lf-lang-name{font-size:1.1rem;font-weight:700;display:grid}.lf-lang-name small{opacity:.85;font-size:.875rem;font-weight:550}.lf-lang-last{background:var(--paper);color:var(--ink);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700;position:absolute;top:16px;right:16px}.lf-lang-arrow{transition:transform .35s var(--spring);position:absolute;bottom:20px;right:18px}.lf-lang:hover .lf-lang-arrow{transform:translate(4px)}.lf-meta{flex-wrap:wrap;gap:8px;margin:20px 0 8px;display:flex}.lf-meta span{background:var(--paper);border-radius:999px;padding:6px 14px;font-size:.875rem;font-weight:600}.lf-quiz{border-radius:var(--r-xl);background:var(--soft);padding:clamp(16px,2.6vw,32px)}.lf-bar{align-items:center;gap:14px;margin-bottom:clamp(24px,4vw,48px);display:flex}.lf-badge{background:var(--c);color:var(--on);font-family:var(--font-d);border-radius:14px 14px 14px 3px;flex:none;padding:6px 14px;font-size:.9375rem;font-weight:700}.lf-progress{flex:1;grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;min-width:0;display:grid}.lf-progress li{height:12px;box-shadow:inset 0 0 0 1.5px var(--line);background:#ffffffe6;border-radius:999px;position:relative;overflow:hidden}.lf-progress li:after{content:"";border-radius:inherit;background:var(--c);transform-origin:0;transition:transform .5s var(--spring);position:absolute;inset:0;transform:scaleX(0)}.lf-progress li[data-state=now]:after{opacity:.45;transform:scaleX(.35)}.lf-progress li[data-state=right]:after,.lf-progress li[data-state=wrong]:after{transform:scaleX(1)}.lf-progress li[data-state=wrong]:after{background:repeating-linear-gradient(-45deg, var(--c) 0 4px, var(--paper) 4px 7px)}.lf-count{font-size:.9375rem;font-weight:700}.lf-exit{min-height:40px;font-size:.875rem}.lf-stage{max-width:880px;animation:stage-in .5s var(--ease) both;margin-inline:auto}@keyframes stage-in{0%{opacity:0;transform:translate(32px)}}.lf-prompt{color:var(--ink-2);align-items:center;gap:10px;margin-bottom:14px;font-weight:650;display:flex}.lf-band{background:var(--ink);color:var(--canvas);border-radius:6px;padding:2px 8px;font-size:.75rem;font-weight:700}.lf-question{letter-spacing:-.035em;margin-bottom:clamp(24px,4vw,40px);font-size:clamp(1.7rem,4vw,3.2rem);line-height:1.18}.lf-question:focus{outline:none}.lf-question:focus-visible{outline:3px solid var(--ink)}.lf-gap{border-bottom:.08em solid var(--ink);text-align:center;min-width:3.2em;color:var(--tx);transition:transform .4s var(--spring);margin-inline:.1em;padding:0 .2em;display:inline-block}.lf-gap[data-state]{background:var(--c);color:var(--on);animation:gap-drop .5s var(--spring);border-bottom-color:#0000;border-radius:.2em}@keyframes gap-drop{0%{opacity:0;transform:translateY(-40%)scale(.8)}}.lf-said{background:var(--paper);border-radius:.5em .5em .5em .1em;padding:.3em .6em .36em;display:inline-block;position:relative}.lf-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lf-option{background:var(--paper);width:100%;min-height:64px;color:var(--ink);text-align:left;animation:card-in .45s var(--spring) both;animation-delay:calc(var(--i,0) * 50ms);transition:transform .35s var(--spring), border-color .2s, background-color .2s;border:2px solid #0000;border-radius:20px 20px 20px 5px;align-items:center;gap:14px;padding:12px 18px 12px 12px;font-size:1.15rem;font-weight:600;display:flex;position:relative}.lf-option:hover:not([aria-disabled]){border-color:var(--ink);transform:translateY(-2px)}.lf-option:active:not([aria-disabled]){transform:scale(.97)}.lf-option kbd{background:var(--soft);width:34px;height:34px;font-family:var(--font-t);border-radius:10px;flex:none;place-items:center;font-size:.875rem;font-weight:700;display:grid}.lf-option[aria-disabled]{cursor:default}.lf-option[data-state=right]{background:var(--it);border-color:var(--it-tx);color:var(--ink);animation:pop .55s var(--spring)}.lf-option[data-state=right] kbd{background:#fff9}.lf-option[data-state=wrong]{border-color:var(--bad);animation:shake .45s var(--ease);background:#fff1ee}.lf-option[data-state=rest]{opacity:.5}.lf-mark{flex:none;width:26px;height:26px;margin-left:auto}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.06)rotate(-1deg)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}.lf-skip{color:var(--ink-2);margin-top:8px}.lf-feedback{min-height:8px}.lf-feedback-card{background:var(--paper);animation:card-in .45s var(--spring) both;border-radius:22px 22px 22px 5px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 24px;margin-top:20px;padding:18px 20px;display:grid}.lf-feedback-card[data-state=right]{box-shadow:inset 6px 0 0 var(--it)}.lf-feedback-card[data-state=wrong]{box-shadow:inset 6px 0 0 var(--bad)}.lf-feedback-card[data-state=skip]{box-shadow:inset 6px 0 0 var(--de)}.lf-feedback-title{font-family:var(--font-d);letter-spacing:-.02em;font-size:1.2rem;font-weight:700}.lf-why{color:var(--ink-2);grid-column:1}.lf-feedback-card .button{grid-area:1/2/3}.lf-result-hero{border-radius:var(--r-xl);background:var(--soft);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(20px,4vw,56px);padding:clamp(20px,3vw,40px);display:grid}.lf-level-bubble{aspect-ratio:1.15;background:var(--c);width:clamp(150px,20vw,260px);color:var(--on);font-family:var(--font-d);letter-spacing:-.06em;animation:level-in .9s var(--spring) both;border-radius:34% 34% 34% 8%;place-items:center;font-size:clamp(4rem,9vw,7.5rem);font-weight:800;display:grid;position:relative}@keyframes level-in{0%{opacity:0;transform:scale(.3)rotate(-18deg)}to{opacity:1;transform:none}}.lf-result-kicker{color:var(--tx);margin-bottom:6px;font-weight:650}.lf-result-copy h2{letter-spacing:-.04em;margin-bottom:12px;font-size:clamp(1.8rem,3.6vw,3.2rem)}.lf-result-copy h2:focus{outline:none}.lf-can{max-width:48ch;margin-bottom:18px;font-size:1.15rem}.lf-summary{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.lf-summary li{width:44px;height:36px;animation:card-in .4s var(--spring) both;border-radius:12px 12px 12px 3px;place-items:center;font-size:.75rem;font-weight:700;display:grid}.lf-summary li:nth-child(2){animation-delay:40ms}.lf-summary li:nth-child(3){animation-delay:80ms}.lf-summary li:nth-child(4){animation-delay:.12s}.lf-summary li:nth-child(5){animation-delay:.16s}.lf-summary li:nth-child(6){animation-delay:.2s}.lf-summary li:nth-child(7){animation-delay:.24s}.lf-summary li:nth-child(8){animation-delay:.28s}.lf-summary li[data-state=right]{background:var(--c);color:var(--on)}.lf-summary li[data-state=wrong]{background:var(--paper);box-shadow:inset 0 0 0 2px var(--line-strong);color:var(--ink-2)}.lf-book{border-radius:var(--r-xl);background:var(--ink);color:var(--canvas);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px 32px;margin-top:14px;padding:clamp(18px,2.6vw,28px) clamp(20px,3vw,36px);display:flex}.lf-book .button{--b-bg:var(--de);--b-fg:var(--ink)}.lf-book :focus-visible{outline-color:var(--de)}.lf-book-label{color:var(--de);font-size:.875rem;font-weight:650}.lf-book-title{font-family:var(--font-d);letter-spacing:-.03em;font-size:clamp(1.2rem,2vw,1.6rem);font-weight:700}.lf-book-when{color:#f8f5eecc;font-variant-numeric:tabular-nums}.lf-note{border-radius:var(--r-l);background:var(--de-soft);max-width:80ch;margin-top:14px;padding:14px 18px}.lf-groups-title{margin:36px 0 14px;font-size:1.35rem}.lf-result-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:28px 0 12px;display:flex}.teaser{color:var(--ink)}.teaser-tabs{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.teaser-tabs button{min-height:44px;color:var(--canvas);transition:transform .3s var(--spring), background-color .2s;background:0 0;border:1.5px solid #f8f5ee4d;border-radius:999px;padding:6px 14px;font-size:.9375rem;font-weight:650}.teaser-tabs button:hover{border-color:var(--canvas)}.teaser-tabs button[aria-pressed=true]{background:var(--c);border-color:var(--c);color:var(--on);animation:chip-pop .35s var(--spring)}.band-ink :focus-visible{outline-color:var(--de)}.teaser-card{border-radius:var(--r-xl) var(--r-xl) var(--r-xl) 8px;background:var(--soft);animation:stage-in .45s var(--ease) both;padding:clamp(18px,2.6vw,30px)}.teaser-question{font-family:var(--font-d);letter-spacing:-.035em;margin-bottom:20px;font-size:clamp(1.35rem,2.6vw,2.1rem);font-weight:700;line-height:1.2}.teaser-options .lf-option{min-height:56px;padding-left:18px;font-size:1.05rem}.teaser-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;min-height:48px;margin-top:16px;display:flex}.teaser-foot p{max-width:46ch;font-size:.9375rem}.booking{padding-bottom:48px}.booking:focus{outline:none}.steps{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.steps li{background:var(--paper);color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-size:.875rem;font-weight:600;display:inline-flex}.steps li span{background:var(--cream);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.8125rem;font-weight:700;display:grid}.steps li[aria-current=step]{background:var(--ink);color:var(--canvas)}.steps li[aria-current=step] span{background:var(--c,var(--de));color:var(--on)}.steps li[data-done] span{background:var(--it);color:var(--ink)}.booking-layout{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;gap:clamp(20px,3vw,40px);display:grid}.booking-form{gap:14px;display:grid}.from-quiz{background:var(--it-soft);border-radius:999px;justify-self:start;align-items:center;gap:8px;padding:8px 14px;font-size:.9375rem;font-weight:650;display:inline-flex}.booking-step{border-radius:var(--r-xl);background:var(--paper);border:0;min-width:0;margin:0;padding:clamp(18px,2.4vw,28px)}.booking-step legend{float:left;width:100%;font-family:var(--font-d);letter-spacing:-.03em;align-items:center;gap:12px;margin-bottom:16px;padding:0;font-size:clamp(1.15rem,1.8vw,1.4rem);font-weight:700;display:flex}.booking-step legend+*{clear:both}.step-no{background:var(--c,var(--ink));width:34px;height:34px;color:var(--on,var(--canvas));border-radius:12px 12px 12px 3px;flex:none;place-items:center;font-size:.9375rem;display:grid}.booking-step[data-invalid]{box-shadow:inset 0 0 0 2px var(--bad)}.field-row{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.prefs{border-bottom:1px solid var(--line);gap:16px;margin-bottom:18px;padding-bottom:18px;display:grid}.pref{justify-items:start;gap:8px;display:grid}.pref select{max-width:320px}.pref .text-link.small{min-height:32px;font-size:.875rem}.group-options{gap:8px;display:grid}.group-option{border:2px solid var(--line);cursor:pointer;transition:border-color .2s, background-color .2s, transform .3s var(--spring);border-radius:18px 18px 18px 4px;align-items:flex-start;gap:14px;padding:14px 16px;display:flex;position:relative}.group-option:hover{border-color:var(--ink)}.group-option:has(input:checked){border-color:var(--c);background:var(--soft);animation:chip-pop .35s var(--spring)}.group-option:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:2px}.group-option[data-disabled]{cursor:not-allowed;opacity:.55;border-style:dashed}.group-option input,.radio-line input,.plan input{width:22px;height:22px;accent-color:var(--ink);flex:none;margin:2px 0 0}.go-body{font-variant-numeric:tabular-nums;gap:2px;display:grid}.go-course{flex-wrap:wrap;align-items:center;gap:8px;font-weight:700;display:flex}.go-course .level-tag{background:var(--c);color:var(--on)}.go-when{font-size:1.05rem}.go-meta{color:var(--ink-2);font-size:.875rem}.radio-line{cursor:pointer;align-items:center;gap:12px;min-height:48px;margin-top:8px;padding:0 4px;font-weight:600;display:flex}.plan-options{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;display:grid}.plan{border:2px solid var(--line);cursor:pointer;border-radius:18px 18px 18px 4px;gap:12px;padding:16px;display:flex}.plan:has(input:checked){border-color:var(--ink);background:var(--cream)}.plan:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:2px}.plan-body{font-variant-numeric:tabular-nums;gap:2px;display:grid}.plan-body span{font-family:var(--font-d);font-size:1.2rem;font-weight:700}.plan-body small{color:var(--ink-2)}.booking-submit{flex-wrap:wrap;align-items:center;gap:12px 20px;padding:8px 0;display:flex}.review{border-radius:var(--r-xl);background:var(--paper);padding:clamp(18px,2.4vw,28px)}.review h2{margin-bottom:18px;font-size:clamp(1.4rem,2.4vw,2rem)}.review-list{margin-bottom:20px;display:grid}.review-list>div{border-top:1px solid var(--line);grid-template-columns:150px minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px 0;display:grid}.review-list dt{font-weight:700}.review-list dd{font-variant-numeric:tabular-nums;margin:0}.review-list .text-button{min-height:32px;padding:0}.summary{top:calc(var(--header-h) + 16px);border-radius:var(--r-xl);background:var(--soft);gap:14px;padding:22px;display:grid;position:sticky}.summary-tags{color:var(--tx);align-items:center;gap:8px;font-weight:650;display:flex}.summary-title{letter-spacing:-.035em;font-size:1.45rem}.summary-facts{font-variant-numeric:tabular-nums;gap:8px;display:grid}.summary-facts li{align-items:flex-start;gap:10px;display:flex}.summary-facts svg{color:var(--tx);flex:none;margin-top:2px}.summary-teacher{align-items:center;gap:10px;font-weight:600;display:flex}.summary-teacher img{object-fit:cover;filter:grayscale();border-radius:50%;width:44px;height:44px}.summary-price{border-top:1px solid var(--line-strong);font-variant-numeric:tabular-nums;gap:2px;padding-top:14px;display:grid}.summary-price strong{font-family:var(--font-d);letter-spacing:-.04em;font-size:2rem;line-height:1.1}.summary-price span{color:var(--ink-2);font-size:.9375rem}.confirm{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:clamp(20px,3vw,40px);display:grid}.ticket{border-radius:var(--r-xl);background:var(--c);color:var(--on);animation:ticket-in .7s var(--spring) both;position:relative;overflow:hidden}@keyframes ticket-in{0%{opacity:0;transform:translateY(40px)rotate(-3deg)scale(.94)}}.ticket-head{align-items:center;gap:16px;padding:clamp(20px,3vw,32px);display:flex}.ticket-check{background:var(--paper);width:56px;height:56px;color:var(--ink);border-radius:18px 18px 18px 4px;flex:none;place-items:center;display:grid}.ticket-kicker{opacity:.9;font-size:.875rem;font-weight:650}.ticket h2{letter-spacing:-.04em;font-size:clamp(1.5rem,3vw,2.4rem)}.ticket-body{border-radius:calc(var(--r-xl) - 8px);background:var(--paper);color:var(--ink);border-top:2px dashed var(--line-strong);justify-items:start;gap:16px;margin:0 10px 10px;padding:clamp(18px,2.6vw,28px);display:grid}.ticket-course{font-family:var(--font-d);letter-spacing:-.03em;font-size:1.3rem;font-weight:700}.ticket-body dl{grid-template-columns:1fr 1fr;gap:14px 24px;width:100%;display:grid}.ticket-body dt{color:var(--ink-2);font-size:.8125rem}.ticket-body dd{margin:0;font-weight:650}.confirm-next{border-radius:var(--r-xl);background:var(--paper);gap:14px;padding:clamp(18px,2.6vw,28px);display:grid}.confirm-next h3{font-size:1.3rem}.confirm-next ol{counter-reset:n;gap:10px;display:grid}.confirm-next li{grid-template-columns:32px 1fr;align-items:start;gap:10px;display:grid}.confirm-next li:before{counter-increment:n;content:counter(n);background:var(--cream);border-radius:10px 10px 10px 3px;place-items:center;width:28px;height:28px;font-size:.875rem;font-weight:700;display:grid}.confirm-actions{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:1100px){.lf-langs{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-layout,.confirm{grid-template-columns:1fr}.summary{grid-row:1;position:static}}@media (max-width:640px){.lf-langs{grid-template-columns:1fr 1fr}.lf-langs li:first-child{grid-column:1/-1}.lf-lang{min-height:150px;padding:16px}.lf-quiz{margin-inline:calc(var(--gutter) * -1 + 4px);border-radius:var(--r-l);padding:14px}.lf-bar{flex-wrap:wrap;gap:10px}.lf-progress{flex-basis:100%;order:3}.lf-exit{margin-left:auto}.lf-options{grid-template-columns:1fr}.lf-option{min-height:56px;font-size:1.05rem}.lf-feedback-card{grid-template-columns:1fr}.lf-feedback-card .button{grid-area:auto/1;width:100%}.lf-result-hero{grid-template-columns:1fr;justify-items:start}.lf-level-bubble{width:140px;font-size:4rem}.lf-book .button{width:100%}.field-row,.plan-options{grid-template-columns:1fr}.review-list>div{grid-template-columns:1fr auto}.review-list dd{grid-area:2/1/auto/-1}.booking-submit .button{width:100%}.ticket-body dl{grid-template-columns:1fr}}
