@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist.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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono.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}html:has(.home){background:var(--bg);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:88px}body:has(.home){margin:0}.home{--hm-gutter:32px;--hm-gap:24px;--hm-bar-h:64px;--hm-scrim:color-mix(in srgb, var(--blue-night) 90%, transparent);background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--sans);font-synthesis:none;text-rendering:optimizelegibility;overflow-x:clip}.home *,.home :before,.home :after{box-sizing:border-box}.home :where(h1,h2,h3,p,figure,blockquote){margin:0}.home :where(h1,h2,h3){text-wrap:balance;font-weight:400}.home p{text-wrap:pretty}.home a{color:inherit;text-decoration:none}.home :where(button,input){font:inherit;color:inherit}.home img{display:block}.home :where(a[href],button,summary,label[for],[role=tab],input[type=range]):not(:disabled,[aria-disabled=true]){cursor:pointer}.home :focus-visible{outline:2px solid var(--link);outline-offset:2px}.home .sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.home .skip-link{z-index:100;background:var(--ink);color:var(--bg);font:500 12px/1 var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;padding:10px 14px;position:absolute;top:-100px;left:16px}.home .skip-link:focus{top:16px}.home .hm-wrap{width:100%;max-width:calc(1200px + 2 * var(--hm-gutter));padding-inline:var(--hm-gutter);margin-inline:auto}.home .hm-label,.home .label,.home .m-kicker,.home .dialog-kicker{color:var(--ink-3);font:500 11px/14px var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase}.home .num{font-family:var(--mono);font-variant-numeric:tabular-nums}.home .arrow{width:12px;height:12px;transition:translate var(--dur-hover) var(--ease-hover);flex:none;display:inline-block}.home .check{width:12px;height:12px;color:var(--ink-3);flex:none;margin-top:6px;display:block}.home .hm-square{vertical-align:1px;background:var(--blue);width:6px;height:6px;margin-right:8px;display:inline-block}.home .hm-mark{width:17px;height:17px;color:var(--blue);flex:none;display:block}.home .m-header-bar{z-index:50;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0}.home .m-header{height:var(--hm-bar-h);align-items:center;gap:32px;display:flex}.home .brand{color:var(--ink);font:500 22px/1 var(--sans);letter-spacing:-.04em;align-items:center;gap:8px;display:inline-flex}.home .m-header>nav:not(#mobile-navigation){align-items:center;gap:32px;margin-inline:auto;display:flex}.home .m-header>nav:not(#mobile-navigation)>a,.home .courses-menu-toggle{height:var(--hm-bar-h);color:var(--ink-2);font:500 12px/1 var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;transition:color var(--dur-hover) var(--ease-hover);background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex;position:relative}.home .m-header>nav:not(#mobile-navigation)>a:before,.home .courses-menu-toggle:before{content:"";background:var(--blue);opacity:0;width:6px;height:6px;transition:opacity var(--dur-hover) var(--ease-hover);margin-top:-3px;position:absolute;top:50%;left:-13px}.home .m-header>nav:not(#mobile-navigation)>a:hover,.home .m-header>nav:not(#mobile-navigation)>a[aria-current],.home .courses-menu-toggle:hover,.home .courses-menu-toggle[aria-expanded=true]{color:var(--ink)}.home .m-header>nav:not(#mobile-navigation)>a:hover:before,.home .m-header>nav:not(#mobile-navigation)>a[aria-current]:before,.home .courses-menu-toggle:hover:before,.home .courses-menu-toggle[aria-expanded=true]:before{opacity:1}.home .courses-menu-toggle svg{fill:none;stroke:currentColor;stroke-width:1.4px;width:10px;height:10px;transition:rotate var(--dur-hover) var(--ease-hover)}.home .courses-menu-toggle[aria-expanded=true] svg{rotate:180deg}.home .courses-menu{position:relative}.home .courses-menu-panel{border:1px solid var(--line);background:var(--bg);width:400px;box-shadow:var(--shadow-pop);padding:14px;position:absolute;top:calc(100% - 10px);left:50%;translate:-50%}.home .resources-menu .courses-menu-panel{width:240px;padding:8px}.home .courses-menu-panel>.m-kicker{padding:2px 10px 10px}.home .courses-menu-panel ul{margin:0;padding:0;list-style:none}.home .courses-menu-panel li a{transition:background var(--dur-hover) var(--ease-hover);align-items:center;gap:12px;padding:10px;display:flex}.home .courses-menu-panel li a:hover{background:var(--wash)}.home .courses-menu-icon{border:1px solid var(--line);background:var(--bg);width:34px;height:34px;color:var(--blue);flex:none;place-items:center;display:grid}.home .courses-menu-icon svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:16px;height:16px}.home .courses-menu-panel strong,.home .courses-menu-soon strong{color:var(--ink);font-size:14px;font-weight:500;line-height:1.35;display:block}.home .courses-menu-panel small{color:var(--ink-3);font-size:13px;line-height:1.4;display:block}.home .courses-menu-panel em{color:var(--link);font:500 11px/14px var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;margin-top:4px;font-style:normal;display:inline-block}.home .courses-menu-soon{border-top:1px dashed var(--line);background:var(--hatch);align-items:center;gap:12px;margin-top:6px;padding:10px;display:flex}.home .courses-menu-soon .courses-menu-icon{color:var(--ink-3)}.home .courses-menu-pill{border:1px solid var(--line-strong);color:var(--ink-3);font:500 10px/1 var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;margin-left:auto;padding:3px 6px}.home .header-cta{white-space:nowrap;border:1px solid var(--blue);background:var(--blue);height:36px;color:var(--on-blue);font:500 12px/1 var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;transition:background var(--dur-hover) var(--ease-hover);flex:none;align-items:center;padding:0 14px;display:inline-flex}.home .header-cta:hover{border-color:var(--blue-deep);background:var(--blue-deep)}.home .mobile-menu-toggle{display:none}.home .btn{height:44px;font:500 12px/1 var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;white-space:nowrap;transition:transform var(--dur-press) var(--ease-cta);border:0;align-items:center;display:inline-flex;position:relative}.home .btn:active{transform:scale(.985)}.home .btn-primary{border:1px solid var(--blue);background:var(--blue);min-width:208px;color:var(--on-blue);gap:12px;padding:2px 16px 2px 2px;overflow:hidden}.home .btn-primary:before{content:"";background:var(--bg);clip-path:inset(2px calc(100% - 40px) 2px 2px);transition:clip-path var(--dur-cta) var(--ease-cta);position:absolute;inset:0}.home .btn-tile{z-index:1;width:38px;height:38px;color:var(--blue);transition:rotate var(--dur-cta) var(--ease-cta);flex:none;place-items:center;display:grid;position:relative}.home .btn-tile svg{width:17px;height:17px}.home .btn-primary .btn-label{z-index:1;text-align:center;flex:1;transition:color .25s;position:relative}.home .btn-primary:hover:before,.home .btn-primary:focus-visible:before{clip-path:inset(2px)}.home .btn-primary:hover .btn-label,.home .btn-primary:focus-visible .btn-label{color:var(--blue)}.home .btn-primary:hover .btn-tile,.home .btn-primary:focus-visible .btn-tile{rotate:90deg}.home .btn-secondary{background:var(--blue-soft);color:var(--ink);transition:background-color var(--dur-hover) var(--ease-hover), transform var(--dur-press) var(--ease-cta);justify-content:center;gap:12px;padding:1px 16px}.home .btn-secondary:hover{background:var(--blue-soft-2)}.home .btn-secondary:hover .arrow,.home .btn-secondary:focus-visible .arrow{translate:2px -2px}.home .btn-secondary:after,.home .hm-plan-recommended:after{content:"";pointer-events:none;background:linear-gradient(var(--tick), var(--tick)) left top / 6.5px 1px, linear-gradient(var(--tick), var(--tick)) left top / 1px 6.5px, linear-gradient(var(--tick), var(--tick)) right top / 6.5px 1px, linear-gradient(var(--tick), var(--tick)) right top / 1px 6.5px, linear-gradient(var(--tick), var(--tick)) left bottom / 6.5px 1px, linear-gradient(var(--tick), var(--tick)) left bottom / 1px 6.5px, linear-gradient(var(--tick), var(--tick)) right bottom / 6.5px 1px, linear-gradient(var(--tick), var(--tick)) right bottom / 1px 6.5px;background-repeat:no-repeat;position:absolute;inset:0}.home .on-dark .btn-primary{border-color:var(--bg);background:var(--bg);color:var(--blue)}.home .on-dark .btn-primary:before{background:var(--blue)}.home .on-dark .btn-tile,.home .on-dark .btn-primary:hover .btn-label,.home .on-dark .btn-primary:focus-visible .btn-label{color:var(--bg)}.home .hm-more,.home .m-text-link{color:var(--ink);transition:color var(--dur-hover) var(--ease-hover);align-items:center;gap:8px;font-size:15px;font-weight:500;line-height:1.4;display:inline-flex}.home .hm-more:hover,.home .m-text-link:hover{color:var(--link)}.home .art{background:var(--blue);display:block;position:relative;overflow:hidden;container-type:inline-size}.home .art-grid{aspect-ratio:calc(var(--cols) * .6) / calc(var(--rows) * 1.1);color:color-mix(in srgb, var(--on-blue) 38%, transparent);font:500 calc(100cqw / var(--cols) / .6) / 1.1 var(--mono);font-variant-ligatures:none;font-feature-settings:"liga" 0, "calt" 0;letter-spacing:0;white-space:pre;-webkit-user-select:none;user-select:none;display:block;overflow:hidden}.home .art-grid b{color:var(--on-blue);font-weight:inherit}.home .art-phone{display:none}.home .hm-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.home .companies{margin-top:88px}.home .companies-window{border-block:1px solid var(--line);margin-top:14px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.home .companies-track{width:max-content;animation:120s linear infinite hm-drift;display:flex}.home .companies-window:hover .companies-track,.home .companies-window:focus-within .companies-track{animation-play-state:paused}.home .companies-track ul{margin:0;padding:0;list-style:none;display:flex}.home .company{color:var(--ink-3);white-space:nowrap;align-items:center;gap:8px;padding:16px 22px;font-size:14px;display:inline-flex}.home .company-logo{width:15px;height:15px;-webkit-mask:var(--logo) center / contain no-repeat;mask:var(--logo) center / contain no-repeat;background:currentColor}@keyframes hm-drift{to{transform:translate(-50%)}}.home .hm-section{margin-top:120px}.home .hm-head{column-gap:var(--hm-gap);border-top:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:18px;padding-top:28px;display:grid}.home .hm-head h2{letter-spacing:-.025em;grid-column:1/span 7;font-size:40px;line-height:1.1}.home .hm-head-aside{color:var(--ink-2);grid-column:8/span 5;align-self:end;font-size:16px;line-height:1.6}.home .hm-head-aside p+p{margin-top:12px}.home .hm-head-aside .hm-more{float:right}.home figcaption{color:var(--ink-3);margin-top:12px;font-size:14px;line-height:1.5}.home .hm-courses{grid-template-columns:repeat(5,minmax(0,1fr));gap:48px 24px;margin:64px 0 0;padding:0;list-style:none;display:grid}.home .hm-course{text-align:left;background:0 0;border:0;flex-direction:column;width:100%;height:100%;padding:0;display:flex}.home .hm-course:focus-visible{outline-offset:6px}.home .hm-course-text{flex-direction:column;flex:1;gap:8px;padding-top:20px;display:flex}.home .hm-course-summary{color:var(--ink-2);font-size:14.5px;line-height:1.5}.home .hm-course .hm-more{margin-top:auto;padding-top:4px;font-size:14px}.home .hm-course:hover .hm-more{color:var(--link)}.home .roadmap{border-top:1px solid var(--line);max-width:720px;margin:24px 0 0;padding:0;list-style:none}.home .roadmap li{border-bottom:1px dashed var(--line);align-items:baseline;gap:16px;padding:14px 0;font-size:16px;display:flex}.home .roadmap span{color:var(--link);font:500 11px/14px var(--mono);letter-spacing:var(--track-kicker)}.home .hm-voices-window{gap:16px;margin-top:40px;display:grid;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.home .hm-voices-track{width:max-content;animation:80s linear infinite hm-drift;display:flex}.home .hm-voices-track+.hm-voices-track{animation-duration:95s;animation-direction:reverse}.home .hm-voices-window:hover .hm-voices-track,.home .hm-voices-window:focus-within .hm-voices-track{animation-play-state:paused}.home .hm-voices-window:focus-visible{outline-offset:4px}.home .hm-voices{gap:16px;margin:0;padding:0 16px 0 0;list-style:none;display:flex}.home .hm-voices>li{flex:none;width:340px}.home .hm-voice{border:1px solid var(--line);background:var(--bg);height:100%;padding:20px}.home .hm-voice-person{align-items:center;gap:10px;display:flex}.home .hm-voice-avatar{object-fit:cover;background:var(--paper);width:32px;height:32px;font:500 11px/1 var(--mono);border-radius:50%;flex:none;place-items:center;display:grid}.home .hm-voice-person p{min-width:0}.home .hm-voice-person strong{font-size:14px;font-weight:500;line-height:1.3;display:block}.home .hm-voice-person small{color:var(--ink-3);font:500 11px/1.4 var(--mono);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.home .hm-voice-platform{background:var(--ink-3);width:14px;height:14px;-webkit-mask:var(--logo) center / contain no-repeat;mask:var(--logo) center / contain no-repeat;flex:none;margin-left:auto}.home .hm-voice h3{margin-top:16px;font-size:16px;font-weight:500;line-height:1.35}.home .hm-voice-quote{color:var(--ink-2);margin-top:6px;font-size:15px;line-height:1.55}.home .hm-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:40px 0 0;padding:0;list-style:none;display:grid}.home .hm-plan{border:1px solid var(--line);flex-direction:column;gap:16px;padding:24px 24px 20px;display:flex;position:relative}.home .hm-plan-recommended{border-color:var(--blue);background:var(--blue-soft)}.home .hm-plan .btn{width:100%;min-width:0;margin-top:auto}.home .hm-plan-head{border-bottom:1px solid var(--line);gap:12px;padding-bottom:18px;display:grid}.home .hm-plan-recommended .hm-plan-head{border-bottom-color:color-mix(in srgb, var(--blue) 30%, var(--line))}.home .hm-plan-name{font:500 12px/1 var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;color:var(--ink-2)}.home .hm-plan-recommended .hm-plan-name{color:var(--link)}.home .hm-plan-price{color:var(--ink-3);font-size:14px}.home .hm-plan-price strong{color:var(--ink);font:400 40px/1 var(--mono);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-right:4px}.home .plan-was{min-height:1.5em;color:var(--ink-2);margin-top:-4px;font-size:14px;line-height:1.5}.home .plan-was s{color:var(--ink-3)}.home .hm-plan-line{font-size:15px;line-height:1.5}.home .hm-features{margin-block:0;padding:0;list-style:none}.home .hm-features li{border-top:1px dashed var(--line-strong);color:var(--ink-2);gap:10px;padding:10px 0;font-size:14.5px;line-height:1.5;display:flex}.home .hm-features li:last-child{border-bottom:1px dashed var(--line-strong)}.home .hm-faq{column-gap:var(--hm-gap);border-top:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));padding-top:20px;display:grid}.home .hm-faq .hm-head{border-top:0;flex-direction:column;grid-column:1/span 5;align-self:start;padding-top:0;display:flex}.home .hm-faq-list{grid-column:7/span 6}.home .hm-faq-list details{border-bottom:1px solid var(--line)}.home .hm-faq-list summary{justify-content:space-between;gap:16px;padding:18px 0;font-size:17px;font-weight:500;line-height:1.45;list-style:none;display:flex}.home .hm-faq-list details:first-child summary{padding-top:0}.home .hm-faq-list summary::-webkit-details-marker{display:none}.home .hm-faq-list summary:after{content:"+";color:var(--ink-3);font:400 18px/1.25 var(--mono);flex:none}.home .hm-faq-list details[open] summary:after{content:"–";color:var(--link)}.home .hm-faq-list details p{max-width:40em;color:var(--ink-2);padding-bottom:20px;font-size:16px;line-height:1.6}.home #detail-dialog{border:1px solid var(--line);background:var(--bg);width:min(560px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--ink);box-shadow:var(--shadow-pop);padding:28px}.home #detail-dialog::backdrop{background:color-mix(in srgb, var(--ink) 45%, transparent)}.home .dialog-close{border:1px solid var(--line);background:var(--bg);width:32px;height:32px;color:var(--ink-2);font:400 18px/1 var(--mono);place-items:center;display:grid;position:absolute;top:12px;right:12px}.home #dialog-content h2{letter-spacing:-.025em;margin:10px 0;font-size:28px;line-height:1.15}.home #dialog-content>p:not(.dialog-kicker){color:var(--ink-2);font-size:15.5px;line-height:1.6}.home .dialog-outline{border-top:1px solid var(--line);margin:18px 0;padding:0;list-style:none}.home .dialog-outline li{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;font-size:15px;line-height:1.4;display:flex}.home .dialog-outline a{color:var(--link);align-items:center;gap:6px;display:inline-flex}.home .dialog-outline small{color:var(--ink-3);font:500 11px/14px var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;flex:none}.home #dialog-content .dialog-note{color:var(--ink-3);margin:12px 0;font-size:13.5px}.home #dialog-content .m-button{border:1px solid var(--blue);background:var(--blue);height:44px;color:var(--on-blue);font:500 12px/1 var(--mono);letter-spacing:var(--track-kicker);text-transform:uppercase;transition:background var(--dur-hover) var(--ease-hover);align-items:center;gap:12px;margin-top:8px;padding:0 18px;display:inline-flex}.home #dialog-content .m-button:hover{border-color:var(--blue-deep);background:var(--blue-deep)}.home #dialog-content .m-text-link{margin-top:8px}@media (max-width:1099px){.home{--hm-gutter:24px}.home .hm-courses{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.home .m-header{gap:12px}.home .m-header>nav:not(#mobile-navigation){display:none}.home .header-cta{margin-left:auto}.home .mobile-menu-toggle{border:1px solid var(--line);background:var(--bg);place-content:center;gap:5px;width:40px;height:40px;padding:0;display:grid}.home .mobile-menu-toggle span{background:var(--ink);width:16px;height:1.5px;transition:transform var(--dur-hover) var(--ease-hover);display:block}.home .mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.25px)rotate(45deg)}.home .mobile-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.25px)rotate(-45deg)}.home #mobile-navigation:not([hidden]){max-height:calc(100dvh - var(--hm-bar-h));padding:8px var(--hm-gutter) 28px;border-bottom:1px solid var(--line);background:var(--bg);box-shadow:var(--shadow-pop);flex-direction:column;display:flex;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.home #mobile-navigation>a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:52px;font-size:16px;font-weight:500;display:flex}.home .mobile-courses{margin-top:24px}.home .mobile-courses ul{border-top:1px solid var(--line);margin:8px 0 0;padding:0;list-style:none}.home .mobile-courses li>a,.home .mobile-courses-soon{border-bottom:1px dashed var(--line);padding:12px 0;display:block}.home .mobile-courses strong{align-items:center;gap:8px;font-size:15px;font-weight:500;display:flex}.home .mobile-courses small{color:var(--ink-3);font-size:13.5px;display:block}.home .mobile-courses-soon{color:var(--ink-3)}.home .mobile-courses-soon .courses-menu-pill{margin-left:0}.home .hm-head h2,.home .hm-head-aside{grid-column:1/-1}.home .hm-head-aside .hm-more{float:none}.home .hm-plans{grid-template-columns:minmax(0,1fr)}.home .hm-faq .hm-head,.home .hm-faq-list{grid-column:1/-1}.home .hm-faq-list{margin-top:32px}}@media (max-width:699px){.home{--hm-gutter:16px;--hm-gap:16px}.home .hm-actions .btn{flex:100%}.home .art-desk{display:none}.home .art-phone{display:block}.home .hm-section{margin-top:88px}.home .companies{margin-top:64px}.home .hm-head h2{font-size:30px}.home .hm-courses{grid-template-columns:minmax(0,1fr)}.home .hm-voices>li{width:280px}.home #detail-dialog{padding:24px 20px}}@media (prefers-reduced-motion:reduce){html:has(.home){scroll-behavior:auto}.home *,.home :before,.home :after{transition-duration:.01ms!important}.home .btn:active{transform:none}.home .companies-track{animation:none}.home .companies-window{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.home .companies-track ul[aria-hidden=true]{display:none}.home .hm-voices-track{animation:none}.home .hm-voices-window{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.home .hm-voices[aria-hidden=true]{display:none}}
