@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-ext-wght-normal.0x9ccydb91kkt.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-wght-normal.0fpdy-lufm69d.woff2)format("woff2-variations");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:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/public-sans-vietnamese-wght-normal.351w3rsy0o7m9.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/public-sans-latin-ext-wght-normal.3ft8rvcvbxo5j.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/public-sans-latin-wght-normal.297-5ju1rzndw.woff2)format("woff2-variations");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:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(../media/caveat-cyrillic-ext-wght-normal.1a5omd23h2g7u.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(../media/caveat-cyrillic-wght-normal.3pz26h3t80slv.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(../media/caveat-latin-ext-wght-normal.1v8q5_f-rvjb_.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(../media/caveat-latin-wght-normal.0v9iznkhjktil.woff2)format("woff2-variations");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}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#2b302b;--muted:#73776e;--line:#e8eae5;--green:#435b42}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:48px}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font:15px/1.75 DM Sans Variable,Arial,sans-serif}a{color:inherit;text-underline-offset:4px;text-decoration-color:#b9c0b4;transition:color .16s,text-decoration-color .16s}a:hover{color:var(--green);-webkit-text-decoration-color:var(--green);text-decoration-color:var(--green)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible,canvas:focus-visible{outline-offset:5px;outline:2px solid #627e57}::selection{color:#263426;background:#e0ead9}.portfolio-shell{grid-template-columns:132px minmax(0,1fr);gap:44px;width:min(1200px,100%);margin:0 auto;padding:72px 24px 0;display:grid}.portfolio-body{min-width:0}@media (max-width:760px){.portfolio-shell{padding:48px 0 0;display:block}}.portfolio-content{width:min(612px,100% - 48px);margin:77px auto 0}.intro{padding-bottom:58px}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:-1.15px;font-size:31px;font-weight:500;line-height:1.25}.intro-kicker{color:var(--muted);letter-spacing:.05px;margin:0 0 13px;font-size:11px}.intro h1{font-family:Public Sans Variable,Arial,sans-serif}.intro-copy{color:#707070;max-width:490px;margin-top:23px;font:500 15px/1.65 Public Sans Variable,Arial,sans-serif}.intro-copy strong{color:#000;font-weight:600}.intro-copy .intro-handwritten{color:#242424;font:700 22px/1 Caveat Variable,cursive}.intro-copy p+p{margin-top:15px}.intro-copy a{color:var(--ink)}.inline-links{flex-wrap:wrap;gap:19px;margin-top:23px;font-size:12px;display:flex}.inline-links a{border-bottom:1px solid #d6dad2;text-decoration:none}.text-section{border-top:1px solid var(--line);padding:37px 0 42px;scroll-margin-top:30px}.section-heading{align-items:center;gap:11px;margin-bottom:28px;font-size:13px;font-weight:500;display:flex}.section-heading span{font-variant-numeric:tabular-nums;color:#697162;font-size:10px;font-weight:400}.project-list,.experience-list{gap:30px;display:grid}.project-entry,.experience-entry{margin:0}.venture-list{gap:36px;display:grid}.venture-entry+.venture-entry{border-top:1px solid var(--line);padding-top:32px}.venture-products{border-left:1px solid var(--line);margin-top:25px;padding-left:20px}.products-label{color:var(--muted);margin-bottom:20px;font-size:11px}.venture-category{color:var(--muted);margin-top:3px;font-size:12px}.entry-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:5px 16px;display:flex}.entry-heading h3,.entry-heading h4,h3.entry-heading{letter-spacing:-.2px;font-size:15px;font-weight:500}.venture-heading h3{letter-spacing:-.4px;font-size:19px}.entry-heading a{text-decoration:none}.entry-heading a span{color:#838b7d;margin-left:2px;font-size:12px}.entry-meta{color:#697162;font-size:12px}.entry-copy{color:#626b5c;margin-top:7px;font-size:14px;line-height:1.85}.entry-copy+.entry-meta{margin-top:8px}.experience-entry .entry-meta{margin-top:2px}.achievement-list{color:#697064;gap:17px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.achievement-list li{padding-left:15px;position:relative}.achievement-list li:before{content:"·";color:#899b80;position:absolute;left:0}.achievement-list strong{color:#424b3e;font-weight:500}.achievement-list h3{color:#424b3e;font-size:14px;font-weight:500}.contact-section{border-top:1px solid var(--line);padding:35px 0 28px}.contact-section h2{letter-spacing:-.6px;margin-bottom:9px;font-size:23px;font-weight:500}.contact-section p{color:#747c6c;font-size:13px}.site-footer{color:#9b9f96;justify-content:space-between;gap:20px;padding:33px 0 32px;font-size:10px;display:flex}.site-footer a{text-decoration:none}.skip-content{z-index:100;background:#fff;border:1px solid #b6c2af;border-radius:4px;padding:9px 14px;position:fixed;top:10px;left:12px;transform:translateY(-160%)}.skip-content:focus{transform:translateY(0)}.message-page{max-width:600px;margin:auto;padding:20vh 24px}.message-page p{color:#73776e;margin:20px 0}.message-page button{margin-right:20px}@media (max-width:640px){.portfolio-content{margin-top:62px}h1{font-size:28px}.intro{padding-bottom:44px}.text-section{padding:31px 0 35px}.entry-heading{display:block}.entry-meta{margin-top:2px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:0s!important}}
