@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--navy:#082b4c;--deep:#061f37;--ink:#122d43;--blue:#195d92;--muted:#5d6d79;--line:#dce3e8;--paper:#f3f6f8;--teal:#73c5d2;--font:'DM Sans',Arial,sans-serif;--heading:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:106px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 var(--font)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #ca8d2f;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--heading);font-weight:650}h2{font-size:clamp(35px,3.45vw,50px);line-height:1.18;letter-spacing:-1.9px;margin-bottom:22px}h3{font-size:22px;line-height:1.35;letter-spacing:-.5px}p{color:var(--muted)}.wrap{width:calc(100% - 104px);max-width:1296px;margin:auto}.section{padding-top:106px;padding-bottom:106px}.eyebrow{font-size:11px;line-height:1.5;font-weight:700;letter-spacing:1.8px;color:var(--blue);margin-bottom:22px}.light{color:#fff}.tiny-line{height:2px;width:28px;background:var(--teal);display:inline-block;vertical-align:middle;margin-right:14px}.utility{background:var(--navy);color:#d5e0e8;font-size:11px;letter-spacing:.25px;padding:9px 0}.utility .wrap,.utility .wrap>span:last-child{display:flex;justify-content:space-between;align-items:center;gap:16px}.utility a{margin-left:24px}.utility i,footer i{height:3px;width:3px;border-radius:50%;background:#7893a6;display:inline-block;margin:0 7px}.header{position:sticky;top:0;background:#fff;z-index:20;border-bottom:1px solid var(--line)}.header-inner{min-height:99px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;gap:13px;align-items:center;flex-shrink:0}.brand img{object-fit:contain}.brand-name{font-family:var(--heading);font-size:25px;font-weight:800;letter-spacing:3.5px;line-height:1.15;color:var(--navy)}.brand-name>span{display:block;font-family:var(--font);font-weight:600;letter-spacing:.9px;font-size:8.5px;margin-top:8px}.header nav{display:flex;align-items:center;gap:29px;font-size:13px;font-weight:550}.header nav>a:not(.button){padding:10px 0}.header nav>a:not(.button):hover{color:var(--blue)}.button{background:var(--navy);color:#fff;border:1px solid var(--navy);padding:16px 22px;display:inline-flex;gap:34px;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;line-height:1.5;transition:background .2s,transform .2s}.button:hover{background:var(--blue);border-color:var(--blue)}.button span{font-size:18px}.button.small{padding:12px 18px;gap:22px}.button.white{background:#fff;color:var(--navy);border-color:#fff}.button.white:hover{background:#dbeef3;border-color:#dbeef3}.text-link{font-size:13px;font-weight:650;display:inline-flex;gap:23px;align-items:center;line-height:1.6;background:none;border:0;padding:0;color:var(--navy)}.text-link.light{color:#fff}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.text-link span{font-size:19px}.menu-toggle{display:none}.hero{background:var(--navy);position:relative;color:#fff;min-height:650px;overflow:hidden}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 57%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,26,47,.95) 0%,rgba(3,26,47,.84) 24%,rgba(3,26,47,.49) 47%,rgba(3,26,47,.04) 78%),linear-gradient(0deg,rgba(2,22,40,.85),transparent 32%)}.hero-inner{position:relative;padding-top:67px;padding-bottom:114px}.hero .eyebrow{font-size:10px;margin-bottom:25px;color:#d9ecf3}.hero h1{font-size:clamp(52px,5.3vw,77px);line-height:1.08;letter-spacing:-3px;margin-bottom:25px;font-weight:600}.hero h1>span{color:#9cd8df}.hero-copy{color:#dfebf1;max-width:450px;font-size:15px;line-height:1.8}.actions{display:flex;align-items:center;gap:28px;margin-top:29px}.hero-foot{position:absolute;left:0;right:0;bottom:27px;display:flex;justify-content:space-between;border-top:1px solid #ffffff38;padding-top:19px;font-size:9px;letter-spacing:1.2px;color:#dbe9ee}.hero-foot span:last-child>span{margin-left:15px;font-size:13px}.live-dot{display:inline-block;background:#93d6c8;border-radius:50%;width:6px;height:6px;margin-right:9px}.scope-strip{background:var(--paper);border-bottom:1px solid var(--line);padding:29px 0}.scope-strip .wrap{display:grid;grid-template-columns:1.4fr repeat(4,1fr);align-items:center;gap:25px}.scope-strip .wrap>span{font-size:13px;line-height:1.65;color:var(--muted)}.scope-strip strong{color:var(--ink);font-weight:600}.scope-strip .wrap>div{font-size:12px;padding-left:25px;border-left:1px solid #ccd7df;min-height:35px;display:flex;align-items:center}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:end;margin-bottom:49px}.section-heading h2{margin-bottom:0}.section-heading>p,.section-heading>div>p:not(.eyebrow){max-width:440px;font-size:15px;line-height:1.9;margin-bottom:4px}.section-heading .text-link{margin-top:18px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:33px 29px 27px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;display:flex;align-items:flex-start;flex-direction:column;transition:background .2s}.service:hover{background:var(--paper)}.service-number{position:absolute;top:28px;right:28px;color:#7c8a94;font-size:10px;letter-spacing:1px}.service svg{height:38px;width:38px;stroke:var(--blue);stroke-width:1.4;fill:none;margin-bottom:27px;stroke-linejoin:round;stroke-linecap:round}.service h3{font-size:19px;letter-spacing:-.4px;margin-bottom:13px}.service p{font-size:13px;line-height:1.85;margin-bottom:23px;max-width:330px}.service a{font-size:11px;font-weight:700;margin-top:auto;display:flex;justify-content:space-between;gap:20px;width:100%}.service a:hover{color:var(--blue)}.service a>span{font-size:16px}.approach{background:var(--paper)}.stage-tabs{display:flex;justify-content:space-between;border-bottom:1px solid #bdcbd6;gap:24px}.stage-tabs button{color:var(--muted);border:0;border-bottom:3px solid transparent;background:transparent;font-size:12px;text-align:left;padding:0 4px 19px;flex:1}.stage-tabs button>span{font-size:10px;letter-spacing:1px;display:block;color:#718697;margin-bottom:8px}.stage-tabs button[aria-selected=true]{border-bottom-color:var(--blue);color:var(--navy);font-weight:700}.stage-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;padding-top:39px;min-height:260px}.stage-panel h3{font-size:26px}.stage-panel .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:13px}.stage-panel p:not(.eyebrow){font-size:14px;line-height:1.85}.stage-deliverables{border-left:1px solid #ced9e1;padding:4px 0 0 35px}.stage-deliverables ul{list-style:none;padding:0;margin-top:18px;font-size:13px}.stage-deliverables li{padding:8px 0}.stage-deliverables li:before{content:'✓';color:var(--blue);margin-right:13px}.project-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.project-toolbar>p{font-size:9px;letter-spacing:1.5px;margin:0}.filters{display:flex;gap:5px}.filters button{background:transparent;border:1px solid transparent;padding:7px 13px;font-size:11px;color:var(--muted)}.filters button.active{background:var(--navy);color:white;border-color:var(--navy)}.filters button:hover:not(.active){border-color:var(--line);color:var(--navy)}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px 30px}.project[hidden]{display:none}.photo-button{display:block;padding:0;border:0;background:var(--paper);width:100%;position:relative;overflow:hidden}.photo-button img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .5s}.photo-button:hover img{transform:scale(1.035)}.photo-button>span{position:absolute;bottom:0;right:0;width:45px;height:45px;background:#fff;display:grid;place-content:center;color:var(--navy);font-size:24px}.project-caption{display:flex;justify-content:space-between;gap:15px;align-items:start;padding-top:22px}.project-caption .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:7px}.project-caption h3{font-size:24px;margin-bottom:5px}.project-caption p{font-size:12px;margin-bottom:0}.project-tag{padding:5px 9px;border:1px solid var(--line);font-size:10px;margin-top:3px;white-space:nowrap}.project-context{font-size:11px;line-height:1.7;max-width:550px;border-top:1px solid var(--line);padding-top:12px;margin:15px 0 0}.about{background:var(--navy);color:white}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about-photo{position:relative;height:530px}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:46%}.photo-note{position:absolute;bottom:0;left:0;right:0;padding:25px 21px;background:linear-gradient(transparent,#041d34e6);font-size:8px;letter-spacing:1px}.photo-note .tiny-line{width:19px;margin-right:8px}.about .eyebrow{color:#a9c9dc}.about h2{font-size:42px;letter-spacing:-1.5px}.about p{color:#c0d0dd;font-size:13px;line-height:1.9}.about .large-copy{font-size:18px;color:#edf4f8;margin-bottom:18px}.about .text-link{font-size:11px;margin-top:7px}.about-locations{display:flex;border-top:1px solid #ffffff2e;margin-top:30px;padding-top:23px;gap:52px}.about-locations>span{font-size:8px;letter-spacing:1px;color:#a6c1d3}.about-locations strong{display:block;color:#fff;font-size:13px;letter-spacing:0;font-weight:500;margin-top:5px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-intro{max-width:400px;font-size:14px;line-height:1.9}.contact-details{margin-top:34px;max-width:420px}.contact-details>a,.contact-details>div{position:relative;display:flex;flex-direction:column;padding:15px 0;border-bottom:1px solid var(--line)}.contact-details span,.office>span{font-size:9px;letter-spacing:1.5px;color:var(--muted);font-weight:600;margin-bottom:4px}.contact-details strong{font-size:17px;font-weight:500}.contact-details b,.copy-id{position:absolute;right:2px;bottom:19px;font-size:18px;font-weight:400}.copy-id{border:0;background:none;color:var(--blue);font-size:11px;font-weight:600}.contact-details a:hover strong{color:var(--blue)}.office{font-style:normal;font-size:12px;line-height:1.9;color:var(--muted);margin-top:36px}.office>span{display:block}.office>a{display:inline-block;margin-top:7px;color:var(--blue)}.enquiry{background:var(--paper);padding:36px}.enquiry h3{font-size:23px;margin-bottom:10px}.enquiry>p{font-size:12px;margin-bottom:23px}.enquiry label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600;line-height:1.5;margin-bottom:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}input,select,textarea{border:1px solid #cad5de;width:100%;background:#fff;color:var(--ink);border-radius:0;padding:12px 11px;font-size:12px;line-height:1.5;min-width:0}input::placeholder,textarea::placeholder{color:#768591;opacity:1}textarea{resize:vertical}select{appearance:auto}.enquiry .button{width:100%;margin-top:3px}.enquiry .form-note{font-size:10px;line-height:1.75;margin:12px 0 0}.status{font-size:11px;color:var(--blue);margin-top:12px;margin-bottom:0}.status:empty{display:none}#enquiry-result .text-link{margin-top:12px;font-size:11px}footer{background:var(--paper)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:32px;padding-bottom:32px}.footer-top .brand-name{font-size:20px}.footer-top .brand-name>span{font-size:7px}.footer-top p{font-size:12px;margin:0}.back-top{font-size:11px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:9px;color:var(--muted);border-top:1px solid var(--line);padding:20px 0 25px}dialog{border:0;padding:50px 20px 14px;max-width:min(1100px,94vw);max-height:94vh;background:var(--navy);color:white}dialog::backdrop{background:#031627dd}dialog>img{max-height:74vh;width:auto;object-fit:contain;margin:auto}.dialog-close{position:absolute;top:13px;right:18px;background:none;border:0;color:#fff;font-size:12px}dialog p{color:#dceaf4;font-size:12px;margin:12px 0 0}.skip{position:fixed;top:-80px;left:15px;background:#fff;color:var(--navy);padding:14px;z-index:100}.skip:focus{top:10px}.page-intro{background:var(--navy);padding:73px 0;color:white}.page-intro h1{font-size:clamp(38px,4vw,58px);letter-spacing:-2px;line-height:1.18;max-width:750px;margin-bottom:24px}.page-intro p:not(.eyebrow){max-width:650px;color:#cbdce8;font-size:16px}.breadcrumb{font-size:11px;margin-bottom:35px;color:#b4cad9}.guide-layout{display:grid;grid-template-columns:240px 1fr;gap:80px}.guide-nav{position:sticky;top:140px;height:max-content;border-left:2px solid var(--line);padding-left:21px;display:flex;flex-direction:column;gap:15px;font-size:12px}.guide-content h2{font-size:33px;letter-spacing:-1px}.guide-content h3{font-size:19px}.guide-content>section{padding-bottom:43px;margin-bottom:43px;border-bottom:1px solid var(--line);scroll-margin-top:135px}.guide-content>section:last-child{border:0;padding-bottom:0;margin-bottom:0}.guide-content p,.guide-content li{font-size:14px;color:var(--muted)}.guide-content ul,.guide-content ol{padding-left:20px}.guide-content li{padding:5px 0}.guide-content .callout{padding:25px;background:var(--paper);border-left:3px solid var(--blue)}.guide-cta{background:var(--paper);padding:50px 0}.guide-cta>.wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.guide-cta h2{font-size:30px;margin-bottom:10px}.guide-cta p{font-size:14px;margin-bottom:0}
@media(min-width:1600px){.hero{min-height:720px}.hero-inner{padding-top:85px}.hero-image{object-position:center 55%}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header nav{gap:18px;font-size:11px}.brand-name{font-size:21px}.brand-name>span{font-size:7px;letter-spacing:.65px}.brand img{width:53px;height:53px}.button.small{padding:11px 12px;gap:15px}.hero h1{font-size:64px}.hero{min-height:650px}.section{padding-top:80px;padding-bottom:80px}.about h2{font-size:35px}.about-photo{height:510px}.contact-grid{gap:6%}.enquiry{padding:27px}.guide-layout{gap:45px;grid-template-columns:190px 1fr}}
@media(max-width:800px){html{scroll-padding-top:88px}.utility .wrap>span:first-child{display:none}.utility .wrap{justify-content:center}.utility a{margin-left:10px}.header-inner{min-height:82px}.header nav{display:none;position:absolute;left:0;right:0;top:82px;flex-direction:column;align-items:stretch;background:white;padding:20px 32px 28px;border-bottom:1px solid var(--line);font-size:14px;gap:8px;box-shadow:0 12px 15px #0027440d}.header nav.open{display:flex}.header nav .button{margin-top:10px}.menu-toggle{display:flex;align-items:center;gap:13px;padding:10px 0;background:none;border:0;color:var(--navy);font-size:12px}.menu-lines{width:21px;height:12px;border-top:1.5px solid var(--navy);border-bottom:1.5px solid var(--navy)}.hero{min-height:660px}.hero-image{object-position:65% center}.hero-shade{background:linear-gradient(90deg,#031a2feb,#031a2fc4 36%,#031a2f59),linear-gradient(0deg,#021628b8,transparent)}.hero h1{font-size:65px}.hero-copy{max-width:410px}.scope-strip .wrap{grid-template-columns:repeat(2,1fr);gap:18px}.scope-strip .wrap>span{grid-column:1/-1}.scope-strip .wrap>span br{display:none}.scope-strip .wrap>span strong{margin-left:5px}.scope-strip .wrap>div{padding-left:14px;font-size:11px;min-height:24px}.section-heading{gap:6%;grid-template-columns:1fr 1fr}.section-heading h2{font-size:35px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:13px}.services-grid{grid-template-columns:repeat(2,1fr)}.service{padding:27px 24px}.stage-tabs{gap:8px}.stage-tabs button{font-size:10px}.stage-panel{gap:6%;min-height:295px}.stage-panel h3{font-size:23px}.stage-panel p:not(.eyebrow){font-size:13px}.stage-deliverables{padding-left:24px}.stage-deliverables ul{font-size:12px}.project-toolbar{align-items:flex-start;flex-direction:column}.project-caption{padding-top:15px}.project-caption h3{font-size:21px}.project-tag{font-size:8px}.project-caption .eyebrow{font-size:8px;letter-spacing:1px}.project-grid{gap:30px 22px}.about-grid{gap:6%}.about-photo{height:540px}.about h2{font-size:31px}.about .large-copy{font-size:16px}.about-locations{gap:24px}.contact-grid{grid-template-columns:1fr;gap:45px}.contact-grid h2{font-size:43px}.contact-intro{max-width:500px}.contact-details{max-width:100%}.enquiry{padding:35px}.footer-top{flex-wrap:wrap}.footer-top p{display:none}.footer-bottom{flex-wrap:wrap;gap:12px}.guide-layout{grid-template-columns:1fr}.guide-nav{position:static;flex-direction:row;flex-wrap:wrap;gap:12px 22px}.guide-cta>.wrap{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.wrap{width:calc(100% - 40px)}.utility{font-size:9px;padding:7px 0}.utility .wrap>span:last-child{gap:6px}.utility a{margin-left:6px}.utility i{margin:0 2px}.brand{gap:9px}.brand-name{font-size:21px;letter-spacing:2.5px}.brand-name>span{font-size:6.7px;letter-spacing:.6px;margin-top:6px}.brand img{width:45px;height:45px}.header-inner{min-height:76px;gap:10px}.header nav{top:76px;padding-left:20px;padding-right:20px}.menu-toggle{gap:8px;font-size:11px}.menu-lines{width:18px}.hero{min-height:650px}.hero-inner{padding-top:49px;padding-bottom:95px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px;max-width:310px}.hero .tiny-line{width:20px;margin-right:7px}.hero h1{font-size:57px;letter-spacing:-2.5px}.hero-copy{font-size:13px;line-height:1.85;max-width:315px}.hero-image{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#031a2fe8,#031a2f95),linear-gradient(0deg,#021628d6,transparent 65%)}.actions{flex-direction:column;align-items:flex-start;gap:19px;margin-top:27px}.button{font-size:12px;padding:14px 19px;gap:23px}.text-link{font-size:12px}.hero-foot{bottom:22px;font-size:7px;letter-spacing:.8px;padding-top:15px;gap:15px}.hero-foot>span:last-child{max-width:100px;text-align:right}.hero-foot span:last-child>span{display:none}.scope-strip{padding:24px 0}.scope-strip .wrap{gap:14px}.scope-strip .wrap>span{font-size:12px}.scope-strip .wrap>div{font-size:10px}.section{padding-top:62px;padding-bottom:62px}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:31px}.section-heading h2{font-size:35px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:13px;max-width:100%}.eyebrow{font-size:9px;margin-bottom:17px}h2{letter-spacing:-1.4px}.services-grid{grid-template-columns:1fr}.service{padding:25px}.service svg{width:32px;height:32px;margin-bottom:21px}.service h3{font-size:20px}.service p{font-size:13px;max-width:100%;margin-bottom:20px}.service-number{font-size:9px}.service a{font-size:11px}.stage-tabs{overflow-x:auto;gap:16px;padding-bottom:0}.stage-tabs button{flex:0 0 112px;font-size:11px;padding-bottom:14px}.stage-panel{grid-template-columns:1fr;gap:22px;padding-top:29px;min-height:360px}.stage-panel h3{font-size:24px}.stage-deliverables{border-left:0;border-top:1px solid #ced9e1;padding:20px 0 0}.stage-deliverables ul{margin:12px 0 0}.stage-deliverables li{padding:5px 0}.filters{gap:2px;flex-wrap:wrap}.filters button{font-size:10px;padding:7px 9px}.project-toolbar{gap:16px}.project-grid{grid-template-columns:1fr;gap:29px}.project-caption h3{font-size:23px}.project-caption .eyebrow{font-size:8px}.project-context{font-size:10px}.project-tag{font-size:9px}.about-grid{grid-template-columns:1fr;gap:37px}.about-photo{height:330px}.about h2{font-size:35px}.about .large-copy{font-size:18px}.about p{font-size:13px}.about-locations{gap:50px}.contact-grid h2{font-size:39px}.contact-details strong{font-size:17px}.enquiry{padding:25px 20px}.enquiry h3{font-size:21px}.enquiry>p{font-size:11px}.form-row{grid-template-columns:1fr;gap:0}.enquiry label{font-size:11px}.enquiry .button{font-size:12px}.footer-top{padding-top:28px;padding-bottom:28px;gap:15px}.footer-top .brand-name{font-size:18px}.footer-top .brand-name>span{font-size:6px}.footer-top .brand img{width:40px;height:40px}.back-top{font-size:9px}.footer-bottom{font-size:8px;flex-direction:column;align-items:flex-start;gap:9px}.page-intro{padding:45px 0}.page-intro h1{font-size:40px;letter-spacing:-1.5px}.page-intro p:not(.eyebrow){font-size:14px}.guide-layout{gap:35px}.guide-content h2{font-size:29px}.guide-content p,.guide-content li{font-size:13px}.guide-cta h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

.gallery-note{font-size:11px;line-height:1.75;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin:30px 0 0;max-width:850px}

.hero h1{font-size:clamp(44px,4.7vw,68px);max-width:820px}
