@font-face{font-family:Manrope;src:url(/assets/fonts/manrope-latin.woff2)format("woff2");font-weight:400 800;font-style:normal;font-display:swap}:root{--navy:#101d46;--blue:#075fe4;--horizon:#49c5f7;--sky:#d7edfc;--mist:#e7ecef;--mist-light:#f0f3f5;--chalk:#f6f8fa;--line:#d7dddf;--slate:#536174;--gutter:clamp(22px, 4.5vw, 72px);--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--chalk);color:var(--navy);-webkit-font-smoothing:antialiased;margin:0;font-family:Manrope,sans-serif;font-size:18px;line-height:1.6}body.menu-open{overflow:hidden}::selection{background:var(--blue);color:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.12}h1,h2{letter-spacing:-.055em}h3{letter-spacing:-.035em}p{line-height:1.75}button{border:0}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.site-footer a:focus-visible,.expertise-section a:focus-visible{outline-color:var(--horizon)}[hidden]{display:none!important}.wrap{width:100%;max-width:1640px;padding-inline:var(--gutter);margin-inline:auto}.section-space{padding-block:84px}.eyebrow{letter-spacing:.15em;text-transform:uppercase;font-size:13px;font-weight:700;line-height:1.6}.draft-marker{vertical-align:-1px;border:1px solid var(--blue);width:13px;height:13px;margin-right:12px;display:inline-block;position:relative}.draft-marker:before,.draft-marker:after{content:"";background:var(--blue);position:absolute}.draft-marker:before{width:19px;height:1px;top:5px;left:-4px}.draft-marker:after{width:1px;height:19px;top:-4px;left:5px}.display-heading{font-size:clamp(38px,4.2vw,66px);line-height:1.14}.arrow{flex-shrink:0;width:24px;height:24px}.text-link{border-bottom:1px solid var(--navy);min-height:48px;transition:color .25s, gap .35s var(--ease);justify-content:space-between;align-items:center;gap:35px;padding:14px 0;font-size:17px;font-weight:600;display:inline-flex}.text-link .arrow{width:19px;height:19px;transition:transform .4s var(--ease)}.text-link:hover .arrow{transform:translate(3px,-3px)}.text-link:hover{color:var(--blue);border-color:var(--blue)}.text-link.light{border-color:#64728d}.text-link.light:hover{color:var(--horizon);border-color:var(--horizon)}.button{background:var(--blue);color:#fff;justify-content:space-between;align-items:center;gap:45px;min-height:58px;padding:18px 26px;font-size:18px;font-weight:600;transition:background .25s;display:inline-flex}.button:hover{background:var(--navy)}.round-link{width:110px;height:110px;transition:background .4s, color .4s, transform .4s var(--ease);border:1px solid;border-radius:100%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.round-link .arrow{width:43px;height:43px}.round-link:hover{color:var(--navy);background:#fff;transform:rotate(5deg)}.skip-link{z-index:300;background:var(--navy);color:#fff;padding:12px 24px;position:fixed;top:-80px;left:20px}.skip-link:focus{top:12px}.site-header{height:106px;padding:0 var(--gutter);border-bottom:1px solid var(--line);z-index:30;background:var(--chalk);align-items:center;gap:44px;display:flex;position:relative}.brand{align-items:center;margin-right:auto;display:inline-flex}.brand img{width:238px;height:auto}.desktop-nav{align-items:center;gap:35px;display:flex}.desktop-nav a{padding:14px 0;font-size:16px;font-weight:600;position:relative}.desktop-nav a:after{content:"";background:var(--blue);transform-origin:0;width:100%;height:1px;transition:transform .35s var(--ease);position:absolute;bottom:5px;left:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.header-contact{border:1px solid var(--navy);align-items:center;gap:30px;min-height:47px;padding:9px 18px;font-size:16px;font-weight:600;transition:background .3s,color .3s;display:flex}.header-contact .arrow{width:19px;height:19px}.header-contact:hover{background:var(--navy);color:#fff}.menu-toggle{background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:46px;height:46px;display:none}.menu-toggle span{background:var(--navy);width:24px;height:1px;display:block}.mobile-menu{background:var(--navy);color:#fff;border:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:24px;position:fixed;inset:0}.mobile-menu::backdrop{background:var(--navy)}.menu-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.menu-top img{width:215px}.menu-close{color:#fff;background:0 0;width:44px;height:44px;font-size:38px;line-height:1}.mobile-menu nav{padding:50px 0 32px}.mobile-menu nav a{letter-spacing:-.04em;border-bottom:1px solid #354263;justify-content:space-between;align-items:center;padding:17px 0;font-size:clamp(28px,7vw,45px);line-height:1.3;display:flex}.menu-bottom{font-size:17px}.menu-bottom p{color:#bcc8de;margin-top:20px}.hero-intro{padding-top:47px;padding-bottom:45px}.hero-heading-row{grid-template-columns:1fr 260px;align-items:end;gap:50px;margin-top:26px;display:grid}.hero-heading-row h1{letter-spacing:-.065em;font-size:clamp(60px,6.9vw,112px);font-weight:500;line-height:1.035}.hero-heading-row h1 span{color:var(--blue)}.hero-description{padding-bottom:3px}.hero-description p{color:var(--slate);max-width:265px;font-size:17px;line-height:1.85}.hero-description .text-link{width:100%;margin-top:17px}.hero-media{margin-left:var(--gutter);margin-right:var(--gutter);max-width:1496px;min-height:440px;display:flex;position:relative}.hero-side-label{background:var(--blue);color:#fff;writing-mode:vertical-rl;letter-spacing:.17em;flex-shrink:0;justify-content:space-between;align-items:center;width:43px;padding:28px 0;font-size:12px;display:flex}.hero-side-label>span:last-child{font-size:22px}.hero-photo{width:100%;min-width:0;height:470px;display:block;position:relative;overflow:hidden}.hero-photo>img{object-fit:cover;object-position:center 53%;width:100%;height:100%;transition:transform 1.5s var(--ease)}.hero-photo:hover>img{transform:scale(1.025)}.hero-photo-shade{background:linear-gradient(#0000 40%,#091829ab);position:absolute;inset:0}.hero-project-label{color:#fff;width:calc(100% - 72px);max-width:530px;position:absolute;bottom:32px;left:36px}.hero-project-label .eyebrow{letter-spacing:.2em;font-size:12px}.hero-project-label>div{align-items:center;gap:25px;margin:12px 0 5px;display:flex}.hero-project-label h2{letter-spacing:-.035em;font-size:30px}.hero-project-label>p{color:#e3eaf2;font-size:14px}.circle-arrow{border:1px solid #ffffff90;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;display:flex}.circle-arrow .arrow{width:17px;height:17px}.hero-cross{color:#fff;font-size:38px;font-weight:400;line-height:1;position:absolute;top:15px;right:26px}.film-button{background:#fffffff0;align-items:center;gap:16px;min-height:51px;padding:14px 20px;font-size:14px;transition:background .3s;display:inline-flex;position:absolute;bottom:32px;right:28px}.film-button:hover{background:var(--sky)}.film-time{color:var(--slate);border-left:1px solid var(--line);padding-left:14px;font-size:13px}.play-icon{font-size:14px}.hero-bottom{letter-spacing:.13em;color:var(--slate);justify-content:space-between;gap:20px;padding-top:18px;font-size:12px;font-weight:600;display:flex}.hero-bottom a{padding-bottom:10px}.expertise-section{background:var(--navy);color:#fff;overflow:hidden}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px;display:flex}.section-heading .eyebrow{margin-bottom:23px}.section-heading .text-link{flex-shrink:0;margin-bottom:5px}.project-image-link{background:var(--sky);display:block;position:relative;overflow:hidden}.project-image-link>img{aspect-ratio:1.32;object-fit:cover;width:100%;transition:transform .9s var(--ease)}.project-image-link:hover>img{transform:scale(1.04)}.project-sector{background:var(--chalk);letter-spacing:.05em;padding:7px 12px;font-size:12px;position:absolute;top:20px;left:20px}.project-arrow{background:#fff;border-radius:100%;justify-content:center;align-items:center;width:48px;height:48px;transition:background .3s,color .3s;display:flex;position:absolute;bottom:20px;right:20px}.project-image-link:hover .project-arrow{background:var(--blue);color:#fff}.project-caption{justify-content:space-between;gap:20px;padding-top:23px;display:flex}.project-caption .eyebrow{color:var(--slate);letter-spacing:.12em;font-size:12px}.project-caption h3{margin-top:10px;font-size:27px;line-height:1.25}.project-number{color:var(--slate);padding-top:2px;font-size:14px}.statement-section{background:var(--sky);padding:90px 0 75px;overflow:hidden}.statement-grid{position:relative}.statement-grid>.eyebrow{z-index:1;margin-bottom:35px;position:relative}.statement-grid h2{z-index:1;max-width:1020px;font-size:clamp(56px,7.8vw,116px);line-height:1.05;position:relative}.statement-bottom{z-index:1;justify-content:space-between;align-items:center;gap:30px;margin-top:45px;display:flex;position:relative}.statement-bottom .round-link{color:var(--blue);border-color:var(--blue);background:var(--blue)}.statement-bottom .round-link .arrow{color:#fff}.statement-bottom .round-link:hover{background:var(--navy);border-color:var(--navy)}.statement-lines{border:1px solid #98bbd530;width:700px;height:700px;position:absolute;top:-40px;right:-380px;transform:rotate(24deg)}.statement-lines:before,.statement-lines:after{content:"";border:1px solid #9cbacf66;position:absolute;inset:45px}.statement-lines:after{inset:90px}.page-heading{padding-block:75px}.page-heading h1{max-width:1180px;margin-top:30px;font-size:clamp(54px,6.7vw,101px);line-height:1.08}.page-heading h1 span,.error-page h1 span{color:var(--blue)}.page-intro{max-width:570px;color:var(--slate);margin-top:30px;font-size:17px}.projects-index{padding-bottom:120px}.project-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;margin-bottom:48px;padding:18px 0;display:flex}.filter-list{flex-wrap:wrap;gap:12px;display:flex}.filter{background:0 0;border:1px solid #0000;border-radius:30px;min-height:44px;padding:10px 18px;font-size:16px}.filter.active{background:var(--navy);color:#fff}.filter:hover{border-color:var(--navy)}.filter span{opacity:.6;margin-left:8px;font-size:13px}.project-count{color:var(--slate);white-space:nowrap;font-size:14px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 40px;display:grid}.services-index{padding-bottom:90px}.service-feature{border-top:1px solid var(--line);grid-template-columns:55px 1fr 38%;align-items:center;gap:25px;padding:46px 0;display:grid}.service-feature:last-child{border-bottom:1px solid var(--line)}.service-feature>.service-index{color:var(--blue);align-self:start}.service-feature-copy{padding-right:40px}.service-feature h2{font-size:clamp(28px,3.1vw,46px);line-height:1.18;transition:color .3s}.service-feature:hover h2{color:var(--blue)}.service-feature p{color:var(--slate);max-width:410px;margin:20px 0 10px;font-size:18px}.service-feature-image{background:#fff;overflow:hidden}.service-feature-image img{object-fit:cover;width:100%;height:240px;transition:transform .8s var(--ease)}.service-feature:hover img{transform:scale(1.04)}.soft-section{background:var(--sky)}.split-heading{grid-template-columns:1.15fr 1fr;align-items:center;gap:80px;display:grid}.split-heading p{color:var(--slate);max-width:390px;margin-bottom:25px;font-size:18px}.wide-image{position:relative;overflow:hidden}.wide-image>img{aspect-ratio:2.05;object-fit:cover;width:100%;max-height:650px}.image-caption{background:var(--chalk);letter-spacing:.1em;padding:9px 15px;font-size:12px;position:absolute;bottom:20px;left:20px}.story-grid{grid-template-columns:1fr 1.15fr;align-items:start;gap:90px;display:grid}.story-grid .eyebrow{margin-bottom:25px}.prose{color:var(--slate);font-size:18px;line-height:1.8}.prose p{margin-bottom:24px}.prose h2{color:var(--navy);margin:35px 0 20px;font-size:28px}.prose h2:first-child{margin-top:0}.prose a{color:var(--blue);text-decoration:underline}.approach-steps{grid-template-columns:repeat(3,1fr);gap:55px;margin-top:65px;display:grid}.approach-steps>div{border-top:1px solid #b8ccde;padding-top:25px}.approach-steps span{color:var(--blue);letter-spacing:-.05em;font-size:36px}.approach-steps h3{margin:30px 0 18px;font-size:28px}.soft-section>.wrap>.eyebrow{margin-bottom:25px}.breadcrumbs{color:var(--slate);justify-content:space-between;align-items:center;gap:20px;padding-top:36px;font-size:14px;display:flex}.breadcrumbs a{padding:10px 0}.breadcrumbs a:hover{color:var(--blue)}.project-detail-heading{padding-top:45px;padding-bottom:50px}.project-detail-heading h1{margin:22px 0;font-size:clamp(49px,6.5vw,94px);line-height:1.08}.project-detail-heading>p:last-child{color:var(--slate);font-size:20px}.project-main-image>img{aspect-ratio:1.9;max-height:750px}.project-story{grid-template-columns:1fr 2fr;gap:90px;display:grid}.project-story .display-heading{margin-bottom:32px;font-size:clamp(35px,4vw,56px)}.project-story aside{border-top:1px solid var(--line);padding-top:20px}.project-story dl{margin:25px 0 0}.project-story dt{text-transform:uppercase;letter-spacing:.12em;color:var(--slate);margin-top:25px;font-size:13px}.project-story dd{margin:8px 0 0;font-size:18px}.project-story ul{padding:0;list-style:none}.project-story li{margin-bottom:8px}.lead{margin-bottom:27px;font-size:19px;line-height:1.7}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;display:grid}.gallery-item{background:#fff;padding:0;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:430px;transition:transform .7s var(--ease)}.gallery-item:hover img{transform:scale(1.03)}.gallery-item:last-child:nth-child(odd){grid-column:1/-1}.gallery-item:last-child:nth-child(odd) img{object-fit:contain;height:540px}.gallery-expand{background:#fff;border-radius:50%;width:44px;height:44px;font-size:29px;font-weight:400;line-height:42px;position:absolute;bottom:20px;right:20px}.service-detail-hero{grid-template-columns:1.08fr 1fr;align-items:center;gap:60px;padding-top:55px;padding-bottom:40px;display:grid}.service-detail-hero h1{margin:25px 0;font-size:clamp(45px,5.4vw,80px);line-height:1.1}.service-detail-hero .lead{color:var(--slate);max-width:430px;font-size:17px}.service-detail-hero .button{margin-top:10px}.service-detail-image{background:#fff}.service-detail-image>img{object-fit:cover;width:100%;height:490px}.scope-list{margin:0;padding:0;list-style:none}.scope-list li{border-top:1px solid #b6cbdc;grid-template-columns:27px 1fr 20px;gap:20px;padding:23px 0;font-size:18px;line-height:1.4;display:grid}.scope-list li:last-child{border-bottom:1px solid #b6cbdc}.scope-list span{color:var(--blue);padding-top:5px;font-size:14px}.related-services{grid-template-columns:repeat(3,1fr);gap:35px;display:grid}.related-services a{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;min-height:120px;padding:30px 0;display:flex}.related-services h3{max-width:240px;font-size:24px}.related-services a:hover{color:var(--blue)}.contact-section{grid-template-columns:1fr 1.3fr;gap:100px;padding-bottom:100px;display:grid}.contact-details{border-top:1px solid var(--line);padding-top:30px}.contact-details h2{margin:25px 0;font-size:46px}.contact-details>a{width:fit-content;padding:6px 0;font-size:18px;display:block}.contact-details .contact-email{word-break:break-word;align-items:center;gap:15px;margin-bottom:15px;font-size:18px;display:flex}.contact-email .arrow{width:18px;height:18px}.contact-location{color:var(--slate);margin:30px 0;font-size:18px}.contact-image{margin-top:40px}.contact-image>img{object-fit:cover;width:100%;height:245px}.enquiry-form h2{margin-bottom:12px;font-size:28px}.form-note{color:var(--slate);margin-bottom:26px;font-size:14px;line-height:1.7}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 24px;display:grid}.form-field{min-width:0}.form-field.full{grid-column:1/-1}.form-field label{margin-bottom:8px;font-size:16px;font-weight:600;display:block}.form-field input,.form-field select,.form-field textarea{width:100%;color:var(--navy);background:0 0;border:1px solid #bac2cc;border-radius:0;min-height:51px;padding:12px 13px;font-size:18px;transition:border-color .2s}.form-field textarea{resize:vertical;min-height:132px}.form-field ::placeholder{color:#687587;font-size:16px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--blue)}.form-field [aria-invalid]{border-color:#b52739}.consent{align-items:start;gap:12px;margin:25px 0;font-size:14px;line-height:1.7;display:flex}.consent input{accent-color:var(--blue);flex-shrink:0;width:18px;height:18px;margin:1px 0}.consent a{text-underline-offset:3px;text-decoration:underline}.enquiry-form>.button{width:100%;margin-bottom:16px}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.field-error{color:#a11b2e;margin-top:8px;font-size:14px;display:block}.error-summary{color:#8a1825;background:#fff0f0;border-left:3px solid #a11b2e;margin:24px 0;padding:20px;font-size:17px}.error-summary ul{padding-left:17px}.form-success{background:var(--sky);border-top:3px solid var(--blue);padding:40px}.success-mark{color:var(--blue);font-size:30px}.form-success h2{margin:25px 0;font-size:32px}.form-success p{color:var(--slate);margin-bottom:25px}.faq-section{border-top:1px solid var(--line);grid-template-columns:1fr 1.3fr;gap:100px;display:grid}.faq-section .eyebrow{margin-bottom:25px}.faq-section details{border-top:1px solid var(--line)}.faq-section details:last-child{border-bottom:1px solid var(--line)}.faq-section summary{cursor:pointer;justify-content:space-between;align-items:center;gap:25px;padding:23px 0;font-size:18px;line-height:1.5;list-style:none;display:flex}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary span{color:var(--blue);font-size:24px;transition:transform .3s}.faq-section details[open] summary span{transform:rotate(45deg)}.faq-section details p{color:var(--slate);max-width:520px;padding-bottom:26px;font-size:18px}.legal-content{max-width:930px;margin-left:0;padding-bottom:100px}.error-page{padding-block:100px 130px}.error-page h1{margin:30px 0;font-size:clamp(43px,6vw,85px)}.error-page>p:not(.eyebrow){color:var(--slate);margin-bottom:35px}.error-page .text-link{margin-left:30px}.site-footer{background:var(--navy);color:#fff}.footer-top{padding-top:75px;padding-bottom:65px}.footer-top>.eyebrow{color:#a8b7d4}.footer-cta{justify-content:space-between;align-items:center;gap:50px;margin:30px 0 15px;display:flex}.footer-cta h2{font-size:clamp(42px,5.8vw,86px);line-height:1.12}.footer-top>.text-link{margin-top:15px}.footer-main{border-top:1px solid #364363;grid-template-columns:1.4fr 1.25fr .75fr 1fr;gap:40px;padding-top:48px;padding-bottom:48px;display:grid}.footer-brand img{width:245px}.footer-brand>p{color:#b6c2d7;max-width:210px;margin-top:23px;font-size:18px}.footer-main .eyebrow{color:#9cadca;margin:0 0 18px;font-size:12px}.footer-main>div>a{width:fit-content;padding:5px 0;font-size:18px;line-height:1.5;display:block}.footer-main>div>a:hover{text-underline-offset:4px;text-decoration:underline}.footer-main>div>p:not(.eyebrow){font-size:18px;line-height:1.8}.footer-main .footer-credential{color:#b9c6dd;margin-top:20px;font-size:16px!important}.footer-bottom{border-top:1px solid #364363;padding-top:28px;padding-bottom:30px}.footer-bottom>p{color:#acbad2;max-width:550px;font-size:16px;line-height:1.8}.footer-bottom>div{color:#b6c2d7;align-items:center;gap:30px;margin-top:28px;font-size:16px;display:flex}.footer-bottom .back-top{margin-left:auto}.footer-bottom a{padding:6px 0}.media-dialog{background:var(--navy);color:#fff;border:0;width:min(1200px,94vw);max-width:94vw;max-height:94dvh;padding:54px 16px 16px;overflow:auto}.media-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060e23e6}.media-close{color:#fff;background:0 0;align-items:center;gap:15px;height:40px;font-size:16px;display:flex;position:absolute;top:7px;right:16px}.media-close span{font-size:30px}.media-content>img,.media-content>video{object-fit:contain;max-width:100%;max-height:78dvh;margin:auto}.media-content>video{width:100%}.reveal-pending{opacity:0;transform:translateY(28px)}.reveal-visible{opacity:1;transition:opacity .85s var(--ease), transform .85s var(--ease);transform:none}.hero-eyebrow{animation:arrive .8s var(--ease) both}.hero-heading-row h1{animation:arrive 1s 80ms var(--ease) both}.hero-description{animation:arrive 1s .2s var(--ease) both}@keyframes arrive{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width>=1640px){.hero-media{margin-inline:auto}.site-header{padding-inline:max(var(--gutter), calc((100vw - 1496px) / 2))}}@media (width<=1100px){.site-header{gap:25px;height:90px}.brand img{width:205px}.desktop-nav{gap:25px}.hero-heading-row{grid-template-columns:1fr 215px;gap:30px}.hero-heading-row h1{font-size:7.1vw}.hero-description p{font-size:16px}.hero-media{min-height:380px}.hero-photo{height:420px}.project-caption h3{font-size:24px}.contact-section,.faq-section{gap:50px}.footer-main{grid-template-columns:1fr 1fr;gap:40px 65px}.service-feature-copy{padding-right:15px}.service-feature{grid-template-columns:30px 1fr 36%;gap:20px}.service-detail-hero{gap:35px}.project-story,.story-grid{gap:50px}}@media (width<=760px){html{scroll-padding-top:30px}.section-space{padding-block:58px}.site-header{gap:13px;height:83px}.brand img{width:200px}.desktop-nav{display:none}.header-contact{gap:12px;min-height:41px;margin-left:auto;padding:8px 11px;font-size:14px}.header-contact .arrow{width:16px;height:16px}.menu-toggle{flex-shrink:0;margin-right:-10px;display:flex}.hero-intro{padding-top:34px;padding-bottom:32px}.hero-eyebrow{letter-spacing:.1em;font-size:12px}.draft-marker{margin-right:10px}.hero-heading-row{margin-top:25px;display:block}.hero-heading-row h1{letter-spacing:-.06em;font-size:clamp(46px,8.2vw,66px);line-height:1.06}.hero-description{justify-content:space-between;align-items:flex-end;gap:22px;margin-top:27px;display:flex}.hero-description p{max-width:315px;font-size:16px;line-height:1.8}.hero-description .text-link{white-space:nowrap;flex-shrink:0;gap:15px;width:auto;margin:0;font-size:14px}.hero-media{min-height:0;margin-left:var(--gutter);margin-right:0}.hero-side-label{width:30px;padding-block:20px;font-size:12px}.hero-photo{height:440px}.hero-photo img{object-position:43% center}.hero-photo-shade{background:linear-gradient(#0000 25%,#091829b8)}.hero-project-label{max-width:calc(100% - 46px);bottom:100px;left:23px}.hero-project-label h2{max-width:250px;font-size:26px}.hero-project-label .eyebrow{font-size:12px}.hero-project-label>div{justify-content:space-between;gap:12px}.hero-project-label>p{font-size:13px}.hero-cross{font-size:29px;top:12px;right:18px}.hero-media .film-button{gap:14px;min-height:46px;padding:12px 15px;font-size:13px;bottom:25px;left:53px;right:auto}.film-time{padding-left:10px;font-size:12px}.hero-bottom{letter-spacing:.09em;gap:12px;padding-top:17px;font-size:12px}.hero-bottom>span:nth-child(2){display:none}.hero-bottom>a{white-space:nowrap}.display-heading{font-size:clamp(35px,6.4vw,47px)}.section-heading{margin-bottom:30px;display:block}.section-heading .eyebrow{margin-bottom:18px}.section-heading>.text-link{gap:36px;margin-top:18px;font-size:16px}.project-card{margin-bottom:38px}.project-card:last-child{margin-bottom:0}.project-image-link>img{aspect-ratio:1.2}.project-sector{font-size:12px;top:14px;left:14px}.project-arrow{width:42px;height:42px;bottom:14px;right:14px}.project-arrow .arrow{width:20px;height:20px}.project-caption{padding-top:18px}.project-caption h3{margin-top:7px;font-size:24px}.project-caption .eyebrow{font-size:12px}.statement-section{padding-block:63px}.statement-grid h2{max-width:650px;font-size:clamp(53px,10.5vw,80px)}.statement-grid>.eyebrow{margin-bottom:30px;font-size:12px}.statement-bottom{margin-top:32px}.statement-bottom p{font-size:16px}.round-link{width:76px;height:76px}.round-link .arrow{width:29px;height:29px}.statement-lines{top:0;right:-500px}.page-heading{padding-block:50px}.page-heading h1{margin-top:23px;font-size:clamp(42px,8.4vw,63px);line-height:1.1}.page-intro{max-width:500px;margin-top:23px;font-size:18px}.page-heading .eyebrow{font-size:12px}.projects-index{padding-bottom:75px}.project-toolbar{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:30px;padding-block:14px}.filter-list{gap:6px}.filter{padding:9px 15px;font-size:14px}.project-count{padding-left:2px;font-size:13px}.project-grid{display:block}.project-grid .project-card{margin-bottom:38px}.service-feature{grid-template-columns:22px 1fr;gap:15px;padding-block:32px}.service-feature-copy{padding-right:0}.service-feature h2{font-size:32px}.service-feature p{margin-block:15px 5px;font-size:17px}.service-feature-image{grid-column:2;margin-top:10px}.service-feature-image img{height:225px}.services-index{padding-bottom:60px}.split-heading,.story-grid{display:block}.split-heading>div{margin-top:25px}.split-heading p{max-width:500px;font-size:18px}.wide-image>img{aspect-ratio:1.12;max-height:530px}.image-caption{max-width:calc(100% - 24px);padding:8px 10px;font-size:12px;bottom:12px;left:12px}.story-grid>.prose{margin-top:30px}.prose{font-size:18px}.prose p{margin-bottom:22px}.approach-steps{margin-top:40px;display:block}.approach-steps>div{grid-template-columns:45px 1fr;gap:12px 20px;margin-top:25px;display:grid}.approach-steps span{grid-row:1/3;font-size:25px}.approach-steps h3{margin:0;font-size:26px}.approach-steps p{grid-column:2;font-size:17px}.breadcrumbs{padding-top:25px;font-size:13px}.breadcrumbs>span{text-align:right;max-width:48%}.project-detail-heading{padding-top:30px;padding-bottom:30px}.project-detail-heading h1{font-size:clamp(43px,9vw,65px)}.project-detail-heading>p:last-child{font-size:17px}.project-main-image>img{aspect-ratio:1.08}.project-main-image .film-button{gap:12px;padding:12px 15px;font-size:13px;bottom:16px;right:16px}.project-story{flex-direction:column-reverse;gap:40px;display:flex}.project-story .display-heading{margin-bottom:23px;font-size:36px}.lead{margin-bottom:22px;font-size:17px}.project-story aside{width:100%}.project-story dl{grid-template-columns:90px 1fr;gap:18px;display:grid}.project-story dt,.project-story dd{margin:0}.project-story dt{padding-top:3px;font-size:12px}.project-story dd{font-size:17px}.project-story ul{margin:0}.project-gallery{gap:16px}.gallery-item img{height:230px}.gallery-item:last-child:nth-child(odd) img{height:330px}.gallery-expand{width:34px;height:34px;font-size:25px;line-height:32px;bottom:10px;right:10px}.service-detail-hero{padding-top:35px;padding-bottom:0;display:block}.service-detail-hero h1{margin:23px 0;font-size:clamp(44px,9vw,64px)}.service-detail-hero .lead{max-width:500px;font-size:18px}.service-detail-hero .button{margin-top:0}.service-detail-image{margin-top:35px}.service-detail-image img{height:340px}.scope-list{margin-top:35px}.scope-list li{padding-block:21px;font-size:18px}.related-services{display:block}.related-services a{border-bottom:0;min-height:0;padding-block:23px}.related-services a:last-child{border-bottom:1px solid var(--line)}.related-services h3{max-width:80%;font-size:24px}.contact-section{flex-direction:column-reverse;gap:50px;padding-bottom:60px;display:flex}.enquiry-form h2{font-size:26px}.form-grid{gap:23px 18px}.contact-details h2{margin:22px 0;font-size:36px}.contact-details .contact-email{font-size:18px}.contact-image{margin-top:25px}.contact-image>img{height:260px}.faq-section{display:block}.faq-section>div+div{margin-top:30px}.faq-section summary{padding:20px 0;font-size:18px}.faq-section details p{font-size:17px}.form-success{padding:27px}.form-success h2{font-size:29px}.legal-content{padding-bottom:60px}.error-page{padding-block:65px 90px}.error-page .text-link{width:fit-content;margin:20px 0 0;display:flex}.footer-top{padding-top:56px;padding-bottom:47px}.footer-cta{align-items:flex-end;gap:20px;margin-top:25px}.footer-cta h2{font-size:clamp(38px,7.6vw,56px)}.footer-cta .round-link{width:60px;height:60px;margin-bottom:4px}.footer-cta .arrow{width:25px;height:25px}.footer-top>.text-link{font-size:16px}.footer-main{grid-template-columns:1fr 1fr;gap:35px 20px;padding-top:35px;padding-bottom:35px}.footer-brand{grid-column:1/-1}.footer-brand img{width:220px}.footer-brand>p{max-width:none;margin-top:17px;font-size:18px}.footer-main>div:nth-child(2){grid-column:1/-1}.footer-main .eyebrow{margin-bottom:12px}.footer-main>div>a{min-height:32px;padding:7px 0;font-size:18px}.footer-main>div>p:not(.eyebrow){font-size:18px}.footer-bottom{padding-top:22px;padding-bottom:23px}.footer-bottom>p{font-size:16px}.footer-bottom>div{gap:16px;margin-top:20px;font-size:16px}.media-dialog{padding-inline:8px}.media-content>img,.media-content>video{max-height:75dvh}}@media (width<=420px){.brand img{width:177px}.site-header{gap:8px}.header-contact{gap:9px;min-height:38px;padding:7px 9px;font-size:13px}.header-contact .arrow{width:14px;height:14px}.menu-toggle{width:36px}.hero-heading-row h1{font-size:11.6vw}.hero-description{margin-top:24px;display:block}.hero-description p{max-width:320px}.hero-description .text-link{gap:32px;min-height:43px;margin-top:12px}.hero-photo{height:385px}.hero-project-label h2{font-size:23px}.hero-project-label>div{gap:8px}.hero-project-label .circle-arrow{flex-shrink:0}.hero-bottom{font-size:6.5px}.hero-bottom>span{max-width:130px}.eyebrow{font-size:12px}.form-grid{display:block}.form-field{margin-bottom:21px}.footer-cta h2{font-size:36px}.footer-cta .round-link{width:50px;height:50px}.gallery-item img{height:180px}.page-heading h1{font-size:10.3vw}.project-detail-heading h1{font-size:11vw}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.reveal-pending{opacity:1;transform:none}}@media print{.site-header,.site-footer,.film-button,.filter-list,.menu-toggle,.media-dialog{display:none}.reveal-pending{opacity:1;transform:none}.section-space{padding-block:25px}body{background:#fff}.hero-media{margin:0}.wrap{padding-inline:0}}@media (width<=359px){.site-header .header-contact{display:none}.brand img{width:190px}.menu-toggle{margin-left:auto}.hero-heading-row h1{font-size:11.5vw}.hero-project-label{max-width:calc(100% - 34px);left:17px}.hero-project-label h2{font-size:22px}.hero-media .film-button{left:47px}.filter{padding-inline:12px}.footer-cta h2{font-size:31px}.project-gallery{grid-template-columns:1fr}.gallery-item img,.gallery-item:last-child:nth-child(odd) img{height:300px}}.hero-description p{font-size:18px}.desktop-nav a{font-size:17px}.gallery-controls{justify-content:center;align-items:center;gap:28px;padding-top:12px;display:flex}.gallery-controls button{color:#fff;background:0 0;width:48px;height:44px;font-size:23px}.gallery-counter{color:#c5d5ed;text-align:center;min-width:52px;font-size:16px}@media (width<=760px){.hero-description p{font-size:18px}.hero-description .text-link,.section-heading>.text-link{font-size:17px}.hero-eyebrow{font-size:12px}.form-field input,.form-field textarea,.form-field select{font-size:18px}.form-field label{font-size:17px}.header-contact{min-height:44px}.menu-toggle{width:44px}.project-caption .eyebrow{font-size:12px}.footer-main>div>a{min-height:36px}}@media (width<=420px){.brand img{width:165px}.hero-eyebrow{font-size:12px}.hero-description p{font-size:18px}}@media (width<=359px){.brand img{width:185px}}.contact-details>a,.consent{min-height:44px}.media-close{height:44px}.no-script-nav{display:none}@media (width<=760px){.footer-main>div>a,.footer-bottom a{min-height:44px}.no-script-nav{padding:14px var(--gutter);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px 22px;font-size:17px;display:flex}.no-script-nav a{padding-block:8px}}.header-contact{font-size:16px}.hero-description p{font-size:18px;line-height:1.65}.hero-heading-row{grid-template-columns:minmax(0,1fr) 290px;gap:40px}.hero-description p{max-width:none}.hero-bottom{padding-bottom:16px;font-size:12px}.hero-project-label>p,.film-button,.hero-media .film-button,.form-note,.consent,.field-error,.form-field ::placeholder,.form-field label{font-size:16px}.page-intro{max-width:660px;font-size:20px}.footer-information{background:var(--mist);color:var(--navy)}.footer-main{border-top:0;grid-template-columns:1.15fr 1.3fr .8fr 1fr;gap:32px;padding-block:52px}.footer-brand>p{max-width:240px;color:var(--navy);line-height:1.6}.footer-main .eyebrow{color:#40516c;margin-bottom:20px;font-size:13px}.footer-main>div>a{overflow-wrap:anywhere;padding:7px 0;line-height:1.6}.footer-main .footer-credential{color:#40516c;line-height:1.6;font-size:16px!important}.footer-bottom{border-color:#101d4630;padding-block:28px}.footer-bottom>p{color:#40516c;max-width:810px}.footer-bottom>div{color:var(--navy);margin-top:20px}.footer-information a:focus-visible{outline-color:var(--blue)}.footer-top{position:relative;overflow:hidden}.footer-top>*{z-index:1;position:relative}.footer-top:after{content:"";pointer-events:none;border:48px solid #ffffff06;width:380px;height:440px;position:absolute;top:-20px;right:120px;transform:skew(-20deg)}.footer-cta .round-link{color:var(--navy);background:var(--horizon);border-color:var(--horizon)}.footer-cta .round-link:hover{background:#fff;border-color:#fff}@media (width<=1100px){.hero-heading-row{grid-template-columns:minmax(0,1fr) 250px;gap:25px}.hero-heading-row h1{font-size:6.6vw}.footer-main{grid-template-columns:1fr 1fr;gap:35px 55px}}@media (width<=760px){.hero-heading-row{display:block}.hero-heading-row h1{font-size:clamp(42px,8.2vw,66px)}.hero-description{margin-top:22px;display:block}.hero-description p{max-width:520px;font-size:18px}.hero-description .text-link{gap:36px;margin-top:12px;font-size:16px}.hero-bottom{flex-wrap:wrap;gap:4px 20px;font-size:11px}.hero-eyebrow{letter-spacing:.07em;font-size:11px}.footer-main{gap:32px 25px}.footer-brand img{width:260px}.footer-main>div>a,.footer-main>div>p:not(.eyebrow){font-size:18px}.footer-bottom>p,.footer-bottom>div{font-size:16px}.footer-top>.text-link{font-size:17px}.footer-cta h2{font-size:clamp(35px,7.6vw,56px)}.page-intro{font-size:18px}}@media (width<=500px){.header-contact{display:none}.brand img{width:210px}.footer-cta{display:block}.footer-cta .round-link{display:none}.footer-bottom>div{flex-wrap:wrap;gap:12px 25px}.footer-bottom .back-top{margin-left:0}}@media (width<=359px){.footer-main{grid-template-columns:1fr}.hero-heading-row h1{font-size:37px}}.engineering-icon{flex-shrink:0;width:48px;height:48px}.section-ruler{align-items:center;gap:22px;margin-bottom:40px;display:flex}.section-ruler:after{content:"";opacity:.25;background:currentColor;flex:1;order:1;height:1px}.section-ruler>span{order:2;font-size:26px;line-height:1}.section-ruler .eyebrow{flex-shrink:0}.approach-section{background:var(--sky)}.approach-lead{grid-template-columns:1.2fr 1fr;align-items:start;gap:80px;display:grid}.approach-lead .display-heading{font-size:clamp(38px,4.2vw,64px)}.approach-lead p{max-width:550px;font-size:20px;line-height:1.7}.approach-lead .text-link{margin-top:18px}.principle-panels{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:44px;display:grid}.principle-panels article{background:#bfdef5;padding:32px}.principle-panels article:nth-child(2){background:#a8d4f4}.principle-panels article:nth-child(3){background:#8fc8f0}.principle-top{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.principle-panels h3{margin-bottom:15px;font-size:27px}.principle-panels p{max-width:360px;font-size:18px;line-height:1.65}.expertise-layout{grid-template-columns:.86fr 1.5fr;gap:64px;display:grid}.expertise-copy{flex-direction:column;align-items:start;min-width:0;display:flex}.expertise-copy h2{font-size:clamp(42px,4.5vw,69px)}.expertise-copy>p{color:#c7d9ee;max-width:355px;margin-top:28px;font-size:19px}.expertise-copy .text-link{margin-top:16px}.structural-illustration{color:var(--horizon);width:calc(100% + 20px);margin-top:auto;padding-top:36px}.structural-frame{width:100%;height:auto;display:block;overflow:visible}.drawing-caption{letter-spacing:.12em;border-top:1px solid #49c5f744;justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;font-size:12px;display:flex}.drawing-caption>span:last-child{font-size:24px}.expertise-cards{background:#4c5e7f;border:1px solid #4c5e7f;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.expertise-cards>a{background:#182a52;padding:27px;transition:background .3s}.expertise-cards>a:nth-child(4n+2),.expertise-cards>a:nth-child(4n+3){background:#1c325d}.expertise-cards>a:hover{background:#244778}.expertise-card-top{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.expertise-card-top .engineering-icon{color:var(--horizon);width:42px;height:42px}.expertise-card-top .arrow{width:21px;height:21px;transition:transform .35s var(--ease)}.expertise-cards>a:hover .arrow{transform:translate(3px,-3px)}.expertise-cards h3{max-width:270px;font-size:25px;line-height:1.2}.expertise-cards p{color:#d0ddef;margin-top:15px;font-size:17px;line-height:1.65}.work-section{background:var(--blue);color:#fff}.work-section .display-heading{font-size:clamp(50px,6vw,90px)}.work-section .section-heading{align-items:center;gap:80px;margin-bottom:40px}.work-intro{max-width:430px}.work-intro>p{font-size:18px;line-height:1.65}.work-intro .text-link{border-color:#fff8;margin-top:12px}.work-intro .text-link:hover{color:#fff;border-color:#fff}.work-grid{grid-template-columns:1.15fr 1fr 1fr;gap:22px;display:grid}.work-grid .project-card{background:var(--chalk);color:var(--navy)}.work-grid .project-image-link img{aspect-ratio:auto;height:350px}.work-grid .project-card:first-child img{object-position:55% center}.work-grid .project-caption{gap:15px;min-height:152px;padding:25px}.work-grid .project-caption h3{margin-top:12px;font-size:28px}.work-grid .project-caption .eyebrow{line-height:1.5}.work-grid .project-sector{color:var(--navy);font-size:13px}.work-section a:focus-visible{outline-color:#fff}.work-section .project-caption:focus-visible{outline-color:var(--navy);outline-offset:-5px}.process-section{background:var(--mist)}.process-layout{grid-template-columns:.85fr 1.3fr;align-items:start;gap:65px;display:grid}.process-copy h2{font-size:clamp(38px,4vw,61px)}.process-copy>p{margin-top:26px;font-size:18px;line-height:1.7}.process-points{margin:24px 0 12px;padding:0;list-style:none}.process-points li{border-top:1px solid #101d4626;align-items:center;gap:13px;padding:12px 0;font-size:16px;display:flex}.process-points .engineering-icon{width:26px;height:26px}.process-images{grid-template-columns:1fr 1fr;gap:18px;display:grid}.process-images figure{background:var(--mist-light);min-width:0;margin:0}.process-images figure:nth-child(2){margin-top:86px}.process-images button{background:#fff;width:100%;padding:0;display:block;position:relative;overflow:hidden}.process-images img{object-fit:cover;width:100%;height:370px;transition:transform .7s var(--ease)}.process-images figure:first-child img{object-fit:contain;padding:8px}.process-images button:hover img{transform:scale(1.04)}.process-images figcaption{padding:20px;font-size:18px;font-weight:600}.process-images figcaption .eyebrow{color:var(--slate);margin-bottom:8px;font-weight:500;display:block}.statement-section{padding-block:76px}.statement-bottom p{color:var(--navy);font-size:20px}.statement-lines,.statement-lines:before,.statement-lines:after{border-width:16px;border-color:#075fe40c}@media (width<=1100px){.approach-lead{gap:40px}.approach-lead p{font-size:18px}.principle-panels article{padding:26px}.principle-panels h3{font-size:24px}.expertise-layout{grid-template-columns:.8fr 1.5fr;gap:35px}.expertise-cards>a{padding:22px}.expertise-cards h3{font-size:23px}.work-grid{gap:16px}.work-grid .project-image-link img{height:300px}.work-grid .project-caption{padding:20px}.work-grid .project-caption h3{font-size:24px}.process-layout{gap:35px}.process-images img{height:330px}}@media (width<=900px){.expertise-layout{display:block}.expertise-copy{grid-template-columns:1fr 1fr;align-items:start;gap:20px 40px;display:grid}.expertise-copy h2{grid-row:1/4}.expertise-copy>p{margin:0}.expertise-copy .text-link{justify-self:start;margin:0}.structural-illustration{display:none}.expertise-cards{margin-top:36px}.process-layout{grid-template-columns:1fr}.process-copy{max-width:650px}.process-images img{height:330px}.process-images figure:nth-child(2){margin-top:0}}@media (width<=760px){.section-ruler{gap:16px;margin-bottom:28px}.section-ruler .eyebrow{letter-spacing:.08em;font-size:12px}.approach-lead{display:block}.approach-lead .display-heading{font-size:clamp(36px,6.4vw,47px)}.approach-lead>div{margin-top:24px}.principle-panels{grid-template-columns:1fr;margin-top:32px}.principle-panels article{padding:26px}.principle-top{margin-bottom:18px}.principle-top .engineering-icon{width:40px;height:40px}.principle-panels h3{font-size:27px}.principle-panels p{max-width:500px}.expertise-copy{display:block}.expertise-copy h2{font-size:clamp(42px,8vw,58px)}.expertise-copy h2 br{display:none}.expertise-copy h2{white-space:pre-line}.expertise-copy>p{max-width:500px;margin:24px 0 14px}.expertise-cards>a{padding:25px}.expertise-cards h3{font-size:25px}.work-section .section-heading{display:block}.work-section .display-heading{font-size:clamp(49px,9vw,68px)}.work-intro{max-width:520px;margin-top:22px}.work-grid{grid-template-columns:1fr;gap:26px}.work-grid .project-image-link img{aspect-ratio:1.4;height:auto}.work-grid .project-caption{min-height:0;padding:24px}.work-grid .project-caption h3{font-size:28px}.work-grid .project-sector{top:15px;left:15px}.process-copy h2{font-size:clamp(38px,7vw,50px)}.process-images{gap:14px}.process-images img{height:280px}.process-images figcaption{padding:16px;font-size:17px}.statement-section{padding-block:60px}.statement-bottom p{font-size:18px}}@media (width<=520px){.expertise-cards{grid-template-columns:1fr}.expertise-cards>a{padding:25px}.expertise-card-top{margin-bottom:18px}.expertise-cards h3{max-width:none}.expertise-cards p{font-size:18px}.process-images{gap:10px}.process-images img{height:225px}.process-images figcaption{padding:14px;font-size:16px}.process-images .gallery-expand{width:36px;height:36px;line-height:34px;bottom:10px;right:10px}}.page-heading{background:var(--sky);padding-block:60px;position:relative;overflow:hidden}.page-heading>.wrap{z-index:1;position:relative}.page-heading h1{max-width:1050px;margin-top:24px;font-size:clamp(54px,6.3vw,94px)}.page-heading-shape{pointer-events:none;width:320px;height:320px;position:absolute;bottom:-95px;right:3%;transform:rotate(-12deg)}.page-heading-shape span{clip-path:polygon(0 0,30% 0,55% 66%,79% 0,100% 0,64% 100%,44% 100%);background:#075fe410;position:absolute;inset:0}.page-heading-shape span:nth-child(2){transform:translate(65px,-65px)}.page-heading-shape span:nth-child(3){transform:translate(130px,-130px)}.page-heading+.wrap>.wide-image{margin-top:32px}.services-index{background:var(--chalk);padding-block:40px 64px}.service-feature{background:var(--sky);border:0;grid-template-columns:55px minmax(0,1fr) 40%;gap:32px;margin-bottom:20px;padding:32px}.service-feature:last-child{border:0;margin-bottom:0}.service-feature-symbol{color:var(--blue);align-self:start}.service-feature-symbol .eyebrow{margin-top:20px;display:block}.service-feature-copy{padding:0 15px 0 0}.service-feature h2{font-size:clamp(30px,3vw,44px)}.service-feature p{color:var(--navy);max-width:480px;margin-block:18px 8px;font-size:18px}.service-feature .text-link{font-size:16px}.service-feature-image img{height:280px}.service-feature:nth-child(3n+2){background:var(--navy);color:#fff}.service-feature:nth-child(3n+2) p{color:#d0ddef}.service-feature:nth-child(3n+2) .service-feature-symbol{color:var(--horizon)}.service-feature:nth-child(3n+2) .text-link{border-color:#a4bfdf}.service-feature:nth-child(3n+2):hover h2{color:var(--horizon)}.service-feature:nth-child(3n+3){background:var(--mist)}.process-overview{background:var(--blue);color:#fff}.process-overview>.wrap>.eyebrow{margin-bottom:25px}.approach-steps{background:#fff4;gap:1px;margin-top:40px}.approach-steps>div{background:#0957cb;border:0;padding:30px}.step-symbol{justify-content:space-between;align-items:center;display:flex}.step-symbol span{color:#d8eaff;font-size:48px}.step-symbol .engineering-icon{color:#b6eaff}.approach-steps h3{margin-block:25px 15px;font-size:32px}.approach-steps p{color:#fff;font-size:18px}.projects-index{background:var(--sky);padding-block:12px 70px}.project-toolbar{border-top:0;border-bottom-color:#101d4630;margin-bottom:32px;padding-block:22px}.filter,.project-count{font-size:16px}.projects-index .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;align-items:start;gap:24px}.projects-index .project-card{background:var(--chalk)}.projects-index .project-image-link img{aspect-ratio:auto;height:330px}.projects-index .project-caption{padding:24px}.projects-index .project-caption h3{font-size:28px}.scope-section{background:var(--blue);color:#fff}.scope-section .engineering-icon{width:65px;height:65px;margin-bottom:26px}.scope-section .scope-list li{border-color:#fff5;font-size:20px}.scope-section .scope-list span{color:#d4edff;font-size:14px}.related-services{gap:18px}.related-services a{background:var(--sky);border:0;grid-template-columns:1fr 24px;align-items:start;gap:28px 20px;padding:28px;display:grid}.related-services .engineering-icon{color:var(--blue);grid-column:1/-1}.related-services h3{font-size:27px}.project-story aside{background:var(--sky);border:0;padding:30px}.project-story dt{font-size:13px}.project-story dd{font-size:18px}.contact-section{grid-template-columns:.95fr 1.25fr;align-items:start;gap:48px;padding-block:48px 64px}.contact-details{background:var(--navy);color:#fff;border:0;padding:35px;overflow:hidden}.contact-details>.engineering-icon{color:var(--horizon);width:60px;height:60px;margin-bottom:26px}.contact-details .eyebrow{color:#c7d9ee}.contact-details h2{font-size:56px}.contact-details>a,.contact-details .contact-email{font-size:20px}.contact-details .contact-email{gap:15px;font-size:18px}.contact-details>a:hover{color:var(--horizon)}.contact-location{color:#d0ddef;font-size:18px}.contact-image{margin:30px -35px -35px}.contact-image>img{height:290px}.enquiry-panel{background:#fff;padding:32px}.enquiry-form h2{font-size:34px}.form-field input,.form-field select,.form-field textarea{background:var(--chalk)}.faq-band{background:var(--mist-light)}.faq-section{border:0;gap:60px}.faq-section details,.faq-section details:last-child{border-color:#101d4630}.faq-section summary{font-size:20px}.faq-section details p{color:var(--navy);font-size:18px}.legal-content{padding-top:48px}@media (width>=1101px){.hero-heading-row h1{font-size:clamp(60px,5.9vw,100px)}}@media (width<=1100px){.service-feature{grid-template-columns:40px minmax(0,1fr) 37%;gap:22px;padding:26px}.service-feature-symbol .engineering-icon{width:40px;height:40px}.projects-index .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-section{gap:30px}.contact-details{padding:26px}.contact-image{margin:28px -26px -26px}.contact-details .contact-email{font-size:17px}.enquiry-panel{padding:26px}}@media (width<=760px){.page-heading{padding-block:42px}.page-heading h1{font-size:clamp(43px,8.5vw,64px)}.page-heading-shape{width:185px;height:185px;bottom:-90px;right:-60px}.services-index{padding-block:24px 36px}.service-feature{grid-template-columns:40px 1fr;gap:20px;padding:25px;display:grid}.service-feature-symbol .eyebrow{margin-top:15px}.service-feature h2{font-size:32px}.service-feature p{font-size:18px}.service-feature-copy{padding:0}.service-feature-image{grid-column:1/-1;margin:6px -25px -25px}.service-feature-image img{height:270px}.approach-steps{grid-template-columns:1fr;display:grid}.approach-steps>div{margin:0;padding:28px;display:block}.approach-steps h3{margin-block:20px 14px}.approach-steps p{font-size:18px}.step-symbol span{font-size:42px}.projects-index{padding-bottom:48px}.projects-index .project-grid{grid-template-columns:1fr;gap:26px}.projects-index .project-image-link img{aspect-ratio:1.4;height:auto}.projects-index .project-caption h3{font-size:28px}.project-toolbar{flex-wrap:wrap;gap:15px}.project-count{font-size:14px}.scope-section .scope-list li{font-size:18px}.related-services{grid-template-columns:1fr;display:grid}.related-services a{padding:26px}.related-services a:last-child{border:0}.project-story aside{padding:25px}.project-story dt{font-size:12px}.project-story dl{grid-template-columns:75px 1fr;gap:16px}.project-story dd{font-size:17px}.contact-section{align-items:stretch;gap:28px;padding-block:28px 42px;display:flex}.enquiry-panel{padding:26px}.enquiry-form h2{font-size:29px}.contact-details h2{font-size:46px}.contact-image>img{height:250px}.faq-section summary{font-size:18px}.form-grid{grid-template-columns:1fr}}@media (width<=420px){.service-feature{grid-template-columns:1fr}.service-feature-symbol{justify-content:space-between;align-items:center;display:flex}.service-feature-symbol .eyebrow{margin:0}.contact-section{padding-inline:16px}.enquiry-panel{padding:24px 20px}.contact-details{padding:24px}.contact-image{margin:25px -24px -24px}.contact-details .contact-email{font-size:17px}}.project-summary{color:var(--slate);margin-top:12px;font-size:17px;line-height:1.5}.process-images{align-items:start}@media (width<=760px){.footer-main{grid-template-columns:1fr}.footer-main>div:nth-child(3){grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.footer-main>div:nth-child(3) .eyebrow{grid-column:1/-1}.footer-main>div:last-child{border-top:1px solid #101d4626;padding-top:26px}.footer-main .footer-credential{margin-top:14px}}@media (width<=900px){.desktop-nav{display:none}.header-contact{margin-left:auto}.menu-toggle{flex-shrink:0;display:flex}.related-services{grid-template-columns:1fr}.related-services a{grid-template-columns:48px minmax(0,1fr) 24px;align-items:center;gap:20px}.related-services .engineering-icon{grid-column:auto}.related-services h3{max-width:none}.no-script-nav{padding:14px var(--gutter);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px 22px;font-size:16px;display:flex}.no-script-nav a{padding-block:8px}}@media (width<=359px){.related-services a{grid-template-columns:minmax(0,1fr) 24px}.related-services .engineering-icon{grid-column:1/-1}}.home-hero,.footer-information,.process-section,.faq-band{background-image:url(/assets/brand/cad-lines-static.svg);background-position:50%;background-size:1280px 960px}.cad-is-drawing{background-image:url(/assets/brand/cad-lines.svg)}.home-hero{background-color:var(--chalk)}@media (width>=901px) and (hover:hover) and (prefers-reduced-motion:no-preference){.home-hero,.footer-information,.process-section,.faq-band{background-attachment:fixed}}@media (width<=900px){.home-hero,.footer-information,.process-section,.faq-band{background-position:58%;background-size:960px 720px}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.project-carousel .hero-media{min-height:0}.carousel-track{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;background:var(--navy);flex:1;min-width:0;display:flex;position:relative;overflow-x:auto}.carousel-track.is-interactive{scroll-snap-type:none;touch-action:pan-y pinch-zoom;cursor:grab;-webkit-user-select:none;user-select:none;overflow:hidden}.carousel-track.is-dragging{cursor:grabbing;scroll-snap-type:none}.carousel-track.is-interactive .hero-photo{cursor:inherit;-webkit-user-drag:none}.carousel-track img{-webkit-user-drag:none}.carousel-track.is-interactive .hero-photo>img{transition:none;transform:none}.carousel-rail{flex:0 0 100%;min-width:0;display:flex}.carousel-track::-webkit-scrollbar{display:none}.carousel-track:focus-visible{outline:3px solid var(--horizon);outline-offset:-4px}.carousel-slide{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;min-width:0;position:relative}.project-carousel .hero-photo{height:510px}.project-carousel .hero-photo-shade{background:linear-gradient(#0000 25%,#07172a30 52%,#07172add)}.project-carousel .hero-project-label{width:calc(100% - 72px);max-width:750px;bottom:34px;left:36px}.project-carousel .hero-project-label h2{font-size:clamp(30px,3.2vw,48px);line-height:1.15}.project-carousel .hero-project-label>div{gap:25px;margin-block:14px 10px}.project-carousel .circle-arrow{flex-shrink:0;width:48px;height:48px}.project-carousel .circle-arrow .arrow{width:24px;height:24px}.project-carousel .hero-photo:focus-visible{outline-offset:-6px;outline:3px solid #fff}.project-carousel .carousel-film{min-height:48px;padding:12px 18px;font-size:15px;inset:24px 24px auto auto}.carousel-nav{align-items:center;gap:40px;padding-top:22px;padding-bottom:6px;display:flex}.carousel-pagination{flex:1;gap:22px;min-width:0;display:flex}.carousel-project{text-align:left;min-width:0;color:var(--slate);background:0 0;border-top:2px solid #bcc8d2;flex:1;align-items:baseline;gap:15px;min-height:60px;padding:15px 0;transition:color .25s,border-color .25s;display:flex;position:relative}.carousel-project[aria-current],.carousel-project:hover{color:var(--navy)}.carousel-project[aria-current] .carousel-project-number{font-weight:800}.carousel-progress{background:var(--blue);transform-origin:0;width:100%;height:2px;position:absolute;top:-2px;left:0;transform:scaleX(0)}.carousel-toggle svg{width:22px;height:22px}.carousel-toggle .play-symbol,.carousel-toggle[data-paused=true] .pause-symbol{display:none}.carousel-toggle[data-paused=true] .play-symbol{display:block}.carousel-project-number{color:var(--blue);font-size:14px}.carousel-project-name{font-size:17px;font-weight:600;line-height:1.4}.carousel-direction{align-items:center;gap:10px;display:flex}.carousel-counter{color:var(--slate);white-space:nowrap;font-variant-numeric:tabular-nums;margin-right:12px;font-size:14px}.carousel-counter>span{color:var(--navy)}.carousel-control{background:var(--chalk);border:1px solid #9fadb9;border-radius:50%;place-items:center;width:48px;height:48px;transition:color .25s,background .25s;display:grid}.carousel-control.previous .arrow{transform:rotate(-135deg)}.carousel-control.next .arrow{transform:rotate(45deg)}.carousel-control:hover{color:#fff;background:var(--blue);border-color:var(--blue)}@media (width<=1100px){.carousel-nav{gap:25px}.carousel-pagination{gap:15px}.carousel-project{gap:10px}.carousel-counter{display:none}}@media (width<=760px){.project-carousel .hero-media{margin-inline:var(--gutter)}.project-carousel .hero-photo{height:440px}.project-carousel .hero-side-label{width:30px;font-size:10px}.project-carousel .hero-project-label{width:calc(100% - 48px);max-width:none;bottom:28px;left:24px}.project-carousel .hero-project-label h2{max-width:none;font-size:32px}.project-carousel .hero-project-label>div{gap:16px}.project-carousel .hero-project-label .eyebrow{letter-spacing:.1em;font-size:11px}.project-carousel .hero-project-label>p{font-size:16px;line-height:1.6}.project-carousel .carousel-film{gap:12px;padding:12px 15px;font-size:14px;top:16px;right:16px}.project-carousel .circle-arrow{width:40px;height:40px}.project-carousel .circle-arrow .arrow{width:20px;height:20px}.carousel-nav{gap:24px;padding-top:18px}.carousel-project-name{font-size:15px}}@media (width<=600px){.carousel-project-name{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.carousel-project{justify-content:center;align-items:center;min-height:48px;padding:10px 0}.carousel-project-number{font-size:16px}.carousel-pagination{gap:12px}.carousel-nav{flex-wrap:wrap;gap:6px}.carousel-pagination{flex-basis:100%}.carousel-direction{justify-content:flex-end;width:100%}.carousel-counter{margin-right:auto;font-size:15px;display:block}.carousel-control{width:44px;height:44px}.carousel-direction{gap:8px}}@media (width<=359px){.project-carousel .hero-project-label{width:calc(100% - 36px);left:18px}.project-carousel .hero-project-label h2{font-size:28px}.project-carousel .circle-arrow{display:none}.project-carousel .hero-photo{height:400px}}@media print{.carousel-nav{display:none}.carousel-track{display:block;overflow:visible}.carousel-rail{display:block;transform:none!important}.carousel-slide{break-inside:avoid;margin-bottom:20px}.carousel-slide[inert]{display:none}}.carousel-slide.focus-top .hero-photo>img{object-position:center top}.carousel-slide.focus-bottom .hero-photo>img{object-position:center bottom}@media (prefers-reduced-motion:reduce){.carousel-project[aria-current]{border-color:var(--blue)}}.brand{align-content:center;gap:4px;display:inline-grid}.brand-tagline{letter-spacing:.015em;white-space:nowrap;padding-left:21.3%;font-size:11px;font-weight:600;line-height:1.25}.menu-tagline{color:#d4edff;margin-top:4px;padding-left:46px;font-size:12px}.practice-section{background:var(--mist-light)}.practice-section .section-heading>p{max-width:350px;color:var(--slate)}.practice-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.practice-gallery figure,.wind-report-images figure{min-width:0;margin:0}.practice-gallery button,.wind-report-images button{text-align:left;background:#fff;width:100%;padding:0;display:block;position:relative;overflow:hidden}.practice-gallery img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.practice-gallery figcaption,.wind-report-images figcaption{align-items:baseline;gap:12px;padding-top:18px;font-size:15px;line-height:1.5;display:flex}.practice-gallery figcaption .eyebrow,.wind-report-images figcaption .eyebrow{color:var(--blue);flex-shrink:0}.wind-tool-section{background:var(--sky);scroll-margin-top:30px}.wind-tool-section .section-ruler .eyebrow{white-space:normal;flex-shrink:1;min-width:0}.wind-tool-layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:65px;margin-top:44px;display:grid}.wind-tool-copy>.engineering-icon{color:var(--blue);width:48px;height:48px;margin-bottom:24px}.wind-tool-copy>p{max-width:470px;color:var(--slate);margin-top:24px;font-size:18px}.wind-tool-points{margin:25px 0 32px;padding:0;list-style:none}.wind-tool-points li{border-top:1px solid #101d4626;padding:12px 0;font-size:16px}.wind-tool-contact{border-top:2px solid var(--blue);padding-top:24px}.wind-tool-contact h3{letter-spacing:-.03em;max-width:380px;font-size:23px;line-height:1.4}.wind-tool-contact>a{overflow-wrap:anywhere;width:fit-content;margin-top:12px;font-size:16px;display:flex}.wind-tool-contact>.text-link{margin-block:18px 24px}.wind-tool-preview{background:#edf5fc;border:1px solid #101d4626;padding:24px}.wind-preview-heading{color:var(--blue);justify-content:space-between;align-items:center;gap:18px;padding-bottom:22px;display:flex}.wind-report-images{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.wind-report-images img{width:100%;height:auto;display:block}.wind-report-images .gallery-expand{width:32px;height:32px;font-size:22px;bottom:10px;right:10px}.wind-report-images figcaption{gap:8px;font-size:13px}.wind-sample-note{color:var(--slate);border-top:1px solid #101d4626;margin-top:24px;padding-top:16px;font-size:13px}.wind-tool-callout{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:32px;padding-block:56px;display:grid}.wind-tool-callout>.engineering-icon{color:var(--blue)}.wind-tool-callout h2{margin-block:10px;font-size:clamp(26px,3vw,36px)}.wind-tool-callout .text-link{white-space:nowrap}.project-toolbar{flex-wrap:wrap;gap:18px}.filter-list{flex-wrap:wrap}.carousel-nav-many .carousel-pagination{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px 18px;display:grid}.carousel-nav-many .carousel-project{justify-content:center;align-items:center;min-height:44px;padding-block:10px}.carousel-nav-many .carousel-project-name{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1100px){.wind-tool-layout{grid-template-columns:1fr 1fr;gap:32px}.wind-tool-preview{padding:18px}.wind-tool-callout{grid-template-columns:48px minmax(0,1fr)}.wind-tool-callout>a{grid-column:2;justify-self:start}}@media (width<=760px){.practice-gallery,.wind-tool-layout{grid-template-columns:1fr}.practice-gallery{gap:32px}.practice-gallery img{aspect-ratio:3/2}.wind-tool-layout{margin-top:32px}.wind-tool-copy>p{max-width:none}.wind-tool-preview{margin-top:8px}.wind-report-images{gap:14px}.wind-report-images figcaption{display:block}.wind-report-images figcaption .eyebrow{margin-bottom:6px;display:block}.wind-tool-callout{gap:20px;padding-block:40px}.carousel-nav-many .carousel-pagination{gap:4px 10px}.carousel-nav-many{flex-wrap:wrap;gap:10px}.carousel-nav-many .carousel-pagination{flex-basis:100%}.carousel-nav-many .carousel-direction{justify-content:flex-end;width:100%}.carousel-nav-many .carousel-counter{margin-right:auto;display:block}}@media (width<=420px){.wind-report-images{grid-template-columns:1fr;gap:28px}.wind-report-images figcaption{display:flex}}
