@import url(https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&family=Space+Grotesk:wght@500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0}button,input,textarea{font-family:inherit}::selection{background:#3157ff;color:#fff}:root{--ink:#141824;--muted:#5d6270;--paper:#f0f3ef;--paper-strong:#fafbf8;--line:#14182429;--cobalt:#3157ff;--orange:#ff633d;--yellow:#f2ca52;--orchid:#bd4de0;--shadow:0 24px 70px #1b202f1c;--glass-blur:12px;--glass-panel:color-mix(in srgb,var(--paper-strong) 82%,#0000)}:root[data-theme=dark]{--ink:#f7f7f1;--muted:#b5b7c2;--paper:#11141d;--paper-strong:#1b1f2b;--line:#f7f7f129;--shadow:0 24px 70px #00000047}*{box-sizing:border-box}body,html{background:#f0f3ef;background:var(--paper)}body{color:#141824;color:var(--ink);max-width:100%;overflow-x:hidden}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit}.app-shell{isolation:isolate;min-height:100vh;overflow:clip;position:relative}.paint-backdrop{--scroll-y:0px;inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:0}.paint{opacity:.9;position:absolute;will-change:transform}.paint:after,.paint:before{background:inherit;border-radius:inherit;content:"";position:absolute}.paint-cobalt{background:#3157ff;background:var(--cobalt);border-radius:68% 32% 60% 40%/52% 66% 34% 48%;height:25vw;min-height:260px;min-width:440px;right:-20vw;top:8vh;transform:translate3d(0,calc(var(--scroll-y)*-.11),0) rotate(-12deg);width:42vw}.paint-cobalt:before{height:44%;left:-15%;top:12%;transform:rotate(-24deg);width:28%}.paint-cobalt:after{border-radius:46% 54% 70% 30%;height:18%;left:-22%;top:58%;width:13%}.paint-orange{background:#ff633d;background:var(--orange);border-radius:37% 63% 31% 69%/60% 35% 65% 40%;height:19vw;left:-17vw;min-height:220px;min-width:380px;top:76vh;transform:translate3d(0,calc(var(--scroll-y)*-.17),0) rotate(17deg);width:34vw}.paint-orange:before{height:39%;right:-10%;top:2%;transform:rotate(20deg);width:23%}.paint-orange:after{height:15%;right:-20%;top:33%;width:10%}.paint-yellow{background:#f2ca52;background:var(--yellow);border-radius:59% 41% 72% 28%/45% 66% 34% 55%;height:17vw;min-height:190px;min-width:320px;right:-10vw;top:165vh;transform:translate3d(0,calc(var(--scroll-y)*-.08),0) rotate(-8deg);width:29vw}.paint-yellow:before{height:28%;left:-12%;top:60%;transform:rotate(-35deg);width:20%}.paint-yellow:after{height:11%;left:-23%;top:76%;width:7%}.paint-orchid{background:#bd4de0;background:var(--orchid);border-radius:68% 32% 49% 51%/39% 64% 36% 61%;height:21vw;left:-19vw;min-height:230px;min-width:400px;top:275vh;transform:translate3d(0,calc(var(--scroll-y)*-.13),0) rotate(13deg);width:36vw}.paint-orchid:before{height:31%;right:-8%;top:9%;transform:rotate(33deg);width:19%}.paint-orchid:after{height:14%;right:-19%;top:6%;width:8%}.paint-cobalt-small{background:#3157ff;background:var(--cobalt);border-radius:43% 57% 60% 40%/64% 37% 63% 36%;height:10vw;min-height:120px;min-width:190px;right:-5vw;top:390vh;transform:translate3d(0,calc(var(--scroll-y)*-.06),0) rotate(-19deg);width:16vw}.paint-speckles{border-radius:50%;height:9px;opacity:.75;position:absolute;width:9px}.paint-speckles-one{background:#ff633d;background:var(--orange);box-shadow:33px -21px 0 5px #ff633d,82px 17px 0 -1px #ff633d,-21px 33px 0 2px #ff633d;box-shadow:33px -21px 0 5px var(--orange),82px 17px 0 -1px var(--orange),-21px 33px 0 2px var(--orange);right:9vw;top:62vh;transform:translateY(calc(var(--scroll-y)*-.2))}.paint-speckles-two{background:#bd4de0;background:var(--orchid);box-shadow:42px 19px 0 4px #bd4de0,91px -12px 0 1px #bd4de0,-27px -28px 0 2px #bd4de0;box-shadow:42px 19px 0 4px var(--orchid),91px -12px 0 1px var(--orchid),-27px -28px 0 2px var(--orchid);left:7vw;top:228vh;transform:translateY(calc(var(--scroll-y)*-.15))}[data-glass-hidden]{--glass-filter:none}.section-heading h2,:where(.hero-copy,.page-intro,.contact-copy)>h1{--glass-blur:5px}.site-header{-webkit-backdrop-filter:blur(12px);-webkit-backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));backdrop-filter:blur(12px);backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));background:color-mix(in srgb,#f0f3ef 88%,#0000);background:color-mix(in srgb,var(--paper) 88%,#0000);border-bottom:1px solid #14182429;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:20}.nav-shell{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr auto 1fr;margin:0 auto;min-height:76px;width:min(1180px,calc(100% - 40px))}.brand,.nav-shell{align-items:center}.brand{color:#141824;color:var(--ink);display:inline-flex;font:700 18px/1 Space Grotesk,sans-serif;gap:11px;letter-spacing:-.04em;text-decoration:none}.brand strong{color:#3157ff;color:var(--cobalt)}.brand-mark{background:#3157ff;background:var(--cobalt);color:#fff;display:grid;font:700 12px/1 Space Grotesk,sans-serif;height:34px;letter-spacing:-.08em;place-items:center;transform:rotate(-4deg);width:34px}.main-nav{align-items:center;display:flex;gap:28px}.main-nav a{color:#5d6270;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.06em;position:relative;text-decoration:none;text-transform:uppercase}.main-nav a:after{background:#ff633d;background:var(--orange);bottom:-10px;content:"";height:2px;left:0;position:absolute;right:100%;transition:right .18s ease}.main-nav a.active,.main-nav a:hover{color:#141824;color:var(--ink)}.main-nav a.active:after,.main-nav a:hover:after{right:0}.nav-actions{align-items:center;display:flex;gap:8px;justify-self:end}.menu-button,.nav-actions a,.nav-actions button{background:color-mix(in srgb,#fafbf8 75%,#0000);background:color-mix(in srgb,var(--paper-strong) 75%,#0000);border:1px solid #14182429;border:1px solid var(--line);border-radius:50%;color:#141824;color:var(--ink);cursor:pointer;display:grid;height:38px;place-items:center;transition:transform .16s ease;width:38px}.menu-button:hover,.nav-actions a:hover,.nav-actions button:hover{background:#fafbf8;background:var(--paper-strong);transform:translateY(-2px)}.menu-button{display:none}.page-shell{margin:0 auto;min-height:75vh;position:relative;width:min(1180px,calc(100% - 40px));z-index:2}.eyebrow{align-items:center;color:#5d6270;color:var(--muted);display:inline-flex;font-size:12px;font-weight:600;gap:9px;letter-spacing:.12em;line-height:1.4;text-transform:uppercase}.status-dot{background:#2da66d;border-radius:50%;box-shadow:0 0 0 5px #2da66d24;height:8px;width:8px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Space Grotesk,sans-serif}.footer-links,.section-heading :is(h2,.eyebrow),.site-footer>:is(p,small),.timeline-period,:where(.hero-copy,.page-intro,.contact-copy)>:is(h1,p,.eyebrow){isolation:isolate;max-width:100%;position:relative;width:-webkit-fit-content;width:fit-content}.timeline-period{align-self:start}.footer-links:before,.section-heading :is(h2,.eyebrow):before,.site-footer>:is(p,small):before,.timeline-period:before,:where(.hero-copy,.page-intro,.contact-copy)>:is(h1,p,.eyebrow):before{-webkit-backdrop-filter:blur(12px);-webkit-backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));backdrop-filter:blur(12px);backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));background:color-mix(in srgb,#f0f3ef 12%,#0000);background:color-mix(in srgb,var(--paper) 12%,#0000);content:"";inset:-18px -24px;-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,#0000,#000 48px,#000 calc(100% - 48px),#0000),linear-gradient(180deg,#0000,#000 36px,#000 calc(100% - 36px),#0000);mask-image:linear-gradient(90deg,#0000,#000 48px,#000 calc(100% - 48px),#0000),linear-gradient(180deg,#0000,#000 36px,#000 calc(100% - 36px),#0000);pointer-events:none;position:absolute;z-index:-1}.button-secondary,.contribution-card,.hero-note,.leetcode-card,.project-card,.project-filters button,.recognition-grid article,.resume-sheet,.timeline-content{-webkit-backdrop-filter:blur(12px);-webkit-backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));backdrop-filter:blur(12px);backdrop-filter:var(--glass-filter,blur(var(--glass-blur)))}.hero-section{display:grid;grid-template-columns:1fr;padding:96px 0 110px}.hero-copy,.hero-note{grid-column:1;grid-row:1}.hero-copy h1{text-wrap:balance;font-size:clamp(58px,8vw,112px);letter-spacing:-.075em;line-height:.9;margin:22px 0 26px;max-width:880px}.hero-copy h1 strong{color:#3157ff;color:var(--cobalt);font-weight:700}.hero-lede{color:#5d6270;color:var(--muted);font-size:clamp(18px,2vw,23px);line-height:1.55;max-width:660px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}.button{align-items:center;border:1px solid #141824;border:1px solid var(--ink);border-radius:2px;display:inline-flex;font-weight:600;gap:10px;justify-content:center;min-height:50px;padding:0 20px;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease}.button:hover{box-shadow:5px 5px 0 #141824;box-shadow:5px 5px 0 var(--ink);transform:translate(-2px,-2px)}.button-primary{background:#141824;background:var(--ink);color:#fafbf8;color:var(--paper-strong)}.button-secondary{background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);color:#141824;color:var(--ink)}.contact-menu{position:relative;z-index:5}.contact-menu summary{cursor:pointer;list-style:none}.contact-menu summary::-webkit-details-marker{display:none}.contact-menu[open] summary svg{transform:rotate(180deg)}.contact-menu-options{background:#fafbf8;background:var(--paper-strong);border:1px solid #14182429;border:1px solid var(--line);box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow);left:0;min-width:230px;padding:6px;position:absolute;top:calc(100% + 8px)}.contact-menu-options a{align-items:center;display:flex;font-size:14px;font-weight:600;gap:10px;padding:12px;text-decoration:none}.contact-menu-options a:focus-visible,.contact-menu-options a:hover{background:#f0f3ef;background:var(--paper)}.hero-note{align-self:end;background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);border:1px solid #14182429;border:1px solid var(--line);box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow);justify-self:end;padding:26px;transform:rotate(2deg);width:min(380px,100%)}.note-number{color:#ff633d;color:var(--orange);display:block;font:700 34px/1 Space Grotesk,sans-serif}.hero-note p{font-size:17px;line-height:1.55;margin:24px 0}.hero-note>span:last-child{color:#5d6270;color:var(--muted);font-size:13px}.note-rule{background:#f2ca52;background:var(--yellow);height:5px;margin-bottom:16px;transform:rotate(-3deg);width:48px}.contribution-card,.section-block{margin:50px 0 140px}.section-heading{margin-bottom:45px;max-width:760px}.contribution-heading h2,.section-heading h2{font-size:clamp(36px,5vw,66px);letter-spacing:-.055em;line-height:.98;margin:14px 0 0}.split-heading{align-items:end;display:flex;gap:35px;justify-content:space-between;max-width:none}.text-link{align-items:center;display:inline-flex;font-weight:600;gap:8px;text-underline-offset:5px}.featured-projects{border-top:1px solid #14182429;border-top:1px solid var(--line)}.featured-project{grid-gap:28px;align-items:center;border-bottom:1px solid #14182429;border-bottom:1px solid var(--line);display:grid;gap:28px;grid-template-columns:78px 1fr auto;min-height:190px;padding:28px 18px;position:relative;text-decoration:none;transition:padding .22s ease}.featured-project:before{background:var(--accent);content:"";inset:0 auto 0 0;position:absolute;transform:scaleY(0);transition:transform .22s ease;width:6px}.featured-project:hover{padding-left:34px}.featured-project:hover:before{transform:scaleY(1)}.contact-links,.featured-projects,.skill-groups{isolation:isolate;position:relative}.contact-links:before,.featured-projects:before,.skill-groups:before{--glass-blur:5px;-webkit-backdrop-filter:blur(12px);-webkit-backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));backdrop-filter:blur(12px);backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));background:color-mix(in srgb,#f0f3ef 55%,#0000);background:color-mix(in srgb,var(--paper) 55%,#0000);content:"";inset:-55px -75px;-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,#0000,#000 90px,#000 calc(100% - 90px),#0000),linear-gradient(180deg,#0000,#000 70px,#000 calc(100% - 70px),#0000);mask-image:linear-gradient(90deg,#0000,#000 90px,#000 calc(100% - 90px),#0000),linear-gradient(180deg,#0000,#000 70px,#000 calc(100% - 70px),#0000);pointer-events:none;position:absolute;z-index:-1}.featured-project h3{font-size:clamp(24px,3vw,38px);letter-spacing:-.04em;margin:4px 0 10px}.featured-project p{color:#5d6270;color:var(--muted);line-height:1.55;margin:0;max-width:700px}.project-index{color:#141824;color:var(--ink);font:700 22px/1 Space Grotesk,sans-serif}.project-year{color:#5d6270;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.1em}.project-arrow{transition:transform .18s ease}.featured-project:hover .project-arrow{transform:translate(4px,-4px)}.accent-cobalt{--accent:var(--cobalt)}.accent-orange{--accent:var(--orange)}.accent-yellow{--accent:var(--yellow)}.accent-orchid{--accent:var(--orchid)}.skills-section{grid-gap:clamp(50px,9vw,130px);align-items:start;display:grid;gap:clamp(50px,9vw,130px);grid-template-columns:1fr 1fr}.skill-groups{border-top:1px solid #14182429;border-top:1px solid var(--line)}.skill-group{grid-gap:24px;border-bottom:1px solid #14182429;border-bottom:1px solid var(--line);display:grid;gap:24px;grid-template-columns:90px 1fr;padding:26px 0}.skill-group>span{color:#3157ff;color:var(--cobalt);font:600 14px/1.5 Space Grotesk,sans-serif;text-transform:uppercase}.skill-group p{line-height:1.7;margin:0}.activity-section{grid-gap:18px;display:grid;gap:18px;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);margin:50px 0 140px}.activity-section.full-year{grid-template-columns:1fr}@keyframes contribution-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes leetcode-slide-down{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}.activity-section.full-year .leetcode-card{animation:leetcode-slide-down .42s ease}.contribution-shell{min-width:0;position:relative;transition:transform .18s ease}.contribution-shell:has(.contribution-card-link:hover){transform:translateY(-4px)}.contribution-shell .contribution-card{margin:0}.contribution-range{align-items:center;color:#5d6270;color:var(--muted);display:flex;font-size:13px;gap:8px;padding:12px;position:absolute;right:calc(clamp(24px, 5vw, 58px) - 12px);top:calc(clamp(24px, 5vw, 58px) + clamp(0px, 2.45vw - 20px, 12px) - 12px);z-index:3}.contribution-range select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fafbf8;background-color:var(--paper-strong);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23141824' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;border:1px solid #14182429;border:1px solid var(--line);border-radius:2px;color:#141824;color:var(--ink);cursor:pointer;font:inherit;min-height:40px;padding:0 32px 0 12px}.contribution-range select:focus-visible{outline:3px solid #3157ff;outline:3px solid var(--cobalt);outline-offset:3px}:root[data-theme=dark] .contribution-range select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23f7f7f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.contribution-card{--contribution-level-1:#9be9a8;--contribution-level-2:#40c463;--contribution-level-3:#30a14e;--contribution-level-4:#216e39;background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);border:1px solid #14182429;border:1px solid var(--line);box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow);color:#141824;color:var(--ink);padding:clamp(24px,5vw,58px)}:root[data-theme=dark] .contribution-card{--contribution-level-1:#0e4429;--contribution-level-2:#006d32;--contribution-level-3:#26a641;--contribution-level-4:#39d353}.contribution-card-link{color:#141824;color:var(--ink);display:block;text-decoration:none;transition:box-shadow .18s ease}.contribution-card-link:hover{box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow)}.contribution-card-link:focus-visible{outline:3px solid #3157ff;outline:3px solid var(--cobalt);outline-offset:5px}.contribution-heading{margin-bottom:24px}.contribution-heading h2{margin-top:0}.contribution-heading h2,.leetcode-card h2{font-size:clamp(32px,3.6vw,48px)}.contribution-shell.has-range .contribution-heading{padding-right:160px}.contribution-heading .eyebrow,.contribution-status{color:#5d6270;color:var(--muted)}.contribution-status{font-size:14px}.github-activity{animation:contribution-fade-in .36s ease;margin-bottom:30px}.contribution-summary{align-items:baseline;color:#5d6270;color:var(--muted);display:flex;flex-wrap:wrap;font-size:14px;gap:6px}.contribution-summary strong{color:#141824;color:var(--ink);font-size:22px}.contribution-summary>span{font-size:12px;margin-left:auto}.contribution-scroll{--contribution-size:12px;overflow-x:auto;overscroll-behavior-x:contain;padding:4px 0 10px}.contribution-scroll.range-3{--contribution-size:18px}.contribution-note{color:#5d6270;color:var(--muted);font-size:12px;line-height:1.5;margin:10px 0 0}.contribution-scroll-hint{display:none}.contribution-months{grid-gap:4px;color:#5d6270;color:var(--muted);display:grid;font-size:11px;gap:4px;grid-auto-columns:var(--contribution-size);min-height:20px;width:-webkit-max-content;width:max-content}.contribution-months span{white-space:nowrap}.contribution-grid{grid-gap:4px;display:grid;gap:4px;grid-auto-columns:var(--contribution-size);grid-template-rows:repeat(7,var(--contribution-size));width:-webkit-max-content;width:max-content}.contribution-grid .contribution-cell{height:var(--contribution-size);width:var(--contribution-size)}.contribution-cell{background:color-mix(in srgb,#141824 8%,#fafbf8);background:color-mix(in srgb,var(--ink) 8%,var(--paper-strong));border-radius:2px;display:block;height:12px;width:12px}.contribution-cell.level-1{background:var(--contribution-level-1)}.contribution-cell.level-2{background:var(--contribution-level-2)}.contribution-cell.level-3{background:var(--contribution-level-3)}.contribution-cell.level-4{background:var(--contribution-level-4)}.contribution-legend{align-items:center;color:#5d6270;color:var(--muted);display:flex;font-size:11px;gap:4px;justify-content:flex-end;margin-top:8px}.contribution-legend>span:first-child{margin-right:4px}.contribution-legend>span:last-child{margin-left:4px}.contribution-footer{align-items:center;color:#5d6270;color:var(--muted);display:flex;font-size:14px;gap:30px;justify-content:space-between}.contribution-footer .text-link,.leetcode-card{color:#141824;color:var(--ink)}.leetcode-card{align-items:flex-start;background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);border:1px solid #14182429;border:1px solid var(--line);box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:0;padding:clamp(24px,4vw,48px);text-decoration:none;transition:transform .18s ease}.leetcode-card:hover{transform:translateY(-4px)}.leetcode-card h2{font-family:Space Grotesk,sans-serif;letter-spacing:-.055em;line-height:.98;margin:0}.leetcode-username{color:#5d6270;color:var(--muted);display:inline-block;font-size:13px;margin-top:12px}.leetcode-stats{margin:34px 0;width:100%}.leetcode-dial{margin:0 auto;position:relative;width:min(200px,100%)}.leetcode-dial svg{display:block;width:100%}.leetcode-dial path{fill:none;stroke-width:9;stroke-linecap:round}.leetcode-dial-track{stroke:color-mix(in srgb,#141824 12%,#0000);stroke:color-mix(in srgb,var(--ink) 12%,#0000)}.leetcode-dial-progress{stroke:#ff633d;stroke:var(--orange)}.leetcode-solved{grid-gap:4px;bottom:8px;color:#5d6270;color:var(--muted);display:grid;font-size:13px;gap:4px;justify-items:center;left:0;margin:0;position:absolute;right:0}.leetcode-solved strong{color:#141824;color:var(--ink);font:700 40px/1 Space Grotesk,sans-serif;letter-spacing:-.05em}.leetcode-meter{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.leetcode-rank{color:#5d6270;color:var(--muted);display:flex;font-size:14px;gap:16px;justify-content:space-between;margin:28px 0 0}.leetcode-rank strong{color:#141824;color:var(--ink);font-family:Space Grotesk,sans-serif}.leetcode-link{font-size:14px;margin-top:auto}.recognition-grid{border-left:1px solid #14182429;border-left:1px solid var(--line);border-top:1px solid #14182429;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(2,1fr)}.recognition-grid article{background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);border-bottom:1px solid #14182429;border-bottom:1px solid var(--line);border-right:1px solid #14182429;border-right:1px solid var(--line);padding:34px}.recognition-grid article>span{color:#ff633d;color:var(--orange);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.recognition-grid h3{font-size:27px;letter-spacing:-.04em;margin:18px 0 10px}.recognition-grid p{color:#5d6270;color:var(--muted);line-height:1.6;margin-bottom:0}.page-intro{max-width:930px;padding:110px 0 90px}.contact-copy h1,.page-intro h1{font-size:clamp(58px,8vw,112px);letter-spacing:-.075em;line-height:.9;margin:22px 0 26px}.page-intro>p{color:#5d6270;color:var(--muted);font-size:21px;line-height:1.6;max-width:700px}.timeline{margin:0 0 150px;position:relative}.timeline-item{grid-gap:34px;display:grid;gap:34px;grid-template-columns:110px 180px 1fr;padding:0 0 95px;position:relative}.timeline-item-past:before{background:linear-gradient(180deg,#0000,#14182429 18%,#14182429 82%,#0000);background:linear-gradient(to bottom,#0000,var(--line) 18%,var(--line) 82%,#0000);bottom:0;content:"";left:54px;position:absolute;top:-95px;width:1px}.timeline-marker{display:flex;justify-content:center;position:relative;width:110px;z-index:1}.timeline-marker span{-webkit-backdrop-filter:blur(12px);-webkit-backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));backdrop-filter:blur(12px);backdrop-filter:var(--glass-filter,blur(var(--glass-blur)));background:var(--accent);background-clip:padding-box;border:8px solid color-mix(in srgb,#fafbf8 25%,#0000);border:8px solid color-mix(in srgb,var(--paper-strong) 25%,#0000);border-radius:50%;color:#fff;display:grid;font:700 13px/1 Space Grotesk,sans-serif;height:58px;place-items:center;width:58px}.timeline-period{color:#5d6270;color:var(--muted);font-size:13px;font-weight:600;padding-top:17px;text-transform:uppercase}.timeline-content{background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);border:1px solid #14182429;border:1px solid var(--line);box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow);padding:32px}.timeline-current{padding:0 0 110px;position:relative}.current-work-stack{grid-gap:72px;display:grid;gap:72px;position:relative}.current-work-stack:before{background:linear-gradient(180deg,#0000,#14182429 14%,#14182429 76%,#0000);background:linear-gradient(to bottom,#0000,var(--line) 14%,var(--line) 76%,#0000);bottom:-110px;content:"";left:54px;position:absolute;top:-58px;width:1px}.current-experience{grid-gap:34px;display:grid;gap:34px;grid-template-columns:110px 180px 1fr;position:relative}.current-work-stack.has-concurrent-work .current-experience:first-child:before{background:linear-gradient(180deg,#0000,#14182429 14%,#14182429 72%,#0000);background:linear-gradient(to bottom,#0000,var(--line) 14%,var(--line) 72%,#0000);bottom:-72px;content:"";left:63px;position:absolute;top:-58px;width:1px}.company-row{align-items:baseline;display:flex;gap:16px;justify-content:space-between}.company-name{color:var(--accent);font-size:13px;font-weight:600}.company-name,.employment-type{letter-spacing:.08em;text-transform:uppercase}.employment-type{color:#5d6270;color:var(--muted);font-size:10px;font-weight:700}.timeline-content h2{font-size:clamp(30px,4vw,46px);letter-spacing:-.05em;margin:8px 0 14px}.timeline-summary{color:#141824;color:var(--ink);font-size:18px;line-height:1.55}.timeline-content ul{border-top:1px solid #14182429;border-top:1px solid var(--line);color:#5d6270;color:var(--muted);margin:24px 0;padding:24px 0 0 20px}.timeline-content li{line-height:1.55;margin-bottom:11px;padding-left:6px}.tag-list{display:flex;flex-wrap:wrap;gap:8px}.tag-list span{background:color-mix(in srgb,#f0f3ef 70%,#0000);background:color-mix(in srgb,var(--paper) 70%,#0000);border:1px solid #14182429;border:1px solid var(--line);color:#5d6270;color:var(--muted);font-size:12px;padding:7px 10px}.certificate-link{align-items:center;color:var(--accent);display:inline-flex;font-size:13px;font-weight:700;gap:7px;margin-top:24px;text-underline-offset:4px}.projects-intro{padding-bottom:50px}.project-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:40px}.project-filters button{background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);border:1px solid #14182429;border:1px solid var(--line);color:#5d6270;color:var(--muted);cursor:pointer;padding:10px 15px}.project-filters button.active,.project-filters button:hover{background:#141824;background:var(--ink);border-color:#141824;border-color:var(--ink);color:#fafbf8;color:var(--paper-strong)}.project-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:48px}.project-contact{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding-top:30px}.project-contact p{color:#5d6270;color:var(--muted);font-size:18px;margin:0}.projects-contact{margin-bottom:140px}.project-card{background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);border:1px solid #14182429;border:1px solid var(--line);cursor:pointer;display:flex;flex-direction:column;min-height:480px;overflow:hidden;padding:clamp(26px,4vw,42px);transition:transform .18s ease,box-shadow .18s ease}.project-card:hover{box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow);transform:translateY(-5px)}.project-card:focus-visible{outline:3px solid #3157ff;outline:3px solid var(--cobalt);outline-offset:4px}.project-card-top{color:#5d6270;color:var(--muted);display:flex;font-size:12px;justify-content:space-between}.project-number{color:var(--accent);font:700 22px/1 Space Grotesk,sans-serif}.project-gesture{align-items:center;display:flex;gap:8px;height:90px;margin:24px 0 12px;transform:rotate(-7deg)}.project-gesture span{background:var(--accent);border-radius:60% 30% 55% 35%;display:block;height:18px}.project-gesture span:first-child{width:46%}.project-gesture span:nth-child(2){height:28px;width:25%}.project-gesture span:nth-child(3){border-radius:50%;height:9%;width:9%}.project-card h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.055em;line-height:1;margin:10px 0 14px}.project-card>p{color:#5d6270;color:var(--muted);line-height:1.6}.project-card .tag-list{margin-top:auto;padding-top:30px}.project-links{border-top:1px solid #14182429;border-top:1px solid var(--line);display:flex;gap:20px;margin-top:25px;padding-top:20px}.project-links a{align-items:center;display:inline-flex;font-size:13px;font-weight:600;gap:7px;text-underline-offset:4px}.resume-intro .button{margin-top:22px;width:-webkit-fit-content;width:fit-content}.resume-sheet{background:color-mix(in srgb,#fafbf8 82%,#0000);background:var(--glass-panel);border:1px solid #14182429;border:1px solid var(--line);box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow);margin:0 0 150px;padding:clamp(30px,6vw,70px)}.resume-sheet-header{grid-gap:60px;align-items:end;border-bottom:4px solid #141824;border-bottom:4px solid var(--ink);display:grid;gap:60px;grid-template-columns:1fr 1fr;padding-bottom:42px}.resume-sheet-header h2{font-size:clamp(40px,6vw,72px);letter-spacing:-.06em;margin:9px 0 0}.resume-sheet-header p{color:#5d6270;color:var(--muted);font-size:18px;line-height:1.6;margin:0}.resume-columns{grid-gap:70px;display:grid;gap:70px;grid-template-columns:1.6fr .8fr;padding:50px 0}.resume-columns h3{color:#3157ff;color:var(--cobalt);font-size:14px;letter-spacing:.09em;margin:0 0 28px;text-transform:uppercase}.resume-role{border-bottom:1px solid #14182429;border-bottom:1px solid var(--line);margin-bottom:26px;padding:0 0 26px}.resume-role>div{display:flex;gap:20px;justify-content:space-between}.resume-role strong{font-family:Space Grotesk,sans-serif;font-size:19px}.resume-role span{color:#5d6270;color:var(--muted);font-size:12px;text-transform:uppercase}.resume-role p{color:#ff633d;color:var(--orange);font-weight:600;margin:5px 0 9px}.resume-role small{color:#5d6270;color:var(--muted);font-size:14px;line-height:1.55}.resume-aside{border-left:1px solid #14182429;border-left:1px solid var(--line);padding-left:38px}.resume-aside div{margin-bottom:28px}.resume-aside strong{font-family:Space Grotesk,sans-serif}.resume-aside p{color:#5d6270;color:var(--muted);line-height:1.55;margin:6px 0 0}.contact-page{grid-gap:clamp(50px,10vw,140px);align-items:center;display:grid;gap:clamp(50px,10vw,140px);grid-template-columns:1.25fr .75fr;min-height:calc(100vh - 77px);padding:100px 0 130px}.contact-copy h1{max-width:780px}.contact-copy p{color:#5d6270;color:var(--muted);font-size:21px;line-height:1.6;max-width:620px}.contact-copy .button{margin-top:25px;width:-webkit-fit-content;width:fit-content}.contact-links{border-top:1px solid #14182429;border-top:1px solid var(--line)}.contact-links>a{grid-gap:18px;align-items:center;border-bottom:1px solid #14182429;border-bottom:1px solid var(--line);display:grid;gap:18px;grid-template-columns:auto 1fr auto;padding:24px 2px;text-decoration:none}.contact-links>a:hover>svg:last-child{transform:translate(4px,-4px)}.contact-links svg{transition:transform .18s ease}.contact-links span{overflow:hidden;text-overflow:ellipsis}.contact-links small{color:#5d6270;color:var(--muted);display:block;font-size:11px;letter-spacing:.1em;margin-bottom:3px;text-transform:uppercase}.site-footer{grid-gap:28px;align-items:center;border-top:1px solid #14182429;border-top:1px solid var(--line);color:#5d6270;color:var(--muted);display:grid;font-size:13px;gap:28px;grid-template-columns:1fr auto auto;margin:0 auto;min-height:150px;position:relative;width:min(1180px,calc(100% - 40px));z-index:2}.site-footer p{margin:0}.footer-links{display:flex;gap:18px}.footer-links a{text-underline-offset:4px}@media (max-width:900px){.activity-section{grid-template-columns:1fr}.nav-shell{display:flex}.brand{margin-right:auto}.menu-button{display:grid;order:3}.main-nav{background:#fafbf8;background:var(--paper-strong);border:1px solid #14182429;border:1px solid var(--line);box-shadow:0 24px 70px #1b202f1c;box-shadow:var(--shadow);display:none;left:20px;padding:18px;position:absolute;right:20px;top:76px}.main-nav.is-open{grid-gap:4px;display:grid;gap:4px}.main-nav a{padding:14px 8px}.main-nav a:after{display:none}.nav-actions{order:2}.nav-actions a{display:none}.hero-section{padding-top:80px}.hero-note{align-self:start;grid-row:2;margin-top:32px}.contact-page,.skills-section{grid-template-columns:1fr}.current-experience,.timeline-item{gap:22px;grid-template-columns:95px 1fr}.timeline-period{grid-column:2;padding:0 0 8px}.current-experience>.timeline-content,.timeline-item>.timeline-content{grid-column:2}.current-work-stack:before{left:54px}.current-work-stack.has-concurrent-work .current-experience:first-child:before{left:63px}.project-grid,.resume-columns{grid-template-columns:1fr}.resume-columns{gap:45px}.resume-aside{border-left:0;padding:0}.site-footer{grid-template-columns:auto 1fr auto;padding:30px 0}.site-footer small{grid-column:2}}@media (max-width:620px){.contribution-scroll.range-3{--contribution-size:14px}.activity-section{margin-bottom:95px}.contribution-shell.has-range .contribution-heading{padding-right:110px}.contribution-heading h2{font-size:clamp(23px,6.8vw,28px)}.contribution-range{left:auto;right:12px;top:6px}.contribution-scroll-hint{display:block}.contribution-summary>span{flex-basis:100%;margin-left:0}.nav-shell,.page-shell,.site-footer{width:min(100% - 28px,1180px)}.nav-shell{gap:8px}.nav-actions{gap:4px}.paint{opacity:.2}.paint-speckles{opacity:.45}.hero-section{padding:68px 0 95px}.contact-copy h1,.hero-copy h1,.page-intro h1{font-size:clamp(48px,16vw,70px)}.contact-copy p,.hero-lede,.page-intro>p{font-size:17px}.contact-menu,.hero-actions .button{width:100%}.contact-menu-options{right:0}.contribution-card,.section-block{margin-bottom:95px}.contribution-footer,.split-heading{align-items:flex-start;flex-direction:column}.featured-project{gap:12px;grid-template-columns:45px 1fr;min-height:210px;padding-inline:5px}.featured-project:hover{padding-left:10px}.project-arrow{display:none}.skills-section{gap:10px}.skill-group{gap:12px;grid-template-columns:65px 1fr}.recognition-grid{grid-template-columns:1fr}.page-intro{padding:78px 0 55px}.current-experience,.timeline-item{gap:12px;grid-template-columns:48px minmax(0,1fr)}.timeline-item{padding-bottom:60px}.timeline-marker{width:48px}.timeline-marker span{border-width:6px;height:46px;width:46px}.timeline-content{padding:24px 20px}.current-work-stack:before,.timeline-item-past:before{left:23px}.current-work-stack{gap:60px}.current-work-stack.has-concurrent-work .current-experience:first-child:before{bottom:-60px;left:32px;top:-48px}.project-card{min-height:440px}.resume-sheet{padding:24px}.resume-sheet-header{gap:20px;grid-template-columns:1fr}.resume-role>div{flex-direction:column;gap:6px}.contact-page{min-height:auto;padding-top:75px}.site-footer{grid-template-columns:auto 1fr}.footer-links,.site-footer small{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.paint,.paint-speckles{transform:none!important}}
/*# sourceMappingURL=main.a0045b03.css.map*/