:root{--selection-color:#f1a1ab;--selection-ink:#101b30;--glass-color-amount:.188;--glass-blur-amount:0;--glass-distortion:4;--glass-chromatic-aberration:.4;--glass-edge-highlight:0;--glass-specular:0;--glass-fresnel:0;--glass-brightness:0;--glass-saturation:0;--glass-depth:60;--glass-header-depth-scale:2;--glass-playground-depth-scale:2.5;--glass-thickness:24;--glass-refraction-index:1.45;--glass-edge-reflection:.85;--glass-reflection-blur:6;--glass-shadow-opacity:.065;--glass-shadow-spread:16;--glass-shadow-offset-y:1;--glass-blur-unit:11.4286px;--glass-blur:calc(var(--glass-blur-amount) * var(--glass-blur-unit));--glass-fallback-saturation:1.12;--glass-frost-rgb:79, 79, 79;--glass-shadow:0 12px 40px #0610241a}::selection{background-color:var(--selection-color);color:var(--selection-ink)}::target-text{background-color:var(--selection-color);color:var(--selection-ink)}.glass,.glass:before,.glass:after,.glass-render-layer,.glass-render{border:0!important}.glass{isolation:isolate;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-fallback-saturation));background:0 0;position:relative}.glass:before{content:"";border-radius:inherit;pointer-events:none;z-index:-1;background:rgba(var(--glass-frost-rgb), var(--glass-color-amount));position:absolute;inset:0}.glass-clear{--glass-color-amount:0}.glass.glass-webgl{-webkit-backdrop-filter:none}.glass.glass-webgl:before{background:0 0}.glass-render{opacity:1;z-index:-2!important}.glass-render-layer{z-index:-2;border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:clip}.glass-scene{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:clip}.glass-scene>.lighting-background{z-index:0;position:absolute}.glass-scene-lens{z-index:1;pointer-events:none;position:absolute}.glass-scene-content{opacity:0;pointer-events:none;position:absolute}@font-face{font-family:YIP Mono;font-style:normal;font-weight:400;font-display:swap;src:url(./YIPMono-Regular-CXokgM-x.woff2)format("woff2")}@font-face{font-family:YIP Mono;font-style:normal;font-weight:700;font-display:swap;src:url(./YIPMono-Bold-YjQy5hGb.woff2)format("woff2")}:root{--card-perspective:1100px;--body-font:"YIP Mono", monospace;font-family:var(--body-font);color:#f1f5fc;font-synthesis:none;font-variant-ligatures:common-ligatures contextual;--muted:#bcc9df;--blue:#b4d0fa;--coral:#f1a1ab;--display:var(--body-font);--line:#cfe1ff2b;background:#101b30;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:calc(84px + env(safe-area-inset-top,0px))}body{isolation:isolate;margin:0;position:relative;overflow-x:clip}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:6px}svg{flex-shrink:0}button{border:0}p,h1,h2,h3{margin:0}p{font-size:1rem;line-height:1.8}section[id]{scroll-margin-top:24px}.shell{width:min(1180px,100% - 112px);margin-inline:auto}.section{padding-block:84px}.ambient{z-index:-1;pointer-events:none;background:radial-gradient(at 0 10%,#cf65722e,#0000 55%),radial-gradient(at 100% 35%,#4d87e83d,#0000 65%);position:absolute;inset:0}.lighting-background{z-index:-1;pointer-events:none;image-rendering:auto;opacity:1;width:100%;height:100%;position:absolute;inset:0}.lighting-background.is-ready{opacity:1}.grain{z-index:20;pointer-events:none;opacity:.012;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.7' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.site-header{z-index:5;justify-content:space-between;align-items:center;height:112px;display:flex;position:relative}.wordmark{left:max(56px,50% - 590px);top:calc(42px + env(safe-area-inset-top,0px));width:44px;height:44px;font:700 2.65rem var(--display);letter-spacing:-.1em;justify-content:center;align-items:center;line-height:1;display:flex;position:fixed}.wordmark span{color:var(--coral)}.main-nav{top:calc(20px + env(safe-area-inset-top,0px));z-index:10;touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:50px;gap:8px;width:max-content;max-width:calc(100% - 32px);padding:7px;display:flex;position:fixed;left:50%;overflow:visible;transform:translate(-50%)}.glass.nav-selection{left:var(--pill-center,51.5px);width:var(--pill-width,89px);height:var(--pill-height,40px);z-index:3;pointer-events:none;border-radius:100px;transition:left .2s cubic-bezier(.22,1.1,.3,1),width .2s cubic-bezier(.22,1.1,.3,1),height .2s cubic-bezier(.22,1.1,.3,1);position:absolute;top:50%;transform:translate(-50%,-50%)}.main-nav.is-moving .nav-selection{transition:left .42s cubic-bezier(.22,1.1,.3,1),width .15s ease-out,height .15s ease-out}.main-nav.is-dragging{cursor:grabbing}.main-nav.is-dragging .nav-selection{transition:width .13s ease-out,height .13s ease-out}.main-nav.is-static-selection .nav-selection,.main-nav.is-static-selection a{transition:none}.main-nav.is-dragging a{cursor:grabbing}.main-nav a{color:#cfdaec;z-index:2;border-radius:30px;padding:10px 21px;font-size:.875rem;transition:color .2s,background .2s;position:relative}.main-nav a:hover{color:#faf8ff}.main-nav a[aria-current=location]{color:#faf8ff;background:0 0}.header-actions{align-items:center;gap:24px;margin-left:auto;display:flex}.header-contact{color:#dcd8e8;white-space:nowrap;align-items:center;gap:10px;min-height:44px;font-size:.875rem;display:flex}.header-contact:hover{color:var(--coral)}.header-blog{color:var(--blue)}@media (min-width:781px) and (max-width:1000px){.main-nav a{padding-inline:12px}.header-contact{font-size:.75rem}.header-actions{gap:16px}}.hero{isolation:isolate;min-height:740px;padding-top:62px;position:relative}.hero-content{z-index:2;pointer-events:none;width:64%;position:relative}.hero-content a{pointer-events:auto}.eyebrow{letter-spacing:.13em;color:#c0cfe6;align-items:center;gap:12px;font-size:.75rem;font-weight:700;line-height:1.7;display:flex}.eyebrow-line{background:var(--coral);width:24px;height:1px}.hero h1{font-family:var(--display);letter-spacing:-.05em;margin:26px 0 25px;font-size:clamp(5.5rem,8.8vw,8rem);font-weight:400;line-height:1.015}.hero-name{width:-moz-fit-content;width:fit-content;display:block}.hero-heading-role{text-transform:uppercase;margin-bottom:26px}.hero h1:has(.hero-heading-role){margin-top:0}.name-second{color:#d6e6ff}.name-dot{color:var(--coral)}.hero-role{font-family:var(--display);letter-spacing:-.02em;font-size:1.6rem;font-weight:400;line-height:1.4}.hero-role span{color:#bed0ed}.hero-role .hero-role-morph{white-space:normal;max-width:100%}.hero-role-button{pointer-events:auto;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;display:block}.hero-role-button:focus-visible{outline-offset:6px;outline:2px solid #bed0ed}.hero-role-hint{display:none}.glass.glass-playground{clip-path:polygon(50% 0%,65.654% .121%,72.085% .483%,76.939% 1.088%,80.931% 1.941%,84.329% 3.045%,87.268% 4.408%,89.824% 6.039%,92.045% 7.955%,93.961% 10.176%,95.592% 12.732%,96.955% 15.671%,98.059% 19.069%,98.912% 23.061%,99.517% 27.915%,99.879% 34.346%,100% 50%,99.879% 65.654%,99.517% 72.085%,98.912% 76.939%,98.059% 80.931%,96.955% 84.329%,95.592% 87.268%,93.961% 89.824%,92.045% 92.045%,89.824% 93.961%,87.268% 95.592%,84.329% 96.955%,80.931% 98.059%,76.939% 98.912%,72.085% 99.517%,65.654% 99.879%,50% 100%,34.346% 99.879%,27.915% 99.517%,23.061% 98.912%,19.069% 98.059%,15.671% 96.955%,12.732% 95.592%,10.176% 93.961%,7.955% 92.045%,6.039% 89.824%,4.408% 87.268%,3.045% 84.329%,1.941% 80.931%,1.088% 76.939%,.483% 72.085%,.121% 65.654%,0% 50%,.121% 34.346%,.483% 27.915%,1.088% 23.061%,1.941% 19.069%,3.045% 15.671%,4.408% 12.732%,6.039% 10.176%,7.955% 7.955%,10.176% 6.039%,12.732% 4.408%,15.671% 3.045%,19.069% 1.941%,23.061% 1.088%,27.915% .483%,34.346% .121%);left:max(22px,50% - 624px);top:calc(8px + env(safe-area-inset-top,0px));z-index:30;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;border-radius:20%;place-items:center;width:112px;height:112px;padding:0;display:grid;position:fixed}.glass-playground.is-dragging{cursor:grabbing}.glass-playground:focus,.glass-playground:focus-visible{outline:none}@media (max-width:780px){.glass.glass-playground{width:84px;height:84px;left:8px;top:calc(14px + env(safe-area-inset-top,0px))}.wordmark{left:28px;top:calc(34px + env(safe-area-inset-top,0px))}}.hero-description{color:var(--muted);max-width:440px;margin-top:16px;font-size:1rem;line-height:1.8}.hero-actions{align-items:center;gap:27px;margin-top:30px;display:flex}.hero-action{color:#dbe6f8;justify-items:center;gap:12px;min-width:82px;font-size:.75rem;font-weight:700;display:grid}.action-orb{color:#eef5ff;border-radius:100px;place-items:center;width:66px;height:66px;transition:transform .25s;display:grid}.action-orb-coral{color:var(--coral)}.action-orb-blue{color:var(--blue)}.hero-action:hover .action-orb{transform:translateY(-4px)}.button{border-radius:100px;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:13px 23px;font-size:.875rem;font-weight:700;transition:box-shadow .25s,background .25s,transform .25s;display:inline-flex;position:relative}.button:hover{transform:translateY(-2px)}.button-primary{color:var(--coral)}.hero-art{z-index:2;pointer-events:none;width:780px;height:710px;position:absolute;top:-30px;right:-40px}.hero-art canvas{opacity:0;width:100%;height:100%;display:block}.hero-art canvas.is-ready{opacity:1}.aurora-fallback{border-radius:50%;width:290px;height:420px;position:absolute;top:16%;left:42%;transform:rotate(-35deg);box-shadow:inset 12px 8px 18px #b0cbf2aa,inset -12px -8px 18px #ee97a6aa,0 0 65px #86b5fa22}.aurora-fallback:before,.aurora-fallback:after{content:"";border-radius:inherit;box-shadow:inherit;position:absolute;inset:0;transform:rotate(35deg)}.aurora-fallback:after{transform:rotate(70deg)}.hero-art.has-artwork .aurora-fallback{opacity:0}.current-card{z-index:3;border-radius:28px;width:343px;padding:21px 24px;position:absolute;top:448px;right:0}.current-card-top{justify-content:space-between;align-items:center;display:flex}.mini-label{letter-spacing:.12em;color:#b7c7e0;font-size:.75rem;font-weight:700;line-height:1.7}.build-dots{flex-shrink:0;align-items:center;gap:5px;height:18px;margin-left:12px;display:inline-flex}.build-dots i{opacity:.5;background:#ff6575;border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite build-dot-pulse;box-shadow:0 0 9px #ff657545}.build-dots i:nth-child(2){animation-delay:.18s}.build-dots i:nth-child(3){animation-delay:.36s}@keyframes build-dot-pulse{0%,65%,to{opacity:.45;transform:translateY(0)scale(.85)}28%,36%{opacity:1;transform:translateY(-2px)scale(1.1)}}.build-shimmer{--shimmer-color:#d4dfef;max-width:100%;color:var(--shimmer-color);display:inline-block}.build-shimmer-title{--shimmer-color:#edf3fd}@supports ((-webkit-background-clip:text) or (background-clip:text)){.build-shimmer{color:#0000;background-image:linear-gradient(100deg, var(--shimmer-color) 0%, var(--shimmer-color) 42%, #fff 50%, var(--shimmer-color) 58%, var(--shimmer-color) 100%);background-position:100% 0;background-size:250% 100%;-webkit-background-clip:text;background-clip:text;animation:4.4s linear infinite build-text-shimmer}}@keyframes build-text-shimmer{0%,10%{background-position:100% 0}80%,to{background-position:0 0}}.motion-off .build-shimmer{color:var(--shimmer-color);background:0 0;animation:none}.motion-off .build-dots i{opacity:.85;animation:none;transform:none}@media (prefers-reduced-motion:reduce){.build-shimmer{color:var(--shimmer-color);background:0 0;animation:none}.build-dots i{opacity:.85;animation:none;transform:none}}@media (forced-colors:active){.build-shimmer{color:canvastext;background:0 0;animation:none}}.current-card>p{font-family:var(--display);letter-spacing:-.035em;color:#edf3fd;margin-top:10px;font-size:1.25rem}.current-card-bottom{color:#c0d0e9;justify-content:space-between;gap:10px;margin-top:16px;font-size:.75rem;display:flex}.current-card-bottom>span:last-child{color:#d6e6ff;border-radius:100px;margin:-4px -2px;padding:4px 8px}.hero-bottom{border-bottom:1px solid var(--line);color:#b7c7df;justify-content:space-between;align-items:center;width:100%;padding:23px 0;font-size:.75rem;display:flex;position:absolute;bottom:22px}.location{align-items:center;gap:8px;display:flex}.divider-dot{color:#91a9cd;margin:0 5px}.scroll-link{align-items:center;gap:11px;display:flex}.scroll-link:hover{color:#e9f2ff}.scroll-icon{border:1px solid #84758e;border-radius:9px;width:15px;height:23px;position:relative}.scroll-icon:after{content:"";background:#bda6d4;border-radius:2px;width:2px;height:5px;position:absolute;top:4px;left:6px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:45px;display:flex}.section-note{color:#aabbd6;font-size:.8125rem}.display-heading{font-family:var(--display);letter-spacing:-.04em;font-size:clamp(2.8rem,4.3vw,4rem);font-weight:400;line-height:1.13}.muted-text{color:#a5bbdf}.about-grid{grid-template-columns:1fr 1fr;gap:70px;display:grid}.about-copy{color:var(--muted);padding-top:2px}.about-copy p+p{margin-top:18px}.about-tags{flex-wrap:wrap;gap:14px;margin-top:25px;display:flex}.portfolio-blog-link{min-height:44px;color:var(--blue);align-items:center;gap:10px;font-size:.875rem;display:inline-flex}.about-copy .portfolio-blog-link{margin-top:16px}.portfolio-blog-link:hover{color:var(--coral)}.about-tags span{color:#cfddf3;font-size:.75rem}.about-tags span+span:before{content:"·";color:#91a9cd;margin-right:14px}.impact-grid{grid-template-columns:repeat(3,1fr);gap:17px;margin-top:54px;display:grid}.impact-card{border-radius:28px;padding:31px 29px 25px;transition:border-color .3s,background .3s;position:relative;overflow:hidden}.metric{font-family:var(--display);letter-spacing:-.03em;color:#cce0ff;margin-bottom:19px;font-size:3.35rem;font-weight:400;line-height:1.2}.metric-suffix{letter-spacing:-.04em;color:#aecaf4;margin-left:3px;font-size:1.9rem}.metric-separator{color:#9eb5d7;vertical-align:middle;padding:0 15px;font-size:2.1rem;display:inline-block}.impact-card h3{letter-spacing:-.02em;margin-bottom:9px;font-size:.9375rem;font-weight:700}.impact-card p{color:#bccbe1;max-width:285px;font-size:.875rem;line-height:1.8}.metric-source{letter-spacing:.12em;color:#a8bbd7;margin-top:24px;font-size:.75rem;display:block}.section-title-row{justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:20px;display:flex}.section-title-row>p{color:#adbfdb;font-size:.875rem;line-height:1.7}.title-dot{color:var(--coral)}.experience-section{position:relative}.timeline{--group-inset:37px;border-radius:28px;flex-direction:column;display:flex}.career-card{border-radius:0;grid-template-columns:260px 1fr;gap:35px;padding:37px 37px 33px;display:grid;position:relative}.career-card+.career-card:before{content:"";inset:0 var(--group-inset) auto;background:var(--line);height:1px;position:absolute}.career-meta{flex-direction:column;align-items:flex-start;gap:13px;padding-top:2px;display:flex}.career-date{letter-spacing:.055em;color:#cfdbef;font-size:.75rem}.career-place{color:#a9bad5;font-size:.75rem}.role-badge{color:#f1b2be;border-radius:100px;padding:4px 10px;font-size:.75rem}.company-label{letter-spacing:.14em;color:#b9d2f6;font-size:.75rem;font-weight:700}.career-content h3{font-family:var(--display);letter-spacing:-.035em;margin:8px 0 14px;font-size:1.55rem;font-weight:400;line-height:1.35}.career-content>p{color:#bfcee4;max-width:650px;font-size:.9375rem;line-height:1.8}.achievement-list{color:#b8c9e1;flex-direction:column;gap:11px;margin:18px 0 0;padding:0;font-size:.875rem;line-height:1.8;list-style:none;display:flex}.achievement-list li{padding-left:17px;position:relative}.achievement-list li:before{content:"";background:#abcaff99;border-radius:1px;width:4px;height:4px;position:absolute;top:.7em;left:0}.tech-tags{flex-wrap:wrap;gap:7px;margin-top:23px;display:flex}.tech-tags>span{color:#bdcfea;border-radius:5px;padding:5px 10px;font-size:.75rem}.career-details{margin-top:15px}.career-details summary{cursor:pointer;color:#fff;background:#6b6b6b99;border:0;border-radius:30px;align-items:center;gap:12px;padding:8px 13px;font-size:.8125rem;list-style:none;transition:background-color .2s;display:inline-flex}.career-details summary:hover,.career-details summary:focus-visible{background:#73737399}.career-details summary::-webkit-details-marker{display:none}.career-details-content{display:flow-root;overflow:hidden}.details-plus{font-size:1.15rem;font-weight:400;transition:transform .2s}.career-details[open]:not([data-expanded=false]) .details-plus{transform:rotate(45deg)}.compact-career{padding-block:29px}.compact-career h3{margin-bottom:9px;font-size:1.35rem}.compact-career .career-content>p{font-size:.875rem}.compact-career .tech-tags{margin-top:16px}.stack-grid{--group-inset:25px;border-radius:28px;grid-template-columns:repeat(4,1fr);display:grid}.stack-card{border-radius:0;padding:28px 25px 32px;position:relative;overflow:hidden}.stack-card+.stack-card:before{content:"";inset:var(--group-inset) auto var(--group-inset) 0;background:var(--line);width:1px;position:absolute}.stack-symbol{font-family:var(--display);color:#b4d0fa;margin-bottom:27px;font-size:1.4rem;line-height:1;display:block}.stack-card h3{font-family:var(--display);letter-spacing:-.035em;margin-top:5px;margin-bottom:22px;font-size:1.3rem;font-weight:400}.stack-card .mini-label{font-size:.75rem}.stack-tags{flex-wrap:wrap;gap:8px 6px;display:flex}.tech-tags>span,.stack-tags>span,.role-badge,.current-card-bottom>span:last-child{color:#e0e0e0;background:#80808038}.stack-tags>span{border-radius:5px;padding:6px 9px;font-size:.75rem;line-height:1.5;transition:color .2s}.stack-tags>span:hover{color:#e3eeff}.education-section{padding-top:60px}.education-grid{--group-inset:35px;border-radius:28px;grid-template-columns:1.8fr 1fr;display:grid}.education-main,.education-aside{border-radius:0;padding:35px;position:relative}.education-aside:before{content:"";inset:var(--group-inset) auto var(--group-inset) 0;background:var(--line);width:1px;position:absolute}.education-main h2{font-family:var(--display);letter-spacing:-.04em;margin-bottom:20px;font-size:2.2rem;font-weight:400;line-height:1.2}.education-item+.education-item{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.education-item h3{letter-spacing:-.015em;margin:7px 0 4px;font-size:.9375rem;font-weight:400;line-height:1.6}.education-item p{color:#b3c5e0;font-size:.8125rem}.education-aside{flex-direction:column;justify-content:center;display:flex}.language-mark{font-family:var(--display);letter-spacing:-.07em;color:#c8dfff;margin:20px 0 0;font-size:4.5rem;line-height:1}.language-mark span{font-family:var(--body-font);color:#cbdaf1;letter-spacing:0;margin-left:13px;font-size:.875rem}.education-aside>p{color:#bccde5;margin-top:7px;font-size:.875rem;line-height:1.8}.education-divider{background:var(--line);height:1px;margin:25px 0}.education-aside h3{font-family:var(--display);letter-spacing:-.025em;font-size:1.4rem;font-weight:400}.contact-section{padding-bottom:50px}.contact-panel{border-radius:28px;min-height:460px;padding:53px 57px;position:relative;overflow:hidden}.contact-panel .eyebrow{z-index:1;position:relative}.contact-panel h2{z-index:1;margin:23px 0 16px;font-size:clamp(3.2rem,5.2vw,4.5rem);position:relative}.contact-panel h2>span{color:#c5dbfc}.contact-panel>p{color:#c0cfe6;font-size:.9375rem;line-height:1.8;position:relative}.contact-actions{align-items:center;gap:25px;margin-top:28px;display:flex;position:relative}.text-link{color:#c1d0e7;align-items:center;gap:10px;padding-block:14px;font-size:.875rem;display:inline-flex}.text-link:hover{color:#edf4ff}.contact-glow{pointer-events:none;background:radial-gradient(at 60% 30%,#e798ab24,#0000 52%),radial-gradient(at 75% 65%,#729fe824,#0000 46%);position:absolute;inset:-20% -20% -20% 42%}.contact-glow:before,.contact-glow:after{content:"";border:1px solid #9ec6ff22;border-radius:50%;width:380px;height:380px;position:absolute;top:24%;left:20%;transform:rotate(-30deg)scaleY(.72)}.contact-glow:after{border-color:#9ec6ff14;width:440px;height:440px;top:18%;left:16%}.email-row{color:#b5c7e1;z-index:2;align-items:center;gap:9px;font-size:.75rem;display:flex;position:absolute;bottom:57px;right:57px}.copy-email{border-radius:50%;padding:8px;display:flex}.copy-email:hover,.email-row a:hover{color:#e0edff}.site-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;min-height:108px;margin-top:15px;padding-block:24px 84px;display:flex}.footer-name{font-family:var(--display);letter-spacing:-.03em;font-size:1rem;font-weight:400}.footer-name span{color:#f1a1ab}.footer-note{color:#a5b8d5;font-size:.75rem}#motion-toggle{color:#e0e0e0;background:#80808038;border-radius:30px;align-items:center;gap:9px;padding:12px 16px;font-size:.75rem;display:flex}.motion-bars{align-items:center;gap:3px;height:13px;display:flex}.motion-bars i{background:#b4d0fa;width:2px;height:7px;display:block}.motion-bars i:nth-child(2){height:12px}.motion-bars i:nth-child(3){height:9px}#motion-toggle[aria-pressed=true] .motion-bars i{height:3px}.skip-link{z-index:30;color:#101b30;background:#d4e5ff;border-radius:5px;padding:12px 20px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.motion-off{scroll-behavior:auto}.motion-off *{transition:none!important}.glass.card-hover-surface{transform-origin:50%;transform:perspective(var(--card-perspective)) translateY(var(--card-hover-lift,0px)) rotateX(var(--card-tilt-x,0deg)) rotateY(var(--card-tilt-y,0deg)) scale(var(--card-hover-scale,1))}.glass.card-hover-surface.is-tilting{will-change:transform}.motion-off .glass.card-hover-surface{transform:none}@media (prefers-reduced-motion:reduce){.glass.card-hover-surface{transform:none}}@media (min-width:1600px){.hero-art{right:-90px}.hero h1{font-size:8rem}}@media (max-width:1100px){.shell{width:calc(100% - 72px)}.hero{min-height:720px}.hero-art{opacity:.58;width:630px;right:-30px}.current-card{width:310px;top:475px}.about-grid{gap:40px}.career-card{grid-template-columns:205px 1fr;gap:24px;padding:30px}.experience-card{--group-inset:30px}.stack-grid{--group-inset:28px;grid-template-columns:repeat(2,1fr)}.stack-card{padding:28px}.stack-card:nth-of-type(odd):before{content:none}.stack-card:nth-of-type(n+3):after{content:"";inset:0 var(--group-inset) auto;background:var(--line);height:1px;position:absolute}.email-row{margin-top:25px;position:relative;bottom:auto;right:auto}.contact-panel{padding:45px}.hero-role{font-size:1.4rem}.hero-description{max-width:390px}}@media (max-width:780px){.shell{width:calc(100% - 44px)}.site-header{height:auto;min-height:calc(98px + env(safe-area-inset-top,0px));padding-top:calc(22px + env(safe-area-inset-top,0px));padding-bottom:4px}.main-nav{top:auto;bottom:calc(14px + env(safe-area-inset-bottom,0px));gap:0;padding:4px}.main-nav a{padding:9px 13px;font-size:.75rem}.header-contact{font-size:.75rem}.header-contact svg{display:none}.header-blog svg{display:block}.header-actions{gap:16px}.wordmark{font-size:2.25rem}.hero{min-height:840px;padding-top:59px}.hero-content{width:100%}.hero h1{font-size:6.2rem}.hero-art{opacity:.42;width:520px;height:600px;top:50px;right:0}.hero-description{max-width:380px}.hero-role{font-size:1.4rem}.current-card{width:325px;top:auto;bottom:114px;right:0}.hero-bottom{gap:15px;font-size:.75rem;bottom:13px}.location{flex-wrap:wrap;gap:6px}.scroll-link{white-space:nowrap}.hero-bottom .divider-dot{margin:0 1px}.section{padding-block:59px}.section-heading{margin-bottom:32px}.section-note{display:none}.about-grid{grid-template-columns:1fr;gap:18px}.about-copy p{font-size:.9375rem}.impact-grid{gap:10px;margin-top:34px}.impact-card{padding:24px 18px}.metric{font-size:2.5rem}.metric-suffix{font-size:1.3rem}.impact-card h3{font-size:.8125rem;line-height:1.5}.impact-card p{font-size:.8125rem}.metric-source{font-size:.75rem}.career-card{grid-template-columns:1fr;gap:18px;padding:26px}.career-meta{flex-flow:wrap;align-items:center;gap:10px 17px}.career-place{margin-left:auto}.career-content h3{font-size:1.4rem}.career-date,.career-meta .role-badge{font-size:.75rem}.section-title-row>p{display:none}.section-title-row{margin-bottom:16px}.education-grid{grid-template-columns:1fr 1fr}.education-main,.education-aside{padding:27px}.education-main h2{font-size:1.9rem}.contact-panel{padding:36px}.contact-panel h2{font-size:3.3rem}.footer-note{display:none}.education-item h3{font-size:.875rem}.education-item p{font-size:.75rem}.contact-actions{gap:18px}.text-link{font-size:.8125rem}}@media (max-width:540px){.shell{width:calc(100% - 40px)}.site-header{height:76px}.main-nav a{padding:9px 10px}.header-contact{display:none}.hero{min-height:838px;padding-top:28px}.hero .eyebrow{letter-spacing:.09em;gap:8px;font-size:.75rem}.hero h1{letter-spacing:-.05em;margin-top:22px;margin-bottom:20px;font-size:clamp(4.8rem,19vw,6.4rem)}.hero-art{opacity:.35;width:100%;height:530px;top:175px;right:0}.hero-role{font-size:1.25rem}.hero-description{max-width:320px;font-size:.9375rem}.hero-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;width:min(100%,300px);margin-top:25px;display:grid}.hero-action{min-width:0}.button{min-height:48px;padding:13px 16px;font-size:.8125rem}.button svg{width:15px}.current-card{width:100%;padding:20px 21px;bottom:122px;right:0}.current-card>p{font-size:1.2rem}.current-card-bottom{font-size:.75rem}.hero-bottom{flex-direction:column;align-items:flex-start;gap:16px;padding:20px 0;font-size:.75rem;bottom:0}.scroll-icon{width:12px;height:19px}.scroll-icon:after{left:4.5px}.scroll-link{gap:8px}.section{padding-block:49px}.section-heading .eyebrow{font-size:.75rem}.display-heading{font-size:clamp(2rem,9.5vw,2.8rem)}.about-copy p{font-size:.9375rem}.about-tags{gap:10px 14px}.about-tags span{font-size:.75rem}.impact-grid{grid-template-columns:1fr}.impact-card{grid-template-columns:100px 1fr;gap:6px 20px;padding:24px;display:grid}.metric{grid-area:1/1/4;align-self:center;margin:0;font-size:2.5rem}.metric-suffix{font-size:1.25rem}.metric-separator{padding:0 8px;font-size:1.5rem}.impact-card h3{grid-column:2;font-size:.9375rem}.impact-card p{grid-column:2;font-size:.8125rem}.metric-source{grid-column:2;margin-top:4px;font-size:.75rem}.career-card{gap:16px;padding:24px 21px}.career-meta{gap:10px 12px}.career-place,.career-date{font-size:.75rem}.role-badge{padding:3px 7px}.career-meta .role-badge+.career-place{width:100%;margin-left:0}.company-label{font-size:.75rem}.career-content h3{font-size:1.3rem}.career-content>p{font-size:.875rem}.achievement-list{gap:9px;font-size:.8125rem}.compact-career h3{font-size:1.25rem}.stack-grid{gap:0}.stack-card{padding:23px 19px}.stack-card h3{font-size:1.15rem}.stack-card .mini-label{letter-spacing:.06em;font-size:.75rem}.stack-symbol{margin-bottom:21px}.stack-tags{gap:6px}.stack-tags>span{padding:5px 7px;font-size:.75rem}.education-grid{grid-template-columns:1fr}.education-main,.education-aside{padding:27px}.education-main h2{font-size:2rem}.education-aside{display:block}.language-mark{margin-top:16px;font-size:3.7rem}.education-aside h3{font-size:1.3rem}.contact-section{padding-bottom:32px}.contact-panel{border-radius:22px;padding:31px 24px}.contact-panel .eyebrow{letter-spacing:.07em;font-size:.75rem}.contact-panel h2{font-size:clamp(2.45rem,10.1vw,3.2rem)}.contact-panel>p{font-size:.875rem}.contact-actions{flex-direction:column;align-items:flex-start;gap:5px;margin-top:24px}.email-row{gap:7px;margin-top:13px;font-size:.75rem}.contact-glow{left:0}.site-footer{gap:15px;min-height:100px}.footer-name{font-size:.875rem}#motion-toggle{font-size:.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.hero-art canvas{transition:none}.button:hover{transform:none}}.glass-controls{z-index:40;justify-items:end;gap:12px;width:320px;max-width:calc(100% - 32px);display:grid;position:fixed;bottom:18px;right:20px}.glass-controls[hidden],.glass-controls-panel[hidden]{display:none}.glass-controls-panel{border-radius:24px;width:100%;max-height:calc(100dvh - 100px);padding:20px 22px;overflow-y:auto}.glass-controls-heading,.glass-controls-bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.glass-controls-heading h2{font:400 1.2rem var(--display);letter-spacing:-.025em}.glass-controls-close{color:#bcc9df;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.glass-controls-close:hover{color:#f1f5fc}.glass-controls-panel>p{color:var(--muted);margin:3px 0 18px;font-size:.8125rem;line-height:1.6}.glass-controls-fields{gap:12px;display:grid}.glass-control{grid-template-columns:1fr auto;gap:3px 12px;font-size:.8125rem;display:grid}.glass-control output{color:var(--blue);font-variant-numeric:tabular-nums;font-size:.75rem}.glass-control input[type=range]{appearance:none;cursor:pointer;width:100%;height:28px;accent-color:var(--blue);background:0 0;border:0;grid-column:1/-1;margin:0}.glass-control input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--blue) var(--range-progress), #d5e5ff2e var(--range-progress));border-radius:10px;height:4px}.glass-control input[type=range]::-moz-range-track{background:linear-gradient(to right, var(--blue) var(--range-progress), #d5e5ff2e var(--range-progress));border-radius:10px;height:4px}.glass-control input[type=range]::-webkit-slider-thumb{appearance:none;background:#edf4ff;border:0;border-radius:50%;width:16px;height:16px;margin-top:-6px;box-shadow:0 2px 8px #07101f40}.glass-control input[type=range]::-moz-range-thumb{background:#edf4ff;border:0;border-radius:50%;width:16px;height:16px;box-shadow:0 2px 8px #07101f40}.glass-control input:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}.glass-color-inputs{grid-column:1/-1;align-items:center;gap:12px;margin:5px 0 3px;display:flex}.glass-color-inputs input{border:0;border-radius:9px;height:34px;margin:0}.glass-color-inputs input[type=color]{cursor:pointer;appearance:none;background:0 0;flex:0 0 46px;width:46px;padding:0;overflow:hidden}.glass-color-inputs input[type=color]::-webkit-color-swatch-wrapper{padding:0}.glass-color-inputs input[type=color]::-webkit-color-swatch{border:0;border-radius:9px}.glass-color-inputs input[type=color]::-moz-color-swatch{border:0;border-radius:9px}.glass-color-hex{min-width:0;color:inherit;font:inherit;font-variant-numeric:tabular-nums;background:#edf4ff0a;flex:1;padding:0 12px}.glass-controls-bottom{margin-top:17px;padding-top:16px}.glass-controls-bottom>span{color:#aabbd6;font-size:.6875rem}.glass-controls-reset{border-radius:20px;padding:8px 13px;font-size:.75rem}.glass-controls-toggle{border-radius:30px;align-items:center;gap:10px;min-height:44px;padding:12px 16px;font-size:.8125rem;display:flex}@media (max-width:540px){.glass-controls{gap:10px;max-width:calc(100% - 24px);bottom:12px;right:12px}.glass-controls-panel{max-height:calc(100dvh - 90px)}}.hero-description,.about-copy p,.impact-card p,.career-content>p,.compact-career .career-content>p,.achievement-list,.education-aside>p,.contact-panel>p{font-size:1rem}.tech-tags>span,.stack-tags>span,.about-tags span,.main-nav a{font-size:.875rem}.hero-bottom,.footer-note,#motion-toggle,.email-row{font-size:.8125rem}@media (max-width:540px){.hero{min-height:0}.hero h1{font-size:clamp(3.7rem,18vw,5.2rem)}.current-card{margin-top:32px;position:relative;top:auto;bottom:auto;right:auto}.hero-bottom{margin-top:20px;position:relative;bottom:auto}.hero-art{pointer-events:none}.impact-card{grid-template-columns:100px 1fr}.stack-grid{grid-template-columns:1fr}.stack-card+.stack-card:before{content:"";inset:0 var(--group-inset) auto;width:auto;height:1px}.stack-card:nth-of-type(n+3):after{content:none}.stack-card{padding:25px}.stack-symbol{float:right}.stack-card h3{font-size:1.4rem}.contact-panel h2{font-size:clamp(2.3rem,9.4vw,3.2rem)}.main-nav a{padding:9px 12px}}@media (max-width:780px){html{scroll-padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}.hero{min-height:0;padding-top:28px;scroll-margin-top:84px}.hero-content,.career-content,.stack-card,.education-main{min-width:0}.current-card{width:100%;margin-top:32px;position:relative;inset:auto}.current-card-bottom{flex-wrap:wrap;align-items:center;gap:12px}.hero-bottom{flex-wrap:wrap;margin-top:20px;position:relative;inset:auto}.hero-description{max-width:36rem}.hero-art{display:none}.hero-role-button{width:100%;min-height:48px}.main-nav a,.header-contact,.copy-email,.scroll-link,.career-details summary{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.copy-email{flex:0 0 44px;width:44px}.career-details summary{justify-content:space-between;padding:12px 18px}.impact-grid{grid-template-columns:1fr;gap:16px}.impact-card{padding:26px;display:block}.metric{white-space:nowrap;align-items:baseline;margin-bottom:16px;font-size:3.15rem;display:flex}.impact-card h3{font-size:1.05rem;line-height:1.45}.impact-card p{max-width:none}.metric-source{margin-top:18px}.education-grid{--group-inset:27px;grid-template-columns:1fr}.education-aside:before{inset:0 var(--group-inset) auto;width:auto;height:1px}.email-row{width:100%;min-width:0}.email-row a{overflow-wrap:anywhere;min-width:0}.site-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}}@media (max-width:540px){html{scroll-padding-top:calc(88px + env(safe-area-inset-top,0px))}.shell{width:calc(100% - 36px)}.site-header{height:auto;min-height:calc(98px + env(safe-area-inset-top,0px));padding-top:calc(22px + env(safe-area-inset-top,0px));padding-bottom:4px}.main-nav{width:calc(100% - 36px);max-width:420px;padding:6px}.main-nav a{flex:1 1 0;min-width:0;padding:10px 6px;font-size:.8125rem}.main-nav:after{content:"";border-radius:inherit;z-index:1;pointer-events:none;background:#101b306b;position:absolute;inset:0}.wordmark{align-items:center;min-width:44px;min-height:44px;font-size:2rem;display:flex}.header-contact{gap:8px;padding-inline:0;font-size:.75rem;display:inline-flex}.hero{padding-top:18px}.hero .eyebrow{letter-spacing:.065em;flex-wrap:wrap;font-size:.6875rem}.hero h1{font-size:clamp(3.35rem,17.5vw,5.2rem)}.hero-role-button{gap:6px;display:grid}.hero-role{font-size:clamp(1.1rem,5vw,1.25rem)}.hero-role-morph{min-height:2.8em;display:block}.hero-role-hint{font-family:var(--body-font);letter-spacing:0;color:var(--muted);align-items:center;gap:7px;font-size:.75rem;display:flex}.hero-actions{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;width:100%}.hero-action{text-align:center;gap:10px;padding-block:8px;line-height:1.45}.action-orb{width:60px;height:60px}.hero-bottom{gap:8px;padding-block:16px}.scroll-link{justify-content:flex-start}.career-card,.stack-card,.education-main,.education-aside,.contact-panel{border-radius:0;padding:24px 20px}.experience-card,.stack-group,.education-group{--group-inset:20px;border-radius:24px}.career-place{margin-left:0}.career-details summary{gap:8px;width:100%;padding-inline:12px;font-size:.875rem;display:flex}.contact-panel{border-radius:24px;min-height:0}.contact-actions{align-items:stretch;gap:10px}.contact-actions .text-link{justify-content:center}.email-row{justify-content:space-between;font-size:.75rem}.site-footer{flex-wrap:wrap;gap:10px}}@media (hover:none) and (pointer:coarse){.hero-action:hover .action-orb,.button:hover{transform:none}.hero-action:active .action-orb{transform:scale(.92)}.button:active,.copy-email:active{transform:scale(.97)}.hero-role-button:active{color:var(--coral)}}@media (prefers-reduced-motion:reduce){.hero-action:active .action-orb,.button:active,.copy-email:active{transform:none}}.motion-off .hero-action:active .action-orb,.motion-off .button:active,.motion-off .copy-email:active{transform:none}
