@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;src:url(/fonts/barlow-condensed-bold.ttf) format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Instrument;src:url(/fonts/instrument-serif.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Instrument;src:url(/fonts/instrument-serif-italic.ttf) format("truetype");font-style:italic;font-weight:400;font-display:swap}:root{font-family:Manrope Variable,sans-serif;color:#211f1a;background:#dedbd2;font-synthesis:none;--ink:#211f1a;--muted:#635f54;--rule:#938d7c;--serif:Instrument,Georgia,serif;--paper:#f8f5ee}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;min-width:320px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}img{display:block;max-width:100%}button svg,a svg{flex-shrink:0}button:focus-visible,a:focus-visible{outline:2px solid #6b5c23;outline-offset:6px}::selection{background:#e5c84f;color:#211f1a}.skip-link{position:fixed;top:-100px;left:24px;background:var(--paper);padding:15px;z-index:300}.skip-link:focus{top:15px}.site-header{height:104px;padding:16px 4.8%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;background:#dedbd2f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);gap:30px}.wordmark{font-size:42px;font-weight:850;letter-spacing:-3px;line-height:1}.site-header nav{display:flex;align-items:center;gap:clamp(22px,3.1vw,48px)}.site-header nav a{padding:11px 0;font-size:clamp(15px,1.4vw,21px);position:relative}.site-header nav a:after{content:"";height:1px;position:absolute;bottom:3px;left:0;right:0;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .3s}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{transform:scaleX(1)}.reading-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#786743;transform-origin:left}main,.site-footer{width:min(100%,1600px);padding:0 3.2%;margin:auto}.paper{position:relative;isolation:isolate;filter:drop-shadow(0 12px 12px #30281a18);transform-style:preserve-3d}.paper-material{position:absolute;z-index:-1;top:-1%;right:-1%;bottom:-1%;left:-1%;width:102%;height:102%;max-width:none;object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none}.paper-content{position:relative}.paper-brown .paper-material{filter:brightness(.65) sepia(.4) saturate(.6)}.paper-yellow{filter:drop-shadow(0 12px 13px #30281a1c)}.eyebrow{font-size:13px;font-weight:750;letter-spacing:.22em;line-height:1.7;margin:0 0 26px}.text-link{display:inline-flex;align-items:center;gap:12px;background:none;padding:0 0 3px;border:0;border-bottom:1px solid currentColor;line-height:1.2;transition:color .2s}.text-link svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}.text-link:hover svg{transform:translate(3px,-3px)}.text-link:hover{color:#766220}.quiet-link{display:inline-flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid transparent;transition:border-color .2s}.quiet-link:hover{border-color:currentColor}.hero-stage{height:clamp(730px,58.3vw,880px);position:relative;margin-top:24px;perspective:1400px}.hero-cover{position:absolute;left:1%;top:0;width:65.5%;height:96%}.hero-backing{position:absolute;left:.2%;bottom:0;width:65.5%;height:20%;pointer-events:none}.hero-backing>.paper{height:100%}.name-paper{height:100%}.name-paper .paper-content{padding:5.05vw 5.2vw 3vw;display:flex;height:100%;flex-direction:column}.hello{font-size:clamp(25px,2.3vw,34px);letter-spacing:-1px;font-weight:550;margin:0 0 22px}h1{margin:0;line-height:.85;font-weight:400;letter-spacing:-.045em}.first-name{font-family:Barlow,sans-serif;display:block;font-size:clamp(180px,18.8vw,282px);font-weight:700;line-height:.84;letter-spacing:-.045em}.last-name{font-family:var(--serif);font-style:italic;display:block;font-size:clamp(170px,17.4vw,262px);line-height:.92;letter-spacing:-.055em;margin-left:-.03em}.occupation{font-size:clamp(12px,1.1vw,16px);font-weight:750;letter-spacing:.25em;border-top:1px solid var(--rule);padding-top:14px;margin:24px 0 0}.tagline{font-size:clamp(27px,2.7vw,42px);line-height:1.12;letter-spacing:-1.4px;margin:auto 0 20px}.hero-note{position:absolute;right:.4%;top:12%;width:44.5%;height:79%;z-index:2}.intro-paper{height:100%;filter:drop-shadow(0 18px 15px #30281a2b)}.intro-paper .paper-content{height:100%;padding:4.05vw 4.5vw 3.7vw 5.1vw;display:flex;flex-direction:column}.intro-paper .eyebrow{font-size:clamp(12px,1vw,15px);margin:0 0 28px}.intro-paper h2{font-family:var(--serif);font-size:clamp(43px,4.05vw,62px);letter-spacing:-.045em;line-height:.94;font-weight:400;margin:0 0 32px}.intro-paper h2 span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.intro-body{font-size:clamp(16px,1.43vw,22px);line-height:1.4;letter-spacing:-.55px}.intro-body p{margin:0 0 26px}.intro-actions{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-top:auto;white-space:nowrap}.intro-actions .text-link{font-family:var(--serif);font-size:clamp(21px,2vw,30px);gap:6px}.intro-actions .quiet-link{font-size:clamp(14px,1.35vw,20px)}.chapter{padding-top:110px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:55px}.section-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(64px,7.7vw,112px);line-height:.95;letter-spacing:-.035em;margin:0}.section-aside{font-size:17px;line-height:1.55;color:var(--muted);margin:0 0 8px}.experience-paper .paper-content{padding:70px 6% 80px}.experience-row{display:grid;grid-template-columns:23% 44% 1fr;gap:18px;border-top:1px solid #b3ad9e;padding:31px 0}.experience-row:last-child{padding-bottom:0}.experience-row time{font-size:14px;padding-top:8px;color:var(--muted)}.experience-row h3{font-family:var(--serif);font-size:35px;font-weight:400;margin:0 0 9px;line-height:1.05}.job-role{font-size:16px;line-height:1.5;margin:0}.job-description{font-size:15px;color:var(--muted);line-height:1.65;margin:4px 0 0}.projects-head{padding:10px 3% 0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 48px;align-items:start;padding:0 1%}.project-wrap:nth-child(2n){margin-top:90px}.project-paper .paper-content{padding:32px 34px 45px}.project-meta{display:flex;justify-content:space-between;gap:15px;font-size:11px;letter-spacing:.04em;color:var(--muted);margin-bottom:25px}.project-image{position:relative;display:block;overflow:hidden;background:#e0ded4;padding:0;width:100%;aspect-ratio:1.6}.project-image>img{width:100%;height:100%;object-fit:contain;transition:transform .7s cubic-bezier(.22,1,.36,1)}.project-image.aqua>img{object-fit:cover}.project-image:hover>img{transform:scale(1.035)}.image-action{position:absolute;bottom:15px;right:15px;background:#f8f5eef5;display:flex;align-items:center;gap:9px;padding:12px;color:var(--ink);border-radius:50px;font-size:12px;box-shadow:0 3px 12px #0002}.image-action>span{max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .35s}.project-image:hover .image-action>span,.project-image:focus-visible .image-action>span{max-width:150px}.project-paper h3{font-family:var(--serif);font-size:clamp(43px,4.5vw,65px);font-weight:400;margin:25px 0 5px;letter-spacing:-.025em;line-height:1}.project-tagline{font-family:var(--serif);font-style:italic;font-size:28px;line-height:1.2;margin:0 0 23px}.project-description{font-size:16px;line-height:1.7;max-width:520px;margin:0 0 22px}.project-tags{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:30px}.project-actions{display:flex;flex-wrap:wrap;gap:22px}.project-actions .text-link{font-size:15px}.project-incident .paper-content{padding:42px}.project-incident h3{font-size:clamp(32px,4.6vw,66px);margin-top:60px}.project-incident .project-tagline{font-size:36px;max-width:310px;margin:20px 0 35px}.project-incident .project-description{font-size:18px}.more-projects{padding:50px 3% 0}.more-projects .text-link{font-size:16px}.resume-paper .paper-content{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center;padding:75px 7%}.resume-paper h2{font-family:var(--serif);font-size:clamp(65px,6.8vw,102px);line-height:.93;font-weight:400;letter-spacing:-.03em;margin:0}.resume-description>p{font-size:21px;line-height:1.65;margin:0 0 35px}.resume-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.resume-actions .text-link{font-family:var(--serif);font-size:29px}.resume-actions .quiet-link{font-size:15px}.contact-section{padding-bottom:45px}.contact-paper .paper-content{padding:70px 6%}.contact-paper h2{font-family:var(--serif);font-weight:400;font-size:clamp(80px,11vw,160px);letter-spacing:-.04em;line-height:.94;margin:30px 0 65px}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px}.email-link{font-size:clamp(19px,2vw,28px)}.copy-email{display:flex;align-items:center;gap:8px;background:none;padding:15px 0 0;font-size:12px;color:var(--muted)}.copy-status{display:block;min-height:18px;font-size:11px;color:var(--muted);padding-top:5px}.socials{display:flex;gap:25px;padding-bottom:24px}.socials .text-link{font-size:14px;gap:4px}.socials svg{width:17px}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:30px;padding-bottom:40px;font-size:12px;color:var(--muted)}.site-footer a{display:flex;align-items:center;gap:10px}.modal{border:0;padding:15px;background:transparent;max-width:none;width:min(1150px,96vw);max-height:96dvh;overflow:auto;color:var(--ink)}.modal::backdrop{background:#27231bdd;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.modal-surface{background:var(--paper);box-shadow:0 20px 70px #0005}.modal-header{padding:20px 25px;display:flex;align-items:center;justify-content:space-between;gap:25px}.modal-header h2{font-family:var(--serif);font-size:35px;font-weight:400;margin:0;line-height:1.1}.modal-header .eyebrow{font-size:9px;margin-bottom:5px}.modal-tools{display:flex;gap:10px}.modal-tools button,.icon-button{background:transparent;border:1px solid #c8c1b0;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;transition:background .2s}.modal-tools button:hover,.icon-button:hover{background:#ece3c1}.game-stage{position:relative;width:100%;aspect-ratio:3/2;background:#123059}.game-stage iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.game-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff}.game-footer{padding:18px 25px;display:flex;justify-content:space-between;gap:20px;font-size:11px;line-height:1.6}.game-footer .text-link{font-size:14px}.expanded-game{width:100vw;height:100dvh;max-height:100dvh;top:0;right:0;bottom:0;left:0;padding:0;margin:0;display:grid;place-items:center;background:#23251f}.expanded-game .modal-surface{width:min(1200px,100vw)}.expanded-game .game-stage{aspect-ratio:auto;height:min(calc(100dvh - 160px),800px)}.game-mobile{padding:0 25px 20px}.game-mobile p{line-height:1.6;font-size:16px}.game-mobile img{width:100%}.game-mobile .text-link{font-size:14px}.full-screenshot{width:100%;max-height:76vh;object-fit:contain;background:#1d2219}.screenshot-caption{padding:20px 25px;margin:0;font-family:var(--serif);font-size:26px}.screenshot-modal{width:min(1400px,96vw)}@media(min-width:1600px){.name-paper .paper-content{padding:75px 80px 45px}.intro-paper .paper-content{padding:62px 65px 52px 75px}.hero-stage{height:890px}}@media(max-width:1150px)and (min-width:761px){.hero-stage{height:730px;margin-top:20px}.hero-cover{width:64%;height:94%}.name-paper .paper-content{padding:60px 45px 35px}.hello{font-size:27px}.first-name{font-size:20vw}.last-name{font-size:17.7vw}.occupation{margin-top:25px;font-size:11px}.tagline{font-size:28px;letter-spacing:-1px}.hero-note{width:46%;top:13%;height:77%}.intro-paper .paper-content{padding:43px 30px 35px 40px}.intro-paper h2{font-size:4.25vw;margin-bottom:27px}.intro-body{font-size:16px}.intro-body p{margin-bottom:22px}.intro-actions{flex-wrap:wrap;gap:14px}.intro-actions .text-link{font-size:23px}.intro-actions .quiet-link{font-size:14px}.experience-row{grid-template-columns:24% 1fr}.job-description{grid-column:2}.project-grid{gap:35px 28px}.project-paper .paper-content{padding:24px}.project-description{font-size:15px}.contact-bottom{flex-direction:column;align-items:start;gap:15px}.resume-paper .paper-content{gap:30px;padding:55px 6%}.resume-description>p{font-size:18px}}@media(max-width:760px){html{scroll-padding-top:110px}.site-header{height:100px;align-items:start;flex-direction:column;padding:15px 6% 10px;gap:8px}.wordmark{font-size:32px;letter-spacing:-2px}.site-header nav{width:100%;justify-content:space-between;gap:12px}.site-header nav a{font-size:12px;padding:7px 0}.site-header nav a:after{bottom:1px}.reading-progress{height:1px}main,.site-footer{padding-left:5%;padding-right:5%}.hero-stage{height:auto;display:flex;flex-direction:column;margin-top:24px;padding-bottom:0}.hero-cover{position:relative;width:98%;height:auto;left:0;top:auto}.name-paper .paper-content{padding:36px 9% 80px;min-height:500px}.hello{font-size:24px;letter-spacing:-.7px;margin-bottom:27px}.first-name{font-size:37vw;letter-spacing:-.04em}.last-name{font-size:29.7vw;letter-spacing:-.045em;line-height:.98}.occupation{font-size:10px;letter-spacing:.2em;padding-top:12px;margin:20px 0 24px}.tagline{font-size:27px;letter-spacing:-1px;margin:15px 0 0;line-height:1.2}.hero-backing{left:-.5%;width:98%;top:375px;height:170px;bottom:auto}.hero-note{position:relative;right:auto;top:auto;width:95%;height:auto;align-self:flex-end;margin-top:-42px}.intro-paper .paper-content{padding:34px 9% 36px}.intro-paper .eyebrow{font-size:10px;margin-bottom:20px}.intro-paper h2{font-size:clamp(38px,10.6vw,70px);line-height:.98;margin-bottom:25px;letter-spacing:-.035em}.intro-body{font-size:16px;line-height:1.55;letter-spacing:-.35px}.intro-body p{margin:0 0 18px}.intro-actions{gap:16px;flex-wrap:wrap;margin-top:18px;white-space:normal;justify-content:start}.intro-actions .text-link{font-size:25px}.intro-actions .quiet-link{font-size:14px}.chapter{padding-top:65px}.experience-paper .paper-content{padding:40px 9%}.section-head{margin-bottom:35px;align-items:start}.section-head h2{font-size:clamp(51px,12vw,80px);letter-spacing:-.035em}.eyebrow{font-size:9px;letter-spacing:.16em;margin-bottom:18px}.section-aside{display:none}.experience-row{grid-template-columns:1fr;gap:12px;padding:23px 0}.experience-row time{font-size:12px;padding:0}.experience-row h3{font-size:31px;margin-bottom:8px}.job-role{font-size:14px}.job-description{font-size:13px;line-height:1.6;margin:0}.projects-head{padding:0 3%}.project-grid{grid-template-columns:1fr;gap:35px;padding:0 1%}.project-wrap:nth-child(2n){margin-top:0}.project-paper .paper-content{padding:26px 8% 35px}.project-meta{font-size:10px;margin-bottom:20px}.project-paper h3{font-size:48px;margin-top:22px}.project-tagline{font-size:25px;margin-bottom:20px}.project-description{font-size:14px;line-height:1.7}.project-tags{font-size:10px;margin-bottom:22px}.project-actions{gap:20px}.project-actions .text-link{font-size:13px}.project-actions svg{width:17px}.image-action{padding:10px;bottom:10px;right:10px}.image-action>span{display:none}.project-incident .paper-content{padding:35px 8%}.project-incident h3{font-size:clamp(34px,9vw,58px);margin-top:40px}.project-incident .project-tagline{font-size:33px;margin:20px 0 25px}.project-incident .project-description{font-size:15px}.more-projects{padding-top:35px}.more-projects .text-link{font-size:13px;gap:6px}.resume-paper .paper-content{grid-template-columns:1fr;padding:40px 9%;gap:25px}.resume-paper h2{font-size:clamp(58px,14vw,80px)}.resume-description>p{font-size:16px;margin:0 0 24px}.resume-actions{gap:22px}.resume-actions .text-link{font-size:25px}.resume-actions .quiet-link{font-size:12px}.contact-paper .paper-content{padding:40px 9%}.contact-paper h2{font-size:clamp(50px,13vw,100px);margin:28px 0 35px;line-height:1}.contact-bottom{display:block}.email-link{font-size:clamp(12px,3.3vw,22px);gap:6px;letter-spacing:-.3px}.email-link svg{width:18px}.socials{margin-top:25px;gap:20px;padding:0}.socials .text-link{font-size:12px}.copy-email{font-size:11px}.site-footer{font-size:10px;gap:20px;padding-top:15px;padding-bottom:30px;flex-wrap:wrap}.site-footer a{margin-left:auto;gap:5px}.modal{padding:8px;width:98vw}.modal-header{padding:16px}.modal-header h2{font-size:29px}.modal-tools button,.icon-button{width:36px;height:36px}.game-footer{padding:16px}.game-footer>span{display:none}.game-mobile{padding:0 16px 20px}.game-mobile p{font-size:14px}.screenshot-caption{font-size:21px;padding:16px}.full-screenshot{max-height:70vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.paper{transform:none!important}.hero-backing{transform:rotate(-1.8deg)!important}}@font-face{font-family:Anton;src:url(/fonts/anton.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Bodoni;src:url(/fonts/bodoni.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Bodoni;src:url(/fonts/bodoni-italic.ttf) format("truetype");font-style:italic;font-weight:400;font-display:swap}:root{--serif:Bodoni,Georgia,serif}.paper-white>.paper-material,.paper-brown>.paper-material{clip-path:inset(1.4% 1.5%)}.paper-yellow>.paper-material{filter:brightness(1.025) saturate(.82)}.paper-brown .paper-material{filter:brightness(.72) sepia(.55) saturate(1.4)}@media(min-width:761px){.hero-stage{height:min(clamp(660px,56vw,850px),max(340px,calc(100svh - 194px)));margin-top:16px;container-type:size}.hero-cover{left:0;width:67%;height:100%}.hero-backing{bottom:-10px;width:66%;left:-.5%}.hero-note{top:12%;height:84%;width:45.6%;right:0}.name-paper .paper-content{padding:4.8vw 7.5vw 3vw 5.7vw}.hello{margin-bottom:25px}.first-name{font-family:Anton,sans-serif;font-weight:400;line-height:1;letter-spacing:-.045em}.last-name{letter-spacing:-.065em;margin-left:-.05em}.occupation{margin-top:31px}.intro-paper .paper-content{padding:4.3vw 4.2vw 4.2vw 5.5vw}.intro-paper h2{font-size:clamp(39px,3.5vw,54px);letter-spacing:-.07em;line-height:1.04}.intro-body{font-size:clamp(16px,1.43vw,22px);line-height:1.4;max-width:440px;letter-spacing:-.35px}.intro-actions{gap:18px}.intro-actions .text-link{font-size:clamp(21px,1.8vw,28px);letter-spacing:-.06em}}@media(max-width:760px){.first-name{font-family:Anton,sans-serif;font-weight:400;font-size:32vw;line-height:1}.last-name{font-size:25.3vw;line-height:1;letter-spacing:-.06em}.intro-paper h2{font-size:clamp(35px,9vw,60px);letter-spacing:-.075em;line-height:1.06}.intro-actions .text-link{font-size:23px;letter-spacing:-.07em}.contact-paper h2{font-size:clamp(45px,11.8vw,90px);letter-spacing:-.065em}}@media(min-width:761px){.last-name{transform:scaleX(.84);transform-origin:left center;line-height:.8}.name-paper .paper-content{padding-left:6.1vw}.tagline{margin-bottom:14px}.intro-paper .paper-content{padding-left:6.4vw;padding-bottom:6vw}.intro-paper h2{font-size:clamp(42px,3.9vw,60px);line-height:.95;letter-spacing:-.06em}.intro-body{font-size:clamp(16px,1.48vw,22px)}}@media(min-width:761px)and (max-width:1150px){.name-paper .paper-content{padding-left:45px;padding-right:50px;padding-top:55px}.intro-paper .paper-content{padding:43px 30px 40px 38px}.intro-paper h2{font-size:4vw;line-height:1.08;margin-bottom:23px}.intro-actions{gap:12px}}@media(min-width:1200px)and (min-height:940px){.game-modal:not(.expanded-game){width:1110px;margin:0;left:round(down,calc((100vw - 1110px)/2),1px);top:40px}.game-modal:not(.expanded-game) .modal-header{height:90px}.game-modal:not(.expanded-game) .game-stage{height:720px;aspect-ratio:auto}.game-modal:not(.expanded-game) .game-footer{height:70px}}@media(max-width:760px){.last-name{transform:scaleX(.85);transform-origin:left center}}@media(min-width:761px)and (max-width:1150px){.last-name{transform:scaleX(.76)}}body{overflow-x:clip}@media(max-width:760px){.resume-paper h2{font-size:clamp(44px,12.6vw,80px)}.resume-paper .paper-content>div{min-width:0}}@media(max-width:350px){.site-header nav{gap:8px}.site-header nav a{font-size:11.5px;white-space:nowrap}.intro-paper h2{font-size:30px}}#about{scroll-margin-top:80px}@media(min-width:761px){.name-paper .paper-content{padding-top:min(4.8vw,8cqh);padding-bottom:min(3vw,4cqh)}.hello{font-size:min(clamp(25px,2.3vw,34px),5.3cqh);margin-bottom:min(25px,3.3cqh)}.first-name{font-size:min(clamp(145px,16vw,240px),29cqh)}.last-name{font-size:min(clamp(132px,16.4vw,242px),30cqh)}.occupation{margin-top:min(31px,4cqh);padding-top:min(14px,2cqh)}.tagline{font-size:min(clamp(25px,2.7vw,42px),5.5cqh);margin-bottom:min(14px,2cqh)}.intro-paper .paper-content{padding-top:min(4.3vw,8cqh);padding-bottom:min(5vw,8cqh)}.intro-paper .eyebrow{margin-bottom:min(28px,4cqh)}.intro-paper h2{margin-bottom:min(32px,4cqh)}.intro-body p{margin-bottom:min(26px,3.5cqh)}.intro-actions{flex-wrap:wrap;white-space:normal}}@media(min-width:761px)and (max-width:900px)and (max-height:650px){.intro-paper .paper-content{padding-inline:26px 22px}.intro-body{font-size:14px}}.experience-paper:before,.resume-paper:before,.contact-paper:before{content:"";position:absolute;z-index:-2;top:8px;right:3%;bottom:-12px;left:1%;background:url(/assets/yellow-paper-Dz25eHRv.webp) center / 100% 100% no-repeat;filter:brightness(.78) saturate(.55);transform:rotate(.8deg);pointer-events:none}.resume-paper:before{top:6px;right:1%;bottom:-10px;left:3%;transform:rotate(-.9deg)}@media(min-width:1000px){.experience-paper{margin-right:3%}.resume-paper{margin-left:6%}.contact-paper{margin-right:5%}}.job-description p{margin:0}.job-description p+p{margin-top:.8em}
