@font-face{font-family:InterVariable;src:url('/assets/InterVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--paper:#f5f4ed;--ink:#1e382b;--muted:#56665a;--green:#6c8068;--lime:#d6e7a2;--line:rgb(30 56 43 / 16%);--gap:48px;--font-sans:InterVariable,Arial,sans-serif;--font-display:InterVariable,Arial,sans-serif;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-feature-settings:'cv02','cv03','cv04','cv11','ss01';font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body,p,h1,h2,h3,figure,dl,dd{margin:0}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
img{display:block;max-width:100%;height:auto}
button,a,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
::selection{background:var(--lime);color:var(--ink)}
[hidden]{display:none!important}
ul{padding:0;margin:0;list-style:none}
h1,h2,h3{font-family:var(--font-display);font-weight:500;text-wrap:balance;letter-spacing:-.045em}
h1{font-size:clamp(3.1rem,5.3vw,5.25rem);line-height:1}
h2{font-size:clamp(2.25rem,3.6vw,3.5rem);line-height:1.1;max-width:24ch}
h3{font-size:1.3rem;line-height:1.4;letter-spacing:-.025em}
p,dd{text-wrap:pretty}
.site-shell{isolation:isolate}
.container{width:min(100% - 112px,1440px);margin-inline:auto}
.section{padding-block:112px}
.section-grid{display:grid;grid-template-columns:5fr 7fr;gap:var(--gap)}
.skip-link{position:fixed;top:12px;left:12px;background:var(--ink);color:white;padding:12px 20px;z-index:30;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{min-height:100px;display:flex;gap:32px;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}
.brand img{width:76px;height:38px;flex-shrink:0}
.brand-name{font-size:.8rem;letter-spacing:-.015em}
.desktop-nav{display:flex;gap:28px;align-items:center;font-size:.8125rem}
.desktop-nav a,.header-contact{padding-block:12px;white-space:nowrap}
.desktop-nav a:hover{text-decoration:underline;text-underline-offset:6px}
.header-contact{font-size:.8125rem;border-bottom:1px solid var(--ink);padding-bottom:5px}
.header-contact:hover{color:var(--muted)}
.menu-toggle{display:none}
.hero{padding-top:30px;padding-bottom:72px}
.hero-topline{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px}
.eyebrow,.location,.section-marker,.activity-status,.list-heading,.campus-status,.date-label,.photo-label{font-family:'Courier New',monospace;font-size:.6875rem;line-height:1.6;letter-spacing:.08em;text-transform:uppercase}
.location{display:flex;gap:18px;align-items:center;color:var(--muted)}
.hero-grid{display:grid;grid-template-columns:7fr 5fr;gap:var(--gap);align-items:start}
.hero-copy{padding-top:22px;display:flex;flex-direction:column;gap:32px;min-width:0}
.hero-copy h1{max-width:15ch}
.hero-copy h1 span{color:var(--green)}
.hero-description{max-width:42ch;font-size:1rem;line-height:1.75;color:var(--muted)}
.hero-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.button{display:inline-flex;gap:28px;align-items:center;justify-content:space-between;padding:16px 16px 16px 20px;min-height:56px;font-size:.875rem}
.primary{background:var(--ink);color:var(--paper)}
.primary:hover{background:#345341}
.primary:focus-visible{outline-offset:4px}
.button span{font-size:1.25rem;line-height:1}
.text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:rgb(30 56 43 / 35%);font-size:.875rem}
.text-link:hover{text-decoration-color:currentColor}
.hero-footnote{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.75rem;padding-top:14px}
.status-dot{width:6px;height:6px;background:var(--green);border-radius:50%;flex-shrink:0}
.hero-figure{min-width:0}
.hero-photo{position:relative;background:#aab5af;overflow:hidden}
.hero-photo img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover}
.photo-label{position:absolute;bottom:24px;left:24px;background:var(--paper);color:var(--ink);padding:9px 12px}
.hero-figure figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:12px;font-size:.6875rem;color:var(--muted)}
.hero-figure figcaption p{color:var(--ink)}
.figures-section{padding-block:36px;background:#e9ece0}
.figures{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.figures>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.figures dt{font-size:.75rem;order:1;font-weight:500;white-space:nowrap}
.figures dd:not(.figure-note){font-size:3.4rem;line-height:1.2;font-weight:500;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.figures dd span{font-size:1.8rem;letter-spacing:-.03em}
.figures .figure-note{order:2;font-size:.6875rem;color:var(--muted)}
.section-marker{display:flex;gap:22px;align-items:baseline}
.section-marker p{font-weight:400}
.section-number{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.group-section{border-bottom:1px solid var(--line)}
.group-content{display:flex;flex-direction:column;gap:32px}
.group-body{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);font-size:.875rem;line-height:1.85;color:var(--muted)}
.group-content>.text-link{align-self:start}
.activities-heading,.portfolio-heading{display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.activities-heading h2,.portfolio-heading h2{max-width:15ch}
.section-intro{max-width:40ch;color:var(--muted);font-size:.9375rem;line-height:1.8}
.small-note{font-size:.75rem;color:var(--muted);max-width:35ch}
.activity-list{border-top:1px solid var(--line)}
.activity-list details{border-bottom:1px solid var(--line)}
.activity-list summary{display:flex;align-items:center;gap:20px;list-style:none;cursor:pointer;padding-block:23px}
.activity-list summary::-webkit-details-marker{display:none}
.activity-list summary:hover h3{color:var(--muted)}
.activity-list summary h3{min-width:0;flex:1}
.activity-index{font-family:'Courier New',monospace;font-size:.75rem;width:40px;flex-shrink:0;color:var(--muted);font-variant-numeric:tabular-nums}
.disclosure-sign{position:relative;width:16px;height:16px;flex-shrink:0}
.disclosure-sign:before,.disclosure-sign:after{content:'';position:absolute;background:currentColor;top:7px;left:2px;width:12px;height:1px}
.disclosure-sign:after{transform:rotate(90deg)}
details[open]>.disclosure-sign:after,details[open]>summary .disclosure-sign:after{transform:rotate(0)}
.activity-body{padding:0 36px 28px 60px;display:flex;flex-direction:column;gap:12px;color:var(--muted);font-size:.875rem;line-height:1.8}
.activity-status{color:var(--ink);font-size:.625rem}
.future-list{display:grid;gap:20px}
.future-list dt{font-weight:500;color:var(--ink)}
.future-list dd{font-weight:400;color:var(--muted)}
.campus-section{background:var(--ink);color:var(--paper);position:relative}
.campus-section :focus-visible{outline-color:var(--lime)}
.campus-top{display:flex;justify-content:space-between;gap:24px;align-items:baseline;padding-bottom:64px}
.campus-section .section-number{color:var(--lime)}
.campus-status{color:#c3d0c0}
.campus-heading-grid{display:grid;grid-template-columns:7fr 5fr;gap:var(--gap)}
.campus-heading-grid>div:first-child{display:flex;flex-direction:column;gap:32px}
.campus-section h2{font-size:clamp(2.5rem,4.2vw,4rem);max-width:17ch}
.campus-description{font-size:.9375rem;color:#c3d0c0;max-width:48ch;line-height:1.85}
.campus-date{align-self:end;border-left:1px solid rgb(245 244 237 / 22%);padding-left:48px;display:flex;flex-direction:column;gap:16px;color:#c3d0c0;font-size:.75rem}
.year{font-size:clamp(5rem,8.5vw,8rem);font-weight:400;color:var(--lime);letter-spacing:-.075em;line-height:1;font-variant-numeric:tabular-nums}
.horizons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);padding-top:76px}
.horizons>div{border-top:1px solid rgb(245 244 237 / 25%);padding-top:24px;display:flex;flex-direction:column;gap:20px}
.horizons dt{display:flex;align-items:baseline;gap:20px;font-size:1.125rem;font-weight:500;letter-spacing:-.025em}
.horizon-number{font-family:'Courier New',monospace;font-size:.6875rem;color:var(--lime);letter-spacing:0}
.horizons dd{font-size:.8125rem;color:#c3d0c0;line-height:1.85}
.campus-bottom{border-top:1px solid rgb(245 244 237 / 22%);margin-top:56px;padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:.75rem;color:#c3d0c0}
.campus-bottom .text-link{color:var(--lime);text-decoration-color:rgb(214 231 162 / 45%)}
.portfolio-section{border-bottom:1px solid var(--line)}
.portfolio-content{min-width:0}
.list-heading{padding-bottom:20px;color:var(--muted)}
.therapeutic-list{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--gap)}
.therapeutic-list li{padding-block:13px;border-top:1px solid var(--line);font-size:.8125rem}
.portfolio-note{margin-top:28px;font-size:.75rem;color:var(--muted);max-width:64ch}
.quality-heading{padding-bottom:52px}
.quality-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.quality-list>div{display:flex;flex-direction:column;gap:22px;border-top:1px solid var(--line);padding-top:26px}
.quality-list dt{display:flex;flex-direction:column;gap:26px;font-size:1.25rem;font-weight:500;letter-spacing:-.025em}
.quality-index{font-family:'Courier New',monospace;font-size:.75rem;color:var(--muted);letter-spacing:0}
.quality-list dd{font-size:.875rem;line-height:1.85;color:var(--muted)}
.contact-section{background:#e9ece0}
.contact-section>.container{display:flex;flex-direction:column;gap:44px}
.contact-grid{display:grid;grid-template-columns:7fr 5fr;gap:var(--gap)}
.contact-grid>div{display:flex;flex-direction:column;gap:28px}
.contact-grid h2{font-size:clamp(2.5rem,4.2vw,4rem);max-width:17ch}
.contact-email{font-size:clamp(1.0625rem,1.9vw,1.6rem);letter-spacing:-.025em}
.contact-email a{display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid var(--ink);padding-block:12px}
.contact-email a:hover{color:var(--muted)}
address{font-style:normal;font-size:.875rem;color:var(--muted);display:flex;flex-direction:column;gap:24px;align-self:end;padding-bottom:10px}
.address-label{color:var(--ink);font-weight:500}
address .text-link{align-self:start}
.site-footer{padding-block:44px 28px}
.footer-top{display:flex;align-items:center;gap:32px;font-size:.75rem;color:var(--muted)}
.footer-brand{flex-shrink:0}
.footer-brand img{width:54px;height:27px}
.footer-top>p{flex:1}
.footer-top .text-link{font-weight:400}
.footer-bottom{margin-top:32px;padding-top:22px;border-top:1px solid var(--line);display:flex;align-items:baseline;justify-content:space-between;gap:24px;color:var(--muted);font-size:.6875rem}
.footer-bottom>p:last-child{text-align:right}
@media(min-width:1600px){.hero-grid{grid-template-columns:7fr 5fr}.hero-photo img{aspect-ratio:1/1.08}.hero-copy{gap:40px}.hero-copy h1{font-size:6rem}}
@media(max-width:1199px){.container{width:calc(100% - 64px)}:root{--gap:32px}.desktop-nav{gap:20px}.brand-name{display:none}.header-inner{min-height:88px;gap:24px}.hero-copy{padding-top:12px;gap:24px}.hero-footnote{padding-top:0}.hero-description{font-size:.9375rem}.section{padding-block:88px}.campus-date{padding-left:32px}.horizons dt{gap:12px;font-size:1rem}}
@media(max-width:1023px){html{scroll-padding-top:100px}.desktop-nav,.header-contact{display:none}.brand-name{display:initial}.header-inner{min-height:80px}.menu-toggle{display:flex;gap:12px;align-items:center;justify-content:center;min-height:48px;padding:10px 0 10px 16px;border:0;background:none;font-size:1rem}.menu-lines{width:22px;height:12px;position:relative}.menu-lines:before,.menu-lines:after{content:'';position:absolute;height:1px;width:22px;background:currentColor;left:0;transition:transform .15s}.menu-lines:before{top:2px}.menu-lines:after{bottom:2px}.menu-toggle[aria-expanded=true] .menu-lines:before{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{padding-block:12px 24px;max-height:calc(100svh - 80px);overflow:auto}.mobile-menu a{display:flex;align-items:center;min-height:52px;border-top:1px solid var(--line);font-size:1rem}.hero-grid{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:clamp(2.8rem,5.8vw,4.3rem)}.hero-actions{gap:16px}.hero-figure figcaption{flex-direction:column;gap:0}.section-grid{grid-template-columns:1fr}.group-content h2{max-width:26ch}.activities-heading,.portfolio-heading{gap:20px}.activities-heading h2,.portfolio-heading h2{max-width:24ch}.section-intro{max-width:56ch}.small-note{display:none}.campus-heading-grid{grid-template-columns:1fr 1fr}.campus-section h2{font-size:3rem}.campus-date{padding-left:24px}.horizons{padding-top:56px}.quality-heading{gap:28px}.quality-list{gap:24px}.contact-grid{grid-template-columns:3fr 2fr}.contact-grid h2{font-size:3rem}}
@media(max-width:767px){:root{--gap:28px}.container{width:calc(100% - 40px)}.section{padding-block:68px}.header-inner{min-height:74px}.brand img{width:62px;height:31px}.brand-name{font-size:.75rem}.hero{padding-top:22px;padding-bottom:36px}.hero-topline{padding-bottom:24px}.hero-topline .eyebrow{display:none}.location{font-size:.75rem;gap:12px}.hero-grid{grid-template-columns:1fr}.hero-copy{gap:24px;padding-top:0}.hero-copy h1{font-size:clamp(2.65rem,9.7vw,4.8rem);max-width:15ch}.hero-description{font-size:1rem;max-width:46ch}.hero-actions{gap:24px}.button,.text-link{font-size:1rem;min-height:48px}.button{padding-block:16px}.hero-footnote{font-size:1rem;gap:10px;padding-top:4px}.hero-photo img{aspect-ratio:5/4;object-position:50% 60%}.photo-label{bottom:16px;left:16px;font-size:.75rem}.hero-figure figcaption{flex-direction:row;font-size:.75rem;gap:12px}.figures-section{padding-block:30px}.figures{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px;column-gap:20px}.figures dd:not(.figure-note){font-size:3.5rem}.figures dt{font-size:1rem;white-space:normal}.figures .figure-note{font-size:1rem}.figures dd span{font-size:1.5rem}.section-marker{font-size:.75rem;gap:18px}.group-content{gap:24px}.group-body{grid-template-columns:1fr;font-size:1rem;gap:20px;line-height:1.75}h2{font-size:2.4rem;max-width:22ch}h3{font-size:1.3rem}.activities-heading,.portfolio-heading{gap:24px}.section-intro{font-size:1rem}.activity-list summary{gap:12px;padding-block:22px}.activity-index{width:38px;font-size:.8rem}.activity-body{padding:0 0 26px 50px;font-size:1rem}.activity-status{font-size:.75rem}.campus-top{align-items:start;flex-direction:column;gap:16px;padding-bottom:36px}.campus-status{font-size:.75rem}.campus-heading-grid{grid-template-columns:1fr;gap:40px}.campus-section h2{font-size:2.7rem}.campus-description{font-size:1rem;line-height:1.8}.campus-date{border-left:0;border-top:1px solid rgb(245 244 237 / 22%);padding:24px 0 0;gap:16px;font-size:1rem}.date-label{font-size:.75rem}.year{font-size:6rem}.horizons{grid-template-columns:1fr;gap:28px;padding-top:40px}.horizons>div{gap:14px}.horizons dt{font-size:1.35rem;gap:20px}.horizon-number{font-size:.875rem}.horizons dd{font-size:1rem}.campus-bottom{flex-direction:column;align-items:start;font-size:1rem;gap:16px;margin-top:36px}.list-heading{font-size:.75rem}.therapeutic-list{grid-template-columns:1fr}.therapeutic-list li{font-size:1rem;padding-block:12px}.portfolio-note{font-size:1rem}.quality-heading{padding-bottom:32px}.quality-list{grid-template-columns:1fr;gap:28px}.quality-list>div{gap:16px;padding-top:24px}.quality-list dt{font-size:1.4rem;gap:16px}.quality-index{font-size:.875rem}.quality-list dd{font-size:1rem}.contact-section>.container{gap:28px}.contact-grid{grid-template-columns:1fr;gap:36px}.contact-grid h2{font-size:2.7rem}.contact-email{font-size:clamp(.95rem,4.7vw,1.5rem)}.contact-email a{gap:12px}address{font-size:1rem}.site-footer{padding-block:32px 24px}.footer-top{flex-wrap:wrap;align-items:start;gap:24px;font-size:1rem}.footer-top>p{flex-basis:calc(100% - 78px)}.footer-top>.text-link{margin-left:78px}.footer-bottom{flex-direction:column;font-size:.8125rem;gap:20px}.footer-bottom>p:last-child{text-align:left}}
@media(max-width:359px){.contact-grid h2,.campus-section h2{font-size:2.25rem}.hero-copy h1{font-size:2.35rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
