:root{--ink:#2a4149;--paper:#fff;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;-webkit-font-smoothing:antialiased}
::selection{background:var(--ink);color:var(--paper)}
.page{width:min(100% - 112px,1512px);margin-inline:auto}
.header{display:flex;justify-content:space-between;align-items:center;padding-block:42px}
.logo{display:block;width:188px;height:auto}
.eyebrow{font-size:.75rem;font-weight:500;line-height:1.55;letter-spacing:.11em;text-transform:uppercase;margin:0}
.header-note{text-align:right;letter-spacing:.065em}
.hero{padding-top:76px;padding-bottom:65px}
.hero-label{margin-bottom:32px}
h1{font-size:clamp(4rem,8vw,8.6rem);font-weight:500;line-height:1.02;letter-spacing:-.045em;margin:0 0 54px -.045em}
.last-word{display:inline-block;position:relative}
.last-word:after{content:"";position:absolute;left:.075em;right:.04em;bottom:-.09em;height:3px;background:var(--ink);transform-origin:left;animation:line-in 1.2s .2s both}
.hero-bottom{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:48px}
.index-label{padding-bottom:4px}
.intro{font-size:clamp(1.15rem,1.65vw,1.55rem);line-height:1.45;letter-spacing:-.025em;max-width:445px;margin:0;justify-self:end}
.collection{border-top:1px solid var(--ink)}
.section-heading{padding-block:23px 57px;display:flex;justify-content:space-between;gap:24px}
.project{position:relative;display:grid;grid-template-columns:1fr 3fr 1fr;gap:28px;padding:40px 0 85px}
.project+.project{border-top:1px solid var(--ink);padding-top:66px}
.project-number{font-size:1rem;line-height:1.4;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.category{margin-bottom:24px}
h3{font-size:clamp(2.75rem,4.4vw,4.75rem);font-weight:400;letter-spacing:-.04em;line-height:1.05;margin:0 0 26px}
.project-description{font-size:1.125rem;line-height:1.55;letter-spacing:-.015em;max-width:415px;margin:0;text-wrap:pretty}
.status{font-size:.875rem;line-height:1.4;white-space:nowrap;margin:0;justify-self:end;border-top:1px solid var(--ink);padding-top:10px}
.footer{border-top:1px solid var(--ink);padding-block:36px 42px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer img{width:130px;height:auto;display:block}
.footer p{font-size:.75rem;margin:0;line-height:1.5}
.about{border-top:1px solid var(--ink);padding-block:76px 90px;display:grid;grid-template-columns:1fr 1fr;gap:64px}
.about h2{font-size:clamp(2.3rem,3.5vw,3.8rem);font-weight:400;line-height:1.08;letter-spacing:-.04em;margin:29px 0 0}
.about-story{padding-top:44px;max-width:485px;justify-self:end}
.about-story p{font-size:1.125rem;line-height:1.6;letter-spacing:-.015em;margin:0 0 24px}
.about-story p:last-child{margin-bottom:0}
.home{border-top:1px solid var(--ink);display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:center;padding-block:76px 90px}
.home h2{font-size:clamp(3.5rem,6vw,6.5rem);font-weight:400;line-height:1.06;letter-spacing:-.055em;margin:26px 0 30px}
.home-statement{font-size:1.375rem;line-height:1.4;letter-spacing:-.025em;margin:0 0 21px}
.home-description{font-size:1rem;line-height:1.65;max-width:340px;margin:0}
.home-map{margin:0;min-width:0}
.home-map img{display:block;width:100%;height:auto}
.home-map figcaption{display:flex;justify-content:space-between;gap:15px;font-size:.75rem;line-height:1.5;padding-top:13px}
.skip-link{position:fixed;top:12px;left:12px;z-index:5;padding:12px 18px;background:var(--ink);color:var(--paper);transform:translateY(-150%)}
.skip-link:focus{transform:none}
@keyframes line-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(min-width:1500px){.hero{padding-top:115px;padding-bottom:90px}.hero-bottom{margin-top:75px}.project{padding-bottom:115px}}
@media(max-width:900px){.page{width:calc(100% - 64px)}.hero{padding-top:65px}h1{font-size:clamp(4.2rem,10.7vw,6.8rem)}.hero-bottom{grid-template-columns:1fr 1.4fr;gap:25px}.project{grid-template-columns:.4fr 3fr;gap:24px}.status{grid-column:2;justify-self:start;margin-top:4px}.section-heading{padding-bottom:32px}.section-heading>span{max-width:165px;text-align:right}}
@media(max-width:560px){.page{width:calc(100% - 40px)}.header{padding-block:27px}.logo{width:148px}.header-note{display:none}.hero{padding-top:55px;padding-bottom:45px}.hero-label{margin-bottom:26px}h1{font-size:clamp(3rem,11.9vw,4.2rem);margin-bottom:46px;line-height:1.03;letter-spacing:-.045em}.last-word:after{height:2px;bottom:-.08em}.hero-bottom{display:block}.index-label{display:none}.intro{font-size:1.125rem;max-width:310px;margin-left:0}.section-heading{padding-block:20px 26px}.section-heading>span{display:none}.project{grid-template-columns:26px 1fr;column-gap:19px;row-gap:25px;padding-top:20px;padding-bottom:52px}.project+.project{padding-top:37px}.category{font-size:.75rem;letter-spacing:.07em;margin-bottom:21px}h3{font-size:clamp(2.2rem,8.5vw,3rem);margin-bottom:22px}.project-description{font-size:1rem;line-height:1.55}.status{font-size:.875rem}.footer{padding-block:28px 32px}.footer img{width:110px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.last-word:after{animation:none}}
@media(max-width:900px){h1{font-size:clamp(3.5rem,9vw,6rem)}.about{gap:32px}.about-story{padding-top:0}.home{gap:32px;grid-template-columns:1fr 1.1fr}.home-statement{font-size:1.125rem}}
@media(max-width:650px){.about,.home{grid-template-columns:1fr;padding-block:45px 52px;gap:32px}.about-story{justify-self:start}.about-story p{font-size:1rem}.about h2{margin-top:22px}.home-map{width:100%}.home-description{max-width:390px}.home h2{margin-top:22px}.home-statement{font-size:1.25rem}.hero-bottom{min-height:0}}
@media(max-width:560px){h1{font-size:clamp(2.45rem,10.65vw,3.7rem)}.hero-bottom{display:none}}
