
:root{
  --pub-ink:#171717;
  --pub-muted:#69635d;
  --pub-soft:#f5f2ec;
  --pub-line:#ded8cf;
  --pub-accent:#8b7561;
  --pub-accent-dark:#655344;
  --pub-white:#fff;
}

.active-page{color:var(--pub-accent)!important}

.pub-hero{
  padding:160px 24px 95px;
  background:
    radial-gradient(circle at 86% 22%,rgba(139,117,97,.18),transparent 27%),
    linear-gradient(180deg,#f7f4ef 0%,#f2eee7 100%);
  border-bottom:1px solid var(--pub-line);
}
.pub-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);
  gap:80px;
  align-items:end;
}
.pub-hero h1{
  max-width:900px;
  margin:0;
  font-family:"Playfair Display",serif;
  font-size:clamp(56px,7.1vw,94px);
  line-height:.99;
  font-weight:600;
}
.pub-hero h1 em{color:var(--pub-accent);font-weight:500}
.pub-hero-lead{
  max-width:760px;
  margin:28px 0 0;
  color:var(--pub-muted);
  font-size:17px;
  line-height:1.8;
}
.archive-metrics{
  border-top:1px solid var(--pub-line);
}
.archive-metrics>div{
  display:grid;
  grid-template-columns:150px 1fr;
  align-items:center;
  gap:20px;
  padding:22px 0;
  border-bottom:1px solid var(--pub-line);
}
.archive-metrics strong{
  font-family:"Playfair Display",serif;
  font-size:35px;
  font-weight:600;
}
.archive-metrics span{
  color:var(--pub-muted);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:1px;
}

.pub-main{padding:95px 24px 120px;background:#fff}
.archive-intro{
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:90px;
  align-items:end;
  margin-bottom:48px;
}
.archive-intro h2{
  font-family:"Playfair Display",serif;
  font-size:clamp(40px,5vw,60px);
  margin:0;
}
.archive-intro>p{
  color:var(--pub-muted);
  line-height:1.8;
  margin:0;
  max-width:760px;
}

.pub-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  gap:12px;
  padding:14px;
  border:1px solid var(--pub-line);
  background:var(--pub-soft);
}
.pub-search-wrap{
  display:flex;
  align-items:center;
  gap:12px;
  background:#fff;
  border:1px solid var(--pub-line);
  padding:0 14px;
}
.pub-search-wrap span{font-size:22px;color:var(--pub-accent)}
.pub-search-wrap input,
.pub-toolbar select{
  min-height:48px;
  border:0;
  outline:0;
  background:#fff;
  color:var(--pub-ink);
  font:inherit;
}
.pub-search-wrap input{width:100%}
.pub-toolbar select{padding:0 12px;border:1px solid var(--pub-line)}

.filter-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:20px 0 8px;
}
.filter-chip{
  border:1px solid var(--pub-line);
  background:#fff;
  padding:9px 13px;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
  transition:.2s ease;
}
.filter-chip:hover,
.filter-chip.active{
  background:var(--pub-ink);
  border-color:var(--pub-ink);
  color:#fff;
}

.results-line{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:12px 0 25px;
  color:var(--pub-muted);
  font-size:12px;
}
.results-line p{margin:0}
.reset-link{
  border:0;
  background:none;
  color:var(--pub-accent-dark);
  text-decoration:underline;
  text-underline-offset:4px;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}

