.Layout_layout__153oA{display:flex;flex-direction:column;min-height:100vh}.Layout_pageContent__DTzwn{position:relative}.Button_button__hiIbD{--key-color:hsl(var(--primary-hsl));--py:var(--space);--px:calc(var(--space) * 2);--expand:calc(var(--space) * 0.3);position:relative;display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--py) var(--px);line-height:1;text-align:center;border-radius:var(--radius-button);font-weight:var(--fontWeightBold);text-decoration:none;cursor:pointer;color:#fff;transition:all .2s ease-in-out;background:var(--key-color);border:1px solid hsl(from var(--key-color) h s calc(l * .8));box-shadow:0 2px 0 0 hsl(var(--primary-hsl)/.1)}.Button_button__hiIbD:hover{--pyHover:calc(var(--py) + var(--expand));--pxHover:calc(var(--px) + var(--expand));padding:var(--pyHover) var(--pxHover);margin:calc(var(--expand) * -1);border-color:hsl(from var(--key-color) h s calc(l * .4));box-shadow:0 4px 2px 0 hsl(var(--primary-hsl)/.05)}.Button_button__hiIbD.Button_secondary__kof5W{--key-color:hsl(from hsl(var(--primary-hsl)) h s calc(l + 20))}.Button_button__hiIbD:active{opacity:.8}.Button_button__hiIbD.Button_outline__ZlT8w{color:var(--key-color);background:hsl(var(--primary-hsl)/.05);border:1px solid var(--key-color)}.Button_button__hiIbD.Button_outline__ZlT8w:hover{background:hsl(var(--primary-hsl)/.08)}.Button_button__hiIbD.Button_textOnly__piNAE,.Button_button__hiIbD.Button_textOnly__piNAE:hover{color:var(--key-color);border:none;box-shadow:none;background:none;padding:0;margin:0}.Button_button__hiIbD.Button_textOnly__piNAE:hover{color:hsl(from var(--key-color) h s calc(l * .4))}.EmailTextCopy_email__QxTpv{cursor:default}.EmailTextCopy_copy__Nra0Q{cursor:pointer;transition:all .2s ease}.EmailTextCopy_copy__Nra0Q:hover{opacity:.8}.EmailTextCopy_copied__OL4u5,.EmailTextCopy_copy__Nra0Q{display:flex;align-items:center;gap:calc(var(--space-1) / 2)}.EmailTextCopy_copy__Nra0Q span{opacity:0;transition:all .2s ease}.EmailTextCopy_copy__Nra0Q:hover span{opacity:1}.Nav_nav__bi_vB{--duration:1s;--vertical-padding:var(--space-2);--drawer-bg-top:hsl(from hsl(var(--primary-hsl)) h s calc(l - 5));position:-webkit-sticky;position:sticky;top:0;z-index:var(--zElevateStrong);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .5s ease;background:rgba(var(--back-rgb),.9);border-bottom:1px solid transparent}.Nav_nav__bi_vB:hover{background:rgba(var(--back-rgb),1)}.Nav_nav__bi_vB.Nav_isSticky__OGlk1{box-shadow:0 0 10px 0 rgba(0,0,0,.1);border-color:var(--grid-line-color)}.Nav_navContent__gickw{transition:padding .5s ease;padding-top:var(--vertical-padding);padding-bottom:var(--vertical-padding)}.Nav_name__JlPvn{color:inherit;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;line-height:1.2;border:none}.Nav_name__JlPvn:hover{opacity:.6}@media screen and (min-width:420px){.Nav_name__JlPvn{gap:.5em;flex-direction:row}}.Nav_status__6shVr{color:var(--green)}.Nav_statusBeacon__VApwI{--size:10px;--beaconTime:2s;position:relative;display:inline-block;margin-right:.5rem;width:var(--size);height:var(--size);border-radius:var(--size);background-color:currentColor;animation:Nav_ping__sTBmr var(--beaconTime) ease infinite}@keyframes Nav_ping__sTBmr{50%{transform:scale(1)}80%{transform:scale(.8)}to{transform:scale(1)}}.Nav_statusBeacon__VApwI:after{--sizePing:40px;content:"";position:absolute;display:block;left:50%;top:50%;opacity:0;transform:translate3d(-50%,-50%,0);width:var(--size);height:var(--size);border-radius:var(--sizePing);background-color:currentColor;animation:Nav_pingBeacon__JhhyU var(--beaconTime) ease 1.5s infinite}@keyframes Nav_pingBeacon__JhhyU{0%{opacity:0}20%{opacity:.3;width:var(--size);height:var(--size)}80%{width:var(--sizePing);height:var(--sizePing)}to{opacity:0}}@media screen and (max-width:420px){.Nav_status__6shVr{display:none}}.Nav_drawer__Q5lH4{color:#fff;background:linear-gradient(0deg,hsl(var(--primary-hsl)),var(--drawer-bg-top));overflow:hidden;max-height:0;animation:Nav_closeDrawer__OEZxx calc(var(--duration)/2) ease forwards}.Nav_drawer__Q5lH4 a{color:currentColor}.Nav_drawer__Q5lH4 a:hover{color:currentColor;opacity:.8}.Nav_drawer__Q5lH4.Nav_drawerOpen__YZf9z{animation:Nav_openDrawer__E6zx4 1s ease calc(var(--duration)/2) forwards}@keyframes Nav_closeDrawer__OEZxx{0%{max-height:100px}to{max-height:0}}@keyframes Nav_openDrawer__E6zx4{0%{max-height:0}to{max-height:100px}}.Nav_contactText__PoePp{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;opacity:0}@media screen and (min-width:500px){.Nav_contactText__PoePp{flex-direction:row;gap:var(--space-1);align-items:center;justify-content:center}}.Nav_drawer__Q5lH4.Nav_drawerOpen__YZf9z .Nav_contactText__PoePp{animation:Nav_fadeInText__PXXOX calc(var(--duration)/2) ease calc(var(--duration) * .8) forwards}@keyframes Nav_fadeInText__PXXOX{0%{opacity:0}to{opacity:1}}.Nav_buttonBox__1xrGV{position:relative}.Nav_buttonBox__1xrGV:after{--buttonMoveOnActive:0px;--buffer:5%;content:"";display:block;position:absolute;left:50%;transform:translateX(-50%);bottom:calc(100% - var(--buttonMoveOnActive));width:1px;height:calc(var(--vertical-padding) + var(--buttonMoveOnActive) + var(--buffer));background:linear-gradient(0deg,hsl(var(--primary-hsl)) 20%,transparent 40%);background-position:0 0;background-size:100% 400%;z-index:-1}.Nav_navContact__eZDqL.Nav_contactOpen__Q688Q .Nav_buttonBox__1xrGV:after{animation:Nav_fillLine__ll0Uj var(--duration) ease forwards}@keyframes Nav_fillLine__ll0Uj{0%{background-position:0 0}to{background-position:0 100%}}.Nav_navContact__eZDqL.Nav_contactOpen__Q688Q .Nav_iconX__yDt85{animation:Nav_spin__qsote var(--duration) ease}@keyframes Nav_spin__qsote{0%{transform:rotate(0deg)}to{transform:rotate(180deg)}}.SectionOverline_overline__eB6o5{position:absolute;top:0;left:50%;transform:translateX(-50%)}.SectionOverline_text__MraAF{font-size:2.4rem;white-space:nowrap;background:#fff;padding:.2rem 1rem;position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%)}.Section_section__oGKuG{display:flex;flex-direction:column}.Section_content__FMJME{padding-bottom:calc(var(--space-standard) * 2)}.Section_header__LCYvT .Section_content__FMJME{padding-top:calc(var(--space-standard) * 3);padding-bottom:var(--space-standard)}.Section_description__eicYz{text-align:center;opacity:.6;max-width:80%;margin:0 auto;margin-top:var(--space-1);text-wrap:pretty}.Section_dark__kdDE0{background:#000;color:#777;--grid-line-color:#141414}@media screen and (min-width:500px){.Section_description__eicYz{margin-top:calc(var(--space-standard) * -.2)}}.CardAbout_about__mIyRl{display:flex;justify-content:center;gap:var(--space-4);align-items:center;flex-direction:column-reverse;color:#e6e6e6}.CardAbout_aboutInfo__xlP4z{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:var(--space-5);font-size:1.8rem;max-width:50ch;z-index:1}.CardAbout_photoContainer__1X4NC{position:relative;line-height:0}.CardAbout_photoBacklight__AiRcI{position:absolute;bottom:0;left:60%;transform:translateX(-50%);width:500%;height:180%;z-index:0;background:radial-gradient(#262626,transparent 60%);background-position:top;background-repeat:no-repeat;background-size:100% 200%}.CardAbout_photo__lcJ9a{position:relative}.CardAbout_photoContainer__1X4NC{transform:translateX(-10%);border-radius:0;max-width:80%}@media screen and (min-width:1000px){.CardAbout_about__mIyRl{flex-direction:row}.CardAbout_aboutInfo__xlP4z{padding:var(--space-5)}.CardAbout_photoContainer__1X4NC{transform:none;position:relative;align-self:flex-end}}.Footer_aboutSection___agC8{background:linear-gradient(0deg,#080808,#000);overflow:hidden}.Footer_aboutSection___agC8 .wrapper{padding-bottom:0}.Footer_footerSection__wSMrE{display:flex;flex-direction:column;flex-grow:1}.Footer_signatureContainer__saX9b{grid-area:signature;display:flex;align-items:center;align-self:center}.Footer_copyright__f0MGB{grid-area:copyright;display:flex;align-items:center;justify-content:flex-end;align-self:flex-end}.Footer_icons__vb_4S{grid-area:icons;display:grid;justify-content:space-between;grid-template-columns:repeat(4,1fr);grid-gap:var(--space-3);gap:var(--space-3);padding-bottom:var(--space-10)}.Footer_icons__vb_4S a{position:relative;display:inline-block;line-height:0;transition:all .2s ease-in-out;background:linear-gradient(0deg,hsl(from hsl(var(--primary-hsl)) h s 10%),hsl(from hsl(var(--primary-hsl)) h s 5%));border:1px solid hsl(from hsl(var(--primary-hsl)) h s 30%);padding:6px;border-radius:12px}.Footer_icons__vb_4S svg{width:100%}.Footer_iconLabel__0fe_h{position:absolute;left:50%;transform:translateX(-50%);line-height:1.2;bottom:-2.2rem;font-size:12px;color:#555;white-space:nowrap}.Footer_inner__Tbo9F{display:grid;justify-content:space-between;grid-gap:var(--space-2);gap:var(--space-2);padding-top:var(--space-10);grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto;grid-template-areas:"icons icons icons" "signature signature copyright"}.Footer_signatureContainer__saX9b{color:#333}.Footer_emoji__dZspN{cursor:default}.Footer_emoji__dZspN>:hover{display:inline-block;animation:Footer_shake__rq_AZ 1s ease}@keyframes Footer_shake__rq_AZ{0%{transform:rotate(0deg)}20%{transform:rotate(10deg)}60%{transform:rotate(-10deg)}to{transform:rotate(0deg)}}@media screen and (min-width:550px){.Footer_inner__Tbo9F{align-items:flex-end;flex-direction:row;justify-content:space-between;grid-template-columns:1fr 1fr auto;grid-template-areas:"signature copyright icons"}.Footer_copyright__f0MGB{align-self:center}.Footer_icons__vb_4S{gap:0;padding-bottom:0}.Footer_icons__vb_4S a{border:none;border-radius:none;background:none;padding:calc(var(--space-1) / 2) var(--space-1)}.Footer_icons__vb_4S a:hover{transform:scale(1.2)}.Footer_iconLabel__0fe_h{bottom:auto;top:-1.2rem;padding:.2em .4em;border:1px solid #fff;color:#151515;background:#fff;border-radius:100px;transition:all .2s ease;opacity:0}.Footer_icons__vb_4S a:hover .Footer_iconLabel__0fe_h{top:-2rem;opacity:1}}.Notes_notes__KLhot{scroll-margin-top:var(--space-8)}.Note_note__Lyku7{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:minmax(100px,200px) minmax(300px,1fr)}@media screen and (max-width:550px){.Note_note__Lyku7{gap:var(--space-2);grid-template-columns:1fr}}.ImageWell_imageWellWrapper__Uw_rE{position:relative}.ImageWell_imageWell__rJ1qw{display:flex;overflow:hidden;gap:var(--space-standard);padding:var(--space-standard);border-radius:var(--radius);border:1px solid transparent;background:#eee}@media screen and (max-width:600px){.ImageWell_imageWell__rJ1qw{flex-direction:column;align-items:stretch}}.ImageWell_imageWell__rJ1qw.ImageWell_center__VmJc9{align-items:center}.ImageWell_imageWell__rJ1qw.ImageWell_grayscale__VE0GJ{filter:saturate(0)}.ImageWell_gridPaper__xOTiz{background:url(/images/grid-pattern-light.svg) 50% #eee;background-size:8px}.ImageWell_kalimbaDark__atoOw{background:radial-gradient(#151515,#050505);box-shadow:inset 0 0 80px 10px #000}.ImageWell_bridgeGradient__BtsJI{background:linear-gradient(240deg,#0038ff,#a07fff)}.ImageWell_elevateGradient__ECRoX{background:linear-gradient(240deg,#772ac9,#5e1ecc)}.ImageWell_white__xLqOq{background:#fff;border-color:rgba(var(--front-rgb),.05)}.ImageWell_custom__o2ZkL{background:var(--bgCustom)}.Modal_modalContainer__cvQwh{z-index:var(--zModal);left:-200vw;opacity:0;padding-left:var(--space-1);padding-right:var(--space-1);transition:opacity .3s ease-in-out}.Modal_modalContainer__cvQwh.Modal_visible__tANlj{left:0;opacity:1}.Modal_modalContainer__cvQwh.Modal_fading__T3LVk{left:0;opacity:0}.Modal_modalContainer__cvQwh,.Modal_overlay__y1m8v{position:fixed;top:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center}.Modal_overlay__y1m8v{cursor:pointer;transition:all .2s ease-in-out;background:hsla(0,0%,100%,.9)}.Modal_modalContainer__cvQwh.Modal_blur__BwIse .Modal_overlay__y1m8v{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.Modal_modalContainer__cvQwh.Modal_blur__BwIse .Modal_overlay__y1m8v:hover{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.Modal_overlay__y1m8v:hover{background:hsla(0,0%,100%,.8)}.Modal_modal__V06ks{position:relative;border-radius:var(--radius-lg);transition:transform .3s ease-in-out;overflow-y:auto;max-height:100%}.Modal_modalContainer__cvQwh.Modal_visible__tANlj.Modal_fading__T3LVk .Modal_modal__V06ks,.Modal_modal__V06ks{transform:translateY(var(--space-3))}.Modal_modalContainer__cvQwh.Modal_visible__tANlj .Modal_modal__V06ks{transform:translateY(0)}.Modal_content__eQP31{display:flex;flex-direction:column;align-items:center;padding:var(--space-1);gap:var(--space-3);text-align:center}.Modal_close__DoyCi{position:absolute;top:calc(var(--space-1)/2);right:calc(var(--space-1)/2);cursor:pointer;line-height:var(--space-1);padding:var(--space-1);transition:all .3s ease-in-out;opacity:.6}.Modal_close__DoyCi:hover{opacity:1}.Modal_close__DoyCi:active{transform:scale(.95)}@media screen and (min-width:1000px){.Modal_modalContainer__cvQwh{padding-left:var(--space-8);padding-right:var(--space-8)}}.Image_imageWrapper__FgcOi{position:relative;display:flex;flex-direction:column;line-height:0;align-items:center;justify-content:center;border-radius:var(--radius);gap:var(--space-1)}.Image_imageWrapper__FgcOi img{border-radius:var(--radius);max-width:100%}.Image_imageWrapper__FgcOi.Image_br-0__7wIf3 img{border-radius:0}.Image_imageWrapper__FgcOi.Image_border__eezL9 img{border:1px solid rgba(0,0,0,.1)}.Image_caption__kzrrY{line-height:1.3;flex-shrink:0;text-align:center;text-wrap:pretty;margin-bottom:1rem;font-size:14px;max-width:90ch;color:#777}.modal .Image_caption__kzrrY{color:#fff;background-color:rgba(0,0,0,.8);font-size:16px;margin:0;padding:var(--space-2) var(--space-3);border-radius:100px}.Image_zoomIndicator___xYoR{display:none;position:absolute;top:var(--space-1);right:var(--space-1);padding:var(--space-1);opacity:.5;cursor:pointer;border-radius:100px;color:#555}@media screen and (min-width:1200px){.Image_zoomIndicator___xYoR{display:block}}.Image_zoomIndicator___xYoR,.Image_zoomIndicator___xYoR *{transition:all .2s ease}.Image_zoomIndicator___xYoR svg{mix-blend-mode:difference}.Image_imageWrapper__FgcOi:hover .Image_zoomIndicator___xYoR{opacity:1;background-color:hsla(0,0%,100%,.6)}.Image_imageWrapper__FgcOi:hover .Image_zoomIndicator___xYoR:hover{background-color:hsla(0,0%,100%,.9)}.Image_imageWrapper__FgcOi:hover .Image_zoomIndicator___xYoR svg{color:#000;mix-blend-mode:normal}.Image_zoomIndicator___xYoR:hover svg{transform:scale(1.1)}.Image_lightboxImage__ABss5{border-radius:var(--radius)}.Tags_tags__YBq49{flex-wrap:wrap;max-width:340px}.Tags_tag__x0aU9{font-size:1.2rem;padding:3px 6px;line-height:1.2;border-radius:var(--radius);color:hsl(from hsl(var(--text-hsl)) h s 30%);border:1px solid hsl(from hsl(var(--text-hsl)) h s 85%/.8)}.ProjectHeader_description__IPx5Z{max-width:60ch}