@font-face{font-family:manrope;src:url(/_next/static/media/0bf677b970c21617-s.p.ttf) format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:manrope;src:url(/_next/static/media/4ca38baad642392e-s.p.ttf) format("truetype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:manrope;src:url(/_next/static/media/6b62d7564cb689e3-s.p.ttf) format("truetype");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:manrope;src:url(/_next/static/media/13505a668b16d4bc-s.p.ttf) format("truetype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:manrope;src:url(/_next/static/media/1e1728e131e71846-s.p.ttf) format("truetype");font-display:swap;font-weight:800;font-style:normal}@font-face{font-family:manrope Fallback;src:local("Arial");ascent-override:102.74%;descent-override:28.91%;line-gap-override:0.00%;size-adjust:103.76%}.__className_7e2254{font-family:manrope,manrope Fallback}.__variable_7e2254{--font-manrope:"manrope","manrope Fallback"}@font-face{font-family:montserratAlternates;src:url(/_next/static/media/df37a0e99aa13dd6-s.p.ttf) format("truetype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:montserratAlternates Fallback;src:local("Arial");ascent-override:79.39%;descent-override:20.59%;line-gap-override:0.00%;size-adjust:121.93%}.__className_3f84f2{font-family:montserratAlternates,montserratAlternates Fallback;font-weight:700;font-style:normal}.__variable_3f84f2{--font-montserrat-alternates:"montserratAlternates","montserratAlternates Fallback"}:root{--page-background:#f1f0ee;--ink:#0f0f0f;--paper:#ecece9;--surface:#f5f5f5;--surface-muted:#e9e9e6;--process-surface:#242426;--accent:#26b355;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:var(--page-background)}body{margin:0;overflow-x:clip;color:var(--ink);font-family:var(--font-manrope),Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}h1,h2,h3,p{margin:0}.page-shell{width:min(100%,1280px);margin:0 auto;overflow:visible;background:var(--page-background)}.hero-projects-section{position:relative;height:1605px}.portfolio-header{position:absolute;z-index:2;top:26px;right:24px;left:24px;height:17px;color:rgb(15 15 15/.4);font-weight:600}.portfolio-header,header[data-internal-topline]{font-size:16px;letter-spacing:1px;line-height:17px}header[data-internal-topline]{height:48px;padding:26px 24px 0;align-items:flex-start}header[data-internal-topline]>a{position:relative;height:17px;min-height:17px;line-height:17px}header[data-internal-topline]>a:before{position:absolute;inset:-13px -8px -14px;content:""}.header-link,.language-switch{position:absolute;top:0}.header-name{left:0}.header-email{left:338px}.header-resume{right:338px}.language-switch{right:0;display:flex;gap:8px;align-items:center}.language-switch .is-active{color:var(--ink)}.language-switch .is-disabled,.language-switch .is-separator{opacity:.5}.header-link,.language-switch span{transition:opacity .16s ease-out}.header-link:focus-visible,.header-link:hover{opacity:1;color:var(--ink)}.intro{position:absolute;inset:0}.activity-section>h2,.contact-section>h2,.intro h1,.process-card h3,.section-heading-row h2{font-family:var(--font-montserrat-alternates),Arial,sans-serif;font-weight:700}.intro h1{position:absolute;top:242px;left:24.39px;width:1107px;font-size:96px;letter-spacing:-3.36px;line-height:94.08px;white-space:nowrap}.split-text-character,.split-text-word{display:inline-block}.split-text-character{opacity:0;transform:translateY(.45em);transform-origin:center bottom}.fonts-ready .split-text-character{animation:split-text-reveal 1.05s cubic-bezier(.215,.61,.355,1) forwards}@keyframes split-text-reveal{to{opacity:1;transform:translateY(0)}}.intro-copy{position:absolute;top:493px;left:24px;width:588px;color:var(--ink);font-size:20px;font-weight:600;letter-spacing:.5px;line-height:32px}.career{position:absolute;top:499px;left:778px;width:478px;height:63px}.career-item{position:absolute;top:0}.career-item:first-child{left:0}.career-item:last-child{left:164px}.career-label{color:rgb(15 15 15/.4);font-size:16px;line-height:22px}.career-company,.career-label{font-weight:600;letter-spacing:1px;white-space:nowrap}.career-company{margin-top:6px;font-size:20px;line-height:28px;opacity:1}.career-dot{position:absolute;top:9px;left:76px;display:block;width:7px;height:7px}.project-grid{position:absolute;top:632px;right:24px;left:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:52px}.project-card{min-width:0;height:426px}.project-card-link{position:relative;z-index:0;display:block;min-width:0;border-radius:var(--radius);outline:0 solid transparent;transition:outline-color .16s ease-out,outline-width .16s ease-out}.project-card-link:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.project-image-wrap{position:relative;width:100%;height:352px;margin-inline:0;overflow:hidden;border-radius:var(--radius);transition:width .42s cubic-bezier(.22,1,.36,1),margin-left .42s cubic-bezier(.22,1,.36,1),margin-right .42s cubic-bezier(.22,1,.36,1)}.activity-image,.project-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;transition:transform .35s cubic-bezier(.2,0,0,1)}.project-image.is-zoomed{top:0;left:50%;width:auto;height:127.56%;max-width:none;transform:translateX(-50%)}@media (hover:hover) and (pointer:fine) and (min-width:800px){.project-card-link:focus-visible,.project-card-link:hover{z-index:2}.project-card-link:focus-visible .project-image-wrap,.project-card:hover .project-image-wrap{width:calc(100% + 16px);margin-inline:-8px}.activity-card:focus-within .activity-image-wrap,.activity-card:hover .activity-image-wrap{width:calc(100% + 16px);margin-inline:-8px}}.activity-meta,.card-title-row{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;margin-top:18px}.activity-meta h3,.card-title-row h2{min-width:0;font-size:20px;font-weight:600;letter-spacing:.5px;line-height:28px}.activity-meta time,.card-title-row time{flex:0 0 auto;margin-top:5px;font-size:16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.activity-meta time,.card-title-row time,.project-card>p{font-weight:600;letter-spacing:.5px;line-height:22px;opacity:.4}.project-card>p{margin-top:6px;font-size:16px}.process-section{position:relative;isolation:isolate;height:764px;color:var(--paper)}.process-section:before{position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:var(--ink);content:""}.activity-section>h2,.contact-section>h2,.section-heading-row h2{position:absolute}.activity-section>h2,.section-heading-row h2{font-size:64px;line-height:108.062px}.contact-section>h2{font-size:48px;line-height:59px}.process-heading-row h2{top:92px;left:24px;color:var(--page-background)}.process-heading-row>p{position:absolute;top:148px;right:25px;width:455px;color:var(--paper);font-size:20px;font-weight:600;letter-spacing:.5px;line-height:28px;opacity:.4;text-align:left}.process-grid{position:absolute;top:231px;left:24px;display:grid;grid-template-columns:repeat(4,292px);gap:21px}.process-card{position:relative;width:292px;height:450px;overflow:hidden;border-radius:var(--radius);text-align:center}.process-card:before{position:absolute;top:20px;left:0;width:100%;height:410px;border-radius:var(--radius);background:var(--process-surface);content:""}.process-card-link{display:block;width:292px;height:450px;border-radius:var(--radius);outline:0 solid transparent;transition:outline-color .16s ease-out,outline-width .16s ease-out}.process-card-link:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.process-card h3{position:absolute;top:255px;left:0;width:100%;font-size:32px;line-height:39px;white-space:nowrap}.process-card>p{position:absolute;top:321px;left:14px;width:264px;color:var(--paper);font-size:16px;font-weight:600;letter-spacing:.5px;line-height:22px;opacity:.4;transition:opacity .4s ease-out}.process-glyph{position:absolute;inset:0;width:292px;height:220px;color:rgb(236 236 233/.5)}.glyph-grid span,.glyph-weekly>span:not(.weekly-frame),.node{position:absolute;width:33px;height:33px;border:2px solid;border-radius:10px;transition:top .4s ease-out,left .4s ease-out}.glyph-whiteboard .node-accent{top:76px;left:129px;border-color:var(--paper);background:var(--paper)}.glyph-whiteboard .node-middle-left{top:125px;left:102px}.glyph-whiteboard .node-middle-right{top:125px;left:158px}.glyph-whiteboard .node-bottom-left{top:174px;left:73px}.glyph-whiteboard .node-bottom-center{top:174px;left:129px}.glyph-whiteboard .node-bottom-right{top:174px;left:185px}.glyph-three .glyph-frame{position:absolute;top:81px;left:88px;width:121px;height:121px;border:2px solid;border-radius:10px}.glyph-three .node-one{top:101px;left:108px}.glyph-three .node-two{top:101px;left:156px;border-color:var(--paper);background:var(--paper)}.glyph-three .node-three{top:149px;left:108px}.glyph-grid span:first-child,.glyph-grid span:nth-child(4),.glyph-grid span:nth-child(7){left:73px}.glyph-grid span:nth-child(2),.glyph-grid span:nth-child(5),.glyph-grid span:nth-child(8){left:129px}.glyph-grid span:nth-child(3),.glyph-grid span:nth-child(6),.glyph-grid span:nth-child(9){left:185px}.glyph-grid span:nth-child(-n+3){top:75px}.glyph-grid span:nth-child(n+4):nth-child(-n+6){top:124px}.glyph-grid span:nth-child(n+7){top:173px}.glyph-grid span.is-filled,.glyph-weekly span.is-filled{border-color:var(--paper);background:var(--paper)}.glyph-weekly .weekly-frame{position:absolute;top:88px;left:61px;width:57px;height:115px;border:2px solid;border-radius:10px;transition:width .4s ease-out}.process-card-link:focus-visible .process-card>p,.process-card-link:hover .process-card>p{opacity:1}.process-card-link:focus-visible .glyph-whiteboard .node-accent,.process-card-link:hover .glyph-whiteboard .node-accent{top:125px}.process-card-link:focus-visible .glyph-whiteboard .node-middle-left,.process-card-link:hover .glyph-whiteboard .node-middle-left{left:73px}.process-card-link:focus-visible .glyph-whiteboard .node-middle-right,.process-card-link:hover .glyph-whiteboard .node-middle-right{left:185px}.process-card-link:focus-visible .glyph-three .node-one,.process-card-link:hover .glyph-three .node-one{left:156px}.process-card-link:focus-visible .glyph-three .node-two,.process-card-link:hover .glyph-three .node-two{top:149px}.process-card-link:focus-visible .glyph-grid span.is-filled,.process-card-link:hover .glyph-grid span.is-filled{left:129px}.process-card-link:focus-visible .glyph-weekly .weekly-frame,.process-card-link:hover .glyph-weekly .weekly-frame{width:169px}.glyph-weekly>span:nth-child(2),.glyph-weekly>span:nth-child(5){left:73px}.glyph-weekly>span:nth-child(3),.glyph-weekly>span:nth-child(6){left:129px}.glyph-weekly>span:nth-child(4),.glyph-weekly>span:nth-child(7){left:185px}.glyph-weekly>span:nth-child(n+2):nth-child(-n+4){top:104px}.glyph-weekly>span:nth-child(n+5){top:154px}.activity-section{position:relative;height:680px}.activity-section>h2{top:92px;left:24px}.activity-grid{position:absolute;top:221px;left:24px;display:flex;align-items:flex-start}.activity-card{display:block;width:294px;min-width:0;border-radius:var(--radius);outline:0 solid transparent;transition:outline-color .16s ease-out,outline-width .16s ease-out}.activity-card:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.activity-card.is-wide{width:606px}.activity-card:nth-child(2){margin-left:19px}.activity-card:nth-child(3){margin-left:20px}.activity-image-wrap{position:relative;width:100%;height:352px;margin-inline:0;overflow:hidden;border-radius:var(--radius);transition:width .42s cubic-bezier(.22,1,.36,1),margin-left .42s cubic-bezier(.22,1,.36,1),margin-right .42s cubic-bezier(.22,1,.36,1)}.activity-video-trigger{position:absolute;inset:0;border-radius:inherit;outline:none}.activity-video-trigger:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.activity-video{object-fit:cover}.contact-section{position:relative;height:255px}.contact-section>h2{top:40px;left:24px}.contact-list{position:absolute;z-index:3;top:144px;left:24px;display:flex;gap:19px;align-items:center}.contact-button{position:relative;display:inline-flex;width:179px;height:66px;margin-inline:0;padding:15px 14px;gap:17px;align-items:center;justify-content:flex-start;overflow:visible;border:0;border-radius:var(--radius);background:transparent;font-size:20px;font-weight:600;letter-spacing:.5px;line-height:28px;white-space:nowrap;transition:transform .16s ease-out}.contact-button:before{position:absolute;z-index:0;inset:0;border-radius:inherit;background:#fff;content:"";transition:left .24s cubic-bezier(.22,1,.36,1),right .24s cubic-bezier(.22,1,.36,1)}.contact-button>span{position:relative;z-index:1}.contact-button:first-child{width:313px}.contact-button:nth-child(2){width:158px}@media (hover:hover) and (pointer:fine) and (min-width:800px){.contact-button:focus-visible:before,.contact-button:hover:before{left:-5px;right:-5px}}.contact-button[href]:active{transform:scale(.98)}.contact-button:disabled{cursor:default}.contact-icon{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border-radius:8px}.contact-icon img{display:block;width:24px;height:24px}.contact-button:nth-child(2) .contact-icon img{width:22px;height:22px}.contact-icon.is-dark{background:var(--ink)}.contact-icon.is-light{background:var(--surface-muted)}.portfolio-footer{display:flex;height:134px;padding:26px 24px 0;align-items:center;justify-content:space-between;color:rgb(15 15 15/.4);font-size:16px;font-weight:600;letter-spacing:1px;line-height:22px}.portfolio-footer-projects{display:inline-flex;gap:7px;align-items:center}.portfolio-footer-projects img{display:block;width:16px;height:16px}@media (max-width:799px){.page-shell{width:100%}.hero-projects-section{height:auto;padding:18px 16px 50px}.portfolio-header{position:relative;inset:auto;display:grid;height:54px;grid-template-columns:1fr auto;grid-template-rows:repeat(2,17px);row-gap:10px;font-size:11px;line-height:17px}header[data-internal-topline]{height:44px;padding:18px 16px 0;font-size:11px;letter-spacing:1px;line-height:17px}.header-link,.language-switch{position:static}.header-email,.header-resume{display:none}.language-switch{grid-row:1;grid-column:2;justify-self:end}.intro{position:relative;inset:auto}.intro h1{padding-top:45px;font-size:42px;line-height:1.06;white-space:normal}.intro h1,.intro-copy{position:relative;inset:auto;width:100%}.intro-copy{margin-top:26px;font-size:20px;letter-spacing:.3px;line-height:1.35}.intro-copy br{display:none}.career{position:relative;inset:auto;display:grid;width:100%;height:auto;margin-top:52px;grid-template-columns:.9fr 1.1fr;gap:18px}.career-item,.career-item:first-child,.career-item:last-child{position:relative;inset:auto;min-width:0}.career-company,.career-label{font-size:15px;letter-spacing:.3px;line-height:21px}.career-company{margin-top:4px;white-space:normal}.career-dot{top:7px;left:69px}.project-grid{position:relative;inset:auto;display:grid;margin-top:40px;grid-template-columns:1fr;gap:34px}.project-card{height:auto}.project-image-wrap{height:auto;aspect-ratio:606/352}.activity-meta,.card-title-row{margin-top:14px}.activity-meta h3,.card-title-row h2{font-size:17px;letter-spacing:0;line-height:24px}.activity-meta time,.card-title-row time{margin-top:2px;font-size:13px;line-height:20px}.project-card>p{margin-top:2px;font-size:13px;letter-spacing:0;line-height:19px}.process-section{height:auto;padding:50px 16px}.activity-section>h2,.contact-section>h2,.section-heading-row h2{position:static;font-size:42px;line-height:1.15}.process-heading-row>p{position:static;width:auto;margin-top:13px;font-size:13px;line-height:19px;text-align:left}.process-grid{position:static;display:grid;margin-top:40px;grid-template-columns:1fr;gap:16px}.process-card,.process-card-link{width:100%;height:190px}.process-card-link:nth-child(3),.process-card-link:nth-child(3) .process-card{height:200px}.process-card-link:nth-child(4),.process-card-link:nth-child(4) .process-card{height:199px}.process-card:before{top:0;height:100%}.process-card-link:focus-visible .process-card:before,.process-card-link:hover .process-card:before{top:0;height:100%}.process-card h3{top:50px}.process-card>p{top:106px;left:50%;transform:translateX(-50%)}.process-card-link:nth-child(3) .process-card>p{top:116px}.process-card-link:nth-child(4) .process-card>p{top:115px}.process-glyph{display:none}.activity-section{height:auto;padding:50px 16px 0}.activity-grid{position:static;display:grid;margin-top:30px;grid-template-columns:1fr;gap:36px}.activity-card,.activity-card.is-wide{width:100%}.activity-card:nth-child(2),.activity-card:nth-child(3){margin-left:0}.activity-image-wrap{height:auto;aspect-ratio:606/352}.activity-card:nth-child(2) .activity-video{object-position:center top}.contact-section{height:auto;padding:80px 16px}.contact-list{position:static;display:grid;margin-top:48px;gap:16px}.contact-button,.contact-button:first-child,.contact-button:nth-child(2){width:100%}.portfolio-footer{height:70px;padding:24px 16px;font-size:13px;letter-spacing:0;line-height:19px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.activity-image,.activity-image-wrap,.contact-button,.contact-button:before,.glyph-grid span,.glyph-weekly .weekly-frame,.node,.process-card-link,.process-card:before,.process-card>p,.project-image,.project-image-wrap{transition:none}.fonts-ready .split-text-character,.split-text-character{animation:none}.fonts-ready .split-text-character{opacity:1;transform:none}}