.publications-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.pub-card{
  min-width:0;
  display:grid;
  grid-template-columns:175px minmax(0,1fr);
  min-height:330px;
  border:1px solid var(--pub-line);
  background:#fff;
  overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.pub-card:hover{
  transform:translateY(-4px);
  border-color:#c9b9aa;
  box-shadow:0 18px 45px rgba(35,27,20,.08);
}
.pub-cover{
  position:relative;
  background:#ece8e1;
  border-right:1px solid var(--pub-line);
  overflow:hidden;
}
.pub-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top center;
  display:block;
  transition:transform .35s ease;
}
.pub-card:hover .pub-cover img{transform:scale(1.025)}
.pub-year{
  position:absolute;
  left:10px;
  top:10px;
  padding:6px 8px;
  background:rgba(23,23,23,.92);
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.8px;
}
.pub-content{
  display:flex;
  flex-direction:column;
  padding:24px 22px 20px;
}
.pub-theme{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--pub-accent-dark);
  font-size:9px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
}
.pub-theme::before{
  content:"";
  width:18px;
  height:1px;
  background:var(--pub-accent);
}
.pub-content h3{
  font-family:"Playfair Display",serif;
  font-size:24px;
  line-height:1.18;
  margin:14px 0 9px;
  font-weight:600;
}
.pub-journal{
  color:var(--pub-muted);
  font-size:11px;
  line-height:1.5;
  margin:0 0 13px;
}
.pub-summary{
  color:#5c5752;
  font-size:12.5px;
  line-height:1.65;
  margin:0 0 18px;
}
.pub-card-footer{
  margin-top:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid #ece7e0;
  padding-top:15px;
}
.pub-file-meta{
  color:#8b847d;
  font-size:10px;
}
.pub-actions{
  display:flex;
  align-items:center;
  gap:6px;
}
.pub-read,.pub-open{
  border:0;
  background:none;
  padding:5px 3px;
  font-size:11px;
  font-weight:700;
  text-decoration:none;
  color:var(--pub-ink);
  cursor:pointer;
}
.pub-read{color:var(--pub-accent-dark)}
.pub-open{font-weight:600}
.pub-empty{
  text-align:center;
  padding:80px 20px;
  border:1px dashed var(--pub-line);
  color:var(--pub-muted);
}
.pub-empty span{font-size:40px}
.pub-empty h3{
  font-family:"Playfair Display",serif;
  font-size:30px;
  color:var(--pub-ink);
  margin:12px 0 5px;
}

.research-cta{
  padding:85px 24px;
  background:var(--pub-soft);
  border-top:1px solid var(--pub-line);
}
.research-cta-grid{
  display:grid;
  grid-template-columns:1fr auto;
  gap:70px;
  align-items:center;
}
.research-cta h2{
  margin:0 0 12px;
  font-family:"Playfair Display",serif;
  font-size:48px;
}
.research-cta p:not(.kicker){
  color:var(--pub-muted);
  max-width:680px;
  line-height:1.7;
}
.research-cta-actions{display:flex;gap:9px;flex-wrap:wrap}

