.AboutCode_code__x0vCN{white-space:normal}.AboutCode_line__27NrJ{display:block;white-space:pre-wrap;padding-left:4ch;text-indent:-4ch}.AboutCode_str__jwAn_{white-space:nowrap}.AboutCode_armed__Bs4wp .AboutCode_line__27NrJ{opacity:0;clip-path:inset(0 100% 0 0)}[data-bp=built] .AboutCode_armed__Bs4wp .AboutCode_line__27NrJ{animation:AboutCode_line-in__Z1KZk .38s cubic-bezier(.22,1,.36,1) forwards;animation-delay:calc(.25s + var(--i, 0) * 70ms)}@keyframes AboutCode_line-in__Z1KZk{0%{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}@media (prefers-reduced-motion:reduce){.AboutCode_armed__Bs4wp .AboutCode_line__27NrJ,[data-bp=built] .AboutCode_armed__Bs4wp .AboutCode_line__27NrJ{opacity:1;clip-path:none;animation:none}}.CommandPalette_backdrop__FANlV{animation:CommandPalette_fade-in__3Z5QB .16s ease-out}.CommandPalette_panel__AKFCX{animation:CommandPalette_panel-in__Wp_Tb .2s cubic-bezier(.22,1,.36,1)}@keyframes CommandPalette_fade-in__3Z5QB{0%{opacity:0}}@keyframes CommandPalette_panel-in__Wp_Tb{0%{opacity:0;transform:translateY(8px) scale(.985)}}.ContactForm_form__hb8bo{position:relative}.ContactForm_fields__GRfQU{display:grid;gap:1.5rem}.ContactForm_field__tGvlK{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}.ContactForm_prompt__XK5b2{display:flex;align-items:center;gap:.5rem;padding-bottom:.25rem;font-size:.75rem;line-height:1.5rem;letter-spacing:.14em;text-transform:uppercase;color:#a3a9b8}.ContactForm_key__SNF2W{color:inherit}.ContactForm_chev__2wbc3{position:relative;color:#a3a9b8}.ContactForm_opt__WwFfc{margin-left:auto;font-size:.6875rem;letter-spacing:.02em;text-transform:none;color:#a3a9b8}.ContactForm_field__tGvlK:focus-within .ContactForm_key__SNF2W{color:#e9ecf4}.ContactForm_field__tGvlK:focus-within .ContactForm_chev__2wbc3{color:#ff5a2e}.ContactForm_field__tGvlK:focus-within .ContactForm_chev__2wbc3:after{content:"";position:absolute;left:calc(100% + .3em);top:50%;width:.55em;height:1em;transform:translateY(-50%);background:#ff5a2e;animation:ContactForm_caret-blink__4yLH1 1s steps(1) infinite}@keyframes ContactForm_caret-blink__4yLH1{0%{opacity:1}50%{opacity:0}to{opacity:1}}[data-bp=built] .ContactForm_field__tGvlK,[data-bp=built] .ContactForm_submitRow__emkbt{animation:ContactForm_field-in__ci5iw .45s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(1.6s + var(--i, 0) * 90ms)}@keyframes ContactForm_field-in__ci5iw{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){[data-bp=built] .ContactForm_field__tGvlK,[data-bp=built] .ContactForm_submitRow__emkbt{animation:none!important}.ContactForm_field__tGvlK:focus-within .ContactForm_chev__2wbc3:after{animation:none!important;opacity:1!important}}.ContactForm_input__21RUv{display:block;width:100%;min-width:0;margin:0;border:0;border-bottom:1px solid #646a78;border-radius:0;background:transparent;padding:.5rem 0 calc(.5rem + 1px);font:inherit;font-size:1rem;line-height:1.5rem;color:#e9ecf4;caret-color:#ff5a2e;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ContactForm_input__21RUv::-moz-placeholder{color:rgb(163 169 184/.8);opacity:1}.ContactForm_input__21RUv::placeholder{color:rgb(163 169 184/.8);opacity:1}.ContactForm_input__21RUv:focus-visible{outline:2px solid transparent;outline-offset:2px;border-bottom:2px solid #ff5a2e;padding-bottom:.5rem}.ContactForm_input__21RUv[aria-invalid=true]{border-bottom-color:#ff5a2e}.ContactForm_area___EQVG{min-height:8.5rem;resize:vertical}.ContactForm_input__21RUv:-webkit-autofill,.ContactForm_input__21RUv:-webkit-autofill:focus,.ContactForm_input__21RUv:-webkit-autofill:hover{-webkit-text-fill-color:#e9ecf4;caret-color:#ff5a2e;box-shadow:inset 0 0 0 1000px #0e1220}.ContactForm_error__HN3Nc{font-size:.75rem;line-height:1.25rem;color:#ff5a2e}.ContactForm_error__HN3Nc:not(:empty){margin-top:.5rem}@media (min-width:640px){.ContactForm_fields__GRfQU{gap:1.25rem}.ContactForm_field__tGvlK{grid-template-columns:7.5rem minmax(0,1fr);-moz-column-gap:1rem;column-gap:1rem}.ContactForm_prompt__XK5b2{position:relative;padding-block:.5rem}.ContactForm_opt__WwFfc{position:absolute;left:0;top:2.25rem;margin-left:0;line-height:1rem}.ContactForm_error__HN3Nc{grid-column:2}}.ContactForm_hp__3U1Th{position:absolute;left:0;bottom:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ContactForm_submit___KpJT[aria-disabled=true]{cursor:progress;opacity:.7}.ContactForm_arrow___Bood{transition:transform .3s cubic-bezier(.22,1,.36,1)}.ContactForm_mail__rCis6{color:#e9ecf4;text-decoration-line:underline;text-decoration-color:rgb(163 169 184/.6);text-decoration-thickness:1px;text-underline-offset:4px;overflow-wrap:anywhere}@media (hover:hover) and (pointer:fine){.ContactForm_submit___KpJT:not([aria-disabled=true]):hover .ContactForm_arrow___Bood{transform:translateX(3px)}.ContactForm_mail__rCis6:hover{text-decoration-color:#e9ecf4}}.CopyEmail_copy__op7i1{display:inline-flex;height:2.5rem;width:2.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;border:1px solid rgb(var(--stage-line));color:rgb(var(--stage-muted))}.CopyEmail_copy__op7i1[data-copied=true]{color:rgb(var(--stage-accent))}@media (hover:hover) and (pointer:fine){.CopyEmail_copy__op7i1:hover{border-color:rgb(var(--stage-text)/.45);color:rgb(var(--stage-text))}}.Hero_hero__gsKVy{--ease:cubic-bezier(0.22,1,0.36,1);--rule:rgb(255 255 255/0.4);min-height:100vh;min-height:100svh;background-color:#1b3fa8}.Hero_hero__gsKVy :focus-visible{outline-color:#fff}.Hero_sheet__MpNlC{--cell:80px;--grid:rgb(255 255 255/0.05);position:absolute;inset:0;z-index:0;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}@media (min-width:640px){.Hero_sheet__MpNlC{--cell:64px;--grid:rgb(255 255 255/0.07)}}.Hero_grid__zEKXA,.Hero_grid__zEKXA:after,.Hero_grid__zEKXA:before,.Hero_spot___iVvK{position:absolute;inset:0;background-size:var(--cell) var(--cell);background-position:calc(50% + var(--cell) / 2) 0}.Hero_grid__zEKXA:after,.Hero_grid__zEKXA:before{content:""}.Hero_grid__zEKXA:before{background-image:linear-gradient(to right,var(--grid) 1px,transparent 1px)}.Hero_grid__zEKXA:after{background-image:linear-gradient(to bottom,var(--grid) 1px,transparent 1px)}html:not(.bp-deployed) .Hero_grid__zEKXA:before{animation:Hero_bpGridV__Ebbnq .9s var(--ease-out) both}html:not(.bp-deployed) .Hero_grid__zEKXA:after{animation:Hero_bpGridH__XOJJV .9s var(--ease-out) both}@keyframes Hero_bpGridV__Ebbnq{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes Hero_bpGridH__XOJJV{0%{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}.Hero_spot___iVvK{display:none}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.Hero_spot___iVvK{display:block;opacity:0;transition:opacity .6s ease;background-image:linear-gradient(90deg,rgb(255 255 255/.06) 1px,transparent 0),linear-gradient(180deg,rgb(255 255 255/.06) 1px,transparent 0);-webkit-mask-image:radial-gradient(circle 300px at var(--spotx,50%) var(--spoty,50%),#000,transparent);mask-image:radial-gradient(circle 300px at var(--spotx,50%) var(--spoty,50%),#000,transparent)}.Hero_hero__gsKVy[data-spot] .Hero_spot___iVvK{opacity:1}}.Hero_arc__p8Ieh{position:absolute;right:calc(max(0px, (100% - 76rem) / 2) + 3rem);bottom:0;display:none;width:360px;height:360px;color:rgb(255 255 255/.14)}@media (min-width:1280px) and (min-height:820px){.Hero_arc__p8Ieh{display:block}}.Hero_lines__dG68Q{overflow:visible;fill:none;stroke:currentColor;stroke-width:1}.Hero_crisp__JHIr_{shape-rendering:crispEdges}.Hero_stage__H1zUn{--fs:clamp(3rem,19vw,6rem)}@media (min-width:640px){.Hero_stage__H1zUn{--fs:clamp(3rem,12vw,9.5rem)}}.Hero_nameBlock__iy6Uh{position:relative;width:-moz-fit-content;width:fit-content;max-width:100%}.Hero_name__62uoU{margin:0;font-family:var(--font-display),system-ui,sans-serif;font-size:var(--fs);font-weight:800;line-height:.94;letter-spacing:-.025em;text-transform:uppercase;color:#fff}.Hero_word__l52dZ{display:block}@media (min-width:640px){.Hero_name__62uoU{line-height:.9;white-space:nowrap}.Hero_word__l52dZ{display:inline}}.Hero_nameTwin__Hm9Ip{position:absolute;inset:0;color:#1b3fa8;-webkit-text-stroke:3px #fff;paint-order:stroke fill;opacity:0;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.Hero_dim__E9QqR{position:relative;height:15px;margin-bottom:calc(var(--fs) * .06);color:var(--rule)}.Hero_dimRule__mPQ9v{position:absolute;inset:0;width:100%;height:100%}.Hero_dimEnd__VX9Cl{position:absolute;top:0;width:15px;height:15px}.Hero_dimEndL__mJrJ6{left:-7.5px}.Hero_dimEndR__2Vl2t{right:-7.5px}.Hero_baseline__UZ2RI{display:block;width:calc(100% + .75rem);height:1px;margin-top:calc(var(--fs) * .14);margin-left:-.75rem;color:var(--rule)}.Hero_cross__FHAsN{width:15px;height:15px;flex-shrink:0}.Hero_mask__V2a9H{padding-bottom:.3em;margin-bottom:-.3em}.Hero_maskCta__PWNx3{padding:8px;margin:-8px}html:not(.bp-deployed) .Hero_maskCta__PWNx3,html:not(.bp-deployed) .Hero_mask__V2a9H{overflow:hidden}@keyframes Hero_bpMaskRise__kHfw6{0%{opacity:0;transform:translateY(110%)}to{opacity:1;transform:none}}@media (hover:hover) and (pointer:fine){html:not(.rm) .Hero_grid__zEKXA{translate:calc(var(--px, 0) * 4px) calc(var(--py, 0) * 4px - var(--sy, 0) * 12px);transition:translate .4s var(--ease-out)}html:not(.rm) .Hero_atNotesBottom__GdSqK,html:not(.rm) .Hero_atNotesTop__JDpBS{translate:calc(var(--px, 0) * 6px) calc(var(--py, 0) * 6px);transition:translate .4s var(--ease-out)}html:not(.rm) .Hero_nameBlock__iy6Uh{translate:calc(var(--px, 0) * 2px) calc(var(--py, 0) * 2px - var(--sy, 0) * 6px);transition:translate .4s var(--ease-out)}}@keyframes Hero_bpDraw__XIzIP{0%{stroke-dasharray:1 1;stroke-dashoffset:1}to{stroke-dasharray:1 1;stroke-dashoffset:0}}@keyframes Hero_bpFade__zf86k{0%{opacity:0}to{opacity:1}}@keyframes Hero_bpUnveil__CpK9t{0%{opacity:1}to{opacity:0}}@keyframes Hero_bpLive__4zHwc{0%{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:none}}.Hero_atDim__lKdtS{--at:0.05s;--dur:0.55s}.Hero_atBase__TiOGq{--at:0.12s;--dur:0.75s}.Hero_atArc__l_ZSP{--at:0.08s;--dur:1.05s}.Hero_atCross__dHBJH{--at:0.3s;--dur:0.45s}.Hero_atRing__sH2qU{--at:0.42s;--dur:0.5s}.Hero_atTicks__Z1kHY{--at:0.45s;--dur:0.3s}.Hero_atNotesTop__JDpBS{--at:1.05s;--dur:0.5s}.Hero_atNotesBottom__GdSqK{--at:1.15s;--dur:0.5s}.Hero_atRole__UjdLM{--at:0.8s}.Hero_atStatement__7gg3a{--at:0.89s}.Hero_atMeta__SXPR8{--at:0.98s}.Hero_atCta__7IX_N{--at:1.07s}html:not(.bp-deployed) .Hero_draw__2QLov{animation-name:Hero_bpDraw__XIzIP;animation-duration:var(--dur,.6s);animation-timing-function:var(--ease);animation-delay:var(--at,0s);animation-fill-mode:backwards}html:not(.bp-deployed) .Hero_fade__e_G3u{animation-name:Hero_bpFade__zf86k;animation-duration:var(--dur,.5s);animation-timing-function:ease;animation-delay:var(--at,0s);animation-fill-mode:backwards}html:not(.bp-deployed) .Hero_maskInner__VW5hU{animation-name:Hero_bpMaskRise__kHfw6;animation-duration:.6s;animation-timing-function:var(--ease-out);animation-delay:var(--at,.8s);animation-fill-mode:backwards}html:not(.bp-deployed) .Hero_nameTwin__Hm9Ip{animation-name:Hero_bpUnveil__CpK9t;animation-duration:.55s;animation-timing-function:cubic-bezier(.45,0,.25,1);animation-delay:.3s;animation-fill-mode:backwards}html:not(.bp-deployed) .Hero_live__GPTWv{animation-name:Hero_bpLive__4zHwc;animation-duration:.4s;animation-timing-function:var(--ease);animation-delay:.86s;animation-fill-mode:backwards}@media (prefers-reduced-motion:reduce){.Hero_draw__2QLov,.Hero_fade__e_G3u,.Hero_grid__zEKXA:after,.Hero_grid__zEKXA:before,.Hero_live__GPTWv,.Hero_maskInner__VW5hU,.Hero_nameTwin__Hm9Ip{animation:none!important}}.GitHubSection_repo__MPlkv{position:relative}.GitHubSection_repo__MPlkv:before{content:"";position:absolute;inset:-1px;border:1px solid rgb(var(--stage-text)/.42);border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .3s cubic-bezier(.22,1,.36,1)}.GitHubSection_stretched__RMexQ:after{content:"";position:absolute;inset:-1px;border-radius:6px}.GitHubSection_stretched__RMexQ:focus-visible{outline:none}.GitHubSection_stretched__RMexQ:focus-visible:after{outline:2px solid rgb(var(--stage-accent));outline-offset:4px}.GitHubSection_arrow__TVhHi{transition:transform .3s cubic-bezier(.22,1,.36,1)}.GitHubSection_repo__MPlkv:focus-within .GitHubSection_arrow__TVhHi{transform:translate(2px,-2px)}.GitHubSection_hit__PeJoB{fill:transparent}.GitHubSection_bar__Psio8{fill:rgb(var(--stage-muted))}.GitHubSection_barLatest__YRT2v{fill:rgb(var(--stage-accent))}.GitHubSection_zero__oXtMq{fill:rgb(var(--stage-muted)/.55)}.GitHubSection_barLatest__YRT2v,.GitHubSection_bar__Psio8{transform-box:fill-box;transform-origin:50% 100%}@media (prefers-reduced-motion:no-preference){[data-bp=built] .GitHubSection_barLatest__YRT2v,[data-bp=built] .GitHubSection_bar__Psio8{animation:GitHubSection_barGrow__lCpS1 .5s var(--ease-out) both;animation-delay:calc(.2s + var(--bar, 0) * 12ms)}}@keyframes GitHubSection_barGrow__lCpS1{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@media (hover:hover) and (pointer:fine){.GitHubSection_repo__MPlkv:hover:before{opacity:1}.GitHubSection_repo__MPlkv:hover .GitHubSection_arrow__TVhHi{transform:translate(2px,-2px)}.GitHubSection_week__805Ev:hover .GitHubSection_hit__PeJoB{fill:rgb(var(--stage-text)/.07)}}.Contact_cmd__SE9bE{display:inline-block;white-space:nowrap;vertical-align:top}[data-bp=built] .Contact_cmd__SE9bE{animation:Contact_type__cQIrx .8s steps(var(--chars,22)) .45s both}[data-bp=built] .Contact_connected__xOFnz{animation:Contact_appear__qsTcG .45s cubic-bezier(.22,1,.36,1) 1.4s both}@keyframes Contact_type__cQIrx{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes Contact_appear__qsTcG{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){[data-bp=built] .Contact_cmd__SE9bE,[data-bp=built] .Contact_connected__xOFnz{animation:none!important}}.Contact_link__xrkEv,.Contact_social__L09Gc{overflow-wrap:anywhere}.Contact_ext__8v8vp{transition:transform .25s cubic-bezier(.22,1,.36,1)}@media (hover:hover) and (pointer:fine){.Contact_social__L09Gc:hover .Contact_ext__8v8vp{transform:translate(2px,-2px)}}.Footer_mail__pbde_{color:rgb(var(--stage-text));overflow-wrap:anywhere}[data-motion=go] .Footer_dot__k7Lop{animation:Footer_dot-pop___W8KN .45s cubic-bezier(.22,1,.36,1) both}@keyframes Footer_dot-pop___W8KN{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){[data-motion=go] .Footer_dot__k7Lop{animation:none!important}}.Footer_icon___rdL4{display:inline-flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:9999px;border:1px solid rgb(var(--stage-line));color:rgb(var(--stage-muted))}@media (hover:hover) and (pointer:fine){.Footer_icon___rdL4:hover{border-color:rgb(var(--stage-text)/.45);color:rgb(var(--stage-text))}.Pipeline_link__VkXND:hover{color:#e9ecf4}}.Pipeline_track__HWurA{position:absolute;left:50%;z-index:0;width:1px;transform:translateX(-.5px);background:#2c3348;overflow:hidden;pointer-events:none}.Pipeline_fill__cCpRD{position:absolute;inset:0;background:rgb(255 255 255/.6);transform:scaleY(0);transform-origin:top}.Pipeline_dotPop__JPoT0{animation:Pipeline_pipeline-dot-pop__d6xFp .4s var(--ease-out)}@keyframes Pipeline_pipeline-dot-pop__d6xFp{0%{transform:scale(.6)}60%{transform:scale(1.12)}to{transform:scale(1)}}html.rm .Pipeline_dotPop__JPoT0{animation:none}@media (prefers-reduced-motion:reduce){.Pipeline_dotPop__JPoT0{animation:none}}.ScrollProgress_bar__ZAH_m{position:fixed;top:0;left:0;z-index:60;width:100%;height:2px;background:#ff5a2e;transform:scaleX(0);transform-origin:left;pointer-events:none;will-change:transform}.Skills_dep___3saT{position:relative;display:inline-flex;align-items:baseline;gap:.5ch;padding:.3rem .65rem;border:1px solid rgb(var(--mid-line));border-radius:3px;background:rgb(var(--mid-surface));color:rgb(var(--mid-text));font-family:var(--font-mono),ui-monospace,monospace;font-size:13px;line-height:1.4;white-space:nowrap}.Skills_dep___3saT:after{content:"";position:absolute;inset:-1px;border:1px solid rgb(var(--mid-text)/.55);border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .2s ease}.Skills_name__VEm_V{opacity:.84;transition:opacity .2s ease}@media (hover:hover) and (pointer:fine){.Skills_dep___3saT:hover .Skills_name__VEm_V,.Skills_dep___3saT:hover:after{opacity:1}}.Projects_shot__nq_rc{position:relative;border-radius:12px}.Projects_shot__nq_rc:after{content:"";position:absolute;inset:0;border:1px solid rgb(var(--stage-text)/.42);border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .3s cubic-bezier(.22,1,.36,1)}.Projects_stretched__togkc:after{content:"";position:absolute;inset:-10px;border-radius:22px}.Projects_stretched__togkc:focus-visible{outline:none}.Projects_stretched__togkc:focus-visible:after{outline:2px solid rgb(var(--stage-accent));outline-offset:0}.Projects_arrow__8NYBd{transition:transform .3s cubic-bezier(.22,1,.36,1)}.Projects_card__IykZk:focus-within .Projects_arrow__8NYBd{transform:translate(3px,-3px)}.Projects_card__IykZk{transition:transform .3s var(--ease-out)}.Projects_shotImg__jnGQx{transition:transform .5s var(--ease-out);transform-origin:center}@media (hover:hover) and (pointer:fine){.Projects_card__IykZk:hover .Projects_shot__nq_rc:after{opacity:1}.Projects_card__IykZk:hover .Projects_arrow__8NYBd{transform:translate(3px,-3px)}html:not(.rm) .Projects_card__IykZk:hover{transform:translateY(-3px)}html:not(.rm) .Projects_card__IykZk:hover .Projects_shotImg__jnGQx{transform:scale(1.03)}}html:not(.rm) .Projects_card__IykZk:has(.Projects_stretched__togkc:focus-visible){transform:translateY(-3px)}html:not(.rm) .Projects_card__IykZk:has(.Projects_stretched__togkc:focus-visible) .Projects_shotImg__jnGQx{transform:scale(1.03)}.Projects_edge__RVSjb,.Projects_overlay__ZHz0_{display:none}.Projects_wire__jk51M{position:absolute;inset:0;width:100%;height:100%}.Projects_wire__jk51M path,.Projects_wire__jk51M rect{fill:none;stroke:rgb(255 255 255/.45);stroke-width:1;vector-effect:non-scaling-stroke}.Projects_wire__jk51M .Projects_wireFill__2qIXK{fill:rgb(255 255 255/.16);stroke:none}.Projects_overlayTag__HQy0o{position:absolute;left:12px;bottom:12px;padding:3px 7px;border:1px solid rgb(255 255 255/.45);background:#1b3fa8;color:#fff;font-family:var(--font-mono),ui-monospace,monospace;font-size:10px;line-height:1.4;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.Projects_overlay__ZHz0_{background-color:#1b3fa8;background-image:linear-gradient(180deg,rgb(255 255 255/.15) 1px,transparent 0),linear-gradient(90deg,rgb(255 255 255/.15) 1px,transparent 0);background-size:24px 24px}.Projects_edge__RVSjb,.Projects_overlay__ZHz0_{position:absolute;inset:0;display:block;opacity:0;pointer-events:none}.Projects_edge__RVSjb{border-left:1px solid rgb(255 255 255/.75)}.Projects_card__IykZk:hover .Projects_overlay__ZHz0_{animation:Projects_projectWipe__xFOf8 .78s linear 90ms both}.Projects_card__IykZk:hover .Projects_edge__RVSjb{animation:Projects_projectEdge__qJru8 .78s linear 90ms both}.Projects_card__IykZk:has(.Projects_stretched__togkc:focus-visible) .Projects_overlay__ZHz0_{animation:Projects_projectWipe__xFOf8 .78s linear 90ms both}.Projects_card__IykZk:has(.Projects_stretched__togkc:focus-visible) .Projects_edge__RVSjb{animation:Projects_projectEdge__qJru8 .78s linear 90ms both}}@keyframes Projects_projectWipe__xFOf8{0%{opacity:0;clip-path:inset(0 0 0 0);animation-timing-function:ease-out}14%{opacity:1;clip-path:inset(0 0 0 0)}30%{opacity:1;clip-path:inset(0 0 0 0);animation-timing-function:cubic-bezier(.65,0,.35,1)}to{opacity:1;clip-path:inset(0 0 0 100%)}}@keyframes Projects_projectEdge__qJru8{0%,29.9%{opacity:0;transform:translateX(0)}30%{opacity:1;transform:translateX(0);animation-timing-function:cubic-bezier(.65,0,.35,1)}to{opacity:1;transform:translateX(100%)}}.Projects_caret__hyB2v{display:inline-block;width:.6em;height:1.1em;vertical-align:-.18em;background:rgb(233 236 244/.8)}@media (prefers-reduced-motion:no-preference){[data-bp=built] .Projects_termLine__P424x{animation:Projects_projectTermIn__j774x .42s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(.36s + var(--line, 0) * .12s)}[data-bp=built] .Projects_caret__hyB2v{animation:Projects_projectCaret__wlpv5 1s step-end 3;animation-delay:calc(.48s + var(--line, 0) * .12s)}}@keyframes Projects_projectTermIn__j774x{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes Projects_projectCaret__wlpv5{0%{opacity:1}50%{opacity:0}to{opacity:1}}.Services_module__tfWbG{position:relative;transition:transform .3s var(--ease-out)}.Services_module__tfWbG:after{content:"";position:absolute;inset:-1px;border:1px solid rgb(var(--stage-text)/.25);border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .3s cubic-bezier(.22,1,.36,1)}.Services_arrow__B_ooP{transition:transform .3s cubic-bezier(.22,1,.36,1)}@media (hover:hover) and (pointer:fine){.Services_module__tfWbG:hover{transform:translateY(-3px)}.Services_module__tfWbG:hover:after{opacity:1}.Services_module__tfWbG:hover .Services_arrow__B_ooP{transform:translateX(3px)}.ThemeToggle_toggle__wQKyV:hover{color:#fff;border-color:rgb(255 255 255/.45)}}.ThemeToggle_icons__Tq0yS{display:grid;place-items:center}.ThemeToggle_icons__Tq0yS>*{grid-area:1/1;transition:opacity .3s var(--ease-out),transform .3s var(--ease-out)}.ThemeToggle_moon__hRIIb{opacity:1;transform:none}.ThemeToggle_sun__ZdVuf,html.dark .ThemeToggle_moon__hRIIb{opacity:0;transform:rotate(-90deg)}html.dark .ThemeToggle_sun__ZdVuf{opacity:1;transform:none}html.rm .ThemeToggle_icons__Tq0yS>*{transition:none}@media (prefers-reduced-motion:reduce){.ThemeToggle_icons__Tq0yS>*{transition:none}}@media (hover:hover) and (pointer:fine){.TopNav_link__gsbsa:hover{color:#fff}.TopNav_control__zqxq2:hover{color:#fff;border-color:rgb(255 255 255/.45)}}.TopNav_indicator__1_dhl{position:absolute;bottom:0;left:0;width:1px;height:2px;border-radius:9999px;background:#ff5a2e;transform-origin:left;transition:transform .35s var(--ease-out),opacity .2s ease;pointer-events:none;will-change:transform}html.rm .TopNav_indicator__1_dhl{transition:none}@media (prefers-reduced-motion:reduce){.TopNav_indicator__1_dhl{transition:none}}.TopNav_menu__pT7yl{animation:TopNav_menu-in__oJUqa .2s cubic-bezier(.22,1,.36,1)}@keyframes TopNav_menu-in__oJUqa{0%{opacity:0;transform:translateY(-6px)}}.Toaster_region__LZBuK{bottom:calc(1.5rem + env(safe-area-inset-bottom, 0px))}.Toaster_toast__gykkF{animation:Toaster_toast-in__EveaD .22s cubic-bezier(.22,1,.36,1);transition:opacity .2s ease,transform .2s ease}.Toaster_leaving__3W7zR{opacity:0;transform:translateY(4px)}@keyframes Toaster_toast-in__EveaD{0%{opacity:0;transform:translateY(8px)}}