/* Site-wide design tokens. Change this palette to restyle every page. */
:root{--ink:#16383e;--teal:#205b60;--deep:#123f45;--accent:#a3dbcf;--text:#334c52;--muted:#52676d;--line:#d8e3e5;--wash:#f1f6f6;--white:#fff;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;color:var(--text);background:white;font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.7}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #197a88;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);font-weight:500;line-height:1.14}h1,h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,4.8vw,4.6rem)}h2{font-size:clamp(2rem,3.4vw,3.15rem)}h3{font-size:1.35rem;line-height:1.35}p{margin-bottom:1.25rem}section{scroll-margin-top:100px}[hidden]{display:none!important}.wrap{width:min(var(--max),calc(100% - 96px));margin:auto}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--teal);line-height:1.7;margin-bottom:1.2rem}.institution{background:var(--deep);color:#e8f4f4;font-size:.75rem;letter-spacing:.035em;padding:9px 0}.institution .wrap{display:flex;justify-content:space-between;gap:20px}.header{background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav-wrap{display:flex;justify-content:space-between;align-items:center;gap:32px;min-height:95px}.brand{width:250px;flex-shrink:0}.brand img{width:250px;height:76px;object-fit:cover}.header nav{display:flex;align-items:center;gap:28px}.header nav a{text-decoration:none;font-size:.875rem;font-weight:600;padding:34px 0 30px;border-bottom:3px solid transparent;white-space:nowrap}.header nav a:hover,.header nav a[aria-current]{color:var(--teal);border-bottom-color:var(--teal)}.menu-button{display:none;background:none;border:1px solid var(--line);padding:8px 14px;color:var(--ink)}.skip{position:fixed;left:16px;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:590px;background:var(--deep);color:white}.hero-copy{padding:76px 52px 44px max(48px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center}.hero .eyebrow{color:var(--accent);font-size:.73rem;max-width:420px}.hero h1{color:white;font-size:clamp(2.65rem,4.3vw,4.35rem);max-width:600px;margin-bottom:24px}.hero-copy>p:not(.eyebrow){max-width:470px;font-size:1.1rem;color:#dfeded;line-height:1.65}.actions{display:flex;align-items:center;gap:26px;margin-top:12px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--teal);color:white;text-decoration:none;font-weight:600;padding:14px 22px;border:1px solid var(--teal);font-size:.9rem}.button:hover{background:#103c42}.hero .button{background:var(--accent);color:var(--deep);border-color:var(--accent)}.hero .button:hover{background:white}.quiet-link{font-size:.9rem}.hero-location{margin-top:48px;font-size:.78rem;color:#c5dcdc;line-height:1.7}.hero-location strong{font-weight:500;color:#fff}.hero-photo{position:relative;overflow:hidden}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:65% center;position:absolute}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:40px 32px 24px;background:linear-gradient(transparent,rgba(6,28,34,.8));display:flex;flex-direction:column;color:white;font-size:.85rem;letter-spacing:.025em}.section{padding-top:80px;padding-bottom:80px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:64px;margin-bottom:42px}.section-head h2{margin-bottom:0;max-width:640px}.section-head>p{max-width:390px;margin:0}.area-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.area{padding:32px 30px 34px 0;text-decoration:none;display:flex;flex-direction:column}.area+.area{border-left:1px solid var(--line);padding-left:30px}.number{color:var(--teal);font-size:.8rem;letter-spacing:.1em;margin-bottom:24px}.area h3{min-height:3.6rem}.area p{font-size:.95rem;color:var(--muted)}.text-link{font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:16px;color:var(--teal)}.area .text-link{margin-top:auto}.area:hover h3,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.tinted{background:var(--wash)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.project-card{background:white;border:1px solid var(--line);min-width:0}.project-images{display:flex;background:#e8eff0;overflow:hidden;height:240px}.image-link{display:block;flex:1;min-width:0}.project-images img{width:100%;height:100%;object-fit:contain;padding:12px}.project-copy{padding:28px}.project-copy .eyebrow{font-size:.73rem;letter-spacing:.1em;margin-bottom:12px}.project-copy h3{font-size:1.25rem;margin:0}.team-invite{display:grid;grid-template-columns:1fr 1.5fr;gap:72px;align-items:center}.portrait-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.portrait-strip a{text-decoration:none;min-width:0}.portrait-strip img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center top;background:var(--wash)}.portrait-strip span{display:block;font-size:.8rem;margin-top:14px;color:var(--ink)}footer{background:var(--deep);color:#d5e7e8}.footer-top{display:grid;grid-template-columns:1.35fr .7fr 1fr;gap:70px;padding-top:60px;padding-bottom:52px}footer h2{font-family:Arial,Helvetica,sans-serif;font-size:.85rem;font-weight:600;color:white;letter-spacing:0;margin:10px 0 22px}.footer-mark{font-size:2rem;font-weight:700;letter-spacing:.03em;color:white;line-height:1.3}.footer-mark span{display:block;font-weight:400;letter-spacing:.015em;font-size:.8rem;color:var(--accent);margin-top:10px}.footer-name{max-width:330px;font-size:.95rem}footer p,footer a{font-size:.875rem}footer a{text-decoration:none}footer a:hover{text-decoration:underline}.footer-nav{display:flex;flex-direction:column;gap:8px}.socials{display:flex;flex-wrap:wrap;gap:22px;margin-top:26px}.socials a{display:flex;align-items:center;gap:9px;font-size:.9rem;text-decoration:none}.socials a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #43656a;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:.75rem}.page-heading{background:var(--wash);padding:65px 0 57px;border-bottom:1px solid var(--line)}.page-heading h1{margin-bottom:20px;max-width:950px}.lede{font-size:1.1rem;max-width:730px;margin-bottom:0;color:var(--muted)}.article-layout{display:grid;grid-template-columns:1fr 2.3fr;gap:80px}.article-layout aside{font-size:.9rem}.prose{max-width:800px}.prose h2{font-size:2.3rem;margin-top:44px}.prose h3{margin-top:28px}.lead-paragraph{font-size:1.2rem;line-height:1.75;color:var(--ink)}.jump-links{display:flex;flex-wrap:wrap;gap:12px 26px;padding-top:24px;padding-bottom:24px;border-bottom:1px solid var(--line)}.jump-links a{font-size:.875rem;color:var(--teal)}.team-section+.team-section{border-top:1px solid var(--line)}.member-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}.member{border:1px solid var(--line);min-width:0;scroll-margin-top:120px}.portrait{width:100%;height:300px;object-fit:cover;object-position:center top;background:var(--wash)}.member-body{padding:25px}.member h3{margin-bottom:8px;font-size:1.35rem}.role{color:var(--teal);font-size:.9rem;margin-bottom:2px}.dates{font-size:.8rem;color:var(--muted);margin-bottom:8px}.bio p{font-size:.94rem;margin:18px 0 0;overflow-wrap:anywhere}details{margin-top:22px;border-top:1px solid var(--line)}summary{padding:15px 0;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--teal)}summary span{float:right}details[open] summary span{visibility:hidden}.alumni-grid{grid-template-columns:repeat(3,1fr)}.alumni-grid .member{border:none;border-top:1px solid var(--line)}.alumni-grid .member-body{padding:24px 0}.alumni-grid h3{font-size:1.1rem}.text-projects{grid-template-columns:repeat(2,1fr)}.text-projects .project-card{border-left:3px solid var(--teal)}.funding{border-top:1px solid var(--line)}.funding li{margin-bottom:22px;padding-left:6px}.funding ul{padding-left:22px}.muted{color:var(--muted);max-width:800px}.publication-tools{display:flex;align-items:end;gap:20px;background:var(--wash);padding:24px;margin-bottom:28px}.publication-tools label{display:flex;flex-direction:column;gap:8px;font-size:.85rem;font-weight:600}.publication-tools label:first-child{flex:1}.publication-tools input,.publication-tools select{min-height:48px;border:1px solid #9cb2b6;background:white;padding:10px 14px;color:var(--ink);border-radius:0}.filter-reset{border:0;background:none;color:var(--teal);padding:12px;text-decoration:underline;cursor:pointer}.publications{padding:0;list-style:none;margin:24px 0}.publications li{display:grid;grid-template-columns:74px 1fr;gap:28px;padding:26px 0;border-top:1px solid var(--line)}.publications p{margin-bottom:8px;overflow-wrap:anywhere}.pub-year{color:var(--teal);font-weight:600;font-size:1rem}.publications .text-link{font-size:.8rem}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:80px}.contact-primary{padding:35px 0}.contact-email{font-family:Georgia,serif;font-size:clamp(1.4rem,2.6vw,2.3rem);color:var(--teal);overflow-wrap:anywhere}.contact-primary>p:not(.eyebrow){margin-top:20px}.contact-address{background:var(--wash);padding:40px}.contact-address h2{font-size:2rem}.contact-address h3{font-size:1rem;margin-top:28px}.contact-address address{font-style:normal}
@media(min-width:1500px){.hero-copy{padding-right:76px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.header nav{gap:17px}.brand,.brand img{width:205px}.hero-copy{padding-left:28px;padding-right:28px}.hero{min-height:560px}.section-head{gap:32px}.project-grid{gap:18px}.project-copy{padding:22px}.team-invite{gap:32px}.footer-top{gap:35px}.portrait{height:260px}}
@media(max-width:800px){.institution .wrap>span{display:none}.nav-wrap{flex-wrap:wrap;gap:0;min-height:80px}.header nav{width:100%;flex-wrap:wrap;gap:0 24px;padding-bottom:16px}.header nav a{padding:8px 0;font-size:1rem}.js .header nav{display:none}.js .header nav.open{display:flex}.js .menu-button{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:48px 28px}.hero h1{font-size:clamp(2.8rem,8vw,4rem)}.hero-photo{height:330px}.hero-location{margin-top:28px}.section{padding-top:52px;padding-bottom:52px}.section-head{display:block}.section-head>p,.section-head>.text-link{margin-top:24px}.area-grid{grid-template-columns:1fr}.area,.area+.area{padding:26px 0;border-left:0}.area+.area{border-top:1px solid var(--line)}.area h3{min-height:0}.area .number{margin-bottom:12px}.project-grid{grid-template-columns:1fr}.project-images{height:310px}.team-invite{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}.article-layout{grid-template-columns:1fr;gap:32px}.member-grid{grid-template-columns:repeat(2,1fr)}.member-grid:has(.with-photo){grid-template-columns:1fr}.with-photo{display:grid;grid-template-columns:180px 1fr}.portrait{height:240px}.page-heading{padding:45px 0}.contact-grid{grid-template-columns:1fr;gap:24px}.publication-tools{flex-wrap:wrap}.publication-tools label:first-child{flex-basis:100%}}
@media(max-width:480px){.wrap{width:calc(100% - 36px)}.hero-copy{padding:42px 18px}.hero-photo{height:250px}.hero .eyebrow{font-size:.72rem}.actions{gap:20px;flex-wrap:wrap}.hero h1{font-size:2.85rem}.member-grid{grid-template-columns:1fr}.with-photo{display:block}.portrait{height:350px;object-fit:contain}.portrait-strip{gap:10px}.portrait-strip span{font-size:.75rem}.footer-top{grid-template-columns:1fr;gap:28px}.footer-top>div:first-child{grid-column:auto}.publications li{grid-template-columns:1fr;gap:8px}.publication-tools{padding:18px}.publication-tools input{width:100%}.contact-address{padding:26px}.project-images{height:240px}.project-images:has(.image-link:nth-child(2)){height:190px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Show each team portrait fully, with breathing room around the face. */
.member .portrait {
  object-fit: contain;
  object-position: center;
  padding: 16px;
  background: #fff;
}