/* Reader */
.pdf-viewer{
  position:fixed;
  inset:0;
  z-index:5000;
  display:none;
}
.pdf-viewer.open{display:block}
.viewer-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,8,8,.68);
  backdrop-filter:blur(5px);
}
.viewer-shell{
  position:absolute;
  inset:3.5vh 3vw;
  display:flex;
  flex-direction:column;
  background:#fff;
  box-shadow:0 30px 90px rgba(0,0,0,.32);
}
.viewer-header{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:16px 20px 16px 24px;
  border-bottom:1px solid var(--pub-line);
}
.viewer-heading{min-width:0}
.viewer-heading h2{
  max-width:900px;
  margin:4px 0 0;
  font-family:"Playfair Display",serif;
  font-size:21px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.viewer-meta{
  margin:0;
  font-size:9px;
  letter-spacing:1.3px;
  color:var(--pub-accent-dark);
  text-transform:uppercase;
  font-weight:700;
}
.viewer-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-shrink:0;
}
.viewer-action{
  color:var(--pub-ink);
  font-size:11px;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid currentColor;
  padding-bottom:2px;
}
.viewer-close{
  width:42px;
  height:42px;
  border:1px solid var(--pub-line);
  background:#fff;
  font-size:26px;
  line-height:1;
}
.viewer-close:hover{background:var(--pub-ink);color:#fff}
.viewer-body{
  min-height:0;
  flex:1;
  display:grid;
  grid-template-columns:320px minmax(0,1fr);
}
.viewer-details{
  padding:28px 24px;
  overflow:auto;
  border-right:1px solid var(--pub-line);
  background:#faf8f5;
}
.viewer-category{
  display:inline-block;
  padding:5px 8px;
  border:1px solid #cdbfaf;
  color:var(--pub-accent-dark);
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:1px;
}
.viewer-details>p{
  color:#5b5651;
  font-size:12px;
  line-height:1.7;
  margin:18px 0 23px;
}
.viewer-details dl{margin:0}
.viewer-details dl>div{
  padding:12px 0;
  border-top:1px solid var(--pub-line);
}
.viewer-details dt{
  color:#8a837c;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:1px;
  font-weight:700;
}
.viewer-details dd{
  margin:4px 0 0;
  font-size:11px;
  line-height:1.5;
}
.viewer-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:18px 0;
}
.viewer-tags span{
  padding:5px 7px;
  background:#ece7e0;
  font-size:9px;
  color:#5d5751;
}
.citation-button{width:100%;margin-top:5px}
.viewer-fallback{font-size:9.5px!important;color:#8b847d!important}
.viewer-frame-wrap{
  min-width:0;
  min-height:0;
  background:#353535;
}
.viewer-frame-wrap iframe{
  width:100%;
  height:100%;
  border:0;
  background:#4b4b4b;
}
body.viewer-open{overflow:hidden}
.pub-toast{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:6000;
  background:#171717;
  color:#fff;
  padding:11px 15px;
  font-size:11px;
  opacity:0;
  transform:translateY(8px);
  pointer-events:none;
  transition:.2s;
}
.pub-toast.show{opacity:1;transform:translateY(0)}

@media(max-width:1050px){
  .pub-hero-grid{grid-template-columns:1fr;gap:55px}
  .archive-metrics{display:grid;grid-template-columns:repeat(3,1fr)}
  .archive-metrics>div{display:block;padding:18px 15px;border-right:1px solid var(--pub-line)}
  .archive-metrics>div:last-child{border-right:0}
  .archive-metrics span{display:block;margin-top:5px}
  .publications-grid{grid-template-columns:1fr}
  .pub-card{grid-template-columns:185px 1fr}
  .viewer-body{grid-template-columns:270px minmax(0,1fr)}
}
@media(max-width:760px){
  .pub-hero{padding:125px 20px 70px}
  .pub-hero h1{font-size:52px}
  .archive-metrics{grid-template-columns:1fr}
  .archive-metrics>div{display:grid;grid-template-columns:130px 1fr;border-right:0}
  .pub-main{padding:65px 20px 85px}
  .archive-intro{grid-template-columns:1fr;gap:20px}
  .pub-toolbar{grid-template-columns:1fr}
  .publications-grid{gap:14px}
  .pub-card{grid-template-columns:112px minmax(0,1fr);min-height:300px}
  .pub-content{padding:18px 15px 15px}
  .pub-content h3{font-size:20px}
  .pub-summary{font-size:11.5px}
  .pub-card-footer{align-items:flex-start;flex-direction:column}
  .pub-actions{width:100%;justify-content:space-between}
  .research-cta-grid{grid-template-columns:1fr;gap:25px}
  .research-cta h2{font-size:40px}
  .viewer-shell{inset:0}
  .viewer-header{padding:12px 14px}
  .viewer-heading h2{font-size:16px;max-width:58vw}
  .viewer-action{display:none}
  .viewer-body{display:flex;flex-direction:column}
  .viewer-details{max-height:215px;border-right:0;border-bottom:1px solid var(--pub-line);padding:16px}
  .viewer-details dl,.viewer-tags,.citation-button,.viewer-fallback{display:none}
  .viewer-details>p{margin:10px 0 0;font-size:10.5px;line-height:1.5}
  .viewer-frame-wrap{flex:1;min-height:0}
}


/* =========================================================
   RESEARCH & PUBLICATIONS — INTEGRATED PROFILE
========================================================= */
.research-profile-section{
  padding:95px 24px 20px;
  background:#171717;
  color:#fff;
}
.profile-intro-grid{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:80px;
  align-items:end;
  margin-bottom:48px;
}
.profile-intro-grid h2,
.research-leadership-wrap h2{
  font-family:"Playfair Display",serif;
  font-size:clamp(40px,5vw,62px);
  line-height:1.08;
  margin:0;
}
.profile-intro-grid h2 em,
.research-leadership-wrap h2 em{color:#cdb7a2;font-weight:500}
.profile-intro-grid>p,
.leadership-copy>p{
  color:#bdb8b1;
  font-size:14px;
  line-height:1.8;
  margin:0;
}
.profile-theme-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid #413e3a;
  margin-bottom:72px;
}
.profile-theme-grid article{
  position:relative;
  min-height:330px;
  padding:30px;
  border-right:1px solid #413e3a;
  background:#1a1918;
  transition:background .25s ease, transform .25s ease;
}
.profile-theme-grid article:last-child{border-right:0}
.profile-theme-grid article:hover{background:#201f1d;transform:translateY(-4px)}
.profile-theme-grid article>span{
  position:absolute;
  right:22px;
  top:15px;
  font-family:"Playfair Display",serif;
  font-size:54px;
  color:transparent;
  -webkit-text-stroke:1px rgba(205,183,162,.16);
}
.profile-theme-grid small{
  display:block;
  color:#b8a18c;
  font-size:9px;
  font-weight:700;
  letter-spacing:1.5px;
  line-height:1.5;
  min-height:42px;
}
.profile-theme-grid h3{
  font-family:"Playfair Display",serif;
  font-size:25px;
  line-height:1.2;
  margin:62px 0 14px;
}
.profile-theme-grid p{color:#aaa59e;font-size:12.5px;line-height:1.65;margin:0}
.research-leadership-wrap{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:20px;
  margin-bottom:20px;
}
.leadership-copy,
.supervision-topic-card{
  border:1px solid #413e3a;
  padding:38px;
  background:#191817;
}
.leadership-copy>p{margin-top:20px;max-width:720px}
.leadership-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:#413e3a;
  margin-top:34px;
}
.leadership-stats>div{background:#1f1e1c;padding:20px}
.leadership-stats strong{display:block;font-family:"Playfair Display",serif;font-size:42px;color:#d5c2b0}
.leadership-stats span{display:block;color:#98938c;font-size:10px;line-height:1.4;text-transform:uppercase;letter-spacing:.7px}
.supervision-topic-card ul{
  columns:2;
  column-gap:30px;
  margin:26px 0 0;
  padding-left:18px;
}
.supervision-topic-card li{break-inside:avoid;color:#b7b2ab;font-size:12px;line-height:1.5;padding:0 0 11px}
.current-inquiry-card{
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:60px;
  align-items:center;
  padding:34px 38px;
  border:1px solid #413e3a;
  background:linear-gradient(100deg,rgba(139,117,97,.18),rgba(139,117,97,.03));
  margin-bottom:75px;
}
.current-inquiry-card h3{font-family:"Playfair Display",serif;font-size:31px;margin:0}
.current-inquiry-card>p{margin:0;color:#b9b4ad;font-size:13px;line-height:1.75}
@media(max-width:1050px){
  .profile-theme-grid{grid-template-columns:repeat(2,1fr)}
  .profile-theme-grid article:nth-child(2){border-right:0}
  .profile-theme-grid article:nth-child(-n+2){border-bottom:1px solid #413e3a}
  .research-leadership-wrap{grid-template-columns:1fr}
}
@media(max-width:720px){
  .research-profile-section{padding:70px 20px 10px}
  .profile-intro-grid,.current-inquiry-card{grid-template-columns:1fr;gap:24px}
  .profile-theme-grid{grid-template-columns:1fr}
  .profile-theme-grid article{border-right:0;border-bottom:1px solid #413e3a!important;min-height:285px}
  .profile-theme-grid article:last-child{border-bottom:0!important}
  .leadership-copy,.supervision-topic-card{padding:26px 22px}
  .leadership-stats{grid-template-columns:1fr}
  .supervision-topic-card ul{columns:1}
  .current-inquiry-card{padding:26px 22px}
}
