@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Manrope:wght@400;500;600;700;800&display=swap";.app-shell{flex-direction:column;max-width:100%;min-height:100dvh;display:flex;overflow-x:clip}.app-shell>main{flex:1;width:100%;min-width:0}.route-announcer{clip:rect(1px, 1px, 1px, 1px);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.system-panel{background-image:repeating-linear-gradient(#ffffff05 0 1px,#0000 1px 4px);min-width:0;max-width:100%}.responsive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.responsive-grid>*{min-width:0}.mobile-scroll-row{gap:.5rem;max-width:100%;display:flex}@media (width<=700px){.responsive-grid{grid-template-columns:1fr;gap:1rem}.mobile-scroll-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-inline:-1rem;padding-inline:1rem;overflow-x:auto}.mobile-scroll-row::-webkit-scrollbar{display:none}}@media (prefers-reduced-motion:reduce){.app-shell *{scroll-behavior:auto}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#f6f6f2;--surface:#fff;--surface-muted:#eceeea;--ink:#11141a;--text-primary:#11141a;--text-muted:#5e6470;--text-subtle:#858b95;--line:#11141a1f;--line-strong:#11141a38;--accent:#3269ff;--accent-hover:#164de6;--accent-soft:#e6ecff;--lime:#c6ff45;--dark:#11141a;--dark-muted:#aeb5c2;--focus:#3269ff;--selection:#c6ff45;--shadow-soft:0 18px 48px #11141a14;--shadow-float:0 28px 70px #11141a29;--font-heading:"Manrope", "DM Sans", system-ui, sans-serif;--font-body:"DM Sans", system-ui, sans-serif;--font-mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--container:min(100% - 2rem, 78rem);--radius-sm:.75rem;--radius-md:1.25rem;--radius-lg:2rem;--radius-xl:2.75rem;--ease:.22s cubic-bezier(.22, 1, .36, 1)}:root[data-theme=dark],body.dark,body.dark-mode{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#11141a;--surface:#191d25;--surface-muted:#242a34;--ink:#f5f6f2;--text-primary:#f5f6f2;--text-muted:#bbc1cb;--text-subtle:#8c949f;--line:#f5f6f221;--line-strong:#f5f6f242;--accent:#8caaff;--accent-hover:#b2c4ff;--accent-soft:#25345f;--lime:#c6ff45;--dark:#0d1015;--dark-muted:#aeb5c2;--focus:#b2c4ff;--selection:#455e12;--shadow-soft:0 18px 48px #0000003d;--shadow-float:0 28px 70px #00000061}*,:before,:after{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--canvas);color:var(--text-primary);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}body,button,input,select,textarea{font:inherit}img,picture,svg,video,canvas{max-width:100%;display:block}img,video{height:auto}a{color:inherit}button{color:inherit;cursor:pointer;touch-action:manipulation}button,input,select,textarea{border-radius:0}p,li,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}::selection{background:var(--selection);color:var(--ink)}.container{width:var(--container);min-width:0;margin-inline:auto}main,section,article,header,footer,nav{min-width:0}.skip-link{background:var(--ink);color:var(--canvas);z-index:1000;border-radius:.6rem;padding:.75rem 1rem;text-decoration:none;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus);outline-offset:3px}.section-eyebrow{color:var(--accent);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .9rem;font-size:.69rem;font-weight:500}.tag{background:color-mix(in srgb, var(--surface) 80%, transparent);border:1px solid var(--line);color:var(--text-muted);font-family:var(--font-mono);white-space:normal;border-radius:999px;align-items:center;max-width:100%;padding:.5rem .65rem;font-size:.68rem;line-height:1;display:inline-flex}.text-link{color:var(--text-primary);transition:color var(--ease), gap var(--ease);align-items:center;gap:.45rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--accent);gap:.7rem}.btn-primary,.btn-secondary{text-align:center;touch-action:manipulation;max-width:100%;min-height:3rem;transition:background var(--ease), border-color var(--ease), color var(--ease), transform var(--ease), box-shadow var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:.6rem;padding:.75rem 1.1rem;font-size:.86rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);border:1px solid var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-2px);box-shadow:0 12px 28px #3269ff42}.btn-secondary{border:1px solid var(--line-strong);color:var(--text-primary);background:0 0}.btn-secondary:hover{background:var(--surface-muted);border-color:var(--text-primary)}.project-status{border:1px solid var(--line);color:var(--text-subtle);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;max-width:100%;padding:.38rem .55rem;font-size:.65rem;display:inline-flex}.project-status--live{color:#4b6818;background:#edffd5;border-color:#b2e35d}.project-status--building{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 34%, transparent);color:var(--accent)}.filter-button{border:1px solid var(--line);color:var(--text-muted);touch-action:manipulation;min-height:2.5rem;transition:background var(--ease), border-color var(--ease), color var(--ease);background:0 0;border-radius:999px;padding:.5rem .8rem;font-size:.78rem}.filter-button:hover{border-color:var(--text-primary);color:var(--text-primary)}.filter-button--active{background:var(--text-primary);border-color:var(--text-primary);color:var(--canvas)}.article-content{color:var(--text-muted);min-width:0;font-size:clamp(1rem,1.6vw,1.16rem);line-height:1.8}.article-content>:first-child{margin-top:0}.article-content h2,.article-content h3{color:var(--text-primary);font-family:var(--font-heading);letter-spacing:-.055em;margin:2.75em 0 .7em;line-height:1.08}.article-content h2{font-size:clamp(1.7rem,3vw,2.5rem)}.article-content h3{font-size:clamp(1.2rem,2vw,1.35rem)}.article-content p,.article-content li{max-width:42rem}.article-content ul,.article-content ol{padding-left:1.3rem}.article-content a{color:var(--accent);overflow-wrap:anywhere;text-underline-offset:.2em}.article-content code{background:var(--surface-muted);color:var(--text-primary);font-family:var(--font-mono);white-space:normal;overflow-wrap:anywhere;border-radius:.3rem;padding:.15em .3em;font-size:.88em}@media (width>=701px){:root{--container:min(100% - 3rem, 78rem)}}@media (width<=700px){.btn-primary,.btn-secondary{min-height:3.25rem}.article-content{font-size:1rem;line-height:1.7}.article-content h2,.article-content h3{letter-spacing:-.035em}.filter-button{flex-shrink:0}}@media (width<=380px){:root{--container:min(100% - 1.5rem, 78rem)}.btn-primary,.btn-secondary{padding-inline:.9rem;font-size:.82rem}.tag{font-size:.64rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}html,body,#root{max-width:100%;overflow-x:clip}.container,.container>*{min-width:0}img,video,canvas,svg{max-width:100%}button,a{-webkit-tap-highlight-color:transparent}@media (width<=1100px){h1,h2,h3{overflow-wrap:normal}[style*="display: grid"],[style*=display\:grid]{min-width:0}}@media (width<=700px){:root{--radius-lg:1.35rem;--radius-xl:1.65rem}.container{width:min(100% - 2rem,78rem)}section .container>div[style*=gridTemplateColumns],section .container>header[style*=gridTemplateColumns],main .container>header[style*=gridTemplateColumns],article.container>section[style*=gridTemplateColumns],article.container>header div[style*=gridTemplateColumns]{grid-template-columns:minmax(0,1fr)!important}section[aria-labelledby=hero-title]{min-height:calc(100svh - 4.7rem)!important}#hero-title{letter-spacing:-.07em!important;max-width:10ch!important;font-size:clamp(2.9rem,14vw,4.6rem)!important;line-height:.92!important}#hero-title br{display:none}#hero-title+div{flex-direction:column!important;align-items:flex-start!important;gap:1.4rem!important}#hero-title+div>p{font-size:1rem!important;line-height:1.6!important}#hero-title+div>div{width:100%}#hero-title+div .btn-primary,#hero-title+div .btn-secondary{flex:auto}#about{padding-block:5rem!important}#about-heading{letter-spacing:-.07em!important;font-size:clamp(3rem,14vw,4.7rem)!important;line-height:.91!important}#about>.container>div:first-child{grid-template-columns:1fr!important;gap:3rem!important}#about>.container>div:first-child>div:last-child>div:first-child{grid-template-columns:minmax(7rem,.55fr) minmax(0,1fr)!important;align-items:start!important;gap:1.25rem!important}#about>.container>div:last-child{grid-template-columns:1fr!important}#about>.container>div:last-child article{min-height:9.5rem!important}#focus-heading{font-size:clamp(3rem,14vw,4.7rem)!important}section[aria-labelledby=focus-heading] header{grid-template-columns:1fr!important;gap:1rem!important}section[aria-labelledby=focus-heading] article>button{grid-template-columns:2rem minmax(0,1fr) auto!important;gap:.7rem!important;padding:1.2rem!important}section[aria-labelledby=focus-heading] article>button h3{font-size:clamp(1.35rem,7vw,1.8rem)!important}section[aria-labelledby=focus-heading] article>div>div>div{grid-template-columns:2rem minmax(0,1fr)!important;gap:.7rem!important;padding-inline:1.2rem!important}#work-heading{font-size:clamp(3rem,14vw,4.8rem)!important}#work>.container>header{flex-direction:column!important;align-items:flex-start!important}#work>.container>article{min-height:34rem!important;padding:1.4rem!important}#work>.container>article>div:last-child{min-height:31rem!important}#work>.container>article h3{font-size:clamp(4rem,20vw,6.5rem)!important;line-height:.8!important}#work>.container>div:last-child{grid-template-columns:1fr!important}#work>.container>div:last-child article{min-height:13rem!important}#journey-heading{font-size:clamp(3rem,14vw,4.8rem)!important}#journey>.container>header{flex-direction:column!important}#journey>.container>header>p{align-self:flex-start!important}#journey>.container>div:last-child{grid-template-columns:1fr!important;gap:1.5rem!important}#journey ol{scrollbar-width:none;-webkit-overflow-scrolling:touch;border-top:0!important;gap:.45rem!important;margin-inline:-1rem!important;padding:0 1rem .5rem!important;display:flex!important;overflow-x:auto!important}#journey ol::-webkit-scrollbar{display:none}#journey ol li{flex:none}#journey ol button{border:1px solid #f5f6f22e!important;border-radius:999px!important;gap:.8rem!important;width:auto!important;min-height:2.75rem!important;padding:.6rem .9rem!important}#journey article{min-height:23rem!important;padding:1.5rem!important}#journey article h3{font-size:clamp(2.3rem,12vw,3.8rem)!important}#lessons-heading{font-size:clamp(3rem,14vw,4.7rem)!important}section[aria-labelledby=lessons-heading] header{flex-direction:column!important;align-items:flex-start!important}section[aria-labelledby=lessons-heading] .container>div{grid-template-columns:1fr!important}section[aria-labelledby=lessons-heading] figure{min-height:15rem!important}#building-heading{font-size:clamp(3rem,14vw,4.7rem)!important}section[aria-labelledby=building-heading] .container>div:first-child{grid-template-columns:1fr!important;gap:2.5rem!important}section[aria-labelledby=building-heading] ol li{grid-template-columns:1.8rem minmax(0,1fr) auto!important;gap:.6rem!important;padding:.8rem .9rem!important}#contact{border-radius:1.5rem!important;padding:1.5rem!important}#contact>div:last-child{grid-template-columns:1fr!important;gap:2.5rem!important}#contact-heading{font-size:clamp(2.7rem,13vw,4.3rem)!important;line-height:.92!important}#contact>div:last-child>div:last-child{align-self:stretch!important}footer>.container>div:first-child{grid-template-columns:1fr!important;gap:3rem!important}footer h2{font-size:clamp(2.8rem,13vw,4.5rem)!important}footer form{max-width:100%}main .container>header[style*=gridTemplateColumns]{grid-template-columns:1fr!important}main .container>header h1{font-size:clamp(3.3rem,16vw,5.5rem)!important;line-height:.84!important}div[aria-label=Post\ filters]{scrollbar-width:none;flex-wrap:nowrap!important;margin-inline:-1rem!important;padding:0 1rem .5rem!important;overflow-x:auto!important}div[aria-label=Post\ filters]::-webkit-scrollbar{display:none}div[aria-label=Post\ filters] .filter-button{flex:none}section[aria-label]>a[style*=gridTemplateColumns]{grid-template-columns:minmax(0,1fr) auto!important;gap:.8rem!important}article.container{max-width:100%}article.container>header h1{letter-spacing:-.075em!important;font-size:clamp(3rem,15vw,5rem)!important;line-height:.88!important}article.container>header>div:last-child{grid-template-columns:1fr!important;gap:3rem!important}article.container>header h1{font-size:clamp(3.8rem,19vw,6.5rem)!important;line-height:.82!important}article.container>section{grid-template-columns:1fr!important}article.container section div[style*=repeat\(auto-fit]{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))!important}main .container>section>a[style*="3.5rem"]{grid-template-columns:2rem minmax(0,1fr)!important;min-height:auto!important;padding:1.25rem!important}main .container>section>a[style*="3.5rem"]>div:last-child{grid-column:1/-1;min-height:13rem!important}main .container>section>a[style*="3.5rem"] h2{font-size:clamp(2.4rem,13vw,4rem)!important;line-height:.9!important}[role=dialog]{max-width:calc(100vw - 2rem)!important}[aria-modal=true] img{max-height:76svh!important}@media (hover:none){[data-stream-item]{opacity:.22!important}}}@media (width<=480px){:root{--container:min(100% - 1.5rem, 78rem)}header>.container{gap:.5rem!important}header>.container>a{font-size:1.1rem!important}.command-label{display:none!important}section[aria-labelledby=hero-title] .container{padding-block:1.5rem!important}#hero-title{font-size:clamp(2.7rem,14.5vw,3.8rem)!important}#hero-title+div>div{width:100%;grid-template-columns:1fr!important;display:grid!important}#hero-title+div .btn-primary,#hero-title+div .btn-secondary{width:100%}section[aria-labelledby=hero-title] .container>div:last-child{flex-direction:column!important;align-items:flex-start!important}#about>.container>div:first-child>div:last-child>div:first-child{grid-template-columns:1fr!important}#about img{max-height:26rem}section[aria-labelledby=focus-heading] article>button{grid-template-columns:1.6rem minmax(0,1fr) 2.2rem!important;padding:1rem!important}section[aria-labelledby=focus-heading] article>div>div>div{grid-template-columns:1fr!important;padding-inline:1rem!important}section[aria-labelledby=focus-heading] article>div>div>div>span:first-child{display:none}#work>.container>article{border-radius:1.5rem!important}#work>.container>article h3{font-size:clamp(3.5rem,20vw,5rem)!important}#work>.container>article .btn-primary,#work>.container>article .btn-secondary{width:100%}section[aria-labelledby=building-heading] ol li{border-radius:1rem!important;grid-template-columns:1.5rem minmax(0,1fr)!important}section[aria-labelledby=building-heading] ol li>span:last-child{grid-column:2;justify-self:start}#contact>div:last-child>div:last-child>div,main .container>section>a[style*="3.5rem"]{grid-template-columns:1fr!important}main .container>section>a[style*="3.5rem"]>span:first-child{margin-bottom:-.4rem}main .container>section>a[style*="3.5rem"]>div:last-child{grid-column:auto}section[aria-label]>a[style*=gridTemplateColumns]{grid-template-columns:1fr!important}section[aria-label]>a[style*=gridTemplateColumns]>span:last-child{justify-self:end}footer>.container>div:last-child{flex-direction:column!important;align-items:flex-start!important}[role=dialog]{border-radius:1.25rem!important}}@media (hover:none) and (pointer:coarse){.btn-primary:hover,.btn-secondary:hover{box-shadow:none;transform:none}button,a{touch-action:manipulation}}@media (height<=500px) and (orientation:landscape){section[aria-labelledby=hero-title],section[aria-labelledby=hero-title] .container{min-height:auto!important}#hero-title{font-size:clamp(2.8rem,9vw,4.5rem)!important}}@media (prefers-reduced-motion:reduce){[data-stream-item]{transform:none!important}canvas{animation:none!important}}#root{min-height:100vh}
