@font-face{font-family:display;src:url(../media/manrope-s.p.0p-wng2nn8o-p.woff2)format("woff2");font-display:swap;font-weight:200 800}@font-face{font-family:display Fallback;src:local(Arial);ascent-override:106.45%;descent-override:29.96%;line-gap-override:0.0%;size-adjust:100.14%}.z2IF_a_className{font-family:display,display Fallback}.z2IF_a_variable{--halo-display:"display", "display Fallback"}
@font-face{font-family:body;src:url(../media/assistant-s.p.0xw0t0hr1xcps.woff2)format("woff2");font-display:swap;font-weight:200 800}@font-face{font-family:body Fallback;src:local(Arial);ascent-override:114.19%;descent-override:32.1%;line-gap-override:0.0%;size-adjust:89.41%}.lDSUsW_className{font-family:body,body Fallback}.lDSUsW_variable{--halo-body:"body", "body Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#111;--surface:#f6f6f6;--paper:#fff;--panel:#eee;--accent:#4e4e4e;--muted:#555;--line:#d8d8d8;--display:var(--halo-display), Arial, Helvetica, sans-serif;--body:var(--halo-body), Arial, sans-serif;--utility:ui-monospace, Menlo, Consolas, monospace;--gutter:40px;--header-height:68px}@media (max-width:991px){:root{--header-height:74px}}@media (max-width:767px){:root{--header-height:80px;--gutter:15px}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 16px)}body{background:var(--paper);color:var(--ink);font:18px/1.55 var(--body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,p,figure{margin:0}h1,h2{font-family:var(--display);letter-spacing:-.04em;text-wrap:balance;font-weight:550;line-height:1.1}h1{text-transform:uppercase;font-size:clamp(36px,4vw,65px)}h2{font-size:clamp(30px,3vw,47px)}h3{font-size:23px;font-weight:500;line-height:1.25}h1 em,h2 em{font-style:normal}p{color:var(--muted)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{object-fit:cover;max-width:100%;height:auto;display:block}ul,ol{margin:0;padding:0}a,button{touch-action:manipulation}button:disabled{cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{color:#242424;background:#c8c8c8}[hidden]{display:none!important}.wrap{width:calc(100% - var(--gutter) * 2);max-width:1840px;margin-inline:auto}.section-pad{padding-block:64px}.section-surface{background:var(--surface)}.section-panel{background:var(--panel)}.eyebrow{font:500 11px/1.5 var(--utility);text-transform:uppercase;letter-spacing:.115em;color:var(--accent);margin-bottom:22px}.fine-print{font-size:14px;line-height:1.5}.button{--button-bg:var(--ink);--button-color:var(--paper);--button-border:var(--ink);--button-fill:var(--paper);--button-active:var(--ink);--button-ease:cubic-bezier(.65, 0, .35, 1);isolation:isolate;border:1px solid var(--button-border);background:var(--button-bg);min-height:52px;color:var(--button-color);letter-spacing:.025em;text-align:left;transition:color .5s var(--button-ease);justify-content:space-between;align-items:center;gap:34px;padding:14px 24px;font-size:14px;font-weight:600;display:inline-flex;position:relative}.button:before{content:"";z-index:-1;background:var(--button-fill);transform-origin:100%;transition:transform .5s var(--button-ease);position:absolute;inset:0;transform:scaleX(0)}.button.outline{--button-bg:transparent;--button-color:var(--ink);--button-fill:var(--ink);--button-active:var(--paper)}.button:is(:hover,:focus-visible):not(:disabled){color:var(--button-active)}.button:is(:hover,:focus-visible):not(:disabled):before{transform-origin:0;transform:scaleX(1)}.button-arrow{transition:transform .5s var(--button-ease);flex-shrink:0;place-items:center;display:inline-grid}.button:is(:hover,:focus-visible):not(:disabled) .button-arrow{transform:rotate(45deg)}.link-arrow{vertical-align:-.18em;flex-shrink:0}.text-link{border-bottom:1px solid var(--line);align-items:center;gap:25px;min-height:44px;font-size:15px;font-weight:600;display:inline-flex}.text-link:hover{color:var(--accent)}.skip-link{z-index:100;background:#fff;padding:12px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:10px}.brand{flex-shrink:0;width:150px;display:block}.brand>span{aspect-ratio:2461/816;background:currentColor;width:100%;display:block;-webkit-mask:url(/halo-works-wordmark.webp) 50%/contain no-repeat;mask:url(/halo-works-wordmark.webp) 50%/contain no-repeat}.commitments{background:var(--surface);padding:48px 0 55px}.four-grid,.three-grid{grid-template-columns:repeat(4,1fr);gap:35px;display:grid}.three-grid{grid-template-columns:repeat(3,1fr)}.four-grid article{border-top:1px solid var(--line);padding-top:20px}.four-grid h3{margin:10px 0;font-size:21px}.four-grid p{font-size:16px}.section-heading-row{grid-template-columns:1.2fr 1fr;align-items:end;gap:60px;margin-bottom:38px;display:grid}.section-heading-row>div:last-child{justify-self:end;max-width:510px}.section-heading-row p:not(.eyebrow){margin-bottom:12px;font-size:17px}.section-heading-row .eyebrow,.partners-heading .eyebrow{margin-bottom:12px}.split-feature{grid-template-columns:1fr 1fr;align-items:center;gap:8%;display:grid}.split-feature>figure{position:relative}.split-feature img{aspect-ratio:1.1;object-fit:cover;width:100%}.split-feature figcaption{color:var(--ink);background:#fffe;padding:4px 10px;font-size:12px;position:absolute;bottom:12px;left:14px}.split-feature p:not(.eyebrow){margin:24px 0}.experience-detail{border-top:1px solid var(--line);align-items:center;gap:26px;margin-top:32px;padding-top:24px;display:flex}.experience-detail strong{font:400 62px/1 var(--display);letter-spacing:-.05em}.experience-detail span{max-width:180px;color:var(--muted);font-size:14px}.service-section{background:var(--surface)}.card-heading{justify-content:space-between;align-items:baseline;gap:15px;padding:18px 0 0;display:flex}.card-heading h3{font-size:21px}.card-heading span{color:var(--muted);font-size:13px}.section-note{margin-top:20px;font-size:13px}.enquiry-section{background:var(--ink);color:var(--surface)}.enquiry-layout{grid-template-columns:1fr 1.2fr;gap:8%;display:grid}.enquiry-layout>div:first-child>p:not(.eyebrow){color:#c4c4c4;max-width:380px;margin:25px 0}.enquiry-layout .eyebrow{color:#ababab}.enquiry-layout h2{font-size:clamp(36px,4vw,60px)}.enquiry-layout>div:first-child>a{width:fit-content;display:block}.contact-form{width:100%}.form-grid{grid-template-columns:1fr 1fr;gap:18px 20px;display:grid}.form-grid label{flex-direction:column;gap:7px;font-size:14px;display:flex}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #717171;border-radius:0;min-height:47px;padding:11px 13px;font-size:16px}.form-grid textarea{resize:vertical}.form-grid input[type=date]{width:auto}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#777}.form-grid select{appearance:auto}.form-grid input:disabled{opacity:.5}.consent,.date-flexible{align-items:flex-start;gap:10px;margin:18px 0;font-size:14px;display:flex}.consent input,.date-flexible input{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.date-flexible{margin:3px 0 0}.consent a{text-decoration:underline}.send-options{flex-wrap:wrap;gap:12px;margin:20px 0 14px;display:flex}.enquiry-section .button{--button-border:var(--paper);--button-bg:var(--paper);--button-color:var(--ink);--button-fill:var(--ink);--button-active:var(--paper)}.enquiry-section .button.outline{--button-bg:transparent;--button-color:var(--paper);--button-fill:var(--paper);--button-active:var(--ink)}.contact-form .fine-print{color:inherit;opacity:.8;max-width:600px}.enquiry-ready{border:1px solid #aaa;margin-top:20px;padding:20px}.enquiry-ready p{color:inherit;margin-top:8px}.enquiry-ready a{padding:10px 0;text-decoration:underline;display:inline-block}.project-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.image-placeholder{aspect-ratio:1.7;color:#5e5e5e;border:1px solid var(--line);background:#ededed;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:280px;display:flex}.image-placeholder>span{color:var(--ink);font-size:20px}.image-placeholder small{font-size:13px}.project-card>img{aspect-ratio:1.7;width:100%}.project-card:hover .image-placeholder{background:#e3e3e3}.process-section{background:var(--surface)}.process-grid{grid-template-columns:repeat(3,1fr);gap:40px;list-style:none;display:grid}.process-grid li{border-top:1px solid var(--line);padding-top:18px}.step-number{font:400 34px var(--display);color:var(--accent);margin-bottom:20px;display:block}.process-grid h3{margin-bottom:12px}.process-grid p{font-size:16px}.approval-band{background:var(--ink);color:#fff;padding:60px 0}.approval-band .wrap{grid-template-columns:1fr 1fr;gap:70px;display:grid}.approval-band p{color:#c9c9c9}.approval-band .eyebrow{color:#ababab}.authority-list{flex-wrap:wrap;gap:12px;margin:22px 0;display:flex}.authority-list span{border:1px solid #888;padding:8px 12px;font-size:14px}.faq{grid-template-columns:1fr 1.25fr;gap:8%;display:grid}.faq .text-link{margin-top:25px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;justify-content:space-between;gap:30px;padding:20px 0;font-size:19px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--accent);font-size:24px}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{padding:0 35px 25px 0;font-size:17px}.article-card>img{aspect-ratio:1.45;width:100%;margin-bottom:23px}.article-card .eyebrow{margin:0 0 12px;display:block}.article-card h3{font-size:25px}.article-card p{margin:16px 0;font-size:16px}.closing-cta{background:var(--surface);padding:80px 0}.closing-cta .wrap{position:relative}.closing-cta h2{max-width:900px;font-size:clamp(36px,4.5vw,64px)}.closing-cta .button{position:absolute;bottom:0;right:0}.site-footer{color:#f2f2f2;background:#1c1c1c;padding:65px 0 24px}.footer-top{grid-template-columns:1.15fr .8fr 1fr 1.2fr;gap:45px;display:grid}.site-footer .brand{margin-bottom:25px}.site-footer p{color:#bababa;margin-bottom:22px;font-size:17px}.site-footer .eyebrow{color:#bababa;font-size:10px}.site-footer h2{font:600 13px var(--body);letter-spacing:.1em;text-transform:uppercase;margin:8px 0 25px}.footer-top>div>a:not(.brand),.footer-service-links a{color:#c5c5c5;padding:5px 0;font-size:15px;display:block}.footer-top a>.link-arrow{margin-inline-start:5px}@media (min-width:1100px){.footer-top{grid-template-columns:1fr .8fr 2fr 1fr}.footer-service-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;display:grid}}.footer-top a:hover{color:#fff!important}.footer-bottom{color:#a9a9a9;border-top:1px solid #454545;justify-content:space-between;gap:20px;margin-top:55px;padding-top:24px;font-size:12px;display:flex}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:7px 12px;font-size:13px;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{content:"/";color:#888;margin-left:12px}.breadcrumbs a:hover{text-decoration:underline}.scope-layout{grid-template-columns:.85fr 1.2fr;gap:10%;display:grid}.scope-layout>div>p{margin:24px 0}.scope-list{list-style:none}.scope-list li{border-top:1px solid var(--line);padding:25px 0}.scope-list h3{margin-bottom:12px}.scope-list p{font-size:17px}.scope-note{border-left:2px solid var(--accent);padding:8px 0 8px 22px;font-size:16px}.budget-section{padding:65px 0}.budget-section .wrap{grid-template-columns:1fr 1fr;gap:8%;display:grid}.budget-section p{margin:18px 0}.plain-intro{padding:60px 0}.plain-intro h1{max-width:1000px;margin:35px 0 25px}.plain-intro>p:not(.eyebrow){max-width:800px}.prose{max-width:850px}.prose p{margin:20px 0}.prose h2{margin:44px 0 22px}.prose h3{margin:24px 0 12px}.prose a{text-underline-offset:4px;text-decoration:underline}.prose ul{color:var(--muted);margin:20px 0;padding-left:24px}.prose li{margin:12px 0}.about-message{background:var(--surface)}.manager-name{font-size:26px;color:var(--ink)!important}.document-grid{grid-template-columns:repeat(3,1fr);gap:30px;list-style:none;display:grid}.document-grid li{border:1px solid var(--line);padding:25px}.document-grid h3{margin-bottom:12px}.document-grid p{font-size:16px}.process-detail{grid-template-columns:1fr 1fr;gap:35px 70px;list-style:none;display:grid}.process-detail li{border-top:1px solid var(--line);padding:25px 0}.process-detail h2{margin:12px 0;font-size:29px}.process-detail p{margin:12px 0}.filter-bar{flex-wrap:wrap;gap:10px;margin-bottom:35px;display:flex}.filter-bar button{border:1px solid var(--line);background:#fff;min-height:44px;padding:10px 20px;font-size:14px}.filter-bar button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.gallery-grid{grid-template-columns:1fr 1fr;gap:50px 30px;display:grid}.gallery-card img{aspect-ratio:1.3;width:100%}.gallery-card .eyebrow{margin:20px 0 10px}.gallery-card p{margin-top:12px;font-size:16px}.gallery-card h2{font-size:29px}.gallery-note{background:var(--surface);margin-bottom:35px;padding:20px;font-size:16px}.concept-detail-photo{width:100%;max-height:700px}.article-shell{grid-template-columns:260px 1fr;gap:8%;padding-block:80px;display:grid}.article-index{align-self:start;position:sticky;top:35px}.article-index nav{flex-direction:column;gap:0;display:flex}.article-index a{border-bottom:1px solid var(--line);padding:14px 0;font-size:15px}.article-index a span{color:var(--accent);margin-right:12px}.article-body{max-width:780px}.article-body section{margin-bottom:45px;scroll-margin-top:30px}.article-body h2{margin-bottom:20px;font-size:32px}.article-body p{font-size:20px;line-height:1.7}.article-end{border-top:1px solid var(--line);margin-top:30px;padding:25px 0}.article-end p{font-size:18px}.project-preview-notice{background:var(--surface);border-left:3px solid var(--accent);color:var(--muted);margin:30px 0;padding:18px 24px;font-size:16px}.project-facts{border-block:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:25px;margin-bottom:45px;padding:35px 0;display:grid}.project-facts dt{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;font-size:12px}.project-facts dd{margin:0;font-size:18px}.before-after-grid{grid-template-columns:1fr 1fr;gap:25px;display:grid}.before-after-grid figcaption{text-transform:uppercase;letter-spacing:.1em;margin:15px 0;font-size:14px}.before-after-grid img{aspect-ratio:1.5;width:100%}.before-after-grid .image-placeholder{aspect-ratio:1.5}.project-narrative{grid-template-columns:repeat(3,1fr);gap:50px;padding-block:65px;display:grid}.project-narrative h2{margin-bottom:20px;font-size:29px}.contact-details{grid-template-columns:repeat(3,1fr);gap:35px;padding-block:45px;display:grid}.contact-details h2{margin-bottom:12px;font-size:20px}.contact-details a{padding:5px 0;font-size:18px;display:block}.contact-details p{font-size:16px}.empty-note{background:var(--surface);margin-top:35px;padding:30px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:1100px){.brand{width:125px}.four-grid{gap:22px}.card-heading{display:block}.card-heading span{margin-top:7px;display:block}.footer-top{gap:25px}}@media (max-width:850px){.section-pad{padding-block:65px}.section-heading-row{gap:30px}.four-grid{grid-template-columns:repeat(2,1fr);gap:30px}.split-feature{gap:35px}.enquiry-layout{grid-template-columns:.8fr 1.2fr;gap:35px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.three-grid{gap:22px}.three-grid h3{font-size:22px}.footer-top{grid-template-columns:1fr 1fr;gap:40px}.footer-bottom{flex-wrap:wrap}.scope-layout,.faq{gap:40px}.document-grid{grid-template-columns:1fr 1fr}.article-shell{grid-template-columns:1fr;gap:35px}.article-index{position:static}.article-index nav{flex-flow:wrap;gap:0 20px;display:flex}.project-facts{grid-template-columns:1fr 1fr}.project-narrative{gap:28px}.project-narrative h2{font-size:24px}}@media (max-width:600px){body{font-size:17px}.section-pad{padding-block:50px}.commitments{padding:35px 0}.four-grid{gap:24px 20px}.four-grid h3{font-size:19px}.four-grid p{font-size:15px}.section-heading-row{margin-bottom:30px;display:block}.section-heading-row>div:last-child{margin-top:20px}.section-heading-row>div:empty{display:none}.section-heading-row h2{font-size:31px}.split-feature{grid-template-columns:1fr;gap:30px}.split-feature--reverse figure{order:2}.split-feature img{aspect-ratio:1.25}.split-feature p:not(.eyebrow){margin:18px 0}.experience-detail{margin:25px 0}.card-heading{display:flex}.card-heading h3{font-size:22px}.card-heading span{text-align:right;font-size:12px}.enquiry-layout{grid-template-columns:1fr;gap:35px}.enquiry-layout h2{font-size:39px}.enquiry-layout>div:first-child>p:not(.eyebrow){margin:18px 0}.enquiry-layout>div:first-child .fine-print{display:none}.form-grid{grid-template-columns:1fr 1fr;gap:16px 12px}.form-grid .full{grid-column:1/-1}.form-grid label{font-size:13px}.send-options .button{white-space:nowrap;flex:1;gap:12px;padding-inline:15px}.project-grid{grid-template-columns:1fr;gap:32px}.image-placeholder{min-height:210px}.process-grid{grid-template-columns:1fr 1fr;gap:30px 25px}.process-grid h3{font-size:21px}.process-grid p{font-size:15px}.step-number{margin-bottom:15px;font-size:27px}.approval-band{padding:45px 0}.approval-band .wrap{grid-template-columns:1fr;gap:25px}.faq{grid-template-columns:1fr;gap:30px}.faq h2{font-size:32px}.faq summary{padding:18px 0;font-size:18px}.three-grid{grid-template-columns:1fr;gap:40px}.article-card>img{aspect-ratio:1.5;margin-bottom:18px}.article-card h3{font-size:25px}.closing-cta{padding:45px 0}.closing-cta .button{margin-top:30px;position:static}.closing-cta h2{font-size:36px}.site-footer{padding-top:45px}.footer-top{gap:35px 22px}.footer-top>div:first-child{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:5px 20px;display:grid}.site-footer .brand{align-self:start;width:135px}.site-footer p{font-size:15px}.site-footer h2{margin-bottom:18px}.footer-top>div>a:not(.brand),.footer-service-links a{font-size:14px}.footer-top>div:last-child{grid-column:1/-1}.footer-bottom{gap:12px;margin-top:35px;padding-bottom:65px}.scope-layout{grid-template-columns:1fr;gap:28px}.scope-list li{padding-block:20px}.budget-section{padding:45px 0}.budget-section .wrap{grid-template-columns:1fr;gap:20px}.plain-intro{padding:35px 0}.plain-intro h1{margin-top:30px;font-size:36px}.process-detail{grid-template-columns:1fr;gap:10px}.document-grid{grid-template-columns:1fr;gap:16px}.gallery-grid{grid-template-columns:1fr;gap:35px}.filter-bar{gap:8px}.filter-bar button{padding:9px 15px;font-size:13px}.article-shell{padding-block:40px}.article-index a{font-size:14px}.article-body h2{font-size:28px}.article-body p{font-size:18px}.project-facts{gap:25px 20px;margin-bottom:25px;padding-block:25px}.project-facts dd{font-size:16px}.before-after-grid{grid-template-columns:1fr;gap:15px}.project-narrative{grid-template-columns:1fr;gap:30px;padding-block:40px}.contact-details{grid-template-columns:1fr;gap:25px;padding-block:35px}.prose h2{font-size:29px}}@media (max-width:360px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.card-heading{display:block}.card-heading span{text-align:left}.send-options{flex-direction:column}.four-grid{grid-template-columns:1fr}.process-grid{gap:25px 18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.form-grid .date-flexible{flex-direction:row;align-items:center;gap:10px;margin-top:10px}.form-grid .date-flexible input{width:18px;height:18px;min-height:18px;padding:0}
.hero-stage{isolation:isolate;min-height:clamp(690px,100svh,1010px);color:var(--surface);background:#2a2a2a;align-items:end;display:grid;position:relative}.hero-stage-media,.hero-stage-media img,.hero-stage:after{width:100%;height:100%;position:absolute;inset:0}.hero-stage-media{z-index:-2}.hero-stage-media img{object-position:center;filter:url(#hero-photo-balance)}.hero-stage:after{content:"";z-index:-1;background:linear-gradient(#151515c9 0,#15151586 130px,#0000 255px),linear-gradient(0deg,#151515f0 0,#151515dd 85px,#151515a8 245px,#0000 445px)}.hero-stage-inner{padding-block:160px 26px}.hero-stage-copy{border-bottom:1px solid #f2f2f28f;grid-template-columns:1.45fr .65fr;align-items:end;gap:25px 6%;padding-block:22px 32px;display:grid}.hero-stage h1{letter-spacing:-.047em;text-wrap:nowrap;font-size:clamp(46px,5.25vw,84px);font-weight:500;line-height:1}.hero-stage .eyebrow{color:#e4e4e4;margin-bottom:16px}.hero-stage-action{max-width:355px}.hero-stage-action p{color:#ededed;margin-bottom:17px;font-size:18px;line-height:1.4}.hero-stage .button{--button-bg:var(--paper);--button-color:var(--ink);--button-border:var(--paper);--button-fill:var(--ink);--button-active:var(--paper)}.hero-stage-controls{justify-content:space-between;align-items:center;gap:12px 28px;margin-right:75px;padding-top:11px;display:flex}.hero-scenes{gap:6px;display:inline-flex}.hero-scenes button{color:#eaeaea;min-height:39px;font:600 12px/1.3 var(--display);background:0 0;border:1px solid #0000;padding:8px 14px;transition:border-color .2s,background .2s}.hero-scenes button:hover{border-color:#eaeaea}.hero-scenes button[aria-pressed=true]{color:#f9f9f9;background:#e1e1e124;border-color:#c5c5c5}.hero-stage-caption{color:#eaeaea;font:11px/1.35 var(--utility);text-transform:uppercase;letter-spacing:.065em}.home-intro{text-align:center;padding-block:66px 62px}.home-intro h2{max-width:775px;margin-inline:auto}.home-intro .eyebrow{margin-bottom:13px}.home-intro p:not(.eyebrow){max-width:615px;margin:19px auto 7px}.home-actions{flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:20px;display:flex}.home-intro .home-actions{justify-content:center}.home-promises{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px 24px;display:grid}.home-promises article{border-top:1px solid var(--line);padding-top:15px}.home-promises h3{margin-block:8px 4px;font-size:19px}.home-promises p{font-size:16px;line-height:1.45}.commitments{background:var(--panel);padding-block:39px 43px}.commitments h2{margin-bottom:25px;font-size:clamp(24px,2.2vw,34px)}.commitments .four-grid{gap:18px 30px}.commitments article{border-color:#a0a0a0}.commitments article svg{color:var(--accent)}.commitments h3{font-weight:700}.home-experience{grid-template-columns:minmax(205px,.76fr) minmax(0,1.6fr) auto;align-items:center;gap:25px 5%;padding-block:38px;display:grid}.home-experience-number{align-items:center;gap:17px;display:flex}.home-experience-number strong{font:500 clamp(50px, 6vw, 84px)/.95 var(--display);letter-spacing:-.07em}.home-experience-number strong span{color:var(--accent);vertical-align:top;font-size:.65em}.home-experience-number>span{color:var(--muted);font-size:14px;line-height:1.25}.home-experience .eyebrow{margin-bottom:8px}.home-experience h2{font-size:clamp(23px,2.2vw,32px)}.home-services{background:var(--surface)}.home-section-heading{justify-content:space-between;align-items:end;gap:14px 30px;margin-bottom:27px;display:flex}.home-section-heading .eyebrow{margin-bottom:10px}.home-section-heading h2{text-transform:uppercase}.service-mosaic{background:var(--surface);grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;display:grid}.service-tile{isolation:isolate;aspect-ratio:1.4;background:var(--ink);min-height:175px;color:var(--surface);align-items:end;display:flex;position:relative;overflow:hidden}.service-tile:after,.service-tile img{width:100%;height:100%;position:absolute;inset:0}.service-tile img{z-index:-2;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.service-tile:after{content:"";z-index:-1;background:linear-gradient(0deg,#131313 0,#131313c2 29%,#1313131c 71%,#0000)}.service-tile:hover img,.service-tile:focus-visible img{transform:scale(1.055)}.service-tile:focus-visible{outline-offset:-3px;outline-color:#e1e1e1}.service-tile-label{justify-content:space-between;align-items:end;gap:9px;width:100%;padding:15px clamp(12px,1.5vw,23px);display:flex}.service-tile-label h3{font:600 clamp(16px, 1.55vw, 24px)/1.14 var(--display);letter-spacing:-.035em}.service-tile-label svg{color:#d3d3d3;flex-shrink:0}.assessment-slice{grid-template-columns:1fr 1.1fr;align-items:center;gap:32px 9%;padding-block:60px;display:grid}.assessment-slice p:not(.eyebrow),.home-design p:not(.eyebrow){max-width:540px;margin-block:20px 14px}.assessment-slice figure,.home-design figure{position:relative;overflow:hidden}.assessment-slice img{aspect-ratio:1.95;width:100%}.assessment-slice figcaption,.home-design figcaption,.service-gallery-main figcaption{color:#f2f2f2;font:11px/1.4 var(--utility);background:#1f1f1fe8;padding:6px 9px;position:absolute;bottom:13px;left:14px}.home-design{background:var(--surface);grid-template-columns:1.08fr .92fr;display:grid}.home-design>div{align-self:center;padding:clamp(35px,6vw,105px)}.home-design img{width:100%;height:100%;position:absolute;inset:0}.home-design figure{min-height:430px}.home-design h2{max-width:500px}.project-showcase{background:var(--paper)}.project-rail-track,.project-marquee-track,.project-record-grid{margin:0;padding:0;list-style:none}.project-rail-track{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-color:#959595 var(--surface);grid-auto-columns:min(70%,480px);grid-auto-flow:column;gap:clamp(12px,1.6vw,18px);padding-block:4px 14px;display:grid;overflow-x:auto}.project-rail-track>li{scroll-snap-align:start}@media (min-width:992px),(min-width:600px) and (hover:hover){.project-rail-track{scroll-snap-type:none;gap:3px;padding-block-end:0;display:flex;overflow:clip}.project-rail-track>li{flex:1 1 0;min-width:0;transition:flex-grow 1.1s cubic-bezier(.65,0,.35,1)}.project-rail-track>li[data-next=true]{flex-grow:2}.project-rail-track>li[data-active=true]{flex-grow:6}.project-rail-track li[data-active=false] .project-card{cursor:pointer}.project-rail-track .project-card>:is(img,.image-placeholder){aspect-ratio:auto;height:clamp(235px,31vw,490px);overflow:hidden}.project-rail-track li[data-active=false] .project-card>img{filter:brightness(.9)}.project-rail-track li[data-active=false] .image-placeholder :is(span,small){opacity:0;position:absolute}.project-rail-track .project-card .card-heading{white-space:nowrap;transition:opacity .6s;overflow:hidden}.project-rail-track .card-heading>:is(.eyebrow,h3){text-overflow:ellipsis;max-inline-size:100%;overflow:hidden}.project-rail-track li[data-active=false] .card-heading{opacity:0}.project-rail-track li .project-card>img{transition:filter 1.1s cubic-bezier(.65,0,.35,1)}}@media (min-width:992px){.project-rail{position:relative}.project-rail-track>li:last-child:not(:only-child) .card-heading{padding-inline-end:166px}.project-rail-controls{position:absolute;inset-block-end:0;inset-inline-end:0}}:is(.project-rail-controls,.project-marquee-controls):not([hidden]){justify-content:end;gap:8px;margin-top:12px;display:flex}:is(.project-rail-controls,.project-marquee-controls) button{border:1px solid var(--line);background:var(--paper);width:46px;height:46px;color:var(--ink);place-items:center;display:grid}@media not (min-width:600px),(not (min-width:992px)) and (hover:none),(prefers-reduced-motion:reduce){.project-rail-controls .project-rail-rotation{display:none}}:is(.project-rail-controls,.project-marquee-controls) button:first-child svg{rotate:180deg}.project-rail-controls button[aria-disabled=true]{color:var(--muted);background:var(--surface);cursor:default}:is(.project-rail-controls,.project-marquee-controls) button:not([aria-disabled=true]):hover{background:var(--ink);color:#fff}.project-marquee-controls{flex-shrink:0}@media (prefers-reduced-motion:reduce){.project-marquee-controls .project-marquee-playback{display:none}}.project-marquee-track{overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#959595 var(--surface);grid-template-rows:repeat(2,auto);grid-auto-columns:clamp(235px,26vw,405px);grid-auto-flow:column;gap:24px 16px;padding-block-end:12px;display:grid;overflow-x:auto}.project-marquee-track .project-card{border-bottom:1px solid var(--line);flex-direction:column;height:100%;padding-bottom:12px;display:flex}.project-marquee-track .project-card>img{aspect-ratio:1.6;transition:filter .35s}.project-marquee-track .card-heading{flex:1}.project-marquee-track .card-heading .eyebrow{margin-bottom:0}.project-marquee-track .card-heading>span{margin-top:auto}.project-marquee-archive:nth-child(odd){grid-row:span 2}.project-marquee-archive>a{background:var(--ink);height:100%;min-height:200px;color:var(--paper);flex-direction:column;justify-content:space-between;gap:22px;padding:clamp(20px,2.3vw,34px);display:flex}.project-marquee-archive .eyebrow{color:#d8d8d8}.project-marquee-archive a>span:last-child{font:500 clamp(24px, 2.4vw, 38px)/1.15 var(--display);letter-spacing:-.035em;justify-content:space-between;align-items:end;gap:12px;display:flex}.project-marquee-archive a:hover{background:#2a2a2a}.project-marquee-archive a:focus-visible{outline:2px solid var(--paper);outline-offset:-6px}@media (max-width:767px){.project-marquee-controls button{width:44px;height:44px}}.project-card .card-heading{flex-direction:column;align-items:start;gap:6px;padding-top:13px;display:flex}.project-card .card-heading h3{font-weight:650}.project-card .card-heading span{align-items:center;gap:8px;display:flex}.project-card:hover .card-heading h3{color:var(--accent)}.image-placeholder{background-color:var(--surface);aspect-ratio:1.5;text-align:center;background-image:linear-gradient(90deg,#65656512 1px,#0000 1px),linear-gradient(0deg,#65656512 1px,#0000 1px);background-size:24px 24px;gap:6px;min-height:0;padding:14px}.image-placeholder svg{color:#787878;width:min(35%,130px);max-height:44%}.image-placeholder>span{font-size:clamp(14px,1.6vw,20px)}.image-placeholder small{color:var(--muted);font:10px/1.4 var(--utility);text-transform:uppercase;letter-spacing:.09em}.home-delivery{background:var(--panel)}.delivery-grid,.client-records{grid-template-columns:repeat(3,minmax(0,1fr));gap:23px 15px;display:grid}.delivery-grid article{background:var(--paper)}.delivery-grid img{aspect-ratio:2.3;width:100%;display:block}.delivery-card-copy{gap:14px;padding:16px 20px 20px;display:flex}.delivery-card-copy>span{color:var(--accent);font:500 11px/1.9 var(--utility)}:is(.delivery-card-copy,.client-records) h3{font:650 clamp(17px, 1.6vw, 22px)/1.28 var(--display);margin-bottom:6px}:is(.delivery-card-copy,.client-records) p:not(.eyebrow){font-size:16px;line-height:1.45}.comparison-table{table-layout:fixed;border-collapse:collapse;text-align:left;width:100%;font-size:clamp(14px,1.5vw,18px);line-height:1.4}.comparison-table th,.comparison-table td{vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:15px clamp(8px,1.5vw,22px)}.comparison-table thead{background:var(--ink);color:var(--paper)}.comparison-table thead th:first-child{width:22%}.comparison-table tbody th{color:var(--ink);background:var(--surface)}.comparison-table tbody td{color:var(--muted)}.comparison-table tbody td+td{border-left:1px solid var(--line)}.home-records{background:var(--surface)}.client-records{gap:15px}.client-records article{background:var(--paper);border-top:2px solid var(--accent);padding:clamp(17px,2vw,27px)}.client-records .eyebrow{margin-bottom:14px}.home-specialists{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px 32px;padding-block:30px;display:flex}.home-specialists h2{margin-bottom:5px;font-size:clamp(20px,2vw,29px)}.home-specialists p{font-size:16px}.home-specialists ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.home-specialists li{border:1px solid var(--line);font:550 12px/1.4 var(--display);text-transform:uppercase;padding:7px 13px}.service-index,.project-index{padding-block:29px 67px}.project-index .listing-intro{margin-bottom:22px}.project-index.project-reference-page{padding-top:clamp(24px,3vw,44px)}.project-index:is(.project-browse,.project-reference-page) .listing-intro{flex-direction:column;align-items:flex-start;gap:10px;margin-block:24px 26px;display:flex}.project-index:is(.project-browse,.project-reference-page) .listing-intro .eyebrow{order:-1;margin:0}.project-reference-page .listing-intro h1{max-width:1000px}.project-browse-actions{flex-wrap:wrap;align-items:center;gap:12px 24px;margin-bottom:32px;display:flex}.project-enquiry-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.project-enquiry-actions .button{gap:15px;min-height:48px}.project-index>.project-enquiry-actions{margin-bottom:37px}.case-action-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:13px 30px;display:flex}.community-directory{border-block:1px solid var(--line);margin-block:36px;padding-block:22px}.community-directory h2{margin-bottom:22px;font-size:clamp(24px,2.8vw,37px)}.community-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 36px;display:grid}.community-groups h3{font:600 12px/1.4 var(--utility);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.community-groups ul{margin:0;padding:0;list-style:none}.community-groups a{border-top:1px solid var(--line);gap:2px;padding-block:10px;display:grid}.community-groups a:hover strong{text-underline-offset:3px;text-decoration:underline}.community-groups strong{justify-content:space-between;align-items:center;gap:8px;display:flex}.community-groups span{color:var(--muted);font-size:16px}.project-records+.project-records{margin-top:38px}.project-records h2{margin-bottom:18px;font-size:clamp(24px,2.8vw,37px)}.project-records .filter-bar{margin-block:0 21px}.project-section-intro{max-width:66ch;margin:-8px 0 19px}.location-case-study{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);grid-template-areas:"photos summary";align-items:start;gap:20px clamp(24px,4vw,54px);padding-block:clamp(22px,4vw,44px);display:grid}.location-case-study:last-child{padding-bottom:0}.location-case-study>[role=group]{grid-area:photos;min-width:0}.location-case-copy{grid-area:summary}.location-case-copy h3{margin-bottom:12px;font-size:clamp(25px,3.2vw,44px)}.location-case-copy .eyebrow{margin-bottom:8px}.location-case-links{flex-wrap:wrap;gap:8px 20px;display:flex}.location-case-facts{margin-block:20px}.location-case-facts>div{border-top:1px solid var(--line);grid-template-columns:100px minmax(0,1fr);gap:8px;padding-block:7px;display:grid}.location-case-facts dt{color:var(--muted)}.location-case-facts dd{margin:0;font-weight:600}@media (max-width:767px){.location-case-study{grid-template-columns:minmax(0,1fr);grid-template-areas:"summary""photos"}}.project-record-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.project-browse .project-record-grid>li{display:grid}.project-browse .project-record-grid .project-card{border-bottom:1px solid var(--line);flex-direction:column;min-width:0;padding-bottom:13px;display:flex}.project-browse .project-record-grid .card-heading{flex:1}.project-browse .project-record-grid .card-heading .eyebrow{margin-bottom:1px}.project-browse .project-record-grid .card-heading>span{margin-top:auto;padding-top:4px}.project-card{display:block}:is(.project-rail-track,.project-marquee-track,.project-record-grid) .project-card:focus-visible{outline-offset:-3px}:is(.project-rail-track,.project-record-grid) .project-card>img{aspect-ratio:1.5;transition:filter .35s}:is(.project-rail-track,.project-marquee-track,.project-record-grid) .project-card:hover>img{filter:brightness(.83)}.community-guide .document-grid{margin:0;padding:0}.community-guide .document-grid li{background:var(--surface)}.reference-client{margin:-12px 0 24px}.reference-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:26px clamp(24px,4vw,54px);display:grid}.reference-gallery{min-width:0}.reference-gallery figcaption{color:var(--muted);margin-top:11px;font-size:13px}.reference-scope{border:1px solid var(--line);background:var(--surface);padding:clamp(20px,2.5vw,34px)}.reference-scope .eyebrow{margin-bottom:8px}.reference-scope h2{font-size:clamp(25px,2.6vw,36px)}.reference-scope ul{margin-block:18px;padding-left:20px}.reference-scope li+li{margin-top:10px}.reference-scope>p:not(.eyebrow){font-size:16px}.reference-scope .project-enquiry-actions{margin-top:18px}.reference-budget{border-top:1px solid var(--line);gap:4px;margin-top:20px;padding-top:16px;display:grid}.reference-budget span{color:var(--muted);font-size:13px}.reference-budget strong{color:var(--ink)}.reference-links,.project-budget-note{flex-wrap:wrap;align-items:center;gap:8px 26px;margin-top:28px;display:flex}.project-budget-note{border:1px solid var(--line);background:var(--surface);justify-content:space-between;padding:10px 18px}.case-action-row{padding-block:19px}.project-back{margin-top:18px}.service-index-outdoor{background:var(--surface);border:1px solid var(--line);justify-content:space-between;align-items:end;gap:16px 35px;margin-top:32px;padding:23px 26px;display:flex}.service-index-outdoor h2{margin-bottom:6px;font-size:clamp(22px,2vw,31px)}.service-gallery{color:var(--surface);background:#212121;grid-template-rows:1fr auto;display:grid}.service-gallery-main{min-height:350px;position:relative;overflow:hidden}.service-gallery-main figcaption{z-index:2}.service-gallery-main img{width:100%;height:100%;position:absolute;inset:0}.service-gallery-thumbs{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding-top:2px;display:grid}.service-gallery-thumbs button{color:var(--surface);text-align:left;background:#212121;border:0;border-bottom:2px solid #0000;padding:0;position:relative}.service-gallery-thumbs button[aria-pressed=true]{border-color:#c3c3c3}.service-gallery-thumbs button:hover img{filter:brightness(.95)}.service-gallery-thumbs img{filter:brightness(.74);width:100%;height:clamp(59px,6vw,95px)}.service-gallery-thumbs span{min-height:30px;padding:5px 9px 7px;font-size:13px;line-height:1.35;display:block}.service-jumps{top:var(--header-height);z-index:25;background:var(--paper);border-block:1px solid var(--line);position:sticky}.service-jumps .wrap{align-items:center;gap:clamp(18px,3vw,46px);display:flex}.service-jump-links{scrollbar-width:none;gap:clamp(18px,3vw,46px);min-width:0;display:flex;overflow-x:auto}.service-jumps a{white-space:nowrap;align-items:center;gap:7px;min-height:47px;font-size:15px;font-weight:650;display:inline-flex}.service-jumps a:hover{color:var(--accent)}.service-jumps .service-jump-enquire{flex-shrink:0;margin-left:auto}.service-scope-grid{border-block:1px solid var(--line);margin:0;padding:0;list-style:none}.service-scope-grid li{gap:9px var(--gutter);grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);padding:22px 0;display:grid}.service-scope-grid li+li{border-top:1px solid var(--line)}.service-scope-grid h3{font-weight:700}.service-scope-grid p{font-size:17px}.service-scope>.scope-note{max-width:875px;margin-top:23px}.service-related{border-top:1px solid var(--line);padding-block:32px 58px}.service-related .section-heading-row{margin-bottom:22px}.service-related .service-mosaic{background:0 0;gap:clamp(8px,1.4vw,22px)}.service-related .service-mosaic:has(>:only-child){grid-template-columns:minmax(0,420px)}.service-related .service-tile{width:100%;min-width:0}.service-related .service-tile-label h3{overflow-wrap:anywhere}@media (min-width:841px){.service-related .service-mosaic{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.service-related .service-tile{aspect-ratio:1.7}}.enquiry-section{background:#222}.enquiry-layout{grid-template-columns:.78fr 1.22fr;align-items:start;gap:35px 9%}.enquiry-layout h2{max-width:420px}.enquiry-layout>div:first-child>.enquiry-direct{border-top:1px solid #636363;align-items:center;gap:10px;width:min(100%,315px);min-height:48px;display:flex}.enquiry-direct span{flex:1}.enquiry-direct:hover{color:#cdcdcd}.form-key{color:inherit;margin-bottom:13px;font-size:13px}.enquiry-section .form-grid input,.enquiry-section .form-grid select,.enquiry-section .form-grid textarea{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--surface);background:#2d2d2d;border-color:#7f7f7f}.enquiry-section .form-grid input::placeholder,.enquiry-section .form-grid textarea::placeholder{color:#c5c5c5}.form-grid .completion-field{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:7px 17px;display:grid}.completion-field .date-flexible{min-height:47px;margin:0}.date-flexible input,.consent input{flex-shrink:0}.send-options .button{justify-content:start;gap:9px}.enquiry-ready details{margin-top:4px}.enquiry-ready summary{cursor:pointer;padding-block:7px}.enquiry-ready textarea{width:100%;margin-top:8px;padding:10px;font-size:15px;display:block}.contact-details{border-top:0}.case-body{padding-block:28px 60px}.case-comparison>h2,.case-details>h2{margin-bottom:18px}.case-details{margin-bottom:26px}.case-details img{aspect-ratio:1.5;width:100%}.case-body .project-narrative{border-block:1px solid var(--line);margin-block:33px}.case-body .project-narrative h2{font-size:clamp(24px,2.6vw,36px)}.whatsapp-float{right:max(20px, env(safe-area-inset-right));bottom:max(70px, env(safe-area-inset-bottom));z-index:40;color:#fff;background:#25d366;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:14px;transition:opacity .4s,translate .4s,background-color .2s,box-shadow .2s;display:flex;position:fixed;box-shadow:0 2px 8px #0000001f}.whatsapp-float:hover{background:#22c55e;box-shadow:0 6px 18px #25d36659}.whatsapp-float span{color:#fff;pointer-events:none;opacity:0;background:#2b2b2b;border:1px solid #bbb;padding:6px 10px;transition:opacity .18s;position:absolute;top:50%;right:calc(100% + 7px);transform:translateY(-50%)}.whatsapp-float:hover span,.whatsapp-float:focus-visible span{opacity:1}@media (prefers-reduced-motion:no-preference){.whatsapp-float:not(:hover,:focus-visible){animation:1.8s ease-in-out infinite whatsapp-ring}.whatsapp-float:not(:hover,:focus-visible):before,.whatsapp-float:not(:hover,:focus-visible):after{content:"";z-index:-1;pointer-events:none;border:2px solid #25d3668c;border-radius:50%;animation:1.8s ease-out infinite whatsapp-pulse-ring;position:absolute;inset:-7px}.whatsapp-float:not(:hover,:focus-visible):after{animation-delay:.9s}}@keyframes whatsapp-ring{0%,44%,to{transform:rotate(0)scale(1)}4%,12%,20%{transform:rotate(-12deg)scale(1.04)}8%,16%,24%{transform:rotate(12deg)scale(1.04)}30%{transform:rotate(-6deg)scale(1.02)}36%{transform:rotate(6deg)scale(1.02)}}@keyframes whatsapp-pulse-ring{0%{opacity:.65;transform:scale(.82)}70%,to{opacity:0;transform:scale(1.5)}}.hero-stage :focus-visible,.enquiry-section :focus-visible,.site-footer :focus-visible{outline-color:#cdcdcd}@media (max-width:1080px){.hero-stage-copy{grid-template-columns:1.25fr .75fr;gap:22px 5%}.hero-stage h1{font-size:clamp(37px,5.65vw,65px)}.home-promises{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:840px){.service-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-stage-action p{font-size:16px}.hero-stage-copy{grid-template-columns:1.18fr .82fr}.home-experience{grid-template-columns:auto 1fr}.home-experience>a{grid-column:2;justify-self:start}.project-record-grid,.delivery-grid,.client-records{grid-template-columns:repeat(2,minmax(0,1fr))}.project-rail-track{grid-auto-columns:min(62%,480px)}.enquiry-layout{grid-template-columns:.78fr 1.22fr}.form-grid .completion-field{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.service-gallery-main{aspect-ratio:1.62;min-height:0}.service-gallery-main img{object-position:center 54%}.service-gallery-thumbs img{height:64px}.service-jumps .wrap,.service-jump-links{gap:14px}.service-jumps .service-jump-enquire{border-left:1px solid var(--line);padding-left:12px}.service-jumps a{font-size:14px}.service-jumps a:focus-visible{outline-offset:-3px}}@media (max-width:660px){.hero-stage{min-height:max(640px,94svh)}.hero-stage-media img{object-position:53% center}.hero-stage:after{background:linear-gradient(#151515a6 0,#15151558 104px,#0000 210px),linear-gradient(0deg,#151515fc 0,#151515ed 150px,#151515b5 315px,#0000 510px)}.hero-stage-inner{padding-block:127px 66px}.hero-stage-copy{grid-template-columns:1fr;gap:15px;padding-block:12px 17px}.hero-stage h1{font-size:clamp(34px,8.4vw,54px)}.hero-stage .eyebrow{margin-bottom:9px}.hero-stage-action p{margin-bottom:11px;font-size:17px}.hero-stage-controls{flex-wrap:wrap;gap:7px 14px;margin-right:0;padding-top:10px}.hero-scenes button{min-height:44px;padding-inline:11px}.hero-stage-caption{font-size:10px}.home-intro{padding-block:44px 41px}.commitments{padding-block:31px 35px}.commitments h2{margin-bottom:17px}.commitments .four-grid{gap:18px}.commitments article{padding-top:13px}.commitments h3{margin-block:6px}.home-experience{grid-template-columns:1fr;gap:13px;padding-block:29px 31px}.home-experience-number{gap:12px}.home-experience h2{max-width:390px}.home-experience>a{grid-column:auto}.home-section-heading{align-items:end;margin-bottom:19px}.home-section-heading .text-link{gap:9px;font-size:14px}.home-section-heading .eyebrow{margin-bottom:6px}.service-tile{aspect-ratio:1.16;min-height:132px}.service-tile-label{padding:11px}.service-tile-label h3{font-size:clamp(15px,4vw,22px)}.service-tile-label svg{width:15px;height:15px}.assessment-slice,.home-design{grid-template-columns:1fr}.assessment-slice{gap:20px;padding-block:43px}.home-design>div{padding:31px var(--gutter) 40px}.home-design figure{aspect-ratio:1.44;min-height:0}.service-scope-grid li{grid-template-columns:minmax(0,1fr);padding:18px 0}.service-index,.project-index{padding-block:21px 43px}.service-index-outdoor{flex-direction:column;align-items:start;padding:17px}.project-card .card-heading h3{font-size:18px}.home-promises{grid-template-columns:repeat(2,minmax(0,1fr))}.client-records,.community-groups,.reference-layout{grid-template-columns:1fr}.project-rail-track{grid-auto-columns:min(83%,410px)}.project-record-grid{gap:18px 12px}.project-index>.project-enquiry-actions{margin-bottom:26px}.comparison-table thead th:first-child{width:26%}.comparison-table :is(th,td){padding-block:11px}.enquiry-layout{grid-template-columns:1fr}.enquiry-layout>div:first-child>.enquiry-direct{min-height:44px}.whatsapp-float{width:51px;height:51px;right:max(12px, env(safe-area-inset-right))}.whatsapp-float svg{width:28px;height:28px}.whatsapp-float span{font-size:12px}.case-body{padding-block:12px 40px}}@media (max-width:600px){.whatsapp-float{bottom:max(12px, env(safe-area-inset-bottom))}}@media (max-width:480px){.home-section-heading{flex-wrap:wrap;align-items:start;row-gap:5px}.project-record-grid{grid-template-columns:1fr}.delivery-grid{gap:12px}.delivery-card-copy{gap:3px;padding:10px 12px 13px;display:grid}}@media (max-width:350px){.delivery-grid{grid-template-columns:1fr}}@media (max-width:380px){.hero-stage h1{font-size:clamp(29px,8.9vw,34px)}.hero-stage-action p{font-size:16px}.hero-stage-inner{padding-block:123px 60px}.home-section-heading{flex-wrap:wrap}.send-options{flex-direction:column}.commitments .four-grid{grid-template-columns:1fr 1fr}}.collection-intro{padding-top:29px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px;display:grid}.collection-grid--blog{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-grid .gallery-card{border-bottom:1px solid var(--line);display:block}.collection-image{overflow:hidden}.collection-image img{aspect-ratio:1.65;width:100%;transition:transform .45s}.collection-grid .gallery-card:hover img{transform:scale(1.035)}.collection-caption{padding-block:15px 23px}.collection-caption .eyebrow{margin-block:0 9px}.collection-caption h2{font-size:clamp(23px,2.5vw,34px)}.collection-caption h2 .link-arrow{color:var(--accent)}.collection-grid--blog:not([data-filtered=true]) .gallery-card:first-child{background:var(--surface);border-bottom:0;grid-column:1/-1;grid-template-columns:1.3fr .7fr;align-items:center;gap:25px 5%;display:grid}.collection-grid--blog:not([data-filtered=true]) .gallery-card:first-child .collection-caption{padding:20px 25px 20px 0}.gallery-note{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;display:flex}.gallery-note .text-link{min-height:40px}.budget-guide-section{background:var(--surface)}.budget-guide-list article{border-top:1px solid var(--line);grid-template-columns:.65fr 1.35fr auto;align-items:center;gap:12px 30px;padding-block:22px;display:grid}.budget-guide-list article:last-child{border-bottom:1px solid var(--line)}.closing-cta{background:var(--panel);padding-block:46px}.closing-cta .wrap{justify-content:space-between;align-items:end;gap:19px 30px;display:flex}.closing-cta h2{font-size:clamp(31px,3.7vw,54px)}.closing-cta .eyebrow{margin-bottom:10px}.closing-cta .button{flex-shrink:0;margin:0;position:static}.site-footer{isolation:isolate;background:#1e1e1e;position:relative;overflow:hidden}.footer-media,.footer-media:after,.footer-photo{width:100%;height:100%;position:absolute;inset:0}.footer-media{z-index:-1}.footer-media:after{content:"";background:linear-gradient(110deg,#1e1e1ef5,#1e1e1edc 58%,#1e1e1ecf)}.footer-locations,.footer-social{margin-top:28px}.footer-locations h2,.footer-social h2{margin-bottom:10px}.footer-locations ul,.footer-social ul{flex-wrap:wrap;gap:0 18px;margin:0;padding:0;list-style:none;display:flex}.footer-locations a,.footer-social a{align-items:center;min-height:44px;font-size:15px;display:inline-flex}.footer-social a{gap:7px}.site-footer .brand{width:clamp(135px,11vw,167px)}@media (max-width:840px){.collection-grid--blog{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-guide-list article{grid-template-columns:1fr 2fr}.budget-guide-list article .text-link{grid-column:2;justify-self:start}}@media (max-width:620px){.collection-grid,.collection-grid--blog:not([data-filtered=true]) .gallery-card:first-child,.budget-guide-list article{grid-template-columns:1fr}.collection-grid--blog:not([data-filtered=true]) .gallery-card:first-child{gap:0}.collection-grid--blog:not([data-filtered=true]) .gallery-card:first-child .collection-caption{padding:15px 17px 23px}.budget-guide-list article .text-link{grid-column:auto}.closing-cta .wrap{flex-direction:column;align-items:start}}.project-card--featured{background:var(--surface);border:1px solid var(--line);grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr);display:grid}.project-card--featured>img,.project-card--featured .image-placeholder{aspect-ratio:2.1}.project-card--featured .card-heading{align-self:center;gap:12px;padding:clamp(17px,3.3vw,43px)}.project-card--featured .card-heading h3{font:550 clamp(23px, 3vw, 43px)/1.1 var(--display)}.project-card--featured .card-heading .eyebrow{margin-bottom:0}.project-card--featured .card-heading span{font-size:15px;font-weight:700}@media (max-width:600px){.project-card--featured{grid-template-columns:1fr}.project-card--featured .image-placeholder{aspect-ratio:2.3}}
.halo-header{z-index:60;height:var(--header-height);background:var(--paper);color:var(--ink);transition:background-color .3s,color .3s;position:sticky;top:0}.halo-header[data-scrolled=true]:not([data-open=true]){box-shadow:0 1px #21212114}.halo-header:has(+main>[data-header-overlay=all]){margin-bottom:calc(-1 * var(--header-height))}.halo-header:has(+main>[data-header-overlay=all]):not([data-scrolled=true],[data-open=true]){color:#fff;background:0 0}.halo-nav-row{align-items:center;gap:clamp(16px,2vw,30px);height:100%;display:flex}.halo-nav-brand{align-items:center;display:flex}.halo-nav-brand .brand{width:112px;padding-block:3px}.halo-nav{align-items:stretch;gap:clamp(15px,2.05vw,31px);height:100%;margin-left:auto;display:flex}.halo-nav>a,.halo-nav-item>a,.halo-nav-item>button,.halo-nav-call{color:inherit;font:500 12px/1.3 var(--display);letter-spacing:.015em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:7px;transition:opacity .3s;display:inline-flex}.halo-nav>a:hover,.halo-nav-item>a:hover,.halo-nav-item>button:hover,.halo-nav-call:hover{opacity:.82}.halo-nav :is(a,button)[aria-current=page],.halo-nav-item>a[data-current=true]{text-underline-offset:5px;text-decoration:underline}.halo-nav-item>button{background:0 0;border:0;height:100%;padding:0}.halo-nav-call{padding-left:clamp(16px,2vw,30px);position:relative}.halo-nav-call:before{content:"";opacity:.45;border-left:1px solid;height:16px;position:absolute;top:calc(50% - 8px);left:0}.halo-menu-button,.halo-service-nav>.halo-services-mobile-link,.halo-nav-contact{display:none}.halo-dropdown{z-index:1;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);top:100%;max-height:calc(100svh - var(--header-height));overscroll-behavior:contain;position:absolute;inset-inline:0;overflow:auto}.halo-project-nav{align-items:stretch;gap:2px;display:flex}.halo-project-nav>button{justify-content:center;width:32px}.halo-nav-item>button[aria-expanded=true] svg{rotate:180deg}.halo-service-nav>button{gap:9px;padding-inline-end:8px}.halo-dropdown-rail>.eyebrow{margin:0}.halo-project-links{grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:0 14px;list-style:none;display:grid}.halo-project-links a{align-items:center;min-height:45px;padding-block:6px;display:flex}.halo-project-links a:hover{text-underline-offset:5px;text-decoration:underline}.halo-dropdown-layout{grid-template-columns:minmax(160px,19%) minmax(0,1fr);gap:24px;padding-block:42px 25px;display:grid}.halo-dropdown-rail{flex-direction:column;align-items:start;gap:13px;display:flex}.halo-dropdown-rail a,.halo-dropdown-rail button{text-align:left;min-height:45px;color:inherit;font:550 15px/1.4 var(--display);text-transform:uppercase;background:0 0;border:0;align-items:center;gap:9px;padding:6px 0;display:inline-flex}.halo-dropdown-rail button[aria-pressed=true],.halo-dropdown a:hover,.halo-dropdown-rail button:hover{color:var(--accent)}.halo-service-tools{border-top:1px solid var(--line);width:100%;padding-top:8px;display:grid}.halo-service-tools>a{min-height:36px;font-size:12px}.halo-service-cards{grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:36px 14px;display:grid}.halo-service-cards a{align-content:start;gap:5px;min-width:0;display:grid}.halo-service-cards img{aspect-ratio:1.17;width:100%;margin-bottom:5px;transition:filter .35s}.halo-service-cards a:hover img{filter:brightness(.82)}.halo-service-cards small{color:var(--muted);font:500 10px/1.4 var(--display);text-transform:uppercase}.halo-service-cards span,.halo-project-links a{font:550 15px/1.35 var(--display);text-transform:uppercase}@media (min-width:992px){.halo-header:has(+main>[data-header-overlay=desktop]){margin-bottom:calc(-1 * var(--header-height))}.halo-header:has(+main>[data-header-overlay=desktop]):not([data-scrolled=true],[data-open=true]){color:#fff;background:0 0}:is(.page-hero--cover,.page-hero--case,.halo-header:has(+main>[data-header-overlay=desktop]):not([data-scrolled=true],[data-open=true])) :focus-visible{outline-color:#cdcdcd}}.halo-header[data-scrolled=false]:has(+main>:is(.hero-stage,.page-hero--cover))~.whatsapp-float:not(:focus-visible){opacity:0;pointer-events:none}.halo-header:has(+main>[data-header-overlay=all]):not([data-scrolled=true],[data-open=true]) :focus-visible{outline-color:#cdcdcd}.page-hero{isolation:isolate;min-height:max(580px,100svh);padding:calc(var(--header-height) + 38px) var(--gutter) clamp(46px, 6.9vh, 70px);color:#fff;background:#222;grid-template-rows:1fr auto auto;grid-template-columns:minmax(0,1fr) auto;gap:13px clamp(28px,4vw,70px);display:grid;position:relative}.page-hero--cover .page-hero-art:after,.page-hero--case .page-hero-art:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#000b,#0003 23%,#0002 48%,#0009 75%,#000c),#13131327;position:absolute;inset:0}.page-hero-heading{grid-area:2/1;align-self:end}.page-hero h1,.listing-intro h1,.plain-intro h1{font:300 clamp(34px, 4.35vw, 50px)/1.18 var(--display);letter-spacing:-.025em;text-transform:uppercase;text-wrap:pretty;overflow-wrap:anywhere}.page-hero .breadcrumbs ol{color:#efefef;font:500 12px/1.4 var(--display);gap:6px 10px}.page-hero .breadcrumbs li:not(:last-child):after{color:inherit;opacity:.6;margin-left:10px}.page-hero h1{margin-top:13px}.page-hero-art{z-index:-1;background:#292929;position:absolute;inset:0;overflow:hidden}.page-hero-art>img{width:100%;height:100%}.page-hero-art>img[src^="/images/"]{filter:url(#hero-photo-balance)}.page-hero-art figcaption{z-index:2;left:var(--gutter);color:#efefef;font:500 10px/1.4 var(--display);letter-spacing:.07em;text-transform:uppercase;background:#191919db;padding:5px 8px;position:absolute;bottom:14px}.page-hero-description{grid-area:3/1;max-width:670px}.page-hero-description>p{color:#f5f5f5;font-size:16px;line-height:1.42}.page-hero-description>.eyebrow{font:450 12px/1.4 var(--display);letter-spacing:.075em;margin-bottom:5px}.page-hero-actions{grid-area:2/2/4;align-self:end;align-items:start;gap:10px;display:flex}.page-hero-actions>.button,.contact-intro-title>.button{min-height:48px;font:550 12px/1.35 var(--display);text-transform:uppercase;white-space:nowrap;gap:14px;padding:11px 23px}@media (min-width:992px){.page-hero--cover .page-hero-actions>.button{--button-bg:var(--paper);--button-color:var(--ink);--button-border:var(--paper);--button-fill:var(--ink);--button-active:var(--paper)}}.page-hero-actions>.page-hero-secondary{display:none}.page-hero--inset{min-height:0;padding:clamp(30px, 4.8vw, 68px) var(--gutter) 40px;background:var(--paper);color:var(--ink);grid-template-rows:auto;grid-template-columns:minmax(0,1fr);gap:22px}.page-hero--inset>:is(.page-hero-heading,.page-hero-art,.page-hero-description,.page-hero-actions){grid-area:auto/1}.page-hero--inset .breadcrumbs ol,.page-hero--inset .page-hero-description>p{color:var(--muted)}.page-hero--inset .page-hero-art{z-index:0;height:clamp(270px,50vw,680px);position:relative;inset:auto}.page-hero--inset .page-hero-art figcaption{left:auto;right:12px}.page-hero--about .page-hero-art{height:clamp(310px,78svh,760px)}.page-hero--about .page-hero-art>img{filter:url(#hero-photo-balance)brightness(.72)}.page-hero--article{background:var(--surface)}.page-hero-panels{grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:absolute;inset:0}.page-hero-panels span{color:#fff;font:450 clamp(13px, 2vw, 29px)/1.35 var(--display);text-transform:uppercase;padding:clamp(14px,3vw,40px)}.page-hero-panels span+span{border-left:1px solid #fff6}.page-hero--article h1{text-transform:none;max-width:1150px}.page-hero--article .page-hero-art{height:clamp(230px,42vw,605px)}.page-hero--case{text-align:center;grid-template-rows:1fr auto auto 1fr;grid-template-columns:minmax(0,1fr);min-height:clamp(420px,72svh,650px)}.page-hero--case h1{letter-spacing:.11em;max-width:1120px;margin-inline:auto}.page-hero--case .breadcrumbs ol{justify-content:center}.page-hero--case .page-hero-description{justify-self:center}.page-hero--case .page-hero-art:after{background:linear-gradient(#0007,#0005 32%,#0008 67%,#000a)}.case-scroll{z-index:2;width:44px;height:clamp(82px,14.6vh,132px);position:absolute;bottom:0;left:calc(50% - 22px);overflow:hidden}.case-scroll:before,.case-scroll>span{background:currentColor;width:1px;position:absolute;inset:0 auto 0 50%}.case-scroll:before{content:"";opacity:.42}.case-scroll>span{height:42px;top:auto}.case-scroll:focus-visible{outline-offset:-3px}.page-hero--draft .page-hero-art:after{background:linear-gradient(#0007,#0003 65%,#0000)}.page-hero--draft .case-cover-slot{aspect-ratio:auto;width:100%;height:100%;min-height:100%;padding-inline:var(--gutter);color:#e9e9e9;background-color:#333;background-image:linear-gradient(90deg,#fff1 1px,#0000 1px),linear-gradient(0deg,#fff1 1px,#0000 1px);background-size:36px 36px;border:0;justify-content:flex-end;align-items:flex-start;padding-bottom:26px}.page-hero--draft .case-cover-slot :is(span,small,svg){color:inherit}.page-hero--draft .case-cover-slot svg{opacity:.7;width:clamp(95px,14vw,190px);height:auto}.case-facts-band{background:var(--surface)}.case-facts-band .project-facts{border:0;margin-block:0;padding-block:26px}.case-facts-band .project-facts dt{color:var(--muted)}@media (min-width:851px){.case-facts-band .project-facts:has(>:nth-child(5)){grid-template-columns:repeat(5,minmax(0,1fr))}}.case-body{padding-block:54px 76px}.listing-intro{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:15px 25px;margin-block:18px 40px;display:grid}.listing-intro .eyebrow{justify-self:end;margin:0 0 6px}.listing-description{grid-column:1/-1;max-width:82ch;font-size:17px}:is(.service-index,.project-index,.collection-intro,.contact-intro){padding-top:clamp(26px,3.8vw,57px)}.service-directory{gap:24px;display:grid}.service-directory-row{border:1px solid var(--line);background:var(--paper);transition:border-color .35s}.service-directory-row:hover,.service-directory-row[open]{border-color:#a8a8a8}.service-directory-row summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:184px;padding:33px clamp(21px,3.55vw,50px);list-style:none;display:flex}.service-directory-row summary::-webkit-details-marker{display:none}.service-directory-row summary>svg{flex-shrink:0;transition:rotate .35s}.service-directory-row[open] summary>svg{rotate:180deg}.service-directory-name,.service-directory-summary{display:block}.service-directory-name{font:550 clamp(23px, 2.2vw, 32px)/1.22 var(--display);text-transform:uppercase}.service-directory-summary{max-width:55ch;color:var(--muted);margin-top:12px;font-size:16px}.service-directory-row ul{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(20px,4vw,55px);margin-inline:clamp(21px,3.55vw,50px);padding-block:20px 30px;list-style:none;display:grid}.service-directory-row li a{min-height:48px;font:550 15px/1.4 var(--display);text-transform:uppercase;align-items:center;gap:9px;padding-block:9px;display:flex}.service-directory-row li a:hover{color:var(--accent)}.service-directory-row li a svg{flex-shrink:0}#main:has(>.service-jumps)>[id]{scroll-margin-top:48px}.service-examples-feature{gap:var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-bottom:44px;display:grid}.service-examples-copy{background:var(--surface);flex-direction:column;justify-content:center;padding:clamp(24px,4.2vw,64px);display:flex}.service-examples-copy .eyebrow{margin-bottom:13px}.service-examples-copy>p:not(.eyebrow){margin-top:18px}.service-examples-copy .text-link{align-self:start;margin-top:24px}.service-examples .service-examples-feature:last-child{margin-bottom:0}.service-examples .project-record-grid{margin-top:24px}@media (min-width:1100px){.service-examples .project-record-grid:has(>li:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}}.project-card--service{isolation:isolate;border-bottom:1px solid var(--line);flex-direction:column;height:100%;display:flex;position:relative}.project-reference-photos{aspect-ratio:3/2;background:var(--surface);position:relative;overflow:hidden}.project-reference-photos img{object-fit:cover;width:100%;height:100%}.project-reference-photo-open{z-index:3;cursor:zoom-in;position:absolute;inset:0}.project-reference-photo-open>span{color:#fff;background:#111e;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:10px;right:10px}.project-reference-photo-open:focus-visible{outline-offset:-4px;outline:2px solid #fff}.project-reference-photo-count,.project-reference-photo-controls{color:#fff;background:#111e;position:absolute;bottom:10px}.project-reference-photo-count{z-index:4;pointer-events:none;font:500 11px/1.2 var(--utility);padding:7px 10px;left:10px}.project-reference-photo-controls{z-index:4;display:flex;right:10px}.project-reference-photo-controls button{width:44px;height:44px;color:inherit;background:0 0;border:0;place-items:center;padding:0;display:grid}.project-reference-photo-controls button+button{border-left:1px solid #fff5}.project-reference-photo-controls button:first-child svg{rotate:180deg}.project-reference-photo-controls button:hover{background:#fff3}.project-reference-photo-controls button:focus-visible{outline-offset:-4px;outline:2px solid #fff}.service-project-link{flex:1;padding-bottom:14px;display:flex}.service-project-link:after{content:"";z-index:2;position:absolute;inset:0}.service-project-link:focus-visible{outline:none}.service-project-link:focus-visible:after{outline:2px solid var(--accent);outline-offset:3px}.project-card--service .eyebrow{margin:0 0 2px}.project-card--service .card-heading>span{margin-top:auto;padding-top:4px}.reference-gallery .project-reference-photos{aspect-ratio:auto;background:#f0eeeb;height:clamp(280px,54svh,480px)}.reference-gallery .project-reference-photos img{object-fit:contain;padding:12px}.reference-gallery-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:10px;display:flex}.reference-gallery-thumbnails{gap:6px;max-width:100%;padding:3px;display:flex;overflow-x:auto}.reference-gallery-thumbnails button{border:1px solid var(--line);background:var(--paper);flex:0 0 clamp(44px,11vw,76px);padding:2px}.reference-gallery-thumbnails button[aria-pressed=true]{border-color:var(--ink)}.reference-gallery-thumbnails button:focus-visible{outline-offset:1px}.reference-gallery-thumbnails img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.reference-gallery-tools .text-link{font-size:14px}.project-reference-photo-caption{color:var(--muted);margin-top:10px;font-size:15px}.project-reference-photo-caption strong{color:var(--ink)}@media (max-width:767px){.reference-gallery .project-reference-photos{height:clamp(230px,43svh,340px)}}.partners-section{background:var(--panel);text-align:center}.partners-heading{margin-bottom:clamp(20px,3vw,40px)}.partners-section .partner-logo{place-items:center;min-height:100px;padding:10px;display:grid}.partners-section .partner-logo img{object-fit:contain;filter:grayscale();opacity:.6;width:180px;height:80px;transition:filter .3s,opacity .3s}.partners-section .partner-logo:hover img{filter:grayscale(0);opacity:1}.partner-carousel-controls{justify-content:center;gap:4px;margin-top:10px;display:flex}.partner-carousel-controls[data-ready=false]{visibility:hidden}.partner-carousel-controls button{width:44px;height:44px;color:var(--ink);background:0 0;border:0;place-items:center;padding:0;display:grid}.partner-carousel-controls button:hover{background:var(--surface)}.partner-carousel-controls button:first-child svg{rotate:180deg}@media (max-width:767px){.partners-section .partner-logo{min-height:80px}.partners-section .partner-logo img{width:140px;height:60px}}@media (prefers-reduced-motion:reduce){.partner-carousel-controls .partner-carousel-playback{display:none}}.service-credentials{border-block:1px solid var(--line);background:var(--surface)}.service-credentials .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 40px;padding-block:clamp(22px,3vw,40px);display:flex}.service-credentials .eyebrow{margin-bottom:7px}.service-credentials strong{font:550 clamp(22px, 2.4vw, 34px)/1.1 var(--display);letter-spacing:-.035em;color:var(--ink)}.service-checkpoint{border-left:2px solid var(--ink);background:var(--surface);flex-wrap:wrap;align-items:baseline;gap:7px 16px;margin-top:24px;padding:15px 20px;display:flex}.service-checkpoint strong{color:var(--ink)}.service-budget{border-top:1px solid var(--line);background:var(--surface)}.service-budget>.wrap,.service-brief-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:26px clamp(24px,5vw,88px);display:grid}.service-budget h2{margin-top:10px}.service-budget-range{border-top:1px solid var(--line);margin-top:22px;padding-top:14px}.service-budget-range .eyebrow{margin:0 0 5px}.service-budget-range strong{font:650 clamp(20px, 2vw, 32px)/1.25 var(--display);letter-spacing:-.025em;display:block}.service-budget-copy{justify-items:start;gap:16px;max-width:68ch;display:grid}.service-brief{isolation:isolate;background:var(--ink);min-height:clamp(420px,56svh,560px);color:var(--paper);align-items:center;display:grid;position:relative}.service-brief-image{z-index:-1;clip-path:inset(0);position:absolute;inset:0}.service-brief-image img,.service-brief-image:after{width:100%;height:100%;position:absolute;inset:0}.service-brief-image:after{content:"";background:linear-gradient(110deg,#000b,#0009 50%,#000b)}@media (min-width:768px) and (hover:hover) and (prefers-reduced-motion:no-preference){.service-brief-image img{height:100svh;position:fixed}}.service-brief-layout{align-items:center}.service-brief h2{max-width:22ch}.service-brief h3{font:550 20px/1.25 var(--display)}.service-brief p{color:#f5f5f5}.service-brief .eyebrow{margin-bottom:12px}.service-brief h2+p,.service-brief h3+p{max-width:56ch;margin-top:12px}.service-brief-next{border-top:1px solid #ffffff80;padding-top:18px}.service-brief .button{--button-bg:var(--paper);--button-color:var(--ink);--button-border:var(--paper);--button-fill:var(--ink);--button-active:var(--paper);margin-top:18px}.service-brief :focus-visible{outline-color:var(--paper)}@media (max-width:767px){.service-budget>.wrap,.service-brief-layout{grid-template-columns:minmax(0,1fr)}}.service-examples-feature .service-gallery{background:var(--paper);color:var(--ink)}.service-examples-feature .service-gallery-thumbs button{background:var(--paper);color:var(--ink);border-bottom-color:var(--line)}.service-examples-feature .service-gallery-thumbs button[aria-pressed=true]{border-bottom-color:var(--accent)}.service-gallery-thumbs button[aria-pressed=true] img{filter:none}main:not(:has(>.hero-stage)) :is(.section-heading-row h2,.partners-heading h2,.service-examples-copy h2,.faq h2,.budget-section h2,.service-budget h2,.commitments h2,.case-body h2){text-transform:uppercase;letter-spacing:-.025em;text-wrap:pretty;font-size:clamp(25px,2.25vw,34px);font-weight:550}.process-section:has(+.service-budget){background:var(--paper)}.process-section:has(+.enquiry-section){background:var(--panel)}main:not(:has(>.hero-stage)) .enquiry-section{background:var(--surface);color:var(--ink);border-top:1px solid var(--line)}main:not(:has(>.hero-stage)) .enquiry-section :is(.eyebrow,.enquiry-layout>div:first-child>p:not(.eyebrow)){color:var(--muted)}main:not(:has(>.hero-stage)) .enquiry-section .enquiry-direct{border-color:var(--line)}main:not(:has(>.hero-stage)) .enquiry-section .enquiry-direct:hover{color:var(--accent)}main:not(:has(>.hero-stage)) .enquiry-section .form-grid :is(input,select,textarea){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:#fff;border-color:#9b9b9b}main:not(:has(>.hero-stage)) .enquiry-section .form-grid :is(input,textarea)::placeholder{color:var(--muted)}main:not(:has(>.hero-stage)) .enquiry-section .button{--button-bg:var(--ink);--button-color:var(--paper);--button-border:var(--ink);--button-fill:var(--paper);--button-active:var(--ink)}main:not(:has(>.hero-stage)) .enquiry-section .button.outline{--button-bg:transparent;--button-color:var(--ink);--button-fill:var(--ink);--button-active:var(--paper)}main:not(:has(>.hero-stage)) .enquiry-section :focus-visible{outline-color:var(--accent)}.contact-intro-title{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px 55px;display:grid}.contact-intro-title .listing-intro{grid-template-columns:minmax(0,1fr);margin-bottom:0}.contact-intro-title .listing-intro .eyebrow{order:-1;justify-self:start;margin:0}.contact-channel-links{justify-content:space-between;align-items:end;gap:24px;margin-top:clamp(52px,8vw,112px);padding-bottom:clamp(45px,6vw,90px);display:flex}.contact-channel-links .eyebrow{margin-bottom:12px}.contact-phone{color:var(--ink);font:300 clamp(39px, 7.35vw, 110px)/1 var(--display);letter-spacing:-.047em;white-space:nowrap;display:inline-block}.contact-phone strong{margin-right:.06em;font-weight:650}.contact-phone:hover{color:var(--accent)}.contact-landing{background:var(--surface);border-block:1px solid var(--line);padding-block:clamp(35px,6vw,90px)}.contact-landing-grid{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:28px 8%;display:grid}.contact-landing-grid h2{text-transform:uppercase;font-size:clamp(28px,3vw,43px);font-weight:400}.contact-landing-form{max-width:860px}.contact-landing-form .form-grid :is(input,select,textarea){border-color:#9b9b9b}.collection-intro~section .filter-bar button{min-height:42px;font:550 11px/1.35 var(--display);text-transform:uppercase;border-radius:999px}.collection-caption h2{letter-spacing:-.025em;font-size:clamp(23px,2.15vw,32px)}.collection-grid--blog:not([data-filtered=true]) .gallery-card:first-child{background:var(--paper)}@media (max-width:991px){.halo-nav-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px;display:grid}.halo-nav-brand{grid-area:1/2}.halo-nav-brand .brand{width:110px}.halo-menu-button{min-width:44px;min-height:44px;color:inherit;background:0 0;border:0;grid-area:1/1;justify-self:start;place-items:center;margin-left:-9px;padding:0;display:inline-grid}.halo-nav-call{grid-area:1/3;justify-self:end;min-height:44px;padding:0}.halo-nav-call:before{display:none}html:has(.halo-header[data-mobile-open=true]){overscroll-behavior:none;overflow:hidden}.halo-menu-glyph{width:26px;height:26px;display:block;position:relative}.halo-menu-glyph>i{background:currentColor;height:1px;position:absolute;inset:50% 0 auto}.halo-menu-glyph>i:first-child{transform:translateY(-4px)}.halo-menu-glyph>i:last-child{transform:translateY(4px)}.halo-menu-button[aria-expanded=true] .halo-menu-glyph{rotate:180deg}.halo-menu-button[aria-expanded=true] i:first-child{transform:rotate(45deg)}.halo-menu-button[aria-expanded=true] i:last-child{transform:rotate(-45deg)}.halo-nav{z-index:1;height:calc(100dvh - var(--header-height));overscroll-behavior:contain;padding-block:clamp(20px, 7svh, 55px) max(22px, env(safe-area-inset-bottom));background:var(--paper);color:var(--ink);margin-left:0;display:none;position:absolute;inset:100% 0 auto;overflow-y:auto}.halo-nav[data-open=true]{flex-direction:column;align-items:stretch;gap:0;display:flex}.halo-nav>a,.halo-project-nav>a,.halo-service-nav>.halo-services-mobile-link{border-bottom:1px solid var(--line);letter-spacing:-.015em;flex-shrink:0;justify-content:center;align-items:center;min-height:48px;font-size:clamp(21px,6vw,25px);font-weight:400;display:flex}.halo-nav>a[aria-current=page]{color:var(--accent);text-decoration:none}.halo-nav-item{flex-shrink:0;grid-template-columns:52px minmax(0,1fr) 52px;gap:0;display:grid}.halo-nav-item>a{grid-area:1/1/auto/-1;padding-inline:52px}.halo-nav-item>button{z-index:1;grid-area:1/3;justify-content:center;width:100%;min-height:48px;padding:0}.halo-service-nav>button>span{display:none}.halo-dropdown{background:var(--surface);grid-column:1/-1;max-height:none;position:static;overflow:visible}.halo-dropdown-layout{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:12px 18px}.halo-dropdown-rail{gap:6px 16px}.halo-service-nav .halo-dropdown-rail{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.halo-service-nav .halo-dropdown-rail>:first-child,.halo-service-tools{grid-column:1/-1}.halo-service-tools,.halo-project-links,.halo-service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.halo-nav-contact{margin:auto var(--gutter) 0;font:500 11px/1.3 var(--display);text-transform:uppercase;flex-wrap:wrap;justify-content:center;gap:0 clamp(12px,5vw,24px);padding-top:28px;padding-bottom:clamp(8px,6svh,64px);display:flex}.halo-nav-contact a{align-items:center;min-height:44px;display:inline-flex}.halo-nav-contact a:hover{color:var(--accent)}.page-hero{min-height:0;padding:57px var(--gutter) 75px;color:var(--ink);text-align:left;grid-template-rows:auto;grid-template-columns:minmax(0,1fr);gap:18px}:is(.page-hero--cover,.page-hero--case){background:var(--surface)}.page-hero--inset{padding-top:32px;padding-bottom:40px}.page-hero .page-hero-art:after{display:none}.page-hero>:is(.page-hero-heading,.page-hero-art,.page-hero-description,.page-hero-actions){grid-area:auto/1;justify-self:stretch}.page-hero .breadcrumbs ol{color:var(--muted);font-size:11px}.page-hero h1{margin-top:10px;font-size:28px}.page-hero--case h1{letter-spacing:.03em}.page-hero--case .breadcrumbs ol{justify-content:start}.page-hero-art{z-index:0;aspect-ratio:16/10;position:relative;inset:auto}.page-hero--inset .page-hero-art{height:auto}.page-hero-art figcaption{font-size:9px;bottom:8px;left:auto;right:8px}.page-hero-description>p{color:var(--muted);font-size:15px}.page-hero-description>.eyebrow{color:var(--accent);font-size:11px}.page-hero-actions{flex-direction:column;align-items:start;margin-top:8px}.page-hero-actions>.page-hero-secondary{display:inline-flex}.page-hero--draft .case-cover-slot{justify-content:center;align-items:center;padding-bottom:14px}.case-scroll{height:50px}.page-hero--draft .case-cover-slot svg{max-height:47%}.contact-intro-title .listing-intro .eyebrow{margin-bottom:0}}@media (max-width:767px){.listing-intro{grid-template-columns:minmax(0,1fr);align-items:start;gap:11px;margin-block:14px 27px}.listing-intro h1,.plain-intro h1{font-size:clamp(26px,7.2vw,34px)}.listing-intro .eyebrow{justify-self:start;margin-bottom:0}.listing-description{font-size:16px}.service-directory{gap:14px}.service-directory-row summary{min-height:132px;padding-block:22px}.service-directory-row ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px;padding-block:12px 18px}.service-directory-row li a{font-size:13px}.service-examples-feature{grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:29px}.contact-intro-title,.contact-landing-grid{grid-template-columns:minmax(0,1fr)}.contact-intro-title>.button{justify-self:start}.contact-channel-links{flex-direction:column;align-items:start;gap:12px;margin-top:45px;padding-bottom:38px}.contact-phone{font-size:clamp(36px,10.5vw,70px)}.case-body{padding-block:34px 54px}}.scene-layer{opacity:0;visibility:hidden;pointer-events:none;position:absolute;inset:0}.scene-layer[data-visible=true]{z-index:1;opacity:1;visibility:visible}@media (prefers-reduced-motion:no-preference){:root{--entrance-ease:cubic-bezier(.16, 1, .3, 1)}[data-reveal-pending]{opacity:0;translate:0 32px}[data-reveal=case][data-reveal-pending]{translate:0 36px}[data-reveal=frame][data-reveal-pending]{translate:none}[data-reveal=zoom][data-reveal-pending]{opacity:1;translate:none;scale:1.1}[data-reveal-pending]:focus-within{opacity:1;translate:none;scale:none}.scene-layer{transition:opacity .6s,visibility .6s}@starting-style{.scene-layer[data-visible=true]:not([data-opening=true]){opacity:0}}.hero-stage-media{overflow:hidden}.hero-stage-media [data-opening=true]>img{animation:open-frame 2.6s var(--entrance-ease) both}.hero-stage:before{content:"";z-index:2;background:var(--paper);opacity:0;pointer-events:none;animation:1.3s 50ms backwards clear-veil;position:absolute;inset:0}.hero-stage:focus-within:before{opacity:0;animation:none}.hero-stage h1{animation:unmask-title 1.4s var(--entrance-ease) .8s both}.hero-stage .eyebrow,.hero-stage-action p{animation:lift-in 1.2s var(--entrance-ease) 1s both}.hero-stage-action>.button,.hero-stage-controls{animation:lift-in 1.2s var(--entrance-ease) 1.1s both}.hero-stage :is(.button,.hero-stage-controls):focus-within{animation:none}.halo-header:has(+main>.hero-stage) .halo-nav-row{animation:1.2s cubic-bezier(.16,1,.3,1) 1.2s backwards nav-arrival}.halo-header:is([data-scrolled=true],[data-open=true],:focus-within) .halo-nav-row{opacity:1!important;translate:none!important}.halo-dropdown:not([hidden]){animation:.65s cubic-bezier(.22,1,.36,1) both unfold-menu}.halo-dropdown:focus-within{clip-path:none!important}.halo-dropdown-rail>:is(a,button){animation:.6s cubic-bezier(.22,1,.36,1) both rail-arrival}.halo-service-cards>a,.halo-project-links>li{animation:.7s cubic-bezier(.22,1,.36,1) both lift-in}.halo-dropdown :is(a,button):focus-visible,.halo-project-links>li:focus-within{animation:none}.service-directory-row[open] li{animation:.35s cubic-bezier(.65,0,.35,1) backwards list-arrival}.service-directory-row li:focus-within{animation:none}:is(.listing-intro,.plain-intro,.page-hero:not(.page-hero--case)) h1{animation:unmask-title 1.4s var(--entrance-ease) .1s backwards}:is(.listing-intro,.plain-intro)>p,.contact-intro-title>.button,.page-hero:not(.page-hero--case) :is(.page-hero-description,.page-hero-actions){animation:lift-in 1.2s var(--entrance-ease) .22s backwards}.page-hero:not(.page-hero--case) .page-hero-art>img{animation:open-frame 2.6s var(--entrance-ease) backwards}:is(.gallery-intro,.journal-intro)~section .filter-bar button{animation:lift-in 1.2s var(--entrance-ease) backwards}:is(.gallery-intro,.journal-intro)~section .filter-bar button:focus-visible,.contact-intro-title>.button:focus-visible,.page-hero:not(.page-hero--case) .page-hero-actions:focus-within{animation:none}.page-hero--case .page-hero-heading{animation:1.4s cubic-bezier(.215,.61,.355,1) .5s both journal-arrival}.page-hero--case .page-hero-heading:focus-within{animation:none}.page-hero--case .page-hero-art>img{animation:2.4s cubic-bezier(.215,.61,.355,1) .1s both case-photo}.case-scroll>span{height:84px;animation:2.4s cubic-bezier(.65,0,.35,1) 2 case-scroll-line;top:0;bottom:auto}.text-link>svg{flex-shrink:0;transition:translate .3s cubic-bezier(.22,1,.36,1)}.text-link:hover>svg{translate:2px -2px}@supports (transition-behavior:allow-discrete){.halo-dropdown{opacity:1;clip-path:inset(0 0 -24px);transition:opacity .12s ease, clip-path .16s ease, display .16s allow-discrete}.halo-dropdown[hidden]{opacity:0;clip-path:inset(0 0 100%);pointer-events:none}}@supports (interpolate-size:allow-keywords) and selector(::details-content){.service-directory-row{interpolate-size:allow-keywords}.service-directory-row::details-content{block-size:0;transition:block-size .5s cubic-bezier(.65, 0, .35, 1), content-visibility .5s allow-discrete;overflow:clip}.service-directory-row[open]::details-content{block-size:auto}}.halo-header[data-scrolled=false]:has(+main>:is(.hero-stage,.page-hero--cover))~.whatsapp-float:not(:focus-visible){translate:0 20px}}@media (max-width:991px) and (prefers-reduced-motion:no-preference){.halo-menu-glyph,.halo-menu-glyph>i{transition:rotate .5s,transform .5s}.halo-nav[data-open=true]>a>span{animation:rail-arrival .7s cubic-bezier(.22, 1, .36, 1) var(--menu-arrival,.24s) both}.halo-nav>a:nth-child(3){--menu-arrival:.3s}.halo-nav>a:nth-child(4){--menu-arrival:.36s}.halo-nav>a:nth-child(5){--menu-arrival:.42s}.halo-nav>a:nth-child(6){--menu-arrival:.48s}.halo-nav>a:nth-child(7){--menu-arrival:.54s}.halo-nav[data-open=true] .halo-nav-contact{animation:.7s cubic-bezier(.22,1,.36,1) .6s both lift-in}.halo-nav[data-open=true]>a:focus-visible>span,.halo-nav[data-open=true] .halo-nav-contact:focus-within{animation:none}}@keyframes clear-veil{0%{opacity:1}to{opacity:0}}@keyframes open-frame{0%{clip-path:inset(6%);scale:1.12}to{clip-path:inset(0);scale:1}}@keyframes unmask-title{0%{opacity:0;clip-path:inset(0 0 100%);translate:0 42px}to{opacity:1;clip-path:inset(0 0 -20%);translate:0}}@keyframes lift-in{0%{opacity:0;translate:0 18px}to{opacity:1;translate:0}}@keyframes nav-arrival{0%{opacity:0;translate:0 -16px}to{opacity:1;translate:0}}@keyframes unfold-menu{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0 0 -24px)}}@keyframes rail-arrival{0%{opacity:0;translate:-28px}to{opacity:1;translate:0}}@keyframes list-arrival{0%{opacity:0;translate:0 16px}to{opacity:1;translate:0}}@keyframes journal-arrival{0%{opacity:0;translate:0 36px}to{opacity:1;translate:0}}@keyframes case-photo{0%{scale:1.03}to{scale:1.08}}@keyframes case-scroll-line{0%{transform:translateY(-100%)}55%{transform:translateY(47.5px)}to{transform:translateY(160px)}}
