:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;color:#171512;background:#f7f4ee;--ink: #f7f4ee;--paper: #171512;--muted: #7b756d;--muted-strong: #5f5a53;--line: rgba(32, 28, 23, .13);--accent: #8a7043;--display: "Didot", "Bodoni 72", "Iowan Old Style", "Baskerville", "Times New Roman", ui-serif, Georgia, serif}*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth;scroll-snap-type:y mandatory}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;background:var(--ink);color:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#root{min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}::selection{color:#fffdf8;background:#28231c}.site{min-height:100vh;background:var(--ink)}.resume-page{display:grid;grid-template-columns:minmax(20rem,27.8vw) minmax(0,1fr);min-height:100svh;background:var(--ink)}.resume-sidebar{position:relative;min-height:100svh;padding:clamp(3.25rem,4.45vw,4rem) clamp(2.25rem,3.65vw,3.35rem);border-right:1px solid var(--line);opacity:0;transition:opacity .72s ease}.resume-page.is-ready .resume-sidebar{opacity:1}.resume-back{display:inline-flex;gap:.48rem;align-items:center;min-height:2.75rem;width:fit-content;color:#777169;font-size:.95rem;letter-spacing:.01em;text-decoration:none;transition:color .24s ease,transform .34s cubic-bezier(.16,1,.3,1)}.resume-back:hover,.resume-back:focus-visible{color:var(--paper)}.resume-back:hover,.resume-back:focus-visible{transform:translate(-3px)}.resume-profile{position:absolute;top:43.4%;right:clamp(2.25rem,3.65vw,3.35rem);left:clamp(2.25rem,3.65vw,3.35rem);opacity:0;transform:translateY(18px);transition:opacity .76s .12s ease,transform .92s .12s cubic-bezier(.16,1,.3,1)}.resume-page.is-ready .resume-profile{opacity:1;transform:translateY(0)}.resume-profile h1,.resume-profile-name,.resume-profile p{margin:0}.resume-profile h1,.resume-profile-name{font-family:var(--display);font-size:clamp(2.5rem,3.1vw,3rem);font-weight:400;letter-spacing:-.04em;line-height:1.05}.resume-profile>p:last-child{margin-top:1.45rem;color:#777169;font-size:1rem;letter-spacing:.01em;line-height:1.4}.resume-experience{min-width:0;padding:clamp(7.5rem,14.2vh,9.2rem) clamp(3.5rem,3.9vw,4rem) clamp(5rem,10vh,7rem) clamp(4rem,5vw,4.75rem)}.resume-experience-title{margin:0 0 0 1.25rem;color:#777169;font-size:.72rem;font-weight:500;letter-spacing:.34em;line-height:1.4;text-transform:uppercase;opacity:0;transform:translateY(12px);transition:opacity .72s .12s ease,transform .82s .12s cubic-bezier(.16,1,.3,1)}.resume-page.is-ready .resume-experience-title{opacity:1;transform:translateY(0)}.experience-list{margin-top:clamp(1.5rem,2.8vh,1.85rem)}.resume-education{margin-top:clamp(4.5rem,8vh,6.5rem)}.resume-education .resume-experience-title{transition-delay:.52s}.education-list{margin-top:clamp(1.5rem,2.8vh,1.85rem)}.experience-item,.education-item{position:relative;display:grid;grid-template-columns:clamp(6.8rem,8.4vw,7.5rem) minmax(0,1fr) auto;gap:clamp(2.3rem,4vw,4.2rem);align-items:center;min-height:clamp(7rem,12vh,7.7rem);padding:1.8rem 0 1.3rem;color:inherit;text-decoration:none;border-bottom:1px solid var(--line);opacity:0;transform:translateY(18px);transition:border-color .26s ease,opacity .7s ease,transform .82s cubic-bezier(.16,1,.3,1);transition-delay:calc(.18s + (var(--experience-index) * 70ms))}.experience-item{cursor:pointer}.resume-page.is-ready .experience-item,.resume-page.is-ready .education-item{opacity:1;transform:translateY(0)}.experience-logo{display:flex;align-items:center;width:100%;height:2.5rem;overflow:visible}.experience-logo img{display:block;max-width:100%;max-height:2rem;object-fit:contain;object-position:left center;filter:none;opacity:1;transition:filter .32s ease,opacity .32s ease,transform .42s cubic-bezier(.16,1,.3,1)}.experience-logo.is-good-doctor img{max-width:7.25rem;max-height:2.8rem}.experience-logo.is-carro img{max-width:calc(100% - .35rem);max-height:1.85rem}.experience-logo.is-hrnetone{align-items:center;height:2.5rem}.experience-logo.is-hrnetone img{width:7rem;max-width:100%;max-height:2.4rem;object-fit:contain}.experience-logo.is-rhul{height:3.25rem;overflow:visible}.experience-logo.is-rhul img{width:6.5rem;max-width:100%;max-height:none;filter:none;opacity:.9}.experience-role{min-width:0}.experience-role h3,.experience-role p,.experience-dates{margin:0}.experience-role h3{font-size:clamp(1.08rem,1.52vw,1.35rem);font-weight:500;letter-spacing:-.018em;line-height:1.25;transition:color .26s ease,transform .42s cubic-bezier(.16,1,.3,1)}.experience-role p{margin-top:.6rem;color:var(--muted);font-size:clamp(.92rem,1.25vw,1.08rem);letter-spacing:0;line-height:1.4}.experience-dates{color:#777169;font-size:clamp(.88rem,1.16vw,1.03rem);letter-spacing:0;line-height:1.4;text-align:right;transform:translateY(-.75rem);transition:color .26s ease,transform .42s cubic-bezier(.16,1,.3,1);white-space:nowrap}.experience-arrow{position:absolute;top:50%;right:0;color:var(--paper);opacity:0;transform:translate3d(8px,calc(-50% - .75rem),0);transition:opacity .22s ease,transform .42s cubic-bezier(.16,1,.3,1)}.experience-item:hover,.experience-item:focus-visible{border-bottom-color:#201c174d}.experience-item:hover .experience-role h3,.experience-item:focus-visible .experience-role h3{color:#000;transform:translate(.25rem)}.experience-item:hover .experience-logo img,.experience-item:focus-visible .experience-logo img{filter:none;opacity:1;transform:translate(.18rem)}.experience-item:hover .experience-dates,.experience-item:focus-visible .experience-dates{color:var(--paper);transform:translate3d(-1.65rem,-.75rem,0)}.experience-item:hover .experience-arrow,.experience-item:focus-visible .experience-arrow{opacity:1;transform:translate3d(0,calc(-50% - .75rem),0)}.job-detail{min-width:0;padding:clamp(7.5rem,14.2vh,9.2rem) clamp(3.5rem,5vw,5.5rem) clamp(6rem,10vh,8rem) clamp(4rem,5.6vw,5.5rem)}.job-detail-header,.job-detail-sections{width:min(100%,62rem)}.job-detail-heading{margin-top:clamp(2.4rem,4.4vh,3.4rem);padding-bottom:clamp(2.2rem,4.2vh,3rem);border-bottom:1px solid var(--line);opacity:0;transform:translateY(18px);transition:opacity .76s .17s ease,transform .92s .17s cubic-bezier(.16,1,.3,1)}.job-detail-page.is-ready .job-detail-heading{opacity:1;transform:translateY(0)}.job-detail-logo{display:flex;align-items:center;width:clamp(6.8rem,8.4vw,7.5rem);height:2.5rem;margin-bottom:clamp(2rem,3.6vh,2.8rem);overflow:visible}.job-detail-logo img{display:block;max-width:100%;max-height:2.1rem;object-fit:contain;object-position:left center;filter:none;opacity:1}.job-detail-logo.is-good-doctor img{max-width:7.25rem;max-height:2.8rem}.job-detail-logo.is-carro img{max-width:calc(100% - .35rem);max-height:1.85rem}.job-detail-logo.is-hrnetone{align-items:center;height:2.5rem}.job-detail-logo.is-hrnetone img{width:7rem;max-width:100%;max-height:2.4rem;object-fit:contain}.job-detail-heading h1{max-width:54rem;margin:0;font-family:var(--display);font-size:clamp(3.7rem,5.9vw,6.3rem);font-weight:400;letter-spacing:-.047em;line-height:.98}.job-detail-meta{display:flex;gap:1.5rem;justify-content:space-between;align-items:baseline;margin-top:clamp(1.8rem,3.4vh,2.5rem)}.job-detail-meta p{margin:0;color:var(--muted);font-size:clamp(.96rem,1.25vw,1.08rem);line-height:1.5}.job-detail-meta p:last-child{color:#777169;text-align:right;white-space:nowrap}.job-detail-context{max-width:49rem;margin:clamp(2.6rem,5vh,4rem) 0 0;color:var(--muted-strong);font-family:var(--display);font-size:clamp(1.45rem,2.2vw,2rem);letter-spacing:-.015em;line-height:1.45;opacity:0;transform:translateY(16px);transition:opacity .72s .28s ease,transform .88s .28s cubic-bezier(.16,1,.3,1)}.job-detail-page.is-ready .job-detail-context{opacity:1;transform:translateY(0)}.job-detail-sections{margin-top:clamp(4rem,8vh,6.5rem);border-top:1px solid var(--line)}.job-detail-section{display:grid;grid-template-columns:minmax(8.5rem,.34fr) minmax(0,1fr);gap:clamp(2rem,5vw,5.5rem);padding:clamp(2.4rem,5vh,3.5rem) 0;border-bottom:1px solid var(--line);opacity:0;transform:translateY(16px);transition:opacity .72s ease,transform .88s cubic-bezier(.16,1,.3,1);transition-delay:calc(.36s + (var(--detail-index) * 90ms))}.job-detail-page.is-ready .job-detail-section{opacity:1;transform:translateY(0)}.job-detail-section h2{margin:0;color:#777169;font-size:.7rem;font-weight:500;letter-spacing:.22em;line-height:1.5;text-transform:uppercase}.job-detail-section ul{display:grid;gap:1.2rem;margin:0;padding:0;list-style:none}.job-detail-section li{position:relative;margin:0;padding-left:1.5rem;color:var(--muted-strong);font-size:clamp(.98rem,1.2vw,1.08rem);line-height:1.68}.job-detail-section li:before{position:absolute;top:.82em;left:0;width:.48rem;height:1px;content:"";background:#a09990}.holding-page{position:relative;display:grid;place-items:center;min-height:100svh;padding:7rem clamp(1.5rem,6vw,6rem);background:var(--ink)}.holding-back{position:absolute;top:clamp(2rem,4.45vw,4rem);left:clamp(1.5rem,3.65vw,3.35rem);opacity:0;transition:color .24s ease,opacity .62s ease,transform .34s cubic-bezier(.16,1,.3,1)}.holding-copy{width:min(100%,1100px);text-align:center;opacity:0;transform:translateY(22px);transition:opacity .76s .1s ease,transform .92s .1s cubic-bezier(.16,1,.3,1)}.holding-page.is-ready .holding-back,.holding-page.is-ready .holding-copy{opacity:1}.holding-page.is-ready .holding-copy{transform:translateY(0)}.holding-copy p{margin:0;color:#77684d;font-size:.72rem;font-weight:500;letter-spacing:.34em;line-height:1.4;text-transform:uppercase}.holding-copy h1{margin:clamp(1.8rem,3.5vh,3rem) 0 0;font-family:var(--display);font-size:clamp(4rem,7.2vw,7.5rem);font-weight:400;letter-spacing:-.047em;line-height:.98}.projects-page{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:100svh;padding:7rem clamp(1.5rem,6vw,6rem) 5rem;background:var(--ink)}.projects-heading,.project-segments{width:min(100%,1120px);margin-inline:auto}.projects-heading{opacity:0;transform:translateY(18px);transition:opacity .72s .1s ease,transform .88s .1s cubic-bezier(.16,1,.3,1)}.projects-page.is-ready .holding-back,.projects-page.is-ready .projects-heading,.projects-page.is-ready .project-segment{opacity:1}.projects-page.is-ready .projects-heading,.projects-page.is-ready .project-segment{transform:translateY(0)}.projects-heading p{margin:0;color:#77684d;font-size:.72rem;font-weight:500;letter-spacing:.34em;line-height:1.4;text-transform:uppercase}.projects-heading h1{margin:clamp(1.4rem,2.6vh,2.2rem) 0 0;font-family:var(--display);font-size:clamp(4rem,7.2vw,7.5rem);font-weight:400;letter-spacing:-.047em;line-height:.98}.project-segments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(2.8rem,5.5vh,4.75rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-segment{display:flex;flex-direction:column;min-height:clamp(14rem,29vh,18rem);padding:clamp(1.6rem,2.7vw,2.5rem) clamp(1.5rem,3vw,3rem);opacity:0;transform:translateY(16px);transition:opacity .72s ease,transform .88s cubic-bezier(.16,1,.3,1);transition-delay:calc(.22s + (var(--project-index) * 90ms))}.project-segment+.project-segment{border-left:1px solid var(--line)}.project-segment>span,.project-segment>p{color:#777169;font-size:.68rem;font-weight:500;letter-spacing:.2em;line-height:1.4;text-transform:uppercase}.project-segment>span{margin:0}.project-segment h2{margin:auto 0 0;max-width:10ch;font-family:var(--display);font-size:clamp(2.6rem,4.2vw,4.6rem);font-weight:400;letter-spacing:-.045em;line-height:.98}.project-segment>p{margin:1.4rem 0 0;color:#77684d}.screen{min-height:100svh;scroll-snap-align:start;scroll-snap-stop:always;position:relative}.hero-screen{--hero-progress: 0;display:grid;place-items:center;padding:8rem clamp(1.5rem,6vw,6.5rem);isolation:isolate}.hero-copy{width:min(100%,1120px);text-align:center;transform:translate3d(0,calc(-16px + var(--hero-progress) * -54px),0) scale(calc(1 - var(--hero-progress) * .025));opacity:calc(1 - var(--hero-progress) * 1.18);filter:blur(calc(var(--hero-progress) * 7px));will-change:transform,opacity,filter}.eyebrow,.section-kicker{margin:0;color:#77684d;font-size:clamp(.7rem,.76vw,.82rem);font-weight:500;letter-spacing:.38em;line-height:1.4;text-transform:uppercase}.hero-title{margin:clamp(2rem,4vh,3.3rem) auto 0;max-width:1120px;font-family:var(--display);font-size:clamp(4rem,6.35vw,6.75rem);font-weight:400;letter-spacing:-.047em;line-height:.96}.title-mask{display:block;overflow:hidden;padding:.075em .08em .12em;margin:-.075em -.08em -.12em}.title-line{display:block;transform:translateY(112%);opacity:0;transition:transform 1.1s cubic-bezier(.16,1,.3,1),opacity .5s ease}.title-line-delay{transition-delay:90ms}.reveal-item{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .9s cubic-bezier(.16,1,.3,1)}.site.is-ready .title-line,.site.is-ready .reveal-item{opacity:1;transform:translateY(0)}.site.is-ready .eyebrow{transition-delay:.1s}.site.is-ready .hero-intro{transition-delay:.35s}.hero-intro{margin:clamp(2.3rem,4.2vh,3.5rem) auto 0;color:var(--muted);font-size:clamp(1rem,1.36vw,1.25rem);font-weight:400;letter-spacing:.035em;line-height:1.6}.scroll-cue{position:absolute;bottom:clamp(1.35rem,3.4vh,2.5rem);left:50%;display:flex;flex-direction:column;gap:.55rem;align-items:center;padding:.75rem 1rem;color:var(--muted);background:transparent;border:0;cursor:pointer;opacity:0;transform:translate(-50%);transition:color .24s ease,opacity .72s .62s ease}.site.is-ready .scroll-cue{opacity:.72}.site.is-ready .scroll-cue:hover,.site.is-ready .scroll-cue:focus-visible{color:var(--paper);opacity:1}.scroll-cue span{font-size:.64rem;font-weight:500;letter-spacing:.18em;line-height:1.3;text-transform:uppercase;white-space:nowrap}.scroll-cue-icon{animation:scroll-cue-hop 2.4s cubic-bezier(.45,0,.2,1) infinite}@keyframes scroll-cue-hop{0%,55%,to{transform:translateY(0)}68%{transform:translateY(4px)}80%{transform:translateY(1px)}}.explore-screen{display:grid;place-items:center;padding:clamp(6rem,12vh,10rem) clamp(1.5rem,8vw,8.5rem)}.explore-copy{width:min(100%,1120px);text-align:center;opacity:0;transform:translateY(52px);filter:blur(7px);transition:opacity 1s ease,transform 1s cubic-bezier(.16,1,.3,1),filter 1s ease}.explore-screen.is-visible .explore-copy{opacity:1;transform:translateY(0);filter:blur(0)}.explore-actions{display:grid;grid-template-columns:repeat(3,max-content);justify-content:center;gap:clamp(1.5rem,3.2vw,3.5rem);margin-top:clamp(2.4rem,5vh,4rem)}.explore-actions a{position:relative;padding:.35rem 0 .62rem;color:var(--paper);font-size:clamp(1.08rem,1.5vw,1.35rem);font-weight:400;letter-spacing:.015em;text-decoration:none}.explore-actions a:after{position:absolute;right:0;bottom:0;left:0;height:1px;content:"";background:var(--accent);transform:scaleX(1);transform-origin:left;transition:transform .42s cubic-bezier(.16,1,.3,1)}.explore-actions a:hover:after,.explore-actions a:focus-visible:after{transform:scaleX(.38)}.content-screen,.connect-screen{display:grid;align-items:center;padding:clamp(6rem,12vh,10rem) clamp(1.5rem,8vw,8.5rem)}.content-wrap,.connect-copy{width:min(100%,1120px);margin-inline:auto;opacity:0;transform:translateY(52px);filter:blur(7px);transition:opacity 1s ease,transform 1s cubic-bezier(.16,1,.3,1),filter 1s ease}.content-screen.is-visible .content-wrap,.connect-screen.is-visible .connect-copy{opacity:1;transform:translateY(0);filter:blur(0)}.content-wrap>h2,.connect-copy>h2{max-width:900px;margin:clamp(1.6rem,3.5vh,3rem) 0 0;font-family:var(--display);font-size:clamp(3.8rem,6.6vw,7rem);font-weight:400;letter-spacing:-.045em;line-height:.98}.section-lead,.connect-copy>p:not(.section-kicker){max-width:680px;margin:clamp(2rem,4vh,3.25rem) 0 0;color:var(--muted-strong);font-size:clamp(1.08rem,1.4vw,1.32rem);line-height:1.65}.impact-list{margin-top:clamp(3.5rem,7vh,6.5rem);border-top:1px solid var(--line)}.impact-item{display:grid;grid-template-columns:4.5rem minmax(12rem,.7fr) 1.3fr;gap:clamp(1.25rem,3vw,3.5rem);align-items:baseline;padding:1.7rem 0;border-bottom:1px solid var(--line)}.impact-item>span{color:#8b857d;font-size:.76rem;letter-spacing:.18em}.impact-item h3,.impact-item p{margin:0}.impact-item h3{font-size:clamp(1.08rem,1.6vw,1.42rem);font-weight:500}.impact-item p{color:var(--muted);font-size:.98rem;line-height:1.6}.resume-list{margin:clamp(3.5rem,8vh,7rem) 0 0}.resume-row{display:grid;grid-template-columns:minmax(9rem,.45fr) 1.4fr;gap:2rem;padding:1.65rem 0;border-top:1px solid var(--line)}.resume-row:last-child{border-bottom:1px solid var(--line)}.resume-row dt,.resume-row dd{margin:0}.resume-row dt{color:#817a71;font-size:.76rem;letter-spacing:.18em;text-transform:uppercase}.resume-row dd{color:var(--paper);font-family:var(--display);font-size:clamp(1.4rem,2.2vw,2rem);line-height:1.25}.connect-copy{text-align:center}.connect-copy>h2,.connect-copy>p:not(.section-kicker){margin-right:auto;margin-left:auto}.connect-copy>h2{margin-top:0}.contact-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,1050px);margin:clamp(2.8rem,5.5vh,4.5rem) auto 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left}.contact-item{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center;min-height:6.5rem;padding:1.35rem 1.55rem;color:var(--paper);text-decoration:none;opacity:0;transform:translateY(12px);transition:color .26s ease,opacity .7s ease,transform .7s cubic-bezier(.16,1,.3,1);transition-delay:calc(.13s + (var(--contact-index) * 90ms))}.contact-item+.contact-item{border-left:1px solid var(--line)}.contact-item:after{position:absolute;right:0;bottom:-1px;left:0;height:1px;content:"";background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .44s cubic-bezier(.16,1,.3,1)}.connect-screen.is-visible .contact-item{opacity:1;transform:translateY(0)}.contact-icon,.contact-arrow{display:grid;place-items:center;color:#817a72;transition:color .26s ease,transform .36s cubic-bezier(.16,1,.3,1)}.contact-meta{display:grid;gap:.42rem;min-width:0}.contact-label{color:#817a71;font-size:.66rem;font-weight:500;letter-spacing:.2em;line-height:1;text-transform:uppercase}.contact-value{overflow-wrap:anywhere;color:var(--paper);font-size:clamp(.96rem,1.15vw,1.08rem);letter-spacing:.01em;line-height:1.35}.contact-item:hover:after,.contact-item:focus-visible:after{transform:scaleX(1)}.contact-item:hover .contact-icon,.contact-item:focus-visible .contact-icon,.contact-item:hover .contact-arrow,.contact-item:focus-visible .contact-arrow{color:var(--paper)}.contact-item:hover .contact-arrow,.contact-item:focus-visible .contact-arrow{transform:translate3d(3px,-3px,0)}.section-rail{position:fixed;z-index:10;top:49%;right:clamp(.8rem,1.6vw,1.5rem);transform:translate3d(0,-50%,0);opacity:.56;transition:opacity .28s ease,transform .36s cubic-bezier(.16,1,.3,1)}.section-rail:hover,.section-rail:focus-within,.section-rail.is-scrolling{opacity:1}.section-rail.is-scrolling{transform:translate3d(-4px,-50%,0)}.rail-index{--rail-parent-width: 1.1rem;--rail-parent-hover-width: 1.6rem;--rail-parent-active-width: 2.25rem;--rail-child-width: .72rem;--rail-child-active-width: 1.2rem;position:relative;display:flex;flex-direction:column;align-items:flex-end;gap:.14rem}.rail-group{position:relative;display:grid;min-height:.5rem;justify-items:end;transition:height .48s cubic-bezier(.16,1,.3,1),margin .48s cubic-bezier(.16,1,.3,1),opacity .26s ease,transform .42s cubic-bezier(.16,1,.3,1)}.rail-group.is-expanded{z-index:2}.rail-parent,.rail-child{position:relative;display:block;height:.5rem;padding:0;background:transparent;border:0;border-top:1px solid rgba(32,28,23,.3);cursor:pointer}.rail-parent{width:var(--rail-parent-width);transition:width .38s cubic-bezier(.16,1,.3,1),border-color .24s ease,opacity .28s ease,transform .42s cubic-bezier(.16,1,.3,1)}.rail-parent:hover,.rail-parent:focus-visible{width:var(--rail-parent-hover-width);border-top-color:#201c17c2}.rail-parent.is-active{width:var(--rail-parent-active-width);border-top-color:var(--paper)}.rail-children{pointer-events:none}.rail-group.is-expanded .rail-child{pointer-events:auto}.rail-child{width:var(--rail-child-width);border-top-color:#201c1757}.rail-child:hover,.rail-child:focus-visible,.rail-child.is-active{width:var(--rail-child-active-width);border-top-color:var(--paper)}.rail-label{position:absolute;top:50%;right:calc(100% + .72rem);color:#201c17b8;font-size:.66rem;font-weight:500;letter-spacing:.13em;line-height:1;text-transform:uppercase;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;filter:blur(2px);transform:translate3d(.34rem,-50%,0);transition:opacity .18s ease,transform .26s cubic-bezier(.16,1,.3,1),filter .22s ease,visibility 0s linear .22s}.rail-child-label{right:calc(100% + .6rem);color:#201c179e;font-size:.63rem;letter-spacing:.035em;text-transform:none}.rail-parent:focus-visible .rail-label,.rail-child:focus-visible .rail-label{opacity:1;visibility:visible;filter:blur(0);transform:translate3d(0,-50%,0);transition-delay:0s}@media(hover:hover)and (pointer:fine){.rail-parent:hover .rail-label,.rail-child:hover .rail-label{opacity:1;visibility:visible;filter:blur(0);transform:translate3d(0,-50%,0);transition-delay:0s}}.stagger-rail .rail-children{display:grid;max-height:0;margin-top:0;overflow:visible;justify-items:end;gap:.08rem;opacity:0;visibility:hidden;transform:translateY(-.3rem);transition:max-height .56s cubic-bezier(.16,1,.3,1),margin .56s cubic-bezier(.16,1,.3,1),opacity .18s ease,transform .48s cubic-bezier(.16,1,.3,1),visibility 0s linear .56s}.stagger-rail .rail-group.is-expanded .rail-children{max-height:2rem;margin-top:.12rem;opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s}.stagger-rail .rail-child{margin-right:.32rem;opacity:0;transform:translateY(-.18rem) scaleX(.35);transform-origin:right center;transition:width .32s cubic-bezier(.16,1,.3,1),border-color .22s ease,opacity .24s ease,transform .42s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--rail-child-index) * 65ms)}.stagger-rail .rail-group.is-expanded .rail-child{opacity:.48;transform:translateY(0) scaleX(1)}.stagger-rail .rail-group.is-expanded .rail-child.is-active,.stagger-rail .rail-group.is-expanded .rail-child:hover,.stagger-rail .rail-group.is-expanded .rail-child:focus-visible{opacity:1}.rail-parent:focus-visible,.rail-child:focus-visible,.scroll-cue:focus-visible,.explore-actions a:focus-visible,.contact-item:focus-visible,.experience-item:focus-visible,.resume-back:focus-visible{outline:1px solid var(--accent);outline-offset:4px}@media(max-width:940px){.resume-page{grid-template-columns:1fr}.resume-sidebar{min-height:18rem;padding:2.25rem clamp(1.5rem,6vw,3.5rem) 2.75rem;border-right:0;border-bottom:1px solid var(--line)}.resume-profile{position:static;margin-top:4.5rem}.resume-profile h1,.resume-profile-name{font-size:clamp(2.8rem,7vw,4rem)}.resume-experience{padding:clamp(4.5rem,9vw,6.5rem) clamp(1.5rem,6vw,3.5rem) 6rem}.resume-experience-title{margin-left:0}.job-detail{padding:clamp(4.5rem,9vw,6.5rem) clamp(1.5rem,6vw,3.5rem) 6rem}}@media(max-width:780px){.hero-screen{padding:6rem 1.35rem}.hero-title{font-size:clamp(3.25rem,13vw,5.25rem);line-height:.97}.hero-intro{max-width:21rem;font-size:1rem}.explore-actions{grid-template-columns:repeat(3,max-content);gap:1rem clamp(1.25rem,4vw,2.4rem)}.projects-page{justify-content:flex-start;padding:6.5rem 1.5rem 4rem}.projects-heading h1{font-size:clamp(3.6rem,14vw,5.5rem)}.project-segments{grid-template-columns:1fr;margin-top:3rem}.project-segment{min-height:12.5rem;padding:1.75rem 0}.project-segment+.project-segment{border-top:1px solid var(--line);border-left:0}.project-segment h2{font-size:clamp(2.75rem,10vw,4rem)}.content-screen,.explore-screen,.connect-screen{padding:6.5rem 1.5rem}.content-wrap>h2,.connect-copy>h2{font-size:clamp(3.4rem,15vw,5.5rem)}.impact-item{grid-template-columns:2.2rem 1fr}.impact-item p{grid-column:2}.resume-row{grid-template-columns:1fr;gap:.8rem}.contact-list{grid-template-columns:1fr;width:min(100%,34rem)}.contact-item{min-height:5.75rem;padding:1.2rem .35rem}.contact-item+.contact-item{border-top:1px solid var(--line);border-left:0}.section-rail{right:.75rem}.rail-index{--rail-parent-width: .95rem;--rail-parent-hover-width: 1.35rem;--rail-parent-active-width: 1.9rem;--rail-child-width: .64rem;--rail-child-active-width: 1.05rem}.experience-list{margin-top:3rem}.experience-item,.education-item{grid-template-columns:6.5rem minmax(0,1fr);gap:.65rem 1.5rem;min-height:0;padding:1.65rem 0}.experience-role{grid-column:2}.experience-role h3{font-size:clamp(1.05rem,3.8vw,1.35rem);line-height:1.25}.experience-role p{margin-top:.42rem;font-size:.9rem}.experience-dates{grid-column:2;font-size:.86rem;text-align:left;transform:none}.experience-item:hover .experience-dates,.experience-item:focus-visible .experience-dates{transform:none}.experience-arrow{top:auto;bottom:1.72rem;transform:translate3d(8px,0,0)}.experience-item:hover .experience-arrow,.experience-item:focus-visible .experience-arrow{transform:translateZ(0)}.job-detail-heading h1{font-size:clamp(3.35rem,12vw,5.5rem)}.job-detail-section{grid-template-columns:1fr;gap:1.4rem}.job-detail-section ul{gap:1rem}}@media(max-width:480px){.section-rail{top:64%;right:.55rem}.section-rail .rail-label{display:none}.rail-index{--rail-parent-width: .8rem;--rail-parent-hover-width: 1.15rem;--rail-parent-active-width: 1.6rem;--rail-child-width: .54rem;--rail-child-active-width: .9rem}.eyebrow{letter-spacing:.28em}.hero-title{font-size:clamp(2.8rem,12.7vw,4rem)}.explore-actions{grid-template-columns:1fr;justify-items:center;gap:.9rem}.projects-page{padding:5.75rem 1.35rem 3.25rem}.projects-heading h1{font-size:clamp(3.25rem,17vw,4.5rem)}.project-segment{min-height:11.5rem}.contact-list{margin-top:2.5rem}.contact-item{gap:.8rem}.resume-back{min-height:2.75rem}.resume-sidebar{min-height:16.5rem;padding:1.4rem 1.35rem 2.25rem}.resume-profile{margin-top:3.5rem}.resume-profile h1,.resume-profile-name{font-size:clamp(2.5rem,12vw,3.35rem)}.resume-profile>p:last-child{margin-top:1rem;font-size:.93rem}.resume-experience{padding:3.75rem 1.35rem 5rem}.experience-item,.education-item{grid-template-columns:5.25rem minmax(0,1fr);gap:.55rem 1rem}.experience-logo.is-good-doctor img{max-width:5.15rem}.experience-logo.is-carro img{max-width:4.8rem}.experience-logo.is-rhul{height:2.7rem}.experience-logo.is-rhul img{width:5.25rem}.job-detail{padding:3.75rem 1.35rem 5rem}.job-detail-logo{margin-bottom:1.8rem}.job-detail-logo.is-good-doctor img{max-width:5.15rem}.job-detail-logo.is-carro img{max-width:4.8rem}.job-detail-heading h1{font-size:clamp(2.85rem,13vw,4.25rem)}.job-detail-meta{display:grid;gap:.55rem}.job-detail-meta p:last-child{text-align:left}.job-detail-context{font-size:clamp(1.35rem,6vw,1.75rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero-copy{transform:none;filter:none}.scroll-cue-icon{animation:none}}
