:root{--ink-950:#102d28;--ink-900:#153c35;--ink-800:#225149;--ink-700:#3d675f;--ink-500:#718b86;--paper-50:#fdfbf6;--paper-100:#f6f1e7;--paper-200:#ebe3d4;--line:#153c3529;--accent-500:#d77924;--accent-400:#e99a45;--accent-100:#f8e4ca;--white:#fff;--shadow-soft:0 26px 80px #182b261c;--shadow-float:0 12px 36px #182b261f;--motion-fast:.16s;--motion-normal:.26s;--ease-standard:cubic-bezier(.2, .8, .2, 1);--radius-sm:12px;--radius-md:20px;--radius-lg:32px;--header-height:84px;--shell-width:1240px;--font-sans:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--font-serif:"Songti SC", "STSong", "Noto Serif CJK SC", serif;color:var(--ink-950);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper-50)}body{background:radial-gradient(circle at 12% 8%, color-mix(in srgb, var(--ink-700) 8%, transparent), transparent 26rem), var(--paper-50);min-width:0;color:var(--ink-950);margin:0;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--accent-500);outline-offset:3px}a{color:inherit}[data-nowrap]{white-space:nowrap;word-break:keep-all}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.challenge-page{background:linear-gradient(color-mix(in srgb, var(--ink-900) 2.5%, transparent) 1px, transparent 1px), var(--paper-100);background-size:32px 32px;min-height:100svh}.challenge-header{border-bottom:1px solid color-mix(in srgb, var(--paper-50) 12%, transparent);background:var(--ink-950);color:var(--paper-50)}.challenge-header__inner{width:min(calc(100% - 48px), var(--shell-width));grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:76px;margin-inline:auto;display:grid}.challenge-header a{align-items:center;gap:8px;width:fit-content;font-size:14px;font-weight:650;text-decoration:none;display:inline-flex}.challenge-header a:hover,.challenge-header a:focus-visible{color:var(--accent-400)}.challenge-header strong{font-family:var(--font-serif);letter-spacing:.04em;text-align:center;white-space:nowrap;font-size:18px}.challenge-header__mode{border:1px solid color-mix(in srgb, var(--paper-200) 35%, transparent);color:var(--paper-200);letter-spacing:.08em;white-space:nowrap;border-radius:999px;justify-self:end;padding:7px 12px;font-size:12px;font-weight:700}.challenge-layout{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;gap:clamp(28px,5vw,64px);width:min(100% - 48px,1120px);margin-inline:auto;padding:clamp(40px,7vw,84px) 0;display:grid}.challenge-layout--progress-collapsed{grid-template-columns:156px minmax(0,1fr);gap:clamp(20px,3vw,36px)}.challenge-progress-slot{border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--paper-50) 78%, transparent);min-width:0;box-shadow:var(--shadow-float);position:sticky;top:24px;overflow:hidden}.challenge-progress-slot__heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.challenge-progress-slot__heading>div{align-items:baseline;gap:10px;min-width:0;display:flex}.challenge-progress-slot__heading p{color:var(--ink-900);font-family:var(--font-serif);margin:0;font-size:17px;font-weight:700}.challenge-progress-slot__heading span{color:var(--accent-500);white-space:nowrap;font-size:12px;font-weight:750}.challenge-progress-toggle{border:1px solid var(--line);background:var(--paper-50);width:32px;height:32px;color:var(--ink-800);cursor:pointer;font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);border-radius:50%;flex:0 0 32px;place-items:center;font-size:24px;line-height:1;display:grid}.challenge-progress-toggle:hover,.challenge-progress-toggle:focus-visible{border-color:var(--accent-500);color:var(--accent-500)}.challenge-progress-total{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--accent-100) 38%, transparent);gap:10px;padding:17px 20px;display:grid}.challenge-progress-total>div:first-child{justify-content:space-between;align-items:center;gap:12px;display:flex}.challenge-progress-total p,.challenge-progress-total strong{white-space:nowrap;margin:0}.challenge-progress-total p{color:var(--ink-800);font-size:13px;font-weight:700}.challenge-progress-total strong{color:var(--accent-500);font-size:13px}.challenge-progress-bar{background:var(--paper-200);border-radius:999px;height:6px;overflow:hidden}.challenge-progress-bar>span{border-radius:inherit;background:var(--accent-500);height:100%;display:block}.challenge-gate-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.challenge-gate{border-bottom:1px solid var(--line);min-width:0;color:var(--ink-700);grid-template-columns:30px minmax(0,1fr);align-items:start;gap:11px;padding:15px 20px;font-size:13px;line-height:1.55;display:grid}.challenge-gate:last-child{border-bottom:0}.challenge-gate__number{background:var(--paper-200);width:30px;height:30px;color:var(--ink-800);border-radius:50%;place-items:center;font-size:12px;font-weight:750;display:grid}.challenge-gate__content{gap:8px;min-width:0;display:grid}.challenge-gate__heading,.challenge-gate__meta{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.challenge-gate__heading p{overflow-wrap:anywhere;min-width:0;color:var(--ink-900);margin:0;font-weight:700}.challenge-gate__heading span,.challenge-gate__meta{font-size:11px}.challenge-gate__heading span,.challenge-gate__meta span,.challenge-gate__meta strong{white-space:nowrap}.challenge-gate__heading span,.challenge-gate__meta{color:var(--ink-500)}.challenge-gate__meta strong{color:var(--ink-700)}.challenge-progress-bar--gate{height:4px}.challenge-gate--active{background:var(--accent-100)}.challenge-gate--active .challenge-gate__number{background:var(--accent-500);color:var(--white)}.challenge-gate--complete .challenge-gate__number{background:var(--ink-700);color:var(--white)}.challenge-gate--active .challenge-gate__heading span{color:var(--accent-500);font-weight:750}.challenge-gate--complete .challenge-progress-bar>span{background:var(--ink-700)}.challenge-progress-compact{justify-items:stretch;gap:17px;min-width:0;padding:18px 16px;display:grid}.challenge-progress-compact__total,.challenge-progress-compact__current{text-align:center;gap:7px;display:grid}.challenge-progress-compact__total strong{color:var(--accent-500);font-family:var(--font-serif);font-size:28px}.challenge-progress-compact__current>span{color:var(--ink-800);white-space:nowrap;font-size:12px;font-weight:700}.challenge-progress-dots{justify-content:center;align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.challenge-progress-dot{border:1px solid var(--ink-500);background:0 0;border-radius:50%;flex:0 0 9px;width:9px;height:9px}.challenge-progress-dot--complete{border-color:var(--ink-700);background:var(--ink-700)}.challenge-progress-dot--active{border-color:var(--accent-500);background:var(--accent-500);box-shadow:0 0 0 3px var(--accent-100)}.challenge-progress-toggle--compact{justify-self:center}.challenge-conversation{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-50);min-width:0;box-shadow:var(--shadow-soft);gap:18px;padding:clamp(28px,5vw,56px);display:grid}.challenge-conversation__intro{border-bottom:1px solid var(--line);padding-bottom:14px}.challenge-conversation__eyebrow{color:var(--accent-500);letter-spacing:.1em;margin:0 0 8px;font-size:12px;font-weight:750}.challenge-message__label{color:var(--ink-700);letter-spacing:.1em;margin:0 0 8px;font-size:12px;font-weight:750}.challenge-conversation h1{color:var(--ink-950);font-family:var(--font-serif);margin:0;font-size:clamp(28px,4vw,42px);line-height:1.2}.challenge-conversation__intro>p:last-child{color:var(--ink-700);margin:14px 0 0;line-height:1.75}.challenge-message{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-100);max-width:92%;padding:18px 20px}.challenge-message--student{background:var(--paper-200);justify-self:end}.challenge-message--hint{border-left:3px solid var(--ink-700);background:var(--white)}.challenge-message--follow-up{background:color-mix(in srgb, var(--ink-900) 5.5%, transparent)}.challenge-message p:last-child{color:var(--ink-900);margin:0;font-size:15px;line-height:1.75}.challenge-composer{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding-top:10px;display:grid}.challenge-composer textarea{resize:none;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-100);width:100%;min-height:86px;color:var(--ink-500);font:inherit;padding:14px 16px}.challenge-composer button{border-radius:var(--radius-sm);background:var(--ink-900);min-width:84px;color:var(--paper-50);font:inherit;opacity:.48;border:0;align-self:stretch;font-weight:700}.challenge-composer>p{color:var(--ink-500);grid-column:1/-1;margin:0;font-size:12px}@media (width<=820px){.challenge-header__inner{width:min(calc(100% - 32px), var(--shell-width));grid-template-columns:1fr auto;gap:10px 16px;padding:14px 0}.challenge-header strong{grid-area:2/1/auto/-1;justify-self:start;font-size:16px}.challenge-layout{grid-template-columns:1fr;gap:18px;width:min(100% - 32px,1120px);padding:28px 0 48px}.challenge-layout--progress-collapsed{grid-template-columns:1fr}.challenge-progress-slot{width:100%;position:static}.challenge-progress-compact{grid-template-columns:auto auto minmax(0,1fr) 32px;align-items:center;gap:clamp(10px,3vw,18px);padding:12px 14px}.challenge-progress-compact__total,.challenge-progress-compact__current{gap:5px;min-width:0}.challenge-progress-compact__total strong{font-size:22px}.challenge-progress-dots{gap:clamp(5px,2vw,8px)}.challenge-progress-toggle--compact{justify-self:end}.challenge-gate{grid-template-columns:28px minmax(0,1fr);padding-inline:16px}.challenge-conversation{border-radius:var(--radius-md);padding:24px 18px}.challenge-message{max-width:100%}}.shell{width:min(calc(100% - 48px), var(--shell-width));margin-inline:auto}.section-anchor{scroll-margin-top:var(--header-height)}.site-header{z-index:50;height:var(--header-height);border-bottom:1px solid color-mix(in srgb, var(--ink-900) 10%, transparent);background:color-mix(in srgb, var(--paper-50) 88%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0}.site-header__inner{width:min(calc(100% - 48px), var(--shell-width));justify-content:space-between;align-items:center;gap:32px;height:100%;margin-inline:auto;display:flex}.brand{align-items:center;gap:12px;min-width:0;text-decoration:none;display:inline-flex}.brand__mark{background:var(--ink-900);width:42px;height:42px;color:var(--paper-50);letter-spacing:.08em;border-radius:50%;flex:0 0 42px;place-items:center;font-family:ui-monospace,monospace;font-size:13px;font-weight:700;display:grid}.brand__text{gap:2px;min-width:0;display:grid}.brand__text strong,.brand__text small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand__text strong{letter-spacing:.05em;font-size:14px}.brand__text small{color:var(--ink-500);letter-spacing:.12em;font-size:11px}.site-header nav{align-items:center;gap:clamp(20px,3vw,42px);display:flex}.site-header nav a{color:var(--ink-700);letter-spacing:.06em;white-space:nowrap;padding:30px 0 27px;font-size:14px;font-weight:650;text-decoration:none;position:relative}.site-header nav a:after{background:var(--accent-500);content:"";opacity:0;height:2px;transition:opacity var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);border-radius:99px;position:absolute;bottom:20px;left:0;right:0;transform:scaleX(.35)}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--ink-950)}.site-header nav a:hover:after,.site-header nav a:focus-visible:after{opacity:1;transform:scaleX(1)}.hero{isolation:isolate;min-height:calc(100svh - var(--header-height));padding:clamp(72px,10vw,136px) 0 clamp(80px,10vw,132px);position:relative;overflow:hidden}.hero:before{z-index:-2;background-image:linear-gradient(color-mix(in srgb, var(--ink-900) 4.5%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--ink-900) 4.5%, transparent) 1px, transparent 1px);content:"";-webkit-mask-image:linear-gradient(to bottom, var(--ink-950), transparent 90%);mask-image:linear-gradient(to bottom, var(--ink-950), transparent 90%);background-size:72px 72px;position:absolute;inset:0}.hero__ambient{z-index:-1;border:1px solid var(--line);border-radius:50%;width:42rem;height:42rem;position:absolute;top:8%;right:-12rem}.hero__ambient:before,.hero__ambient:after{border:1px solid var(--line);border-radius:inherit;content:"";position:absolute}.hero__ambient:before{inset:5rem}.hero__ambient:after{inset:11rem}.hero__layout{grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr);align-items:center;gap:clamp(48px,7vw,104px);display:grid}.eyebrow{color:var(--ink-700);letter-spacing:.16em;white-space:nowrap;align-items:center;gap:14px;margin:0 0 26px;font-size:13px;font-weight:750;display:flex}.eyebrow span{border:1px solid var(--line);border-radius:50%;place-items:center;width:32px;height:32px;font:700 11px/1 ui-monospace,monospace;display:grid}.hero h1{max-width:760px;font-family:var(--font-serif);letter-spacing:-.055em;text-wrap:balance;margin:0;font-size:clamp(44px,5.35vw,76px);font-weight:700;line-height:1.12}.hero__lead{max-width:720px;color:var(--ink-700);letter-spacing:.025em;text-wrap:pretty;margin:32px 0 0;font-size:clamp(16px,1.3vw,19px);line-height:1.9}.hero__stats{align-items:stretch;gap:0;margin-top:52px;display:flex}.hero__stats>div{min-width:150px;padding:0 30px;display:grid;position:relative}.hero__stats>div:first-child{padding-left:0}.hero__stats>div+div:before{background:var(--line);content:"";width:1px;position:absolute;top:8px;bottom:8px;left:0}.hero__stats strong{font-family:var(--font-serif);font-size:34px;line-height:1}.hero__stats span:not(.sr-only){color:var(--ink-500);letter-spacing:.06em;white-space:nowrap;margin-top:8px;font-size:13px}.course-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--white) 72%, transparent);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:clamp(28px,3vw,42px);position:relative;overflow:hidden}.course-card:before{background:linear-gradient(90deg, var(--ink-900) 0 68%, var(--ink-500) 68%);content:"";width:100%;height:4px;position:absolute;top:0;left:0}.course-card__topline{color:var(--ink-500);letter-spacing:.14em;justify-content:space-between;margin-bottom:30px;font:700 11px/1 ui-monospace,monospace;display:flex}.course-card dl{margin:0}.course-card dl>div{border-top:1px solid var(--line);gap:9px;padding:21px 0;display:grid}.course-card dt{color:var(--ink-500);letter-spacing:.08em;font-size:12px}.course-card dd{font-family:var(--font-serif);text-wrap:balance;margin:0;font-size:clamp(19px,2vw,24px);font-weight:700;line-height:1.35}.course-card__focus{border-radius:var(--radius-sm);background:var(--ink-900);color:var(--paper-50);gap:9px;margin-top:20px;padding:20px;display:grid}.course-card__focus span{color:var(--paper-200);letter-spacing:.12em;font-size:11px;font-weight:700}.course-card__focus strong{text-wrap:pretty;font-size:15px;line-height:1.65}.type-line{display:block}.type-phrase{white-space:nowrap;word-break:keep-all;display:inline-block}.course-card__focus-copy{letter-spacing:-.01em;white-space:nowrap;flex-wrap:wrap;align-items:baseline;gap:.25em;font-size:clamp(13px,1.05vw,15px);display:flex}.hero h1,.hero__lead,.course-card dd,.course-card__focus-copy,.section-heading h2,.section-heading>p,.outcomes-heading h2,.outcomes-heading>p,.roadmap-heading h2,.roadmap-heading>p{line-break:strict;word-break:normal;overflow-wrap:normal}.placeholder-section{min-height:42vh}.process-section{background:var(--ink-950);color:var(--paper-50);padding:clamp(88px,10vw,144px) 0}.section-heading{grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);align-items:end;gap:48px;margin-bottom:48px;display:grid}.section-heading .eyebrow{color:var(--paper-200);margin-bottom:22px}.section-heading h2{max-width:720px;font-family:var(--font-serif);letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(36px,4.4vw,62px);line-height:1.16}.section-heading>p{color:color-mix(in srgb, var(--paper-50) 90%, transparent);text-wrap:pretty;margin:0 0 4px;font-size:15px;font-weight:650;line-height:1.6}.section-heading__aside{color:color-mix(in srgb, var(--paper-50) 52%, transparent);letter-spacing:.04em;margin-top:10px;font-size:12px;font-weight:500}.chapter-selector{gap:10px;max-width:420px;margin-bottom:16px;display:grid}.chapter-selector>span{color:var(--accent-400);letter-spacing:.12em;font-size:11px;font-weight:700}.chapter-selector select{border:1px solid color-mix(in srgb, var(--paper-50) 22%, transparent);border-radius:var(--radius-sm);background:var(--ink-900);width:100%;color:var(--paper-50);font:650 14px/1.4 var(--font-sans);transition:border-color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);padding:13px 42px 13px 15px}.chapter-selector select:focus-visible{outline:2px solid var(--accent-400);outline-offset:3px}.process-tabs{border-top:1px solid color-mix(in srgb, var(--paper-50) 18%, transparent);border-bottom:1px solid color-mix(in srgb, var(--paper-50) 18%, transparent);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.process-tab{border:0;border-right:1px solid color-mix(in srgb, var(--paper-50) 12%, transparent);min-width:0;color:color-mix(in srgb, var(--paper-50) 48%, transparent);cursor:pointer;font:inherit;text-align:left;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;align-items:center;gap:14px;padding:25px 20px;display:flex;position:relative}.process-tab:last-child{border-right:0}.process-tab:after{background:var(--accent-400);content:"";opacity:0;height:3px;transition:opacity var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);border-radius:99px 99px 0 0;position:absolute;bottom:-1px;left:18px;right:18px;transform:scaleX(.4)}.process-tab span{color:color-mix(in srgb, var(--paper-50) 48%, transparent);letter-spacing:.08em;font:700 11px/1 ui-monospace,monospace}.process-tab strong{letter-spacing:.06em;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.process-tab:hover,.process-tab:focus-visible,.process-tab.is-active{background:color-mix(in srgb, var(--paper-50) 6%, transparent);color:var(--paper-50)}.process-tab.is-active span{color:var(--accent-400)}.process-tab.is-active:after{opacity:1;transform:scaleX(1)}.process-panel{animation:process-reveal var(--motion-normal) var(--ease-standard) both;padding-top:48px}@keyframes process-reveal{0%{opacity:0;transform:translateY(8px)}}.process-media-card{border:1px solid color-mix(in srgb, var(--paper-50) 14%, transparent);border-radius:var(--radius-md);background:var(--ink-900);min-height:clamp(520px,44vw,660px);box-shadow:var(--shadow-soft);grid-template-columns:minmax(0,56fr) minmax(340px,44fr);display:grid;overflow:hidden}.process-media-card__video{background:var(--ink-950);flex-direction:column;min-width:0;padding:24px;display:flex}.process-media-card__video-label{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.process-media-card__video-label span{color:var(--paper-200);letter-spacing:.12em;font-size:12px;font-weight:750}.process-media-card__video-label small{color:color-mix(in srgb, var(--paper-50) 45%, transparent);white-space:nowrap;font-size:11px}.process-video{aspect-ratio:16/9;border-radius:calc(var(--radius-md) - 10px);background:var(--ink-950);object-fit:cover;border:0;flex:none;width:100%;min-height:0;position:relative;overflow:hidden}.process-video__poster,.process-video__shade{width:100%;height:100%;position:absolute;inset:0}.process-video__poster{object-fit:cover}.process-video__shade{background:linear-gradient(to top, color-mix(in srgb, var(--ink-950) 88%, transparent), transparent 58%), linear-gradient(color-mix(in srgb, var(--ink-950) 8%, transparent), color-mix(in srgb, var(--ink-950) 28%, transparent))}.process-video__status{z-index:1;color:var(--paper-50);position:absolute;bottom:28px;left:28px;right:28px}.process-video__status small{color:var(--accent-400);letter-spacing:.16em;font:700 9px/1 ui-monospace,monospace;display:block}.process-video__status strong{font-family:var(--font-serif);text-wrap:balance;margin-top:14px;font-size:clamp(24px,2.4vw,32px);line-height:1.35;display:block}.process-video__status p{max-width:310px;color:color-mix(in srgb, var(--paper-50) 70%, transparent);text-wrap:pretty;margin:14px 0 0;font-size:14px;line-height:1.7}.process-story{background:var(--paper-50);min-width:0;color:var(--ink-900);flex-direction:column;padding:clamp(32px,3.6vw,52px);display:flex}.process-story__kicker{color:var(--ink-700);letter-spacing:.14em;margin:0;font:750 10px/1 ui-monospace,monospace}.process-story h3{font-family:var(--font-serif);letter-spacing:-.035em;text-wrap:balance;margin:14px 0 0;font-size:clamp(28px,2.7vw,40px);line-height:1.25}.process-story__lead{color:var(--ink-700);text-wrap:pretty;margin:18px 0 0;font-size:14px;line-height:1.85}.process-story__blocks{gap:16px;margin-top:22px;margin-bottom:30px;display:grid}.process-story__blocks>p{color:var(--ink-700);text-wrap:pretty;margin:0;font-size:14px;line-height:1.8}.process-story__callout{border-left:3px solid var(--ink-700);background:var(--paper-100);padding:17px 18px}.process-story__callout strong,.process-story__list>strong{font-size:14px;line-height:1.5}.process-story__callout p{color:var(--ink-700);text-wrap:pretty;margin:7px 0 0;font-size:14px;line-height:1.75}.process-story__list{padding-top:2px}.process-story__list ul{color:var(--ink-700);gap:7px;margin:10px 0 0;padding:0;font-size:14px;line-height:1.7;list-style:none;display:grid}.process-story__list li{text-wrap:pretty;padding-left:17px;position:relative}.process-story__list li:before{background:var(--ink-500);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:.7em;left:0}.process-story__image{margin:0}.process-story__image img{border-radius:var(--radius-sm);object-fit:cover;width:100%;max-height:240px;display:block}.process-story__image figcaption{color:var(--ink-500);margin-top:8px;font-size:12px;line-height:1.6}.process-story blockquote{border-left:1px solid var(--ink-700);color:var(--ink-800);margin:0;padding:4px 0 4px 18px}.process-story blockquote p{font:16px/1.75 var(--font-serif);text-wrap:pretty;margin:0}.process-story blockquote cite{color:var(--ink-500);margin-top:8px;font-size:12px;font-style:normal;display:block}.process-story__tags{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.process-story__tags li{border:1px solid var(--line);background:var(--paper-100);color:var(--ink-700);white-space:nowrap;word-break:keep-all;border-radius:99px;padding:6px 9px;font-size:12px;line-height:1}.outcomes-section{background:var(--paper-50);padding:clamp(88px,10vw,144px) 0}.outcomes-heading{grid-template-columns:minmax(0,1fr) minmax(280px,.46fr);align-items:end;gap:48px;display:grid}.outcomes-heading .eyebrow{margin-bottom:22px}.outcomes-heading h2{max-width:720px;font-family:var(--font-serif);letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(36px,4.4vw,62px);line-height:1.16}.outcomes-heading>p{color:var(--ink-500);text-wrap:pretty;margin:0 0 5px;font-size:14px;line-height:1.85}.outcome-filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:52px;display:grid}.outcome-filter{border:0;border-right:1px solid var(--line);min-width:0;color:var(--ink-500);cursor:pointer;font:inherit;text-align:left;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;gap:8px;padding:23px 20px;display:grid;position:relative}.outcome-filter:last-child{border-right:0}.outcome-filter:after{background:var(--accent-500);content:"";opacity:0;height:3px;transition:opacity var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);border-radius:99px 99px 0 0;position:absolute;bottom:-1px;left:20px;right:20px;transform:scaleX(.4)}.outcome-filter strong{letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.outcome-filter span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.outcome-filter:hover,.outcome-filter:focus-visible,.outcome-filter.is-active{background:var(--paper-100);color:var(--ink-950)}.outcome-filter.is-active:after{opacity:1;transform:scaleX(1)}.outcomes-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:34px;display:grid}.outcome-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--white) 44%, transparent);min-width:0;min-height:142px;transition:background var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:22px;padding:24px;display:grid}.outcome-card:hover{z-index:1;background:var(--white);box-shadow:var(--shadow-float);transform:translateY(-2px)}.outcome-card__index{border:1px solid var(--line);width:64px;height:64px;color:var(--accent-500);border-radius:50%;place-items:center;font:700 16px/1 ui-monospace,monospace;display:grid}.outcome-card__body{min-width:0}.outcome-card__body>span{color:var(--ink-500);letter-spacing:.1em;white-space:nowrap;font-size:11px;font-weight:700}.outcome-card h3{font-family:var(--font-serif);text-wrap:balance;margin:9px 0 0;font-size:clamp(19px,1.7vw,25px);line-height:1.35}.outcome-card__action a,.outcome-card__action button{border:1px solid var(--line);color:var(--ink-900);cursor:pointer;font:650 12px/1 var(--font-sans);white-space:nowrap;transition:border-color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;border-radius:99px;align-items:center;gap:10px;padding:11px 14px;text-decoration:none;display:inline-flex}.outcome-card__action a:hover,.outcome-card__action a:focus-visible,.outcome-card__action button:hover,.outcome-card__action button:focus-visible{border-color:var(--ink-900);background:var(--ink-900);color:var(--white)}.outcome-card__action a span,.outcome-card__action button span{color:var(--accent-500);font-size:15px}.status{border:1px solid var(--line);color:var(--ink-500);white-space:nowrap;border-radius:99px;align-items:center;gap:7px;padding:10px 13px;font-size:12px;display:inline-flex}.status:before{background:var(--ink-500);content:"";border-radius:50%;width:7px;height:7px}.status--building{border-color:color-mix(in srgb, var(--accent-500) 25%, transparent);background:var(--accent-100);color:var(--accent-500)}.status--building:before{background:var(--accent-500)}.is-modal-open{overflow:hidden}.viewer-backdrop{z-index:100;background:color-mix(in srgb, var(--ink-950) 66%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:backdrop-in var(--motion-fast) var(--ease-standard) both;justify-items:end;display:grid;position:fixed;inset:0}@keyframes backdrop-in{0%{opacity:0}}.lesson-viewer{background:var(--paper-50);width:min(780px,94vw);height:100%;box-shadow:var(--shadow-soft);animation:viewer-in var(--motion-normal) var(--ease-standard) both;grid-template-rows:auto minmax(0,1fr);display:grid}@keyframes viewer-in{0%{transform:translate(40px)}}.lesson-viewer>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:28px clamp(24px,5vw,54px);display:flex}.lesson-viewer>header span{color:var(--ink-700);letter-spacing:.1em;font-size:11px;font-weight:750}.lesson-viewer>header h2{font-family:var(--font-serif);text-wrap:balance;margin:8px 0 0;font-size:clamp(24px,3vw,36px);line-height:1.25}.lesson-viewer>header button{border:1px solid var(--line);width:42px;height:42px;color:var(--ink-900);cursor:pointer;font:300 27px/1 var(--font-sans);background:0 0;border-radius:50%;flex:0 0 42px;place-items:center;display:grid}.lesson-viewer__content{overscroll-behavior:contain;padding:42px clamp(24px,6vw,72px) 80px;overflow:auto}.lesson-viewer__content h1,.lesson-viewer__content h2,.lesson-viewer__content h3{font-family:var(--font-serif);text-wrap:balance;line-height:1.35}.lesson-viewer__content h1{font-size:clamp(34px,5vw,52px)}.lesson-viewer__content h2{margin-top:2em;font-size:clamp(26px,3.2vw,36px)}.lesson-viewer__content h3{margin-top:1.8em;font-size:23px}.lesson-viewer__content p,.lesson-viewer__content li{color:var(--ink-800);font-size:16px;line-height:1.95}.lesson-viewer__content img{border-radius:var(--radius-sm);max-width:100%;height:auto;margin:24px auto}.lesson-viewer__content blockquote{border-left:3px solid var(--ink-700);background:var(--paper-100);margin:28px 0;padding:18px 22px}.viewer-state{color:var(--ink-500);text-align:center}.viewer-state--error{color:var(--ink-700)}.roadmap-section{background:var(--paper-100);padding:clamp(88px,10vw,144px) 0 0}.roadmap-heading{grid-template-columns:minmax(0,1fr) minmax(280px,.46fr);align-items:end;gap:48px;display:grid}.roadmap-heading .eyebrow{margin-bottom:22px}.roadmap-heading h2{max-width:780px;font-family:var(--font-serif);letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(36px,4.4vw,62px);line-height:1.16}.roadmap-heading>p{color:var(--ink-500);text-wrap:pretty;margin:0 0 5px;font-size:14px;line-height:1.85}.roadmap{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin:58px 0 0;padding:0;list-style:none;display:grid}.roadmap__item{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--white) 34%, transparent);min-width:0;min-height:330px;padding:26px;position:relative}.roadmap__item:before{background:var(--ink-500);content:"";opacity:.2;border-radius:0 0 99px 99px;height:3px;position:absolute;top:-1px;left:22px;right:22px}.roadmap__item--complete:before{background:var(--ink-900);opacity:1}.roadmap__item--active:before{background:var(--accent-500);opacity:1}.roadmap__meta{justify-content:space-between;align-items:center;gap:14px;display:flex}.roadmap__index{color:var(--ink-500);letter-spacing:.1em;font:700 12px/1 ui-monospace,monospace}.roadmap__meta .status{padding:7px 10px;font-size:10px}.status--complete,.status--active{border-color:color-mix(in srgb, var(--ink-900) 18%, transparent);background:color-mix(in srgb, var(--ink-900) 8%, transparent);color:var(--ink-900)}.status--complete:before{background:var(--ink-900)}.status--active{border-color:color-mix(in srgb, var(--accent-500) 24%, transparent);background:var(--accent-100);color:var(--accent-500)}.status--active:before{background:var(--accent-500)}.roadmap__item h3{font-family:var(--font-serif);text-wrap:balance;margin:58px 0 0;font-size:clamp(22px,2vw,28px);line-height:1.35}.roadmap__item ul{color:var(--ink-500);gap:10px;margin:24px 0 0;padding:0;font-size:13px;line-height:1.65;list-style:none;display:grid}.roadmap__item ul li{text-wrap:pretty;padding-left:15px;position:relative}.roadmap__item ul li:before{background:var(--ink-500);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:.72em;left:0}.roadmap__item--complete ul li:before{background:var(--ink-900)}.roadmap__item--active ul li:before{background:var(--accent-500)}.roadmap-closing{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:150px minmax(0,1fr);align-items:center;gap:32px;margin:54px 0 88px;padding:30px 0;display:grid}.roadmap-closing p{color:var(--accent-500);letter-spacing:.1em;white-space:nowrap;margin:0;font-size:12px;font-weight:750}.roadmap-closing strong{font-family:var(--font-serif);text-wrap:balance;font-size:clamp(19px,2vw,26px);line-height:1.5}.site-footer{border-top:1px solid color-mix(in srgb, var(--paper-50) 10%, transparent);background:var(--ink-950);color:color-mix(in srgb, var(--paper-50) 58%, transparent)}.site-footer .shell{letter-spacing:.04em;justify-content:space-between;align-items:center;gap:24px;min-height:106px;font-size:11px;display:flex}@media (width<=1040px){.process-media-card{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);min-height:560px}.roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}.roadmap__item{min-height:290px}}@media (width<=900px){:root{--header-height:72px}.site-header__inner{width:min(calc(100% - 32px), var(--shell-width))}.brand__text{display:none}.site-header nav{gap:clamp(13px,3vw,28px)}.site-header nav a{padding-block:24px 23px;font-size:13px}.site-header nav a:after{bottom:16px}.hero__layout{grid-template-columns:1fr}.course-card{max-width:680px}.section-heading,.outcomes-heading{grid-template-columns:1fr;gap:22px}.outcomes-grid{grid-template-columns:1fr}.roadmap-heading{grid-template-columns:1fr;gap:22px}.process-media-card{grid-template-columns:1fr;min-height:0}.process-video{aspect-ratio:16/9;min-height:0}}@media (width<=560px){.type-line{display:inline}.type-line+.type-line:before{content:""}.section-heading__aside{margin-top:10px;display:block}.course-card__focus-copy{white-space:normal;display:block}.shell{width:min(calc(100% - 28px), var(--shell-width))}.process-section .shell{width:min(calc(100% - clamp(28px, 8.56vw, 48px)), var(--shell-width))}.site-header__inner{width:min(calc(100% - 20px), var(--shell-width));gap:10px}.brand__mark{flex-basis:36px;width:36px;height:36px;font-size:11px}.site-header nav{justify-content:space-between;gap:8px;width:min(100%,286px)}.site-header nav a{letter-spacing:0;font-size:12px}.hero{padding-top:60px}.eyebrow{letter-spacing:.08em;gap:10px;font-size:11px}.hero h1{letter-spacing:-.045em;font-size:clamp(37px,12vw,52px)}.hero__lead{margin-top:24px;font-size:15px;line-height:1.8}.hero__stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:38px;display:grid}.hero__stats>div{min-width:0;padding:0 14px}.hero__stats strong{font-size:29px}.hero__stats span:not(.sr-only){white-space:normal;font-size:10px}.course-card{border-radius:24px;padding:26px 22px}.course-card dd{font-size:19px}.process-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.process-tab:nth-child(2){border-right:0}.process-tab:nth-child(-n+2){border-bottom:1px solid color-mix(in srgb, var(--paper-50) 12%, transparent)}.process-tab{padding:18px 14px}.process-panel{padding-top:28px}.process-media-card__video{padding:clamp(14px,4.28vw,24px)}.process-media-card__video-label{flex-direction:column;align-items:flex-start;gap:5px}.process-video{aspect-ratio:16/9;min-height:0}.process-video__status{bottom:20px;left:20px;right:20px}.process-video__status strong{font-size:clamp(21px,7vw,28px)}.process-video__status p{margin-top:8px;font-size:13px;line-height:1.55}.process-story{padding:28px 22px 30px}.outcome-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.outcome-filter:nth-child(2){border-right:0}.outcome-filter:nth-child(-n+2){border-bottom:1px solid var(--line)}.outcome-filter{padding:17px 13px}.outcome-card{grid-template-columns:48px minmax(0,1fr);gap:14px;min-height:132px;padding:20px 16px}.outcome-card__index{width:46px;height:46px;font-size:13px}.outcome-card__action{grid-column:2}.roadmap{grid-template-columns:1fr}.roadmap__item{min-height:250px}.roadmap__item h3{margin-top:38px}.roadmap-closing{grid-template-columns:1fr;gap:14px}.site-footer .shell{flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;padding-block:28px}}@media (width<=360px){.brand{display:none}.site-header nav{gap:4px;width:100%;max-width:none}}@media (width<=320px){.shell,.site-header__inner,.process-section .shell{width:calc(100% - 20px)}.site-header nav a,.chapter-selector>span,.process-tab strong,.outcome-filter strong,.status{word-break:keep-all}.roadmap__item{padding-inline:20px}.outcome-card__action{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
