:root{--ink:#363636;--muted:#737373;--paper:#fff;--font:'Univers Next Pro','UniversNextPro-Light','Helvetica Neue',Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-weight:300;font-size:27px;line-height:1.2}a{color:inherit;text-decoration:none}button{font:inherit;font-weight:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}a:hover,button:hover{color:#111}a:focus-visible,button:focus-visible{outline:1px solid currentColor;outline-offset:5px}h1,h2,h3,p{font-size:inherit;font-weight:inherit;margin:0}img{display:block;width:100%}header{position:fixed;left:22px;top:18px;z-index:5;max-width:45vw}.wordmark{display:block;font-size:27px;line-height:1.3;letter-spacing:-.65px;color:#262626}nav{display:flex;flex-direction:column;gap:5px;margin-top:26px;visibility:hidden;opacity:0;transition:opacity .18s}header:hover nav,header:focus-within nav{visibility:visible;opacity:1}nav a{color:var(--muted)}.home header{color:#fff}.home .wordmark,.home nav a{color:#fff;text-shadow:0 1px 7px #0005}.home-view{height:100svh;position:relative;background:#747c76}.slides,.slides img{height:100%;width:100%}.slides img{object-fit:cover}.slides:after{content:'';position:absolute;inset:0;background:linear-gradient(#0002,transparent 24%,transparent 70%,#0003);pointer-events:none}.home-controls{position:absolute;bottom:23px;right:24px;display:flex;gap:28px;align-items:center;color:#fff;font-size:14px}.home-controls button:hover{color:#ddd}#featured-link{position:absolute;left:23px;bottom:22px;color:#fff;font-size:18px;text-shadow:0 1px 7px #0005}.content-view{padding:19px 2.9% 65px 22px;min-height:100svh}.sidebar{position:fixed;top:85px;left:22px;width:38%;color:var(--muted)}.sidebar h1{margin-bottom:30px}.filters{display:flex;flex-direction:column;gap:8px;align-items:start;font-size:20px}.filters button{color:var(--muted)}.filters .active{color:var(--ink)}.right-column{width:44%;margin-left:auto}.project-list article{margin-bottom:70px;min-height:210px}.project-list article>a{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start;color:var(--muted)}.project-list article>a:hover{color:var(--ink)}.project-list img{aspect-ratio:1.5;object-fit:cover;transition:opacity .2s}.project-list a:hover img{opacity:.8}.project-list h2{margin-bottom:5px}.project-list p{font-size:18px;line-height:1.25;color:#808080}.studio-copy,.contact-copy{color:var(--muted)}.studio-copy h2,.contact-copy h2{color:var(--ink);margin-bottom:24px}.studio-copy>p{margin-bottom:30px}.principles{margin-top:65px;margin-bottom:55px}.principles h3{color:var(--ink);margin-bottom:9px}.principles p{font-size:18px;line-height:1.5;margin-bottom:35px}.studio-copy>a,.contact-copy button{color:var(--ink)}.contact-copy>p{margin-bottom:45px}.contact-copy #inquiry-info{font-size:18px;margin-top:25px;line-height:1.5}.project-detail>button{display:block;position:relative;width:100%;margin-bottom:20px}.project-detail>button span{position:absolute;top:48%;left:48%;color:white;font-size:40px;opacity:0;transition:opacity .2s}.project-detail>button:hover span{opacity:1}.project-detail>button img{max-height:70vh;object-fit:cover}.project-detail h1{margin-bottom:5px}.metadata{font-size:18px;color:var(--muted);margin-bottom:30px}.project-detail #detail-copy{color:var(--muted);line-height:1.3;margin-bottom:45px}.detail-note{font-size:13px;color:var(--muted);line-height:1.5}.detail-note a{text-decoration:underline;text-underline-offset:3px}.detail-navigation{display:flex;justify-content:space-between;gap:25px;font-size:16px;margin-top:60px;color:var(--muted)}dialog{border:0;padding:0;background:#fff;width:96vw;max-width:none;max-height:96svh}dialog::backdrop{background:#fffE}.close{position:fixed;top:20px;right:25px;background:white;padding:8px 12px;font-size:18px}dialog img{width:100%;height:90svh;object-fit:contain}[hidden]{display:none!important}@media(max-width:800px){body{font-size:23px}header{left:18px;top:17px;max-width:80vw}.wordmark{font-size:23px;letter-spacing:-.7px}nav{margin-top:20px;padding:0;background:none}.home nav{padding:0;background:none}.content-view{padding:100px 18px 50px}.sidebar{position:static;width:100%;margin-bottom:45px}.sidebar h1{margin-bottom:20px}.filters{flex-direction:row;flex-wrap:wrap;gap:18px;font-size:16px}.right-column{width:100%;margin:0}.project-list article{min-height:0;margin-bottom:55px}.project-list article>a{gap:20px;grid-template-columns:1fr 1fr}.project-list h2{font-size:23px}.project-list p{font-size:16px}.project-list img{aspect-ratio:1.15}.studio-copy,.contact-copy{max-width:560px}.home-controls{right:18px;bottom:22px;gap:16px;font-size:12px}#featured-link{left:18px;bottom:56px;font-size:16px}.project-detail>button img{max-height:60vh}.detail-navigation{font-size:14px}.home-view{min-height:500px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Keep the hover links on the wordmark axis and clear the sidebar beneath. */
nav{align-items:flex-start;padding:0;line-height:1.3}nav a{display:block;letter-spacing:-.65px}header:hover ~ main .sidebar,header:focus-within ~ main .sidebar{visibility:hidden}
@media(hover:none){nav{visibility:visible;opacity:1;flex-direction:row;gap:20px;margin-top:12px;font-size:18px}nav a{letter-spacing:0}header{max-width:calc(100vw - 36px)}body:not(.home) header{background:white;padding-bottom:15px;width:calc(100vw - 36px)}.content-view{padding-top:125px}}

/* The expanded navigation owns this area, including on hybrid touch/mouse devices. */
body:not(.home) nav{background:#fff}header:hover ~ main .sidebar,header:focus-within ~ main .sidebar{visibility:hidden;pointer-events:none}
@media(hover:none){header:not(:hover):not(:focus-within) ~ main .sidebar{visibility:visible;pointer-events:auto}}

/* The page label and first menu item occupy the same coordinates and line box. */
header{padding-bottom:32px}
nav{position:absolute;left:0;top:67px;margin-top:0;gap:0;width:100%}
nav a,.sidebar h1,.sidebar>a{font-size:27px;line-height:33px;letter-spacing:-.65px;font-weight:300}
@media(max-width:800px){header{padding-bottom:54px}nav{top:83px;margin-top:0}nav a,.sidebar h1,.sidebar>a{font-size:23px;line-height:29.9px;letter-spacing:-.65px}}
@media(hover:none){header{padding-bottom:0}nav{position:static;margin-top:12px;width:auto}nav a{font-size:18px;line-height:23.4px;letter-spacing:0}body:not(.home) header{padding-bottom:15px}}

.principles .partner-role{margin-top:0;margin-bottom:28px;color:var(--ink)}.studio-copy .principles h3:not(:first-child){margin-top:65px}

.partner-portrait{width:min(100%,320px);height:auto;margin:65px 0 24px}.partner-portrait:first-child{margin-top:0}.studio-copy .principles .partner-portrait+h3{margin-top:0}
