/* Local system fonts, with no tracking or external font requests. */
:root{--ink:#20392e;--muted:#52645a;--green:#234b3a;--paper:#fafaf6;--line:#d9e1d9;--soft:#eef2e9;--earth:#8a6847}
body{background:var(--paper);color:#26382e;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:1.05rem;line-height:1.7}
a{color:var(--green);text-underline-offset:.2em}a:hover{color:#152c22}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #99672e;outline-offset:4px}
h1,h2,h3{color:var(--ink);font-family:Georgia,"Times New Roman",serif;line-height:1.2;letter-spacing:-.025em}h1{font-size:clamp(2.5rem,4vw,3.7rem)}h2{font-size:clamp(1.7rem,2.3vw,2.4rem);margin-top:2.8rem;margin-bottom:1.1rem}h3{font-size:1.45rem}.navbar{border-bottom:1px solid var(--line);padding:.9rem 0;background:var(--paper)!important}.navbar-brand{font-family:Georgia,serif;font-weight:700;color:var(--green)!important}.navbar-nav .nav-link{font-size:.88rem;letter-spacing:.005em}.navbar-nav .nav-link.active{color:var(--green)!important;font-weight:700}.quarto-title-block{padding-top:1.6rem;margin-bottom:2rem}#quarto-content{max-width:1440px;margin:auto}main.content{padding-bottom:2rem}.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:5rem;align-items:center;margin:2.5rem 0 4rem}.hero h1{font-size:clamp(2.6rem,4.4vw,4.3rem);margin:.9rem 0 1.4rem}.degree{display:block;font-family:system-ui,sans-serif;font-size:1rem;font-weight:400;letter-spacing:.08em;margin-top:.8rem}.eyebrow{text-transform:uppercase;font-size:.74rem;letter-spacing:.13em;font-weight:700;color:var(--muted);margin-bottom:.8rem}.appointment{font-weight:650;font-size:1.2rem;margin-bottom:.25rem}.affiliation{font-size:.95rem;color:var(--muted)}.hero-intro{font-family:Georgia,serif;font-size:1.5rem;line-height:1.45;margin-top:1.8rem}.hero-photo{margin:0}.hero-photo img{width:100%;height:500px;object-fit:cover;object-position:center 23%;border-radius:3px}.hero-photo figcaption{font-size:.78rem;color:var(--muted);margin-top:.6rem}.actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.8rem}.button{display:inline-block;padding:.75rem 1.1rem;border-radius:3px;font-size:.9rem;font-weight:600;text-decoration:none;border:1px solid var(--green)}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:#173426}.button.secondary{color:var(--green);background:transparent}.text-link{font-size:.9rem;font-weight:600}.theme-band{padding:2.4rem 3rem;background:var(--soft);border-left:3px solid var(--green);margin:2rem 0 3.5rem}.theme-band h2{margin:.5rem 0 1rem;font-size:clamp(1.8rem,3vw,2.7rem)}.theme-band p:last-child{margin-bottom:0}.cards{display:grid;gap:1.25rem;margin:1.5rem 0 2rem}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.research-card{padding:1.5rem;background:#fff;border:1px solid var(--line);border-top:3px solid #75927d;border-radius:3px}.research-card p{margin-bottom:0;font-size:1rem}.research-card h3{font-size:1.35rem}.method-strip{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.5rem 0 2.5rem}.method-strip span{font-size:.84rem;border:1px solid #c6d2c7;background:#f1f4ec;padding:.4rem .8rem;border-radius:3px}.program-callout,.closing-callout{padding:2rem;background:var(--soft);margin:2.4rem 0}.closing-callout h2{margin-top:0}.closing-callout .text-link{margin-left:1.2rem}.featured-grid{display:grid;grid-template-columns:1fr;gap:1rem}.publication-feature{padding:1.5rem 0;border-bottom:1px solid var(--line)}.publication-feature h3{font-size:1.4rem;margin-bottom:.7rem}.publication-feature h3 a{text-decoration:none}.citation{font-size:.92rem;line-height:1.65;color:#43544a}.doi-link{font-size:.86rem;font-weight:600}.timeline{border-left:2px solid #b7c9b9;margin:1.5rem 0 2rem 1rem;padding-left:2rem}.timeline-card{position:relative;margin-bottom:2.5rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.timeline-card:before{content:"";position:absolute;left:-2.5rem;top:.25rem;width:14px;height:14px;background:var(--green);border:3px solid var(--paper);border-radius:50%}.timeline-card h2{margin-top:.4rem;font-size:1.7rem}.organisation{font-weight:600}.themes{font-size:.9rem;color:var(--muted)}.interest-list,.profile-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.interest-list li,.profile-list li{padding:.9rem 1.1rem;border:1px solid var(--line);background:#fff}.contact-panel{margin:2rem 0;padding:2rem;background:var(--soft)}.email-link{font-family:Georgia,serif;font-size:clamp(1.2rem,3.6vw,2rem);overflow-wrap:anywhere}.contact-panel p:last-child{margin-top:1.2rem;margin-bottom:0}.publication-controls{display:grid;grid-template-columns:2fr 2fr 1.3fr auto;gap:1rem;align-items:end;background:var(--soft);padding:1.2rem;margin:1.5rem 0}.publication-controls label{display:block;font-size:.82rem;font-weight:650;margin-bottom:.3rem}.publication-controls input,.publication-controls select,.publication-controls button{width:100%;padding:.6rem;border:1px solid #9aac9e;border-radius:3px;background:#fff;font-size:.85rem;color:var(--ink)}.publication-controls button{background:var(--green);color:white;min-height:43px}#pub-status{font-size:.85rem;color:var(--muted)}.publication-group{margin-bottom:2.5rem}.publication-group h3{border-bottom:2px solid var(--line);padding-bottom:.7rem;margin-top:2rem}.publication-entry{border-bottom:1px solid var(--line);padding:1rem 0}.publication-entry p{margin-bottom:.6rem}.publication-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.authorship{font-size:.75rem;font-weight:650;background:var(--soft);padding:.2rem .5rem;border-radius:2px}[hidden]{display:none!important}.nav-footer{border-top:1px solid var(--line);font-size:.85rem}.nav-footer a{color:var(--green)}
@media(min-width:1200px){.page-layout-full .content{max-width:1140px;margin:auto;width:100%}}
@media(max-width:991px){.hero{gap:2rem;grid-template-columns:1.2fr 1fr}.hero-photo img{height:440px}.publication-controls{grid-template-columns:1fr 1fr}.cards.three{grid-template-columns:1fr}.hero h1{font-size:2.7rem}}
@media(max-width:640px){body{font-size:1rem}.hero{display:flex;flex-direction:column;margin-top:1.3rem;gap:1.8rem}.hero-copy{width:100%}.hero-photo{width:100%}.hero-photo img{height:390px;object-position:center 20%}.hero h1{font-size:2.6rem}.hero-intro{font-size:1.3rem}.theme-band{padding:1.5rem;margin:2rem 0}.cards.two,.interest-list,.profile-list,.publication-controls{grid-template-columns:1fr}.research-card{padding:1.2rem}.timeline{padding-left:1.3rem;margin-left:.4rem}.timeline-card:before{left:-1.8rem}.closing-callout,.program-callout,.contact-panel{padding:1.4rem}.closing-callout .text-link{display:block;margin:1rem 0 0}.actions{gap:.75rem}h2{margin-top:2rem}.nav-footer{padding-bottom:1rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.quarto-title-block .description{display:none}
.skip-link{position:fixed;top:-100px;left:1rem;z-index:9999;padding:.7rem 1rem;background:#fff;color:var(--green);border:2px solid var(--green)}.skip-link:focus{top:.5rem}

/* Visual portfolio components. Important content is readable without scripts. */
:root { --blue:#345e70; }
main.content p,.timeline-card p,.service-panel p { max-width:72ch; }
.hero { grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:3rem; }
.hero h1 { font-size:clamp(2.3rem,3.5vw,3.5rem); }
.hero .appointment { font-size:1.02rem; }
.hero-copy,.research-card,.publication-feature,.framework-stages li { min-width:0; }
.framework { background:var(--soft);border:1px solid var(--line);padding:1.6rem;margin:1.8rem 0 2.5rem; }
.framework-stages { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem;list-style:none;padding:0;margin:0; }
.framework-stages li { background:#fff;border-top:3px solid var(--green);padding:1.2rem;position:relative; }
.framework-stages li+li:before { content:'→';position:absolute;left:-.95rem;top:1.2rem;font-weight:700;color:var(--green); }
.step-number { color:var(--muted);font-size:.8rem;letter-spacing:.1em; }
.framework-stages h3 { font-size:1.3rem;margin:.4rem 0 .8rem; }
.framework-stages p { font-size:.9rem;line-height:1.6;margin-bottom:0; }
.outcomes { margin:1rem 0 0;font-size:.9rem;text-align:center; }
.outcomes strong { display:block;text-transform:uppercase;font-size:.75rem;letter-spacing:.1em;margin-bottom:.4rem; }
.featured-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem; }
.publication-feature { padding:1.5rem;border:1px solid var(--line);border-top:3px solid var(--green);background:#fff;display:flex;flex-direction:column; }
.publication-feature .journal { font-size:.84rem;color:var(--muted);font-style:italic; }
.publication-feature .contribution { font-size:.95rem; }
.publication-feature .doi-link { margin-top:auto;padding-top:.6rem; }
.publication-feature h3 { font-size:1.3rem; }
.topic-tags { display:flex;flex-wrap:wrap;gap:.4rem;margin:.6rem 0 1rem; }
.topic-tags span { background:var(--soft);color:var(--green);padding:.2rem .5rem;font-size:.76rem; }
.publication-controls { grid-template-columns:repeat(3,minmax(0,1fr)); }
.publication-controls .search-control { grid-column:span 2; }
.publication-controls input,.publication-controls select { min-height:44px; }
.publication-view-heading { background:var(--soft);padding:.7rem 1rem;margin:2rem 0 1rem; }
.publication-group h4 { font-family:system-ui,sans-serif;font-size:1rem;margin-top:1.5rem; }
.evidence-photo { margin:1.4rem 0 2rem; }
.evidence-photo img { width:100%;height:auto;display:block;border-radius:3px; }
.evidence-photo figcaption { font-size:.82rem;color:var(--muted);margin-top:.7rem;max-width:72ch; }
.forward-band,.service-panel { background:var(--soft);padding:1.6rem;margin:1.5rem 0;border-left:3px solid var(--green); }
.forward-band h2 { margin-top:.4rem; }
.career-grid .research-card:nth-child(2) { border-top-color:var(--blue); }
.career-grid .research-card:nth-child(3),.career-grid .research-card:nth-child(4) { border-top-color:var(--earth); }
.course-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;list-style:none;padding:0;margin:1.5rem 0; }
.course-grid li { padding:1rem;border:1px solid var(--line);background:#fff; }
.course-grid strong { display:block;color:var(--green);font-size:.9rem; }
.course-grid span { font-size:.9rem; }
.quote-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem; }
.feedback-card { padding:1.5rem;margin:1rem 0;background:var(--soft); }
.feedback-card blockquote { border:0;padding:0;font-family:Georgia,serif;font-size:1.15rem;color:var(--ink); }
.feedback-card figcaption { color:var(--muted);font-size:.78rem; }
.appointment-list { list-style:none;padding:0 0 0 1.2rem;border-left:2px solid #78937c; }
.appointment-list li { margin:1.1rem 0; }
.appointment-list strong,.appointment-list span { display:block; }
.appointment-list span { font-size:.95rem;color:var(--muted); }
.ecosystem { border:1px solid var(--line);padding:1.5rem; }
.ecosystem-center { padding:1.3rem;background:var(--green);color:#fff;text-align:center; }
.ecosystem-center strong,.ecosystem-center span { display:block; }
.ecosystem-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem; }
.ecosystem-grid p { background:var(--soft);padding:1rem;margin:0;font-size:.9rem; }
.ecosystem-grid strong { display:block; }
.profile-list a { display:flex;align-items:center;gap:.8rem;min-height:44px; }
.profile-icon { display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;border:1px solid var(--line);font-weight:700; }
@media(min-width:1200px) { .hero h1 { white-space:nowrap; } }
@media(max-width:1024px) {
 .framework-stages { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .framework-stages li+li:before { content:none; }
 .hero { gap:2rem; }.hero h1 { font-size:2.6rem; }
}
@media(max-width:768px) {
 .research-arc,.course-grid,.publication-controls { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .publication-controls .search-control { grid-column:auto; }
}
@media(max-width:640px) {
 .framework { padding:1rem; }
 .hero h1 { font-size:2.35rem; }.publication-feature { padding:1.2rem; }
}

@media(min-width:1100px) { .home-featured { grid-template-columns:repeat(3,minmax(0,1fr)); } }

/* Round 2: one research framework, a visible return loop, and fewer cards. */
.lab-full-name { font-size:1.2rem;font-weight:650;color:var(--green); }
.summary-strip { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0;margin:1.7rem 0; }
.summary-strip dt { text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--muted);margin-bottom:.4rem; }
.summary-strip dd { font-size:.9rem;line-height:1.6;margin:0; }
.theme-band { padding:1.5rem 2rem;margin:1.8rem 0; }
.program-intro { margin-bottom:1rem;font-size:.95rem; }
.program-intro strong { font-family:Georgia,serif;font-size:1.35rem; }
.updates-list { list-style:none;padding:0;margin:1.2rem 0 2rem; }
.updates-list>li { display:grid;grid-template-columns:10rem minmax(0,1fr);gap:1.3rem;padding:1.1rem 0;border-top:1px solid var(--line); }
.updates-list time { color:var(--muted);font-size:.86rem;padding-top:.25rem; }
.updates-list h3 { font-size:1.25rem;margin:.2rem 0 .5rem; }
.updates-list p { font-size:.94rem;margin-bottom:0; }
.updates-list .update-source { color:var(--muted);font-size:.78rem; }
.research-framework .framework-stages h3 { font-size:1.2rem; }
.research-framework .framework-stages li { border-top-width:4px;scroll-margin-top:6rem; }
.research-framework .area-question { font-weight:650;color:var(--ink);font-size:.97rem;margin-bottom:.9rem; }
.learning-loop { position:relative;color:var(--green);margin-top:.8rem;padding-bottom:.7rem; }
.learning-loop svg { display:block;width:100%;height:auto;max-height:90px; }
.learning-loop p { text-align:center;margin:.2rem auto .5rem;font-size:.95rem;font-weight:650; }
.return-link { display:block;text-align:center;font-size:.85rem; }
.research-framework .outcomes { border-top:1px solid #9db39f;padding-top:1rem; }
.current-project { padding:1.6rem;border-left:4px solid var(--blue);background:#eef3f5;margin:1.5rem 0 2rem; }
.current-project h3 { margin-top:.3rem; }
.current-project p { font-size:.98rem; }
.project-sequence { list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:1.2rem 0; }
.project-sequence li { padding:.35rem .7rem;background:#fff;border:1px solid #c4d2d7;font-size:.82rem; }
.project-sequence li+li:before { content:'→';margin-right:.5rem;color:var(--blue); }
.research-arc { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;gap:1rem;margin:1.5rem 0 2rem; }
.research-arc li { position:relative;padding:1rem;background:var(--soft);border-top:3px solid var(--green);font-size:.9rem; }
.research-arc strong { display:block;font-family:Georgia,serif;font-size:1.7rem;color:var(--green); }
.research-arc li+li:before { content:'→';position:absolute;left:-.9rem;top:2rem;font-weight:700;color:var(--green); }
.trajectory-ribbon { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:1.8rem 0; }
.trajectory-ribbon article { padding:1.4rem 1.5rem;background:var(--soft);border-top:4px solid var(--green);border-right:1px solid var(--line);position:relative; }
.trajectory-ribbon article:nth-child(2) { border-top-color:var(--earth); }
.trajectory-ribbon article:nth-child(3) { border-top-color:var(--blue);border-right:0; }
.trajectory-ribbon article+article:before { content:'→';position:absolute;left:-.45rem;top:1.3rem;background:var(--soft);color:var(--green); }
.trajectory-ribbon h3 { font-size:1.35rem; }
.trajectory-ribbon p { font-size:.95rem; }
.common-thread { border-top:1px solid var(--line);padding-top:1rem;font-size:.98rem; }
.journey-image { max-width:1140px; }
.journey-image img { object-fit:contain; }
.feedback-card { padding:1.2rem; }
.feedback-card blockquote { font-size:1.1rem; }
@media(max-width:1024px) {
 .research-framework .framework-stages { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .trajectory-ribbon h3 { font-size:1.15rem; }
}
@media(max-width:768px) {
 .research-arc { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .research-arc li+li:before { content:none; }
 .summary-strip { gap:1rem; }
}
@media(max-width:640px) {
 .summary-strip,.trajectory-ribbon,.framework-stages,.research-framework .framework-stages,.featured-grid,.quote-grid,.ecosystem-grid,.publication-controls,.course-grid { grid-template-columns:1fr; }
 .summary-strip { gap:.9rem;padding:1rem; }
 .updates-list>li { grid-template-columns:1fr;gap:.4rem; }
 .trajectory-ribbon article { border-right:0;border-bottom:1px solid var(--line); }
 .trajectory-ribbon article+article:before { content:'↓';left:auto;right:1.2rem;top:.5rem; }
 .research-framework .framework-stages li+li:before { content:'↓';position:absolute;left:auto;right:1rem;top:.6rem; }
 .learning-loop { padding:1rem .3rem;border:2px solid var(--green);border-radius:0 0 12px 12px; }
 .learning-loop svg { height:35px; }
 .learning-loop p { font-size:.92rem; }
 .current-project { padding:1.2rem; }
}

/* Faculty-facing refinement: compact projects, readable roles, cumulative phases. */
.hero-photo { width:100%;max-width:360px;justify-self:end; }
.headshot-frame { width:100%;aspect-ratio:1;overflow:hidden;border-radius:3px; }
.headshot-frame img { width:100%;height:100%;object-fit:cover;object-position:50% 12%;transform:scale(1.7);transform-origin:center top; }
@media(max-width:640px) { .hero-photo { align-self:center; } }
main.content .program-intro { max-width:none; }
.program-intro a:last-child { white-space:nowrap; }
.page-shortcuts { display:flex;flex-wrap:wrap;gap:.6rem 1.3rem;margin:1.3rem 0 2rem;padding:.8rem 0;border-block:1px solid var(--line);font-size:.88rem; }
.project-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;margin:1.4rem 0 2rem; }
.project-card { padding:1.2rem 0;border-top:1px solid var(--line);min-width:0; }
.project-card h3 { font-size:1.3rem;margin:.65rem 0; }
.project-card h3 a { text-decoration:none; }
.project-card p { font-size:.94rem;margin-bottom:.6rem; }
.status-label { display:inline-block;background:var(--soft);color:var(--green);padding:.25rem .55rem;font-size:.75rem!important;font-weight:650;letter-spacing:.025em; }
.active-project .status-label { background:#e3edf0;color:#244e61; }
.project-link { font-size:.86rem;font-weight:600; }
.research-framework .step-number { display:block;font-weight:700;font-size:.74rem;letter-spacing:.065em; }
.learning-loop .loop-label { font-size:.8rem;text-transform:uppercase;letter-spacing:.07em; }
.loop-steps { display:flex;justify-content:center;flex-wrap:wrap;gap:.35rem .6rem;list-style:none;padding:0;margin:.65rem 0 1rem; }
.loop-steps li { font-size:.85rem;font-weight:600; }
.loop-steps li+li:before { content:'→';padding-right:.6rem; }
.current-project .project-definition { padding-top:.8rem;border-top:1px solid #c9d6dc;font-size:.88rem; }
.project-sequence { gap:0; }
.project-sequence li { flex:1;min-width:140px;padding:.7rem .8rem; }
.compact-timeline { border-left:0;padding-left:0;margin-left:0; }
.compact-timeline .timeline-card { display:grid;grid-template-columns:10rem minmax(0,1fr);gap:0 1.5rem;margin-bottom:1.4rem;padding-bottom:1.3rem; }
.compact-timeline .timeline-card:before { content:none; }
.compact-timeline .timeline-card .eyebrow { grid-column:1;grid-row:1 / span 5;margin-top:.25rem;font-size:.72rem; }
.compact-timeline .timeline-card h3,.compact-timeline .timeline-card p:not(.eyebrow) { grid-column:2; }
.compact-timeline .timeline-card h3 { font-size:1.35rem;margin:0 0 .35rem; }
.compact-timeline .timeline-card .organisation { font-size:.9rem;margin-bottom:.5rem; }
.compact-timeline .timeline-card p { font-size:.94rem;margin-bottom:.45rem; }
.leadership-panel { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:2rem;align-items:center;margin:1.5rem 0 2rem; }
.leadership-panel .evidence-photo { margin:0; }
.leadership-panel p,.practice-list { font-size:.95rem; }
.practice-list { padding-left:1.2rem; }
.practice-list li { margin:.7rem 0; }
.trajectory-ribbon article { padding-right:2rem;border-bottom:3px solid var(--green); }
.trajectory-ribbon article:nth-child(2) { margin-left:-.8rem;padding-left:2rem;z-index:2;border-bottom-color:var(--earth); }
.trajectory-ribbon article:nth-child(3) { margin-left:-.8rem;padding-left:2rem;z-index:3;border-bottom-color:var(--blue); }
.trajectory-ribbon .phase-foundation { margin-top:1.2rem;border-top:1px solid #c5d0c4;padding-top:.8rem;font-size:.78rem;color:var(--green); }
.phase-foundation span { display:block;text-transform:uppercase;font-size:.67rem;letter-spacing:.065em;margin-bottom:.4rem;color:var(--muted);font-weight:650; }
.proposal-sequence { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:1.4rem 0;gap:.7rem;counter-reset:proposal; }
.proposal-sequence li { padding:.7rem;background:var(--soft);font-size:.86rem;counter-increment:proposal; }
.proposal-sequence li:before { content:counter(proposal,decimal-leading-zero);display:block;color:var(--green);font-size:.75rem;font-weight:700;margin-bottom:.35rem; }
.publication-feature { padding:1.25rem; }
.publication-feature h3 { margin-top:0; }
.publication-feature .journal { margin:.1rem 0 .8rem;font-style:normal;font-size:.84rem; }
.publication-feature .contribution { font-size:.9rem; }
.publication-feature .contribution strong { font-weight:600; }
.collaboration-themes .research-card h3 { margin-top:0; }
@media(max-width:768px) {
 .compact-timeline .timeline-card { grid-template-columns:8rem minmax(0,1fr);gap:0 1rem; }
 .project-sequence li { flex-basis:45%; }
 .leadership-panel { grid-template-columns:1fr;gap:1.2rem; }
 .leadership-panel .evidence-photo { max-width:600px; }
 .proposal-sequence { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:640px) {
 .project-grid { grid-template-columns:1fr; }
 .compact-timeline .timeline-card { display:block; }
 .compact-timeline .timeline-card .eyebrow { margin-bottom:.45rem; }
 .trajectory-ribbon article:nth-child(2),.trajectory-ribbon article:nth-child(3) { margin-left:0;margin-top:-.65rem;padding-left:1.4rem;padding-top:1.8rem; }
 .trajectory-ribbon article+article:before { top:.7rem; }
 .loop-steps { display:block;text-align:left;padding:.2rem .6rem; }
 .loop-steps li { padding:.4rem 0; }
 .loop-steps li+li:before { content:'↓'; }
 .loop-steps li:first-child { padding-left:1.1rem; }
 .theme-band { padding:1.4rem; }
}

