:root{--ink:#152c40;--muted:#526677;--accent:#007a78;--line:#dce6eb;--surface:#f4f8fa}
.navicon{display:block}
html{scroll-behavior:smooth}body{color:var(--ink);background:#fff}a{color:var(--accent)}a:hover{color:#004d52}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b35414;outline-offset:4px}
h1,h2,h3,h4{color:var(--ink);letter-spacing:-.025em}p,li{line-height:1.7}h2{margin-top:2.2em}img{max-width:100%;height:auto}.page__content a,.archive a{overflow-wrap:anywhere}
.masthead{border-bottom:1px solid var(--line)}.greedy-nav a{color:var(--ink)}.greedy-nav .visible-links a:before{background:var(--accent)}.masthead__menu-item--lg a{font-weight:750}
#main{max-width:1320px;padding-top:2.5em}.archive,.page{min-width:0}.sidebar{opacity:1}.author__avatar img{width:154px;height:154px;object-fit:cover;border-radius:50%;padding:0;border:1px solid var(--line)}.author__name{font-size:1.05em}.author__bio{color:var(--muted);line-height:1.6}.author__urls li{font-size:.9em}
.page__title{font-size:2.2em;margin-bottom:.55em;line-height:1.15}.page-lead{color:var(--muted);font-size:1.1em;max-width:42em}.muted{color:var(--muted);font-size:.86em}.eyebrow{font-size:.68em;font-weight:750;letter-spacing:.13em;color:var(--accent);margin:0 0 1em;text-transform:uppercase}
.research-hero{border-bottom:1px solid var(--line);padding:0 0 2.2em;margin-bottom:2.3em}.research-hero h1{font-size:clamp(2rem,3.8vw,3.4rem);line-height:1.12;margin:.35em 0 .6em;letter-spacing:-.045em}.research-hero p{max-width:43em}.research-hero .hero-intro{font-size:1.1em;line-height:1.65}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1em;margin:1.8em 0 1em}.section-heading h2{margin:0}.section-heading>a{font-size:.8em;white-space:nowrap}
.action-row{display:flex;flex-wrap:wrap;gap:.65em 1em;align-items:center;margin:1.2em 0 .5em}.action-link{display:inline-flex;align-items:center;gap:1em;padding:.65em 1em;border:1px solid var(--line);border-radius:6px;font-weight:650;font-size:.82em;text-decoration:none!important;background:#fff}.action-link.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.action-link:hover{border-color:var(--accent);background:#eaf5f4;color:#004d52}.text-link{font-size:.84em;font-weight:650}
.research-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1em}.research-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;min-width:0;display:flex;flex-direction:column;transition:box-shadow .2s,border-color .2s}.research-card:hover{border-color:#80b4b4;box-shadow:0 5px 22px #1634470d}.research-image{display:block;border-bottom:1px solid var(--line);background:#fff}.research-image img{display:block;width:100%;aspect-ratio:8/5;object-fit:contain}.research-card-body{padding:1.1em;display:flex;flex-direction:column;flex:1}.research-card h3{font-size:1.02em;line-height:1.4;margin:0 0 .7em}.research-card h3 a{color:var(--ink);text-decoration:none}.research-card p:not(.eyebrow){font-size:.8em;color:var(--muted);line-height:1.65}.research-card .text-link{margin-top:auto}.research-card .eyebrow{font-size:.59em}
.publication-card{border:1px solid var(--line);padding:1.5em;margin:1em 0;border-radius:8px}.publication-card h3{font-size:1.13em;line-height:1.45;margin:.25em 0 .6em}.publication-card h3 a{color:var(--ink);text-decoration:none}.publication-card p{font-size:.86em;margin:.7em 0}.publication-card .eyebrow{font-size:.65em}.publication-authors{color:var(--muted)}.publication-card .action-row{margin-bottom:0}.thesis-card{background:var(--surface)}
.contact-panel{background:var(--surface);border-left:3px solid var(--accent);padding:1.4em 1.6em;margin:2em 0;border-radius:0 8px 8px 0}.contact-panel h2{margin:0 0 .7em}.contact-panel p:last-child{margin-bottom:0}.research-figure{margin:0 0 2em;border:1px solid var(--line);border-radius:8px;overflow:hidden}.research-figure img{display:block;width:100%;max-height:450px;object-fit:contain}.research-figure figcaption{padding:1em 1.3em;background:var(--surface);color:var(--muted);font-size:.72em;line-height:1.65}
.experience-list{border-left:2px solid var(--line);padding-left:1.6em}.experience-list article{position:relative;margin:0 0 2em}.experience-list article:before{content:"";position:absolute;left:-1.95em;top:.2em;width:.6em;height:.6em;background:var(--accent);border-radius:50%}.experience-list h3{margin:.2em 0 .5em}.experience-list p{font-size:.9em}.experience-list .eyebrow{font-size:.68em}
.archive__item-title{font-size:1.15em;line-height:1.4}.archive__item-excerpt{color:var(--muted);font-size:.85em}.archive__subtitle{border-bottom-color:var(--line)}.page__footer{background:var(--surface);color:var(--muted);border-top:1px solid var(--line)}.page__footer a{color:var(--muted)}.skip-link{position:fixed;top:-100px;left:12px;z-index:9999;background:var(--ink);color:#fff;padding:.7em 1em}.skip-link:focus{top:12px;color:#fff}
@media(min-width:80em){.archive{padding-right:0}.page{padding-right:0}}
@media(max-width:1100px){.research-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-card:last-child{grid-column:1/-1}.research-card:last-child .research-image img{max-height:230px}}
@media(max-width:767px){#main{padding-top:1.4em}.research-grid{grid-template-columns:1fr}.research-card:last-child{grid-column:auto}.research-card:last-child .research-image img{max-height:none}.research-card-body{padding:1.2em}.research-card h3{font-size:1.2em}.research-card p:not(.eyebrow){font-size:.95em}.research-hero h1{font-size:2.2rem}.section-heading{align-items:flex-start;flex-direction:column;gap:.5em}.publication-card{padding:1.1em}.publication-card p{font-size:.95em}.page__title{font-size:1.9em}.contact-panel{padding:1.2em}.author__avatar img{width:80px;height:80px}.sidebar{margin-bottom:1.5em}.action-link{padding:.8em 1em}.experience-list{padding-left:1.2em}.experience-list article:before{left:-1.55em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.masthead,.sidebar,.page__footer,.skip-link{display:none}.page,.archive{width:100%!important;padding:0!important}.research-grid{grid-template-columns:repeat(3,1fr)}.publication-card,.research-card{break-inside:avoid}a{color:#000}.action-link{border:0;padding:0}}
