:root{--paper:#f6f5f0;--ink:#252b27;--muted:#686c63;--line:#d9dbd0;--green:#426a42;--lime:#d7e9b3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:6px}.wrap{max-width:1240px;margin:auto;padding:0 44px}header{display:flex;align-items:center;justify-content:space-between;max-width:1400px;margin:auto;padding:28px 44px;border-bottom:1px solid var(--line)}.wordmark{font-size:24px;font-weight:700;letter-spacing:-1px}.wordmark span{display:block;font-size:10px;letter-spacing:1.5px;font-weight:400;margin-top:5px}nav{display:flex;align-items:center;gap:32px;font-size:13px}nav a:hover,.text-link:hover{color:var(--green)}.nav-contact{border:1px solid var(--line);border-radius:30px;padding:12px 18px}.nav-contact span{margin-left:16px}.hero{padding-top:74px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.9px}.dot{display:inline-block;width:8px;height:8px;background:var(--green);border-radius:50%;margin-right:10px}h1{font-size:clamp(56px,7.5vw,102px);font-weight:500;letter-spacing:-6px;line-height:1.04;margin:32px 0 36px}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--green);letter-spacing:-5px}.hero-bottom{display:flex;justify-content:space-between;gap:70px;padding-bottom:58px}.hero-bottom>p{font-size:19px;line-height:1.65;max-width:580px;margin:0}.hero-aside{min-width:300px;padding-top:5px}.hero-aside>span{font-size:10px;letter-spacing:1.1px;color:var(--green)}.hero-aside p{font-size:13px;line-height:1.7;margin:12px 0 22px}.text-link{display:inline-flex;font-size:13px;gap:24px;border-bottom:1px solid var(--ink);padding-bottom:8px}.hero-rule{border-top:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:var(--muted)}.work{padding-top:84px}.section-intro{display:grid;grid-template-columns:1fr 2fr;gap:20px 70px;margin-bottom:50px}.section-intro .eyebrow{grid-column:1/-1;color:var(--green)}h2{font-size:43px;font-weight:400;line-height:1.13;letter-spacing:-1.8px;margin:0}.section-intro h2{grid-column:1}.section-intro>p{font-size:16px;line-height:1.7;max-width:440px;justify-self:end;margin:0;align-self:end;color:var(--muted)}.project{border-top:1px solid var(--ink);margin-bottom:62px}.project-top{display:flex;justify-content:space-between;padding:22px 0;font-size:10px;letter-spacing:1.4px;align-items:center}.tag{border:1px solid var(--line);border-radius:30px;padding:7px 12px;font-size:10px;letter-spacing:.4px}.project-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:54px}.project-copy{padding:15px 0 30px}h3{font-size:35px;line-height:1.12;letter-spacing:-1.2px;font-weight:400;margin:0 0 22px}.description{font-size:16px;line-height:1.7;color:var(--muted);max-width:440px}dl{font-size:12px;line-height:1.5;margin:28px 0}dl div{display:grid;grid-template-columns:125px 1fr;padding:9px 0;border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0}.case-link{display:flex;justify-content:space-between;font-size:13px;padding:15px 0 5px;max-width:440px}.case-link:hover{color:var(--green)}.visual{min-height:370px;padding:25px;position:relative;overflow:hidden;border-radius:3px;display:flex;flex-direction:column}.visual-label{font-size:9px;letter-spacing:1.2px}.ai-visual{background:#dde5d6}.portrait{width:150px;height:184px;background:#f8f4e7;border:8px solid white;margin:24px auto 20px;box-shadow:5px 9px 0 #bac7af;position:relative;overflow:hidden}.portrait-head{border-radius:60% 60% 45% 45%;width:44px;height:57px;background:#6e8063;position:absolute;left:45px;top:24px}.portrait-body{width:110px;height:83px;border-radius:60% 60% 0 0;background:#496547;position:absolute;left:12px;top:80px}.portrait span{position:absolute;bottom:4px;background:white;width:100%;text-align:center;font-size:7px;padding-top:5px;letter-spacing:.5px}.portrait i{position:absolute;right:5px;top:6px;font-style:normal;font-size:8px;border:1px solid;padding:4px;border-radius:50%}.flow-pills{display:flex;align-items:center;justify-content:center;gap:9px;font-size:10px}.flow-pills span{background:#f4f7ef;border-radius:20px;padding:11px 12px}.flow-pills b{font-weight:400}.visual-footer{font-size:10px;line-height:1.6;margin-top:auto;padding-top:22px;text-align:center;color:#53604e}.ops-visual{background:#e5e7f0}.ops-head{padding:38px 0 24px;font-size:21px;letter-spacing:-.7px;display:flex;justify-content:space-around}.ops-head span{color:#9da3b8}.ops-row{display:grid;grid-template-columns:100px 1fr 1fr;gap:8px;padding:10px 0;align-items:center;font-size:11px}.ops-row>span{color:#62697a}.ops-row>div{padding:15px 8px;background:#f3f4f9;border:1px solid #cdd0df;border-radius:5px;text-align:center}.city-chips{display:flex;gap:8px;margin-top:22px;flex-wrap:wrap}.city-chips span{font-size:9px;border-radius:20px;background:#d4d8e7;padding:8px 12px}.data-visual{background:#e9e0d1}.entity{background:#f9f5ee;border:1px solid #cdbfa9;padding:17px;border-radius:5px}.entity small{display:block;font-size:8px;letter-spacing:1.5px;color:#83765e;margin-bottom:8px}.entity strong{font-size:13px;font-weight:500}.entity span{display:block;font-size:10px;color:#83765e;margin-top:8px}.main-entity{margin:25px 0 16px}.entity-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.concept .tag{background:#e9e0d1;border-color:#e9e0d1}details{border-top:1px solid var(--line);margin-top:20px}summary{cursor:pointer;list-style:none;padding:20px 0;font-size:12px;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}summary span{font-size:18px}details[open] summary span{transform:rotate(45deg)}.case-body{display:grid;grid-template-columns:1fr 1fr;gap:18px 42px;padding:14px 0 26px}h4{font-size:15px;margin:0 0 10px;font-weight:600}.case-body p{font-size:14px;line-height:1.7;margin:0;color:var(--muted)}.case-note{padding:18px 0;font-size:11px;line-height:1.7;color:var(--muted);border-top:1px solid var(--line)}.approach{background:#e8ecdf;padding:75px 0 70px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.principles>div{border-top:1px solid #a9b39c;padding-top:20px}.principles span{font-size:11px;color:var(--green)}.principles h3{font-size:24px;margin:26px 0 14px;letter-spacing:-.7px}.principles p{font-size:14px;line-height:1.7;color:var(--muted)}.lens{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #a9b39c;margin-top:50px;padding-top:36px}.lens h3{margin-top:20px;font-size:30px}.lens p{font-size:15px;line-height:1.8;color:var(--muted);align-self:end;margin:0 0 22px}.background{padding-top:90px;padding-bottom:85px}.background-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.bio h3{font-size:28px}.bio p{font-size:15px;line-height:1.8;color:var(--muted)}.bio .text-link{margin-top:24px}.timeline>div{display:grid;grid-template-columns:85px 1fr;gap:20px;border-top:1px solid var(--line);padding:22px 0}.timeline>div>span{font-size:10px;color:var(--green);padding-top:3px}.timeline p{font-size:13px;line-height:1.7;color:var(--muted);margin:0}.timeline h4{font-size:16px}.evidence{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;border-top:1px solid var(--ink);padding-top:40px;padding-bottom:70px}.evidence h2{font-size:35px;margin-top:22px}.evidence p{font-size:14px;line-height:1.8;color:var(--muted)}.evidence-right{padding-top:32px}.print-link{display:block;background:none;border:0;color:var(--muted);padding:0;margin-top:28px;cursor:pointer;font-family:inherit;font-size:12px}footer{background:#253e30;color:#f3f5e9;padding:65px 0 24px}footer .eyebrow{color:#bed6ac}footer h2{font-size:59px;margin:28px 0 34px;letter-spacing:-2.7px}.email{font-size:26px;border-bottom:1px solid #68826b;padding-bottom:12px;display:inline-flex;gap:54px}.footer-bottom{display:flex;justify-content:space-between;font-size:11px;border-top:1px solid #506454;padding-top:22px;margin-top:70px;color:#c5d2c2}@media(min-width:1400px){.hero{padding-top:90px}}@media(max-width:850px){.wrap{padding-left:24px;padding-right:24px}header{padding:22px 24px}nav{gap:18px}nav a{font-size:11px}.wordmark{font-size:22px}h1{letter-spacing:-3px}h1 em{letter-spacing:-3px}.hero-bottom{gap:25px}.hero-bottom>p{font-size:16px}.hero-aside{min-width:240px}.section-intro{gap:20px 30px}h2{font-size:34px}.project-grid{gap:25px}.project-copy h3{font-size:29px}.visual{padding:18px;min-height:355px}.ops-row{grid-template-columns:80px 1fr 1fr;font-size:9px}.ops-head{font-size:18px}.flow-pills{gap:5px;font-size:9px}.flow-pills span{padding:10px 8px}.background-grid{gap:40px}.evidence{gap:40px}}@media(max-width:620px){header{align-items:flex-start}.wordmark span{font-size:8px}nav{flex-wrap:wrap;justify-content:flex-end;max-width:210px;gap:12px 18px}.nav-contact{padding:0;border:0}nav a:nth-child(2){display:none}.hero{padding-top:52px}h1{font-size:53px;margin:28px 0;letter-spacing:-3px}h1 em{letter-spacing:-3px}.hero-bottom{display:block;padding-bottom:35px}.hero-aside{margin-top:28px}.hero-rule{font-size:8px;line-height:1.6;gap:22px}.hero-rule span:last-child{display:none}.work{padding-top:58px}.section-intro{display:block}.section-intro h2{margin:18px 0}.section-intro>p{font-size:14px}.project-grid{display:flex;flex-direction:column;gap:10px}.project-copy{padding-bottom:12px}.project-copy h3{font-size:33px}.project-top{font-size:8px;gap:12px}.tag{font-size:9px;white-space:nowrap}.visual{min-height:335px}.description{font-size:15px}.case-body{grid-template-columns:1fr;gap:25px}.project{margin-bottom:44px}.principles{grid-template-columns:1fr;gap:18px}.principles h3{margin-top:18px}.lens{grid-template-columns:1fr;gap:10px}.approach{padding:55px 0 40px}.background{padding-top:55px;padding-bottom:50px}.background-grid{grid-template-columns:1fr;gap:35px}.evidence{grid-template-columns:1fr;gap:0;padding-bottom:48px}.evidence-right{padding-top:5px}footer h2{font-size:44px}.email{font-size:22px;gap:25px}.footer-bottom{gap:20px;flex-wrap:wrap;margin-top:48px}.footer-bottom>span{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{body{background:white;font-size:11px}header,nav,.visual,.case-link,.print-link,.hero-aside,.footer-bottom{display:none}.wrap{max-width:none;padding:0}h1{font-size:40px;letter-spacing:-2px}h1 em{letter-spacing:-2px}h2{font-size:25px}h3{font-size:23px}.hero,.work,.background,.approach,.evidence,footer{padding:20px 0;background:white;color:#222}.hero-bottom{padding:0}.hero-bottom>p{font-size:13px}.hero-rule{margin-top:20px}.section-intro{margin-bottom:20px}.project-grid,.background-grid{display:block}.project{break-inside:avoid;margin-bottom:24px}.project-copy{padding:0}.description,dl{font-size:11px;margin:10px 0}.project-top{padding:12px 0}details{display:none}.timeline>div{padding:10px 0}.evidence{gap:25px}.principles p,.lens p,.bio p,.evidence p{font-size:11px}footer h2{font-size:30px}.email{font-size:17px}.section-intro>p{font-size:11px}}

/* Project imagery and process infographics */
figure{margin:0}.hero-photo{display:grid;grid-template-columns:1.5fr 1fr;margin:0 0 35px;background:#e6eadf;overflow:hidden;border-radius:3px}.hero-photo>img{display:block;width:100%;height:340px;object-fit:cover;object-position:center 42%}.hero-photo figcaption{padding:35px;display:flex;flex-direction:column;justify-content:center}.hero-photo strong{font-size:30px;line-height:1.12;font-weight:400;letter-spacing:-1px;margin:20px 0 0}.hero-photo p{font-size:13px;line-height:1.7;color:var(--muted)}.hero-photo .text-link{align-self:flex-start;margin-top:8px}.project-photo{display:flex;flex-direction:column;min-height:370px;background:#e3e6da;border-radius:3px;overflow:hidden}.project-photo>img{width:100%;height:330px;object-fit:cover;display:block;flex:1}.photo-caption{font-size:11px;padding:15px 18px;display:flex;justify-content:space-between;gap:10px;color:#53604e}.photo-caption span{font-size:9px;letter-spacing:1.2px}.system-diagram{margin-top:28px;padding:30px;background:#e6ecdf;border:1px solid #d4ddca;border-radius:3px}.diagram-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.diagram-heading .eyebrow{color:var(--green);font-size:10px}.diagram-heading p{margin:0;color:var(--muted);font-size:12px}.system-steps{display:grid;grid-template-columns:1fr 40px 1fr 40px 1fr;align-items:center;margin-top:26px}.system-steps>div{padding:22px;background:#f6f8f1;border:1px solid #cbd5c1;border-radius:4px}.step-index{display:flex;align-items:center;justify-content:center;border:1px solid #b7c6ac;border-radius:50%;width:30px;height:30px;font-size:10px;color:var(--green);margin-bottom:18px}.system-steps h4{font-size:20px;font-weight:400;letter-spacing:-.4px;margin-bottom:12px}.system-steps p{font-size:12px;line-height:1.6;margin:0 0 18px;color:var(--muted)}.system-steps small{font-size:10px;color:var(--green);display:block;border-top:1px solid #d9e0d3;padding-top:12px;line-height:1.6}.step-arrow{text-align:center;font-size:22px;color:#6c8060}.diagram-insight{margin-top:24px;border-top:1px solid #c4ceba;padding-top:18px;display:flex;gap:20px;align-items:baseline;font-size:12px;line-height:1.6}.diagram-insight strong{font-weight:500;white-space:nowrap}.diagram-insight span{flex:1;color:var(--muted)}.diagram-insight small{font-size:9px;color:var(--green);white-space:nowrap}.delivery-system{background:#e7e9f0;border-color:#d3d7e3}.delivery-system .eyebrow{color:#59667a}.delivery-map{margin-top:24px}.delivery-map>div{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:20px;padding:18px 0;border-bottom:1px solid #cdd2df;font-size:12px;line-height:1.6}.delivery-map strong{font-weight:500}.delivery-map .map-axis{font-size:9px;letter-spacing:1.2px;color:#687489;padding:0 0 12px}.delivery-map>div>span{color:#687489}.delivery-cities{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;font-size:10px;color:#59667a}.delivery-cities>span{border:1px solid #b5bdcf;border-radius:20px;padding:9px 16px;letter-spacing:1px}.delivery-cities>div{text-align:center}.fieldwork{padding-top:15px;padding-bottom:75px}.photo-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.photo-open{border:0;padding:0;cursor:pointer;background:#e5e7df;width:100%;position:relative;display:block;overflow:hidden;border-radius:3px}.photo-open img{width:100%;height:290px;object-fit:cover;display:block;transition:transform .25s}.photo-open:hover img{transform:scale(1.035)}.photo-open>span{position:absolute;right:12px;bottom:12px;border-radius:50%;width:30px;height:30px;background:#f6f5f0;display:grid;place-items:center;font-size:16px}.photo-gallery figcaption{padding-top:16px}.photo-gallery small{font-size:9px;letter-spacing:1.2px;color:var(--green);display:block;margin-bottom:9px}.photo-gallery strong{font-size:14px;line-height:1.5;font-weight:400;display:block}.photo-dialog{border:0;border-radius:5px;background:var(--paper);padding:50px 18px 12px;width:min(950px,94vw);max-height:92vh;color:var(--ink)}.photo-dialog::backdrop{background:rgba(15,25,18,.8)}.photo-dialog img{display:block;max-height:72vh;width:100%;object-fit:contain}.photo-dialog p{font-size:12px;text-align:center;line-height:1.5}.photo-close{position:absolute;top:14px;right:18px;background:none;border:0;font:inherit;font-size:12px;cursor:pointer;padding:5px}.photo-dialog:focus{outline:none}
@media(max-width:850px){.hero-photo figcaption{padding:24px}.hero-photo strong{font-size:25px}.hero-photo>img{height:330px}.photo-gallery{grid-template-columns:repeat(2,1fr)}.system-steps>div{padding:16px}.system-steps h4{font-size:18px}.diagram-heading{display:block}.diagram-heading p{margin-top:10px}.diagram-insight{flex-wrap:wrap}.diagram-insight small{width:100%}.system-steps{grid-template-columns:1fr 26px 1fr 26px 1fr}}
@media(max-width:620px){.hero-photo{grid-template-columns:1fr}.hero-photo>img{height:250px}.hero-photo figcaption{padding:25px}.hero-photo strong{font-size:29px}.hero-photo strong br{display:none}.hero-photo .eyebrow{font-size:9px}.photo-caption{font-size:10px;flex-direction:column;gap:6px}.project-photo>img{height:280px}.system-diagram{padding:20px}.system-steps{grid-template-columns:1fr;gap:10px}.step-arrow{transform:rotate(90deg);line-height:1}.system-steps>div{padding:18px}.step-index{float:right;margin:0}.system-steps p{margin-bottom:12px}.diagram-insight{gap:8px}.diagram-insight span{flex:auto;width:100%}.delivery-map>div{grid-template-columns:1fr;gap:5px;padding:15px 0}.delivery-map .map-axis{display:none}.delivery-map>div>span:last-child:before{content:'Handoff: ';font-weight:600}.delivery-cities{flex-wrap:wrap;justify-content:flex-start}.delivery-cities>div{order:3;width:100%;text-align:left;line-height:1.6}.photo-gallery{gap:24px 14px}.photo-open img{height:230px}.photo-gallery strong{font-size:12px}.photo-gallery small{font-size:8px}.fieldwork{padding-bottom:50px}}
@media(prefers-reduced-motion:reduce){.photo-open img{transition:none}}
@media print{.hero-photo,.fieldwork,.photo-dialog,.project-photo{display:none}.system-diagram{padding:12px;background:white;margin:15px 0}.system-steps>div{padding:10px}.system-steps h4{font-size:13px}.system-steps p,.diagram-insight,.delivery-map>div{font-size:10px}.diagram-heading p{font-size:10px}.system-diagram{break-inside:avoid}}

/* Product systems case studies */
.product-primary .tag{background:#e8eddf;border-color:#d2dcc4}.product-primary .visual{min-height:430px}.editorial-visual{background:#dce7d7}.hospitality-visual{background:#e1e6f0}.bidding-visual{background:#eae1d5}.system-title{font-size:30px;line-height:1.1;letter-spacing:-1px;margin:25px 0 24px}.workflow-lanes>div{display:flex;gap:16px;padding:16px 0;border-top:1px solid #b9cbb0}.workflow-lanes>div>span{font-size:10px;color:#5c7450;padding-top:3px}.workflow-lanes h4{font-size:15px;font-weight:500;margin:0 0 6px}.workflow-lanes p{font-size:11px;color:#62715c;margin:0;line-height:1.6}.live-center{border:1px solid #b9c5d7;background:#f3f5fa;border-radius:4px;padding:24px;position:relative}.live-center strong{font-size:21px;font-weight:400;display:block;margin-bottom:8px}.live-center small{font-size:11px;color:#66738a}.status-dot{position:absolute;right:20px;top:24px;width:8px;height:8px;border-radius:50%;background:#426a42}.connected-domains{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.connected-domains>div{border:1px solid #bdc8da;border-radius:4px;padding:15px}.connected-domains small{display:block;font-size:8px;letter-spacing:1px;color:#66738a;margin-bottom:8px}.connected-domains strong{font-size:14px;font-weight:400}.tool-strip{display:flex;gap:10px;margin-top:18px}.tool-strip span{font-size:10px;background:#ced8e9;border-radius:20px;padding:7px 12px}.bidding-block{border:1px solid #cbb99f;background:#f8f3eb;padding:21px;border-radius:4px;margin-bottom:12px}.bidding-block small{font-size:8px;letter-spacing:1.2px;color:#89765d;display:block;margin-bottom:10px}.bidding-block strong{font-size:20px;font-weight:400;display:block}.bidding-block p{font-size:11px;line-height:1.6;color:#89765d;margin:10px 0 0}.bidding-block.secondary{background:transparent}.b2b-bridge{padding-top:10px;padding-bottom:75px}.b2b-bridge>.eyebrow{color:var(--green)}.bridge-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin:25px 0 35px}.bridge-intro p{font-size:15px;line-height:1.8;color:var(--muted);margin:0;max-width:470px}.bridge-table>div{display:grid;grid-template-columns:1fr 1.4fr 1.5fr;gap:30px;border-bottom:1px solid var(--line);padding:22px 0;font-size:13px;line-height:1.6}.bridge-table .bridge-head{font-size:9px;letter-spacing:1.3px;border-top:1px solid var(--ink);color:var(--green);padding:15px 0}.bridge-table>div>span{color:var(--muted)}.bridge-table a:hover{color:var(--green)}
@media(max-width:850px){.system-title{font-size:26px}.bridge-intro{gap:30px}.bridge-table>div{gap:20px;font-size:12px}nav{gap:16px}.timeline>div>span{font-size:9px}}
@media(max-width:620px){.product-primary .visual{min-height:390px}.bridge-intro{grid-template-columns:1fr;gap:20px}.bridge-table>div{grid-template-columns:1fr;gap:6px}.bridge-table .bridge-head{display:none}.bridge-table{border-top:1px solid var(--ink)}.bridge-table a{font-weight:600}.b2b-bridge{padding-bottom:50px}.hero h1{font-size:47px}}
@media print{.b2b-bridge{padding:20px 0}.bridge-intro p,.bridge-table>div{font-size:11px}.bridge-table{break-inside:avoid}}

.asana-experience{display:block;font-size:9px;letter-spacing:1.2px;background:#eaf1e4;border:1px solid #b9cbb0;padding:10px;margin-bottom:12px;border-radius:4px;color:#426a42}
