:root{--terracotta:#c0552f;--terracotta-deep:#8e3a1c;--brown:#3a1f16;--tint:#f6ece6;--soft:#e8a88c;--ink:#1c1c1c;--white:#fff;--muted:#5e5e60;--rule:#e4e1dd;--rule-on:#fff3;--sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--container:1560px;--gutter:clamp(20px, 3.4vw, 56px);--gap:clamp(20px, 2.2vw, 32px);--section:clamp(80px, 8.5vw, 136px);--header:76px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-soft:cubic-bezier(.33, 1, .68, 1)}.tone-white{--bg:var(--white);--fg:var(--ink);--sub:var(--muted);--eyebrow:var(--terracotta);--mark:var(--terracotta);--line:var(--rule);--focus:var(--ink)}.tone-tint{--bg:var(--tint);--fg:var(--ink);--sub:var(--muted);--eyebrow:var(--terracotta-deep);--mark:var(--terracotta);--line:#e6d7ce;--focus:var(--ink)}.tone-terracotta{--bg:var(--terracotta);--fg:var(--white);--sub:var(--white);--eyebrow:var(--white);--mark:var(--white);--line:var(--rule-on);--focus:var(--white)}.tone-deep{--bg:var(--terracotta-deep);--fg:var(--white);--sub:#ffffffd1;--eyebrow:var(--tint);--mark:var(--soft);--line:var(--rule-on);--focus:var(--white)}.tone-ink{--bg:var(--ink);--fg:var(--white);--sub:#ffffffb8;--eyebrow:var(--soft);--mark:var(--soft);--line:#ffffff24;--focus:var(--white)}.tone-brown{--bg:var(--brown);--fg:var(--white);--sub:#ffffffbd;--eyebrow:var(--soft);--mark:var(--soft);--line:#ffffff24;--focus:var(--white)}[class*=tone-]{background:var(--bg);color:var(--fg)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 16px)}body{background:var(--white);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11";margin:0;font-size:17px;line-height:1.6;overflow-x:clip}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}button,select,input,textarea{font:inherit;color:inherit}::selection{background:var(--terracotta);color:var(--white)}:focus-visible{outline:2px solid var(--focus,var(--ink));outline-offset:3px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip{z-index:100;background:var(--ink);color:var(--white);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:12px 18px;font-size:12px;position:absolute;top:10px;left:-9999px}.skip:focus{left:10px}.wrap{max-width:var(--container);padding:0 var(--gutter);margin:0 auto}.section{padding:var(--section) 0}.eyebrow{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--eyebrow);align-items:center;gap:12px;font-size:12px;font-weight:500;line-height:1.4;display:flex}.eyebrow:before{content:"";background:var(--mark);flex:none;width:18px;height:1px}.tone-terracotta .eyebrow{font-weight:600}.mono{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:12px}.display{letter-spacing:-.038em;text-wrap:balance;font-size:clamp(42px,6vw,100px);font-weight:700;line-height:.98}.headline{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(32px,3.9vw,58px);font-weight:700;line-height:1.03}.display .light,.headline .light{letter-spacing:-.03em;font-weight:300;display:block}.lead{color:var(--sub);text-wrap:pretty;max-width:46ch;font-size:clamp(18px,1.3vw,21px);line-height:1.5}.title{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(20px,1.6vw,24px);font-weight:700;line-height:1.2}.body-sub{color:var(--sub);text-wrap:pretty}.section-head{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;row-gap:24px;display:grid}.section-head>:first-child{grid-column:1/8;gap:20px;display:grid}.section-head>:last-child:not(:first-child){grid-column:9/13}.section-head--link>:last-child:not(:first-child){grid-column:9/13;justify-self:end}.btn{min-height:50px;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:12px;padding:0 24px;font-size:12.5px;font-weight:600;line-height:1;transition:background-color .22s,color .22s,border-color .22s;display:inline-flex}.btn svg,.link svg{width:14px;height:14px;transition:transform .32s var(--ease-out);flex:none}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--terracotta);color:var(--white)}.btn--outline{color:var(--fg);background:0 0;border-color:currentColor}.btn--light{background:var(--white);color:var(--ink)}.btn--outline-light{color:var(--white);background:0 0;border-color:#ffffffd9}.btn--small{min-height:44px;padding:0 18px;font-size:12px}@media (hover:hover) and (pointer:fine){.btn--primary:hover{background:var(--terracotta-deep)}.btn--outline:hover{background:var(--terracotta-deep);border-color:var(--terracotta-deep);color:var(--white)}.btn--light:hover{background:var(--tint);color:var(--terracotta-deep)}.btn--outline-light:hover{background:var(--white);border-color:var(--white);color:var(--terracotta-deep)}.btn:hover svg,.link:hover svg{transform:translate(4px)}}.link{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg);background:linear-gradient(var(--mark), var(--mark)) left bottom / 100% 1px no-repeat;transition:background-size .32s var(--ease-out);align-items:center;gap:10px;padding:6px 0;font-size:12px;font-weight:500;display:inline-flex}@media (hover:hover) and (pointer:fine){.link:hover{background-position:100% 100%;background-size:0% 1px}}.credit{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sub);font-size:11px;font-weight:500;line-height:1.5}.duo{background:var(--terracotta);isolation:isolate;position:relative;overflow:hidden}.duo img{object-fit:cover;filter:grayscale()contrast(1.08)brightness(1.06);mix-blend-mode:multiply;width:100%;height:100%}.duo:after{content:"";background:var(--brown);mix-blend-mode:lighten;pointer-events:none;position:absolute;inset:0}.wash{background:var(--tint);position:relative;overflow:hidden}.wash img{object-fit:cover;width:100%;height:100%;transition:transform 1.4s var(--ease-soft)}.wash:after{content:"";background:var(--terracotta);mix-blend-mode:multiply;opacity:.12;pointer-events:none;transition:opacity .6s;position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.zoom:hover .wash img,.zoom:focus-visible .wash img{transform:scale(1.04)}.zoom--tint:hover .wash:after,.zoom--tint:focus-visible .wash:after{opacity:.55}}.lockup{flex:none;display:inline-flex}.lockup img{width:auto;height:58px}.header .lockup{align-self:flex-start}.header .lockup img{height:calc(var(--header) - 6px)}.footer__brand .lockup img{height:112px}.header{z-index:50;background:var(--white);border-bottom:1px solid var(--rule);--focus:var(--ink);position:sticky;top:0}.header__bar{height:var(--header);justify-content:space-between;align-items:center;gap:24px;display:flex}.header__nav{align-items:stretch;gap:clamp(10px,1.6vw,28px);height:100%;display:flex}.header__nav>ul{align-items:stretch;gap:clamp(4px,1.2vw,20px);display:flex}.header__nav>ul>li{display:flex}.navlink{letter-spacing:-.005em;height:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 6px;font-size:15px;font-weight:500;display:inline-flex;position:relative}.navlink:after{content:"";background:var(--terracotta);transform-origin:0;height:2px;transition:transform .32s var(--ease-out);position:absolute;bottom:-1px;left:6px;right:6px;transform:scaleX(0)}.navlink[aria-current=page]:after,.navlink[data-active]:after,.navlink[aria-expanded=true]:after{transform:scaleX(1)}.navlink svg{width:10px;height:10px;transition:transform .24s var(--ease-out)}.navlink[aria-expanded=true] svg{transform:rotate(180deg)}@media (hover:hover) and (pointer:fine){.navlink:hover:after{transform:scaleX(1)}}.header__cta{align-self:center}.header__toggle{min-height:44px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0 4px;font-size:12px;font-weight:500;display:none}.header__toggle span[aria-hidden]{gap:5px;width:20px;display:grid}.header__toggle span[aria-hidden] i{height:1.5px;transition:transform .24s var(--ease-out);background:currentColor;display:block}.header__toggle[aria-expanded=true] span[aria-hidden] i:first-child{transform:translateY(3.25px)rotate(45deg)}.header__toggle[aria-expanded=true] span[aria-hidden] i:last-child{transform:translateY(-3.25px)rotate(-45deg)}.mega{background:var(--white);border-bottom:1px solid var(--rule);animation:mega-in .26s var(--ease-out);position:absolute;top:100%;left:0;right:0}.mega__inner{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));padding-top:40px;padding-bottom:48px;display:grid}.mega__intro{grid-column:1/5;align-content:start;gap:14px;padding-right:24px;display:grid}.mega__intro p{color:var(--muted);max-width:34ch}.mega__links{column-gap:var(--gap);grid-column:5/13;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;display:grid}.mega__links a{border-top:1px solid var(--rule);align-items:baseline;gap:14px;padding:14px 0;font-size:15.5px;font-weight:500;transition:color .2s;display:flex}.mega__links a .mono{color:var(--terracotta);font-size:11px}@media (hover:hover) and (pointer:fine){.mega__links a:hover{color:var(--terracotta-deep)}}@keyframes mega-in{0%{opacity:0;transform:translateY(-6px)}}.drawer{inset:var(--header) 0 0 0;z-index:49;background:var(--white);border-top:1px solid var(--rule);padding:8px var(--gutter) 40px;position:fixed;overflow-y:auto}.drawer[hidden]{display:none}.drawer details{border-bottom:1px solid var(--rule)}.drawer summary,.drawer__solo{letter-spacing:-.02em;cursor:pointer;border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;min-height:64px;font-size:22px;font-weight:600;list-style:none;display:flex}.drawer details summary{border-bottom:0}.drawer summary::-webkit-details-marker{display:none}.drawer summary svg{width:12px;height:12px;transition:transform .24s var(--ease-out)}.drawer details[open] summary svg{transform:rotate(180deg)}.drawer details ul{padding:0 0 16px}.drawer details a{color:var(--muted);padding:10px 0;font-size:16px;display:block}.drawer .btn{width:100%;margin-top:32px}.hero{isolation:isolate;min-height:min(calc(100svh - var(--header)), 940px);color:var(--white);--focus:var(--white);flex-direction:column;justify-content:flex-end;display:flex;position:relative}.hero__media{z-index:-2;position:absolute;inset:0}.hero__media img{height:100%}.hero__shade{z-index:-1;background:linear-gradient(#8e3a1c00 54%,#8e3a1ce6 100%),linear-gradient(64deg,#8e3a1cf0 0%,#8e3a1cb3 34%,#c0552f2e 64%,#c0552f00 82%);position:absolute;inset:0}.hero__copy{justify-items:start;gap:28px;padding-top:140px;padding-bottom:clamp(56px,7vw,104px);display:grid}.hero .eyebrow{--eyebrow:var(--tint);--mark:var(--soft)}.hero__copy .display{max-width:13ch}.hero__copy .lead{color:#ffffffeb;max-width:40ch}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.hero__credit{right:var(--gutter);text-align:right;color:#ffffffdb;max-width:min(46ch,60%);position:absolute;bottom:22px}.stats{padding:0}.stats__grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat{border-left:1px solid var(--rule-on);align-content:end;gap:14px;padding:clamp(32px,3.4vw,52px) clamp(20px,2.2vw,36px);display:grid}.stat:first-child{border-left:0;padding-left:0}.stat__value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(44px,4.6vw,80px);font-weight:700;line-height:.9}.stat__label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:600}.logos{border-bottom:1px solid var(--rule);padding:clamp(56px,5.4vw,84px) 0}.logos .eyebrow{color:var(--muted);justify-content:center}.logos .eyebrow:after{content:"";background:var(--mark);flex:none;width:18px;height:1px}.logos__grid{--cols:8;--gap:48px;justify-content:center;align-items:center;gap:40px var(--gap);flex-wrap:wrap;margin-top:40px;display:flex}.logos__grid li{flex:0 0 calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols));justify-content:center;display:flex}.logos__grid img{filter:grayscale()contrast(1.1);width:auto;max-width:min(132px,100%);max-height:44px;transition:filter .4s}@media (hover:hover) and (pointer:fine){.logos__grid img:hover{filter:grayscale(0)}}.svc-grid{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(48px,5vw,72px);display:grid}.svc{background:var(--white);border-top:2px solid var(--terracotta);min-height:360px;color:var(--ink);flex-direction:column;gap:18px;padding:30px 28px 28px;transition:background-color .32s,color .32s,border-color .32s;display:flex;position:relative}.svc__num{font-family:var(--mono);letter-spacing:.12em;color:var(--terracotta);font-size:13px;font-weight:600;transition:color .32s}.svc .title{max-width:14ch}.svc__summary{color:var(--muted);font-size:18px;line-height:1.45;transition:color .32s}.svc__foot{gap:22px;margin-top:auto;display:grid}.svc__span{grid-template-columns:repeat(6,1fr);gap:3px;display:grid}.svc__span i{background:var(--rule);height:4px;transition:background-color .32s}.svc__span i[data-on]{background:var(--terracotta)}.svc__stages{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);justify-content:space-between;font-size:10.5px;transition:color .32s;display:flex}.svc .link{--fg:var(--ink);--mark:var(--terracotta);justify-self:start}.svc:hover,.svc:focus-within{background:var(--terracotta);color:var(--white);border-color:var(--terracotta-deep)}.svc:hover .svc__num,.svc:hover .svc__summary,.svc:hover .svc__stages,.svc:focus-within .svc__num,.svc:focus-within .svc__summary,.svc:focus-within .svc__stages{color:var(--white)}.svc:hover .svc__span i,.svc:focus-within .svc__span i{background:#ffffff47}.svc:hover .svc__span i[data-on],.svc:focus-within .svc__span i[data-on]{background:var(--white)}.svc:hover .link,.svc:focus-within .link{--fg:var(--white);--mark:var(--white);--focus:var(--white)}.svc .link:before{content:"";position:absolute;inset:0}.diff{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:40px;display:grid}.diff__head{grid-column:1/6;align-content:start;gap:20px;display:grid}.diff__list{column-gap:var(--gap);grid-column:6/13;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.diff__item{border-top:2px solid var(--terracotta);align-content:start;gap:14px;padding-top:22px;display:grid}.diff__item:nth-child(2){margin-top:56px}.diff__item:nth-child(3){margin-top:112px}.diff__n{font-family:var(--mono);letter-spacing:.12em;color:var(--terracotta);font-size:12px;font-weight:500}.metrics{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;row-gap:56px;display:grid}.metrics__copy{grid-column:1/6;justify-items:start;gap:24px;display:grid}.metrics__logo{width:200px;display:block}.metrics__logo img{width:100%;height:auto;display:block}.metrics__steps{border-top:1px solid var(--line);width:100%;margin-top:12px}.metrics__steps li{border-bottom:1px solid var(--line);align-items:baseline;gap:22px;padding:16px 0;font-size:18px;font-weight:500;display:flex}.metrics__steps .mono{color:var(--soft)}.metrics__steps .metrics__result{background:var(--terracotta);color:var(--white);border:0;padding:18px 20px;font-weight:700}.metrics__panel{border:1px solid var(--line);background:#ffffff06;grid-column:7/13}.panel__head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:16px 22px;display:flex}.panel__head .mono:first-child{color:var(--soft);font-weight:500}.panel__head .mono:last-child{color:#fff9;font-size:11px}.panel__bars{align-items:flex-end;gap:8px;height:190px;padding:28px 22px 0;display:flex}.panel__bars i{height:var(--h);transform-origin:bottom;background:#fff3;flex:1}.panel__bars i[data-hi]{background:var(--terracotta)}.panel__axis{border-top:1px solid var(--line);color:#fff9;justify-content:space-between;margin:0 22px;padding:12px 0 20px;font-size:11px;display:flex}.panel__rows{border-top:1px solid var(--line)}.panel__row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;padding:16px 22px;font-size:15px;display:grid}.panel__row:last-child{border-bottom:0}.panel__row .mono{color:#ffffffb3;align-self:center;font-size:11px}.panel__track{background:#ffffff1f;grid-column:1/-1;height:3px}.panel__track i{height:100%;width:var(--w);background:var(--c,var(--soft));transform-origin:0;display:block}.sectors{gap:clamp(36px, 3.6vw, 56px) var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(40px,4.4vw,64px);display:grid}.sector{flex-direction:column;height:100%;display:flex}.sector .wash{aspect-ratio:4/3}.sector__rule{background:var(--terracotta);height:2px;margin-top:18px}.sector__row{justify-content:space-between;align-items:baseline;gap:16px;margin-top:16px;display:flex}.sector__name{letter-spacing:-.015em;font-size:19px;font-weight:700;line-height:1.2}.sector__code{font-family:var(--mono);letter-spacing:.12em;color:var(--terracotta);font-size:12px;font-weight:500}.sector__tease{color:var(--muted);margin-top:8px;font-size:15.5px;line-height:1.5}@media (hover:hover) and (pointer:fine){.sector:hover .sector__name{color:var(--terracotta-deep)}}.work__head{gap:20px;display:grid}.work__head .headline{max-width:22ch}.work__list{gap:clamp(64px,7vw,120px);margin-top:clamp(48px,5.4vw,88px);display:grid}.case{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;display:grid}.case__figure{grid-area:1/1/auto/8;gap:12px;display:grid}.case__figure .wash{aspect-ratio:16/11}.case__panel{z-index:1;grid-area:1/8/auto/13;align-content:start;justify-items:start;gap:18px;padding:clamp(28px,3vw,48px);display:grid;position:relative}.case--flip .case__figure{grid-column:6/13}.case--flip .case__panel{grid-column:1/6}.case__index{letter-spacing:-.04em;font-size:clamp(44px,4vw,64px);font-weight:300;line-height:1}.case__name{letter-spacing:-.025em;text-wrap:balance;font-size:clamp(26px,2.4vw,38px);font-weight:700;line-height:1.06}.case__meta{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:12px;line-height:1.5}.case__role{gap:8px;display:grid}.case__role p{text-wrap:pretty}.tags{flex-wrap:wrap;gap:8px;display:flex}.tag{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid;padding:7px 11px 6px;font-size:11px;font-weight:500;line-height:1.2}.work--a .case__panel{background:var(--tint);color:var(--ink);--fg:var(--ink);--sub:var(--muted);--eyebrow:var(--terracotta-deep);--mark:var(--terracotta);--focus:var(--ink);margin-left:calc(var(--gap) * -2.5)}.work--a .case--flip .case__panel{margin-left:0;margin-right:calc(var(--gap) * -2.5)}.work--a .case__index{color:var(--terracotta)}.work--a .case__meta{color:var(--muted)}.work--a .tag{color:var(--terracotta-deep)}.work--a .case__figure .credit{color:#ffffffd1}.work--a .case--flip .case__figure .credit{padding-left:calc(var(--gap) * 2.5);text-align:right}.work--a .case:not(.case--flip) .case__figure .credit{padding-right:calc(var(--gap) * 2.5)}.work--b .case__panel{border-top:2px solid var(--terracotta);padding-left:clamp(8px,2vw,40px);padding-right:0}.work--b .case--flip .case__panel{padding-left:0;padding-right:clamp(8px,2vw,40px)}.work--b .case__index{color:var(--terracotta)}.work--b .case__meta{color:var(--muted)}.work--b .tag{color:var(--terracotta-deep);border-color:var(--terracotta)}.insights{gap:var(--gap);grid-template-columns:1.4fr 1fr 1fr;margin-top:clamp(40px,4.4vw,64px);display:grid}.insight{border-top:2px solid var(--terracotta);flex-direction:column;gap:16px;padding-top:24px;display:flex;position:relative}.insight .mono{color:var(--muted);font-size:11px}.insight__title{letter-spacing:-.015em;text-wrap:balance;font-size:21px;font-weight:700;line-height:1.25}.insight:first-child .insight__title{letter-spacing:-.025em;max-width:18ch;font-size:clamp(24px,2.2vw,32px);line-height:1.12}.insight p{color:var(--muted)}.insight .link{align-self:flex-start;margin-top:auto}.insight .link:before{content:"";position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.insight:hover .insight__title{color:var(--terracotta-deep)}}.cta-band{isolation:isolate;position:relative;overflow:hidden}.watermark{--fade:linear-gradient(90deg, transparent, #000 42%);z-index:-1;pointer-events:none;background:var(--bg);width:min(64%,1040px);position:absolute;top:0;bottom:0;right:0}.watermark:before{content:"";-webkit-mask-image:var(--fade);-webkit-mask-image:var(--fade);mask-image:var(--fade);background-image:linear-gradient(#ffffff24 1px,#0000 1px),linear-gradient(90deg,#ffffff24 1px,#0000 1px),linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-position:right -1px top -1px;background-size:120px 120px,120px 120px,24px 24px,24px 24px;position:absolute;inset:0}.watermark img{object-fit:cover;object-position:left center;filter:grayscale()invert()contrast(1.5);mix-blend-mode:screen;opacity:.42;width:100%;height:100%;-webkit-mask-image:var(--fade);-webkit-mask-image:var(--fade);mask-image:var(--fade);position:relative}.office-map{--fade:linear-gradient(90deg, #0000004d, #000 48%);width:min(88%,1320px);-webkit-mask-image:var(--fade);-webkit-mask-image:var(--fade);mask-image:var(--fade)}.office-map:before{opacity:.6}.office-map svg{width:100%;height:100%;display:block;position:relative;overflow:visible}.office-map image{opacity:.2}.office-map__links path{fill:none;stroke:var(--white);stroke-width:1.2px;stroke-dasharray:2 5;stroke-linecap:round;opacity:.4}.office-map__node circle{fill:var(--white);opacity:.55}.office-map__node .office-map__ring{fill:none;stroke:var(--white);stroke-width:1px;opacity:.35}.office-map__node .office-map__pulse{fill:none;stroke:var(--white);stroke-width:1px;opacity:0;transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.office-map__node .office-map__pulse{animation:3.6s ease-out infinite office-pulse}}@keyframes office-pulse{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(4)}}.cta{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;row-gap:32px;padding-top:clamp(64px,6.4vw,104px);padding-bottom:clamp(64px,6.4vw,104px);display:grid}.cta .headline{grid-column:1/8;max-width:16ch}.cta__side{grid-column:9/13;justify-items:start;gap:24px;display:grid}.cta__side p{font-size:19px;line-height:1.5}.footer{padding:clamp(64px,6vw,96px) 0 0}.footer__top{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:48px;display:grid}.footer__brand{grid-column:1/5;align-content:start;justify-items:start;gap:24px;display:grid}.footer__brand p{max-width:26ch;font-size:19px;line-height:1.45}.footer__cols{column-gap:var(--gap);grid-column:6/13;grid-template-columns:repeat(4,minmax(0,1fr));row-gap:40px;display:grid}.footer__cols h2{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:16px;font-size:12px;font-weight:500}.footer__cols a{color:var(--sub);padding:5px 0;font-size:15px;transition:color .2s;display:block}@media (hover:hover) and (pointer:fine){.footer__cols a:hover,.footer__brand a:hover{color:var(--white)}}.footer__bottom{border-top:1px solid var(--line);color:var(--sub);flex-wrap:wrap;justify-content:space-between;gap:12px 32px;margin-top:clamp(56px,6vw,88px);padding:22px 0 28px;display:flex}.footer__bottom .credit{color:var(--sub)}.page-hero{isolation:isolate;--focus:var(--white);position:relative;overflow:hidden}.page-hero__media{z-index:-2;position:absolute;inset:0 0 0 38%}.page-hero__media img{height:100%}.page-hero:before{content:"";z-index:-1;background:linear-gradient(90deg, var(--terracotta) 36%, #c0552fb3 56%, #c0552f00 100%);position:absolute;inset:0}.page-hero__copy{justify-items:start;gap:24px;padding-top:clamp(64px,7vw,112px);padding-bottom:clamp(56px,6vw,96px);display:grid}.page-hero .display{max-width:15ch;font-size:clamp(40px,5vw,84px)}.page-hero .lead{color:var(--white)}.crumbs{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;gap:8px 14px;font-size:12px;font-weight:600;display:flex}.crumbs a{border-bottom:1px solid #fff9;padding:4px 0}.crumbs span[aria-hidden]{opacity:.7}.jump{top:var(--header);z-index:20;background:var(--white);border-bottom:1px solid var(--rule);position:sticky}.jump ul{flex-wrap:wrap;gap:6px;padding-top:10px;padding-bottom:10px;display:flex}.jump a{border:1px solid var(--rule);min-height:36px;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;align-items:center;padding:0 14px;font-size:11.5px;font-weight:500;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}@media (hover:hover) and (pointer:fine){.jump a:hover{background:var(--terracotta);border-color:var(--terracotta);color:var(--white)}}@media (width<=900px){.jump ul{scroll-snap-type:x proximity;scroll-padding-inline:var(--gutter);overscroll-behavior-x:contain;scrollbar-width:none;--fade-l:0px;--fade-r:48px;-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--fade-l), #000 calc(100% - var(--fade-r)), transparent);-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--fade-l), #000 calc(100% - var(--fade-r)), transparent);mask-image:linear-gradient(to right, transparent, #000 var(--fade-l), #000 calc(100% - var(--fade-r)), transparent);flex-wrap:nowrap;overflow-x:auto}.jump ul::-webkit-scrollbar{display:none}.jump ul[data-start=false]{--fade-l:48px}.jump ul[data-end=true]{--fade-r:0px}.jump li{scroll-snap-align:start}.jump a{min-height:40px}}.portfolio-sector{scroll-margin-top:calc(var(--header) + var(--jump,72px))}@media (width>=901px){.portfolio-sector{--jump:112px}}.cards{gap:clamp(36px, 3.4vw, 52px) var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(36px,4vw,56px);display:grid}.card{flex-direction:column;height:100%;display:flex}.card .wash{aspect-ratio:4/3}.card__body{border-top:2px solid var(--terracotta);gap:6px;margin-top:16px;padding-top:16px;display:grid}.card__name{letter-spacing:-.01em;font-size:17px;font-weight:700;line-height:1.25}.card__meta{color:var(--sub);font-size:14.5px}.card__sf{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--eyebrow);font-size:11.5px;font-weight:500}@media (hover:hover) and (pointer:fine){.card:hover .card__name{color:var(--terracotta-deep)}}.project-figure{gap:12px;display:grid}.project-figure .wash{aspect-ratio:16/8}.project-body{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:40px;margin-top:clamp(48px,5vw,80px);display:grid}.project-body__text{grid-column:1/8;align-content:start;gap:20px;display:grid}.project-body__text p:not(.eyebrow){text-wrap:pretty;max-width:40ch;font-size:clamp(19px,1.5vw,23px);line-height:1.5}.project-body__aside{grid-column:9/13;align-content:start;gap:24px;display:grid}.facts{border-top:2px solid var(--terracotta)}.facts>div{border-bottom:1px solid var(--rule);grid-template-columns:110px 1fr;gap:16px;padding:14px 0;display:grid}.facts dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:3px;font-size:11px;font-weight:500}.facts dd{font-weight:500}.facts dd a{border-bottom:1px solid var(--terracotta)}.service{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;row-gap:clamp(40px,4.4vw,72px);display:grid}.service__text{grid-column:1/6;align-content:start;gap:22px;display:grid}.service__text .headline{font-size:clamp(28px,2.8vw,42px)}.service__text p:not(.eyebrow){color:var(--sub);text-wrap:pretty;max-width:46ch;font-size:clamp(18px,1.3vw,20px);line-height:1.6}.service__figure{background:var(--tint);border:1px solid var(--rule);grid-column:7/13;overflow:hidden}.service__figure img{width:100%;height:auto;display:block}.service__aside{column-gap:var(--gap);border-top:2px solid var(--terracotta);grid-column:1/13;grid-template-columns:repeat(12,minmax(0,1fr));row-gap:40px;padding-top:clamp(32px,3vw,48px);display:grid}.service__support{grid-column:1/8;align-content:start;gap:20px;display:grid}.service__support ul{column-gap:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.service__support li{border-bottom:1px solid var(--rule);align-items:baseline;gap:14px;padding:14px 0;font-size:17px;font-weight:500;display:flex}.service__support li:before{content:"";background:var(--terracotta);flex:none;width:8px;height:8px;transform:translateY(-1px)}.service__span{grid-column:9/13;align-content:start;gap:20px;display:grid}.svc-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.directory{gap:clamp(40px, 4vw, 64px) var(--gap);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(40px,4.4vw,64px);display:grid}.person{align-content:start;display:grid}.person__photo{aspect-ratio:4/5;background:var(--tint);place-items:center;display:grid;position:relative;overflow:hidden}.person__photo img{object-fit:cover;width:100%;height:100%;transition:transform 1.4s var(--ease-soft)}.person__photo:after{content:"";background:var(--terracotta);transform-origin:0;height:4px;transition:transform .52s var(--ease-out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.person__photo span{letter-spacing:-.04em;color:var(--terracotta-deep);font-size:clamp(56px,6vw,96px);font-weight:300}.person__text{border-top:2px solid var(--terracotta);gap:6px;padding-top:18px;display:grid}.person__region{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--eyebrow);font-size:11.5px;font-weight:600;line-height:1.5}.person__name{letter-spacing:-.015em;font-size:clamp(20px,1.6vw,24px);font-weight:700;line-height:1.2}.person__role{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sub);margin-top:2px;font-size:11.5px;font-weight:500;line-height:1.5}@media (hover:hover) and (pointer:fine){.person:hover .person__photo img{transform:scale(1.035)}.person:hover .person__photo:after{transform:scaleX(1)}}.places{gap:clamp(48px,5vw,80px);margin-top:clamp(40px,4.4vw,64px);display:grid}.places__head{border-bottom:2px solid var(--terracotta);justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:14px;display:flex}.places__head .mono{color:var(--eyebrow)}.places__grid{gap:var(--gap);margin-top:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.place:first-child:not(:nth-last-child(2)){grid-area:span 2/span 2}.place{flex-direction:column;display:flex}.place .wash{aspect-ratio:4/3}.place:first-child:not(:nth-last-child(2)) .wash{aspect-ratio:auto;flex:1;min-height:240px}.place:first-child:not(:nth-last-child(2)) .wash img{position:absolute;inset:0}.place--wide{grid-column:span 2}.place--wide .wash{aspect-ratio:16/9}.place:first-child:nth-last-child(2),.place:first-child:nth-last-child(2)~.place{grid-column:span 2}.place:first-child:nth-last-child(2) .wash,.place:first-child:nth-last-child(2)~.place .wash{aspect-ratio:16/9}@media (hover:hover) and (pointer:fine){.place:hover .wash img{transform:scale(1.04)}.place:hover .wash:after{opacity:.45}}.place__bar{border-bottom:1px solid var(--line);gap:4px;padding:12px 0 2px;display:grid}.place__name{letter-spacing:-.015em;font-size:18px;font-weight:700}.place:first-child:not(:nth-last-child(2)) .place__name{font-size:clamp(20px,1.8vw,26px)}.place .credit{font-size:10px}.place__email{color:var(--fg);overflow-wrap:anywhere;border-bottom:1px solid var(--mark);justify-self:start;font-size:14.5px;transition:color .2s}.place__contact{z-index:1;position:absolute;bottom:12px;left:12px}@media (hover:hover) and (pointer:fine){.place__email:hover{color:var(--terracotta-deep)}}.status{align-content:center;min-height:70svh;display:grid}.status .wrap{justify-items:start;gap:24px;padding-top:80px;padding-bottom:80px;display:grid}.status__actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}@media (prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transition:opacity .76s var(--ease-out), transform .9s var(--ease-out);transition-delay:calc(var(--d,0) * 70ms);transform:translateY(18px)}.js [data-reveal].is-in{opacity:1;transform:none}.js .panel__bars i{transition:transform 1.1s var(--ease-out);transition-delay:calc(var(--i) * 60ms + .2s);transform:scaleY(0)}.js .panel__track i{transition:transform 1.3s var(--ease-out) .4s;transform:scaleX(0)}.js .is-in .panel__bars i,.js .is-in .panel__track i{transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}@media (width<=1180px){.header__nav{display:none}.header__toggle{display:inline-flex}.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.svc{min-height:300px}.diff__head,.diff__list,.metrics__copy,.metrics__panel{grid-column:1/13}.metrics__copy{max-width:720px}.sectors,.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.logos__grid{--cols:5}.footer__brand,.footer__cols{grid-column:1/13}}@media (width<=900px){.section-head>:first-child,.section-head>:last-child:not(:first-child),.section-head--link>:last-child:not(:first-child){grid-column:1/13;justify-self:start}.stats__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(3){border-left:0;padding-left:0}.stat:nth-child(n+3){border-top:1px solid var(--rule-on)}.stat:nth-child(2),.stat:nth-child(4){padding-right:0}.diff__list{grid-template-columns:1fr;row-gap:36px}.diff__item:nth-child(n){margin-top:0}.sectors,.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.case,.case--flip{row-gap:0}.case__figure,.case--flip .case__figure,.case__panel,.case--flip .case__panel{grid-column:1/13}.case__panel,.case--flip .case__panel{grid-row:2}.work--a .case__panel,.work--a .case--flip .case__panel{margin:-48px 24px 0}.work--a .case__figure .credit,.work--a .case--flip .case__figure .credit{text-align:left;padding:0 0 56px}.work--b .case__panel,.work--b .case--flip .case__panel{margin-top:28px;padding:28px 0 0}.insights{grid-template-columns:1fr 1fr}.insight:first-child{grid-column:1/-1}.cta .headline,.cta__side{grid-column:1/13}.footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}.page-hero__media{opacity:.55;inset:0}.watermark{--fade:linear-gradient(90deg, transparent, #000 70%);width:100%}.watermark img{opacity:.32;object-position:right center}.office-map{--fade:linear-gradient(90deg, #0006, #000 70%);opacity:.7;width:100%}.page-hero:before{background:linear-gradient(90deg, var(--terracotta) 30%, #c0552fd1 100%)}.project-body__text,.project-body__aside,.service__text,.service__figure,.service__support,.service__span{grid-column:1/13}.svc-grid--three,.directory,.places__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.logos__grid{--cols:4;--gap:32px;row-gap:32px}}@media (width<=600px){:root{--header:64px}body{font-size:16px}.header__cta{display:none}.hero{min-height:calc(100svh - var(--header))}.hero__shade{background:linear-gradient(#c0552f4d 0%,#8e3a1cd1 52%,#8e3a1cf5 100%)}.hero__copy{padding-bottom:88px}.hero__actions{width:100%}.hero__actions .btn{flex:100%}.hero__credit{left:var(--gutter);right:var(--gutter);text-align:left;max-width:none}.stat{padding:28px 16px}.stat:nth-child(odd){padding-left:0}.logos__grid{--cols:3;--gap:20px;row-gap:28px}.logos__grid img{max-height:34px}.svc-grid,.svc-grid--three,.sectors,.cards,.insights{grid-template-columns:1fr}.directory{gap:36px 14px}.person__name{font-size:17px}.person__region,.person__role{letter-spacing:.1em;font-size:10.5px}.service__support ul{grid-template-columns:1fr}.svc{min-height:0}.work--a .case__panel,.work--a .case--flip .case__panel{margin:-32px 12px 0;padding:24px 20px}.places__grid{gap:16px 12px}.place__name{font-size:16px}.place__contact{min-height:40px;padding:0 14px;bottom:8px;left:8px}.facts>div{grid-template-columns:96px 1fr}.footer__bottom{flex-direction:column}}.hero__media .duo,.page-hero__media .duo{height:100%}.case__role .mono{color:var(--eyebrow)}.svc__stages{margin-top:8px}.portfolio-sector .section-head .mono{color:var(--eyebrow)}.portfolio-sector .section-head>:last-child{gap:12px;display:grid}@media (width<=600px){.sectors{gap:0}.sectors>li{border-bottom:1px solid var(--rule);padding:18px 0}.sectors>li:first-child{border-top:2px solid var(--terracotta)}.sector{grid-template-columns:112px minmax(0,1fr);align-items:start;column-gap:16px;display:grid}.sector .wash{aspect-ratio:1;grid-row:1/3}.sector__rule{display:none}.sector__row{margin-top:0}.sector__tease{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:14.5px;display:-webkit-box;overflow:hidden}}
