@import url('https://fonts.googleapis.com/css2?family=Crimson+Text:ital,wght@0,400;0,600;1,400&display=swap');
@font-face{font-family:'SiteFont';src:url('fonts/8_BCDEEE+9.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}

body{font-family:'Crimson Text',Georgia,serif;background:#fff;color:#2c3e50;line-height:1.7;letter-spacing:.02em;margin:0}.mobile-menu-toggle{display:none;position:fixed;top:1rem;right:1rem;z-index:60;width:44px;height:44px;border:0;border-radius:12px;background:#fff;color:#1a202c;box-shadow:0 8px 24px rgba(15,23,42,.12);cursor:pointer}.mobile-menu-toggle span{display:block;width:20px;height:2px;background:currentColor;margin:5px auto;border-radius:2px;transition:transform .25s ease,opacity .25s ease}.mobile-menu-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.menu-backdrop{display:none;position:fixed;inset:0;background:rgba(15,23,42,.22);backdrop-filter:blur(2px);z-index:45;opacity:0;transition:opacity .25s ease}.menu-backdrop.active{opacity:1}::selection{background:#ede9fe;color:#1a202c}.js-enhanced .page-content{will-change:transform}.profile-img,.person-photo{transition:transform .35s ease,filter .35s ease}.profile-img:hover{transform:translateY(-2px) scale(1.015);filter:saturate(1.04)}.person-card:hover .person-photo{transform:translateY(-2px)}.publication{transition:background-color .25s ease}.publication:hover{background:linear-gradient(90deg,rgba(248,250,252,.75),rgba(255,255,255,0));}h1,h2,h3,h4,.elegant-title,.section-title{font-family:'SiteFont',Georgia,serif;font-weight:400;letter-spacing:.03em;color:#1a202c}.site-sidebar{position:fixed;top:0;left:0;width:220px;height:100vh;padding:2rem 1.25rem;background:#f8fafc;border-right:1.5px solid #e2e8f0;overflow-y:auto;z-index:20;box-sizing:border-box}.menu-category{color:#1a202c;font-size:1.15rem;font-weight:600;margin:1.25rem 0 .5rem}.menu-category a{color:inherit;text-decoration:none}.menu-category a:hover{color:#8b5cf6;text-decoration:none}.menu-category:first-child{margin-top:0}.menu-item a{display:block;color:#64748b;padding:.2rem 0;text-decoration:none;transition:color .2s;white-space:nowrap}.menu-item a:hover,.menu-item a.current{color:#8b5cf6}.page-content{max-width:960px;margin:0 auto;padding:3.5rem 3rem 4rem}.with-sidebar{margin-left:220px}.elegant-title{font-size:3.5rem;font-weight:300;color:#1a202c;letter-spacing:.05em;margin:0 0 0rem}.subtitle{color:#718096;font-style:normal;font-weight:300;font-size:1.5rem;margin:.25rem 0}.link,a{color:#8b5cf6;text-decoration:none}.link:hover,a:hover{color:#7c3aed;text-decoration:underline}.section-title{font-size:2.25rem;font-weight:300;margin:2rem 0 .5rem}.research-section{padding:.1rem 0;margin-bottom:.15rem}.research-section .section-title{margin:.65rem 0 .15rem}.compact-section{padding:.15rem 0;margin-bottom:.25rem}.compact-section h2{margin:.35rem 0 .1rem}.topic-heading{display:flex;align-items:center;gap:.7rem}.topic-icon{width:2rem;height:2rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:1.05rem;background:#f8fafc;color:#8b5cf6;flex-shrink:0}.topic-icon.optimization{background:#fff1f2;color:#be123c}.topic-icon.safety{background:#dcfce7;color:#15803d}.topic-icon.evaluation{background:#eff6ff;color:#2563eb}.clean-block{background:#fff;padding:1rem 0;margin-bottom:1.25rem}.clean-block:hover{box-shadow:none}.tag-button{font-family:inherit;padding:11px 24px;border-radius:10px;font-size:1.2em;background:#fff;color:#64748b;border:0;cursor:pointer;transition:background-color .2s,color .2s}.tag-button:hover{background:#f3e8ff;color:#6d28d9}.tag-button.active{background:#8b5cf6;color:#fff}.tag-button[data-filter="optimization"]:hover{background:#fee2e2;color:#b91c1c}.tag-button[data-filter="optimization"].active{background:#dc2626;color:#fff}.tag-button[data-filter="safety"]:hover{background:#dcfce7;color:#15803d}.tag-button[data-filter="safety"].active{background:#16a34a;color:#fff}.tag-button[data-filter="evaluation"]:hover{background:#dbeafe;color:#1d4ed8}.tag-button[data-filter="evaluation"].active{background:#2563eb;color:#fff}.hidden{display:none}.publication-card.hidden{display:none}.hero{display:flex;gap:2rem;align-items:flex-start}.profile-img{width:250px;height:250px;object-fit:cover;border:2px solid #f1f5f9;box-shadow:0 6px 20px rgba(0,0,0,.08)}.muted{color:#64748b}.affiliations-line{font-size:1.3em}.people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1.25rem}.person-card{text-align:center}.person-card h3{margin-bottom:.35rem}.person-photo{width:150px;height:150px;border-radius:999px;background:#f1f5f9;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:.95rem;object-fit:cover}.person-links{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap;font-size:1.1rem}.person-links a{color:#64748b;line-height:1}.person-links a:hover{color:#8b5cf6;text-decoration:none}.pub-topic{margin-top:2.5rem}.publication{padding:1rem 0}.publication h3{font-size:1.25rem;font-weight:600;margin:.1rem 0}.venue-badge,.topic-badge{font-family:inherit;font-size:.85em;padding:4px 10px;border-radius:7px;background:#f8fafc;color:#64748b;display:inline-block;margin:0 .35rem .5rem 0}.topic-badge.evaluation{background:#dbeafe;color:#1d4ed8}.topic-badge.safety{background:#dcfce7;color:#15803d}.topic-badge.homogenization{background:#ede9fe;color:#6d28d9}.topic-badge.privacy{background:#ede9fe;color:#6d28d9}.topic-badge.optimization{background:#fee2e2;color:#b91c1c}.footer{margin-top:3rem;padding-top:1.5rem;border-top:1px solid #e2e8f0;color:#64748b;font-size:1.05rem}@media(max-width:1023px){.mobile-menu-toggle{display:block}.menu-backdrop{display:block;pointer-events:none}.menu-backdrop.active{pointer-events:auto}.site-sidebar{position:fixed;top:0;left:0;width:min(82vw,300px);height:100vh;border-right:1.5px solid #e2e8f0;border-bottom:0;padding:5rem 2rem 2rem;transform:translateX(-105%);transition:transform .32s cubic-bezier(.22,1,.36,1);box-shadow:18px 0 40px rgba(15,23,42,.12);z-index:50}.site-sidebar.open{transform:translateX(0)}.site-sidebar .menu-item{display:block;margin-right:0}.with-sidebar{margin-left:0}.page-content{padding:5rem 2rem 2rem}.hero{flex-direction:column}.elegant-title{font-size:2.5rem}body.menu-open{overflow:hidden}}