@font-face{font-family:Handel;src:url(/assets/font-0.woff)format("woff");font-display:swap}@font-face{font-family:HelveticaNeue;src:url(/assets/font-1.woff)format("woff");font-display:swap}@font-face{font-family:HelveticaNeue;src:url(/assets/font-3.woff)format("woff");font-weight:700;font-display:swap}:root{--choc:#1d160d;--walnut:#382c1a;--orange:#e7580e;--tangerine:#ff9125;--paper:#f0f0f0;--platinum:#e5e4e2;--line:#1d160d40;--pad:clamp(22px,4vw,64px);--ease:cubic-bezier(.2,.7,.2,1);color:var(--choc);background:var(--paper);font-synthesis:none;font-family:HelveticaNeue,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}button,input,textarea,select{font:inherit}button,a{color:inherit}button{cursor:pointer;background:0 0;border:0}a{text-decoration:none}img{max-width:100%;display:block}figure,p,h1,h2,h3{margin:0}h1,h2,h3{text-transform:uppercase;letter-spacing:-.025em;font-family:Handel,Arial Black,sans-serif;font-weight:400;line-height:1.05}h2{font-size:clamp(32px,4.4vw,68px)}h3{font-size:clamp(25px,2.7vw,42px)}p{line-height:1.6}svg{stroke:currentColor;stroke-width:1.5px;flex-shrink:0;width:24px;height:24px}button:focus-visible,a:focus-visible{outline:3px solid var(--tangerine);outline-offset:5px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--choc);outline-offset:3px}.skip{background:var(--paper);z-index:100;padding:16px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip:focus{transform:none}.scroll-line{z-index:40;height:3px;position:fixed;inset:0 0 auto}.scroll-line span{background:var(--choc);transform-origin:0;height:100%;display:block}.header{z-index:10;padding:22px var(--pad);justify-content:space-between;align-items:center;display:flex;position:absolute;top:3px;left:0;right:0}.logo{background:var(--paper);flex-shrink:0;padding:12px 16px;display:block}.logo img{object-fit:contain;width:135px;height:45px}.header-actions{gap:8px;display:flex}.header-actions button,.header-actions a{background:var(--paper);align-items:center;gap:26px;min-height:50px;padding:0 22px;font-size:13px;display:flex}.header-actions .header-contact{background:var(--choc);color:var(--paper)}.menu-lines{border-block:1px solid;width:18px;height:8px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700;line-height:1.5}.hero{background:var(--orange);padding:132px var(--pad) 0;overflow:hidden}.hero-top{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-top:17px;display:flex}.hero-note{font-size:12px;line-height:1.5}.hero-grid{grid-template-columns:1.12fr 1fr;align-items:center;gap:4vw;padding:38px 0 42px;display:grid}.hero-copy h1{letter-spacing:-.04em;margin-bottom:27px;font-size:clamp(42px,6.1vw,98px);line-height:1.03}.hero-copy h1 span{display:block}.hero-copy h1 span:not(.outline-text){color:var(--paper)}.outline-text{-webkit-text-stroke:1px var(--choc);color:#0000}.hero-copy p{max-width:380px;margin-bottom:25px;font-size:16px}.action{background:var(--choc);color:var(--paper);border:1px solid var(--choc);min-height:50px;transition:background .25s var(--ease);justify-content:space-between;align-items:center;gap:30px;padding:0 0 0 20px;font-size:12px;font-weight:700;display:inline-flex}.action>span{background:var(--orange);width:50px;min-height:50px;color:var(--paper);border-left:1px solid var(--choc);align-self:stretch;place-items:center;display:grid}.action:hover{background:var(--walnut)}.action svg{width:20px;height:20px;transition:transform .3s var(--ease)}.action:hover svg{transform:translate(3px)}.hero .action>span{background:var(--paper);color:var(--choc)}.hero-figure{flex-direction:column;justify-content:center;align-self:stretch;display:flex}.image-brackets{position:relative;overflow:hidden}.image-brackets:after{content:"";pointer-events:none;border:1px solid #f0f0f08c;position:absolute;inset:14px}.hero-figure img{object-fit:cover;width:100%;height:clamp(430px,44vw,680px)}.hero-figure figcaption{text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;gap:10px;padding-top:13px;font-size:10px;display:flex}.hero-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;min-height:65px;font-size:12px;display:flex}.hero-bottom a{align-items:center;gap:35px;min-height:46px;display:flex}.hero-bottom a span{font-size:23px}.section{padding:80px var(--pad)}.section-label{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding-bottom:24px;font-size:12px;display:flex}.company-content{grid-template-columns:1.15fr 1fr;gap:6vw;padding:56px 0 70px;display:grid}.company h2 span{color:#6b6051}.company-body{align-self:center;max-width:500px}.company-body .lead{margin-bottom:24px;font-size:clamp(18px,1.6vw,23px)}.company-body>p:not(.lead){max-width:440px;font-size:15px}.text-link{border-bottom:1px solid;justify-content:space-between;align-items:center;gap:20px;width:-moz-fit-content;width:fit-content;min-height:48px;margin-top:27px;font-size:12px;font-weight:700;display:flex}.text-link svg{width:18px}.proof-strip{border-block:1px solid var(--line);grid-template-columns:1.15fr repeat(4,1fr);align-items:center;gap:20px;padding:30px 0;display:grid}.proof-strip>span{font-size:clamp(14px,1.25vw,19px);font-weight:700;line-height:1.3}.proof-strip p{font-size:12px}.proof-strip p span{color:#6b6051;font-size:10px}.solutions{background:var(--platinum);margin-top:70px}.solutions-heading{margin:48px 0}.solution-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.solution{background:var(--platinum)}.solution figure{position:relative}.solution figure img{object-fit:cover;width:100%;height:280px}.solution figcaption{background:var(--choc);color:var(--paper);letter-spacing:.03em;padding:9px 16px;font-size:9px;position:absolute;bottom:0;left:0;right:0}.solution-body{padding:30px 25px}.solution-body h3{justify-content:space-between;align-items:center;margin:17px 0 24px;font-size:clamp(35px,3.6vw,56px);display:flex}.solution-body h3 svg{width:26px;height:26px}.solution-body>p:not(.eyebrow){min-height:95px;font-size:15px}.solution ul{border-top:1px solid var(--line);margin:26px 0 0;padding:0;list-style:none}.solution li{border-bottom:1px solid var(--line);padding:10px 0;font-size:12px}.solution .text-link{width:100%}.approach{background:var(--choc);color:var(--paper);grid-template-columns:1fr 1fr;gap:8vw;display:grid}.approach-intro{align-self:start;position:sticky;top:80px}.approach-intro h2{margin:30px 0}.approach-intro p{color:var(--platinum);font-size:15px}.setting-out{color:var(--orange);max-width:300px;margin-top:40px}.setting-out svg{fill:none;stroke-width:1px;width:100%;height:auto}.setting-out span{text-transform:uppercase;letter-spacing:.1em;font-size:10px}.step{border-top:1px solid #f0f0f04d;grid-template-columns:60px 1fr;gap:15px;padding:32px 0 42px;display:grid}.step-number{color:var(--tangerine);font-size:12px}.step h3{margin-bottom:24px;font-size:clamp(25px,2.5vw,38px)}.step p{max-width:350px;color:var(--platinum);font-size:15px}.projects-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin:45px 0;display:flex}.projects-heading p{font-size:14px}.filters{flex-wrap:wrap;gap:8px;margin-bottom:30px;display:flex}.filters button{border:1px solid var(--line);min-height:44px;padding:0 19px;font-size:12px}.filters button[aria-pressed=true]{background:var(--choc);color:var(--paper)}.project-grid{grid-template-columns:1fr 1fr;gap:40px 24px;display:grid}.project-card{text-align:left;width:100%;padding:0;display:block}.project-image{background:var(--platinum);position:relative;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:clamp(250px,32vw,480px);transition:transform .8s var(--ease)}.project-card:hover img{transform:scale(1.035)}.project-image>span{background:var(--paper);text-transform:uppercase;letter-spacing:.05em;padding:8px 12px;font-size:10px;position:absolute;top:17px;left:17px}.project-open{background:var(--orange);place-items:center;width:62px;height:62px;display:grid;position:absolute;bottom:0;right:0}.project-info{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:20px 0;display:flex}.project-info h3{max-width:75%;font-size:clamp(16px,1.6vw,24px)}.project-info>span{white-space:nowrap;font-size:11px}.contact{background:var(--orange);grid-template-columns:1fr 1fr;gap:8vw;display:grid}.contact-copy h2{margin:30px 0}.contact-copy>p{max-width:360px;margin-bottom:32px;font-size:15px}.contact-copy>a{width:-moz-fit-content;width:fit-content;padding:8px 0;font-size:14px;display:block}.contact-copy .contact-phone{align-items:center;gap:30px;font-size:24px;display:flex}.contact-copy address{margin-top:23px;font-size:13px;font-style:normal;line-height:1.6}.contact form{padding-top:7px}.contact form>.eyebrow{margin-bottom:18px}.contact label{font-size:11px;font-weight:700;display:block}.field-row{grid-template-columns:1fr 1fr;gap:22px;display:grid}input,select,textarea{width:100%;color:var(--choc);resize:vertical;background:0 0;border:0;border-bottom:1px solid #1d160d80;border-radius:0;min-height:48px;margin:4px 0 23px;padding:10px 0;font-size:16px;font-weight:400;display:block}input::placeholder,textarea::placeholder{color:var(--choc);opacity:.75}select option{background:var(--paper)}.form-note{margin:0 0 22px;font-size:11px;line-height:1.6}.privacy-trigger{min-height:44px;padding:0;text-decoration:underline}.form-status{padding-top:15px;font-size:12px}.footer{background:var(--choc);color:var(--paper);padding:40px var(--pad) 0}.footer-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.footer-top>div{gap:26px;font-size:12px;display:flex}.footer-top a:not(.logo){padding-block:15px}.motion-toggle{color:var(--platinum);min-height:44px;font-size:12px}.motion-toggle span{color:var(--tangerine);margin-left:14px}.footer-statement{text-transform:uppercase;letter-spacing:-.04em;padding:70px 0 60px;font-family:Handel,Arial Black,sans-serif;font-size:clamp(40px,8.6vw,140px);line-height:1.08}.footer-statement span{color:var(--orange)}.footer-bottom{border-top:1px solid #f0f0f040;justify-content:space-between;align-items:center;gap:20px;min-height:65px;font-size:10px;display:flex}.footer-bottom a{padding-block:15px}dialog{color:var(--choc);background:var(--paper);border:0;max-width:calc(100vw - 32px);max-height:calc(100svh - 32px);padding:0}dialog::backdrop{background:#1d160dbf}.dialog-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:14px 26px;display:flex}.dialog-top button{min-height:44px;font-size:13px}.menu-dialog{width:480px;max-width:100vw;height:100svh;max-height:100svh;margin:0 0 0 auto}.menu-panel{flex-direction:column;min-height:100%;padding:15px 28px 30px;display:flex}.menu-panel .dialog-top{padding:0 0 20px}.menu-panel nav a{text-transform:uppercase;border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:22px 0;font-family:Handel,sans-serif;font-size:30px;display:flex}.menu-panel nav a>span{font-family:HelveticaNeue,sans-serif;font-size:10px}.menu-panel nav svg{margin-left:auto}.display-settings{margin:35px 0}.display-settings button{border-bottom:1px solid var(--line);text-align:left;justify-content:space-between;width:100%;min-height:48px;padding:0;font-size:13px;display:flex}.menu-panel>a{min-height:44px;margin-top:auto;font-size:18px}.project-dialog{width:1000px}.project-detail{grid-template-columns:1fr 1fr;display:grid}.project-detail figure img{object-fit:cover;width:100%;height:480px}.project-detail figcaption{padding:10px 24px;font-size:11px}.project-detail>div{align-self:center;padding:40px 30px}.project-detail h2{margin:20px 0;font-size:35px}.project-detail p{margin-bottom:25px;font-size:15px}.project-detail .action{font-size:11px}.privacy-dialog{width:600px}.privacy-dialog h2{padding:30px 28px 0;font-size:30px}.privacy-dialog>p{padding:20px 28px;font-size:15px}.privacy-dialog>p:last-child{padding-top:0}.reveal{transition:opacity .8s var(--ease),transform .8s var(--ease)}@media (prefers-reduced-motion:no-preference){html[data-motion=true] .reveal:not(.visible){opacity:0;transform:translateY(20px)}.hero-copy h1{animation:headline .9s var(--ease) both}.hero-figure{animation:headline 1.1s var(--ease) both}}@keyframes headline{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}html[data-motion=false]{scroll-behavior:auto}html[data-motion=false] *,html[data-motion=false] :before,html[data-motion=false] :after{transition:none!important;animation:none!important}html[data-large=true] p,html[data-large=true] label,html[data-large=true] .text-link{font-size:1.1rem}@media (max-width:900px){.hero-copy h1{font-size:clamp(38px,6.5vw,58px)}.hero-grid{gap:25px}.hero-figure img{height:440px}.section{padding-block:55px}.company-content{gap:30px}.company{padding-bottom:0}.proof-strip{grid-template-columns:repeat(4,1fr)}.proof-strip p{grid-column:1/-1}.solution-grid{grid-template-columns:1fr}.solution{grid-template-columns:1fr 1.1fr;display:grid}.solution figure img{height:100%}.solution-body>p:not(.eyebrow){min-height:0}.approach{gap:30px}.project-info{flex-direction:column;align-items:flex-start}.footer-top>div{gap:14px}.contact{gap:30px}}@media (max-width:600px){:root{--pad:22px}.header{padding-top:17px}.logo{padding:9px 12px}.logo img{width:105px;height:35px}.header-actions button,.header-actions a{gap:12px;min-height:46px;padding:0 12px;font-size:11px}.header-contact svg{width:16px}.hero{padding-top:107px}.hero-top .eyebrow{max-width:225px;font-size:9px}.hero-note{display:none}.hero-grid{grid-template-columns:1fr;gap:35px;padding-top:32px;padding-bottom:24px}.hero-copy h1{font-size:clamp(37px,10vw,61px)}.hero-copy p{max-width:320px;font-size:15px}.hero-figure img{aspect-ratio:1.05;object-position:center 45%;height:auto}.hero-figure figcaption{font-size:8px}.hero-bottom{gap:10px;font-size:10px}.hero-bottom a{gap:8px}.section-label{padding-bottom:18px;font-size:10px}.section-label>span:last-child{text-align:right;max-width:130px}.company-content{grid-template-columns:1fr;padding:34px 0 42px}.company h2{font-size:35px}.company-body .lead{font-size:19px}.proof-strip{grid-template-columns:1fr 1fr;gap:24px;padding:25px 0}.proof-strip>span{font-size:15px}.solutions{margin-top:45px}.solutions-heading{margin:32px 0;font-size:32px}.solution{grid-template-columns:1fr}.solution figure img{height:270px}.solution-body{padding:28px 22px}.solution-body h3{font-size:45px}.approach{grid-template-columns:1fr;gap:35px}.approach-intro{position:static}.approach-intro h2{font-size:40px}.setting-out{display:none}.step{grid-template-columns:42px 1fr;padding:25px 0 30px}.step h3{font-size:26px}.projects-heading{margin:30px 0;display:block}.projects-heading h2{margin-bottom:25px;font-size:36px}.projects-heading p{font-size:13px}.filters{gap:6px}.filters button{padding-inline:12px;font-size:11px}.project-grid{grid-template-columns:1fr;gap:25px}.project-image img{height:330px}.project-info{flex-direction:row;gap:16px}.project-info h3{max-width:70%;font-size:19px}.project-info>span{white-space:normal;text-align:right;font-size:9px}.contact{grid-template-columns:1fr;gap:45px}.contact-copy h2{font-size:42px}.field-row{gap:16px}.contact-copy .contact-phone{font-size:23px}.contact form .action{width:100%}.footer-top{flex-wrap:wrap;gap:20px}.footer-top>div{order:3;justify-content:space-between;width:100%;font-size:11px}.footer-statement{padding:45px 0;font-size:10vw}.footer-bottom{flex-wrap:wrap;gap:10px;padding:20px 0;font-size:9px}.footer-bottom>span:nth-child(2){display:none}.project-detail{grid-template-columns:1fr}.project-detail figure img{height:280px}.project-detail>div{padding:25px}.project-detail h2{font-size:27px}.menu-panel nav a{font-size:26px}.dialog-top{padding-inline:22px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media (forced-colors:active){.outline-text{color:canvastext;-webkit-text-stroke:0}.action,.filters button,.project-image>span{border:1px solid buttontext}.image-brackets:after{display:none}}:root{scrollbar-color:#8b7d6a #e5e4e2;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--platinum)}::-webkit-scrollbar-thumb{border:2px solid var(--platinum);background:#8b7d6a}::-webkit-scrollbar-thumb:hover{background:var(--walnut)}a,button{cursor:pointer}a:hover{color:var(--walnut)}.action:hover,.header-contact:hover{color:var(--paper)}button:disabled{cursor:wait}.header{padding:18px var(--pad);position:absolute;top:0}.header-actions button:hover{background:var(--platinum)}h1:focus{outline:none}.hero{background:var(--orange);padding:114px 0 0}.hero-top{margin-inline:var(--pad);padding-block:17px}.hero-grid{border-top:1px solid var(--line);grid-template-columns:.94fr 1.06fr;align-items:stretch;gap:0;margin-top:18px;padding:0}.hero-copy{padding:38px var(--pad) 36px;border-right:1px solid var(--line);flex-direction:column;justify-content:space-between;min-height:670px;display:flex}.hero-copy h1{letter-spacing:-.04em;max-width:660px;color:var(--choc);margin-bottom:65px;font-size:clamp(45px,5.8vw,90px);line-height:1.07}.hero-subline{text-transform:uppercase;font-family:Handel,sans-serif;margin-bottom:25px!important;font-size:clamp(28px,3.2vw,48px)!important;line-height:1.12!important}.hero-copy-bottom>p:not(.hero-subline){max-width:330px;font-size:15px}.hero-figure{background:var(--platinum);display:block;animation:none!important}.hero-figure figcaption{background:var(--orange);border-top:1px solid var(--line);align-items:center;min-height:63px;padding:16px 24px;font-size:9px}.hero-figure figcaption a{align-items:center;gap:14px;min-height:30px;display:flex}.hero-figure figcaption svg{width:15px;height:15px}.hero-bottom{padding-inline:var(--pad)}.building-scene{isolation:isolate;background:var(--platinum);height:100%;min-height:610px;position:relative;overflow:hidden}.hero-figure .building-scene{height:calc(100% - 63px);min-height:610px}.building-scene>img{object-fit:cover;object-position:center 48%;width:100%;height:100%;transition:opacity .35s;position:absolute;inset:0}.building-scene iframe{opacity:0;background:var(--platinum);border:0;width:100%;height:100%;transition:opacity .4s;position:absolute;inset:0}.building-scene.scene-ready iframe{opacity:1}.building-scene.scene-ready>img{opacity:0;pointer-events:none}.scene-launch{background:var(--choc);color:var(--paper);border:1px solid var(--paper);justify-content:space-between;align-items:center;min-height:50px;padding:16px 20px;font-size:12px;display:flex;position:absolute;bottom:24px;left:24px;right:24px}.scene-launch span{font-size:20px}.scene-launch:hover{background:var(--walnut)}.scene-unavailable{background:var(--paper);padding:10px;font-size:10px;position:absolute;bottom:12px;left:12px;right:12px}.section{padding-block:90px}.company{padding-bottom:0}.company-content{padding-block:62px 78px}.company-body{max-width:490px}.proof-strip{padding-block:35px}.solution-overview{background:var(--paper);padding-bottom:0}.solutions-intro{justify-content:space-between;align-items:flex-end;gap:50px;margin:58px 0;display:flex}.solutions-intro>p{max-width:330px;font-size:15px}.solution-row{border-top:1px solid var(--line);grid-template-columns:70px .8fr 1fr 60px;align-items:center;gap:28px;min-height:210px;padding-block:32px;transition:background .25s;display:grid}.solution-row>h3{font-size:clamp(42px,5.5vw,84px)}.solution-row>div>p{max-width:385px;margin-top:14px;font-size:15px}.row-arrow{border:1px solid var(--line);place-items:center;width:58px;height:58px;display:grid}.solution-row:hover .row-arrow{background:var(--orange)}.solution-row:last-child{border-bottom:1px solid var(--line)}.featured-work{background:var(--platinum);grid-template-columns:1.05fr 1fr;margin-top:90px;display:grid}.featured-image{position:relative}.featured-image img{object-fit:cover;width:100%;height:640px}.featured-image>span{background:var(--paper);padding:10px 14px;position:absolute;bottom:20px;left:24px}.featured-copy{padding:70px var(--pad);align-self:center}.featured-copy h2{margin:32px 0}.featured-copy>p{max-width:400px;margin-bottom:30px;font-size:16px}.home-approach{background:var(--choc);color:var(--paper)}.home-approach .section-label{border-color:#665d51}.home-approach h2{margin:54px 0 65px;font-size:clamp(45px,6vw,94px)}.habit-summary{grid-template-columns:repeat(3,1fr);gap:55px;display:grid}.habit-summary article{border-top:1px solid #665d51;padding-top:24px}.habit-summary .eyebrow{color:var(--tangerine)}.habit-summary h3{margin:26px 0;font-size:clamp(24px,2.6vw,38px)}.habit-summary p{max-width:350px;color:var(--platinum);font-size:15px}.home-approach>.text-link{margin-top:50px}.home-approach a:hover,.footer a:hover{color:var(--tangerine)}.project-card:hover{color:var(--choc)}.closing{background:var(--orange);padding:60px var(--pad) 70px}.closing h2{max-width:970px;margin:35px 0 55px;font-size:clamp(40px,5.4vw,86px)}.closing>div{justify-content:space-between;align-items:center;gap:30px;display:flex}.closing p{max-width:460px;font-size:16px}.footer-top>div{flex-wrap:wrap;gap:20px}.footer-bottom a{min-height:44px}.page-intro{background:var(--orange);padding:155px var(--pad) 70px;border-bottom:1px solid var(--line)}.page-intro h1{max-width:1120px;margin:40px 0;font-size:clamp(45px,6.5vw,100px)}.page-intro>p:last-child{max-width:560px;font-size:19px}.page-intro .eyebrow{border-top:1px solid var(--line);padding-top:18px}.solutions{margin-top:0}.solution-body h2{margin:20px 0;font-size:48px}.solution-body>p:not(.eyebrow){min-height:95px}.service-detail{grid-template-columns:1fr 1fr;align-items:start;gap:8vw;display:grid}.service-detail figure img{object-fit:cover;width:100%;height:620px}.service-detail figcaption,.gallery-grid figcaption{padding-block:14px;font-size:11px}.service-detail h2{margin:30px 0;font-size:45px}.scope-list{border-top:1px solid var(--line);margin:25px 0 45px;padding:0;list-style:none}.scope-list li{border-bottom:1px solid var(--line);gap:25px;padding:20px 0;font-size:16px;display:flex}.scope-list li span{width:30px;font-size:10px}.service-detail h3{font-size:26px}.deliverables{margin:25px 0 40px;padding-left:20px;font-size:15px;line-height:1.6}.deliverables li{padding:6px 0}.step{background:var(--choc);min-height:255px;padding:35px 20px 75px;position:sticky;top:30px}.step:nth-child(2){top:65px}.step:nth-child(3){top:100px}.step:nth-child(4){top:135px}.approach-steps{padding-bottom:35px}.approach-intro{top:65px}.filter-status{margin-bottom:22px;font-size:11px}.project-case{grid-template-columns:1.1fr .9fr;gap:6vw;display:grid}.case-media>img{object-fit:cover;width:100%;height:650px}.case-media .building-scene{height:650px}.media-caption{max-width:500px;padding-top:15px;font-size:11px}.case-facts dl{margin:0 0 40px}.case-facts dl>div{border-bottom:1px solid var(--line);padding:16px 0}.case-facts dt{text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px;font-size:10px}.case-facts dd{margin:0;font-size:16px;line-height:1.5}.case-facts h2{margin:30px 0;font-size:36px}.case-facts>p{margin-bottom:32px;font-size:16px}.site-gallery{padding-top:0}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;display:grid}.gallery-grid img{object-fit:cover;width:100%;height:360px}.estate-link{background:var(--choc);color:var(--paper)}.estate-link h2{margin:30px 0}.estate-link p{max-width:500px;margin-bottom:35px}.estate-link .action{border-color:var(--orange)}.company-beliefs{background:var(--platinum);grid-template-columns:1fr 1fr;gap:70px;margin-top:70px;display:grid}.company-beliefs h2{margin:32px 0;font-size:clamp(32px,3.6vw,54px)}.company-beliefs p{max-width:430px;font-size:17px}.leadership blockquote{max-width:1000px;margin:55px 0 30px;font-size:clamp(25px,3.1vw,47px);line-height:1.3}.leadership>p{font-size:17px}.leadership>p span{margin-top:10px;font-size:12px;display:block}.team-list{grid-template-columns:1fr 1fr;gap:25px 55px;margin-top:65px;display:grid}.team-list>div{border-top:1px solid var(--line);padding-top:25px}.team-list h3{font-size:24px}.team-list p{margin-top:15px;font-size:13px}.procurement{grid-template-columns:1fr 1fr;gap:8vw;display:grid}.procurement h2{margin:28px 0}.procurement p{max-width:480px;margin-bottom:24px;font-size:16px}.procurement-proof{padding-top:0}.procurement-proof .project-grid{margin-top:40px}.contact{background:var(--paper)}.contact-copy .contact-direction{max-width:340px;margin-top:45px;font-size:13px}.contact-copy .text-link{margin:12px 0 24px;font-size:14px;display:flex}.contact form .action{width:100%}.contact .form-note a{min-height:44px;padding-block:12px;text-decoration:underline;display:inline-block}.privacy-copy{max-width:850px}.privacy-copy h2{margin-bottom:40px;font-size:35px}.privacy-copy p{margin:25px 0;font-size:18px}.privacy-copy a{text-decoration:underline}.mobile-contact{display:none}html[data-large=true] .eyebrow{font-size:13px}html[data-large=true] .hero-copy p,html[data-large=true] input,html[data-large=true] textarea,html[data-large=true] select{font-size:18px}@media (forced-colors:active){a,button{border-color:buttontext}.building-scene iframe{forced-color-adjust:none}}@media (min-width:1500px){.hero-copy{min-height:740px}.hero-figure .building-scene{min-height:680px}}@media (max-width:1000px){.hero-copy{min-height:590px;padding-inline:32px}.hero-copy h1{font-size:5.6vw}.hero-figure .building-scene{min-height:530px}.hero-subline{font-size:32px!important}.hero-copy h1{margin-bottom:40px}.solution-row{grid-template-columns:40px .7fr 1fr 48px;gap:20px}.featured-image img{height:550px}.habit-summary{gap:25px}.service-detail{gap:40px}.service-detail figure img{height:530px}.case-media .building-scene{height:600px}.footer-top{flex-wrap:wrap}.footer-top>div{order:3;justify-content:space-between;width:100%}}@media (max-width:700px){.hero{padding-top:110px}.hero-top .eyebrow{max-width:none;font-size:9px}.hero-note{font-size:9px;display:block}.hero-grid{grid-template-columns:1fr;margin-top:0}.hero-copy{min-height:0;padding:32px var(--pad) 36px;border-right:0}.hero-copy h1{margin-bottom:35px;font-size:clamp(41px,10.1vw,68px)}.hero-subline{margin-bottom:18px!important;font-size:26px!important}.hero-copy-bottom{display:block}.hero-copy-bottom>p:not(.hero-subline){max-width:350px;margin-bottom:25px;font-size:15px}.hero-figure{border-top:1px solid var(--line)}.hero-figure .building-scene{height:440px;min-height:0}.hero-figure figcaption{min-height:55px;padding:12px var(--pad);font-size:8px}.section{padding-block:60px}.company{padding-bottom:0}.company-content{padding:38px 0 45px}.company-content h2{font-size:34px}.proof-strip{gap:25px;padding-block:30px}.solutions-intro{margin:35px 0;display:block}.solutions-intro h2{font-size:32px}.solutions-intro>p{margin-top:25px;font-size:14px}.solution-row{grid-template-columns:35px 1fr 44px;gap:12px;min-height:0;padding:28px 0}.solution-row h3{font-size:42px}.solution-row>div{grid-area:2/2}.solution-row>div p{font-size:14px}.solution-row>div .eyebrow{font-size:9px}.row-arrow{grid-area:1/3;width:44px;height:44px}.featured-work{grid-template-columns:1fr;margin-top:60px}.featured-image img{height:400px}.featured-copy{padding:40px var(--pad) 55px}.featured-copy h2{font-size:37px}.home-approach h2{margin:38px 0 40px;font-size:43px}.habit-summary{grid-template-columns:1fr;gap:32px}.habit-summary h3{margin:20px 0;font-size:27px}.habit-summary p{font-size:15px}.closing{padding:45px var(--pad) 50px}.closing h2{margin:25px 0 35px;font-size:36px}.closing>div{display:block}.closing p{margin-bottom:28px;font-size:15px}.footer{padding-top:30px;padding-bottom:55px}.footer-top>div{justify-content:flex-start;gap:10px;font-size:10px}.footer-top>div a{padding-inline:6px}.page-intro{padding:130px var(--pad) 45px}.page-intro h1{overflow-wrap:anywhere;margin:28px 0;font-size:clamp(32px,9.2vw,48px)}.page-intro>p:last-child{font-size:16px}.solutions{margin-top:0}.service-detail,.project-case,.company-beliefs,.procurement{grid-template-columns:1fr;gap:40px}.service-detail figure img{height:400px}.service-detail h2{font-size:32px}.service-detail h3{font-size:24px}.scope-list li{gap:14px;padding:17px 0;font-size:15px}.approach .step{min-height:245px;padding:28px 0 40px;top:15px}.approach .step:nth-child(2){top:45px}.approach .step:nth-child(3){top:75px}.approach .step:nth-child(4){top:105px}.case-media .building-scene{height:440px;min-height:0}.case-media>img{height:430px}.case-facts h2{font-size:30px}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:370px}.site-gallery{padding-top:0}.company-beliefs{margin-top:45px}.company-beliefs h2{margin:25px 0;font-size:31px}.leadership blockquote{margin:35px 0;font-size:25px}.team-list{grid-template-columns:1fr;gap:30px}.team-list h3{font-size:21px}.procurement-proof{padding-top:0}.privacy-copy h2{font-size:29px}.privacy-copy p{font-size:16px}.mobile-contact{z-index:9;background:var(--paper);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:1fr 1fr 1.6fr;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-contact a{border-right:1px solid var(--line);place-items:center;min-height:50px;font-size:11px;display:grid}.mobile-contact a:last-child{background:var(--choc);color:var(--paper)}.menu-panel nav a{padding-block:17px;font-size:25px}.menu-panel{padding-bottom:25px}.display-settings{margin:25px 0}}@media (prefers-reduced-motion:reduce){.step{position:static}}html[data-motion=false] .step{position:static}.blueprint-frame{--axis-x:50%;--axis-y:50%;position:relative;overflow:hidden}.blueprint-overlay{pointer-events:none;color:var(--paper);mix-blend-mode:normal;z-index:2;letter-spacing:.05em;font-family:monospace;font-size:9px;position:absolute;inset:18px}.axis{opacity:.25;background:currentColor;display:block;position:absolute}.axis-x{width:1px;top:0;bottom:0;left:var(--axis-x);transform:translate(-18px)}.axis-y{height:1px;left:0;right:0;top:var(--axis-y);transform:translateY(-18px)}.axis-point{left:var(--axis-x);top:var(--axis-y);opacity:.7;border:1px solid;width:11px;height:11px;position:absolute;transform:translate(-23px,-23px)}.axis-origin{position:absolute;top:0;left:0}.axis-corner{position:absolute;bottom:0;right:0}.axis-readout{background:var(--choc);color:var(--paper);padding:4px 6px;position:absolute;top:0;right:0}.blueprint-overlay:before,.blueprint-overlay:after{content:"";opacity:.8;border-style:solid;border-color:currentColor;width:20px;height:20px;position:absolute}.blueprint-overlay:before{border-width:0 0 1px 1px;bottom:0;left:0}.blueprint-overlay:after{border-width:1px 1px 0 0;top:0;right:0}.project-image .blueprint-overlay{inset:12px}.project-image .axis-origin{top:auto;bottom:0}.project-image>span,.project-open{z-index:3}.project-image img{filter:saturate(.85)}.hero-copy h1 .word-mask{color:inherit;display:block;overflow:hidden}.hero-copy h1 .word-mask>span{color:inherit;animation:1s cubic-bezier(.16,1,.3,1) both headline-in;display:block}.hero-copy h1 .word-mask:nth-child(2)>span{animation-delay:.12s}.hero-copy h1{margin-bottom:50px}.hero-figure .building-scene{background:var(--choc)}.building-scene>img{object-fit:contain}.building-scene iframe{background:var(--choc)}.scene-launch,.scene-unavailable{background:var(--choc);color:var(--paper);border:1px solid #6b6051;align-items:center;gap:30px;min-height:44px;padding:12px;font-size:10px;display:flex;position:absolute;bottom:22px;left:22px}.scene-ready .scene-launch{display:none}.hero-top,.hero-bottom,.section-label{position:relative}.section-label{border-bottom:0}.section-label:after{content:"";opacity:.3;transform-origin:0;width:100%;height:1px;animation:rule-in 1.15s var(--ease) both;background:currentColor;position:absolute;bottom:0;left:0}.section-label:before{content:"+";background:inherit;font-family:monospace;font-size:13px;position:absolute;bottom:-6px;left:-4px}.section-label>span:last-child{font-family:monospace;font-size:10px}.solution-row{grid-template-columns:36px .7fr 1fr .9fr 50px;align-items:center;gap:24px;min-height:280px;padding:36px 0;display:grid;position:relative}.solution-row h3{font-size:clamp(35px,4.2vw,67px)}.solution-row-copy{max-width:310px}.solution-row-copy p{margin-top:20px;font-size:15px}.solution-row-image{height:220px}.solution-row-image img{object-fit:cover;filter:saturate(.9);width:100%;height:100%;transition:transform .7s var(--ease),filter .7s var(--ease)}.solution-row:hover img{filter:saturate();transform:scale(1.045)}.solution-row:hover .row-arrow{background:var(--orange);color:var(--paper)}.row-arrow{transition:background .3s,color .3s}.solution figure img{filter:saturate(.75)}.solution-grid{background:0 0;border:0;gap:26px}.solution{border-top:1px solid var(--line)}.solution-body{padding-inline:0}.solution figure img{height:350px}.solution figcaption{font-size:9px}.case-media .blueprint-frame>img{object-fit:contain;background:var(--platinum);width:100%;height:650px}.project-info{align-items:flex-start}.project-info>span{white-space:normal;text-align:right;flex-shrink:0;max-width:30%;line-height:1.5}.gallery-grid.portfolio-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 28px}.portfolio-gallery img{object-fit:contain;background:var(--platinum);height:400px}.gallery-grid figcaption{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:16px 0;font-size:10px;line-height:1.5;display:flex}.gallery-grid figcaption>span:first-child{font-family:monospace}.gallery-heading{justify-content:space-between;align-items:flex-end;gap:35px;padding-top:45px;display:flex}.gallery-heading>div{max-width:350px}.image-compare{border:1px solid var(--line);gap:30px;min-height:48px;margin-top:20px;padding:13px 18px;font-size:12px;display:flex}.image-compare[aria-pressed=true]{background:var(--choc);color:var(--paper)}.orange-gallery .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 28px}.orange-gallery .gallery-grid figure:first-child{grid-column:1/-1}.orange-gallery .gallery-grid figure:first-child img{object-position:center 42%;height:700px}.orange-gallery .gallery-grid img{object-fit:cover;height:600px}.gallery-note{max-width:500px;margin-top:30px;font-size:12px}.next-project{background:var(--platinum)}.next-project>a{justify-content:space-between;align-items:center;gap:30px;margin-top:35px;display:flex}.next-project h2{max-width:900px;font-size:clamp(30px,5vw,72px)}.next-project svg{width:60px;height:60px}.menu-dialog{background:var(--paper);width:100vw;max-width:100vw;height:100svh;max-height:100svh;color:var(--choc);border:0;margin:0;padding:0;overflow:auto}.menu-dialog::backdrop{background:var(--choc)}.menu-dialog[open]{animation:.65s cubic-bezier(.76,0,.24,1) both menu-in}.menu-dialog.closing-menu{animation:.34s cubic-bezier(.76,0,.24,1) both menu-out}.menu-panel{min-height:100svh;padding:22px var(--pad) 26px}.menu-panel .dialog-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:26px;display:flex}.dialog-top>button{border:1px solid var(--line);align-items:center;gap:35px;min-height:50px;padding:0 18px;font-size:12px;display:flex}.dialog-top>button span{font-size:24px}.menu-structure{flex:1;grid-template-columns:.65fr 1fr;gap:7vw;display:grid}.menu-drawing{border-right:1px solid var(--line);flex-direction:column;justify-content:space-between;padding:40px 6vw 40px 0;display:flex}.menu-drawing>svg{fill:none;stroke-width:.65px;align-self:center;width:100%;max-width:340px;height:260px}.menu-drawing>p{text-transform:uppercase;margin-block:20px;font-family:Handel,sans-serif;font-size:clamp(29px,3.2vw,50px);line-height:1.1}.menu-panel nav{flex-direction:column;justify-content:center;padding-block:20px;display:flex}.menu-panel nav a{gap:25px;padding:17px 0;font-size:clamp(28px,4.1vw,64px);transition:color .3s;overflow:hidden}.menu-panel nav a:hover{color:var(--orange)}.menu-panel nav a .nav-name{font:inherit;transition:transform .35s var(--ease);flex:1}.menu-panel nav a:hover .nav-name{transform:translate(12px)}.menu-panel nav .nav-number{width:25px;font:11px monospace}.menu-panel nav svg{width:32px;height:32px}.menu-dialog[open] nav a{animation:nav-in .7s var(--ease) both}.menu-dialog[open] nav a:first-child{animation-delay:.15s}.menu-dialog[open] nav a:nth-child(2){animation-delay:.19s}.menu-dialog[open] nav a:nth-child(3){animation-delay:.23s}.menu-dialog[open] nav a:nth-child(4){animation-delay:.27s}.menu-dialog[open] nav a:nth-child(5){animation-delay:.31s}.menu-dialog[open] nav a:nth-child(6){animation-delay:.35s}.display-settings{border-top:1px solid var(--line);align-items:center;gap:30px;margin:0;padding-top:20px;display:flex}.display-settings>button{gap:25px;min-height:44px;font-size:12px;display:flex}.display-settings>.eyebrow{margin:0}.menu-panel>a{margin:12px 0 0;font:13px monospace}.page-curtain{z-index:80;background:var(--choc);color:var(--paper);padding:var(--pad);pointer-events:all;flex-direction:column;justify-content:center;display:none;position:fixed;inset:0}.curtain-title{text-transform:uppercase;max-width:1000px;margin-top:32px;font-family:Handel,sans-serif;font-size:clamp(35px,7vw,110px);line-height:1.05}.curtain-axis{background:var(--paper);opacity:.3;position:absolute}.curtain-axis-x{height:1px;left:var(--pad);right:var(--pad);top:25%}.curtain-axis-y{width:1px;top:var(--pad);bottom:var(--pad);right:25%}.curtain-origin,.curtain-corner{font:11px monospace;position:absolute}.curtain-origin{left:var(--pad);top:calc(25% - 24px)}.curtain-corner{right:var(--pad);bottom:var(--pad)}.page-enter .page-intro h1{animation:page-heading-in .85s var(--ease) both}.page-enter .page-intro>p:last-child{animation:nav-in .8s .15s var(--ease) both}.header-actions button:hover .menu-lines{height:14px;transition:height .25s}.section.reveal{transition:opacity .8s,transform 1s var(--ease)}@keyframes headline-in{0%{transform:translateY(110%)}to{transform:translateY(0)}}@keyframes rule-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes menu-in{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes menu-out{0%{clip-path:inset(0)}to{clip-path:inset(0 0 100%)}}@keyframes nav-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes page-heading-in{0%{clip-path:inset(100% 0 0);transform:translateY(35px)}to{clip-path:inset(0);transform:translateY(0)}}@media (max-width:1000px){.solution-row{grid-template-columns:30px .65fr 1fr .8fr 44px;gap:16px}.solution-row-image{height:210px}.solution-row h3{font-size:38px}.menu-structure{gap:4vw}.menu-drawing{padding-right:4vw}.menu-panel nav a{font-size:36px}.orange-gallery .gallery-grid img{height:490px}}@media (max-width:700px){.hero-copy h1{margin-bottom:30px}.solution-row{grid-template-columns:30px 1fr 44px;gap:12px;padding:30px 0 35px}.solution-row h3{font-size:42px}.solution-row-copy{grid-area:2/2/auto/-1;max-width:350px}.solution-row-image{grid-area:3/1/auto/-1;height:270px;margin-top:15px}.solution-row-image img{object-position:center 40%}.solution-grid{gap:40px}.solution figure img{height:360px}.case-media .blueprint-frame>img{height:420px}.gallery-heading{padding-top:30px;display:block}.gallery-heading h2{font-size:35px}.gallery-heading>div{margin-top:25px}.orange-gallery .gallery-grid,.gallery-grid.portfolio-gallery{grid-template-columns:1fr;gap:30px}.orange-gallery .gallery-grid figure:first-child{grid-column:auto}.orange-gallery .gallery-grid figure:first-child img{height:530px}.orange-gallery .gallery-grid img{height:510px}.portfolio-gallery img{height:340px}.gallery-grid figcaption{font-size:10px}.next-project h2{font-size:30px}.next-project svg{width:36px;height:36px}.menu-panel{padding:20px var(--pad) 24px;min-height:100svh}.menu-panel .dialog-top{padding-bottom:15px}.menu-structure{grid-template-columns:1fr;gap:0}.menu-drawing{display:none}.menu-panel nav{padding:12px 0}.menu-panel nav a{gap:15px;padding:16px 0;font-size:clamp(26px,8vw,40px)}.menu-panel nav svg{width:24px;height:24px}.display-settings{flex-wrap:wrap;gap:18px;padding-top:14px}.display-settings>.eyebrow{width:100%;font-size:9px}.display-settings>button{gap:18px;font-size:12px}.curtain-title{font-size:clamp(34px,10vw,60px)}.curtain-axis-y{right:var(--pad)}.blueprint-overlay{inset:12px}.axis-x{transform:translate(-12px)}.axis-y{transform:translateY(-12px)}.axis-point{transform:translate(-17px,-17px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}.axis-point{display:none}.page-curtain{display:none!important}}html[data-motion=false] *,html[data-motion=false] :before,html[data-motion=false] :after{transition-duration:.001ms!important;animation-duration:.001ms!important}html[data-motion=false] .axis-point{display:none}html[data-large=true] .menu-panel nav a{font-size:clamp(28px,4.3vw,68px)}.orange-gallery .gallery-grid figure:first-child img{object-fit:contain;background:var(--choc)}.page-intro:after{content:"+";right:var(--pad);font:18px monospace;position:absolute;bottom:24px}.page-intro{background-image:linear-gradient(90deg,#0000 calc(75% - 1px),#1d160d29 75%,#0000 calc(75% + 1px));position:relative}.hero-copy{position:relative}.hero-copy:after{content:"+";z-index:3;font:18px monospace;position:absolute;bottom:-7px;right:-5px}.project-image .axis,.project-image .axis-point{opacity:0;transition:opacity .3s}.project-image:hover .axis{opacity:.3}.project-image:hover .axis-point{opacity:.8}@media (max-width:700px){.page-intro{background-image:none}.hero-copy:after{right:18px}.orange-gallery .gallery-grid figure:first-child img{height:560px}}.building-scene,.hero-figure .building-scene,.case-media .building-scene,.building-scene iframe,.building-scene.scene-ready iframe{background:0 0}.page-curtain{isolation:isolate;overflow:hidden}.curtain-grid{z-index:0;opacity:0;pointer-events:none;background-image:linear-gradient(#f0f0f01f 1px,#0000 1px),linear-gradient(90deg,#f0f0f01f 1px,#0000 1px);background-size:clamp(48px,7vw,110px) clamp(48px,7vw,110px);position:absolute;inset:0}.page-curtain .curtain-axis{z-index:1;transform-origin:0}.page-curtain .curtain-axis-y{transform-origin:top}.curtain-crosshair{z-index:2;border:1px solid var(--orange);opacity:0;border-radius:50%;width:23px;height:23px;position:absolute;top:25%;right:25%;transform:translate(50%,-50%)}.curtain-crosshair:before,.curtain-crosshair:after{content:"";background:var(--orange);position:absolute}.curtain-crosshair:before{width:1px;height:34px;top:-6px;left:10px}.curtain-crosshair:after{width:34px;height:1px;top:10px;left:-6px}.page-curtain .curtain-origin,.page-curtain .curtain-corner,.page-curtain .curtain-kicker,.page-curtain .curtain-title{z-index:3;position:relative}.page-curtain .curtain-origin,.page-curtain .curtain-corner{position:absolute}.curtain-stage{z-index:3;left:var(--pad);bottom:var(--pad);letter-spacing:.13em;color:var(--tangerine);font:11px monospace;position:absolute}.page-curtain.curtain-active .curtain-grid{animation:blueprint-grid-in .75s .12s var(--ease) both}.page-curtain.curtain-active .curtain-axis-x{animation:blueprint-axis-x .65s 50ms var(--ease) both}.page-curtain.curtain-active .curtain-axis-y{animation:blueprint-axis-y .65s .18s var(--ease) both}.page-curtain.curtain-active .curtain-crosshair{animation:blueprint-point-in .45s .42s var(--ease) both}.page-curtain.curtain-active .curtain-kicker{animation:nav-in .55s .18s var(--ease) both}.page-curtain.curtain-active .curtain-title{animation:page-heading-in .65s .26s var(--ease) both}@keyframes blueprint-grid-in{0%{opacity:0;transform:scale(1.06)}to{opacity:.7;transform:scale(1)}}@keyframes blueprint-axis-x{0%{opacity:0;transform:scaleX(0)}to{opacity:.38;transform:scaleX(1)}}@keyframes blueprint-axis-y{0%{opacity:0;transform:scaleY(0)}to{opacity:.38;transform:scaleY(1)}}@keyframes blueprint-point-in{0%{opacity:0;scale:.3}to{opacity:1;scale:1}}@media (max-width:700px){.curtain-crosshair{right:var(--pad)}.curtain-stage{bottom:calc(var(--pad) + 10px)}}@media (prefers-reduced-motion:reduce){.page-curtain.curtain-active .curtain-grid,.page-curtain.curtain-active .curtain-axis,.page-curtain.curtain-active .curtain-crosshair,.page-curtain.curtain-active .curtain-kicker,.page-curtain.curtain-active .curtain-title{animation:none!important}}.solution-row-image{isolation:isolate;background:var(--platinum);position:relative;overflow:hidden}.solution-row-image:after{content:"";pointer-events:none;border:1px solid #1d160d24;position:absolute;inset:0}.solution-row-image img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease);display:block;filter:none!important}.solution-row:hover .solution-row-image img{transform:scale(1.025);filter:none!important}.solution-row-image img[data-service-photo=build]{object-position:50% 38%}.solution-row-image img[data-service-photo=manage]{object-position:center center}.solution-row-image img[data-service-photo=finish]{object-position:50% 48%}.solution figure img[data-service-photo=build],.service-detail figure img[data-service-photo=build]{object-position:50% 37%;filter:none}.solution figure img[data-service-photo=manage],.service-detail figure img[data-service-photo=manage],.solution figure img[data-service-photo=finish],.service-detail figure img[data-service-photo=finish]{object-position:50% 50%;filter:none}@media (max-width:700px){.solution-row-image{height:clamp(270px,77vw,355px);margin-top:22px}.solution-row-image img[data-service-photo=build]{object-position:50% 38%}.solution-row-image img[data-service-photo=manage],.solution-row-image img[data-service-photo=finish]{object-position:50% 50%}.solution figure img[data-service-photo=build]{object-position:50% 30%}.solution figure img[data-service-photo=manage],.solution figure img[data-service-photo=finish]{object-position:50% 50%}}@media (prefers-reduced-motion:reduce){.solution-row-image img{transition:none}}.gallery-image-unavailable{text-align:center;background:var(--platinum);border:1px solid var(--line);width:100%;height:100%;min-height:340px;color:var(--choc);letter-spacing:.08em;text-transform:uppercase;box-sizing:border-box;justify-content:center;align-items:center;padding:32px;font:11px monospace;display:flex}.orange-gallery .gallery-image-unavailable{min-height:510px}@media (max-width:700px){.gallery-image-unavailable{min-height:340px}.orange-gallery .gallery-image-unavailable{min-height:510px}}.service-roles{border-top:1px solid var(--line);padding-top:clamp(54px,7vw,100px)}.service-roles>h2{text-transform:uppercase;max-width:850px;margin:32px 0 0;font-family:Handel,sans-serif;font-size:clamp(28px,5vw,68px);line-height:1.13}.service-roles-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(30px,6vw,110px);margin-top:clamp(35px,6vw,70px);display:grid}.service-roles-grid article{border-top:1px solid var(--line);padding-top:27px}.service-roles-grid h3{max-width:480px;margin:20px 0;font-size:clamp(24px,2.6vw,39px);line-height:1.15}.service-roles-grid p{max-width:480px;margin-bottom:25px;font-size:clamp(14px,1.3vw,17px);line-height:1.65}@media (max-width:700px){.service-roles-grid{grid-template-columns:1fr;gap:42px}.service-roles-grid h3{font-size:27px}.service-roles>h2{margin-top:25px}}:is(.solution-row-image,.solution figure,.service-detail figure) img[data-service-photo]{object-fit:cover;object-position:center center}.project-image>span.project-media-note{z-index:2;color:#fff;letter-spacing:.065em;text-transform:uppercase;background:#1d160de0;max-width:calc(100% - 102px);padding:8px 11px;font-size:9px;line-height:1.35;display:inline-block;top:auto;bottom:15px;left:15px}.project-image.project-image-archive{background:#e6e1d8;justify-content:center;align-items:center;min-height:clamp(250px,32vw,480px);padding:28px 26px;display:flex}.project-image.project-image-archive>img{object-fit:contain;object-position:center;filter:none;width:min(100%,490px);height:auto;max-height:330px}@media (max-width:700px){.project-image.project-image-archive{min-height:330px;padding:38px 22px}.project-image.project-image-archive>img{width:min(100%,380px);height:auto;max-height:270px}}:is(.solution-row-image,.solution figure,.service-detail figure) img[data-service-photo=build]{object-position:50% 50%}:is(.solution-row-image,.solution figure,.service-detail figure) img[data-service-photo=manage]{object-position:78% 50%}:is(.solution-row-image,.solution figure,.service-detail figure) img[data-service-photo=finish]{object-position:53% 50%}@media (max-width:700px){.solution-row-image,.solution figure,.service-detail figure{aspect-ratio:4/3;height:auto}:is(.solution-row-image,.solution figure,.service-detail figure) img[data-service-photo]{filter:none;height:100%}}.next-project h2{overflow-wrap:anywhere;min-width:0}.project-image-archive .blueprint-overlay{color:var(--choc)}.project-image img[src$="/union-bank/gate-corrected-v53.webp"],.case-media img[src$="/union-bank/gate-corrected-v53.webp"]{filter:none;object-position:50% 52%}.case-media img[src$="/union-bank/gate-corrected-v53.webp"]{object-fit:cover;width:100%;height:clamp(390px,46vw,650px)}img[src*="/assets/projects/11plc-control-room/"],img[src*="/assets/projects/pc-obi/"]{filter:brightness(1.08)contrast(1.015)}img[src*="/assets/projects/ogberuru/"]{filter:brightness(1.1)contrast(1.01)}img[src$="/pc-obi/profile-47-0.webp"],img[src$="/ogberuru/profile-43-0.webp"],img[src$="/pc-obi/profile-48-1.webp"]{filter:brightness(1.025)}.contact .tender-guidance{border-left:2px solid var(--orange);max-width:58ch;margin:-8px 0 24px;padding:0 0 0 13px;font-size:13px;line-height:1.65}.contact .tender-guidance+label{margin-top:8px}@media (max-width:480px){.contact form .field-row{grid-template-columns:minmax(0,1fr);gap:0}.contact form input,.contact form select,.contact form textarea{min-width:0}.contact .tender-guidance{margin-top:-5px}}.contact .tender-guidance a{text-underline-offset:3px;text-decoration:underline}.gallery-open{text-align:left;width:100%;color:inherit;cursor:zoom-in;margin:0;padding:0;display:block;position:relative}.gallery-open .blueprint-frame{width:100%}.gallery-open .gallery-expand{z-index:3;background:var(--choc);color:var(--paper);letter-spacing:.04em;text-transform:uppercase;pointer-events:none;padding:12px 14px;font-size:10px;font-weight:700;transition:background .2s;position:absolute;bottom:14px;right:14px}.gallery-open:hover .gallery-expand,.gallery-open:focus-visible .gallery-expand{background:var(--orange)}.gallery-open:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.gallery-lightbox{background:var(--choc);width:min(1120px,100vw - 24px);max-width:none;height:min(900px,100svh - 24px);max-height:none;color:var(--paper);margin:auto;overflow:hidden}.gallery-lightbox[open]{flex-direction:column;display:flex}.gallery-lightbox::backdrop{background:#0a0805eb}.gallery-lightbox-bar,.gallery-lightbox-bottom{flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;display:flex}.gallery-lightbox-bar{border-bottom:1px solid #f0f0f038}.gallery-lightbox-bar .eyebrow{font-size:10px}.gallery-lightbox button{color:inherit;min-height:44px;font-size:12px}.gallery-lightbox .gallery-close{background:var(--orange);align-items:center;gap:12px;padding:0 16px;display:flex}.gallery-lightbox .gallery-close span{font-size:24px;line-height:1}.gallery-lightbox-image{flex:1;justify-content:center;align-items:center;min-width:0;min-height:0;padding:14px 20px;display:flex;overflow:hidden}.gallery-lightbox-image img{object-fit:contain;width:100%;max-width:100%;height:100%;max-height:100%}.gallery-lightbox-image .gallery-image-unavailable{min-height:0;max-height:100%;color:var(--choc)}.gallery-lightbox-bottom{border-top:1px solid #f0f0f038}.gallery-lightbox-bottom p{max-width:60ch;font-size:12px;line-height:1.4}.gallery-lightbox-actions{flex-shrink:0;gap:8px;display:flex}.gallery-lightbox-actions button{border:1px solid #f0f0f066;padding:0 16px}.gallery-lightbox-actions button:hover{background:var(--orange)}@media (max-width:600px){.gallery-open .gallery-expand{padding:10px 12px;font-size:9px}.gallery-lightbox{width:calc(100vw - 12px);height:calc(100svh - 12px)}.gallery-lightbox-bar,.gallery-lightbox-bottom{padding:10px 12px}.gallery-lightbox-image{padding:8px}.gallery-lightbox-bottom{flex-wrap:wrap}.gallery-lightbox-bottom p,.gallery-lightbox-actions{width:100%}.gallery-lightbox-actions button{flex:1;padding:0 12px}}@media (prefers-reduced-motion:reduce){.gallery-open .gallery-expand{transition:none}}.service-photo-unavailable{text-align:center;background:var(--platinum);border:1px solid var(--line);width:100%;height:100%;min-height:270px;color:var(--choc);text-transform:uppercase;letter-spacing:.09em;justify-content:center;align-items:center;padding:24px;font-size:11px;font-weight:700;display:flex}.header-actions button,.header-actions a{text-transform:uppercase}.portfolio-gallery img[src$="/union-bank-benin-agbor/profile-20-0.webp"]{object-fit:contain;background:var(--platinum)}@media (max-width:420px){.header-actions .header-contact{white-space:nowrap;gap:6px;padding-inline:9px;font-size:10px}.header-actions>button{gap:9px;padding-inline:10px}}@media (max-width:700px){.project-case .case-media .blueprint-frame>img{object-fit:contain;width:100%;height:auto;max-height:620px;display:block}.project-case .case-media img[src$="/union-bank/gate-corrected-v53.webp"]{object-fit:contain;height:auto;max-height:620px}html[data-scene-in-view=true] .mobile-contact{visibility:hidden;pointer-events:none;transform:translateY(110%)}}
