:root{color-scheme:light;--background:#fafafa;--text:#141414;--muted:#656565;--border:#d9d9d9;--accent:#345c9c;--surface:#f0f0f0;--nav-bg:rgb(250 250 250 / .94);--heading:"Inter Tight",Arial,sans-serif;--mono:"JetBrains Mono",monospace}:root[data-theme=dark]{color-scheme:dark;--background:#0a0a0a;--text:#f5f5f5;--muted:#999;--border:#2c2c2c;--accent:#a8c7fa;--surface:#131313;--nav-bg:rgb(10 10 10 / .94)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--background);color:var(--text);font-family:var(--heading);text-transform:lowercase;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--background)}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button,a{touch-action:manipulation}.container{width:min(1440px,calc(100% - 112px));margin-inline:auto}.mono,.eyebrow,.tags{font-family:var(--mono);font-size:11px;font-weight:400}.accent,.eyebrow>span{color:var(--accent)}.muted{color:var(--muted)}.site-header{position:sticky;top:0;z-index:10;background:var(--nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}.nav{height:88px;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:28px;font-weight:800;letter-spacing:-1.4px}.wordmark span{color:var(--accent)}.nav-right,.nav-links{display:flex;align-items:center;gap:36px}.nav-links a{font-size:13px;color:var(--muted);position:relative;padding:12px 0}.nav-links a:hover,.nav-links a[aria-current]{color:var(--text)}.nav-links a[aria-current]:after{content:"";position:absolute;bottom:3px;left:50%;width:3px;height:3px;border-radius:50%;background:var(--accent)}.theme-toggle{display:grid;place-items:center;width:38px;height:38px;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:50%;cursor:pointer;transition:background .2s,color .2s}.theme-toggle:hover{background:var(--text);color:var(--background)}.skip-link{position:fixed;top:12px;left:12px;padding:12px 18px;z-index:20;background:var(--text);color:var(--background);transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.eyebrow{display:flex;gap:3px;color:var(--muted);font-size:13px}section{border-bottom:1px solid var(--border)}.hero{padding-top:44px}.hero-main{padding:68px 0 76px;animation:enter .7s ease-out both}.availability{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:10px;letter-spacing:1px;margin-bottom:25px}.availability>span{width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 10%,transparent)}h1,h2,h3,p{margin:0}h1{font-size:clamp(76px,10.5vw,160px);font-weight:800;letter-spacing:-.065em;line-height:.97}.hero-greeting{display:block;font-size:clamp(36px,8.5vw,128px)}.hero-title{display:block;margin-top:12px;font-size:clamp(48px,6.5vw,100px);letter-spacing:-.055em}.hero-pitch{max-width:47ch;font-size:20px;line-height:1.55;color:var(--muted);margin-top:30px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;white-space:nowrap;font-size:14px;font-weight:600;padding:16px 22px;border:1px solid var(--border);border-radius:3px;transition:background .2s,color .2s,border-color .2s}.button-primary{background:var(--text);color:var(--background);border-color:var(--text)}.button-primary:hover{background:var(--accent);border-color:var(--accent)}.button-secondary:hover{border-color:var(--text);background:var(--surface)}.hero-bottom{border-top:1px solid var(--border);padding:24px 0;display:flex;justify-content:space-between;gap:20px;color:var(--muted)}.hero-bottom .mono{font-size:10px}.scroll-link{color:var(--text)}.scroll-link span{margin-left:12px;color:var(--accent)}.scroll-link:hover{color:var(--accent)}.projects{padding:80px 0 96px}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin:36px 0 44px}.section-intro h2{font-size:clamp(48px,5.3vw,80px);line-height:1;font-weight:800;letter-spacing:-.05em}.section-intro>p{font-size:16px;line-height:1.7;padding-bottom:4px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project-card{border:1px solid var(--border);min-width:0}.project-preview{height:260px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--border)}.orbit{background:#e0e5ec}.forma{background:#18232f}.jadegate{background:#dce8e5}.handson{background:#e5e8df}.handson .screenshot-window{width:min(80%,300px);transform:rotate(-3deg)}.screenshot-window{width:85%;border:1px solid #ccd9d5;border-radius:6px;overflow:hidden;background:#fff;box-shadow:0 15px 30px #173c3626;transform:rotate(3deg)}.screenshot-toolbar{height:22px;padding:0 9px;display:flex;gap:4px;align-items:center;background:#f3f6f5;border-bottom:1px solid #e2e9e6}.screenshot-toolbar>span:not(.screenshot-address){width:4px;height:4px;border-radius:50%;background:#b5c4bf}.screenshot-address{margin-left:9px;font:7px var(--mono);color:#51645e}.screenshot-window img{display:block;width:100%;height:auto}.ledger{background:#e5e9df}.mini-window{width:85%;height:185px;background:#fcfcfd;color:#222b39;box-shadow:0 12px 30px #28324220;border-radius:6px;transform:rotate(-5deg);overflow:hidden}.mini-top{display:flex;align-items:center;gap:3px;height:24px;padding:0 10px;border-bottom:1px solid #e8eaee}.mini-top i{width:4px;height:4px;background:#c4cad1;border-radius:50%}.mini-top span{font:7px var(--mono);margin-left:14px;color:#88909c}.mini-content{display:flex;height:100%}.mini-sidebar{width:36px;border-right:1px solid #e8eaee;display:flex;align-items:center;flex-direction:column;gap:14px;padding:9px}.mini-sidebar b{font-size:18px}.mini-sidebar span{width:12px;height:3px;background:#d9dde4}.mini-board{padding:18px 12px;flex:1}.mini-board strong{font-size:13px;letter-spacing:-.4px}.board-columns{display:flex;gap:7px;margin-top:18px}.board-columns>div{flex:1}.board-columns small{font:5px var(--mono);color:#667080}.board-columns i{display:block;height:29px;border:1px solid #e5e7eb;border-radius:3px;background:linear-gradient(#d4ddeb,#d4ddeb) 6px 8px/60% 3px no-repeat;margin-top:6px}.mini-terminal{width:85%;border:1px solid #3b4655;border-radius:6px;background:#101923;color:#e4eaf1;box-shadow:0 15px 25px #0003;transform:rotate(3deg);font:10px/1.6 var(--mono)}.terminal-heading{border-bottom:1px solid #2a3542;padding:9px 12px;display:flex;gap:7px;align-items:center;font-size:9px}.terminal-heading>span:last-child{margin-left:auto;color:#99a7b9}.terminal-dot{background:#a8c7fa;width:5px;height:5px;border-radius:50%}.terminal-code{padding:14px 18px}.code-muted{color:#8592a1}.code-blue{color:#a8c7fa}.code-green{color:#a8d5b7}.terminal-status{border-top:1px solid #2a3542;padding:6px 14px;color:#a8d5b7;font-size:7px}.terminal-status span{color:#99a7b9;margin-left:12px}.mini-finance{width:74%;padding:18px 21px 13px;border-radius:6px;background:#fcfcf9;color:#26342a;box-shadow:0 12px 30px #24362215;transform:rotate(-4deg)}.finance-top{font-size:15px;font-weight:800;letter-spacing:-.8px;display:flex;justify-content:space-between;margin-bottom:15px}.mini-finance>small{font-size:8px;color:#6e766c}.finance-total{font-size:30px;font-weight:600;letter-spacing:-1px;margin-top:3px}.finance-total>span{color:#8c9589}.chart{height:68px;display:flex;align-items:flex-end;gap:5px;margin-top:8px;overflow:hidden}.chart i{flex:1;max-height:100%;background:#84977a;border-radius:2px 2px 0 0;transform:scaleY(.55);transform-origin:bottom}.chart i:nth-child(3n){background:#bdcbb7}.chart-label{display:flex;justify-content:space-between;font:6px var(--mono);color:#626d5d;padding-top:7px;border-top:1px solid #dfe5da}.project-body{padding:25px 24px 0}.project-category{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:8px;letter-spacing:.5px}.project-sample{color:var(--accent)}.project-body h3{font-size:32px;letter-spacing:-1.2px;font-weight:700;margin:16px 0 12px}.project-body p{color:var(--muted);font-size:15px;line-height:1.65;min-height:75px}.tags{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:23px 0 26px}.tags li{font-size:9px;padding:6px 8px;border:1px solid var(--border);border-radius:2px;color:var(--muted)}.project-links{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--border);padding:17px 0}.project-link{display:flex;gap:10px;align-items:center;font-size:12px}.project-link .arrow-circle{width:28px;height:28px}.project-link svg{width:13px;height:13px}.unavailable{color:var(--muted)}.unavailable .mono{font-size:7px;letter-spacing:.5px}.contact{padding-top:75px;border-bottom:0}.contact-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:7%;align-items:center;padding:64px 0 100px}.contact h2{font-size:clamp(60px,7.5vw,120px);font-weight:850;line-height:.95;letter-spacing:-.045em}.contact-copy{font-size:20px;line-height:1.5;color:var(--muted);max-width:36ch;margin-top:32px}.contact-list{border-top:1px solid var(--border);min-width:0}.contact-row{border-bottom:1px solid var(--border);display:flex;gap:18px;align-items:center;justify-content:space-between;padding:30px 0}.contact-info{display:flex;flex-direction:column;gap:12px;min-width:0}.contact-label{color:var(--muted);letter-spacing:1.8px;font-size:9px}.contact-value{font-size:clamp(27px,2.9vw,42px);font-weight:600;line-height:1.2;letter-spacing:-.045em;overflow-wrap:anywhere}.email-row .contact-value{font-size:clamp(19px,2.05vw,31px)}.arrow-circle{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--border);border-radius:50%;flex-shrink:0;transition:background .2s,color .2s,border-color .2s}a:hover .arrow-circle,a:focus-visible .arrow-circle{background:var(--text);color:var(--background);border-color:var(--text)}.footer{padding:26px 0 30px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px}.footer a:hover{color:var(--text)}.footer a span{margin-left:12px;color:var(--accent)}@keyframes enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.hero-main{padding-block:90px}}@media(max-width:1100px){.container{width:calc(100% - 64px)}.project-grid{gap:16px}.project-body{padding:20px 16px 0}.project-category{font-size:7px}.project-preview{height:220px}.stack-line{display:none}.contact-grid{gap:5%}.contact h2{font-size:clamp(60px,7.4vw,90px)}.contact-row{gap:12px}.email-row .contact-value{font-size:clamp(17px,2vw,24px)}}@media(max-width:760px){.container{width:calc(100% - 40px)}.nav{height:72px}.nav-right{gap:20px}.nav-links{gap:18px}.nav-links a{font-size:12px}.wordmark{font-size:25px}.theme-toggle{width:34px;height:34px}.hero{padding-top:30px}.hero-main{padding:58px 0 60px}h1{font-size:clamp(76px,17vw,124px)}.hero-title{display:block;font-size:clamp(46px,10vw,74px);margin-top:12px;max-width:11ch}.hero-pitch{font-size:18px;max-width:35ch}.hero-bottom{padding-block:22px}.hero-bottom .mono{font-size:8px}.projects{padding:56px 0 64px}.section-intro{flex-direction:column;align-items:flex-start;gap:22px;margin:30px 0 32px}.section-intro h2{font-size:58px}.section-intro>p{font-size:15px}.project-grid{grid-template-columns:1fr;gap:28px}.project-preview{height:290px}.mini-window,.mini-terminal{width:75%;max-width:360px}.mini-finance{width:65%;max-width:290px}.project-body{padding:24px 24px 0}.project-category{font-size:9px}.project-body p{min-height:0;max-width:46ch}.project-links{padding:20px 0}.contact{padding-top:56px}.contact-grid{grid-template-columns:1fr;gap:44px;padding:36px 0 60px}.contact h2{font-size:clamp(57px,12vw,90px)}.contact-copy{font-size:18px;margin-top:26px;max-width:34ch}.contact-row{padding:26px 0}.contact-value{font-size:36px}.email-row .contact-value{font-size:clamp(19px,5.2vw,30px)}.footer{font-size:8px}}@media(max-width:380px){.nav-right,.nav-links{gap:12px}.button{gap:14px;padding:15px;font-size:13px}.contact h2{font-size:54px}.project-category{font-size:7px}.footer{flex-direction:column;gap:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
