:root{--primary:#f3f3f3;--secondary:#020108;--secondary-op70:#18181bb3;--secondary-op50:#18181b80;--secondary-op20:#18181b33;--hairline-soft:#0000000d;--bg:var(--primary);--navy:var(--secondary);--muted:var(--secondary-op70);--hairline:var(--secondary-op20);--accent:var(--secondary);--accent-soft:var(--secondary-op20);--gold:var(--secondary);--gold-soft:var(--secondary-op20);--nav-scrolled:transparent;--nav-mobile:var(--primary);--surface:transparent;--max-width:2400px;--page-x-padding:32px;--measure:72rem;--measure-wide:96rem;--nav-height:4.5rem;--font-display:"Jost", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-body:"Jost", "Helvetica Neue", Helvetica, Arial, sans-serif;--text-micro:.8rem;--text-xs:1.2rem;--text-sm:1.4rem;--text-base:1.6rem;--text-md:2rem;--text-lg:2.4rem;--text-xl:3.4rem;--text-2xl:5.6rem;--text-hero:clamp(4.8rem, 8vw, 18rem);--space-1:.4rem;--space-2:.8rem;--space-3:1.2rem;--space-4:2rem;--space-5:3.2rem;--space-6:4.8rem;--space-7:6.4rem;--space-8:12rem;--space-9:18rem;--ease:cubic-bezier(.19, 1, .22, 1);--ease-soft:cubic-bezier(.16, 1, .3, 1);--ease-drawer:cubic-bezier(.77, 0, .175, 1);--ease-sym:cubic-bezier(.66, 0, .34, 1);--duration:.8s;--bio-dna:var(--secondary-op50);--bio-molecule:var(--secondary-op50);--bio-hex:var(--secondary-op50);--bio-cell:var(--secondary-op50);--bio-coral:var(--secondary-op70);--bio-cyan:var(--secondary-op50);--bio-lime:var(--secondary-op50);--bio-amber:var(--secondary-op70);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--primary:#020108;--secondary:#f3f3f3;--secondary-op70:#f3f3f3b3;--secondary-op50:#f3f3f380;--secondary-op20:#f3f3f333;--hairline-soft:#ffffff14;--bg:var(--primary);--navy:var(--secondary);--muted:var(--secondary-op70);--hairline:var(--secondary-op20);--accent:var(--secondary);--accent-soft:var(--secondary-op20);--gold:var(--secondary);--gold-soft:var(--secondary-op20);--nav-mobile:var(--primary);--bio-dna:var(--secondary-op50);--bio-molecule:var(--secondary-op50);--bio-hex:var(--secondary-op50);--bio-cell:var(--secondary-op50);--bio-coral:var(--secondary-op70);--bio-cyan:var(--secondary-op50);--bio-lime:var(--secondary-op50);--bio-amber:var(--secondary-op70);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=1024px){:root{--page-x-padding:12px}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 1rem);scrollbar-width:thin;scrollbar-color:var(--secondary) var(--primary);font-size:62.5%}body{background:var(--primary);max-width:100vw;min-height:100vh;color:var(--secondary);font-family:var(--font-body);font-size:var(--text-base);text-transform:uppercase;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background .35s var(--ease-soft), color .35s var(--ease-soft);margin:0;font-weight:300;line-height:1;overflow-x:hidden}#root{min-height:100vh}.app-shell{min-height:100vh;max-width:var(--max-width);margin-inline:auto;position:relative}.app-content{z-index:1;position:relative}img,svg{max-width:100%;display:block}a{color:inherit;cursor:pointer;text-decoration:none}a:focus-visible,button:focus-visible{outline:1px dashed var(--secondary-op50);outline-offset:4px}h1,h2,h3,h4,p,ul{margin:0}ul{padding:0;list-style:none}button{font:inherit;color:inherit;cursor:pointer;text-transform:uppercase;background:0 0;border:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%;padding-inline:var(--page-x-padding);max-width:var(--max-width);margin-inline:auto}.container--narrow{width:min(100% - (var(--page-x-padding) * 2), 72rem);margin-inline:auto;padding-inline:0}.section{z-index:2;padding-block:var(--space-8);background:var(--primary);position:relative}.section__title{font-family:var(--font-display);font-size:clamp(3.2rem, 5vw, var(--text-2xl));letter-spacing:-.04em;margin-bottom:var(--space-6);color:var(--secondary);font-weight:300;line-height:1.15}.section__rule{background:var(--secondary);width:2.4rem;height:1px;margin-bottom:var(--space-4);opacity:.35;display:block}.prose{text-transform:none;letter-spacing:-.02em;font-size:var(--text-md);color:var(--secondary-op70);max-width:54rem;font-weight:300;line-height:1.25}.prose+.prose{margin-top:var(--space-4)}.bracket-btn{font-size:var(--text-micro);letter-spacing:.08em;color:var(--secondary);align-items:center;gap:.2em;padding-top:2px;font-weight:400;transition:opacity .3s;display:inline-flex}.bracket-btn:before{content:"["}.bracket-btn:after{content:"]"}.bracket-btn:hover,.bracket-btn:focus-visible{opacity:.55}.link-underline{color:inherit;display:inline-block;position:relative}.link-underline:after{content:"";transform-origin:0;width:100%;height:1px;transition:transform .45s var(--ease);background:currentColor;position:absolute;bottom:-.12em;left:0;transform:scaleX(0)}.link-underline:hover:after,.link-underline:focus-visible:after{transform:scaleX(1)}.reveal{opacity:0;transition:opacity var(--duration) var(--ease), transform var(--duration) var(--ease);transform:translateY(2.4rem)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}.link-underline:after{transition:none}}.nav{z-index:100;mix-blend-mode:difference;color:var(--primary);padding:18px var(--page-x-padding) 0;pointer-events:none;position:fixed;top:0;left:0;right:0}.nav__inner{justify-content:space-between;align-items:center;gap:var(--space-4);pointer-events:auto;display:flex}.nav__right{align-items:center;gap:var(--space-4);display:flex}.nav__brand{font-size:var(--text-sm);letter-spacing:-.02em;padding:10px 0;font-weight:400}.nav__links{gap:var(--space-5);align-items:center;display:none}.nav__links a{font-size:var(--text-xs);letter-spacing:.04em;opacity:.72;font-weight:400;transition:opacity .3s}.nav__links a:hover,.nav__links a:focus-visible{opacity:1}.theme-toggle{right:max(1rem, var(--page-x-padding));bottom:max(1rem, env(safe-area-inset-bottom,0px));z-index:200;border:1px solid color-mix(in srgb, var(--primary) 18%, transparent);background:color-mix(in srgb, var(--bg) 88%, transparent);width:2.85rem;height:2.85rem;color:var(--primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 28px color-mix(in srgb, var(--primary) 10%, transparent);opacity:.92;transition:opacity .3s, transform .3s var(--ease-soft), background .3s, border-color .3s;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:fixed}.theme-toggle:hover,.theme-toggle:focus-visible{opacity:1;transform:translateY(-1px)}.nav__toggle{width:2.4rem;height:2.4rem;color:inherit;flex-direction:column;justify-content:center;gap:5px;padding:0;display:flex}.nav__toggle span{width:100%;height:1px;transition:transform .35s var(--ease-soft), opacity .25s;background:currentColor;display:block}.nav__toggle[aria-expanded=true] span:first-child{transform:translateY(6px)rotate(45deg)}.nav__toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav__toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.nav__drawer{z-index:99;background:var(--primary);color:var(--secondary);padding:calc(var(--nav-height) + 2rem) var(--page-x-padding) var(--space-6);transition:transform 1s var(--ease-drawer);gap:var(--space-5);mix-blend-mode:normal;pointer-events:none;flex-direction:column;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.nav__drawer.is-open{pointer-events:auto;transform:translateY(0)}.nav__drawer a{letter-spacing:-.04em;padding-block:var(--space-3);border-bottom:1px solid var(--hairline-soft);font-size:clamp(2.8rem,6vw,4.8rem);font-weight:300}@media (width>=1025px){.nav__links{display:flex}.nav__toggle{display:none}.nav__drawer{display:none!important}}.hero{z-index:0;height:100svh;padding:var(--nav-height) var(--page-x-padding) var(--space-6);background:var(--primary);flex-direction:column;justify-content:flex-end;display:flex;position:sticky;top:0;overflow:hidden}.hero__crosshair-v,.hero__crosshair-h{pointer-events:none;opacity:0;z-index:10;will-change:transform, opacity;transition:opacity .3s;position:absolute}.hero__crosshair-v{border-left:1px dashed var(--secondary-op50);width:0;height:100%;top:0;left:0;transform:translate(-50%)}.hero__crosshair-h{border-top:1px dashed var(--secondary-op50);width:100%;height:0;top:0;left:0;transform:translateY(-50%)}.hero.is-pointer .hero__crosshair-v,.hero.is-pointer .hero__crosshair-h{opacity:1}.hero__tag{z-index:15;pointer-events:none;opacity:0;will-change:transform, opacity;flex-direction:column;align-items:center;gap:.8rem;width:18rem;transition:opacity .25s;display:flex;position:absolute;transform:translate(-50%,-120%)}.hero.is-pointer .hero__tag{opacity:1}.hero__tag-frame{aspect-ratio:1.45;border:1px solid var(--secondary-op20);background:var(--secondary-op20);width:100%}.hero__tag-label{font-size:var(--text-micro);letter-spacing:.08em;opacity:.7;white-space:nowrap}@media (any-pointer:coarse),(width<=1024px){.hero__crosshair-v,.hero__crosshair-h,.hero__tag{display:none!important}}.hero__meta{justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-5);font-size:var(--text-xs);letter-spacing:.04em;opacity:.7;z-index:2;flex-wrap:wrap;display:flex;position:relative}.hero__display{z-index:2;margin-bottom:var(--space-5);position:relative}.hero__line{font-family:var(--font-display);font-size:var(--text-hero);letter-spacing:-.06em;-webkit-user-select:none;user-select:none;margin-left:-.04em;font-weight:300;line-height:.95;display:block}.hero__sub{z-index:2;max-width:42rem;margin-bottom:var(--space-5);letter-spacing:-.02em;text-transform:none;color:var(--secondary-op70);font-size:clamp(1.6rem,2.2vw,2.2rem);font-weight:300;line-height:1.2;position:relative}.hero__actions{z-index:2;gap:var(--space-4);flex-wrap:wrap;align-items:center;display:flex;position:relative}.about__meta{margin-top:var(--space-5);font-size:var(--text-xs);letter-spacing:.06em;opacity:.55}.about__cta{margin-top:var(--space-5)}.aside-line{margin-top:var(--space-4);font-size:var(--text-sm);letter-spacing:.02em;text-transform:none;color:var(--secondary-op50);max-width:48rem;font-weight:400;line-height:1.4}.aside-line--before{margin-top:0;margin-bottom:var(--space-5)}.cv-btn{font-size:var(--text-micro);letter-spacing:.08em;color:inherit;align-items:center;gap:.45rem;font-weight:400;transition:opacity .3s;display:inline-flex}.cv-btn:before{content:"["}.cv-btn:after{content:"]"}.cv-btn:hover,.cv-btn:focus-visible{opacity:.55}.cv-btn__icon{display:none}.cv-btn--nav{font-size:var(--text-micro)}.cv-btn--solid{font-size:var(--text-xs)}.cv-band{gap:var(--space-4);margin-top:var(--space-6);margin-bottom:var(--space-6);padding-block:var(--space-5);border-top:1px solid var(--secondary-op20);border-bottom:1px solid var(--secondary-op20);flex-direction:column;align-items:flex-start;display:flex}@media (width>=640px){.cv-band{justify-content:space-between;align-items:center;gap:var(--space-5);flex-direction:row}}.cv-band__eyebrow{font-size:var(--text-micro);letter-spacing:.1em;margin-bottom:var(--space-2);opacity:.55;font-weight:400}.cv-band__text{font-size:var(--text-sm);text-transform:none;letter-spacing:-.01em;opacity:.7;max-width:36rem;line-height:1.35}.cv-band__actions{align-items:flex-start;gap:var(--space-3);flex-direction:column;flex-shrink:0;display:flex}.cv-download-link{font-size:var(--text-micro);letter-spacing:.06em;opacity:.55;align-items:center;gap:.4rem;transition:opacity .3s;display:inline-flex}.cv-download-link:hover,.cv-download-link:focus-visible{opacity:1}.cv-link__icon{opacity:.85;flex-shrink:0}.timeline{gap:var(--space-7);flex-direction:column;display:flex}.role{padding-left:0;position:relative}.role__header{gap:var(--space-1);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--hairline-soft);flex-direction:column;display:flex}@media (width>=640px){.role__header{gap:var(--space-2) var(--space-5);grid-template-columns:1fr auto;align-items:baseline;display:grid}}.role__title{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(2rem,3vw,3.2rem);font-weight:300;line-height:1.1}.role__org{font-size:var(--text-sm);letter-spacing:.02em;opacity:.55;margin-top:.6rem}.role__date{font-size:var(--text-xs);letter-spacing:.06em;opacity:.55;white-space:nowrap}.role__bullets{gap:var(--space-3);flex-direction:column;display:flex}.role__bullets li{font-size:var(--text-sm);text-transform:none;letter-spacing:-.01em;color:var(--secondary-op70);padding-left:1.4rem;line-height:1.35;position:relative}.role__bullets li:before{content:"";background:var(--secondary);opacity:.45;width:.6rem;height:1px;position:absolute;top:.7em;left:0}.role-parts{gap:var(--space-6);flex-direction:column;display:flex}.role-part__title{font-size:var(--text-base);letter-spacing:-.02em;margin-bottom:var(--space-3);font-weight:400}.featured{margin-top:var(--space-5);padding:var(--space-5) 0 0;border-top:1px solid var(--secondary-op20)}.featured__label{font-size:var(--text-micro);letter-spacing:.1em;opacity:.5;margin-bottom:var(--space-2)}.featured__title{letter-spacing:-.04em;margin-bottom:var(--space-3);font-size:clamp(2.4rem,4vw,4.2rem);font-weight:300;line-height:1.05}.featured__text{font-size:var(--text-md);text-transform:none;letter-spacing:-.02em;color:var(--secondary-op70);max-width:54rem;line-height:1.25}.featured__highlights{gap:var(--space-2);margin-top:var(--space-4);margin-bottom:var(--space-5);flex-direction:column;display:flex}.featured__highlights li{font-size:var(--text-sm);text-transform:none;letter-spacing:-.01em;padding-left:1.4rem;line-height:1.35;position:relative}.featured__highlights li:before{content:"";background:var(--secondary);opacity:.45;width:.6rem;height:1px;position:absolute;top:.7em;left:0}.mini-diagram{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--hairline-soft)}.mini-diagram__caption{font-size:var(--text-micro);letter-spacing:.1em;opacity:.5;margin-bottom:var(--space-2)}.mini-diagram__steps{flex-wrap:wrap;align-items:center;gap:.35rem .4rem;display:flex}.mini-diagram__step{align-items:center;gap:.4rem;display:inline-flex}.mini-diagram__node{border:1px solid var(--secondary-op20);font-size:var(--text-micro);letter-spacing:.04em;white-space:nowrap;padding:.35rem .7rem;display:inline-block}.mini-diagram__arrow{opacity:.45;font-size:var(--text-xs);line-height:1}.work-diagram{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--hairline-soft);color:var(--secondary)}.work-diagram__caption{font-size:var(--text-micro);letter-spacing:.12em;opacity:.5;margin-bottom:var(--space-4)}.work-diagram__svg{width:100%;max-width:56rem;height:auto;display:block;overflow:visible}.work-diagram__stage{stroke:none}.work-diagram__frame{fill:#0000;stroke:var(--secondary-op20);stroke-width:1.2px}.work-diagram__frame--accent{stroke:var(--secondary);stroke-width:1.5px}.work-diagram__panel{fill:var(--secondary-op20);stroke:none}.work-diagram__line{fill:none;stroke:var(--secondary);stroke-width:1.2px;opacity:.55}.work-diagram__line--flow{stroke-dasharray:4 4;animation:18s linear infinite diagram-dash}.work-diagram__arrowhead{fill:var(--secondary)}.work-diagram__title{fill:var(--secondary);font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:500}.work-diagram__sub{fill:var(--secondary);opacity:.5;font-family:var(--font-body);letter-spacing:.02em;text-transform:none;font-size:10px;font-weight:400}.work-diagram__note{fill:var(--secondary);opacity:.45;font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:400}.work-diagram__bit{fill:var(--secondary);opacity:.15}.work-diagram__bit--on{opacity:.75}.work-diagram__base-chip{fill:#0000;stroke:var(--secondary);stroke-width:1.2px;opacity:.7}.work-diagram__base-chip-text{fill:var(--secondary);font-family:var(--font-body);letter-spacing:.04em;font-size:11px;font-weight:500}.work-diagram__base{fill:var(--secondary);opacity:.35;font-family:var(--font-body);font-size:9px;font-weight:500}.work-diagram__helix{stroke:var(--secondary);stroke-width:1.6px;fill:none;opacity:.85}.work-diagram__rung{stroke:var(--secondary);stroke-width:1px;opacity:.35}.work-diagram__helix-group{animation:diagram-breathe 5s var(--ease-soft) infinite;transform-origin:50%;transform-box:fill-box}.work-diagram__shield{fill:var(--secondary-op20);stroke:var(--secondary);stroke-width:1.4px}.work-diagram__lock{fill:var(--secondary);opacity:.85}.work-diagram__lock-shackle{stroke:var(--secondary);stroke-width:1.6px}.work-diagram__radar{stroke:var(--secondary);stroke-width:1.2px;opacity:.55}.work-diagram__radar-beam{stroke:var(--secondary);stroke-width:1.4px;opacity:.8}.work-diagram__dot{fill:var(--secondary);opacity:.7}.work-diagram__dot--pulse{animation:diagram-pulse 2.2s var(--ease-soft) infinite}.work-diagram__mol{fill:#0000;stroke:var(--secondary);stroke-width:1.3px;opacity:.75}.work-diagram__mol--accent{fill:var(--secondary-op20);stroke:var(--secondary);stroke-width:1.5px;opacity:1}.work-diagram__mol-bond{stroke:var(--secondary);stroke-width:1.2px;opacity:.45}.work-diagram__mol-group{animation:diagram-float 6s var(--ease-soft) infinite;transform-origin:50%;transform-box:fill-box}.work-diagram__target{fill:#0000;stroke:var(--secondary);stroke-width:1.3px;opacity:.7}.work-diagram__orb{stroke:var(--secondary);stroke-width:1.3px;opacity:.65}.work-diagram__orb--spin{stroke-dasharray:12 10;animation:12s linear infinite diagram-dash}.work-diagram__venn{stroke:var(--secondary);stroke-width:1.3px;opacity:.55}.work-diagram__bar{fill:var(--secondary);opacity:.2}.work-diagram__bar--hot{opacity:.85}.work-diagram__flask{fill:none;stroke:var(--secondary);stroke-width:1.3px;opacity:.7}.work-diagram__flask-fill{fill:var(--secondary);opacity:.2;stroke:none}.work-diagram__well{fill:#0000;stroke:var(--secondary);stroke-width:1.1px;opacity:.35}.work-diagram__well--hit{fill:var(--secondary);opacity:.55;stroke:none}.work-diagram__drop-outline{fill:none;stroke:var(--secondary);stroke-width:1.5px}.work-diagram__drop-fill{fill:var(--secondary);opacity:.25;stroke:none}.work-diagram__vial-base{fill:var(--secondary);opacity:.35}.work-diagram__mito-outer{fill:#0000;stroke:var(--secondary);stroke-width:1.5px;opacity:.7}.work-diagram__mito-inner{fill:#0000;stroke:var(--secondary);stroke-width:1.2px;opacity:.35}.work-diagram__cristae{stroke:var(--secondary);stroke-width:1.3px;opacity:.55}.work-diagram__cell{fill:#0000;stroke:var(--secondary);stroke-width:1.6px;opacity:.55}.work-diagram__cell-inner{fill:#0000;stroke:var(--secondary);stroke-width:1px;stroke-dasharray:3 4;opacity:.25}.work-diagram__nucleus{fill:var(--secondary-op20);stroke:var(--secondary);stroke-width:1.3px;opacity:.85}.work-diagram__vesicle{fill:#0000;stroke:var(--secondary);stroke-width:1.4px;opacity:.7}.work-diagram__cargo{fill:var(--secondary);opacity:.35;stroke:none}.work-diagram__lysosome{fill:#0000;stroke:var(--secondary);stroke-width:1.4px;opacity:.55}.work-diagram__plasmid{stroke:var(--secondary);stroke-width:1.5px;opacity:.7}.work-diagram__plasmid-arc{stroke:var(--secondary);stroke-width:3px;opacity:.85;stroke-linecap:round}.work-diagram__gene-cassette{fill:var(--secondary);opacity:.85}.dna-diagrams{gap:var(--space-6);margin-top:var(--space-5);flex-direction:column;display:flex}.dna-flow-pair{gap:var(--space-5);display:grid}@media (width>=768px){.dna-flow-pair{gap:var(--space-6);grid-template-columns:1fr 1fr}}.dna-flow__caption{font-size:var(--text-micro);letter-spacing:.12em;opacity:.5;margin-bottom:var(--space-3)}.dna-flow__steps{gap:var(--space-2);flex-direction:column;display:flex}.dna-flow__step{align-items:center;gap:var(--space-2);display:flex}.dna-flow__index{font-size:var(--text-micro);letter-spacing:.08em;opacity:.4;min-width:1.8rem}.dna-flow__node{border:1px solid var(--secondary-op20);font-size:var(--text-micro);letter-spacing:.06em;flex:1;padding:.55rem .9rem;display:inline-block}.dna-flow__arrow{opacity:.35;font-size:var(--text-sm);display:none}@media (width>=1025px){.dna-flow__steps{flex-flow:wrap;align-items:center}.dna-flow__node{flex:0 auto}.dna-flow__arrow{display:inline}.dna-flow__index{display:none}}.dna-pillars{gap:var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--hairline-soft);display:grid}@media (width>=640px){.dna-pillars{gap:var(--space-5) var(--space-6);grid-template-columns:1fr 1fr}}@media (width>=1025px){.dna-pillars{gap:var(--space-5);grid-template-columns:repeat(4,1fr)}}.dna-pillar__index{font-size:var(--text-micro);letter-spacing:.12em;opacity:.4;margin-bottom:var(--space-2)}.dna-pillar__title{font-size:var(--text-sm);letter-spacing:-.01em;margin-bottom:var(--space-2);font-weight:400}.dna-pillar__text{font-size:var(--text-xs);text-transform:none;letter-spacing:-.01em;opacity:.65;line-height:1.4}@keyframes diagram-dash{to{stroke-dashoffset:-120px}}@keyframes diagram-pulse{0%,to{opacity:.35}50%{opacity:1}}@keyframes diagram-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes diagram-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.work-diagram__line--flow,.work-diagram__orb--spin,.work-diagram__dot--pulse,.work-diagram__helix-group,.work-diagram__mol-group{animation:none}}.lang-list{flex-direction:column;display:flex}.lang-item{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-block:var(--space-4);border-top:1px solid var(--hairline-soft);display:flex}.lang-item:last-child{border-bottom:1px solid var(--hairline-soft)}.lang-item__name{letter-spacing:-.03em;font-size:clamp(2rem,3vw,2.8rem);font-weight:300}.lang-item__level{font-size:var(--text-xs);letter-spacing:.06em;opacity:.55}.edu-list{flex-direction:column;gap:0;display:flex}.edu-item{gap:var(--space-1);padding-block:var(--space-5);border-top:1px solid var(--hairline-soft);display:grid}.edu-item:last-child{border-bottom:1px solid var(--hairline-soft)}@media (width>=640px){.edu-item{align-items:baseline;column-gap:var(--space-5);grid-template-columns:1fr auto}}.edu-item__degree{letter-spacing:-.03em;font-size:clamp(2rem,3vw,2.8rem);font-weight:300;line-height:1.1}.edu-item__school{font-size:var(--text-sm);letter-spacing:.02em;opacity:.55;margin-top:.6rem}.edu-item__meta{font-size:var(--text-xs);letter-spacing:.06em;opacity:.55;margin-top:var(--space-2)}@media (width>=640px){.edu-item__meta{text-align:right;margin-top:0}}.skills-grid{gap:var(--space-6);display:grid}@media (width>=640px){.skills-grid{gap:var(--space-7) var(--space-6);grid-template-columns:1fr 1fr}}@media (width>=1025px){.skills-grid{grid-template-columns:repeat(3,1fr);gap:7.8rem 12rem}}.skill-group__name{font-size:var(--text-xs);letter-spacing:.08em;opacity:.5;margin-bottom:var(--space-3)}.skill-group__list{gap:var(--space-2);flex-direction:column;display:flex}.skill-group__list li{font-size:var(--text-sm);text-transform:none;letter-spacing:-.01em;color:var(--secondary-op70);padding-bottom:var(--space-2);border-bottom:1px solid var(--hairline-soft);line-height:1.35}.skill-group__list li:last-child{border-bottom:none;padding-bottom:0}.cert-list{flex-direction:column;display:flex}.cert-list li{gap:var(--space-1);padding-block:var(--space-4);border-top:1px solid var(--hairline-soft);font-size:var(--text-sm);display:grid}.cert-list li:last-child{border-bottom:1px solid var(--hairline-soft)}@media (width>=640px){.cert-list li{align-items:baseline;column-gap:var(--space-5);grid-template-columns:1fr auto}}.cert-list__name{text-transform:none;letter-spacing:-.01em;line-height:1.3}.cert-list__org{opacity:.55;text-transform:none}.cert-list__year{font-size:var(--text-xs);letter-spacing:.06em;opacity:.55}.footer{z-index:2;padding:var(--space-8) var(--page-x-padding) var(--space-7);background:var(--secondary);color:var(--primary);margin-top:0;position:relative}.footer .container{max-width:none;padding-inline:0}.footer__title{letter-spacing:-.04em;margin-bottom:var(--space-5);font-size:clamp(3.2rem,6vw,5.6rem);font-weight:300;line-height:1.05}.footer .aside-line{color:var(--primary);opacity:.55}.footer__links{gap:var(--space-2) var(--space-5);font-size:var(--text-sm);letter-spacing:.04em;flex-wrap:wrap;margin-bottom:0;display:flex}.footer .cv-band{border-color:color-mix(in srgb, var(--primary) 20%, transparent)}.footer .cv-band__eyebrow,.footer .cv-band__text,.footer .cv-download-link,.footer .cv-btn{color:var(--primary)}.footer__copy{font-size:var(--text-xs);letter-spacing:.04em;opacity:.45;text-transform:none;max-width:48rem;line-height:1.4}.footer__top{margin-top:var(--space-6)}.footer__top .bracket-btn{color:var(--primary)}
