@font-face{font-family:DepartureMono;src:url(/assets/DepartureMono-Regular-CJuaY0ws.otf) format("opentype");font-weight:400;font-style:normal}@font-face{font-family:Excalifont;src:url(/assets/Excalifont-Regular-C9eKQy_N.woff2) format("woff2");font-weight:400;font-style:normal}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#2b2b2b;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--c-1: #00ffff;--c-2: #00aeff;--c-3: #00de94;--c-4: #00ff52;--c-5: #ff910090;--c-6: #8ffffb;--c-1a: #00ffff50;--c-2a: #00aeff80;--c-3a: #00de9480;--c-4a: #00ff5160}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0 auto;display:flex;min-width:320px;width:60%;height:auto;background:#fff;position:relative}.life-bg-canvas{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;pointer-events:none}h1{letter-spacing:-.05em;font-size:clamp(2.4rem,1.5vw + 2rem,3.2rem);line-height:1.1}img{max-width:100%;height:auto;display:block}#app{font-family:Inter,sans-serif;max-width:1280px;margin:0 auto;padding:2rem;position:relative;z-index:1}@keyframes vox-fill{0%{background-size:0% 100%}to{background-size:100% 100%}}.vox{position:relative;display:inline-block;line-height:1.05;padding:0 .08em;background-image:linear-gradient(var(--c-6),var(--c-6));background-repeat:no-repeat;background-position:0 100%;background-size:0% 100%;border-radius:4px;animation:vox-fill .9s ease-out forwards;animation-delay:.35s}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.vanilla:hover{filter:drop-shadow(0 0 2em #3178c6aa)}.card{padding:2em}.read-the-docs{color:#888}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.akzidenz{font-family:AkzidenzGrotesk,sans-serif}.interEb{font-family:Inter,sans-serif;font-optical-sizing:auto;font-weight:800;font-style:normal}.interHeb{font-family:Inter,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.c1{color:var(--c-1)}.c2{color:var(--c-2)}.c3{color:var(--c-3)}.c4{color:var(--c-4)}.main-layout{display:flex;justify-content:center;width:100%}.content-area{width:100%;max-width:1100px;margin:0 auto;padding:clamp(2rem,3vw,3rem) clamp(1rem,3vw,1.75rem);display:flex;flex-direction:column;gap:clamp(1.5rem,2vw,2.5rem)}.section-block{display:flex;flex-direction:column;gap:.75rem}.section-title{margin:0;text-align:center;font-size:clamp(1.5rem,1.2vw + 1.1rem,2rem);letter-spacing:-.02em}h3{letter-spacing:-.07em}.section-body{display:flex;flex-direction:column;gap:.5rem;justify-content:center;font-size:clamp(1.05rem,.8vw + .95rem,1.2rem)}.stack-inline{display:flex;flex-wrap:nowrap;flex-direction:row;align-items:center;justify-content:center;gap:.65rem;flex-wrap:wrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:.25rem 0}.stack-inline::-webkit-scrollbar{display:none}.stack-item{display:inline-flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:700;color:#1f2937;padding:.5rem .75rem;border-radius:.2rem;line-height:1;flex:0 0 auto;border:none;box-shadow:none;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.stack-item.c1{background-color:var(--c-1a)}.stack-item.c2{background-color:var(--c-2a)}.stack-item.c3{background-color:var(--c-3a)}.stack-item.c4{background-color:var(--c-4a)}.project-list{gap:.85rem}.project-card{display:block;border:none;border-radius:.35rem;overflow:hidden;background:#f5f5f5;box-shadow:none;text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.project-card:hover,.project-card:focus-visible{transform:translate(-2px,-2px);border-color:transparent;box-shadow:none;outline:none}.project-card__visual{position:relative;display:block;margin:0;aspect-ratio:16 / 10;overflow:hidden;background:#ececec}.project-card__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;image-rendering:pixelated;filter:grayscale(1) contrast(1.02);transform:scale(1.01);transition:transform .24s ease,filter .24s ease}.project-card:hover .project-card__image,.project-card:focus-visible .project-card__image{transform:scale(1.05);filter:grayscale(.4) contrast(1.08)}.project-card__caption{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:.2rem;padding:.9rem 1rem .95rem;background:linear-gradient(180deg,#1111110d,#111111eb);color:#fff;z-index:2}.project-card__title{margin:0;font-size:1.05rem;line-height:1.1;letter-spacing:-.03em;font-weight:700}.project-card__stack{font-size:.74rem;letter-spacing:.07em;text-transform:uppercase;color:#fffc}.project-card__cta{position:absolute;inset:1rem 1rem auto auto;display:inline-flex;align-items:center;justify-content:center;padding:.55rem .8rem;border-radius:.15rem;background:#fffffffa;color:#111;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transform:translateY(-8px);opacity:0;transition:opacity .18s ease,transform .18s ease;border:none;box-shadow:none;z-index:3}.project-card:hover .project-card__cta,.project-card:focus-visible .project-card__cta{opacity:1;transform:translateY(0)}.focus-list{gap:.75rem}.timeline-card{display:flex;flex-direction:column;gap:.7rem;padding:1rem 1.05rem;border:none;border-radius:.35rem;background:#f7f7f7;box-shadow:none}.timeline-card__meta{display:flex;flex-direction:column;gap:.12rem}.timeline-card__period{margin:0;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#555}.timeline-card__title{margin:0;font-size:1.08rem;letter-spacing:-.03em}.timeline-card__org{margin:0;font-size:.9rem;letter-spacing:.03em;color:#444;text-transform:uppercase}.timeline-card__description{margin:0;color:#404040}.timeline-list{gap:.65rem}.contact-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.contact-chip{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1rem;border-radius:.2rem;border:none;background:#fff;color:#111;font-weight:700;letter-spacing:.02em;box-shadow:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.contact-chip:hover,.contact-chip:focus-visible{transform:translate(-2px,-2px);border-color:transparent;box-shadow:none;outline:none}.stack-tree{margin:0 auto;padding:.8rem .95rem;width:min(100%,900px);min-height:calc(1.5em * 5.2);max-width:100%;overflow-x:auto;font-family:DepartureMono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.96rem;line-height:1.5;color:#1f2937;background:#f4f4f4d9;border-radius:.25rem;box-shadow:none;text-align:left;white-space:pre;position:relative}.stack-tree.is-typing:after{content:"█";display:inline;margin-left:.08rem;animation:stack-caret-blink .85s steps(1,end) infinite}@keyframes stack-caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}.stack-card,.project-card,.timeline-card,.contact-chip,.stack-item{image-rendering:auto}.timeline-inline{display:flex;align-items:center;justify-content:center;gap:.4rem;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding:3rem .1rem;scrollbar-width:none;margin:0 auto}.timeline-inline::-webkit-scrollbar{display:none}.t-item{display:inline-flex;flex-direction:column;align-items:center;gap:.25rem;padding:0 .2rem}.t-year{font-size:.9rem;font-weight:700;color:#111827}.t-bracket{font-size:1.05rem;color:#2b2b2b;line-height:1;letter-spacing:-.03em}.t-item[aria-current=true] .t-bracket{color:var(--c-1)}.t-title{font-size:.95rem;color:#374151;text-align:center;max-width:240px}::selection{background-color:#4d4d4d4c}.t-point:before,.t-point:after{content:none!important}.t-item[aria-current=true] .t-point:after{content:"";position:absolute;width:12px;height:12px;background:var(--c-1);top:-18px;left:50%;transform:translate(-50%);border-radius:2px;animation:blink-square 1s ease-in-out infinite alternate}.t-line{font-size:1rem;color:#6b7280;letter-spacing:-.03em}.t-point{position:relative;display:inline-flex;align-items:center;justify-content:center;border:none;outline:none;background:transparent;padding:.15rem .2rem;font-size:1.05rem;color:#2b2b2b;cursor:pointer;line-height:1}.t-point[aria-current=true]{color:var(--c-1)}.t-point:before,.t-point:after{position:absolute;left:50%;transform:translate(-50%);opacity:0;pointer-events:none;transition:opacity .18s ease;white-space:normal;text-align:center;z-index:1}.t-point:before{content:attr(data-year);bottom:140%;font-size:.85rem;font-weight:700;color:#111827}.t-point:after{content:attr(data-title);top:140%;font-size:.9rem;color:#374151;max-width:220px}.t-point:hover:before,.t-point:hover:after,.t-point:focus-visible:before,.t-point:focus-visible:after{opacity:1}.hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(1.5rem,3vw,2.5rem);overflow:visible}.hero h1{margin:0 0 .75rem}.hero .akzidenz{margin:0;font-size:clamp(1rem,.7vw + .9rem,1.15rem);line-height:1.6;color:#444}.hero p.interHeb{font-size:clamp(1.2rem,1vw + 1.05rem,1.4rem)}.logo-hub{--orbit-radius: 100px;position:relative;width:clamp(120px,6vw + 100px,160px);height:clamp(120px,6vw + 100px,160px);display:grid;place-items:center;overflow:visible}.logo-hover-hint{position:absolute;left:calc(100% - 28px);top:50%;transform:translateY(-50%);width:172px;height:92px;pointer-events:none;z-index:2}.logo-hover-hint__text{position:absolute;top:60%;left:auto;right:-10px;transform:translateY(-50%) rotate(-6deg);color:#111;font-family:Excalifont,Inter,sans-serif;font-size:1.05rem;letter-spacing:.01em;white-space:nowrap;opacity:0;transition:opacity .18s ease}.logo-hover-hint.logo-hover-hint--show-text .logo-hover-hint__text{opacity:1}.logo-hover-hint__arrow{width:172px;height:92px;display:block;transform:rotate(90deg);transform-origin:center}.logo-hub:before{content:"";position:absolute;inset:-32px;border-radius:50%}.logo-orbit{position:absolute;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fffffff2;opacity:0;pointer-events:none;transform:translate(0) scale(.85);transition:opacity .18s ease,transform .26s cubic-bezier(.2,.8,.2,1);z-index:3}.logo-orbit img{width:18px;height:18px;display:block;filter:grayscale(1) contrast(1.15)}.logo-orbit__icon--linkedin{width:20px;height:20px}.logo-orbit--linkedin,.logo-orbit--github{top:50%;left:50%;transform:translate(-50%,-50%) scale(.72)}.logo-orbit-mail-wrap{position:absolute;top:50%;left:50%;width:34px;height:34px;margin-left:-17px;margin-top:-17px;transition:left .26s cubic-bezier(.2,.8,.2,1),top .26s cubic-bezier(.2,.8,.2,1);z-index:auto}.logo-orbit--mail{position:relative;right:auto;bottom:auto;transform:scale(.72)}.mail-copy-btn{position:absolute;top:auto;bottom:calc(100% + 6px);left:50%;transform:translate(-50%,18px) scale(.92);transform-origin:50% 100%;opacity:0;pointer-events:none;border:none;background:#fffffffa;color:#111;font-family:DepartureMono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;border-radius:.2rem;padding:.38rem .5rem;transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1);z-index:9}.logo-hub:hover .logo-orbit,.logo-hub:focus-within .logo-orbit,.logo-hub.logo-hub--hint .logo-orbit,.logo-hub.logo-hub--copy-linger .logo-orbit{opacity:1;pointer-events:auto}.logo-hub:hover .logo-orbit--linkedin,.logo-hub:focus-within .logo-orbit--linkedin,.logo-hub.logo-hub--hint .logo-orbit--linkedin,.logo-hub.logo-hub--copy-linger .logo-orbit--linkedin{transform:translate(-50%,calc(-50% - var(--orbit-radius))) scale(1)}.logo-hub:hover .logo-orbit--github,.logo-hub:focus-within .logo-orbit--github,.logo-hub.logo-hub--hint .logo-orbit--github,.logo-hub.logo-hub--copy-linger .logo-orbit--github{transform:translate(calc(-50% - (var(--orbit-radius) * .88)),calc(-50% + (var(--orbit-radius) * .65))) scale(1)}.logo-hub:hover .logo-orbit--mail,.logo-hub:focus-within .logo-orbit--mail,.logo-hub.logo-hub--hint .logo-orbit--mail,.logo-hub.logo-hub--copy-linger .logo-orbit--mail{transform:scale(1)}.logo-hub:hover .logo-orbit-mail-wrap,.logo-hub:focus-within .logo-orbit-mail-wrap,.logo-hub.logo-hub--hint .logo-orbit-mail-wrap,.logo-hub.logo-hub--copy-linger .logo-orbit-mail-wrap{left:calc(50% + (var(--orbit-radius) * .88));top:calc(50% + (var(--orbit-radius) * .65))}.logo-orbit-mail-wrap:hover .mail-copy-btn,.logo-orbit-mail-wrap:focus-within .mail-copy-btn,.logo-orbit-mail-wrap.is-copy-linger .mail-copy-btn{opacity:1;pointer-events:auto;transform:translate(-50%) scale(1)}.image-circle{position:relative;z-index:6;width:clamp(120px,6vw + 100px,160px);height:clamp(120px,6vw + 100px,160px);border-radius:50%;overflow:hidden;background:#ddd;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:none}.image-circle img{width:100%;height:100%;object-fit:cover;display:block}.content{min-height:200px}.content img{width:100%;height:auto}.timeline-viewport{position:relative;overflow:hidden}.timeline-viewport:before,.timeline-viewport:after{content:"";position:absolute;top:0;bottom:0;width:42px;pointer-events:none;z-index:1}.timeline-viewport:before{left:0;background:linear-gradient(90deg,#fff,#fff0)}.timeline-viewport:after{right:0;background:linear-gradient(270deg,#fff,#fff0)}.timeline{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,1fr);gap:1.5rem;overflow-x:auto;padding:1rem .5rem 1.25rem;scroll-snap-type:x proximity;scrollbar-width:none}.timeline::-webkit-scrollbar{display:none}.timeline-item{position:relative;display:grid;grid-template-rows:auto auto auto;justify-items:center;gap:.45rem;padding:0 .75rem;scroll-snap-align:start}.timeline-item:before,.timeline-item:after{content:"";position:absolute;top:50%;width:1.5rem;border-top:2px solid #bfbfbf}.timeline-item:before{left:-1.5rem}.timeline-item:last-child:after{display:none}.timeline-item:first-child:before{display:none}.timeline-period{margin:0;font-weight:700;font-size:.98rem}.timeline-point{position:relative;width:16px;height:16px;border-radius:3px;background:#fff;border:none}.timeline-point:before{content:"";position:absolute;inset:-8px;border-radius:6px;border:none}.timeline-text{margin:0;color:#3a3a3a;line-height:1.45;text-align:center}.timeline-item.is-current .timeline-point{background:#2b2b2b;border-color:#2b2b2b}.timeline-item.is-current .timeline-point:after{content:"";position:absolute;width:12px;height:12px;background:var(--c-1);top:-18px;left:50%;transform:translate(-50%);border-radius:2px;animation:blink-square 1s ease-in-out infinite alternate}@keyframes blink-square{0%{opacity:1}to{opacity:.25}}.graph{align-items:center;justify-content:center}.endnote-block{align-items:center;text-align:center;gap:.35rem;padding:.6rem 0 .2rem}.endnote-built{margin:0;max-width:70ch;color:#18181b;font-size:clamp(1rem,.6vw + .92rem,1.15rem);line-height:1.45}.endnote-built strong{font-weight:800}.builtby-item{display:inline-flex;align-items:baseline;gap:0;margin:0 .2rem;vertical-align:baseline}.builtby-item img{width:1.45em;height:1.45em;object-fit:cover;border-radius:.2rem;filter:none;transform:translateY(.12em)}.builtby-item span{max-width:none;opacity:1;overflow:visible;white-space:nowrap;margin-left:.3rem;transition:none}.builtby-item--claude img{object-fit:contain;width:1.72em;height:1.72em;transform:translateY(.4em)}.builtby-item--aaditya img{filter:none}.tech-stack-copy{margin:0;text-align:center;color:#4b5563;max-width:68ch;align-self:center}.stack-card.c1{background:linear-gradient(180deg,#fff,#f7f7f7)}.stack-card.c2{background:linear-gradient(180deg,#fbfbfb,#f2f2f2)}.stack-card.c3{background:linear-gradient(180deg,#fff,#f5f5f5)}.stack-card.c4{background:linear-gradient(180deg,#fcfcfc,#f3f3f3)}@media(max-width:540px){.stack-card{width:4.5rem;height:4.5rem}.stack-card__icon img{width:30px;height:30px}.stack-card__label{font-size:.56rem}}@media(max-width:900px){#app{padding:2rem 1.25rem}.hero{grid-template-columns:1fr;text-align:center}.hero h1{font-size:clamp(2.2rem,4vw + 1.4rem,2.8rem)}.image-circle{margin:0 auto}.logo-hub{margin:0 auto;justify-self:center}.logo-hover-hint{left:calc(100% - clamp(28px,6vw,46px));width:148px;height:80px}.logo-hover-hint__arrow{width:148px;height:80px}.logo-hover-hint__text{font-size:.94rem;top:60%;right:clamp(-30px,-1.8vw,-30px)}.mail-copy-btn{top:auto;bottom:calc(100% + 6px);left:50%;transform:translate(-50%,18px) scale(.92)}.logo-orbit-mail-wrap:hover .mail-copy-btn,.logo-orbit-mail-wrap:focus-within .mail-copy-btn{transform:translate(-50%) scale(1)}}@media(max-width:540px){body{display:block}#app,.content-area{padding:1.5rem 1rem}.hero p.interHeb{font-size:1.25rem}.logo-hover-hint__text{font-size:.82rem;right:-6px}}@keyframes underline-sweep{0%{width:0%}to{width:100%}}.u-underline{position:relative;display:inline-block;line-height:1}.u-underline:after{content:"";position:absolute;left:0;bottom:-.15em;height:.12em;width:0%;background:var(--c-1);border-radius:2px}.u-underline.animate:after{animation:underline-sweep .7s ease-out forwards;animation-delay:var(--u-delay, 0s)}.u-1{--u-delay: 0s}.u-2{--u-delay: .35s}.u-3{--u-delay: .7s}.emoji{display:inline-block;transition:transform .18s cubic-bezier(.2,.7,.3,1);will-change:transform}.emoji:hover{transform:scale(2) translateY(-2px)}.about-layout{display:flex;max-width:1400px;margin:0 auto;padding:3rem 2rem;gap:4rem;align-items:flex-start}.about-content{flex:0 0 auto;max-width:550px}.about-title{font-size:clamp(2.5rem,3vw,3.5rem);font-weight:700;margin:0 0 1.5rem;letter-spacing:-.02em;color:#1a1a1a}.about-text{font-size:clamp(1.05rem,1vw,1.15rem);line-height:1.7;color:#3a3a3a;margin:0 0 1.25rem}.contributions-sidebar{display:flex;flex-direction:row;align-items:flex-start;gap:2rem;position:relative;flex-shrink:0}.contributions-label{writing-mode:vertical-rl;text-orientation:mixed;font-size:.95rem;font-weight:600;letter-spacing:.08em;color:#1a1a1a;transform:rotate(180deg);white-space:nowrap}.contributions-viz{transform:rotate(90deg);transform-origin:left top;max-width:none;width:450px;margin-left:450px;margin-top:0}@media(max-width:900px){.about-layout{flex-direction:column;padding:2rem 1.5rem}.contributions-sidebar{width:100%;flex-direction:column}.contributions-label{writing-mode:horizontal-tb;transform:none}.contributions-viz{transform:none;width:100%;margin-left:0}}
