@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#101211;--surface:#191c1a;--line:#333934;--text:#f0f1eb;--sub:#a6afa6;--accent:#c0ef65;--font:'DM Sans',Arial,sans-serif;--display:'Space Grotesk',Arial,sans-serif;color-scheme:dark;font-family:var(--font);color:var(--text);background:var(--bg);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:96px}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{border:0}p{line-height:1.7}::selection{background:var(--accent);color:var(--bg)}.skip{position:absolute;left:20px;top:-80px;background:var(--accent);color:var(--bg);padding:15px;z-index:50}.skip:focus{top:12px}.header{height:88px;max-width:1440px;margin:auto;padding:0 64px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font:600 25px var(--display);letter-spacing:-1.1px}.wordmark span{font:12px var(--font);vertical-align:top;margin:2px 0 0 4px;display:inline-block;color:var(--sub)}.header nav{display:flex;align-items:center;gap:38px;font-size:14px}.header nav a{padding:10px 0}.header nav a:hover{color:var(--accent)}.header nav a span{font-size:12px;color:var(--sub);margin-left:7px}.header .nav-contact{border-bottom:1px solid var(--accent)}main{max-width:1440px;margin:auto}.hero{padding:55px 64px 0}.hero-top{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.4px}.location{font-size:14px;color:var(--sub)}.coordinate{font-family:monospace;color:#727d72;margin-left:16px}h1{font:500 clamp(60px,7.5vw,112px)/1.06 var(--display);letter-spacing:-.06em;margin:62px 0 35px}.muted-title{color:var(--accent)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:50px;margin-bottom:60px}.hero-bottom p{max-width:540px;font-size:19px;color:var(--sub);margin:0}.primary{background:var(--accent);color:#17200a;padding:18px 23px;font-weight:600;font-size:15px;display:flex;align-items:center;gap:40px;white-space:nowrap}.primary:hover{background:#d0fc84}.primary span{font-size:23px}.discipline-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:23px 0;color:var(--sub);font-size:14px}.discipline-strip span+span:before{content:'/';color:#50594e;margin-right:34px}.work-section{padding:96px 64px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:38px}h2{font:500 clamp(34px,4vw,55px)/1.12 var(--display);letter-spacing:-.045em;margin:20px 0 0}.section-heading p{color:var(--sub);font-size:15px;margin:0}.work-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:28px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{padding:10px 15px;background:transparent;color:var(--sub);border:1px solid transparent;font-size:14px;border-radius:3px}.filters button:hover{border-color:var(--line);color:var(--text)}.filters button.active{background:var(--text);color:var(--bg)}.project-count{font-size:13px;color:var(--sub);white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-card{background:var(--surface);border:1px solid var(--line);padding:0;text-align:left;overflow:hidden;transition:border-color .2s,transform .2s;display:flex;flex-direction:column}.project-card:hover{border-color:#7c9863;transform:translateY(-3px)}.project-card[hidden]{display:none}.card-top{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;color:var(--sub);font-size:12px;letter-spacing:.7px;gap:12px}.card-arrow{font-size:23px;color:var(--accent);transition:transform .2s}.project-card:hover .card-arrow{transform:translate(2px,-2px)}.type-visual,.graph-visual,.code-visual,.balance-visual{height:180px;margin:0 26px;border-bottom:1px solid var(--line);color:var(--accent)}.type-visual{font:500 112px/.95 var(--display);letter-spacing:-8px;display:flex;align-items:center;padding-bottom:22px;color:#5a6b50}.card-chain .type-visual{color:#b8cd9c}.card-ai .type-visual{color:#c3c9dd}.graph-visual{position:relative;padding-bottom:22px}.graph-visual svg{width:80%;height:142px;display:block;margin:auto}.graph-visual>span{position:absolute;right:0;bottom:10px;font:10px monospace;color:var(--sub);letter-spacing:1.5px}.code-visual{display:flex;flex-direction:column;justify-content:center;padding-bottom:20px;gap:4px}.code-label{font:11px monospace;letter-spacing:1.5px;color:var(--sub);margin-bottom:9px}.code-visual>span:not(.code-label){font:500 29px/1.1 var(--display);letter-spacing:-1px;display:flex;justify-content:space-between;max-width:265px}.code-arrow{color:#596d45}.balance-visual{display:flex;flex-direction:column;justify-content:center;gap:15px;padding-bottom:22px}.balance-visual>span{font:11px monospace;letter-spacing:1.4px;color:var(--sub)}.balance-visual strong{font:500 48px var(--display);letter-spacing:-2px}.balance-visual small{font-size:22px;color:#7c8a72}.balance-line{height:2px;width:100%;background:var(--accent)}.card-content{padding:25px 26px 0;flex:1;display:flex;flex-direction:column}.project-status{font-size:12px;letter-spacing:.2px;color:var(--sub)}.card-content h3{font:500 28px/1.15 var(--display);letter-spacing:-1px;margin:10px 0}.card-content p{font-size:16px;color:var(--sub);margin:0 0 25px;line-height:1.55}.card-bottom{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:17px 0;font-size:13px;margin-top:auto}.card-bottom>span:first-child{color:var(--sub)}.card-bottom>span:last-child>span{margin-left:9px;color:var(--accent)}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin:105px 64px 0;padding:75px 0;border-top:1px solid var(--line)}.about-section h2{font-size:clamp(35px,3.5vw,50px)}.signature{font:500 22px var(--display);margin-top:48px}.signature span{display:block;color:var(--sub);font:14px var(--font);margin-top:7px}.about-copy p{font-size:16px;color:var(--sub);margin:0 0 20px}.about-copy .lead{font-size:22px;line-height:1.5;color:var(--text);letter-spacing:-.5px}.skills{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.skills span{border:1px solid var(--line);padding:8px 11px;font-size:13px;color:var(--sub);border-radius:3px}.contact-section{background:var(--accent);color:#18200f;padding:40px 44px 44px;margin:20px 64px 0}.contact-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.contact-top>span:last-child{font-size:13px}.contact-section h2{font-size:clamp(44px,6vw,85px);letter-spacing:-.055em;margin:54px 0 38px}.contact-section h2 em{font-style:normal;color:#516c28}.contact-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;border-top:1px solid #18200f35;padding-top:24px}.contact-bottom p{font-size:16px;margin:0}.email-actions{display:flex;flex-wrap:wrap;column-gap:15px;row-gap:10px;justify-content:flex-start;max-width:360px}.email-actions a{font-size:16px;overflow-wrap:anywhere;width:100%;font-weight:500}.email-actions a span{margin-left:5px}.email-actions button{font-size:13px;padding:0 0 4px;background:transparent;border-bottom:1px solid #18200f70}.email-actions #copy-status{font-size:13px;line-height:1.5;min-height:21px}footer{max-width:1440px;margin:auto;display:flex;justify-content:space-between;gap:25px;padding:35px 64px 45px;font-size:12px;color:var(--sub)}footer a{color:var(--text)}dialog{background:#191d19;border:1px solid #46543c;color:var(--text);width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:0;box-shadow:0 30px 130px #0009;overscroll-behavior:contain}dialog::backdrop{background:#070a07cf;backdrop-filter:blur(8px)}.dialog-open{overflow:hidden}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px 30px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#191d19;z-index:1}.dialog-top>.eyebrow{font-size:11px;color:var(--sub)}#close-dialog{background:transparent;padding:3px 0;font-size:14px}#close-dialog span{font-size:23px;margin-left:8px;vertical-align:middle}#dialog-content{padding:30px}#dialog-title{font-size:42px;margin:14px 0 18px}#dialog-content p{font-size:16px;color:var(--sub)}#dialog-content .dialog-lead{color:var(--text);font-size:21px;line-height:1.4}#dialog-content h3{font-size:14px;font-weight:500;margin-top:30px;color:var(--accent)}#dialog-content ul{padding-left:20px;color:var(--sub);font-size:16px;line-height:1.65}#dialog-content li{padding-bottom:7px}#dialog-content .project-note{font-size:13px;border-left:2px solid #6b824f;padding-left:15px;margin-top:28px}.dialog-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:22px 30px;font-size:14px}.dialog-bottom>span{color:var(--sub)}.dialog-bottom a{color:var(--accent)}
@media(min-width:1400px){.hero{padding-top:65px}.hero h1{margin-top:72px}.hero-bottom{margin-bottom:70px}.type-visual,.graph-visual,.code-visual,.balance-visual{height:200px}}@media(max-width:1000px){.header{padding:0 32px}.hero,.work-section{padding-left:32px;padding-right:32px}.hero h1{font-size:clamp(54px,7.8vw,85px)}.discipline-strip{font-size:12px}.discipline-strip span+span:before{margin-right:12px}.hero-bottom{gap:30px}.hero-bottom p{font-size:17px}.primary{gap:22px}.about-section{margin-left:32px;margin-right:32px;gap:38px}.contact-section{margin-left:32px;margin-right:32px;padding:35px}.contact-bottom{gap:25px}footer{padding-left:32px;padding-right:32px}}@media(max-width:700px){.header{height:76px;padding:0 22px}.wordmark{font-size:22px}.header nav{gap:22px}.header nav a span:not(.nav-contact span){display:none}.hero{padding:35px 22px 0}.location{font-size:12px}.coordinate{display:none}.hero h1{font-size:clamp(42px,8.5vw,62px);letter-spacing:-.055em;margin:43px 0 26px;line-height:1.08}.eyebrow{font-size:11px;letter-spacing:1px}.hero-bottom{display:block;margin-bottom:37px}.hero-bottom p{max-width:450px;font-size:16px}.primary{display:inline-flex;margin-top:25px;padding:14px 18px;gap:30px}.discipline-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:21px 0;font-size:13px}.discipline-strip span+span:before{display:none}.work-section{padding:57px 22px 0}.section-heading{align-items:flex-start;flex-direction:column;margin-bottom:26px;gap:17px}.section-heading h2{margin-top:13px;font-size:37px}.section-heading p br{display:none}.section-heading p{font-size:14px}.work-toolbar{align-items:flex-start;flex-direction:column;gap:15px}.filters{gap:4px}.filters button{padding:9px 10px;font-size:13px}.project-count{font-size:12px}.project-grid{grid-template-columns:1fr;gap:18px}.card-top{padding:19px 22px;font-size:11px}.card-content{padding:23px 22px 0}.card-content h3{font-size:28px}.type-visual,.graph-visual,.code-visual,.balance-visual{margin:0 22px;height:150px}.type-visual{font-size:95px}.graph-visual svg{height:125px}.code-visual>span:not(.code-label){font-size:25px}.code-label{margin-bottom:6px}.balance-visual{gap:12px}.balance-visual strong{font-size:40px}.about-section{grid-template-columns:1fr;gap:28px;margin:60px 22px 0;padding:48px 0}.about-section h2{font-size:37px;margin-top:14px}.signature{display:none}.about-copy .lead{font-size:21px}.contact-section{margin:0 22px;padding:27px 23px}.contact-top{flex-direction:column;align-items:flex-start;gap:12px}.contact-top>span:last-child{font-size:12px}.contact-section h2{font-size:clamp(36px,7.8vw,51px);margin:38px 0 30px}.contact-bottom{flex-direction:column;gap:20px}.email-actions a{font-size:14px}.email-actions{max-width:100%}footer{flex-wrap:wrap;padding:25px 22px;gap:18px;font-size:11px}footer>span:nth-child(2){display:none}footer a{margin-left:auto}#dialog-title{font-size:34px}.dialog-top{padding:17px 22px}#dialog-content{padding:25px 22px}.dialog-bottom{padding:20px 22px;font-size:13px}.dialog-top>.eyebrow{font-size:10px}.dialog-top #close-dialog{font-size:12px}}@media(max-width:390px){.header nav{gap:14px;font-size:13px}.header nav a:first-child{display:none}.hero h1{font-size:39px}.filters button{padding:8px;font-size:12px}.contact-section{padding:24px 19px}.contact-section h2{font-size:35px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
