.ProjectSection-module__L8bwMW__projectSection{--project-ui-primary:#e6f0f4eb;--project-ui-secondary:#bdd3dda8;--project-ui-tertiary:#9bb9c785;scroll-snap-align:start;scroll-snap-stop:always;color:#e4edf1;background:radial-gradient(ellipse 58% 78% at 56% 46%, rgba(29, 68, 91, calc(.14 + var(--handoff,0) * .08)), transparent 72%), linear-gradient(180deg, #05080f 0%, #040506 18%, #050506 100%);height:100dvh;min-height:42rem;position:relative;overflow:hidden}.ProjectSection-module__L8bwMW__projectSection:before{content:"";z-index:1;pointer-events:none;width:150vmax;height:clamp(3rem,7vw,7rem);opacity:clamp(0, calc(var(--handoff,0) * 2.8), calc((1 - var(--handoff,0)) * 3.2));filter:blur(1.5rem);background:radial-gradient(#b0e1f22e,#4791b50f 28%,#0000 70%);position:absolute;top:48%;left:54%;transform:translate(-50%,-50%)rotate(-28deg)}.ProjectSection-module__L8bwMW__projectSectionSticky{isolation:isolate;height:100%;position:relative}.ProjectSection-module__L8bwMW__projectSceneViewport{z-index:2;contain:layout paint style;position:absolute;inset:0}.ProjectSection-module__L8bwMW__projectSectionHeader{z-index:20;left:var(--section-label-gutter,var(--space-page));right:var(--section-label-gutter,var(--space-page));pointer-events:none;font:500 var(--meta-label-size,.68rem)/1.2 var(--font-technical), monospace;letter-spacing:var(--meta-label-tracking,.08em);justify-content:space-between;align-items:center;display:flex;position:absolute;top:6.2rem}.ProjectSection-module__L8bwMW__projectSectionHeader h2{color:#85c9ea;font:inherit;margin:0;transition:opacity .2s,transform .32s cubic-bezier(.16,.8,.16,1)}.ProjectSection-module__L8bwMW__projectSectionHeader span{color:var(--project-ui-tertiary);transition:opacity .24s}.ProjectSection-module__L8bwMW__projectSection[data-selected=true] .ProjectSection-module__L8bwMW__projectSectionHeader span{opacity:0}.ProjectSection-module__L8bwMW__projectSection[data-selected=true] .ProjectSection-module__L8bwMW__projectSectionHeader h2{opacity:0;transform:translate(-.5rem)}.ProjectSection-module__L8bwMW__projectKeyboardShortcuts{z-index:30;opacity:0;pointer-events:none;gap:.4rem;transition:opacity .2s;display:flex;position:absolute;bottom:2rem;left:2rem}.ProjectSection-module__L8bwMW__projectKeyboardShortcuts:focus-within{opacity:1;pointer-events:auto}.ProjectSection-module__L8bwMW__projectKeyboardShortcuts button{color:#e8f1f4;font:500 .65rem/1 var(--font-technical), monospace;cursor:pointer;background:#05080fdb;border:1px solid #e7f2f733;border-radius:999px;padding:.55rem .7rem}.ProjectSection-module__L8bwMW__projectKeyboardShortcuts button:focus-visible{outline:2px solid var(--project-accent);outline-offset:.2rem}.ProjectSection-module__L8bwMW__projectStatus{z-index:20;left:var(--space-page);bottom:var(--space-page);pointer-events:none;flex-direction:column;gap:.28rem;transition:opacity .24s,transform .36s cubic-bezier(.16,.8,.16,1);display:flex;position:absolute}.ProjectSection-module__L8bwMW__projectStatus span{color:var(--project-ui-primary);letter-spacing:-.01em;font-size:.86rem;font-weight:500}.ProjectSection-module__L8bwMW__projectStatus small,.ProjectSection-module__L8bwMW__projectCounter{color:var(--project-ui-tertiary);font:450 .65rem var(--font-technical), monospace;letter-spacing:.065em}.ProjectSection-module__L8bwMW__projectCounter{z-index:20;right:var(--space-page);bottom:var(--space-page);margin:0;transition:opacity .24s;position:absolute}.ProjectSection-module__L8bwMW__projectSection[data-selected=true] .ProjectSection-module__L8bwMW__projectStatus{opacity:0;transform:translateY(.5rem)}.ProjectSection-module__L8bwMW__projectSection[data-selected=true] .ProjectSection-module__L8bwMW__projectCounter{opacity:0}@media (min-width:150rem) and (min-aspect-ratio:11/4){.ProjectSection-module__L8bwMW__projectStatus{left:var(--section-label-gutter,var(--space-page));bottom:2.5rem}.ProjectSection-module__L8bwMW__projectCounter{right:var(--section-label-gutter,var(--space-page));bottom:2.5rem}.ProjectSection-module__L8bwMW__projectKeyboardShortcuts{left:var(--section-label-gutter,var(--space-page))}}.ProjectSection-module__L8bwMW__projectTooltip{z-index:1000;pointer-events:none;text-align:left;white-space:nowrap;will-change:transform;min-width:9rem;padding:0 0 .42rem .15rem;animation:.34s cubic-bezier(.16,.8,.16,1) both ProjectSection-module__L8bwMW__tooltipReveal;position:absolute}.ProjectSection-module__L8bwMW__projectTooltip small{color:color-mix(in oklab, var(--tooltip-copy) 72%, var(--tooltip-accent));font:550 clamp(.66rem, .58vw, .72rem)/1 var(--font-technical), monospace;letter-spacing:.075em;text-shadow:0 .08em .2em color-mix(in srgb, var(--tooltip-contrast) 84%, transparent), 0 .28em .8em color-mix(in srgb, var(--tooltip-contrast) 48%, transparent);display:block}.ProjectSection-module__L8bwMW__projectTooltip span{color:color-mix(in oklab, var(--tooltip-accent) 78%, #dce8ec);font:630 clamp(1.08rem, 1.05vw, 1.28rem)/1 var(--font-display), sans-serif;letter-spacing:-.03em;text-shadow:0 .075em .18em color-mix(in srgb, var(--tooltip-contrast) 88%, transparent), 0 .28em .78em color-mix(in srgb, var(--tooltip-contrast) 52%, transparent);margin-top:.28rem;animation:.3s cubic-bezier(.16,.8,.16,1) 20ms both ProjectSection-module__L8bwMW__tooltipType;display:block}.ProjectSection-module__L8bwMW__projectDetail{z-index:30;left:var(--space-page);width:min(28rem,34vw);animation:.72s cubic-bezier(.16,.8,.16,1) .36s both ProjectSection-module__L8bwMW__detailIn;position:absolute;top:50%;transform:translateY(-50%)}.ProjectSection-module__L8bwMW__projectDetail>div{color:color-mix(in srgb, var(--project-copy) 80%, transparent);font:450 .66rem var(--font-technical), monospace;letter-spacing:.055em;justify-content:space-between;align-items:center;line-height:1.5;display:flex}.ProjectSection-module__L8bwMW__projectDetail>div span{text-wrap:balance;max-width:100%}.ProjectSection-module__L8bwMW__projectDetail h3{color:var(--project-title);font-family:var(--font-display), sans-serif;letter-spacing:-.055em;-webkit-text-stroke:.3px var(--project-contrast-edge);paint-order:stroke fill;filter:drop-shadow(0 .08em .24em var(--project-contrast-edge));margin:22vh 0 1.4rem;font-size:clamp(3.5rem,6vw,7rem);font-weight:500;line-height:.78;display:block}.ProjectSection-module__L8bwMW__projectDetail p{max-width:26rem;color:var(--project-copy);letter-spacing:-.006em;filter:drop-shadow(0 .08rem .32rem var(--project-contrast-edge));font-size:clamp(.92rem,.82vw,1rem);line-height:1.58}.ProjectSection-module__L8bwMW__projectDetail>small{color:color-mix(in srgb, var(--project-copy) 70%, transparent);font:450 .64rem/1.58 var(--font-technical), monospace;letter-spacing:.05em;margin-top:1.5rem;display:block}.ProjectSection-module__L8bwMW__projectDetailLink{min-height:2.75rem;color:var(--project-title);font:520 .68rem/1 var(--font-technical), monospace;letter-spacing:.085em;align-items:center;gap:.55rem;margin-top:1rem;display:inline-flex;position:relative}.ProjectSection-module__L8bwMW__projectDetailLink:after{content:"";background:linear-gradient(90deg, var(--project-accent), transparent);transform-origin:0;height:1px;transition:transform .45s cubic-bezier(.16,.8,.16,1);position:absolute;bottom:.45rem;left:0;right:0;transform:scaleX(.34)}.ProjectSection-module__L8bwMW__projectDetailLink i{color:var(--project-accent);font-style:normal;transition:transform .35s cubic-bezier(.16,.8,.16,1)}.ProjectSection-module__L8bwMW__projectDetailLink:hover:after,.ProjectSection-module__L8bwMW__projectDetailLink:focus-visible:after{transform:scaleX(1)}.ProjectSection-module__L8bwMW__projectDetailLink:hover i,.ProjectSection-module__L8bwMW__projectDetailLink:focus-visible i{transform:translate(.12rem,-.12rem)}.ProjectSection-module__L8bwMW__projectDetailLink:focus-visible{outline:1px solid var(--project-accent);outline-offset:.25rem}.ProjectSection-module__L8bwMW__projectDetailClosing{animation:.34s cubic-bezier(.45,0,.72,1) both ProjectSection-module__L8bwMW__detailOut}.ProjectSection-module__L8bwMW__closeButton{z-index:40;left:calc(var(--space-page) - 1rem);color:#dce9efbd;font:520 .68rem var(--font-technical), sans-serif;letter-spacing:.095em;cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;align-items:center;gap:.58rem;margin:0;padding:.78rem 0 .78rem 1rem;transition:opacity .28s cubic-bezier(.16,.8,.16,1),color .28s,transform .42s cubic-bezier(.16,.8,.16,1);display:flex;position:absolute;top:5.42rem;transform:translate(-.8rem)}.ProjectSection-module__L8bwMW__closeButton[data-ready=true]{opacity:1;pointer-events:auto;transform:translate(0,0)}.ProjectSection-module__L8bwMW__closeButton:before{content:"";pointer-events:none;background:color-mix(in srgb, var(--project-accent) 76%, #dbe8ed);opacity:.5;transform-origin:0;height:1px;transition:transform .46s cubic-bezier(.16,.8,.16,1),opacity .3s;position:absolute;bottom:.52rem;left:1rem;right:0;transform:scaleX(.2)}.ProjectSection-module__L8bwMW__closeButton>span{z-index:1;pointer-events:none;transition:transform .36s cubic-bezier(.16,.8,.16,1);position:relative}.ProjectSection-module__L8bwMW__closeButton b{z-index:1;pointer-events:none;color:var(--project-accent);font:400 1.05rem/1 var(--font-display), sans-serif;transition:color .28s,transform .46s cubic-bezier(.16,.8,.16,1);display:block;position:relative}.ProjectSection-module__L8bwMW__closeButton:hover b,.ProjectSection-module__L8bwMW__closeButton:focus-visible b{color:color-mix(in srgb, var(--project-accent) 72%, #fff);transform:translate(-.28rem)}.ProjectSection-module__L8bwMW__closeButton:hover{color:#f2f8faf5}.ProjectSection-module__L8bwMW__closeButton:hover:before,.ProjectSection-module__L8bwMW__closeButton:focus-visible:before{opacity:.9;transform:scaleX(1)}.ProjectSection-module__L8bwMW__closeButton:hover>span,.ProjectSection-module__L8bwMW__closeButton:focus-visible>span{transform:translate(.12rem)}.ProjectSection-module__L8bwMW__closeButton:active{transition-duration:80ms;transform:translate(0,0)scale(.97)}.ProjectSection-module__L8bwMW__closeButton:focus-visible{outline:2px solid var(--project-accent);outline-offset:.3rem}@keyframes ProjectSection-module__L8bwMW__detailIn{0%{opacity:0;transform:translate(-2rem,-50%)}to{opacity:1;transform:translateY(-50%)}}@keyframes ProjectSection-module__L8bwMW__detailOut{to{opacity:0;filter:blur(3px);transform:translate(-1rem,-50%)}}@keyframes ProjectSection-module__L8bwMW__closeIn{0%{opacity:0;filter:blur(5px)}to{opacity:1;filter:none}}@keyframes ProjectSection-module__L8bwMW__tooltipReveal{0%{opacity:0}to{opacity:1}}@keyframes ProjectSection-module__L8bwMW__tooltipType{0%{opacity:.25;filter:blur(1px);transform:translate(-.24rem,.06rem)}to{opacity:1;filter:blur();transform:none}}@media (max-width:900px){.ProjectSection-module__L8bwMW__projectSection{min-height:100dvh}.ProjectSection-module__L8bwMW__projectSectionHeader{top:4.9rem;left:max(1.25rem, env(safe-area-inset-left));right:max(1.25rem, env(safe-area-inset-right))}.ProjectSection-module__L8bwMW__projectSectionHeader span{display:none}.ProjectSection-module__L8bwMW__projectStatus{left:max(4.25rem, calc(env(safe-area-inset-left) + 4.25rem));bottom:max(1.15rem, env(safe-area-inset-bottom));max-width:calc(100vw - 10rem)}.ProjectSection-module__L8bwMW__projectStatus span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ProjectSection-module__L8bwMW__counter{right:max(1.25rem, env(safe-area-inset-right));bottom:max(1.15rem, env(safe-area-inset-bottom))}.ProjectSection-module__L8bwMW__projectKeyboardShortcuts{display:none}.ProjectSection-module__L8bwMW__projectDetail{width:auto;inset:auto 1.25rem 5.5rem;transform:none}.ProjectSection-module__L8bwMW__projectDetail>div{display:none}.ProjectSection-module__L8bwMW__projectDetail h3{margin:5rem 0 1rem;font-size:clamp(3rem,14vw,6rem)}.ProjectSection-module__L8bwMW__projectDetail p{max-width:34rem;font-size:.94rem}@keyframes ProjectSection-module__L8bwMW__detailIn{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:none}}@keyframes ProjectSection-module__L8bwMW__detailOut{to{opacity:0;filter:blur(3px);transform:translateY(1rem)}}}@media (min-width:150rem) and (min-aspect-ratio:11/4){.ProjectSection-module__L8bwMW__projectDetail{left:var(--section-label-gutter,var(--space-page));width:30rem}.ProjectSection-module__L8bwMW__closeButton{left:calc(var(--section-label-gutter,var(--space-page)) - 1rem)}}@media (prefers-reduced-motion:reduce){.ProjectSection-module__L8bwMW__projectSection:before{display:none}.ProjectSection-module__L8bwMW__projectDetail,.ProjectSection-module__L8bwMW__projectDetailClosing,.ProjectSection-module__L8bwMW__closeButton{animation:none}.ProjectSection-module__L8bwMW__projectTooltip,.ProjectSection-module__L8bwMW__projectTooltip:before,.ProjectSection-module__L8bwMW__projectTooltip:after,.ProjectSection-module__L8bwMW__projectTooltip span{transition:none;animation:none}.ProjectSection-module__L8bwMW__closeButton:before,.ProjectSection-module__L8bwMW__closeButton>span,.ProjectSection-module__L8bwMW__closeButton b{transition:none}}.ProjectSection-module__L8bwMW__sceneLoading{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ProjectSection-module__L8bwMW__sceneLoadingDot{background:var(--project-accent,#87cfee7a);border-radius:50%;width:.32rem;height:.32rem;box-shadow:0 0 .52rem #6bcbf652}@media (prefers-reduced-motion:no-preference){.ProjectSection-module__L8bwMW__sceneLoadingDot{animation:1.8s ease-in-out infinite ProjectSection-module__L8bwMW__sceneLoadingPulse}@keyframes ProjectSection-module__L8bwMW__sceneLoadingPulse{0%,to{opacity:.24;transform:scale(.85)}50%{opacity:.72;transform:scale(1.1)}}}
.PortfolioExperience-module__aj-JDq__portfolioPage{--handoff:0;--handoff-soft:0;--tag-morph:0;--headline-exit:0;--page-progress:0;--ui-primary:#e4eef3;--ui-secondary:#cadee8c2;--ui-tertiary:#adc7d494;--ui-accent:#87cfee;--ui-line:#97c7dc33;--meta-label-size:.68rem;--meta-label-tracking:.08em;--section-label-gutter:var(--space-page);--space-page:3rem;overflow-anchor:none;touch-action:none;scroll-snap-type:y mandatory;overscroll-behavior:none;scrollbar-width:none;height:100dvh;color:var(--ui-primary);background:#05080f;overflow:hidden auto}.PortfolioExperience-module__aj-JDq__portfolioPage::-webkit-scrollbar{display:none}.PortfolioExperience-module__aj-JDq__sectionNavigation{--rail-length:clamp(18rem, 52vh, 32rem);z-index:45;right:max(.35rem, env(safe-area-inset-right));grid-template-rows:auto var(--rail-length) auto;isolation:isolate;color:#b5d3e07a;font:540 .58rem/1 var(--font-technical), monospace;letter-spacing:.1em;place-items:center end;display:grid;position:fixed;top:50%;transform:translateY(-50%)}.PortfolioExperience-module__aj-JDq__sectionNavigation:before{content:none}.PortfolioExperience-module__aj-JDq__sectionNavigation a{min-width:2.5rem;min-height:2.75rem;color:inherit;justify-content:center;align-items:center;transition:color .35s,opacity .35s;display:flex;position:relative}.PortfolioExperience-module__aj-JDq__sectionNavigation a:first-child{opacity:calc(.42 + (1 - var(--page-progress)) * .58)}.PortfolioExperience-module__aj-JDq__sectionNavigation a:last-child{opacity:calc(.42 + var(--page-progress) * .58)}.PortfolioExperience-module__aj-JDq__sectionNavigation span{color:#cde2ebd1;text-shadow:0 1px .2rem #02050ae6,0 0 .7rem #02050a94;transition:transform .38s cubic-bezier(.22,1,.36,1),color .35s}.PortfolioExperience-module__aj-JDq__sectionNavigation a:hover,.PortfolioExperience-module__aj-JDq__sectionNavigation a:focus-visible{color:#edf8fc}.PortfolioExperience-module__aj-JDq__sectionNavigation a:hover span,.PortfolioExperience-module__aj-JDq__sectionNavigation a:focus-visible span{color:#edf8fc;transform:translate(-.16rem)}.PortfolioExperience-module__aj-JDq__sectionNavigation a:focus-visible{outline-offset:.15rem;outline:1px solid #8ed8f79e}.PortfolioExperience-module__aj-JDq__sectionNavigationTrack{width:1px;height:var(--rail-length);background:linear-gradient(#bfe2ef24,#d3ebf48f 50%,#bfe2ef24);margin-right:1.22rem;display:block;position:relative;box-shadow:0 0 .42rem #02050ab8,0 0 1px #ebf8fc4d}.PortfolioExperience-module__aj-JDq__sectionNavigationTrack:before,.PortfolioExperience-module__aj-JDq__sectionNavigationTrack:after{content:"";filter:drop-shadow(0 1px .18rem #02050acc);background:linear-gradient(90deg,#0000,#d4edf69e);width:.72rem;height:1px;position:absolute;right:0}.PortfolioExperience-module__aj-JDq__sectionNavigationTrack:before{top:0}.PortfolioExperience-module__aj-JDq__sectionNavigationTrack:after{bottom:0}.PortfolioExperience-module__aj-JDq__sectionNavigationTrack b{background:var(--ui-accent);width:.34rem;height:.34rem;transform:translate(-50%, calc(var(--page-progress) * (var(--rail-length) - .34rem)));border:0;border-radius:50%;transition:box-shadow .35s;position:absolute;top:0;left:50%;box-shadow:0 0 .18rem #cfeff9bf,0 0 .75rem #6bcbf67a}.PortfolioExperience-module__aj-JDq__sectionNavigationTrack b:after{content:"";transform-origin:0;opacity:.44;background:linear-gradient(90deg,#d2eff8b8,#0000);width:1.15rem;height:1px;position:absolute;top:50%;left:50%;transform:translate(-.08rem,-50%)}.PortfolioExperience-module__aj-JDq__topBar{z-index:40;box-sizing:border-box;height:4.5rem;padding:0 var(--space-page);color:var(--ui-secondary);font:500 .7rem var(--font-technical), monospace;letter-spacing:.055em;justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.PortfolioExperience-module__aj-JDq__brandLink{align-items:center;gap:.65rem;transition:color .35s;display:flex}.PortfolioExperience-module__aj-JDq__brandLink i{background:var(--ui-accent);border-radius:50%;width:.32rem;height:.32rem;transition:transform .45s cubic-bezier(.16,.8,.16,1),box-shadow .45s;box-shadow:0 .08rem .52rem #6bcbf67a}.PortfolioExperience-module__aj-JDq__brandLink:hover{color:#f1f8fb}.PortfolioExperience-module__aj-JDq__brandLink:hover i{transform:scale(1.35);box-shadow:0 .1rem .7rem #6bcbf6b8}.PortfolioExperience-module__aj-JDq__topBarLinks{align-items:center;gap:1.75rem;display:flex}.PortfolioExperience-module__aj-JDq__topBarLink{min-height:2.75rem;color:var(--ui-secondary);align-items:center;gap:.45rem;transition:color .35s;display:flex}.PortfolioExperience-module__aj-JDq__topBarLink>span{line-height:1.08;transition:color .28s,letter-spacing .38s cubic-bezier(.22,1,.36,1),filter .38s;display:block;position:relative}.PortfolioExperience-module__aj-JDq__topBarLink>span:after{content:"";transform-origin:0;background:linear-gradient(90deg,#79c9ec,#79c9ec00);height:1px;transition:transform .38s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-.38rem;left:0;right:0;transform:scaleX(0)}.PortfolioExperience-module__aj-JDq__topBarLink i{color:#79c9ec;font-style:normal;transition:transform .32s cubic-bezier(.22,1,.36,1),color .28s}.PortfolioExperience-module__aj-JDq__topBarArrow{flex-shrink:0;justify-content:center;align-items:center;width:.72rem;height:.72rem;display:inline-flex}.PortfolioExperience-module__aj-JDq__topBarArrow svg{width:100%;height:100%;display:block}.PortfolioExperience-module__aj-JDq__heroGithubArrow{vertical-align:middle;align-items:center;width:.62rem;height:.62rem;margin-left:.12rem;transition:transform .32s cubic-bezier(.22,1,.36,1);display:inline-flex}.PortfolioExperience-module__aj-JDq__heroGithubArrow svg{width:100%;height:100%;display:block}.PortfolioExperience-module__aj-JDq__heroGithub:hover .PortfolioExperience-module__aj-JDq__heroGithubArrow,.PortfolioExperience-module__aj-JDq__heroGithub:focus-visible .PortfolioExperience-module__aj-JDq__heroGithubArrow{transform:translate(.1rem,-.1rem)}.PortfolioExperience-module__aj-JDq__topBarLink:hover>span,.PortfolioExperience-module__aj-JDq__topBarLink:focus-visible>span{color:#edf7fb;letter-spacing:.045em;filter:drop-shadow(0 0 .45rem #79c9ec2e)}.PortfolioExperience-module__aj-JDq__topBarLink:hover>span:after,.PortfolioExperience-module__aj-JDq__topBarLink:focus-visible>span:after{transform:scaleX(1)}.PortfolioExperience-module__aj-JDq__topBarLink:hover i,.PortfolioExperience-module__aj-JDq__topBarLink:focus-visible i{color:#dff5ff;transform:translate(.1rem)}.PortfolioExperience-module__aj-JDq__topBarLinkResume:hover i,.PortfolioExperience-module__aj-JDq__topBarLinkResume:focus-visible i{transform:translate(.1rem,.1rem)}.PortfolioExperience-module__aj-JDq__topBarLinkGithub:hover i,.PortfolioExperience-module__aj-JDq__topBarLinkGithub:focus-visible i{transform:translate(.07rem,-.07rem)}.PortfolioExperience-module__aj-JDq__topBarLinkContact{color:var(--ui-primary)}.PortfolioExperience-module__aj-JDq__topBarLinkContact:hover,.PortfolioExperience-module__aj-JDq__topBarLinkContact:focus-visible{color:#fff}.PortfolioExperience-module__aj-JDq__brandLink:focus-visible,.PortfolioExperience-module__aj-JDq__topBarLink:focus-visible{outline-offset:.45rem;outline:1px solid #8ed8f7b3}.PortfolioExperience-module__aj-JDq__heroSection{isolation:isolate;scroll-snap-align:start;scroll-snap-stop:always;background:radial-gradient(ellipse 55% 72% at 69% 47%, rgba(43, 109, 150, calc(.18 - var(--handoff) * .1)), transparent 74%), radial-gradient(ellipse 92% 76% at 10% -18%, rgba(93, 144, 170, calc(.14 - var(--handoff) * .09)), transparent 70%), radial-gradient(ellipse calc(18% + var(--handoff) * 20%) calc(68% - var(--handoff) * 52%) at 50% 50%, rgba(116, 202, 234, calc(var(--handoff) * .16)), transparent 72%), linear-gradient(116deg, #081019, #05080f 58%, #070a14);min-height:100dvh;position:relative;overflow:hidden}.PortfolioExperience-module__aj-JDq__heroSection:after{content:"";z-index:8;pointer-events:none;background:radial-gradient(circle at 68% 48%,#0000 17%,#05080f14 52%,#05080f7a);position:absolute;inset:0}.PortfolioExperience-module__aj-JDq__heroRole{z-index:20;left:var(--section-label-gutter);opacity:calc(1 - var(--tag-morph));transform:translateY(calc(var(--tag-morph) * -.8rem));font:500 var(--meta-label-size)/1.2 var(--font-technical), monospace;letter-spacing:var(--meta-label-tracking);align-items:baseline;gap:1.15rem;margin:0;display:flex;position:absolute;top:6.5rem}.PortfolioExperience-module__aj-JDq__heroRole span{color:#81ccebc7}.PortfolioExperience-module__aj-JDq__heroRole strong{color:#b4cdd88f;font:inherit}.PortfolioExperience-module__aj-JDq__heroHeadline{z-index:12;left:max(var(--space-page), calc(50% - 48rem));width:min(55rem,48%);opacity:calc(1 - var(--headline-exit));-webkit-mask-image:linear-gradient(105deg, #000 0%, #000 calc(100% - var(--headline-exit) * 110%), transparent calc(112% - var(--headline-exit) * 110%));-webkit-mask-image:linear-gradient(105deg, #000 0%, #000 calc(100% - var(--headline-exit) * 110%), transparent calc(112% - var(--headline-exit) * 110%));mask-image:linear-gradient(105deg, #000 0%, #000 calc(100% - var(--headline-exit) * 110%), transparent calc(112% - var(--headline-exit) * 110%));filter:blur(calc(var(--headline-exit) * .7px));will-change:opacity;font-family:var(--font-geist-sans), sans-serif;letter-spacing:-.075em;pointer-events:none;margin-block:-.12em;padding-block:.12em;font-size:8.625rem;font-weight:560;line-height:.7;position:absolute;top:47%;transform:translateY(-50%)}.PortfolioExperience-module__aj-JDq__heroHeadline>span,.PortfolioExperience-module__aj-JDq__heroHeadline strong,.PortfolioExperience-module__aj-JDq__heroHeadline strong span{font:inherit;display:block}.PortfolioExperience-module__aj-JDq__heroHeadline strong{color:#e3edf2}.PortfolioExperience-module__aj-JDq__heroHeadline strong span:last-child{margin-left:.3em}.PortfolioExperience-module__aj-JDq__heroHeadline>.PortfolioExperience-module__aj-JDq__heroLead{color:#cae1ecd1;letter-spacing:-.06em;margin-bottom:.22em;margin-left:.03em;font-size:.64em;font-weight:430}.PortfolioExperience-module__aj-JDq__heroSphere{z-index:10;contain:layout paint style;opacity:1;position:absolute;inset:0 0 0 44%}.PortfolioExperience-module__aj-JDq__heroSphere canvas{width:100%;height:100%;display:block}.PortfolioExperience-module__aj-JDq__heroCopy{z-index:20;left:max(var(--space-page), calc(50% - 48rem));width:min(36rem, calc(50% - var(--space-page) * 2));opacity:calc(1 - var(--tag-morph));transform:translateY(calc(var(--tag-morph) * -.8rem));text-wrap:pretty;margin:0;position:absolute;bottom:clamp(2.8rem,4.5vh,4rem)}.PortfolioExperience-module__aj-JDq__heroCopy strong{color:#d2e8f1c7;font:500 var(--meta-label-size)/1.2 var(--font-technical), monospace;letter-spacing:var(--meta-label-tracking);text-transform:uppercase;align-items:center;gap:.7rem;margin-bottom:.62rem;display:flex}.PortfolioExperience-module__aj-JDq__heroCopy strong:before{content:"";background:linear-gradient(90deg, var(--ui-accent), #87cfee1f);flex:none;width:1.65rem;height:1px}.PortfolioExperience-module__aj-JDq__heroCopy span{color:#c4d8e2b3;letter-spacing:-.003em;max-width:34rem;font-size:.875rem;line-height:1.52;display:block}.PortfolioExperience-module__aj-JDq__heroMobileIntroduction{display:none!important}.PortfolioExperience-module__aj-JDq__heroGithub{color:#a0c8dc85;font:450 .66rem/1 var(--font-technical), monospace;letter-spacing:.03em;align-items:center;gap:.32rem;margin-top:.9rem;transition:color .28s;display:inline-flex}.PortfolioExperience-module__aj-JDq__heroGithub:hover,.PortfolioExperience-module__aj-JDq__heroGithub:focus-visible{color:#c8e4f0d1}.PortfolioExperience-module__aj-JDq__heroGithub:focus-visible{outline-offset:.25rem;outline:1px solid #8ed8f780}.PortfolioExperience-module__aj-JDq__handoffAxis{z-index:9;width:1px;height:calc(var(--handoff) * 178vw);transform-origin:50%;opacity:clamp(0, calc((1 - var(--handoff)) * 2.6), calc(var(--handoff) * 2.2));pointer-events:none;background:linear-gradient(#0000,#52a4cb14 14%,#a7dcef52 42%,#eaf6f894 50%,#73bfdd2e 69%,#0000);position:fixed;top:50%;left:69%;transform:translate(-50%,-50%)rotate(62deg);box-shadow:0 0 1.4rem #69c1e41f}.PortfolioExperience-module__aj-JDq__handoffAxis i{width:6.5rem;height:1px;transform:translate(-50%, -50%) scaleX(var(--handoff));transform-origin:50%;background:linear-gradient(90deg,#0000,#cbebf5b8,#0000);position:absolute;top:50%;left:50%;box-shadow:0 0 1.1rem #74cff359}.PortfolioExperience-module__aj-JDq__heroCta{z-index:20;min-width:8.75rem;opacity:calc(1 - var(--tag-morph));color:#daeaf2e0;font:550 .68rem var(--font-technical), monospace;letter-spacing:.09em;grid-template-columns:1fr;justify-items:center;gap:.3rem;padding:.7rem .65rem .8rem;transition:color .35s,transform .18s;display:grid;position:absolute;bottom:1.75rem;left:50%;transform:translate(-50%)}.PortfolioExperience-module__aj-JDq__heroCta:after{content:"";background:linear-gradient(90deg, transparent, var(--ui-accent) 28%, #d8f0f9d1 72%, transparent);opacity:.72;height:1px;transition:transform .65s cubic-bezier(.16,.8,.16,1),opacity .35s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(.24)}.PortfolioExperience-module__aj-JDq__heroCta span{transition:letter-spacing .52s cubic-bezier(.16,.8,.16,1),transform .52s cubic-bezier(.16,.8,.16,1)}.PortfolioExperience-module__aj-JDq__heroCta i{width:2.5rem;height:2rem;color:var(--ui-accent);font:300 1.45rem/1 var(--font-geist-sans), sans-serif;place-items:center;font-style:normal;transition:color .35s,transform .55s cubic-bezier(.16,.8,.16,1);display:grid;position:relative;overflow:hidden}.PortfolioExperience-module__aj-JDq__heroCta:hover,.PortfolioExperience-module__aj-JDq__heroCta:focus-visible{color:#f1f8fb}.PortfolioExperience-module__aj-JDq__heroCta:hover:after,.PortfolioExperience-module__aj-JDq__heroCta:focus-visible:after{opacity:1;transform:scaleX(1)}.PortfolioExperience-module__aj-JDq__heroCta:hover span,.PortfolioExperience-module__aj-JDq__heroCta:focus-visible span{letter-spacing:.18em;transform:translateY(-.08rem)}.PortfolioExperience-module__aj-JDq__heroCta:hover i,.PortfolioExperience-module__aj-JDq__heroCta:focus-visible i{color:#dff7ff;transform:translateY(.34rem)}.PortfolioExperience-module__aj-JDq__heroCta:active{transform:translate(-50%)scale(.97)}.PortfolioExperience-module__aj-JDq__heroCta:focus-visible{outline-offset:.35rem;outline:1px solid #8ed8f7b3}@media (prefers-reduced-motion:no-preference){.PortfolioExperience-module__aj-JDq__topBar{animation:.72s cubic-bezier(.16,.8,.16,1) 60ms both PortfolioExperience-module__aj-JDq__heroMetaIn}.PortfolioExperience-module__aj-JDq__heroRole{animation:.7s cubic-bezier(.16,.8,.16,1) .18s backwards PortfolioExperience-module__aj-JDq__heroMetaIn}.PortfolioExperience-module__aj-JDq__heroHeadline>.PortfolioExperience-module__aj-JDq__heroLead{animation:.82s cubic-bezier(.16,.8,.16,1) .16s both PortfolioExperience-module__aj-JDq__heroTypeIn}.PortfolioExperience-module__aj-JDq__heroHeadline strong{animation:.88s cubic-bezier(.16,.8,.16,1) .27s both PortfolioExperience-module__aj-JDq__heroTypeIn}.PortfolioExperience-module__aj-JDq__heroCopy{animation:.76s cubic-bezier(.16,.8,.16,1) .52s backwards PortfolioExperience-module__aj-JDq__heroMetaIn}.PortfolioExperience-module__aj-JDq__heroCta{animation:.52s cubic-bezier(.16,.8,.16,1) .48s backwards PortfolioExperience-module__aj-JDq__ctaReveal}.PortfolioExperience-module__aj-JDq__brandLink i{animation:3.4s ease-in-out infinite PortfolioExperience-module__aj-JDq__statusPulse}.PortfolioExperience-module__aj-JDq__heroCta i{animation:2.4s cubic-bezier(.45,0,.2,1) 1.5s infinite PortfolioExperience-module__aj-JDq__arrowCue}.PortfolioExperience-module__aj-JDq__heroCta:hover i,.PortfolioExperience-module__aj-JDq__heroCta:focus-visible i{animation-play-state:paused}@keyframes PortfolioExperience-module__aj-JDq__statusPulse{0%,72%,to{opacity:.62}82%{opacity:1}}@keyframes PortfolioExperience-module__aj-JDq__arrowCue{0%,64%,to{transform:translateY(0)}78%{transform:translateY(.22rem)}89%{transform:translateY(-.03rem)}}@keyframes PortfolioExperience-module__aj-JDq__heroTypeIn{0%{opacity:0;transform:translateY(.22em)}to{opacity:1;transform:none}}@keyframes PortfolioExperience-module__aj-JDq__heroMetaIn{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}@keyframes PortfolioExperience-module__aj-JDq__ctaReveal{0%{opacity:.18;transform:translate(-50%)translateY(.4rem)}to{opacity:1;transform:translate(-50%)}}}@media (max-width:100rem){.PortfolioExperience-module__aj-JDq__heroHeadline{font-size:7.5rem}}@media (min-width:100rem){.PortfolioExperience-module__aj-JDq__heroSection{background:radial-gradient(ellipse 55% 72% at 65% 47%, rgba(43, 109, 150, calc(.18 - var(--handoff) * .1)), transparent 74%), radial-gradient(ellipse 92% 76% at 10% -18%, rgba(93, 144, 170, calc(.14 - var(--handoff) * .09)), transparent 70%), radial-gradient(ellipse calc(18% + var(--handoff) * 20%) calc(68% - var(--handoff) * 52%) at 50% 50%, rgba(116, 202, 234, calc(var(--handoff) * .16)), transparent 72%), linear-gradient(116deg, #081019, #05080f 58%, #070a14)}.PortfolioExperience-module__aj-JDq__heroSection:after{background:radial-gradient(circle at 65% 48%,#0000 17%,#05080f14 52%,#05080f7a)}.PortfolioExperience-module__aj-JDq__heroRole,.PortfolioExperience-module__aj-JDq__heroHeadline,.PortfolioExperience-module__aj-JDq__heroCopy{left:var(--section-label-gutter)}.PortfolioExperience-module__aj-JDq__heroHeadline{width:min(61rem,50%);font-size:9.5rem}.PortfolioExperience-module__aj-JDq__heroCopy{width:min(39rem,50% - 5rem)}.PortfolioExperience-module__aj-JDq__heroCopy span{max-width:37rem;font-size:.94rem}.PortfolioExperience-module__aj-JDq__heroSphere{inset:0 0 0 34%}}@media (min-width:150rem) and (min-aspect-ratio:11/4){.PortfolioExperience-module__aj-JDq__portfolioPage{--ultrawide-stage:144rem;--ultrawide-edge:max(3rem, calc((100vw - var(--ultrawide-stage)) / 2));--section-label-gutter:var(--ultrawide-edge)}.PortfolioExperience-module__aj-JDq__topBar{left:var(--ultrawide-edge);right:var(--ultrawide-edge);width:auto;padding-inline:0}.PortfolioExperience-module__aj-JDq__sectionNavigation{right:calc(var(--ultrawide-edge) - 2.5rem)}.PortfolioExperience-module__aj-JDq__heroSection{background:radial-gradient(ellipse 48% 78% at 61% 47%, rgba(43, 109, 150, calc(.2 - var(--handoff) * .1)), transparent 74%), radial-gradient(ellipse 76% 84% at 18% -24%, rgba(93, 144, 170, calc(.13 - var(--handoff) * .08)), transparent 70%), radial-gradient(ellipse calc(18% + var(--handoff) * 20%) calc(68% - var(--handoff) * 52%) at 50% 50%, rgba(116, 202, 234, calc(var(--handoff) * .16)), transparent 72%), linear-gradient(116deg, #081019, #05080f 58%, #070a14)}.PortfolioExperience-module__aj-JDq__heroSection:after{background:radial-gradient(circle at 60% 48%,#0000 18%,#05080f14 55%,#05080f70)}.PortfolioExperience-module__aj-JDq__heroHeadline{width:58rem}.PortfolioExperience-module__aj-JDq__heroSphere{left:calc(50% - 10rem);right:var(--ultrawide-edge)}}@media (max-width:80rem){.PortfolioExperience-module__aj-JDq__heroHeadline{font-size:6rem}}@media (max-width:900px){.PortfolioExperience-module__aj-JDq__portfolioPage{--space-page:1.25rem;--section-label-gutter:1.25rem}.PortfolioExperience-module__aj-JDq__topBar{height:3.8rem;padding:0 1.25rem}.PortfolioExperience-module__aj-JDq__topBarLinks{gap:1rem;display:flex}.PortfolioExperience-module__aj-JDq__topBarLink{font-size:.58rem}.PortfolioExperience-module__aj-JDq__sectionNavigation{display:none}.PortfolioExperience-module__aj-JDq__heroRole{left:var(--section-label-gutter);white-space:nowrap;gap:.65rem;font-size:.58rem;top:4.8rem;right:1.25rem}.PortfolioExperience-module__aj-JDq__heroRole strong{text-overflow:ellipsis;overflow:hidden}.PortfolioExperience-module__aj-JDq__heroHeadline{width:calc(100% - 2.5rem);font-size:4rem;line-height:.82;top:15%;left:50%;transform:translate(-50%)}.PortfolioExperience-module__aj-JDq__heroHeadline strong span:last-child{margin-left:0}.PortfolioExperience-module__aj-JDq__heroSphere{width:100%;height:100%;inset:0}.PortfolioExperience-module__aj-JDq__handoffAxis{height:calc(var(--handoff) * 210vw);top:68%;left:50%}.PortfolioExperience-module__aj-JDq__heroHeadline>.PortfolioExperience-module__aj-JDq__heroLead{margin-bottom:.24em;font-size:.62em}.PortfolioExperience-module__aj-JDq__heroCopy{width:auto;margin:0;bottom:5rem;left:1.25rem;right:1.25rem;transform:none}.PortfolioExperience-module__aj-JDq__heroCopy strong{gap:.5rem;margin-bottom:.35rem;font-size:.56rem}.PortfolioExperience-module__aj-JDq__heroCopy strong:before{width:1.1rem}.PortfolioExperience-module__aj-JDq__heroCopy span{max-width:31rem;font-size:.68rem;line-height:1.45}.PortfolioExperience-module__aj-JDq__heroDesktopIntroduction{display:none!important}.PortfolioExperience-module__aj-JDq__heroMobileIntroduction{display:block!important}.PortfolioExperience-module__aj-JDq__heroGithub{display:none!important}.PortfolioExperience-module__aj-JDq__heroCta{bottom:max(.65rem, env(safe-area-inset-bottom));gap:0;min-width:3rem;min-height:3rem;padding:.2rem}.PortfolioExperience-module__aj-JDq__heroCta span{display:none}.PortfolioExperience-module__aj-JDq__heroCta i{width:2.75rem;height:2.5rem;font-size:1.65rem}}@media (max-width:900px) and (max-height:44rem){.PortfolioExperience-module__aj-JDq__heroCopy{bottom:4.8rem}.PortfolioExperience-module__aj-JDq__heroMobileIntroduction{display:none!important}}@media (max-width:900px) and (max-height:39rem){.PortfolioExperience-module__aj-JDq__heroRole strong,.PortfolioExperience-module__aj-JDq__heroCopy{display:none}}@media (prefers-reduced-motion:reduce){.PortfolioExperience-module__aj-JDq__heroCta{animation:none}.PortfolioExperience-module__aj-JDq__handoffAxis{display:none}.PortfolioExperience-module__aj-JDq__brandLink i,.PortfolioExperience-module__aj-JDq__topBarLink>span,.PortfolioExperience-module__aj-JDq__topBarLink i,.PortfolioExperience-module__aj-JDq__heroCta:after,.PortfolioExperience-module__aj-JDq__heroCta span,.PortfolioExperience-module__aj-JDq__heroCta i{transition-duration:.01ms;animation:none}.PortfolioExperience-module__aj-JDq__heroHeadline{filter:none;-webkit-mask-image:none;mask-image:none}.PortfolioExperience-module__aj-JDq__sectionNavigationTrack b{transition:none}}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal{font-family:var(--font-geist-sans), sans-serif}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__topBar{font:400 .64rem var(--font-geist-mono,ui-monospace), monospace;letter-spacing:.04em}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__topBarLinks{gap:1.8rem}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroRole{color:#a4c3d480;font:400 .55rem/1.65 var(--font-geist-mono,ui-monospace), monospace;letter-spacing:.14em}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroHeadline{letter-spacing:-.075em;width:min(62vw,55rem);font-size:clamp(6rem,10.8vw,12.5rem);font-weight:560;line-height:.7}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroHeadline>.PortfolioExperience-module__aj-JDq__heroLead{color:#cae1ecd1;letter-spacing:-.06em;font-weight:430}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroCopy{color:#b1c7d3ad;max-width:22rem;font-size:.8rem;line-height:1.52}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroCta{color:#d6e9f2e0;min-width:0;font:600 .58rem var(--font-geist-mono,ui-monospace), monospace;letter-spacing:.1em;border-bottom:1px solid #78bfe76b;padding:0 0 .3rem;animation:none;display:block;bottom:clamp(1.25rem,2vw,2rem);left:auto;right:clamp(1.25rem,2vw,2rem);transform:none}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroCta:after,.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroCta i{display:none}.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroCta:active{transform:none}@media (prefers-reduced-motion:no-preference){.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__topBar,.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroRole,.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroHeadline>.PortfolioExperience-module__aj-JDq__heroLead,.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroHeadline strong span,.PortfolioExperience-module__aj-JDq__portfolioPageOriginal .PortfolioExperience-module__aj-JDq__heroCopy{animation:none}}
