@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}:root{color:#fafafa;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#161616;font-family:Inter Variable,Inter,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer}button,summary,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline-offset:7px;outline:2px solid #244bff}::selection{color:#fafafa;background:#244bff}.corte-site{--split:53.4%;--gutter:clamp(28px, 4vw, 64px);--blue:#244bff;--dark:#161616;--light:#fafafa;--scene-fade:.7s;--scene-ease:cubic-bezier(.4, 0, .2, 1);width:100%;height:100%}.corte-background{z-index:0;pointer-events:none;grid-template-columns:var(--split) 1fr;display:grid;position:fixed;inset:0}.background-left{background-color:var(--left-bg)}.background-right{background-color:var(--right-bg)}.corte-background>div{transition:background-color var(--scene-fade) var(--scene-ease)}.corte-skip{color:#161616;z-index:40;background:#fafafa;padding:14px 18px;position:fixed;top:-100px;left:20px}.corte-skip:focus{top:20px}.corte-header{width:100%;padding:32px var(--gutter);z-index:20;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0}.corte-header a{pointer-events:auto}.corte-brand{color:var(--left-ink);letter-spacing:.05em;font-family:IBM Plex Mono,monospace;font-size:21px}.corte-header nav{color:var(--right-ink);gap:clamp(28px,3.5vw,54px);font-size:14px;display:flex}.corte-header nav a{padding:5px 0;position:relative}.corte-header nav a:after{content:"";transform-origin:0;background:currentColor;width:100%;height:1px;transition:transform .22s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.corte-header nav a:hover:after,.corte-header nav a[aria-current]:after{transform:scaleX(1)}.corte-scroll{z-index:1;scroll-snap-type:y mandatory;scrollbar-width:none;overscroll-behavior-y:contain;height:100%;position:relative;overflow:hidden auto}.corte-scroll::-webkit-scrollbar{display:none}.corte-scene{grid-template-columns:var(--split) 1fr;scroll-snap-align:start;scroll-snap-stop:normal;min-height:100svh;display:grid}.scene-left,.scene-right{min-width:0;padding:140px var(--gutter) 150px;align-items:center;display:flex}.scene-left{color:#fafafa;background:#161616}.scene-right{color:#161616;background:#fafafa}.corte-site.scene-changing .scene-left,.corte-site.scene-changing .scene-right{background:0 0}.scene-content{width:100%;position:relative}.scene-content h1,.scene-content h2,.scene-content h3{letter-spacing:-.055em;margin:0;font-weight:450;line-height:1.05}.scene-content h2{font-size:clamp(46px,5.3vw,82px)}.home-content h1{letter-spacing:-.055em;font-size:clamp(84px,9.8vw,150px);font-weight:520;line-height:.96}.home-role{letter-spacing:-.035em;color:#a2a2a2;margin:28px 0 58px;font-size:clamp(18px,1.85vw,28px)}.corte-text-link{align-items:center;gap:22px;font-size:clamp(18px,1.5vw,24px);display:inline-flex}.corte-text-link:before{content:"";border-bottom:1px solid;width:128px;position:absolute;bottom:-6px}.corte-text-link svg{width:44px;height:24px;transition:transform .22s}svg path{fill:none;stroke:currentColor;stroke-width:1.4px}.corte-text-link:hover svg{transform:translate(6px)}.letter-panel{justify-content:center;padding:130px clamp(18px,5vw,76px) 160px}.sliced-letter{width:100%;max-width:540px;max-height:64svh;color:var(--blue);display:block;overflow:visible}.sliced-letter text{fill:currentColor;letter-spacing:-.07em;font:800 820px Inter Variable,Inter,sans-serif}.letter-strip{transform:translateX(var(--slice-offset));transition:transform .6s cubic-bezier(.2,.7,.2,1)}.sliced-letter:hover .letter-strip{transform:translateX(calc(var(--slice-offset) * 3))}.is-active .letter-strip{animation:1s cubic-bezier(.16,1,.3,1) both letter-entry;animation-delay:var(--slice-delay)}.corte-work .scene-left{color:#161616;background:#fafafa}.corte-work .scene-right{color:#fafafa;background:#161616}.work-list h2{margin-bottom:52px;font-size:clamp(42px,4.3vw,66px)}.experience-list{width:100%}.experience-list button{text-align:left;letter-spacing:-.04em;background:0 0;border:0;border-bottom:1px solid #d2d2d2;grid-template-columns:52px 1fr 26px;align-items:center;gap:18px;width:100%;padding:24px 0;font-size:clamp(21px,2.05vw,31px);transition:color .16s;display:grid}.experience-list button:last-child{border-bottom:0}.experience-list button[aria-selected=true],.experience-list button:hover{color:var(--blue)}.item-number{color:#777;letter-spacing:-.02em;font:17px IBM Plex Mono,monospace}.experience-list button[aria-selected=true] .item-number{color:var(--blue)}.experience-list svg{width:26px;height:26px}.experience-detail{outline-offset:14px}.detail-number{color:#0000;-webkit-text-stroke:1px #a2a2a2;letter-spacing:-.07em;margin-bottom:28px;font:500 clamp(70px,8vw,122px)/1 IBM Plex Mono,monospace;display:block}.experience-detail h3{max-width:510px;font-size:clamp(27px,2.7vw,42px)}.experience-detail p,.experience-detail li{color:#ababab;font-size:clamp(15px,1.12vw,18px);line-height:1.7}.experience-detail p{margin:24px 0 0}.experience-detail .experience-contribution{font-size:14px}.experience-detail ul{margin:20px 0 0;padding-left:18px}.experience-detail .experience-tools{color:#ececec;margin-top:32px;font:13px/1.8 IBM Plex Mono,monospace}.about-content h2{margin-bottom:40px}.about-content p{letter-spacing:-.025em;color:#ababab;max-width:590px;font-size:clamp(18px,1.55vw,24px);line-height:1.65}.about-content p+p{margin-top:26px;font-size:clamp(16px,1.15vw,18px)}.tools-content h3{margin-bottom:42px;font-size:clamp(28px,2.5vw,38px)}.tools-content details{border-top:1px solid #c5c5c5}.tools-content summary{cursor:pointer;letter-spacing:-.035em;align-items:center;gap:20px;padding:25px 0;font-size:20px;list-style:none;display:flex}.tools-content summary::-webkit-details-marker{display:none}.disclosure{width:16px;height:16px;margin-left:auto;position:relative}.disclosure:before,.disclosure:after{content:"";background:currentColor;width:14px;height:1px;position:absolute;top:7px;left:1px}.disclosure:after{transition:transform .18s;transform:rotate(90deg)}details[open] .disclosure:after{transform:rotate(0)}.tools-body{padding:0 0 30px 44px}.tools-body p{letter-spacing:-.025em;margin:0;font-size:19px;line-height:1.8}.tools-content details:first-of-type .tools-body p{font-size:clamp(26px,2.5vw,38px);font-weight:550;line-height:1.55}.corte-contact .scene-right{color:#fafafa;background:#244bff}.corte-contact .sliced-letter{color:#fafafa}.corte-contact .sliced-letter text{letter-spacing:-.1em;font-size:640px}.contact-content h2{margin-bottom:55px}.contact-email{letter-spacing:-.04em;border-bottom:1px solid #888;align-items:center;gap:18px;max-width:100%;padding-bottom:8px;font-size:clamp(19px,2.05vw,31px);display:inline-flex}.contact-email svg{flex:0 0 25px;width:25px;height:25px}.contact-links{align-items:center;gap:32px;margin-top:36px;display:flex}.contact-links button{background:0 0;border:0;padding:8px 0;font-size:14px}.contact-links a{align-items:center;gap:9px;font-size:14px;display:inline-flex}.contact-links svg{width:14px;height:14px}.contact-links a:hover,.contact-links button:hover{color:#aaa}.copy-status{color:#ababab;height:22px;margin-top:20px;font:13px IBM Plex Mono,monospace}.corte-footer{z-index:20;grid-template-columns:var(--split) 1fr;pointer-events:none;width:100%;display:grid;position:fixed;bottom:0;left:0}.scene-progress{padding:42px var(--gutter) 52px;color:var(--left-ink);background:var(--left-bg);align-items:center;gap:32px;font:15px IBM Plex Mono,monospace;display:flex}.progress-track{background:color-mix(in srgb, var(--left-ink) 30%, transparent);width:clamp(90px,13vw,200px);height:2px}.progress-track i{background:#244bff;height:100%;transition:width .45s;display:block}.corte-footer nav{padding:30px var(--gutter) 48px;background:var(--right-bg);color:var(--right-ink);justify-content:space-between;gap:12px;display:flex}.corte-footer a{pointer-events:auto;border-bottom:1px solid color-mix(in srgb, var(--right-ink) 30%, transparent);flex-direction:column;gap:10px;padding-bottom:12px;font-size:14px;display:flex}.corte-footer a>span{color:#777;font:12px IBM Plex Mono,monospace}.corte-footer a[aria-current]{color:#244bff;border-bottom-color:currentColor}.corte-footer a[aria-current]>span{color:inherit}.corte-site[data-scene="3"] .corte-footer a{color:#ffffffb3;border-color:#ffffff60}.corte-site[data-scene="3"] .corte-footer a>span{color:#ffffff80}.corte-site[data-scene="3"] .corte-footer a[aria-current],.corte-site[data-scene="3"] .corte-footer a[aria-current]>span{color:#fafafa;border-color:#fafafa}.corte-header,.corte-brand,.corte-header nav,.scene-progress,.corte-footer,.corte-footer nav,.progress-track{transition:background-color var(--scene-fade) var(--scene-ease), color var(--scene-fade) var(--scene-ease), border-color var(--scene-fade) var(--scene-ease)}.corte-footer a,.corte-footer a>span{transition:color var(--scene-fade) var(--scene-ease), border-color var(--scene-fade) var(--scene-ease)}.is-active .scene-content{animation:.7s cubic-bezier(.16,1,.3,1) .1s both content-entry}.detail-enter-active,.detail-leave-active{transition:opacity .16s,transform .16s}.detail-enter-from{opacity:0;transform:translateY(12px)}.detail-leave-to{opacity:0;transform:translateY(-8px)}@keyframes letter-entry{0%{transform:translateX(calc(var(--slice-offset) * 7));opacity:0}to{transform:translateX(var(--slice-offset));opacity:1}}@keyframes content-entry{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width>=1700px){.corte-site{--gutter:5vw}}@media (width<=1050px){.corte-site{--gutter:32px}.corte-header{padding-top:25px}.corte-header nav{gap:26px;font-size:13px}.home-content h1{font-size:10vw}.home-role{font-size:19px}.scene-left,.scene-right{padding-top:115px;padding-bottom:125px}.experience-list button{grid-template-columns:34px 1fr 24px;gap:12px;padding:21px 0}.experience-detail .experience-contribution{font-size:13px}.detail-number{margin-bottom:24px;font-size:76px}.contact-links{gap:22px}.corte-footer a{font-size:12px}.corte-footer nav{padding-left:26px;padding-right:26px}.tools-body{padding-left:0}}@media (width<=700px){.corte-site{--gutter:24px;--split:100%}.corte-header{background:var(--left-bg);color:var(--left-ink);padding:20px 24px}.corte-header nav{color:var(--left-ink);gap:22px;font-size:12px}.corte-brand{font-size:18px}.corte-scene{scroll-snap-align:start;grid-template-columns:1fr;min-height:100svh}.scene-left,.scene-right{padding:100px 24px 110px}.corte-home{display:block;position:relative}.corte-home .scene-left{align-items:flex-start;min-height:100svh;padding-top:160px}.home-content{z-index:2;position:relative}.home-content h1{font-size:clamp(76px,19vw,115px)}.home-role{margin:24px 0 34px;font-size:18px}.corte-text-link{font-size:17px}.corte-text-link:before{width:103px}.corte-home .letter-panel{background:#fafafa;width:44%;height:26svh;padding:10px 15px;position:absolute;bottom:90px;right:0;overflow:hidden}.corte-home .sliced-letter{max-height:24svh}.corte-work{flex-direction:column;display:flex}.corte-work .scene-left{padding:96px 24px 24px}.corte-site.scene-changing .scene-right{background:#fafafa}.corte-work .scene-right{background:#161616;flex:1;align-items:flex-start;min-height:0;padding:28px 24px 112px}.scene-changing .corte-work .scene-right{background:#161616}.work-list h2{margin-bottom:20px;font-size:38px}.experience-list{flex-wrap:wrap;gap:4px 20px;display:flex}.experience-list button{white-space:nowrap;width:auto;min-height:44px;padding:12px 0;font-size:15px;display:block}.experience-list button:last-child{border-bottom:1px solid #d2d2d2}.experience-list button[aria-selected=true]{border-bottom-color:var(--blue)}.experience-list .item-number,.experience-list svg,.experience-detail .detail-number{display:none}.experience-detail h3{font-size:27px}.experience-detail p,.experience-detail li{font-size:15px}.experience-detail p{margin-top:18px}.corte-about .scene-left{padding-bottom:35px}.corte-about .scene-right{padding-top:42px;padding-bottom:130px}.about-content h2{margin-bottom:28px;font-size:52px}.tools-content h3{font-size:32px}.tools-content details:first-of-type .tools-body p{font-size:27px}.corte-contact{display:block;position:relative}.corte-contact .scene-left{align-items:flex-start;min-height:100svh;padding-top:160px}.contact-content h2{margin-bottom:35px;font-size:52px}.contact-email{gap:10px;font-size:clamp(17px,5vw,22px)}.contact-email svg{flex-basis:19px;width:19px}.contact-links{flex-wrap:wrap;gap:25px;margin-top:28px}.corte-contact .letter-panel{background:#244bff;width:44%;height:27svh;padding:5px 12px;position:absolute;bottom:90px;right:0;overflow:hidden}.scene-changing .corte-contact .letter-panel{background:#244bff}.corte-contact .sliced-letter{max-height:25svh}.corte-footer{background:var(--left-bg);color:var(--left-ink);border-top:1px solid color-mix(in srgb, var(--left-ink) 15%, transparent);padding:13px 24px 16px;display:block}.scene-progress{display:none}.corte-footer nav{color:var(--left-ink);background:0 0;gap:20px;padding:0}.corte-footer a{gap:6px;padding-bottom:7px;font-size:11px}.corte-footer a>span{font-size:10px}.corte-site[data-scene="3"] .corte-footer a[aria-current]{color:#244bff;border-color:#244bff}.corte-site[data-scene="1"] .corte-footer a[aria-current]{color:#244bff}.background-right{display:none}}@media (height<=850px) and (width>=701px){.scene-left,.scene-right{padding-top:clamp(80px,13svh,110px);padding-bottom:clamp(90px,14svh,120px)}.letter-panel .sliced-letter{max-height:min(64svh,100svh - 230px)}.work-list h2{margin-bottom:clamp(24px,4svh,34px)}.experience-list button{padding-top:clamp(14px,2.2svh,20px);padding-bottom:clamp(14px,2.2svh,20px)}.detail-number{margin-bottom:20px;font-size:clamp(64px,10svh,90px)}}@media (height<=650px) and (width>=701px){.scene-left,.scene-right{padding-top:95px;padding-bottom:100px}.home-content h1{font-size:min(9vw,100px)}.home-role{margin:20px 0 32px}.work-list h2{margin-bottom:25px}.experience-list button{padding:16px 0}.corte-footer nav,.scene-progress{padding-top:18px;padding-bottom:20px}}@media (height<=740px) and (width<=700px){.corte-home .scene-left,.corte-contact .scene-left{padding-top:115px}.corte-home .letter-panel,.corte-contact .letter-panel{width:36%;height:20svh;bottom:86px}.home-content h1{font-size:78px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.corte-scroll{scroll-snap-type:y proximity}.sliced-letter:hover .letter-strip{transform:translateX(var(--slice-offset))}}
