@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Instrument+Sans:wght@400;500;600&display=swap";:root{--site-bg:#0a0d14;--site-panel:#131824;--site-ink:#e9edf3;--site-muted:#9aa4b4;--site-rule:#29303b;--site-accent:#c6f36b;--site-mono:"DM Mono",monospace;--site-display:"Instrument Sans",Arial,sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.portfolio{background:var(--site-bg);color:var(--site-ink);font-family:var(--site-display);min-height:100vh;overflow:hidden}.portfolio *{box-sizing:border-box}.portfolio a{color:inherit;text-decoration:none}.portfolio a:focus-visible{outline:2px solid var(--site-accent);outline-offset:5px}.topbar{border-bottom:1px solid var(--site-rule);max-width:1280px;height:76px;font-family:var(--site-mono);letter-spacing:.04em;justify-content:space-between;align-items:center;margin:auto;padding:0 28px;font-size:11px;display:flex}.wordmark{letter-spacing:.08em;align-items:center;gap:10px;font-size:11px;display:flex}.wordmark-dot,.live-dot{background:var(--site-accent);border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 14px #c6f36b66}.topbar nav{color:var(--site-muted);gap:34px;display:flex}.topbar nav a,.top-contact,.footer-bottom a{transition:color .2s}.topbar nav a:hover,.top-contact:hover,.footer-bottom a:hover{color:var(--site-accent)}.top-contact span{color:var(--site-accent);margin-left:6px;font-size:14px}.hero{grid-template-columns:1.05fr .95fr;align-content:center;gap:32px;max-width:1280px;min-height:calc(100svh - 76px);margin:auto;padding:92px 28px 54px;display:grid;position:relative}.hero-copy{z-index:2;padding-bottom:28px}.eyebrow{font:11px/1.5 var(--site-mono);letter-spacing:.055em;color:var(--site-muted);margin:0 0 24px}.live-dot{width:7px;height:7px;margin-right:9px}.eyebrow-location{color:#687181;margin-left:15px}.hero-name{letter-spacing:-.09em;will-change:transform;margin:0 0 34px;font-size:clamp(82px,11vw,156px);font-weight:500;line-height:.78}.hero-name span{color:var(--site-accent)}.hero-role{letter-spacing:-.04em;margin:0 0 14px;font-size:clamp(20px,2.15vw,29px);line-height:1.25}.hero-description{color:var(--site-muted);max-width:430px;margin:0;font-size:15px;line-height:1.7}.hero-actions{align-items:center;gap:28px;margin-top:30px;display:flex}.button{align-items:center;gap:20px;height:46px;padding:0 18px;font-size:13px;font-weight:500;transition:background .2s,color .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-lime{background:var(--site-accent);color:#11150b!important}.button-lime:hover{background:#dcff9a}.button span{font-size:17px}.text-link{font:11px var(--site-mono);color:#bac2cd!important}.text-link span{color:var(--site-accent);margin-left:8px}.hero-visual{grid-template-rows:1fr 118px;grid-template-columns:1fr .44fr;align-items:end;gap:12px;min-height:440px;display:grid;position:relative}.portrait-clip{background:#19202d;grid-area:1/1/3/3;height:460px;position:relative;overflow:hidden}.portrait{object-fit:cover;object-position:center 44%;filter:saturate(.82);width:100%;height:100%;display:block}.portrait-clip:after{content:"";pointer-events:none;background:linear-gradient(#0000 40%,#0a0d14b0),linear-gradient(90deg,#0a0d1422,#0000);position:absolute;inset:0}.avatar-tile{z-index:2;aspect-ratio:1;border:3px solid #0a0d14;width:clamp(74px,10vw,132px);display:block;position:absolute;top:18px;right:18px;overflow:hidden;box-shadow:0 10px 34px #0008}.avatar-tile img{object-fit:cover;width:100%;height:100%;display:block}.portrait-note{z-index:2;font:9px var(--site-mono);color:#e9edf3b3;letter-spacing:.06em;justify-content:space-between;display:flex;position:absolute;top:18px;left:18px;right:18px}.gif-clip{z-index:3;background:#11151e;border:1px solid #ffffff2b;width:48%;height:138px;padding:5px;position:absolute;bottom:22px;right:-4px;overflow:hidden}.hero-gif{object-fit:cover;width:100%;height:100%;display:block}.visual-coordinate{font:9px var(--site-mono);color:#687181;position:absolute;top:-24px;right:0}.hero-bottom{font:9px var(--site-mono);letter-spacing:.06em;color:#687181;justify-content:space-between;display:flex;position:absolute;bottom:20px;left:28px;right:28px}.hero-bottom a{color:#aab3c0}.hero-bottom a span{color:var(--site-accent);margin-left:7px}.work-section,.about-section,.sites-section,.footer{max-width:1280px;margin:auto;padding-left:28px;padding-right:28px}.now-section{border-top:1px solid var(--site-rule);max-width:1280px;margin:auto;padding:78px 28px 92px}.now-intro{justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px;display:flex}.now-intro .eyebrow{position:absolute;transform:translateY(-53px)}.now-intro h2{letter-spacing:-.06em;margin:0;font-size:clamp(38px,5vw,62px);font-weight:500;line-height:1}.now-intro>p:last-child{max-width:300px;color:var(--site-muted);margin:0 0 4px;font-size:13px;line-height:1.7}.now-projects{border:1px solid var(--site-rule);grid-template-columns:repeat(3,1fr);display:grid}.now-project{min-height:190px;padding:21px 20px;transition:background .25s,color .25s;position:relative;overflow:hidden}.now-project+.now-project{border-left:1px solid var(--site-rule)}:is(.now-project:hover,.now-project:focus-visible){background:#131824}.now-meta{font:9px var(--site-mono);letter-spacing:.04em;color:var(--site-muted)}.now-project h3{z-index:1;letter-spacing:-.045em;margin:37px 0 7px;font-size:clamp(21px,2.3vw,30px);font-weight:500;position:relative}.now-project h3 span{color:var(--site-accent);margin-left:8px;font-size:14px}.now-project p{z-index:1;color:var(--site-muted);margin:0;font-size:11px;position:relative}.now-project i{color:#ffffff06;letter-spacing:-.1em;font-size:150px;font-style:normal;line-height:1;transition:transform .35s,color .35s;position:absolute;bottom:-38px;right:8px}.now-project:hover i{color:#c6f36b12;transform:translate(-5px,-8px)}.work-section{padding-top:112px;padding-bottom:116px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:46px;display:flex}.section-heading .eyebrow,.about-intro .eyebrow{margin-bottom:17px}.section-heading h2,.about-intro h2,.footer h2{letter-spacing:-.065em;margin:0;font-size:clamp(42px,6vw,76px);font-weight:500;line-height:.97}.lime{color:var(--site-accent)}.section-link{font:11px var(--site-mono);padding-bottom:7px;color:#b8c0cc!important}.section-link span{color:var(--site-accent);margin-left:9px}.mobile-break{display:none}.project-row{border-bottom:1px solid var(--site-rule);grid-template-columns:44px 180px 1fr 24px;align-items:center;gap:24px;min-height:158px;padding:22px 0;display:grid;position:relative}.row-rule{background:var(--site-accent);transform-origin:0;height:1px;position:absolute;top:0;left:0;right:0}.project-number,.project-type,.art-caption,.site-index{font:10px var(--site-mono);color:#8791a1}.project-number{align-self:start;padding-top:5px}.project-art{isolation:isolate;background:#171d29;place-items:center;height:112px;display:grid;position:relative;overflow:hidden}.art-grid,.visual-lines{background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#000,#0000 80%);mask-image:linear-gradient(135deg,#000,#0000 80%)}.art-glyph{letter-spacing:-.08em;color:#f3f5f8;z-index:1;font-size:51px;font-weight:500}.art-caption{letter-spacing:.07em;font-size:8px;position:absolute;bottom:8px;left:9px}.art-orbit{border:1px solid #c6f36b70;border-radius:50%;width:75px;height:75px;position:absolute;top:15px;right:21px}.orbit-two{border-color:#ffffff20;width:115px;height:115px;top:-5px;right:1px}.art-violet{background:#201a36}.art-violet .art-glyph{color:#d8c6ff}.art-blue{background:#142435}.art-blue .art-glyph{color:#93d2ff}.art-lime{background:#1e2818}.art-lime .art-glyph{color:var(--site-accent)}.art-orange{background:#302017}.art-orange .art-glyph{color:#ffb786}.art-pink{background:#2b1c2a}.art-pink .art-glyph{color:#ffb8d5}.project-copy{padding-left:6px}.project-type{margin:0 0 8px}.project-copy h3{letter-spacing:-.045em;margin:0 0 6px;font-size:24px;font-weight:500}.project-detail{color:var(--site-muted);margin:0;font-size:12px}.project-detail span{color:var(--site-accent);margin-left:6px}.project-arrow{color:var(--site-accent);opacity:0;margin-left:10px;font-size:14px;transition:opacity .2s,transform .2s;display:inline-block}.row-arrow{color:#737d8d;transition:color .2s,transform .2s}:is(.project-row:hover .project-arrow,.project-row:focus-visible .project-arrow){opacity:1;transform:translate(2px,-2px)}:is(.project-row:hover .row-arrow,.project-row:focus-visible .row-arrow){color:var(--site-accent);transform:translate(3px,-3px)}.project-row:hover .project-number{color:var(--site-accent)}.about-section{border-top:1px solid var(--site-rule);grid-template-columns:1fr 1fr;gap:80px;padding-top:100px;padding-bottom:116px;display:grid}.about-intro h2{font-size:clamp(44px,5.5vw,68px)}.about-detail{padding-top:40px}.about-lead{letter-spacing:-.025em;max-width:510px;margin:0 0 18px;font-size:21px;line-height:1.45}.about-copy{color:var(--site-muted);max-width:480px;margin:0;font-size:14px;line-height:1.75}.tech-block{margin-top:38px}.tech-block .eyebrow{margin-bottom:14px}.tech-list{flex-wrap:wrap;gap:8px;display:flex}.tech-list span{border:1px solid var(--site-rule);color:#c3cad4;font:10px var(--site-mono);padding:8px 11px}.about-visual{background:linear-gradient(135deg,#121824,#1b2824 58%,#101620);height:190px;margin-top:35px;position:relative;overflow:hidden}.visual-lines{background-size:28px 28px}.visual-sun{border:1px solid #c6f36b75;border-radius:50%;width:125px;height:125px;position:absolute;top:24px;right:17%;box-shadow:0 0 60px #c6f36b15,inset 0 0 45px #c6f36b0c}.visual-sun:after{content:"";background:#c6f36b17;border-radius:50%;width:60px;height:60px;position:absolute;top:31px;left:31px;box-shadow:0 0 40px #c6f36b2c}.visual-label{font:9px var(--site-mono);color:#aab4c0;letter-spacing:.06em;position:absolute;bottom:12px;left:14px}.focus-section{border-top:1px solid var(--site-rule);grid-template-columns:.8fr 1.2fr;gap:90px;max-width:1280px;margin:auto;padding:100px 28px 112px;display:grid}.focus-heading h2{letter-spacing:-.065em;margin:0 0 20px;font-size:clamp(42px,5.5vw,68px);font-weight:500;line-height:.98}.focus-heading>p:last-child{color:var(--site-muted);font-size:13px;line-height:1.7}.focus-list{border-top:1px solid var(--site-rule)}.focus-item{border-bottom:1px solid var(--site-rule);grid-template-columns:38px 1fr 20px;align-items:start;gap:18px;min-height:104px;padding:20px 0;display:grid}.focus-item>span{font:10px var(--site-mono);color:var(--site-accent);padding-top:4px}.focus-item h3{letter-spacing:-.035em;margin:0 0 7px;font-size:19px;font-weight:500}.focus-item p{max-width:560px;color:var(--site-muted);margin:0;font-size:13px;line-height:1.65}.focus-item>b{color:var(--site-accent);font-weight:400}.build-section{border-top:1px solid var(--site-rule);max-width:1280px;margin:auto;padding:100px 28px 112px}.build-head{justify-content:space-between;align-items:end;gap:36px;margin-bottom:46px;display:flex}.build-head h2{letter-spacing:-.065em;margin:0;font-size:clamp(44px,6vw,76px);font-weight:500;line-height:.97}.build-head>p{max-width:310px;color:var(--site-muted);margin:0 0 6px;font-size:13px;line-height:1.7}.build-layout{grid-template-columns:1fr 1fr;align-items:center;gap:50px;display:grid}.build-steps{border-top:1px solid var(--site-rule)}.build-step{min-height:98px}.build-step>b{color:var(--site-accent);font-weight:400}.terminal-card{background:linear-gradient(145deg,#111722,#0d1119);border:1px solid #29303b;box-shadow:0 22px 65px #0004}.terminal-bar{color:#788291;height:42px;font:9px var(--site-mono);letter-spacing:.06em;border-bottom:1px solid #29303b;justify-content:space-between;align-items:center;padding:0 15px;display:flex}.terminal-bar>span:first-child{gap:5px;display:flex}.terminal-bar i{background:#657080;border-radius:50%;width:7px;height:7px}.terminal-bar i:first-child{background:#f07c77}.terminal-bar i:nth-child(2){background:#eac66b}.terminal-bar i:last-child{background:#94c975}.terminal-card pre{color:#dce2eb;font:13px/1.9 var(--site-mono);white-space:pre-wrap;margin:0;padding:26px 30px}.code-purple{color:#c4a0ff}.code-blue{color:#8ed5ff}.code-green{color:var(--site-accent)}.terminal-foot{color:#7c8797;font:8px var(--site-mono);letter-spacing:.06em;border-top:1px solid #29303b;justify-content:space-between;padding:13px 16px;display:flex}.terminal-cursor{background:var(--site-accent);width:7px;height:12px;animation:1.1s steps(2,start) infinite terminal-blink}@keyframes terminal-blink{to{visibility:hidden}}.sites-section{border-top:1px solid var(--site-rule);padding-top:106px;padding-bottom:116px}.sites-note{color:var(--site-muted);margin:0 0 6px;font-size:12px;line-height:1.7}.sites-grid{border-top:1px solid var(--site-rule);grid-template-columns:1fr 1fr;display:grid}.sites-grid a{border-bottom:1px solid var(--site-rule);grid-template-columns:44px 1fr 20px;align-items:center;height:62px;font-size:15px;transition:color .2s,padding .2s;display:grid}.sites-grid a:nth-child(odd){margin-right:28px}.sites-grid a:nth-child(2n){margin-left:28px}:is(.sites-grid a:hover,.sites-grid a:focus-visible){color:var(--site-accent);padding-left:5px}.site-index{font-size:9px}.site-arrow{color:var(--site-accent);justify-self:end}.footer{border-top:1px solid var(--site-rule);padding-top:80px;padding-bottom:24px}.footer-main{justify-content:space-between;align-items:end;padding-bottom:84px;display:flex}.footer h2{font-size:clamp(54px,8vw,102px)}.footer .eyebrow{margin-bottom:20px}.footer-button{margin-bottom:8px}.footer-bottom{border-top:1px solid var(--site-rule);font:9px var(--site-mono);color:#788291;letter-spacing:.03em;grid-template-columns:1fr 1.4fr 1fr auto;align-items:center;gap:15px;padding-top:22px;display:grid}.footer-bottom>div{gap:17px;display:flex}.footer-bottom .wordmark{color:var(--site-ink)}.archive-repos{border-top:1px solid var(--site-rule);margin-top:52px;padding-top:22px}.archive-repos>.eyebrow{margin-bottom:10px}.archive-repos>div{border:1px solid var(--site-rule);grid-template-columns:repeat(3,1fr);display:grid}.archive-repo{justify-content:space-between;align-items:center;gap:12px;min-height:86px;padding:17px 18px;transition:background .2s,color .2s;display:flex}.archive-repo+.archive-repo{border-left:1px solid var(--site-rule)}:is(.archive-repo:hover,.archive-repo:focus-visible){background:var(--site-panel);color:var(--site-accent)!important}.archive-repo b{font:13px var(--site-mono);overflow-wrap:anywhere;font-weight:400;display:block}.archive-repo small{color:var(--site-muted);margin-top:7px;font-size:10px;display:block}.archive-repo i{color:var(--site-accent);font-style:normal}@media (max-width:800px){.hero{grid-template-columns:1fr 1fr;gap:20px;padding-top:82px}.hero-name{font-size:clamp(76px,12vw,110px)}.hero-visual{min-height:370px}.portrait-clip{height:380px}.gif-clip{height:110px}.project-row{grid-template-columns:32px 145px 1fr 20px;gap:16px}.project-art{height:100px}.about-section{gap:36px}.focus-section{grid-template-columns:.8fr 1.2fr;gap:34px}.build-section{padding-left:28px;padding-right:28px}.build-layout{gap:28px}.footer-bottom{grid-template-columns:1fr 1fr}.footer-bottom>span:last-child{text-align:right}}@media (max-width:600px){.topbar{height:62px;padding:0 20px}.topbar nav{gap:16px;font-size:10px}.top-contact,.wordmark{font-size:10px}.hero{grid-template-columns:1fr;gap:25px;min-height:auto;padding:70px 20px 84px}.hero-copy{padding:0}.hero-name{margin-bottom:26px;font-size:clamp(86px,20vw,122px)}.hero-role{font-size:22px}.hero-description{font-size:14px}.hero-visual{grid-template-rows:1fr 78px;min-height:300px}.portrait-clip{height:300px}.gif-clip{width:50%;height:100px;bottom:13px}.visual-coordinate{top:-17px}.hero-bottom{font-size:8px;bottom:22px;left:20px;right:20px}.hero-bottom>span:last-child{display:none}.work-section,.about-section,.sites-section,.footer{padding-left:20px;padding-right:20px}.work-section{padding-top:76px;padding-bottom:80px}.section-heading{align-items:start;gap:18px;margin-bottom:31px}.section-heading h2,.about-intro h2{font-size:44px}.section-link{white-space:nowrap;margin-top:34px;font-size:9px}.mobile-break{display:block}.archive-repos{margin-top:38px}.archive-repos>div{grid-template-columns:1fr}.archive-repo{min-height:72px;padding:14px}.archive-repo+.archive-repo{border-left:0;border-top:1px solid var(--site-rule)}.project-row{grid-template-columns:28px 92px 1fr 15px;gap:10px;min-height:126px;padding:17px 0}.project-art{height:76px}.art-glyph{font-size:38px}.art-orbit{width:50px;height:50px;top:12px;right:8px}.orbit-two{width:76px;height:76px;top:1px;right:-5px}.art-caption{font-size:6px}.project-number{font-size:9px}.project-type{margin-bottom:5px;font-size:8px}.project-copy{padding-left:0}.project-copy h3{word-break:break-word;font-size:17px}.project-detail{font-size:10px;line-height:1.4}.project-arrow{opacity:1;margin-left:5px;font-size:11px}.about-section{grid-template-columns:1fr;gap:10px;padding-top:75px;padding-bottom:80px}.about-detail{padding-top:0}.focus-section{grid-template-columns:1fr;gap:28px;padding:76px 20px 82px}.focus-heading h2{font-size:44px}.now-section{grid-template-columns:1fr;gap:28px;padding:76px 20px 82px}.now-intro h2{font-size:44px}.now-projects{grid-template-columns:1fr;gap:0}.now-project{min-height:150px;padding:22px 0}.now-project h3{font-size:26px}.now-project>i{font-size:96px;top:14px;right:18px}.focus-item{grid-template-columns:28px 1fr 16px;gap:10px;min-height:94px}.focus-item h3{font-size:17px}.focus-item p{font-size:12px}.build-section{padding:76px 20px 82px}.build-head{margin-bottom:30px;display:block}.build-head h2{font-size:44px}.build-head>p{margin-top:16px}.build-layout{grid-template-columns:1fr;gap:28px}.terminal-card pre{padding:20px;font-size:11px}.about-lead{font-size:19px}.about-copy{font-size:13px}.about-visual{height:160px}.sites-section{padding-top:76px;padding-bottom:80px}.sites-section .section-heading{display:block}.sites-note{margin-top:18px}.sites-grid{grid-template-columns:1fr}.sites-grid a:nth-child(odd),.sites-grid a:nth-child(2n){margin:0}.sites-grid a{height:57px}.footer{padding-top:62px;padding-bottom:20px}.footer-main{padding-bottom:55px;display:block}.footer h2{font-size:62px}.footer-button{margin-top:28px}.footer-bottom{grid-template-columns:1fr 1fr;gap:17px;font-size:8px}.footer-bottom>span:nth-child(2){text-align:right}.footer-bottom>div{justify-content:start}.footer-bottom>span:last-child{text-align:right}.eyebrow{font-size:10px}}@media (max-width:380px){.topbar{padding:0 14px}.topbar nav{gap:8px;font-size:9px}.top-contact{display:none}.hero,.work-section,.about-section,.sites-section,.footer,.focus-section,.build-section{padding-left:16px;padding-right:16px}.hero-bottom{left:16px;right:16px}.project-row{grid-template-columns:22px 78px 1fr 12px;gap:8px}.project-copy h3{font-size:15px}.project-detail{font-size:9px}}@media (prefers-reduced-motion:reduce){.portfolio *,.portfolio :before,.portfolio :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.terminal-cursor{visibility:hidden}.hero-name,.hero-role,.portrait-clip,.gif-clip,.project-row .row-rule,.project-art{opacity:1;clip-path:none;filter:none;transform:none}}
