:root{--bg: #f6efef;--bg-soft: rgba(255, 250, 249, .82);--paper: rgba(255, 251, 249, .96);--paper-strong: #fff9f8;--text: #24181a;--muted: #685357;--line: rgba(95, 17, 32, .12);--line-strong: rgba(95, 17, 32, .22);--accent: #b01c2e;--accent-deep: #7f1325;--gold: #d6b2b8;--navy: #4d0f1b;--shadow: 0 22px 60px rgba(72, 11, 24, .12);--radius-xl: 26px;--radius-lg: 20px;--radius-md: 16px;--radius-pill: 999px;--content-width: 1520px;--transition: .22s ease}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--text);font-family:Avenir Next,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(176,28,46,.12),transparent 30%),radial-gradient(circle at 88% 12%,rgba(93,11,28,.1),transparent 24%),linear-gradient(180deg,#fff9f8,#f4ebea 52%,#f7efef)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(95,17,32,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(95,17,32,.03) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.35),transparent 78%);mask-image:linear-gradient(180deg,rgba(0,0,0,.35),transparent 78%)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}code{font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:.92em}#root{min-height:100vh}h1,h2,h3,.brand-title,.paper-title,.card-title,.person-name{margin:0;font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;letter-spacing:-.03em}p{margin:0}.site-shell{position:relative;width:min(calc(100% - 1rem),var(--content-width));margin:0 auto;padding:1.25rem 0 4rem}.site-backdrop{position:absolute;inset:0;z-index:0;border-radius:40px;background:radial-gradient(circle at top right,rgba(176,28,46,.08),transparent 32%),radial-gradient(circle at left center,rgba(93,11,28,.08),transparent 26%);filter:blur(10px)}.site-frame{position:relative;z-index:1}.site-header,.hero-panel,.photo-card,.paper-card,.person-card,.project-card,.contact-card,.team-section,.page-intro{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--paper);box-shadow:var(--shadow)}.site-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.2rem;padding:1.1rem 1.2rem;border-color:#ffffff29;background:linear-gradient(135deg,#550c18f7,#781223f0);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-lockup{display:inline-flex;flex-direction:column;gap:.25rem;max-width:20rem}.brand-kicker,.eyebrow,.subsection-kicker,.contact-label{color:var(--accent-deep);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}.brand-title{font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.05}.site-header .brand-kicker{color:#ffe2e6d1}.site-header .brand-title{color:#fff8f7}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.nav-link{padding:.78rem 1rem;border:1px solid transparent;border-radius:var(--radius-pill);color:var(--muted);font-weight:600;transition:color var(--transition),transform var(--transition),border-color var(--transition),background var(--transition)}.site-header .nav-link{color:#fff1f3c7}.nav-link:hover,.nav-link:focus-visible,.button:hover,.button:focus-visible,.text-link:hover,.text-link:focus-visible,.paper-title-link:hover,.paper-title-link:focus-visible,.contact-link:hover,.contact-link:focus-visible,.contact-value:hover,.contact-value:focus-visible{color:var(--accent-deep)}.site-header .nav-link:hover,.site-header .nav-link:focus-visible{color:#fff8f7;background:#ffffff14}.nav-link:hover,.nav-link:focus-visible,.button:hover,.button:focus-visible{transform:translateY(-1px)}.nav-link-active{color:var(--navy);border-color:#102a3e1a;background:#ffffffb8}.site-header .nav-link-active{color:#fff9f8;border-color:#ffffff2e;background:#ffffff1f}.site-main{display:grid;gap:1.6rem;margin-top:1.6rem}.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.95fr);gap:1.25rem}.hero-panel,.photo-card,.page-intro,.team-section{overflow:hidden;position:relative}.hero-panel{padding:1.7rem;background:linear-gradient(145deg,#670e1cfa,#4a0a16f5),var(--paper);border-color:#ffffff24}.hero-panel:after,.page-intro:after,.contact-card-accent:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(176,28,46,.14),transparent 70%);pointer-events:none}.hero-panel:after{right:-70px;bottom:-80px}h1{max-width:100%;font-size:clamp(2.5rem,5vw,4.6rem);line-height:.96}.hero-panel .eyebrow,.hero-panel h1,.hero-panel .hero-intro{color:#fff8f7}.hero-intro{margin-top:1.15rem;max-width:100%;font-size:clamp(1.15rem,2.1vw,1.5rem);line-height:1.3;color:var(--navy)}.hero-copy,.section-description,.paper-authors,.paper-summary,.person-bio,.card-summary,.card-supporting,.contact-detail,.contact-note,.subsection-heading p{line-height:1.7;color:var(--muted)}.hero-panel .hero-copy{color:#ffeceed1}.hero-copy{max-width:100%;margin-top:1rem}.button-row,.inline-links,.contact-link-list{display:flex;flex-wrap:wrap;gap:.8rem}.button-row{margin-top:1.5rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.9rem 1.25rem;border-radius:var(--radius-pill);border:1px solid transparent;font-weight:700;transition:transform var(--transition),color var(--transition),background var(--transition),box-shadow var(--transition),border-color var(--transition)}.button-primary{color:var(--navy);background:linear-gradient(135deg,#fff9f7,#f2e3e5);box-shadow:0 14px 34px #0000002e}.button-secondary{color:#fff8f7;border-color:#fff3;background:#ffffff14}.tag-list,.contact-methods{display:flex;flex-wrap:wrap;gap:.75rem}.tag,.paper-chip,.status-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.7rem .95rem;border-radius:var(--radius-pill);border:1px solid rgba(95,17,32,.08);background:#ffffffbd;font-size:.92rem}.photo-card{align-self:start;padding:1.1rem}.photo-frame{position:relative;overflow:hidden;aspect-ratio:16 / 9;border-radius:calc(var(--radius-xl) - 8px);border:1px solid rgba(95,17,32,.08);background:linear-gradient(180deg,#fffdfb,#f6ecec)}.photo-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .52s ease}.photo-slide-active{opacity:1}.photo-slide img{width:100%;height:100%;object-fit:cover}.photo-slider-control{position:absolute;top:50%;display:inline-flex;align-items:center;justify-content:center;width:2.45rem;height:2.45rem;padding:0;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:#fffbf9d1;color:var(--accent-deep);cursor:pointer;font-size:1.65rem;font-weight:700;line-height:1;transform:translateY(-50%);transition:background var(--transition),color var(--transition),transform var(--transition)}.photo-slider-control:hover,.photo-slider-control:focus-visible{background:#fff9f8;color:var(--navy);transform:translateY(-50%) scale(1.04)}.photo-slider-control-prev{left:.75rem}.photo-slider-control-next{right:.75rem}.photo-caption-row{display:grid;gap:.65rem;margin-top:.95rem}.photo-caption{color:var(--muted);line-height:1.65}.photo-slider-dots{display:inline-flex;gap:.42rem}.photo-slider-dot{width:.68rem;height:.68rem;padding:0;border:1px solid rgba(95,17,32,.28);border-radius:50%;background:#ffffffb8;cursor:pointer;transition:background var(--transition),border-color var(--transition),transform var(--transition)}.photo-slider-dot:hover,.photo-slider-dot:focus-visible,.photo-slider-dot-active{border-color:var(--accent-deep);background:var(--accent);transform:scale(1.08)}.page-section,.stacked-sections{display:grid;gap:1rem}.page-intro{padding:1.45rem}.page-intro.page-intro-plain{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.page-intro.page-intro-plain:after{display:none}.page-intro:after{top:-92px;right:-64px}.section-heading{display:grid;gap:.55rem}.section-heading h2{max-width:100%;font-size:clamp(2rem,4vw,3.25rem);line-height:1.02}.paper-grid,.project-grid,.team-grid{display:grid;gap:1rem}.paper-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),30rem));justify-content:center}.paper-year-slider{display:flex;gap:.6rem;overflow-x:auto;padding:.15rem 0 .35rem;scrollbar-width:thin;scroll-snap-type:x proximity}.paper-year-button{display:inline-flex;align-items:center;justify-content:center;min-width:5.3rem;min-height:2.6rem;padding:.7rem 1.05rem;border:1px solid var(--line);border-radius:var(--radius-pill);background:#ffffffb8;color:var(--accent-deep);cursor:pointer;flex:0 0 auto;font:inherit;font-weight:800;scroll-snap-align:start;transition:background var(--transition),border-color var(--transition),color var(--transition),transform var(--transition)}.paper-year-button:hover,.paper-year-button:focus-visible{border-color:var(--line-strong);background:var(--paper-strong);color:var(--navy);transform:translateY(-1px)}.paper-year-sections{display:grid;gap:1.25rem}.paper-year-section{display:grid;gap:.85rem;scroll-margin-top:1.5rem}.paper-year-title{color:var(--accent-deep);font-size:clamp(1.8rem,3vw,2.45rem);line-height:1}.project-grid,.team-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,38rem),1fr))}.paper-card,.person-card,.project-card,.contact-card,.team-section{padding:1.7rem}.paper-card{padding:1.15rem}.paper-card{min-height:100%}.paper-card-compact{background:linear-gradient(160deg,#fffcfbfa,#f9eff0eb),var(--paper)}.paper-meta,.card-topline{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem}.paper-meta{color:var(--muted);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:.83rem;text-transform:uppercase;letter-spacing:.08em}.paper-chip,.status-pill{color:var(--accent-deep);background:#b01c2e1f}.paper-title,.card-title{margin-top:1rem;font-size:1.55rem;line-height:1.08}.paper-title{font-size:1.22rem;line-height:1.15}.paper-authors,.paper-summary,.card-summary,.card-supporting{margin-top:.9rem}.paper-authors,.paper-summary{font-size:.94rem;line-height:1.55}.paper-title-link{transition:color var(--transition)}.paper-video{overflow:hidden;aspect-ratio:16 / 9;width:100%;margin-top:.9rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:#ffffffb8}.paper-video iframe{display:block;width:100%;height:100%;border:0}.paper-links{margin-top:1rem}.subsection-heading{display:grid;gap:.45rem;margin-bottom:1rem}.subsection-heading h3{font-size:1.8rem;line-height:1.08}.team-section{padding:1.4rem}.person-header{display:flex;align-items:flex-start;gap:.95rem}.person-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 3.4rem;width:3.4rem;height:3.4rem;border-radius:50%;background:linear-gradient(135deg,#6f1022,#b01c2e);color:#fdfaf3;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:1rem;font-weight:700}.person-name{font-size:1.35rem;line-height:1.08}.person-role{margin-top:.3rem;color:var(--navy);font-weight:700}.person-affiliation,.card-period{margin-top:.22rem;color:var(--muted)}.person-bio,.tag-list{margin-top:1rem}.tag{color:var(--navy);background:#b01c2e14}.inline-links,.contact-link-list{margin-top:1.1rem}.text-link,.contact-link,.contact-value{font-weight:700;transition:color var(--transition)}.contact-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:1rem}.contact-card h3{font-size:1.75rem;line-height:1.08}.contact-card-accent{background:linear-gradient(150deg,#fffcfbf5,#f5eaebf0),var(--paper)}.contact-card-accent:after{right:-82px;bottom:-92px}.contact-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.1rem}.contact-method{padding:1rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:#ffffffb8}.contact-value{display:inline-flex;margin-top:.45rem;color:var(--navy)}.contact-detail,.contact-note{margin-top:.75rem}@media(max-width:980px){.site-header,.hero-grid,.contact-layout{grid-template-columns:1fr}.site-header{display:grid}.site-nav{justify-content:flex-start}.paper-grid,.project-grid,.team-grid,.contact-methods{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.site-shell{width:min(calc(100% - 1rem),var(--content-width));padding-top:.75rem}.site-header,.hero-panel,.photo-card,.paper-card,.person-card,.project-card,.contact-card,.team-section,.page-intro{border-radius:24px}.paper-grid,.project-grid,.team-grid,.contact-methods{grid-template-columns:1fr}.brand-lockup{max-width:none}.site-nav{gap:.45rem}.nav-link{padding:.72rem .92rem}.hero-panel,.photo-card,.paper-card,.person-card,.project-card,.contact-card,.team-section,.page-intro{padding:1.15rem}h1{max-width:100%}}
