.site-nav[data-astro-cid-3ef6ksr2]{position:fixed;top:0;left:0;right:0;z-index:100;background:#ffffffd1;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid var(--rule);animation:nav-drop .7s cubic-bezier(.19,1,.22,1) both}@keyframes nav-drop{0%{transform:translateY(-100px)}to{transform:translateY(0)}}.nav-inner[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;padding-top:.9rem;padding-bottom:.9rem;gap:1rem}.brand[data-astro-cid-3ef6ksr2]{text-decoration:none;display:flex;flex-direction:column;line-height:1}.brand-first[data-astro-cid-3ef6ksr2]{font-family:var(--sans);font-size:.95rem;font-weight:700;color:var(--text);letter-spacing:.01em}.brand-last[data-astro-cid-3ef6ksr2]{font-family:var(--sans);font-size:.95rem;font-weight:400;color:var(--text-soft);letter-spacing:.18em;text-transform:uppercase;margin-top:2px}.nav-links[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:1.8rem}.nav-list[data-astro-cid-3ef6ksr2]{display:flex;gap:1.7rem;list-style:none;margin:0;padding:0;align-items:center}.nav-link[data-astro-cid-3ef6ksr2]{position:relative;display:inline-flex;align-items:baseline;gap:.4rem;font-family:var(--sans);font-size:.8rem;font-weight:500;color:var(--text-soft);text-decoration:none;padding-bottom:4px;transition:color .25s}.nav-line[data-astro-cid-3ef6ksr2]{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.19,1,.22,1)}.nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--text)}.nav-link[data-astro-cid-3ef6ksr2]:hover .nav-line[data-astro-cid-3ef6ksr2]{transform:scaleX(1)}.nav-link[data-astro-cid-3ef6ksr2].active{color:var(--text)}.nav-link[data-astro-cid-3ef6ksr2].active .nav-line[data-astro-cid-3ef6ksr2]{transform:scaleX(1)}.nav-cta[data-astro-cid-3ef6ksr2]{padding:.65rem 1.4rem;font-size:.72rem}.nav-toggle[data-astro-cid-3ef6ksr2]{display:none;flex-direction:column;gap:5px;background:none;border:1px solid var(--rule-strong);border-radius:999px;padding:.6rem .7rem;cursor:pointer}.nav-toggle[data-astro-cid-3ef6ksr2] span[data-astro-cid-3ef6ksr2]{display:block;width:18px;height:1.5px;background:var(--text);transition:transform .25s,opacity .25s}.nav-toggle[data-astro-cid-3ef6ksr2][aria-expanded=true] span[data-astro-cid-3ef6ksr2]:first-child{transform:translateY(3.5px) rotate(45deg)}.nav-toggle[data-astro-cid-3ef6ksr2][aria-expanded=true] span[data-astro-cid-3ef6ksr2]:last-child{transform:translateY(-3px) rotate(-45deg)}@media(max-width:860px){.nav-toggle[data-astro-cid-3ef6ksr2]{display:flex}.nav-links[data-astro-cid-3ef6ksr2]{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;background:#fffffffa;backdrop-filter:blur(18px);border-bottom:1px solid var(--rule);padding:1.6rem var(--gutter) 2rem;gap:1.3rem}.nav-links[data-astro-cid-3ef6ksr2].open{display:flex}.nav-list[data-astro-cid-3ef6ksr2]{flex-direction:column;align-items:flex-start;gap:1.3rem}.nav-link[data-astro-cid-3ef6ksr2]{font-size:1.1rem}.nav-cta[data-astro-cid-3ef6ksr2]{align-self:flex-start}}.site-foot[data-astro-cid-sz7xmlte]{border-top:1px solid var(--rule);padding:clamp(4rem,9vw,7rem) 0 2.5rem;margin-top:2rem;background:var(--ink-2)}.foot-cta[data-astro-cid-sz7xmlte]{margin-bottom:clamp(3rem,6vw,5rem)}.foot-cta-eyebrow[data-astro-cid-sz7xmlte]{font-family:var(--sans);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3em;color:var(--neutral-500);margin:0 0 1.4rem}.foot-cta-head[data-astro-cid-sz7xmlte]{margin:0 0 2.2rem;line-height:.92;letter-spacing:-.02em}.foot-cta-small[data-astro-cid-sz7xmlte]{display:block;font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(1.6rem,4vw,2.6rem);color:var(--text-soft)}.foot-cta-big[data-astro-cid-sz7xmlte]{display:block;font-family:var(--display);font-weight:800;font-size:clamp(3.2rem,11vw,8rem);line-height:.96;letter-spacing:-.03em;color:var(--text)}.foot-cta-btn[data-astro-cid-sz7xmlte]{margin-top:.5rem}.foot-divider[data-astro-cid-sz7xmlte]{margin:0 0 3rem}.foot-grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:2rem;margin-bottom:3rem}@media(max-width:900px){.foot-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr;gap:2.5rem 2rem}}@media(max-width:520px){.foot-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr}}.foot-name[data-astro-cid-sz7xmlte]{font-family:var(--serif);font-size:1.6rem;font-weight:500;color:var(--text);margin:0 0 .6rem;letter-spacing:-.01em}.foot-tagline[data-astro-cid-sz7xmlte]{font-family:var(--sans);font-size:.78rem;letter-spacing:.06em;color:var(--text-soft);margin:0 0 .5rem}.foot-location[data-astro-cid-sz7xmlte]{font-family:var(--sans);font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--accent-soft);margin:0}.foot-grid[data-astro-cid-sz7xmlte] h4[data-astro-cid-sz7xmlte]{font-family:var(--sans);font-size:10px;text-transform:uppercase;letter-spacing:.22em;color:var(--neutral-500);font-weight:700;margin:0 0 1.1rem}.foot-grid[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;padding:0;margin:0}.foot-grid[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte]{margin-bottom:.6rem;font-size:.92rem}.foot-grid[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-soft);text-decoration:none;transition:color .18s}.foot-grid[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text)}.foot-bottom[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem 1.5rem;padding-top:1.6rem;border-top:1px solid var(--rule);font-family:var(--sans);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--neutral-500)}:root{--accent: #455CE9;--accent-soft: #5E73F0;--accent-dim: #2E3FA8;--accent-glow: rgba(69, 92, 233, .08);--paper: #FFFFFF;--ink: #FFFFFF;--ink-2: #FAFAFA;--surface: #F5F5F7;--surface-2: #ECECF1;--neutral-900: #14141A;--neutral-700: #3A3A42;--neutral-600: #52525B;--neutral-500: #6E6E78;--neutral-400: #8A8A93;--neutral-300: #B4B4BC;--neutral-200: #E1E1E6;--neutral-100: #F2F2F5;--text: #14141A;--text-soft: #4B4B54;--text-muted: #7B7B85;--rule: rgba(20, 20, 26, .09);--rule-strong: rgba(20, 20, 26, .16);--bg: var(--paper);--bg-card: var(--surface);--bg-raised: var(--surface-2);--teal: var(--accent);--teal-dim: var(--accent-dim);--teal-glow: var(--accent-glow);--amber: #B4B4BC;--dot-biotech: #4285F4;--dot-sensing: #00A876;--dot-digital: #E8A400;--dot-regulatory:#E8650A;--dot-ai: #D6296B;--display: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--serif: "Playfair Display", Georgia, "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono: "Inter", -apple-system, sans-serif;--script: "Inter", sans-serif;--max: 1100px;--max-wide: 1320px;--gutter: clamp(1.25rem, 4vw, 3rem)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.7;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}.site-nav,main,.site-foot,header,footer{position:relative;z-index:3}.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.wrap-wide{max-width:var(--max-wide);margin:0 auto;padding:0 var(--gutter)}.rule{border:0;height:1px;background:var(--rule);margin:0}h1,h2,h3,h4{font-family:var(--sans);font-weight:700;color:var(--text);margin:0 0 .5em;letter-spacing:-.02em;line-height:1.02}h1{font-size:clamp(2.4rem,6vw,4.5rem);font-weight:800;letter-spacing:-.03em}h2{font-size:clamp(2rem,4.6vw,3.4rem);font-weight:800;letter-spacing:-.03em;line-height:1.02}h3{font-size:clamp(1rem,1.4vw,1.2rem);font-weight:600;font-family:var(--sans);letter-spacing:-.01em;line-height:1.4}p{margin:0 0 1.1em;color:var(--text-soft)}p.lede{font-family:var(--sans);font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.5;color:var(--text-soft);font-weight:400;max-width:46ch}em{font-style:italic;font-family:var(--serif);color:var(--accent-dim)}strong{color:var(--text);font-weight:600}.h-icon{display:inline-block;width:.62em;height:.62em;color:var(--accent);margin-right:.38em;vertical-align:.08em;flex:none}h3 .h-icon{width:.85em;height:.85em;vertical-align:-.08em}.nav-icon{width:.82rem;height:.82rem;margin-right:0;vertical-align:-.15em;transition:transform .25s ease}.nav-link:hover .nav-icon,.nav-link.active .nav-icon{transform:translateY(-1px)}@media(max-width:860px){.nav-icon{width:.95rem;height:.95rem}}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-dim)}.eyebrow{font-family:var(--sans);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3em;color:var(--neutral-500);margin:0 0 1.4rem;display:inline-flex;align-items:center;gap:.55rem}.eyebrow:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block}.eyebrow .accent,.eyebrow .num{color:var(--accent);margin-right:.1rem;letter-spacing:.1em}.section-title{font-family:var(--sans)}.section-title em{font-family:var(--serif);font-weight:500;color:var(--accent)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.9rem;font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-radius:999px;border:1px solid var(--rule-strong);color:var(--text);background:transparent;cursor:pointer;overflow:hidden;transition:color .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;z-index:0}.btn>*{position:relative;z-index:1}.btn:hover{color:var(--accent-dim);border-color:var(--accent)}.btn-primary{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 8px 20px #455ce938}.btn-primary,.btn-primary>*{color:#fff}.btn-primary:hover{background:var(--accent-dim);border-color:var(--accent-dim);color:#fff;box-shadow:0 10px 24px #455ce94d}.btn-secondary{border-color:var(--rule-strong)}.link-arrow{font-family:var(--sans);font-size:.8rem;font-weight:600;letter-spacing:.02em;color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}.link-arrow .arr{transition:transform .25s ease}.link-arrow:hover{color:var(--accent-dim)}.link-arrow:hover .arr{transform:translate(4px)}.page-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.tags{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}.tag{display:inline-block;padding:.32rem .7rem;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--neutral-600);background:var(--surface);border:1px solid var(--rule);border-radius:999px;transition:border-color .2s,color .2s,background .2s}.tag:hover{border-color:var(--accent);color:var(--accent-dim)}.tag.is-teal{border-color:var(--accent);color:var(--accent);background:var(--accent-glow)}.tag.is-amber{border-color:var(--rule-strong);color:var(--text-soft)}.status{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--sans);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;padding:.3rem .7rem;border-radius:999px;border:1px solid var(--rule-strong);color:var(--text-soft);background:var(--surface)}.status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.status-active{color:var(--accent);border-color:var(--accent);background:var(--accent-glow)}.status-completed{color:var(--neutral-500);border-color:var(--rule)}.status-ongoing{color:var(--text-soft);border-color:var(--rule-strong)}.page-head{padding:clamp(6.5rem,12vw,9.5rem) 0 clamp(2.5rem,5vw,4rem);position:relative;overflow:hidden}.page-head h1{font-size:clamp(2.4rem,6.5vw,4.6rem);font-weight:800;letter-spacing:-.03em;line-height:1.04}.page-head .lede{max-width:52ch;margin-top:1.4rem}.head-italic{font-style:italic;font-family:var(--serif);color:var(--accent);font-weight:500}.section{padding:clamp(56px,9vw,108px) 0;border-top:1px solid var(--rule);position:relative}.section-intro{max-width:56ch;font-size:1.05rem;margin:0 0 2.5rem;color:var(--text-soft)}.section--light{background:var(--ink-2);color:var(--neutral-900);border-top:1px solid var(--rule)}.section--light h1,.section--light h2,.section--light h3{color:var(--neutral-900)}.section--light p{color:var(--neutral-600)}.section--light .eyebrow{color:var(--neutral-500)}.section--light .rule,.section--light .section{border-color:var(--neutral-200)}.card{background:var(--surface);border:1px solid var(--rule);border-radius:14px;padding:1.9rem 1.7rem;transition:border-color .25s,transform .25s,box-shadow .25s}.card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 18px 40px #14141a14}.glow-line{height:1px;background:linear-gradient(90deg,transparent 0%,var(--accent) 50%,transparent 100%);opacity:.4;margin:0}.publication{display:grid;grid-template-columns:80px 1fr;gap:2rem;padding:1.8rem 0;border-top:1px solid var(--rule);align-items:start}.publication:last-child{border-bottom:1px solid var(--rule)}@media(max-width:680px){.publication{grid-template-columns:1fr;gap:.4rem}}.pub-year{font-family:var(--display);font-weight:800;font-size:1.5rem;color:var(--neutral-400);line-height:1;padding-top:.2rem;letter-spacing:-.01em}.pub-content{min-width:0}.pub-title{font-family:var(--serif);font-size:1.18rem;color:var(--text);font-weight:500;line-height:1.35;margin:0 0 .5rem}.pub-authors{font-size:.9rem;color:var(--text-soft);line-height:1.5;margin:0 0 .45rem}.pub-authors strong{color:var(--text);font-weight:600}.pub-venue{font-family:var(--serif);font-style:italic;font-size:.96rem;color:var(--text-soft);margin:0 0 .6rem}.pub-venue strong{font-style:normal;color:var(--text)}.pub-meta{display:flex;flex-wrap:wrap;gap:.4rem .8rem;font-family:var(--sans);font-size:.72rem;letter-spacing:.05em;color:var(--neutral-500);align-items:center;text-transform:uppercase}.pub-meta a{color:var(--accent)}.pub-meta a:hover{color:var(--accent-dim)}.pub-meta .pipe{color:var(--rule-strong)}.pub-meta .citations{color:var(--text-soft)}.pub-type{display:inline-block;padding:.18rem .55rem;border:1px solid var(--rule);border-radius:999px;font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:var(--neutral-500)}.pub-type.is-journal{border-color:var(--accent);color:var(--accent);background:var(--accent-glow)}.pub-type.is-invited{border-color:var(--rule-strong);color:var(--text-soft)}.timeline-item{display:grid;grid-template-columns:130px 1fr;gap:2.5rem;padding:2rem 0;border-top:1px solid var(--rule);position:relative}.timeline-item:last-child{border-bottom:1px solid var(--rule)}@media(max-width:640px){.timeline-item{grid-template-columns:1fr;gap:.5rem}}.timeline-year{font-family:var(--display);font-weight:800;font-size:1.15rem;letter-spacing:-.01em;color:var(--accent);padding-top:.1rem}.timeline-body h3{font-size:1.3rem;font-weight:500;font-family:var(--serif);letter-spacing:-.01em;margin-bottom:.35rem;color:var(--text);line-height:1.2}.timeline-meta-line{font-family:var(--sans);font-size:.7rem;color:var(--neutral-500);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.12em}.timeline-body p{margin:0;font-size:.98rem;color:var(--text-soft);max-width:62ch}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.rise{animation:rise .9s cubic-bezier(.19,1,.22,1) both}.rise.d1{animation-delay:.1s}.rise.d2{animation-delay:.22s}.rise.d3{animation-delay:.36s}.rise.d4{animation-delay:.5s}.rise.d5{animation-delay:.64s}.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.19,1,.22,1),transform .7s cubic-bezier(.19,1,.22,1)}.reveal.visible{opacity:1;transform:none}.mask-line{display:block;overflow:hidden}.mask-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}.mask-word>span{display:inline-block;transform:translateY(110%);transition:transform .8s cubic-bezier(.19,1,.22,1)}.mask-reveal.visible .mask-word>span{transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rise{animation:none}.reveal{opacity:1;transform:none;transition:none}.mask-word>span{transform:none!important;transition:none}}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.section--light .btn{color:var(--neutral-900);border-color:#14141a29}.section--light .btn:hover{color:var(--accent-dim);border-color:var(--accent)}.section--light .btn-primary,.section--light .btn-primary>*{color:#fff}.section--light .btn-primary:hover{color:#fff}.section--light .tag{color:var(--neutral-600);border-color:var(--neutral-200);background:var(--paper)}.section--light .tag:hover{color:var(--neutral-900);border-color:var(--accent)}.sticky-cta{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:90;display:flex;flex-direction:column;align-items:center;gap:.3rem;width:84px;height:84px;border-radius:50%;background:var(--accent);color:#fff;text-decoration:none;font-family:var(--sans);font-size:10px;font-weight:700;text-align:center;line-height:1.3;letter-spacing:.02em;box-shadow:0 10px 30px #455ce959;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.sticky-cta:hover{background:var(--accent-dim);color:#fff;transform:translateY(-3px);box-shadow:0 14px 34px #455ce96b}.sticky-cta svg{width:20px;height:20px}@media(max-width:640px){.sticky-cta{width:64px;height:64px;font-size:9px}.sticky-cta svg{width:16px;height:16px}}.carousel{position:relative}.carousel-track{display:flex;gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:.5rem;margin:0 -1px;-ms-overflow-style:none;scrollbar-width:none}.carousel-track::-webkit-scrollbar{display:none}.carousel-track>*{scroll-snap-align:start;flex:0 0 auto}.carousel-controls{display:flex;align-items:center;gap:.7rem;margin-top:1.6rem}.carousel-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--rule-strong);background:var(--paper);color:var(--text);cursor:pointer;transition:border-color .2s,color .2s,background .2s}.carousel-btn:hover{border-color:var(--accent);color:var(--accent)}.carousel-btn:disabled{opacity:.35;cursor:default}.carousel-btn:disabled:hover{border-color:var(--rule-strong);color:var(--text)}
