#nprogress{pointer-events:none}#nprogress .bar{background:#29d;z-index:1031;height:2px}#nprogress .peg{box-shadow:0 0 10px #29d,0 0 5px #29d}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border-color:#29d transparent transparent #29d;border-style:solid;border-width:2px;border-radius:50%;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a{color:inherit;text-decoration:none;outline:0 solid rgba(0,0,0,0);outline-offset:12px;transition:all .2s var(--motion-ease-default)}:focus-visible{outline:2px solid var(--color-text-default);outline-offset:2px;z-index:1000}.skip-to-content-link{background-color:var(--color-background-inverse-default);color:var(--color-text-inverse-default);width:inherit;position:absolute;font-size:14px;display:flex;align-items:center;justify-content:center;transition:transform .2s var(--motion-ease-default);transform:translateY(-100%);opacity:0;z-index:-1}.skip-to-content-link:focus-visible{transform:translateY(0);opacity:1;z-index:1}.skip-to-content-link:focus-visible .label{animation-delay:.15s;animation-duration:.4s;animation-name:header-label;animation-timing-function:var(--motion-ease-default);-webkit-animation-fill-mode:forwards}@media(prefers-reduced-motion){.skip-to-content-link,a,header{transition:none!important;transform:none!important}.content-entrance,.menu .active:before,.menu .label,.menu a:hover:before,.menu>:hover:not(.active):before,.polka,.skip-to-content-link .label,header{animation:none!important}header{background:var(--color-background-subdued)!important;-webkit-backdrop-filter:blur(0)!important;backdrop-filter:blur(0)!important}}:root{--motion-ease-default:ease;--motion-duration-entrance:300ms;--motion-duration-faster:300ms}@keyframes header-items{0%{transform:scale(95%)}to{transform:scale(100%)}}@keyframes header-label{0%{transform:translateY(3px)}to{transform:translateY(0)}}@keyframes page{0%{transform:translateY(16px);opacity:1}to{transform:unset;opacity:1}}@keyframes entrance{0%{transform:translateY(16px);opacity:0}to{transform:unset;opacity:1}}@keyframes gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes polka{0%{background-position:0 0}to{background-position:0 -10000px}}.page-entrance{animation-duration:var(--motion-duration-entrance);animation-name:page;animation-timing-function:var(--motion-ease-default);z-index:0}.motion-entrance{animation-duration:var(--motion-duration-faster);animation-name:entrance;animation-timing-function:var(--motion-ease-default);animation-fill-mode:backwards}.motion-delay-100{animation-delay:.1s}.motion-delay-200{animation-delay:.2s}.motion-delay-300{animation-delay:.3s}.motion-delay-400{animation-delay:.4s}.motion-delay-500{animation-delay:.5s}.motion-delay-600{animation-delay:.6s}.motion-delay-700{animation-delay:.7s}.motion-delay-800{animation-delay:.8s}.motion-delay-900{animation-delay:.9s}.motion-delay-1000{animation-delay:1s}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body,html{padding:0;margin:0}body{background-color:var(--color-background-default);color:var(--color-text-default);font-synthesis:none}*{box-sizing:border-box}.container{max-width:1920px;margin:0 auto;padding:0 80px}@media(max-width:960px){.container{padding:0 40px}}h1,h2,h3,h4,h5,h6{font-weight:500;margin:0;letter-spacing:-.025em}a,body,button,h1,h2,h3,h4,h5,h6,p{font-family:Uncut Sans;font-feature-settings:"ss08" on}strong{font-weight:550}.logo{width:120px;overflow:hidden}.logo,.logo svg{height:40px}header{padding:64px 0;justify-content:space-between}.menu,header{display:flex;align-items:center}.menu{gap:0}.menu a{font-size:var(--typography-description-size);line-height:var(--typography-description-lh)}.menu .active{text-decoration:underline}.modal-content{background-color:var(--color-background-default);width:400px;padding-top:8px;box-shadow:0 23px 25px 0 rgba(0,0,0,.05),0 -1px 10px 0 rgba(0,0,0,.03),0 6px 14px 0 rgba(0,0,0,.03),inset 5px 4px 50px 0 rgba(0,0,0,.03)}@media(max-width:600px){.modal-content{width:100%;height:100%;max-width:100%;border-radius:0;box-shadow:none;padding:1rem;display:flex;flex-direction:column}}.close-button{padding-left:8px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:9999;animation:moveUp .2s ease-out forwards}.modal-body{padding-left:20px;padding-right:20px;padding-bottom:20px;display:flex;flex-direction:column;gap:24px}@media(max-width:600px){.modal-body{flex-grow:1}}@keyframes moveUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-body h3{font-weight:600}.modal-body a{text-decoration:underline}.modal-body-content{display:flex;flex-direction:column;gap:0}@media(max-width:600px){.modal-body-content{flex-grow:1;overflow-y:auto}}.modal-body-content p{margin:.5rem 0}.modal-body-content p:last-child{margin-bottom:0}.hero{margin-bottom:120px;display:flex;flex-direction:column;gap:16px}.hero h1{font-size:var(--typography-hero-size);font-weight:550;line-height:var(--typography-hero-lh);padding:32px 0;border-top:3px solid var(--color-text-default);border-bottom:3px solid var(--color-text-default)}.hero p{font-size:var(--typography-body-size);line-height:var(--typography-body-lh);max-width:960px;margin-top:32px}.hero .button{align-self:flex-start}.section{width:100%}.section-body{font-size:var(--typography-body-size);line-height:var(--typography-body-lh);padding-top:48px;display:flex;gap:48px;flex-direction:column}.section-body p{margin:0;max-width:900px;color:var(--color-text-subdued)}.section-body .button{align-self:flex-start}.section-title{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--color-background-default)}.section-title h2{font-size:var(--typography-subheading-size);line-height:var(--typography-subheading-lh);padding:8px 0;border-bottom:3px solid var(--color-text-default)}.feed-list{display:flex;flex-wrap:wrap;justify-content:space-between;gap:64px;padding:0;margin:0}.feed-item{width:100%;overflow:hidden}.feed-item p{color:var(--color-text-subdued)}.feed-item:focus-visible{outline-offset:2px}.feed-item-thumb{height:700px;width:100%;overflow:hidden;position:relative}.feed-item-thumb img{transition:all 1s ease;height:700px;width:100%;object-fit:cover;object-position:center center}.feed-item-thumb-indicator{position:absolute;right:0;bottom:-130px;background:var(--color-text-default);color:var(--color-text-inverse-default);font-size:var(--typography-heading-size);line-height:var(--typography-heading-lh);padding:32px 40px;transition:all .3s ease}.feed-item-body{padding-top:24px;flex-direction:column;gap:4px;display:inline-flex;align-items:flex-start}.feed-item-body h2,.feed-item-body p{margin:0}.feed-item-body p{font-size:var(--typography-description-size);line-height:var(--typography-description-lh)}.feed-item-body h2 span{font-size:var(--typography-subheading-size);line-height:var(--typography-subheading-lh);position:relative;padding-bottom:2px;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0 2px;transition:background-size .3s}a:hover .feed-item-body h2 span{background-size:100% 2px}.feed-item:hover img{transform:scale(1.02)}.feed-item:focus-visible .feed-item-thumb-indicator,.feed-item:hover .feed-item-thumb-indicator{bottom:0}.feed-item:first-child{border-bottom:none;border-top:none!important}.feed-item:nth-child(n+2){width:calc(50% - 48px)}@media(max-width:1024px){.feed-item:nth-child(n+2){width:100%}}.experience-list{gap:0;overflow:hidden}.experience-item a{display:flex;justify-content:space-between;padding:16px 0;border-top:2px solid var(--color-background-border-default);font-size:var(--typography-body-size);line-height:var(--typography-body-lh);position:relative}.experience-item a:focus-visible{outline:none}.experience-item a:after,.experience-item a:before{content:"";position:absolute;width:0;height:2px;left:0;transition:all .3s ease;background-color:var(--color-background-border-hover)}.experience-item a:before{top:-2px}.experience-item a:after{bottom:-2px;z-index:1}.experience-item a:focus-visible:after,.experience-item a:focus-visible:before,.experience-item a:hover:after,.experience-item a:hover:before{width:100%}.experience-item:first-child{border-top:none}.experience-item:last-child{border-bottom:2px solid var(--color-background-border-default)}.experience-time{width:300px}.experience-role{flex-grow:4}.experience-company{flex-grow:0;transition:all .3s ease}.experience-indicator{position:absolute;right:-24px;transition:all .3s ease}.experience-item a:focus-visible .experience-indicator,.experience-item a:hover .experience-indicator{right:0}.experience-item a:focus-visible .experience-company,.experience-item a:hover .experience-company{margin-right:24px}.content{display:flex;flex-direction:column;gap:80px}footer{background:var(--color-background-subdued);margin-top:120px;font-size:20px}footer a{position:relative;display:inline-flex;overflow:hidden}footer a:before{bottom:0;content:"";width:0;height:1px;background:var(--color-text-default)}footer a:after,footer a:before{position:absolute;transition:all .3s ease}footer a:after{content:"↗";right:-8px;top:2px;font-size:14px}footer a:hover{display:inline-flex;overflow:visible}footer a:hover:before{width:100%}footer a:hover:after{right:-12px}.footer-content{padding-bottom:64px;padding-top:80px;flex-direction:column;gap:96px;width:100%}.footer-content,.footer-end{display:flex;justify-content:space-between}.footer-end{flex-direction:row;gap:80px}.footer-end p{margin:0}.footer-highlight{font-size:var(--typography-body-size);line-height:var(--typography-body-lh);display:flex;justify-content:space-between}@media(max-width:1024px){.footer-highlight{flex-direction:column;gap:32px;margin-bottom:16px}}.footer-links{list-style-type:none;display:flex;flex-direction:row;gap:24px;margin:0;padding:0}.button{background:var(--color-interaction-primary-default);display:flex;gap:8px;align-items:center;color:var(--color-text-inverse-default);padding:0 20px;height:56px;font-size:var(--typography-description-size);line-height:var(--typography-description-lh);font-weight:500;border:none;cursor:pointer;position:relative;overflow:hidden}.button-icon{position:absolute;left:0;transition:all .3s ease}.button:hover .button-icon{left:-24px}.icon-button{border-radius:1000px;border:none;background:none;cursor:pointer;color:var(--color-text-default);width:44px;height:44px;position:relative;display:flex;align-items:center;justify-content:center}.icon-button:hover{background-color:var(--color-background-hover)}.icon-button-label{position:absolute;background-color:var(--color-background-inverse-default);color:var(--color-text-inverse-default);padding:2px 4px;bottom:-22px;z-index:1;opacity:0;font-weight:600;transition:all .2s ease;font-size:var(--typography-caption-size);line-height:var(--typography-caption-lh);white-space:nowrap}.icon-button:focus-visible .icon-button-label,.icon-button:hover .icon-button-label{bottom:-24px;opacity:1;transition-delay:50ms}.post-date{font-size:var(--typography-description-size);line-height:var(--typography-description-lh);color:var(--color-text-subdued)}.post-title{border-bottom:3px solid var(--color-text-default);padding:8px 0;display:flex;gap:8px}.post-title h1{position:relative;display:flex;font-weight:550;align-items:center;justify-content:flex-start;flex-wrap:wrap;transition:font-size .2s ease}.post-title .icon-button{position:absolute;right:-40px;opacity:0;transition:all .3s ease}.post-title button:focus-visible,.post-title:hover button{right:-48px;opacity:1}.post-description{padding-top:16px;font-size:var(--typography-body-size);line-height:var(--typography-body-lh);color:var(--color-text-subdued);margin-bottom:40px;font-weight:400}.post-img{height:700px;overflow:hidden;background:var(--color-identity-green);margin:64px 0;position:relative}.post-img button{bottom:0;right:0;position:absolute}.post-img img{height:700px;width:100%;object-fit:cover;object-position:center center}.post-content{font-size:var(--typography-body-size);line-height:var(--typography-body-lh)}.post-content p{padding-bottom:16px;padding-top:16px}.post-content p:last-child{padding-bottom:0}.post-content h1,.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6,.post-content li,.post-content ol,.post-content p:not(:has(img)),.post-content ul{max-width:800px;margin:0 auto}.post-content h2{margin-top:32px;font-size:24px;font-weight:600}.post-content p:has(img){display:flex;gap:40px}.post-content p img{object-fit:contain;object-position:top left;flex-grow:1;min-height:100%;width:200px}.sticky{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--color-background-default)}nprogress{pointer-events:none}#nprogress .bar{background-color:var(--color-identity-yellow);position:fixed;z-index:2000;top:0;left:0;width:100%;height:4px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:none;opacity:1;transform:rotate(3deg) translateY(-4px)}@font-face{font-family:Uncut Sans;src:url(/_next/static/media/Uncut-Sans-Variable.ddac6b90.woff2);font-weight:100 900}@font-face{font-family:Georgia Fallback;src:local("Georgia");size-adjust:107%}@font-face{font-family:Arial Fallback;src:local("Arial");size-adjust:102%}:root{--color-gray-0:#f8f5f2;--color-gray-50:#e7e6e3;--color-gray-100:#d2d1d0;--color-gray-200:#a7a6a5;--color-gray-300:#7e7d7b;--color-gray-400:#5a5a58;--color-gray-500:#3f3f3d;--color-gray-600:#2b2c2a;--color-gray-700:#1d1e1c;--color-gray-800:#141513;--color-gray-900:#0e110e;--spacing-0:0px;--spacing-025:2px;--spacing-05:4px;--spacing-1:8px;--spacing-15:12px;--spacing-2:16px;--spacing-3:24px;--spacing-4:32px;--spacing-5:40px;--spacing-6:48px;--spacing-7:56px;--spacing-8:64px;--spacing-9:72px;--spacing-10:80px;--typography-font-family-display:"Uncut Sans";--typography-font-family:"Uncut Sans";--typography-font-family-fallback:"Georgia Fallback";--typography-font-family-display-fallback:"Arial Fallback";--color-identity-blue:#1379bc;--color-identity-yellow:#ea9325;--color-identity-green:#148f74;--color-identity-black:#0e120d;--color-background-default:var(--color-gray-0);--color-background-hover:var(--color-gray-50);--color-background-subdued:var(--color-gray-50);--color-background-border-default:var(--color-gray-100);--color-background-border-hover:var(--color-gray-900);--color-background-inverse-default:var(--color-gray-900);--color-background-inverse-hover:var(--color-gray-800);--color-text-default:var(--color-gray-900);--color-text-subdued:var(--color-gray-300);--color-text-inverse-default:var(--color-gray-0);--color-interaction-primary-default:var(--color-gray-900);--typography-body-size:1.25rem;--typography-body-lh:1.333;--typography-description-size:1.125rem;--typography-description-lh:1.3333;--typography-caption-size:0.75rem;--typography-caption-lh:1.1667;--typography-subheading-size:2rem;--typography-subheading-lh:1.25;--typography-heading-size:2.5rem;--typography-heading-lh:1.2;--typography-hero-size:7rem;--typography-hero-lh:1;--typography-weight-regular:400;--typography-weight-bold:700}@media(prefers-color-scheme:dark){:root{--color-identity-blue:#1379bc;--color-identity-yellow:#ea9325;--color-identity-green:#148f74;--color-identity-black:#0e120d;--color-background-default:var(--color-gray-900);--color-background-hover:var(--color-gray-800);--color-background-subdued:var(--color-gray-800);--color-background-border-default:var(--color-gray-600);--color-background-border-hover:var(--color-gray-0);--color-background-inverse-default:var(--color-gray-0);--color-background-inverse-hover:var(--color-gray-50);--color-text-default:var(--color-gray-0);--color-text-subdued:var(--color-gray-300);--color-text-inverse-default:var(--color-gray-900);--color-interaction-primary-default:var(--color-gray-0)}}@media only screen and (max-width:640px){:root{--typography-body-size:1.125rem;--typography-body-lh:1.3333;--typography-description-size:1rem;--typography-description-lh:1.25;--typography-caption-size:0.75rem;--typography-caption-lh:1.1667;--typography-subheading-size:1.5rem;--typography-subheading-lh:1.3333;--typography-heading-size:2rem;--typography-heading-lh:1.25;--typography-hero-size:3.5rem;--typography-hero-lh:1}}