@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand: #0f3d3a;--brand-deep: #0a2b29;--brand-hover: #0b302d;--brand-ink: #f6f4ef;--brand-soft: #dcefe8;--action: #0b7f6c;--action-hover: #096d5d;--action-lip: #064c41;--action-ink: #ffffff;--action-bright: #1bb59c;--accent: #f2a21b;--ember-hi: #ffc857;--ember-deep: #d9661f;--accent-ink: #1b1408;--ok: #2f7a22;--warn: #8f5a08;--danger: #b3261e;--bg: #f7f3ea;--surface: #ffffff;--surface-2: #f0eadf;--text: #1e2a28;--muted: #5a6966;--line: #e1d9ca;--focus: #0b7f6c;--link: #0b6e5e;--radius: 14px;--radius-sm: 9px;--shadow: 0 1px 2px rgb(15 61 58 / 6%), 0 6px 22px rgb(15 61 58 / 7%);--root: color-mix(in srgb, var(--action) 26%, transparent);--ease-out: cubic-bezier(.2, 0, 0, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--gutter: 16px;--maxw: 1180px;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--brand: #1f5f57;--brand-deep: #0d2f2b;--brand-hover: #26706a;--brand-ink: #eef4f1;--brand-soft: #143b36;--action: #2fd1ae;--action-hover: #4fdcbc;--action-lip: #138f76;--action-ink: #04211d;--action-bright: #2fd1ae;--accent: #ffb43a;--ember-hi: #ffd27a;--ember-deep: #e8772b;--ok: #7fd66b;--warn: #f0bd57;--danger: #ff8a80;--bg: #0a2422;--surface: #10302d;--surface-2: #153a36;--text: #e9f1ee;--muted: #a3b8b2;--line: #23463f;--focus: #2fd1ae;--link: #6fe0c4;--root: color-mix(in srgb, #2fd1ae 26%, transparent);--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 6px 22px rgb(0 0 0 / 25%);color-scheme:dark}}:root[data-theme=dark]{--brand: #1f5f57;--brand-deep: #0d2f2b;--brand-hover: #26706a;--brand-ink: #eef4f1;--brand-soft: #143b36;--action: #2fd1ae;--action-hover: #4fdcbc;--action-lip: #138f76;--action-ink: #04211d;--action-bright: #2fd1ae;--accent: #ffb43a;--ember-hi: #ffd27a;--ember-deep: #e8772b;--ok: #7fd66b;--warn: #f0bd57;--danger: #ff8a80;--bg: #0a2422;--surface: #10302d;--surface-2: #153a36;--text: #e9f1ee;--muted: #a3b8b2;--line: #23463f;--focus: #2fd1ae;--link: #6fe0c4;--root: color-mix(in srgb, #2fd1ae 26%, transparent);--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 6px 22px rgb(0 0 0 / 25%);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3{line-height:1.2;letter-spacing:-.01em;margin:0 0 .5em}h1,h2{font-family:var(--display);font-weight:700;letter-spacing:-.02em}h1{font-size:clamp(1.7rem,1.2rem + 1.9vw,2.6rem);line-height:1.1}h2{font-size:1.35rem}h3{font-size:1.05rem}p{margin:0 0 .8em}a{color:var(--link)}code{font-family:var(--mono);background:var(--surface-2);padding:.1em .4em;border-radius:6px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}img,svg,iframe{max-width:100%}.muted{color:var(--muted)}.small{font-size:.875rem}.eyebrow{font-size:.95rem;font-weight:600;color:var(--muted)}.lead{font-size:1.15rem;color:var(--muted)}.stack{display:grid;gap:12px}.stack-lg{display:grid;gap:20px}.plain{list-style:none;padding:0;margin:0;display:grid;gap:8px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:50;background:var(--surface);padding:8px 12px;border-radius:8px}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(var(--gutter),env(safe-area-inset-left));background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar__brand{text-decoration:none;color:var(--text)}.topbar__nav{display:flex;align-items:center;gap:4px;font-size:.95rem}.topbar__nav a:not(.btn),.topbar__nav .linklike{text-decoration:none;color:var(--muted);padding:8px 10px;border-radius:8px;font-weight:600}.topbar__nav a:not(.btn):hover,.topbar__nav .linklike:hover{color:var(--text);background:var(--surface-2)}.topbar__nav a.active:not(.btn){color:var(--text);box-shadow:inset 0 -3px 0 var(--accent);border-radius:8px 8px 2px 2px}.topbar__nav .btn,.topbar__nav .lang{margin-left:6px}.logo{display:inline-flex;align-items:center;gap:10px}.logo-mark{display:block;flex:none;height:auto}.logo__word{font-family:var(--display);font-weight:800;letter-spacing:-.045em;font-size:1.35rem}.lang{border:1px solid var(--line);background:transparent;color:var(--text);border-radius:999px;padding:5px 11px;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.lang:hover{border-color:var(--action)}.main{flex:1;width:100%;max-width:var(--maxw);margin:0 auto;padding:24px var(--gutter) 48px}.footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:20px var(--gutter);border-top:1px solid var(--line);color:var(--muted);font-size:.875rem}.footer nav{display:flex;flex-wrap:wrap;gap:14px}.footer a{color:var(--muted);text-decoration:none}.footer a:hover{color:var(--text);text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;font-weight:600;text-decoration:none;cursor:pointer}.btn{transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .12s var(--ease-out),box-shadow .12s var(--ease-out)}.btn:hover{border-color:var(--action);background:var(--surface-2)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--action);border-color:var(--action);color:var(--action-ink);box-shadow:0 3px 0 var(--action-lip)}.btn--primary:hover{background:var(--action-hover);border-color:var(--action-hover)}.btn--primary:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 var(--action-lip)}.btn--primary:disabled{box-shadow:none}.btn--sm{min-height:32px;padding:0 12px;font-size:.875rem}.btn--lg{min-height:50px;padding:0 24px;font-size:1.05rem}.btn--block{width:100%}.linklike{background:none;border:0;padding:0;color:var(--link);font:inherit;cursor:pointer;text-decoration:underline}input,select,textarea{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px}input[type=file]{padding:7px 10px}input[type=file]::file-selector-button{font:inherit;font-weight:600;color:var(--text);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:5px 12px;margin-right:10px;cursor:pointer}input[type=file]::file-selector-button:hover{border-color:var(--action)}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--action) 40%,var(--line))}input:focus,select:focus,textarea:focus{border-color:var(--action)}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger)}label{display:grid;gap:6px;font-size:.92rem;font-weight:600}label.inline{display:flex;align-items:center;gap:10px}label.inline select{width:auto}label.check{display:flex;align-items:flex-start;gap:10px;font-weight:400}label.check input{width:auto;margin-top:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .span-2{grid-column:span 2}.inline-form{display:flex;gap:8px}.error-text{color:var(--danger)}.notice{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.notice--ok{border-color:color-mix(in srgb,var(--ok) 45%,var(--line));background:color-mix(in srgb,var(--ok) 8%,var(--surface))}.notice--error{border-color:color-mix(in srgb,var(--danger) 45%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.notice--warn{border-color:color-mix(in srgb,var(--warn) 50%,var(--line));background:color-mix(in srgb,var(--warn) 9%,var(--surface));font-weight:600}.badge{display:inline-block;justify-self:start;white-space:nowrap;font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--brand-soft);color:var(--text)}.badge--soft{background:color-mix(in srgb,var(--accent) 22%,transparent)}.status{display:flex;align-items:center;gap:10px;color:var(--muted);padding:24px 0}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--action);display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}.chip{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:4px 12px;font:inherit;font-size:.85rem;cursor:pointer}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.section-title{margin-top:8px}.hero{position:relative;overflow:hidden;margin:4px 0 40px;padding:clamp(28px,2rem + 3vw,72px) clamp(22px,1rem + 4vw,64px);border-radius:24px;color:#f6f4ef;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.55fr);align-items:center;gap:clamp(24px,4vw,48px);background:var(--brand-deep)}.hero__copy{min-width:0}.hero__mark{width:100%;max-width:220px;justify-self:end}.hero__mark .logo-mark{width:100%}.hero .eyebrow{color:var(--ember-hi);font-family:var(--display);font-size:1.05rem;font-weight:600;letter-spacing:.01em;margin-bottom:14px}.hero h1{font-size:clamp(2.2rem,1.2rem + 4vw,4rem);line-height:1.02;letter-spacing:-.035em;max-width:13ch;margin-bottom:18px}.hero__text{font-size:1.12rem;color:#f6f4efcc;max-width:46ch;margin:0}.continue{margin:8px 0 32px}.continue__card{display:flex;align-items:center;gap:16px;padding:18px;text-decoration:none;color:var(--text);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow)}.continue__card:hover{border-color:var(--action);border-left-color:var(--accent)}.continue__card small{display:block}.continue__play{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--action);color:var(--action-ink);flex:none;box-shadow:0 0 0 6px color-mix(in srgb,var(--action) 16%,transparent)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:16px}.card{position:relative;display:grid;align-content:start;gap:8px;min-height:160px;padding:22px 20px 20px;text-decoration:none;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .15s ease,background-color .15s ease}.card:before{content:"";position:absolute;top:24px;right:22px;width:10px;height:10px;border-radius:50%;background:var(--card-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--card-accent) 18%,transparent)}.card h3{font-family:var(--display);font-size:1.2rem;font-weight:700;letter-spacing:-.01em;margin:2px 0 0}.card p{margin:0}.card:not(.card--soon){border-color:color-mix(in srgb,var(--action) 30%,var(--line));box-shadow:var(--shadow)}.card:hover{border-color:var(--action)}.card:before{transition:box-shadow .25s var(--ease-out)}.card:hover:before{box-shadow:0 0 0 6px color-mix(in srgb,var(--card-accent) 22%,transparent),0 0 14px 2px color-mix(in srgb,var(--card-accent) 45%,transparent)}.card--soon{background:transparent;border-style:dashed}.card--soon:hover{background:var(--surface)}.card--soon .badge{background:color-mix(in srgb,var(--accent) 22%,transparent)}.group__head{max-width:780px;margin-bottom:28px}.group__head h1{font-size:clamp(2rem,1.3rem + 2.6vw,3.1rem);letter-spacing:-.03em}.group__head .badge{margin-bottom:10px}.group__body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.buybox{position:sticky;top:76px}.product{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.product{border-top:4px solid var(--accent)}.product__price{font-family:var(--display);font-size:2.1rem;font-weight:800;letter-spacing:-.02em;margin:4px 0}.product__terms{font-weight:600;color:var(--link)}.module{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px}.module+.module:before{content:"";position:absolute;left:32px;top:-13px;width:2px;height:12px;background:var(--root)}.module[open]{border-color:color-mix(in srgb,var(--action) 30%,var(--line))}.module summary{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}.module summary::-webkit-details-marker{display:none}.module__index{flex:none;display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2px solid var(--root);background:var(--bg);color:var(--muted);font:700 .82rem/1 var(--display);font-variant-numeric:tabular-nums}.module[open] .module__index{background:var(--action);border-color:var(--action);color:var(--action-ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--action) 18%,transparent)}.module summary:hover .module__title{color:var(--link)}.module__title{flex:1;font-weight:700}.module__desc{padding:0 16px 0 62px}.lessons{list-style:none;margin:0;padding:0 8px 10px 40px}.lesson-row a{display:flex;align-items:center;gap:10px;padding:10px;border-radius:var(--radius-sm);color:var(--text);text-decoration:none}.lesson-row a:hover{background:var(--surface-2)}.lesson-row__icon{width:22px;text-align:center;color:var(--action)}.lesson-row__title{flex:1;min-width:0}.lesson-row__dur{font-size:.85rem;white-space:nowrap}.lesson-row--locked .lesson-row__title{color:var(--muted)}.waitlist{max-width:560px}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.crumbs{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--muted);flex-wrap:wrap}.crumbs a{color:var(--muted)}.lesson-title{margin-top:6px}.lesson-list-toggle{display:none;margin-left:auto}.player{position:relative;width:100%;aspect-ratio:16 / 9;background:#0a1413;border-radius:var(--radius);overflow:hidden}.player__frame,.player__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.player__frame:fullscreen{background:#000}.player__fullscreen{position:absolute;top:12px;right:12px;z-index:3}.player__placeholder{position:absolute;inset:0;display:grid;place-items:center;padding:16px;color:#e8efec}.player__placeholder .notice{max-width:460px;background:#ffffff0f;border-color:#ffffff26;color:#e8efec}.player__placeholder .muted{color:#b8c7c2}.player__placeholder .btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 3px 0 var(--ember-deep)}.player__placeholder .btn--primary:hover{background:var(--ember-hi);border-color:var(--ember-hi)}.watermark{position:absolute;pointer-events:none;user-select:none;z-index:2;color:#ffffff61;font:600 13px/1 var(--mono);letter-spacing:.06em;text-shadow:0 0 2px rgb(0 0 0 / 50%);transition:all 1.2s ease}@media(prefers-reduced-motion:reduce){.watermark{transition:none}}.chapters{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.pager{display:flex;justify-content:space-between;gap:12px;margin:16px 0}.tabs{margin-top:12px}.tabs__list{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--line)}.tabs__tab{background:none;border:0;border-bottom:3px solid transparent;padding:10px 14px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap}.tabs__tab[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}.tabs__panel{padding:16px 0}.lesson-side{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px;position:sticky;top:76px;max-height:calc(100vh - 96px);overflow:auto}.lesson-side__head{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 10px}.side-module__title{font-size:.85rem;font-weight:700;color:var(--muted);margin:14px 8px 4px}.lesson-side ol{list-style:none;margin:0;padding:0}.lesson-side a{display:block;padding:7px 8px;border-radius:8px;color:var(--text);text-decoration:none;font-size:.92rem}.lesson-side a:hover{background:var(--surface-2)}.lesson-side a.active{background:var(--brand-soft);font-weight:700;box-shadow:inset 3px 0 0 var(--accent)}.scrim{display:none}.note-list{list-style:none;padding:0;display:grid;gap:10px}.note-list li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px}.note-list p{margin:0;white-space:pre-wrap}.question{border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:grid;gap:8px;background:var(--surface)}.question legend{font-weight:700;padding:0 6px}.option{text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);padding:10px 12px;font:inherit;cursor:pointer}.option--ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--surface))}.option--bad{border-color:var(--danger)}.practice-frame{width:100%;height:min(75vh,720px);border:1px solid var(--line);border-radius:var(--radius);background:#fff}.auth,.checkout,.result,.legal{max-width:620px;margin:0 auto;display:grid;gap:14px}.legal{max-width:760px}.legal__text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}.legal-doc{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.legal-doc summary{cursor:pointer;padding:10px 12px;font-weight:600;color:var(--link)}.legal-doc .legal__text{max-height:50vh;overflow:auto;padding:0 12px 12px;font-size:.92rem}.account{max-width:760px;margin:0 auto}.product--summary{box-shadow:none}.status--paid{color:var(--ok);font-weight:700}.status--failed,.status--refunded{color:var(--danger)}@media(max-width:900px){.group__body,.lesson-layout{grid-template-columns:1fr}.buybox{position:static;order:-1}.lesson-list-toggle{display:inline-flex}.lesson-side{position:fixed;top:0;right:0;bottom:0;z-index:40;width:min(86vw,360px);max-height:none;border-radius:0;transform:translate(100%);transition:transform .2s ease}.lesson-side--open{transform:none}.scrim{display:block;position:fixed;inset:0;background:#0006;z-index:30}.player{border-radius:10px;margin:0 calc(var(--gutter) * -.5);width:calc(100% + var(--gutter))}}@media(max-width:560px){.hero{grid-template-columns:1fr;border-radius:18px}.hero__mark{max-width:150px;justify-self:start}.lessons{padding-left:8px}.module__desc{padding-left:16px}.lesson-row a{flex-wrap:wrap}.lesson-row__title{flex-basis:calc(100% - 32px)}.lesson-row .badge,.lesson-row__dur{margin-left:32px}.lesson-row .badge+.lesson-row__dur{margin-left:0}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.inline-form{flex-direction:column}.topbar__nav{gap:0;font-size:.9rem}.topbar__nav a:not(.btn),.topbar__nav .linklike{padding:8px 7px}.topbar{flex-wrap:wrap}.logo{gap:8px}.logo__word{font-size:1.15rem}.footer{flex-direction:column}}.topbar__nav .topbar__login{color:var(--text)}.auth-card{max-width:460px;margin:8px auto 0;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.auth-card h1{margin:0;font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem)}.auth-card h1:focus{outline:none}.auth-card h1:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:999px;background:var(--surface-2)}.auth-tabs a{display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:999px;text-decoration:none;font-weight:700;color:var(--muted)}.auth-tabs a:hover{color:var(--text)}.auth-tabs a[aria-current=page]{background:var(--surface);color:var(--text);box-shadow:0 1px 0 var(--line),0 0 0 1px var(--line)}.field{display:grid;gap:6px;font-size:.92rem;font-weight:600}.password-field{display:flex;align-items:stretch;gap:6px}.password-field input{flex:1;min-width:0}.password-field__toggle{flex:none;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer;color:var(--link);background:transparent;border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 12px}.password-field__toggle:hover{border-color:var(--action)}.auth-card .btn[aria-busy=true]{cursor:progress}@media(max-width:520px){.auth-card{padding:16px;border-radius:var(--radius-sm)}}
