:root{--site-background: #050505;--site-surface: #101010;--site-border: #303030;--site-text: #e8e8e8;--site-secondary: #b0b0b0;--site-muted: #929292;--site-accent: #e2b55a;--site-accent-hover: #f1cb7d;--site-header-height: 57px}.site-header{position:fixed;inset:0 0 auto;z-index:10002;height:var(--site-header-height);display:flex;align-items:center;justify-content:space-between;gap:20px;padding-inline:clamp(18px,3.5vw,56px);background:var(--site-background);border-bottom:1px solid #202020;color:var(--site-text);font-family:Space Grotesk,sans-serif}.site-header a{text-decoration:none}.site-brand{display:flex;align-items:center;flex-shrink:0;gap:18px}.site-header .site-logo{display:inline-flex;align-items:center;min-height:44px;font:600 13px JetBrains Mono,monospace;letter-spacing:.025em;color:var(--site-text);transition:color .15s}.site-logo__dot{color:var(--site-accent);transition:color .15s}.site-header .site-logo:hover{color:#fff}.site-logo:hover .site-logo__dot{color:var(--site-accent-hover)}.site-header__links{display:flex;align-items:center;gap:clamp(20px,4vw,40px)}.site-header__links a{position:relative;display:inline-flex;align-items:center;min-height:44px;color:var(--site-secondary);font-size:13px;transition:color .15s}.site-header__links a:hover,.site-header__links a[aria-current=page]{color:var(--site-accent-hover)}.site-header__links a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--site-accent)}.site-switcher{position:relative;display:flex;align-items:center;gap:12px}.site-brand__separator{color:#646464}.site-switcher__trigger{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 4px;border:0;background:none;color:var(--site-secondary);font-size:13px;cursor:pointer}.site-switcher__trigger:hover,.site-switcher__trigger[aria-expanded=true]{color:var(--site-accent-hover)}.site-switcher__trigger svg{transition:transform .16s ease}.site-switcher__trigger[aria-expanded=true] svg{transform:rotate(180deg)}.site-switcher__panel{position:absolute;top:calc(100% + 6px);left:-16px;width:292px;padding:8px;border:1px solid #404040;background:var(--site-surface);box-shadow:0 18px 45px #0008}.site-switcher__panel>p{padding:13px 12px 9px;font:10px JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--site-muted)}.site-switcher__panel a{display:block;padding:12px;color:var(--site-text)}.site-switcher__panel a:hover,.site-switcher__panel a:focus-visible{background:#202020}.site-switcher__panel a>span{display:flex;justify-content:space-between;font-size:15px}.site-switcher__panel a[aria-current]>span{color:var(--site-accent)}.site-switcher__panel small{display:block;margin-top:5px;color:var(--site-secondary);font-size:12px}.site-skip{position:fixed;top:-100px;left:16px;z-index:10003;padding:12px 18px;background:var(--site-accent);color:var(--site-background);font:15px Space Grotesk,sans-serif}.site-skip:focus{top:8px}.site-eyebrow{font:10px/1.7 JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.12em}.site-loading,.site-recovery{min-height:100vh;display:grid;align-content:center;justify-items:start;gap:20px;padding:max(90px,10vw) clamp(24px,10vw,160px);color:var(--site-text);font-family:Space Grotesk,sans-serif}.site-loading{color:var(--site-secondary);font-size:14px}.site-recovery h1{font-size:clamp(32px,5vw,64px);letter-spacing:-.045em;font-weight:500}.site-recovery p{max-width:540px;color:var(--site-secondary);line-height:1.7}.site-recovery a,.site-recovery button{color:var(--site-accent);background:none;border:0;font-size:16px;cursor:pointer;text-underline-offset:5px}.site-header--learn{padding-inline:clamp(14px,3vw,32px)}.site-header--learn .workspace-nav__sections a{min-height:44px;display:inline-flex;align-items:center}.site-header--learn .workspace-nav__sections a[aria-current]:after{bottom:-6px}@media(max-width:600px){.site-header{gap:10px}.site-brand{gap:8px}.site-switcher{gap:5px}.site-switcher__panel{position:fixed;top:var(--site-header-height);left:14px;width:min(292px,calc(100vw - 28px))}.site-header--learn .site-brand__separator{display:none}.site-header--learn .site-switcher__trigger{font-size:12px;gap:5px}.site-header--learn .workspace-nav__sections{gap:12px}.site-header--learn .workspace-nav__sections a{font-size:12px}}@media(max-width:370px){.site-header--learn{padding-inline:10px;gap:5px}.site-header--learn .site-logo{font-size:11px}.site-header--learn .site-brand{gap:3px}.site-header--learn .workspace-nav__sections{gap:10px}}@media(prefers-reduced-motion:reduce){.site-switcher__trigger svg,.site-header .site-logo,.site-logo__dot,.site-header__links a{transition:none}}@media(max-width:600px){.site-header__links{gap:18px}.site-header__links a{font-size:12px}}@media(max-width:370px){.site-header:not(.site-header--learn):not(.site-header--portfolio){padding-inline:14px}.site-header__links{gap:13px}}.site-home{min-height:100vh;background:var(--site-background);color:var(--site-text);font-family:Space Grotesk,sans-serif;line-height:1.55}.site-home a{color:inherit;text-decoration:none}.home-main{width:min(1080px,100%);margin:0 auto;padding:var(--site-header-height) 32px 0}.home-main:focus{outline:none}.home-hero{min-height:min(calc(86vh - var(--site-header-height)),680px);display:flex;flex-direction:column;justify-content:center;padding-block:40px 64px}.home-hello{color:var(--site-muted);font:15px JetBrains Mono,monospace}.home-hero h1{margin:10px 0 18px;font-size:clamp(52px,8.5vw,112px);font-weight:600;line-height:.95;letter-spacing:-.045em}.home-hero h1>span{color:var(--site-accent)}.home-role{color:var(--site-secondary);font:13px JetBrains Mono,monospace;letter-spacing:.04em}.home-role>span{padding-inline:4px;color:var(--site-muted)}.home-motto{margin:30px 0 22px;color:#d4d4d4;font-size:clamp(26px,3.2vw,40px);font-weight:500;line-height:1.15;letter-spacing:-.02em}.home-motto__phrase{color:var(--site-accent);white-space:nowrap}.home-glyph{position:relative;display:inline-block;white-space:pre}.home-glyph--noise{color:transparent}.home-glyph--noise:after{content:attr(data-noise);position:absolute;top:0;left:50%;transform:translate(-50%);color:#4a4a4a}.home-bio{max-width:560px;color:var(--site-secondary);font-size:18px}.home-bio p+p{margin-top:12px}.home-links{display:flex;flex-wrap:wrap;gap:0 26px;margin-top:18px;font:14px JetBrains Mono,monospace}.home-links a{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--site-text);text-decoration:underline;text-decoration-color:var(--site-border);text-underline-offset:6px}.home-links a:hover{color:var(--site-accent-hover);text-decoration-color:var(--site-accent)}.home-block{padding-block:72px;border-top:1px solid #1f1f1f;scroll-margin-top:var(--site-header-height)}.home-block__head{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;margin-bottom:36px}.home-block__label{padding-top:10px;color:var(--site-muted);font:500 11px JetBrains Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.home-block__head h2{font-size:30px;font-weight:600;line-height:1.15;letter-spacing:-.02em}.home-block__head p{max-width:520px;margin-top:8px;color:var(--site-secondary)}.home-block__body{margin-left:232px;min-width:0}.home-ask{position:relative;display:flex;align-items:center;gap:14px;padding:4px 0 14px;border-bottom:1px solid var(--site-border)}.home-ask:focus-within{border-color:var(--site-accent)}.home-ask>span{color:var(--site-accent);font:18px JetBrains Mono,monospace}.home-ask input{flex:1;min-width:0;border:0;background:none;color:var(--site-text);font:500 24px Space Grotesk,sans-serif;letter-spacing:-.01em}.home-ask input:focus,.home-ask input:focus-visible{outline:none}.home-ask input::placeholder{color:#555}.home-ask__results{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:5;overflow:hidden;list-style:none;border:1px solid var(--site-border);border-radius:10px;background:#121212}.home-ask__results li{display:flex;justify-content:space-between;gap:16px;padding:11px 16px;border-bottom:1px solid #1f1f1f;font-size:15px;cursor:pointer}.home-ask__results li:last-child{border-bottom:0}.home-ask__results li.is-active,.home-ask__results li[role=option]:hover{background:#1c1c1c}.home-ask__results small{color:var(--site-muted);font:11px JetBrains Mono,monospace;white-space:nowrap}.home-ask__status{color:var(--site-muted);cursor:default!important}.home-ask__status a{color:var(--site-accent)}.home-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.home-chip{min-height:32px;padding:4px 12px;border:1px solid var(--site-border);border-radius:999px;background:none;color:var(--site-secondary);font:12px JetBrains Mono,monospace;cursor:pointer}.home-chip:hover,.home-chip[aria-pressed=true]{border-color:var(--site-accent);color:var(--site-accent-hover)}.home-route{margin-top:48px}.home-route__meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:34px}.home-route__meta h3{color:var(--site-secondary);font-size:15px;font-weight:500}.home-route__meta strong{color:var(--site-text);font-weight:600}.home-route__meta p{color:var(--site-muted);font:12px JetBrains Mono,monospace}.home-route__note{margin:-18px 0 26px;color:var(--site-muted);font-size:13px}.home-route__line{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);list-style:none;outline:none}.home-route__line:before{content:"";position:absolute;top:31px;left:8px;right:8px;height:2px;background:var(--site-accent);opacity:.55}.home-stop{position:relative;min-width:0;padding-right:14px;animation:home-stop-in .45s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--stop-delay)}@keyframes home-stop-in{0%{opacity:0;transform:translateY(6px)}}.home-stop__track{display:block;height:18px;overflow:hidden;color:var(--site-accent);font:10.5px JetBrains Mono,monospace;white-space:nowrap;text-overflow:ellipsis}.home-stop>i{position:relative;z-index:1;display:block;width:16px;height:16px;margin:5px 0 14px;border:2px solid var(--site-accent);border-radius:50%;background:var(--site-background)}.home-stop--open>i{background:var(--site-accent)}.home-stop--goal>i{width:22px;height:22px;margin:2px 0 11px;border-color:var(--site-text);background:var(--site-text);box-shadow:0 0 0 5px #ffffff14}.home-stop__title{display:-webkit-box;overflow:hidden;color:var(--site-secondary);font-size:14px;line-height:1.35;-webkit-line-clamp:3;-webkit-box-orient:vertical}.home-stop--goal .home-stop__title{color:var(--site-text);font-weight:600}.home-stop--gap>i{border-style:dashed;border-color:#555}.home-stop--gap button{min-height:32px;padding:0;border:0;background:none;color:var(--site-accent);font:12px JetBrains Mono,monospace;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.home-route__foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:40px}.home-route__legend{display:flex;gap:18px;color:var(--site-muted);font:11px JetBrains Mono,monospace}.home-route__legend i{display:inline-block;width:9px;height:9px;margin-right:6px;border:1.5px solid var(--site-accent);border-radius:50%;vertical-align:-1px}.home-route__legend i.is-open{background:var(--site-accent)}.home-route__start{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;border-radius:8px;background:var(--site-accent);color:#111!important;font-size:15px;font-weight:600}.home-route__start:hover{background:var(--site-accent-hover)}.home-curriculum{margin-top:56px;border:1px solid var(--site-border);border-radius:12px}.home-curriculum__toggle{display:flex;width:100%;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;border:0;border-radius:12px;background:none;color:var(--site-text);text-align:left;cursor:pointer}.home-curriculum__toggle:hover{background:#0c0c0c}.home-curriculum__toggle strong{display:block;font-size:17px;font-weight:600}.home-curriculum__toggle small{color:var(--site-muted);font:12px JetBrains Mono,monospace}.home-curriculum__plus{position:relative;flex:none;width:30px;height:30px;border:1px solid var(--site-border);border-radius:50%}.home-curriculum__plus:before,.home-curriculum__plus:after{content:"";position:absolute;top:50%;left:50%;width:11px;height:1.5px;background:var(--site-accent);transform:translate(-50%,-50%);transition:transform .25s}.home-curriculum__plus:after{transform:translate(-50%,-50%) rotate(90deg)}.home-curriculum__toggle[aria-expanded=true] .home-curriculum__plus{border-color:var(--site-accent)}.home-curriculum__toggle[aria-expanded=true] .home-curriculum__plus:after{transform:translate(-50%,-50%) rotate(0)}.home-curriculum__panel{padding:8px 22px 22px;border-top:1px solid #1f1f1f}.home-curriculum__tools{position:sticky;top:var(--site-header-height);z-index:2;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:14px 0 6px;background:var(--site-background)}.home-curriculum__tools input{flex:1;min-width:180px;min-height:40px;padding:8px 12px;border:1px solid var(--site-border);border-radius:8px;background:var(--site-surface);color:var(--site-text);font:14px Space Grotesk,sans-serif}.home-curriculum__tools input:focus-visible{outline:none;border-color:var(--site-accent)}.home-curriculum__empty{padding:24px 0;color:var(--site-muted);font-size:14px}.home-curriculum__empty a{color:var(--site-accent)}.home-stage{margin-top:26px}.home-stage h4{display:flex;align-items:baseline;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--site-border);font-size:13px;font-weight:600}.home-stage h4 span{color:var(--site-accent);font:11px JetBrains Mono,monospace}.home-track{border-bottom:1px solid #1f1f1f}.home-track>button{display:grid;grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:16px;width:100%;min-height:44px;padding:10px 0;border:0;background:none;color:var(--site-text);text-align:left;cursor:pointer}.home-track>button:hover .home-track__name{color:var(--site-accent-hover)}.home-track__name{font-size:15px}.home-track__status{color:var(--site-muted);font:11px JetBrains Mono,monospace;white-space:nowrap}.home-track__status.is-full{color:var(--site-accent)}.home-track__chevron{width:8px;height:8px;border-right:1.5px solid var(--site-muted);border-bottom:1.5px solid var(--site-muted);transform:rotate(45deg) translateY(-3px);transition:transform .2s}.home-track>button[aria-expanded=true] .home-track__chevron{transform:rotate(225deg) translateY(-2px)}.home-track__lessons{columns:3 220px;column-gap:32px;padding:4px 0 20px}.home-track__section{break-inside:avoid;margin-bottom:16px}.home-track__section h5{margin-bottom:4px;color:var(--site-muted);font:500 10.5px JetBrains Mono,monospace;letter-spacing:.06em;text-transform:uppercase}.home-lesson{display:flex;align-items:baseline;gap:9px;width:100%;padding:4px 0;border:0;background:none;color:var(--site-muted);font:13.5px/1.35 Space Grotesk,sans-serif;text-align:left;cursor:pointer}.home-lesson>i{flex:none;width:7px;height:7px;border:1.3px solid #5a5a5a;border-radius:50%;transform:translateY(-1px)}.home-lesson.is-open{color:var(--site-secondary)}.home-lesson.is-open>i{border-color:var(--site-accent);background:var(--site-accent)}.home-lesson:hover{color:var(--site-accent-hover)}.home-lesson mark{border-radius:2px;background:#e2b55a38;color:inherit}.home-also{display:flex;flex-wrap:wrap;gap:4px 28px;margin-top:40px;padding-top:18px;border-top:1px dashed var(--site-border);color:var(--site-secondary);font:13px JetBrains Mono,monospace}.home-also a{display:inline-flex;align-items:center;gap:6px;min-height:44px}.home-also a:hover{color:var(--site-accent-hover)}.home-work{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:56px}.home-work__label{margin-bottom:6px;color:var(--site-muted);font:500 11px JetBrains Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.home-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:baseline;gap:16px;padding:18px 0;border-bottom:1px solid #1f1f1f}.home-row--external{grid-template-columns:minmax(0,1fr) auto}.home-row__year,.home-row__where{color:var(--site-muted);font:12px JetBrains Mono,monospace}.home-row__where{display:block;font-size:11px;letter-spacing:.04em}.home-row__name{display:block;font-size:18px;font-weight:600;letter-spacing:-.01em;transition:color .15s}.home-row__summary{display:block;margin-top:2px;color:var(--site-muted);font-size:14px}.home-row__arrow{color:var(--site-muted);font:14px JetBrains Mono,monospace}.home-row:hover .home-row__name{color:var(--site-accent-hover)}.home-row:hover .home-row__arrow{color:var(--site-accent)}.home-work__more{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:12px;color:var(--site-secondary);font:13px JetBrains Mono,monospace}.home-work__more:hover{color:var(--site-accent-hover)}.home-footer{width:min(1080px,100%);margin:0 auto;display:flex;justify-content:space-between;gap:16px;padding:28px 32px 40px;border-top:1px solid #1f1f1f;color:var(--site-muted);font:12px JetBrains Mono,monospace}.home-footer a:hover{color:var(--site-accent-hover)}@media(max-width:860px){.home-main{padding-inline:16px}.home-hero{min-height:0;padding-block:56px 64px}.home-footer{padding-inline:16px}.home-block__head{grid-template-columns:minmax(0,1fr);gap:6px}.home-block__label{padding-top:0}.home-block__body{margin-left:0}.home-ask input{font-size:19px}.home-route__line{grid-auto-flow:row;grid-auto-columns:auto}.home-route__line:before{top:10px;bottom:10px;left:7px;right:auto;width:2px;height:auto}.home-stop{display:grid;grid-template-columns:30px minmax(0,1fr);padding:0 0 18px}.home-stop__track{grid-column:2;height:auto}.home-stop__track:empty{display:none}.home-stop>i{grid-row:1 / span 2;grid-column:1;margin:2px 0 0}.home-stop--goal>i{margin:0 0 0 -3px}.home-stop__title,.home-stop--gap button{grid-column:2;justify-self:start}.home-curriculum__toggle,.home-curriculum__panel{padding-inline:16px}.home-work{grid-template-columns:minmax(0,1fr);gap:48px}}@media(prefers-reduced-motion:reduce){.home-stop{animation:none}.home-curriculum__plus:before,.home-curriculum__plus:after,.home-track__chevron,.home-row__name{transition:none}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:#050505;overflow-x:hidden}:root{color-scheme:dark}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #e2b55a;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
