.pubs{list-style:none}.pub{padding:1.75rem 0;border-bottom:1px solid var(--border)}.pub:first-child{padding-top:0}.pub__title{font-size:1.2rem;font-weight:600;margin-bottom:.5rem}.pub__title a{transition:color .15s ease}.pub__title a:hover{color:var(--accent)}.pub__authors{color:var(--text-muted);margin-bottom:.25rem}.pub__authors strong{color:var(--text);font-weight:600}.pub__venue{align-items:center;gap:.6rem;font-size:.9rem;color:var(--text-muted)}.pub__actions,.pub__venue{display:flex;flex-wrap:wrap}.pub__actions{gap:.5rem;margin-top:1rem}.pub__button{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.875rem;font-weight:500;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:999px;transition:color .15s ease,border-color .15s ease,background-color .15s ease}.pub__button:hover,.pub__button[aria-expanded=true]{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.pub__abstract{margin-top:1rem;padding:.25rem 0 .25rem 1.25rem;border-left:2px solid var(--accent);color:var(--text-muted);font-size:.95rem;max-width:75ch}.entries{display:flex;flex-direction:column;gap:2.5rem}.entry{display:grid;grid-template-columns:64px minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem;align-items:start}.entry__logo{width:64px;height:64px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--bg-elevated)}.entry__title{font-size:1.2rem;font-weight:600;margin-bottom:.25rem}.entry__meta{color:var(--text-muted);margin-bottom:.15rem}.entry__meta b{color:var(--text);font-weight:500}.entry__dates{display:block;font-size:.8rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem}.entry__body{color:var(--text-muted);max-width:70ch}@media (max-width:640px){.entry{grid-template-columns:48px minmax(0,1fr);gap:1rem}.entry__logo{width:48px;height:48px;border-radius:var(--radius-sm)}}.projects{display:flex;flex-direction:column;gap:1.5rem}.projects__group{margin-top:1.5rem}.projects__group:first-child{margin-top:0}.projects__note{color:var(--text-muted);font-size:.95rem;margin-bottom:1rem}.project{padding:1.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated)}.project__title{font-size:1.2rem;font-weight:600;margin-bottom:.75rem}.project__body{color:var(--text-muted);max-width:75ch}.project__body a{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:transparent;text-decoration-color:transparent;text-underline-offset:.2em;transition:-webkit-text-decoration-color .15s ease;transition:text-decoration-color .15s ease;transition:text-decoration-color .15s ease,-webkit-text-decoration-color .15s ease}.project__body a:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.project__media{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1rem;gap:1rem;margin-top:1.25rem}.project__media img{width:100%;height:100%;max-height:320px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border)}.project__media iframe{width:100%;max-width:640px;aspect-ratio:16/9;height:auto;border:1px solid var(--border);border-radius:var(--radius)}@media (max-width:640px){.project{padding:1.25rem;border-radius:var(--radius)}}.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none;margin-bottom:2.5rem}.tabs::-webkit-scrollbar{display:none}.tab{position:relative;padding:.75rem 1rem;font-size:1rem;font-weight:500;color:var(--text-muted);white-space:nowrap;transition:color .15s ease;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.tab:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent);opacity:0;transition:opacity .15s ease}.tab--selected,.tab:hover{color:var(--text)}.tab--selected:after{opacity:1}.tab-panel{min-height:12rem}@media (max-width:520px){.tabs{flex-wrap:wrap;overflow:visible}.tab{padding:.6rem .75rem;font-size:.95rem}}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(11,18,32,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.navbar__inner{height:var(--nav-height);display:flex;align-items:center;justify-content:space-between;gap:1rem}.navbar__brand{font-weight:600;letter-spacing:-.01em;white-space:nowrap}.navbar__links{display:flex;align-items:center;gap:1.75rem;list-style:none}.navbar__links a{position:relative;font-size:.95rem;font-weight:500;color:var(--text-muted);transition:color .15s ease}.navbar__links a:after{content:"";position:absolute;left:0;right:0;bottom:-.35rem;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.navbar__links a:hover{color:var(--text)}.navbar__links a:hover:after{transform:scaleX(1)}@media (max-width:640px){.navbar__brand{font-size:.95rem}.navbar__links{gap:1rem}.navbar__links a{font-size:.85rem}}.hero{position:relative;padding-top:calc(var(--nav-height) + 4rem);padding-bottom:4rem;overflow:hidden}.hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;grid-gap:3rem;gap:3rem}.hero__name{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.05;margin-bottom:1rem}.hero__role{font-size:clamp(1.1rem,2vw,1.35rem);color:var(--text-muted);max-width:40ch;margin-bottom:1.5rem}.hero__topics{gap:.5rem;list-style:none;margin-bottom:2rem}.hero__links,.hero__topics{display:flex;flex-wrap:wrap}.hero__links{gap:1.5rem;font-weight:500}.hero__photo-wrap{position:relative;display:flex;justify-content:center}.hero__photo-wrap:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at center,var(--accent-glow) 0,transparent 60%);pointer-events:none}.hero__photo{position:relative;width:280px;height:280px;border-radius:50%;object-fit:cover;border:2px solid var(--accent);box-shadow:0 0 0 6px var(--bg),0 20px 50px rgba(0,0,0,.45)}@media (max-width:820px){.hero{padding-top:calc(var(--nav-height) + 2.5rem);padding-bottom:2.5rem}.hero__inner{grid-template-columns:1fr;gap:2.5rem}.hero__photo-wrap{order:-1;justify-content:flex-start}.hero__photo{width:180px;height:180px}}.about,.footer{border-top:1px solid var(--border)}.footer{padding:2rem 0;font-size:.9rem;color:var(--text-muted)}.footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.footer__links{display:flex;flex-wrap:wrap;gap:1.5rem}