@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;1,9..144,400;1,9..144,500&family=Inter:wght@400;500;600;700&display=swap');
:root{--ink:#0c0c0d;--paper:#f4f3f0;--white:#fff;--gold:#c2a066;--muted:#aaa9a4;--line:#ffffff25;--darkline:#17171529;--serif:'Fraunces',Georgia,serif;--sans:'Inter',Arial,sans-serif;--gutter:clamp(22px,5.6vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font:400 15px/1.75 var(--sans);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #9c7c43;outline-offset:2px}::selection{background:var(--gold);color:var(--ink)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.025em}h1{font-size:clamp(42px,5.6vw,80px)}h2{font-size:clamp(34px,4vw,56px)}h3{font-size:clamp(24px,2.4vw,32px)}em{color:var(--gold);font-weight:400}.wrap{max-width:1440px;margin:auto;padding-left:var(--gutter);padding-right:var(--gutter)}.section{padding-top:100px;padding-bottom:100px}.paper{background:var(--paper);color:var(--ink)}.eyebrow{font:600 10px/1.6 var(--sans);text-transform:uppercase;letter-spacing:.2em;color:var(--gold);display:flex;align-items:center;gap:14px;margin-bottom:24px}.eyebrow:before{content:'';width:32px;height:1px;background:currentColor;flex-shrink:0}.paper .eyebrow{color:#765b2e}.lede{font-size:clamp(16px,1.5vw,19px);line-height:1.8;color:#cfceca;max-width:640px}.paper .lede{color:#585853}.lede+p{margin-top:16px}.small{font-size:12px;color:var(--muted)}.paper .small{color:#64645d}.text-link{display:inline-flex;align-items:center;gap:25px;border-bottom:1px solid var(--gold);padding-bottom:8px;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.text-link:after{content:'↗';font-size:19px;font-weight:400}.button{display:inline-flex;justify-content:center;align-items:center;gap:20px;border:1px solid var(--gold);background:var(--gold);color:var(--ink);padding:15px 23px;text-transform:uppercase;letter-spacing:.1em;font:600 10px/1.5 var(--sans);min-height:48px}.button:hover{background:#d4b784}.button.secondary{background:transparent;color:inherit;border-color:#8a8984}.button.secondary:hover{border-color:var(--gold)}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:32px}.skip-link{position:fixed;top:-80px;left:16px;z-index:100;background:var(--paper);color:var(--ink);padding:12px 20px}.skip-link:focus{top:10px}.site-header{height:96px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);position:relative;z-index:40;background:var(--ink)}.brand{display:block;width:220px;flex-shrink:0}.brand img{height:auto}.desktop-nav{display:flex;align-items:center;gap:30px}.desktop-nav>a{font-size:10px;text-transform:uppercase;letter-spacing:.12em;padding:10px 0;color:#d7d5cf}.desktop-nav>a:hover,.desktop-nav>a[aria-current=page]{color:var(--gold)}.desktop-nav>a[aria-current=page]{border-bottom:1px solid var(--gold)}.desktop-nav .nav-contact{padding:11px 18px;border:1px solid #c2a06688}.menu-toggle{display:none;align-items:center;gap:12px;background:none;border:0;color:var(--paper);font-size:11px;text-transform:uppercase;letter-spacing:.1em;padding:12px 0}.menu-toggle span{font-size:21px}.mobile-nav{display:none;position:fixed;inset:96px 0 0;background:var(--ink);padding:32px var(--gutter);overflow:auto;z-index:39}.mobile-nav a{font:400 32px/1.5 var(--serif);padding:12px 0;border-bottom:1px solid var(--line);display:block}.mobile-nav a[aria-current=page]{color:var(--gold)}.mobile-nav.open{display:block}.site-footer{border-top:1px solid var(--line);padding-top:58px;padding-bottom:28px}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px;padding-bottom:54px}.footer-brand{width:240px;margin-bottom:22px}.footer-top p{font-size:13px;color:var(--muted);max-width:330px}.footer-label{display:block;font-size:10px;color:var(--gold);letter-spacing:.15em;text-transform:uppercase;margin-bottom:18px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:13px}.footer-links a:hover{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:22px;font-size:10px;color:var(--muted);letter-spacing:.03em}.cta{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;padding-top:65px;padding-bottom:65px;border-top:1px solid var(--line);background:#131314}.cta h2{font-size:clamp(32px,4vw,52px)}.cta p{margin-top:16px;max-width:620px;color:#b9b7b0}.page-intro{padding-top:65px;padding-bottom:65px}.page-intro h1{max-width:950px}.page-intro .lede{margin-top:26px}.breadcrumb{font-size:10px;letter-spacing:.04em;color:#aaa9a4;margin-bottom:32px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.breadcrumb a:hover{color:var(--gold)}.paper .breadcrumb{color:#65635d}.intro-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:44px}.intro-heading h2{max-width:700px}.intro-heading .lede{max-width:410px;font-size:15px}.photo-note{font-size:10px;color:#c3c0b8;line-height:1.6}.photo-note.credit{margin-top:10px;color:#79776e}.paper .photo-note.credit{color:#615f57}.portfolio-hero{position:relative;min-height:480px;display:flex;align-items:center;overflow:hidden}.portfolio-hero>img{position:absolute;inset:0;object-fit:cover;object-position:center 57%;height:100%}.portfolio-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0c0c0df5 3%,#0c0c0db3 44%,#0c0c0d20 80%),linear-gradient(0deg,#0c0c0d8c,transparent 40%)}.portfolio-hero .wrap{width:100%;position:relative;z-index:1;padding-top:65px;padding-bottom:70px}.portfolio-hero h1{max-width:700px}.portfolio-hero .lede{max-width:500px;margin-top:24px;color:#ddd9cf}.portfolio-hero .hero-credit{position:absolute;bottom:20px;right:var(--gutter);z-index:2;text-align:right}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.metric{padding:30px 22px 30px 0}.metric+.metric{padding-left:26px;border-left:1px solid var(--line)}.metric strong{font:400 clamp(30px,3.3vw,46px)/1.1 var(--serif);color:var(--gold);display:block;margin-bottom:12px}.metric span{font-size:10px;letter-spacing:.06em;text-transform:uppercase;line-height:1.65;display:block;max-width:180px;color:#c9c6bd}.metric small{font-size:10px;color:var(--muted);display:block;margin-top:8px}.portfolio-context{padding-top:24px;padding-bottom:30px;font-size:11px;color:var(--muted);max-width:950px}.category-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.category-card{grid-column:span 4;position:relative;min-height:320px;overflow:hidden;background:#272725}.category-card:nth-child(-n+2){grid-column:span 6;min-height:400px}.category-card:nth-last-child(-n+2){grid-column:span 6}.category-card>img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;transition:transform .8s cubic-bezier(.22,.61,.36,1)}.category-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#00000008 15%,#00000026 38%,#000000d9 100%)}.category-card:hover>img{transform:scale(1.045)}.category-card .card-text{position:absolute;bottom:28px;left:28px;right:28px;z-index:2;color:white}.category-card .number{display:block;font-size:10px;letter-spacing:.13em;margin-bottom:10px;color:#e3c58d}.category-card h3{padding-right:30px;font-size:30px;max-width:420px}.category-card p{font-size:12px;line-height:1.65;color:#dfdcd5;max-width:350px;margin-top:12px}.category-card .arrow{position:absolute;right:0;top:28px;color:#e3c58d;font-size:26px}.category-card .kind{position:absolute;top:18px;right:18px;z-index:2;background:#0c0c0db0;color:#e8e5dd;padding:4px 8px;font-size:9px;letter-spacing:.07em;text-transform:uppercase}.category-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.category-nav a{font-size:11px;padding:9px 14px;border:1px solid var(--darkline);line-height:1.4}.category-nav a:hover,.category-nav a[aria-current=page]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px 28px}.project-card .image{overflow:hidden;aspect-ratio:1.5;background:#ddd9d0;position:relative;margin-bottom:20px}.project-card img{height:100%;object-fit:cover;transition:transform .8s}.project-card:hover img{transform:scale(1.04)}.project-card .image .kind{position:absolute;left:12px;bottom:12px;background:#0c0c0dc9;padding:4px 8px;font-size:9px;color:white}.project-card .location{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#716649;margin-bottom:10px;display:block}.project-card h3{font-size:27px;margin-bottom:12px}.project-card p{font-size:13px;color:#60605b;line-height:1.7}.project-card .read-more{font-size:10px;letter-spacing:.08em;text-transform:uppercase;display:block;margin-top:18px;color:#70582f}.project-card .read-more:after{content:' ↗';margin-left:12px}.project-card.no-image{padding:28px;border-top:1px solid #9a8056;background:#eae8e1}.project-card.no-image .image{display:none}.project-tools{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:35px}.project-tools label{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.search-box input{border:1px solid #b5b3ab;background:transparent;color:var(--ink);padding:12px 16px;max-width:100%;width:330px;border-radius:0}.result-count{font-size:12px;color:#69685f}.empty-results{padding:40px 0;border-top:1px solid var(--darkline);grid-column:1/-1}.project-header{padding-top:45px;padding-bottom:50px}.project-header h1{max-width:1000px;font-size:clamp(40px,5vw,72px)}.project-header .project-subtitle{display:flex;gap:28px;flex-wrap:wrap;margin-top:26px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#ccc7bc}.project-cover{margin:0;position:relative;background:#232321}.project-cover img{max-height:710px;object-fit:cover;aspect-ratio:1.85}.project-cover figcaption{padding:15px var(--gutter);font-size:10px;color:#b5b2a9;max-width:1440px;margin:auto}.project-cover.panel img{object-fit:contain;aspect-ratio:auto;max-height:700px;background:#eae8e1;padding:25px}.project-body{display:grid;grid-template-columns:2fr 1fr;gap:90px}.project-body h2{font-size:40px;margin-bottom:24px}.project-body p{color:#5d5d55;margin-bottom:20px;font-size:16px}.scope-list{padding-left:20px;color:#4f4f47;margin:26px 0}.scope-list li{padding:8px 0 8px 6px;border-bottom:1px solid var(--darkline);font-size:14px}.project-facts{border-top:2px solid #a1814e;padding-top:22px}.project-facts dl{margin:0}.project-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#78603c;margin-top:26px}.project-facts dt:first-child{margin-top:0}.project-facts dd{margin:7px 0 0;font-size:13px;line-height:1.7}.project-facts .text-link{margin-top:32px}.project-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.project-stat{border-top:1px solid var(--darkline);padding-top:20px}.project-stat strong{font:400 32px/1.2 var(--serif);color:#776038}.project-stat span{display:block;font-size:11px;line-height:1.65;margin-top:8px;color:#55544c}.project-stat small{display:block;font-size:10px;color:#77756e;margin-top:6px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;margin-top:40px}.gallery figure{background:transparent}.gallery img{width:100%;height:350px;object-fit:contain;background:#e9e7df}.gallery figcaption{margin-top:12px;font-size:11px;color:#66645d}.gallery a{display:block}.gallery a:focus-visible{outline-offset:2px}.gallery .gallery-action{font-size:9px;letter-spacing:.06em;color:#79603a;text-transform:uppercase;display:block;margin-top:5px}.lightbox{border:0;background:#0c0c0d;color:white;width:94vw;max-width:1400px;max-height:94vh;padding:20px}.lightbox::backdrop{background:#000d}.lightbox img{object-fit:contain;height:auto;max-height:76vh}.lightbox button{position:absolute;right:15px;top:10px;background:#0c0c0de8;color:white;border:1px solid #aaa;padding:10px 16px;z-index:2}.lightbox p{font-size:12px;padding:14px 0 0;margin:0;color:#ccc}.service-intro{padding-top:74px;padding-bottom:55px}.service-intro h1{max-width:1050px}.service-intro .lede{margin-top:30px;max-width:670px}.service-nav{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:55px}.service-nav a{padding:22px 20px 22px 0;font-size:12px;border-bottom:1px solid var(--line)}.service-nav a span{color:var(--gold);font-size:10px;display:block;margin-bottom:8px}.service-nav a:after{content:' ↓';color:var(--gold);margin-left:12px}.service-image{height:330px;overflow:hidden;position:relative}.service-image img{height:100%;object-fit:cover;object-position:center 45%}.service-image p{position:absolute;bottom:18px;right:var(--gutter);background:#0c0c0dbb;padding:6px 12px;font-size:10px;color:white}.service-phase{display:grid;grid-template-columns:1fr 1.8fr;gap:85px;padding-top:85px;padding-bottom:85px;border-bottom:1px solid var(--darkline)}.service-phase:last-child{border-bottom:0}.service-phase .phase-heading{position:sticky;top:35px;align-self:start}.service-phase h2{font-size:clamp(32px,3.4vw,47px)}.phase-heading p{font-size:14px;color:#68675f;margin-top:22px;max-width:340px}.service-item{border-bottom:1px solid var(--darkline);padding:0 0 25px;margin-bottom:25px}.service-item:last-child{border:0;padding-bottom:0;margin:0}.service-item summary{list-style:none;display:grid;grid-template-columns:30px 1fr 25px;gap:16px;align-items:center;cursor:pointer}.service-item summary::-webkit-details-marker{display:none}.service-item summary .service-number{font-size:10px;color:#7c633b}.service-item summary h3{font-size:25px;letter-spacing:-.02em}.service-item summary:after{content:'+';font-size:22px;font-weight:400;color:#816339;text-align:center}.service-item[open] summary:after{content:'−'}.service-item .service-content{padding:20px 40px 0 46px;font-size:14px;color:#5d5d55}.service-item p{margin-bottom:15px}.service-item ul{padding-left:18px}.service-item .text-link{margin-top:18px;color:#71582f;font-size:9px}.engagement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.engagement-grid>div{padding-top:25px;border-top:1px solid var(--line)}.engagement-grid h3{font-size:27px}.engagement-grid p{font-size:14px;color:var(--muted);margin-top:18px}.home-hero{min-height:720px;height:calc(100svh - 96px);max-height:1100px;position:relative;overflow:hidden;display:flex;align-items:center}.hero-slides{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 2s}.hero-slide.active{opacity:1}.hero-slide img{height:100%;object-fit:cover;object-position:center 46%;transform:scale(1);transition:transform 11s linear}.hero-slide.active img{transform:scale(1.05)}.hero-slide.flip{transform:scaleX(-1)}.hero-slide.tower img{object-position:72% 50%}.home-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0c0c0df0 0%,#0c0c0dd1 32%,#0c0c0d47 62%,#0c0c0d6b 100%),linear-gradient(180deg,#0c0c0db8 0%,transparent 26%,transparent 55%,#0c0c0ddb 100%)}.home-hero .hero-content{position:relative;z-index:2;width:100%;padding-bottom:55px}.home-hero h1{max-width:690px;font-size:clamp(42px,5.6vw,76px)}.home-hero .lede{max-width:550px;margin-top:28px;font-size:17px}.hero-controls{position:absolute;right:var(--gutter);bottom:38px;z-index:3;text-align:right;max-width:400px}.hero-caption{display:block;font-size:12px;margin-bottom:8px}.hero-controls .photo-note{display:block;font-size:9px;margin-bottom:13px}.hero-controls button{background:#0c0c0d80;color:var(--paper);border:1px solid #ffffff55;width:38px;height:36px;margin-left:5px;font-size:13px}.hero-controls button:hover{border-color:var(--gold)}.home-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}.home-intro .lede{margin-top:20px}.home-intro .text-link{margin-top:30px}.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.featured-grid .project-card p{color:#aaa9a4}.featured-grid .project-card .location,.featured-grid .project-card .read-more{color:var(--gold)}.case-card{border-top:1px solid var(--darkline);padding-top:24px}.case-card .tag{font-size:10px;letter-spacing:.1em;color:#79603a;text-transform:uppercase;display:block;margin-bottom:12px}.case-card h3{font-size:30px}.case-card p{margin-top:18px;font-size:14px;color:#606059}.case-card .text-link{margin-top:24px;color:#6f572f}.case-layout{display:grid;grid-template-columns:1fr 2fr;gap:100px}.case-section{padding-bottom:45px;margin-bottom:45px;border-bottom:1px solid var(--darkline)}.case-section h2{font-size:35px;margin-bottom:23px}.case-section p{color:#56564e;font-size:16px}.case-aside{font-size:13px;color:#6f6c63}.case-aside h3{font-size:24px;color:var(--ink);margin-bottom:18px}.case-aside .text-link{margin-top:24px}.founder{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:center}.founder-image{max-width:460px;overflow:hidden}.founder-image img{max-height:600px;object-fit:cover;object-position:center top}.founder-copy .lede{margin-top:27px}.founder-copy .text-link{margin-top:30px}.timeline{padding:0;list-style:none;max-width:900px}.timeline li{padding:30px 0;border-bottom:1px solid var(--darkline);display:grid;grid-template-columns:180px 1fr;gap:35px}.timeline time{font-size:11px;letter-spacing:.06em;color:#7c633b}.timeline h3{font-size:28px;margin-bottom:8px}.timeline p{font-size:14px;color:#5f5e57;margin-top:10px}.contact-layout{display:grid;grid-template-columns:.8fr 1.3fr;gap:100px}.contact-layout h2{font-size:36px;margin-bottom:28px}.contact-details a{display:block;font-size:17px;margin-bottom:12px}.contact-details .eyebrow{margin-top:40px}.contact-details p{font-size:14px;color:#625f56;max-width:320px}.inquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.inquiry-form .wide{grid-column:1/-1}.inquiry-form label{font-size:10px;letter-spacing:.07em;text-transform:uppercase;display:block;margin-bottom:9px}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;border:1px solid #aaa79c;background:#fff8;padding:14px 13px;border-radius:0;color:var(--ink);font-size:14px}.inquiry-form textarea{min-height:155px;resize:vertical}.inquiry-form select{min-height:51px}.inquiry-form .consent{display:flex;align-items:flex-start;gap:12px;font-size:11px;text-transform:none;letter-spacing:0;color:#626056}.inquiry-form .consent input{width:18px;height:18px;flex-shrink:0;margin:3px 0 0;accent-color:#8e7144}.inquiry-form .consent a{text-decoration:underline}.inquiry-form .button{justify-self:start}.form-status{padding:18px;border-left:3px solid #a3824f;background:#e9e6dc;line-height:1.7;font-size:13px}.form-status:empty{display:none}.form-status.error{border-color:#9f3232}.form-status a{text-decoration:underline}.honeypot{position:absolute;left:-10000px;opacity:0;height:0;overflow:hidden}.preview-note{border-left:2px solid #a3824f;font-size:12px;color:#6c6252;padding:8px 15px;margin-bottom:28px}.prose{max-width:850px}.prose h2{font-size:30px;margin:40px 0 18px}.prose p{margin:15px 0;color:#5f5d55}.back-link{font-size:10px;text-transform:uppercase;letter-spacing:.1em;display:inline-block;margin-bottom:26px}.back-link:before{content:'←';margin-right:12px}[hidden]{display:none!important}
.source-window{display:block;width:100%;height:100%;overflow:hidden}.category-card>.source-window{position:absolute;inset:0}.project-cover>.source-window{aspect-ratio:1.85;height:auto;max-height:710px}.project-cover.archival{padding-top:35px}.project-cover.archival>.source-window{max-width:860px;margin:auto;aspect-ratio:1.6;max-height:540px}.project-note{font-size:12px!important;line-height:1.7;border-left:2px solid #ac8b55;padding:8px 0 8px 16px;color:#706b5f!important}.project-case-callout{padding:28px;margin-top:35px;background:#e7e4db}.project-case-callout h3{font-size:28px}.project-case-callout .text-link{margin-top:24px}.additional{border-top:1px solid var(--darkline)}.additional>.lede{margin-top:22px}.directory{margin-top:35px}.directory-item{border-top:1px solid var(--darkline)}.directory-item:last-child{border-bottom:1px solid var(--darkline)}.directory-item summary{display:grid;grid-template-columns:1.2fr 1fr 24px;gap:20px;list-style:none;cursor:pointer;padding:18px 0;font-size:14px;align-items:center}.directory-item summary:after{content:'+';color:#84683b;font-size:22px;text-align:right}.directory-item[open] summary:after{content:'−'}.directory-item summary::-webkit-details-marker{display:none}.directory-item summary span+span{font-size:11px;color:#716c60}.directory-item>div{padding:0 0 24px;max-width:850px;font-size:13px;color:#5f5b51}.directory-item .small{margin-top:15px;font-size:11px}.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:70px 45px}.case-image{aspect-ratio:1.65;overflow:hidden;margin-bottom:25px;background:#e4e1d8}.case-image img,.case-image svg{height:100%;width:100%;object-fit:cover}.case-grid .case-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;column-gap:45px}.case-grid .case-card:first-child .case-image{grid-row:1/5;margin-bottom:0;aspect-ratio:1.2}.case-grid .case-card:first-child .tag{margin-top:8px}.case-grid .case-card:first-child .text-link{justify-self:start;align-self:end}.case-aside .project-stat-grid{grid-template-columns:1fr}.case-aside .project-stat{margin-top:10px}.project-card.no-image:hover{background:#e2ded2}.paper em{color:#806339}button:disabled{cursor:wait;opacity:.6}
@media(max-width:600px){.project-cover>.source-window{aspect-ratio:1.3}.project-cover.archival{padding-top:20px}.project-cover.archival>.source-window{aspect-ratio:1.5}.directory-item summary{grid-template-columns:1fr 22px;gap:6px 20px}.directory-item summary span+span{grid-column:1;grid-row:2}.directory-item summary:after{grid-column:2;grid-row:1/3}.case-grid{grid-template-columns:1fr;gap:40px}.case-grid .case-card:first-child{display:block}.case-grid .case-card:first-child .case-image{aspect-ratio:1.65;margin-bottom:25px}.case-aside .project-stat-grid{grid-template-columns:1fr 1fr}.project-case-callout{padding:22px}.project-case-callout h3{font-size:26px}}
@media(min-width:1600px){.portfolio-hero{min-height:570px}}
@media(max-width:1100px){.desktop-nav{gap:19px}.brand{width:190px}.desktop-nav>a{font-size:9px}.project-body,.founder,.contact-layout,.case-layout{gap:50px}.service-phase{gap:50px}.project-grid{grid-template-columns:repeat(2,1fr)}.category-card h3{font-size:26px}.home-intro{gap:50px}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex}.site-header{height:82px}.mobile-nav{top:82px}.section{padding-top:70px;padding-bottom:70px}.home-hero{height:calc(100svh - 82px);min-height:650px}.home-hero h1{max-width:610px}.hero-controls{bottom:25px}.category-card,.category-card:nth-child(-n+2),.category-card:nth-last-child(-n+2){grid-column:span 6;min-height:340px}.category-card:last-child:nth-child(odd){grid-column:1/-1;min-height:320px}.category-card .card-text{left:23px;right:23px;bottom:23px}.intro-heading{display:block}.intro-heading .lede{margin-top:22px;max-width:650px}.home-intro{grid-template-columns:1fr;gap:28px}.featured-grid{grid-template-columns:repeat(2,1fr)}.featured-grid .project-card:last-child{display:none}.service-phase{grid-template-columns:1fr;gap:40px;padding-top:60px;padding-bottom:60px}.service-phase .phase-heading{position:static}.phase-heading p{max-width:650px}.service-nav{grid-template-columns:repeat(2,1fr)}.project-body{grid-template-columns:1fr;gap:55px}.project-facts dl{display:grid;grid-template-columns:1fr 2fr;gap:15px 25px}.project-facts dt,.project-facts dd{margin:0}.project-cover img{aspect-ratio:1.5}.footer-top{grid-template-columns:1.3fr 1fr;gap:35px}.footer-top>div:first-child{grid-column:1/-1}.footer-top p{max-width:480px}.cta{grid-template-columns:1fr;gap:28px}.cta>.button{justify-self:start}.contact-layout{grid-template-columns:1fr;gap:45px}.contact-details p{max-width:650px}.gallery img{height:270px}}
@media(max-width:600px){body{font-size:14px}.brand{width:185px}.site-header{height:78px}.mobile-nav{top:78px}.page-intro{padding-top:40px;padding-bottom:42px}.page-intro .lede{margin-top:24px}.eyebrow{font-size:9px;letter-spacing:.16em;margin-bottom:20px}.section{padding-top:56px;padding-bottom:56px}h1{font-size:44px}h2{font-size:35px}.portfolio-hero{min-height:510px;align-items:flex-start}.portfolio-hero .wrap{padding-top:45px;padding-bottom:100px}.portfolio-hero h1{font-size:46px;max-width:340px}.portfolio-hero:after{background:linear-gradient(90deg,#0c0c0deb,#0c0c0d55),linear-gradient(0deg,#0c0c0dcc,transparent)}.portfolio-hero>img{object-position:64% center}.portfolio-hero .lede{font-size:15px;max-width:320px}.portfolio-hero .hero-credit{text-align:left;left:var(--gutter);right:var(--gutter)}.metrics{grid-template-columns:1fr 1fr}.metric{padding:22px 15px 22px 0}.metric+.metric{padding-left:19px}.metric:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}.metric:nth-child(4){border-top:1px solid var(--line)}.metric strong{font-size:34px}.metric span{font-size:9px;max-width:160px}.portfolio-context{font-size:10px;padding-top:20px;padding-bottom:22px}.category-grid{gap:18px}.category-card,.category-card:nth-child(-n+2),.category-card:nth-last-child(-n+2),.category-card:last-child:nth-child(odd){grid-column:1/-1;min-height:350px}.category-card h3{font-size:31px}.category-card p{font-size:12px}.category-card .card-text{bottom:26px;left:24px;right:24px}.intro-heading{margin-bottom:32px}.intro-heading h2{font-size:35px}.intro-heading .lede{font-size:14px}.project-grid,.featured-grid{grid-template-columns:1fr;gap:38px}.featured-grid .project-card:last-child{display:block}.project-card h3{font-size:29px}.project-card p{font-size:14px}.project-tools{align-items:stretch;flex-direction:column;gap:15px}.search-box input{width:100%}.project-header{padding-top:30px;padding-bottom:35px}.project-header h1{font-size:40px}.breadcrumb{font-size:9px;gap:8px;margin-bottom:25px}.project-header .project-subtitle{font-size:9px;gap:12px 20px}.project-cover img{aspect-ratio:1.2;max-height:none}.project-cover.panel img{padding:12px}.project-body h2{font-size:34px}.project-body p{font-size:15px}.project-stat-grid{grid-template-columns:repeat(2,1fr);gap:20px}.project-stat strong{font-size:30px}.gallery{grid-template-columns:1fr;gap:28px}.gallery img{height:auto;max-height:500px}.service-intro{padding-top:45px;padding-bottom:40px}.service-intro h1{font-size:43px}.service-intro .lede{font-size:16px}.service-nav{margin-top:34px;gap:0 20px}.service-nav a{padding:17px 5px 17px 0;font-size:11px}.service-image{height:250px}.service-image p{font-size:9px;left:var(--gutter);right:auto}.service-phase{gap:35px}.service-item summary{grid-template-columns:24px 1fr 20px;gap:10px}.service-item summary h3{font-size:24px}.service-item .service-content{padding:17px 0 0 34px;font-size:14px}.engagement-grid{grid-template-columns:1fr;gap:30px}.home-hero{min-height:700px;height:calc(100svh - 78px);max-height:1000px}.home-hero h1{font-size:44px;max-width:420px}.home-hero .hero-content{padding-bottom:120px}.home-hero .lede{font-size:15px;max-width:380px;margin-top:24px}.home-hero:after{background:linear-gradient(90deg,#0c0c0de8,#0c0c0d60),linear-gradient(0deg,#0c0c0df0,transparent 60%)}.home-hero .actions{gap:25px}.hero-controls{left:var(--gutter);right:var(--gutter);text-align:left;bottom:25px}.hero-caption{font-size:11px}.hero-controls button{margin:0 6px 0 0}.hero-controls .photo-note{margin-bottom:10px}.founder{grid-template-columns:1fr;gap:38px}.founder-image{max-width:380px}.founder-image img{max-height:470px}.founder-copy .lede{margin-top:20px}.timeline li{grid-template-columns:1fr;gap:12px}.timeline h3{font-size:26px}.case-layout{grid-template-columns:1fr;gap:40px}.case-aside{border-bottom:1px solid var(--darkline);padding-bottom:32px}.case-section h2{font-size:31px}.contact-layout{gap:35px}.inquiry-form{grid-template-columns:1fr;gap:21px}.inquiry-form .wide{grid-column:1}.cta{padding-top:48px;padding-bottom:48px}.cta h2{font-size:35px}.cta p{font-size:14px}.footer-top{grid-template-columns:1fr;gap:30px;padding-bottom:35px}.footer-top>div:first-child{grid-column:auto}.footer-brand{width:220px}.footer-bottom{font-size:9px;gap:12px}.footer-links{font-size:13px}.category-nav{gap:8px}.category-nav a{font-size:10px;padding:9px 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.hero-slide img,.hero-slide.active img{transform:none}}
