/* Approved homepage design, scoped to avoid changes to other pages. */
.home-refresh{--ink:var(--site-ink);--muted:var(--site-muted);--accent:var(--site-accent);--line:var(--site-line);--wash:var(--site-soft);--dark:var(--site-ink);--paper:#fff;--space:8px;--measure:66ch;--shell:1120px;--font:"Helvetica Neue",Helvetica,Arial,sans-serif;--mono:"SFMono-Regular",Consolas,monospace}
.home-refresh *{box-sizing:border-box}
.home-refresh{margin:0;color:var(--ink);background:var(--paper);font:17px/1.6 var(--font);-webkit-font-smoothing:antialiased}
.home-refresh h1,.home-refresh h2,.home-refresh h3,.home-refresh p,.home-refresh figure,.home-refresh dl{margin:0}
.home-refresh h1,.home-refresh h2,.home-refresh h3{font-weight:500;line-height:1.18;letter-spacing:-.025em}
.home-refresh h1{font-size:64px}
.home-refresh h2{font-size:32px}
.home-refresh h3{font-size:23px}
.home-refresh a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}
.home-refresh a:hover{color:var(--accent)}
.home-refresh button{font:inherit;color:inherit;cursor:pointer}
.home-refresh button,.home-refresh a{-webkit-tap-highlight-color:transparent}
.home-refresh img{display:block;max-width:100%;height:auto}
.home-refresh button:focus-visible,.home-refresh a:focus-visible{outline:3px solid var(--site-accent);outline-offset:5px}
.home-refresh button[hidden],.home-refresh [hidden]{display:none!important}
.home-refresh .shell{max-width:var(--shell);padding:0 28px;margin:auto}
.home-refresh .overline{font:12px/1.5 var(--font);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.home-refresh .plain-link{font-size:14px;line-height:1.5;text-decoration:none;border-bottom:1px solid #889aa2;padding-bottom:3px;white-space:nowrap;display:inline-flex;gap:20px;align-items:center}
.home-refresh .section-top{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:32px}
.home-refresh .section-top h2{font-size:30px}
.home-refresh .home-hero{background:var(--dark);color:#f7f8f5}
.home-refresh .hero-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;min-height:384px;align-items:center;padding-top:48px;padding-bottom:48px}
.home-refresh .hero-copy h1{font-size:clamp(34.0px,3.74vw,50.15px);line-height:1.08;font-weight:500;letter-spacing:-2px;margin-bottom:26px}
.home-refresh .hero-copy>p{font-size:20px;color:#d0dcdf;line-height:1.5}
.home-refresh .hero-copy>p span{color:#f8faf8}
.home-refresh .hero-motion{min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;position:relative}
.home-refresh .hero-motion canvas{display:block;width:100%;height:230px}
.home-refresh .motion-toggle{align-self:end;font-size:11px;border:0;background:transparent;border-bottom:1px solid #68828d;color:#d4e0e3;padding:6px 0;margin-top:0}
.home-refresh .home-research{padding-top:30px;padding-bottom:48px}
.home-refresh .topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.home-refresh .topic-preview{min-width:0}
.home-refresh .topic-image{height:164px;border-bottom:1px solid var(--line);padding:0 16px 24px;display:flex;justify-content:center;align-items:center;margin-bottom:20px;background:#fff}
.home-refresh .topic-image img{height:100%;width:100%;object-fit:contain}
.home-refresh .topic-preview h3{font-size:19px;line-height:1.25;margin-bottom:10px}
.home-refresh .topic-preview h3 a{text-decoration:none}
.home-refresh .topic-preview>p{font-size:15px;line-height:1.55;color:var(--muted);max-width:38ch}
.home-refresh .home-lower{display:grid;grid-template-columns:1fr 1fr;gap:56px;padding-top:40px;padding-bottom:8px;border-top:1px solid var(--line);background:#fff}
.home-refresh .home-person{display:grid;grid-template-columns:136px minmax(0,1fr);gap:24px}
.home-refresh .home-person>img{width:136px;height:174px;object-fit:cover;object-position:center 35%}
.home-refresh .home-person h2{font-size:28px;margin:8px 0 14px}
.home-refresh .person-role{font-size:14px;line-height:1.5;margin-bottom:16px}
.home-refresh .person-bio{font-size:14px;line-height:1.65;color:var(--muted);margin-bottom:20px}
.home-refresh .home-person .overline{font-size:10px;letter-spacing:.05em}
.home-refresh .home-person .plain-link{font-size:12px;gap:12px}
.home-refresh .home-news .section-top{margin-bottom:8px}
.home-refresh .home-news h2{font-size:27px}
.home-refresh .news-list{padding:0;margin:0;list-style:none}
.home-refresh .news-list li{padding:15px 0;display:grid;grid-template-columns:72px minmax(0,1fr);gap:20px;border-bottom:1px solid var(--line)}
.home-refresh .news-list li:last-child{border:0}
.home-refresh .news-list time{font:11px/1.7 var(--mono);color:var(--muted);padding-top:3px}
.home-refresh .news-list a{font-size:15px;line-height:1.5;text-decoration:none}
@media(min-width:1600px){.home-refresh .hero-copy h1{font-size:52.7px}
.home-refresh .hero-grid{min-height:400px}
}
@media(max-width:1100px){.home-refresh .shell{padding-left:28px;padding-right:28px}
.home-refresh .hero-copy h1{font-size:39.1px}
.home-refresh .hero-grid{min-height:340px}
.home-refresh .hero-motion canvas{height:200px}
.home-refresh .topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}
.home-refresh .home-lower{gap:40px}
.home-refresh .home-person{grid-template-columns:104px 1fr;gap:20px}
.home-refresh .home-person>img{width:104px;height:140px}
}
@media(max-width:760px){.home-refresh{font-size:16px}
.home-refresh .shell{padding-left:20px;padding-right:20px}
.home-refresh .hero-grid{grid-template-columns:1fr;gap:8px;padding-top:36px;padding-bottom:26px}
.home-refresh .hero-copy h1{font-size:36.55px;line-height:1.06;letter-spacing:-1.5px;margin-bottom:20px}
.home-refresh .hero-copy>p{font-size:18px;line-height:1.45}
.home-refresh .hero-motion canvas{height:146px;max-width:390px;align-self:center}
.home-refresh .hero-motion{margin-top:8px}
.home-refresh .motion-toggle{font-size:11px;margin-top:4px}
.home-refresh .home-research{padding-top:24px;padding-bottom:32px}
.home-refresh .section-top{margin-bottom:24px;gap:16px}
.home-refresh .section-top h2{font-size:28px}
.home-refresh .plain-link{font-size:12px;gap:10px}
.home-refresh .topic-grid{grid-template-columns:1fr;gap:24px}
.home-refresh .topic-preview{display:grid;grid-template-columns:112px minmax(0,1fr);gap:8px 20px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.home-refresh .topic-preview:last-child{padding-bottom:0;border:0}
.home-refresh .topic-image{grid-column:1;grid-row:1/3;height:112px;padding:6px 0;margin:0;border:0;align-self:center}
.home-refresh .topic-preview h3{font-size:18px;margin:0;align-self:end}
.home-refresh .topic-preview>p{font-size:14px;line-height:1.55}
.home-refresh .home-lower{grid-template-columns:1fr;gap:40px;padding-top:32px}
.home-refresh .home-person{grid-template-columns:112px 1fr;gap:24px}
.home-refresh .home-person>img{width:112px;height:146px}
.home-refresh .home-person h2{font-size:26px}
.home-refresh .home-person .person-bio{font-size:14px}
.home-refresh .home-news{padding-top:28px;border-top:1px solid var(--line)}
.home-refresh .news-list li{grid-template-columns:70px 1fr;gap:16px}
.home-refresh .news-list a{font-size:15px}
}
@media(max-width:380px){.home-refresh .hero-copy h1{font-size:31.45px}
.home-refresh .home-person{grid-template-columns:88px 1fr;gap:20px}
.home-refresh .home-person>img{width:88px;height:121px}
}
@media(prefers-reduced-motion:reduce){.home-refresh *{animation:none!important;transition:none!important}
}
@media(max-width:380px){.home-refresh .hero-copy h1{font-size:28.9px;letter-spacing:-1.2px}
.home-refresh .topic-preview{grid-template-columns:88px minmax(0,1fr);gap:8px 16px}
.home-refresh .topic-image{height:96px}
.home-refresh .topic-preview h3{font-size:18px}
}

.home-refresh h1,.home-refresh h2,.home-refresh h3{border:0;padding:0;color:inherit}.home-refresh .hero-copy h1{color:#f7f8f5}.home-refresh .home-lower{padding-bottom:48px}.home-refresh a{box-shadow:none}

/* Compact hero spacing; particle lettering enlarged in animation script. */
.home-refresh .hero-grid{min-height:250px;padding-top:12px;padding-bottom:12px}
@media(min-width:1600px){.home-refresh .hero-grid{min-height:264px}}
@media(max-width:1100px){.home-refresh .hero-grid{min-height:236px}}
@media(max-width:760px){.home-refresh .hero-grid{min-height:0;padding-top:14px;padding-bottom:8px}}
/* Slightly larger research illustrations, preserving their proportions. */
.home-refresh .topic-image{height:204px;padding:0 0 14px}
@media(max-width:760px){.home-refresh .topic-preview{grid-template-columns:140px minmax(0,1fr)}.home-refresh .topic-image{height:140px;padding:6px 0}}
@media(max-width:380px){.home-refresh .topic-preview{grid-template-columns:112px minmax(0,1fr)}.home-refresh .topic-image{height:120px}}

/* Override the legacy canvas dimensions with a larger, sharper logo. */
.home-refresh #titleCanvas{width:400px;height:180px;max-width:100%;align-self:center}

/* Keep research topics in one swipeable strip when space is limited. */
.home-refresh .home-research .section-top{flex-wrap:wrap;gap:16px;margin-bottom:24px}
.home-refresh .home-research .section-top h2{margin-right:auto}
.home-refresh .topic-controls{display:flex;gap:6px}
.home-refresh .topic-controls button{width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:50%;background:white;font-size:19px;line-height:1}
.home-refresh .topic-controls button:hover{background:var(--wash)}
.home-refresh .topic-controls button:disabled{opacity:.3;cursor:default}
.home-refresh .topic-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:max(280px,calc((100% - 48px)/4));gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b6c3c8 transparent;padding:0 0 14px}
.home-refresh .topic-preview{display:block;scroll-snap-align:start;scroll-snap-stop:normal;border:0;padding:0}
.home-refresh .topic-image{height:220px;padding:0 0 14px;border-bottom:1px solid var(--line);margin-bottom:20px}
.home-refresh .topic-preview h3{margin-bottom:10px}
@media(max-width:760px){.home-refresh .topic-grid{grid-auto-columns:calc(100% - 28px);gap:16px}.home-refresh .topic-image{height:206px}.home-refresh .home-research .section-top{gap:12px}.home-refresh .topic-controls button{width:30px;height:30px}.home-refresh .home-research .plain-link{gap:8px}}
