:root{--px-black:#090b0a;--px-charcoal:#151816;--px-yellow:#ffd400;--px-deep-yellow:#e7b900;--px-green:#2fb344;--px-deep-green:#167a32;--px-off:#f5f6f2;--px-line:#d9ded8;--px-muted:#66706a;--px-ease:cubic-bezier(.22,1,.36,1)}
body:not(.page-admin-){background:var(--px-off);color:var(--px-black)}
.site-header{min-height:78px;grid-template-columns:174px 1fr auto auto;padding-inline:max(24px,calc((100vw - 1440px)/2));background:rgba(9,11,10,.97);color:#fff;border-block-start:0;border-block-end:1px solid rgba(255,255,255,.1);box-shadow:0 10px 30px rgba(0,0,0,.13);backdrop-filter:blur(18px)}.site-header.is-scrolled{min-height:68px}.brand{width:158px;padding:6px 8px;background:#fff!important;box-shadow:none}.brand-logo{max-height:54px}.primary-nav{gap:1px}.primary-nav a{min-height:42px;padding-inline:9px;color:#fff;font-size:.73rem;font-weight:700}.primary-nav a:not(.nav-contact):after{inset-inline:9px;background:var(--px-yellow)}.primary-nav a[aria-current=page]:before{display:none}.nav-contact{min-height:42px!important;margin-inline-start:8px;border:0;border-radius:1px;background:var(--px-yellow);color:var(--px-black)!important;padding-inline:16px!important;box-shadow:none}.nav-contact:hover{background:var(--px-deep-yellow)}.menu-toggle{border-color:rgba(255,255,255,.35);color:#fff}.language-menu{color:#fff}.language-menu summary{min-height:42px;border-color:rgba(255,255,255,.22);background:#171b18;color:#fff;box-shadow:none}.language-menu summary:hover,.language-menu[open] summary{background:#202620}.language-current-code{color:#fff}.language-popover{color:var(--px-black)}
main{min-height:60vh}.eyebrow{color:var(--px-deep-green)}.eyebrow:before{background:var(--px-yellow)}.button{border-radius:1px;background:var(--px-yellow);border-color:var(--px-yellow);color:var(--px-black)}.button:hover{background:var(--px-deep-yellow);border-color:var(--px-deep-yellow)}.button.secondary{border-color:var(--px-black)}.text-link{border-color:var(--px-yellow)}
.breadcrumbs{min-height:54px;display:flex;align-items:center;gap:9px;margin:0;color:var(--px-muted);font-size:.7rem}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{color:var(--px-deep-green)}
.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none}.breadcrumbs li{display:flex;align-items:center}.breadcrumbs li+li:before{content:"›";margin-inline:10px;color:currentColor;opacity:.65}.breadcrumbs a,.breadcrumbs span{font-weight:700;letter-spacing:.02em}
.inner-intro>.breadcrumbs,.case-intro>.breadcrumbs{position:absolute;z-index:4;inset-block-start:25px;inset-inline-start:max(var(--gutter),calc((100vw - 1360px)/2));min-height:32px;color:rgba(255,255,255,.74)}.inner-intro>.breadcrumbs a,.case-intro>.breadcrumbs a{color:#fff}.inner-intro>.breadcrumbs span,.case-intro>.breadcrumbs span{color:rgba(255,255,255,.76)}.inner-intro>.breadcrumbs a:hover,.case-intro>.breadcrumbs a:hover{color:var(--px-yellow)}.inner-intro>.hero-demo-label,.case-intro>.hero-demo-label{position:absolute;z-index:4;inset-block-start:64px;inset-inline-start:max(var(--gutter),calc((100vw - 1360px)/2));width:max-content;max-width:min(520px,calc(100% - (2 * var(--gutter))));margin:0;padding:7px 11px;border:1px solid rgba(245,211,22,.45);background:rgba(8,10,9,.7);color:#f4e57a;font-size:.62rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;backdrop-filter:blur(6px)}

/* Purpose-built page mastheads */
.editorial-hero,.trust-hero{position:relative;min-height:440px;display:grid;align-items:end;padding-block:135px 80px;background:var(--px-charcoal);color:#fff;overflow:hidden}.editorial-hero:before,.trust-hero:before,.inner-intro:after,.portfolio-intro:after,.case-intro:after{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(6,9,7,.94),rgba(6,9,7,.7) 52%,rgba(6,9,7,.25)),url('demo-building-construction.webp');background-size:cover;background-position:center;z-index:0}.editorial-hero:after,.trust-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(90deg,#000,transparent 70%)}.editorial-hero>.container,.trust-hero>.container{position:relative;z-index:2}.editorial-hero h1,.trust-hero h1{max-width:12ch;margin-block:15px 20px;color:#fff;font-size:clamp(3.4rem,6vw,6.6rem)}.editorial-hero p,.trust-hero p{max-width:62ch;color:#d9dfda}.editorial-hero .button{margin-block-start:18px}
.page-contact .editorial-hero:before,.page-search .editorial-hero:before{background-image:linear-gradient(100deg,rgba(6,9,7,.98),rgba(6,9,7,.75)),url('demo-planning-team.webp')}.page-careers .editorial-hero:before,.page-vacancies .editorial-hero:before,.page-vacancy .editorial-hero:before{background-image:linear-gradient(90deg,rgba(6,9,7,.95),rgba(6,9,7,.56)),url('demo-planning-team.webp')}.page-credibility-page .trust-hero:before,.page-credibility-credentials .trust-hero:before{background-image:linear-gradient(90deg,rgba(6,9,7,.95),rgba(6,9,7,.58)),url('demo-hse-inspection.webp')}
.inner-intro,.portfolio-intro,.case-intro{position:relative;isolation:isolate;min-height:465px;align-items:end;margin-inline:calc(50% - 50vw);padding:145px max(var(--gutter),calc((100vw - 1360px)/2)) 80px;border:0;background:var(--px-charcoal);color:#fff;overflow:hidden}.inner-intro:before,.portfolio-intro:before{display:none}.inner-intro:after,.portfolio-intro:after,.case-intro:after{z-index:-1}.inner-intro h1,.portfolio-intro h1,.case-intro h1{max-width:12ch;margin:0;color:#fff;font-size:clamp(3.4rem,6vw,6.5rem)}.inner-intro .intro-statement,.portfolio-intro .lead,.case-intro .lead{color:#e2e7e3}.expertise-service .inner-intro:after{background-image:linear-gradient(90deg,rgba(6,9,7,.96),rgba(6,9,7,.63)),url('demo-bridge-construction.webp')}.expertise-sector .inner-intro:after{background-image:linear-gradient(90deg,rgba(6,9,7,.95),rgba(6,9,7,.56)),url('demo-building-construction.webp')}.portfolio-intro:after,.case-intro:after{background-image:linear-gradient(90deg,rgba(6,9,7,.94),rgba(6,9,7,.5)),url('demo-bridge-construction.webp')}

/* Directories: services and sectors */
.corporate-page,.portfolio-page{width:min(1360px,calc(100% - 2*var(--gutter)))}.editorial-body{max-width:820px;margin-block:80px;font-size:1.08rem}.expertise-directory{margin-block:85px;border-block-start:1px solid #aeb7b0}.expertise-item{position:relative;grid-template-columns:80px minmax(0,1fr) minmax(300px,.82fr);align-items:center;gap:50px;padding-block:46px;border-color:#bfc6c0;overflow:hidden}.expertise-item:before{content:"";position:absolute;inset-inline-start:0;inset-block:0;width:3px;background:var(--px-yellow);transform:scaleY(0);transform-origin:bottom;transition:transform .35s var(--px-ease)}.expertise-item:hover:before,.expertise-item:focus-within:before{transform:scaleY(1)}.directory-number{align-self:start;padding-block-start:10px;color:var(--px-deep-green);font:500 1.5rem/1 var(--serif)}.directory-description h2{margin-block:8px 14px;font-size:clamp(2rem,3vw,3.6rem)}.directory-description h2 a{text-decoration:none}.directory-description>p:not(.eyebrow){color:var(--px-muted)}.directory-image{overflow:hidden}.directory-image img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .6s var(--px-ease)}.expertise-item:hover .directory-image img{transform:scale(1.04)}

/* Corporate and About editorial pages */
.corporate-page>.demo-label,.corporate-page>.notice{margin-block:24px}.corporate-cover,.case-cover{position:relative;margin:0 calc(50% - 50vw) 90px;overflow:hidden;background:var(--px-charcoal)}.corporate-cover img,.case-cover img{width:100%;height:min(72vh,760px);object-fit:cover}.corporate-cover:after,.case-cover:after{content:"";position:absolute;inset:0;box-shadow:inset 0 -100px 100px rgba(9,11,10,.2);pointer-events:none}.corporate-cover figcaption,.case-cover figcaption{position:absolute;z-index:2;inset-inline-end:max(var(--gutter),calc((100vw - 1360px)/2));inset-block-end:18px;max-width:45ch;padding:7px 10px;background:rgba(9,11,10,.75);color:#fff;font-size:.64rem}.corporate-module{grid-template-columns:minmax(220px,.36fr) minmax(0,1fr);gap:clamp(45px,8vw,130px);padding-block:90px;border-color:#c6ccc7}.corporate-module>header,.corporate-module>h2{position:sticky;inset-block-start:100px;align-self:start}.corporate-module h2{font-size:clamp(2.2rem,3.6vw,4.2rem)}.module-content>.prose{max-width:800px}.structured-entries{counter-reset:entries}.structured-entries>li{position:relative;display:grid;grid-template-columns:70px 1fr;gap:25px;padding-block:35px}.structured-entries>li:before{counter-increment:entries;content:counter(entries,decimal-leading-zero);color:var(--px-deep-green);font-weight:850}.structured-entries h3{font-size:clamp(1.5rem,2.5vw,2.7rem)}.structured-entries figure{grid-column:1/-1}.structured-entries figure img{width:100%;max-height:520px;object-fit:cover}.relation-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 36px}.relation-list article{padding-block:30px;border-block-start:1px solid var(--px-line)}.relation-list img{width:100%;aspect-ratio:16/9;object-fit:cover;margin-block-end:18px}.corporate-cta,.trust-cta{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;gap:35px;margin-block:90px;padding:clamp(45px,6vw,80px);overflow:hidden;background:var(--px-charcoal);color:#fff}.corporate-cta:before,.trust-cta:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:70px 70px}.corporate-cta>*,.trust-cta>*{position:relative}.corporate-cta h2,.trust-cta h2{margin:0;color:#fff}.corporate-cta .button,.trust-cta .button{background:var(--px-yellow);color:var(--px-black)}

/* Project portfolio and case studies */
.portfolio-tabs{position:sticky;z-index:25;inset-block-start:68px;margin-inline:calc(50% - 50vw);padding-inline:max(var(--gutter),calc((100vw - 1360px)/2));background:rgba(245,246,242,.96);backdrop-filter:blur(15px)}.portfolio-tabs [aria-current]{border-color:var(--px-yellow)}.project-filter-panel{margin-block:35px;border:1px solid #c7cec8;background:#fff}.project-filter-panel summary{padding:17px 20px;font-weight:800;cursor:pointer}.project-filter-panel[open] summary{border-block-end:1px solid var(--px-line)}.project-filter-panel .portfolio-filters{padding:24px}.results-heading{padding-block:20px;border-block-end:1px solid #bbc3bc}.results-heading h2{font-size:clamp(1.8rem,3vw,3rem)}.portfolio-results{gap:clamp(28px,4vw,58px);margin-block:45px}.portfolio-results>div{grid-column:span 6}.portfolio-results .portfolio-featured{grid-column:span 8}.project-story{grid-column:auto;margin-block-end:30px}.project-visual{display:block;overflow:hidden;background:var(--px-charcoal)}.project-visual img{width:100%;aspect-ratio:16/10;object-fit:cover}.project-caption{padding-block:18px}.project-story>p{color:var(--px-muted)}.case-intro{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}.case-intro>.eyebrow{grid-column:1/7}.case-intro>h1{grid-column:1/9}.case-intro>.lead{grid-column:9/-1;grid-row:2;align-self:end}.case-intro>.case-sectors{grid-column:9/-1}.project-progress,.case-overview{grid-template-columns:.38fr .62fr;gap:clamp(50px,8vw,120px);padding-block:80px}.project-progress>div:first-child,.case-overview>div:first-child{position:sticky;inset-block-start:100px;align-self:start}.progress-number{display:block;color:var(--px-deep-green);font-size:clamp(3.5rem,8vw,8rem);line-height:1}.case-facts{grid-template-columns:repeat(2,1fr)}.case-facts>div{padding:22px 12px}.case-facts dt{color:var(--px-muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.08em}.case-facts dd{margin:6px 0 0;font-weight:750}.case-gallery{display:block;padding-block:80px}.gallery-grid{gap:5px}.gallery-grid figure{margin:0}.gallery-grid img{transition:transform .5s var(--px-ease)}.gallery-grid a{display:block;overflow:hidden}.gallery-grid a:hover img{transform:scale(1.035)}

/* HSE, credibility, careers, documents, search */
.trust-section,.phase6-section{padding-block:90px}.trust-section+.trust-section{border-block-start:1px solid var(--px-line)}.trust-section>h2,.phase6-section>h2{font-size:clamp(2.2rem,4vw,4.4rem)}.trust-entry-grid,.indicator-grid,.credential-list,.organization-grid,.document-list{border-color:#bfc7c0}.trust-entry-grid article,.indicator-grid article,.credential-card,.organization-card,.document-list article{position:relative;grid-template-columns:.8fr 1.5fr .7fr;gap:30px;padding:34px 20px;border-color:#c2c9c3;transition:background .25s,padding .25s}.trust-entry-grid article:hover,.indicator-grid article:hover,.credential-card:hover,.organization-card:hover,.document-list article:hover{background:#fff;padding-inline:30px}.indicator-grid strong{color:var(--px-deep-green);font-size:2.2rem}.vacancy-row{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px;padding-block:34px}.vacancy-row h2,.vacancy-row h3{font-size:clamp(1.6rem,3vw,3rem)}.vacancy-row a{text-decoration:none}.document-filters,.filter-bar,.portfolio-filters{padding:24px;background:#fff;border:1px solid var(--px-line)}.document-list article{align-items:center}.search-results li{padding-block:34px}.search-results h3{font-size:clamp(1.4rem,2.5vw,2.6rem)}

/* Contact: information and high-quality form system */
.contact-layout{grid-template-columns:.7fr 1.3fr;gap:clamp(55px,8vw,120px);padding-block:100px}.contact-layout>div:first-child{padding:35px;background:var(--px-charcoal);color:#fff;align-self:start}.contact-layout>div:first-child h2{color:#fff;font-size:2.4rem}.office{border-color:#3b433d}.office a{color:#fff}.contact-layout>div:last-child>h2{font-size:clamp(2.2rem,4vw,4rem)}.enquiry-form{gap:25px 18px}.enquiry-form label{position:relative;color:#263029;font-size:.72rem;font-weight:780;letter-spacing:.025em}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{min-height:58px;border:0;border-block-end:2px solid #bdc5bf;border-radius:0;background:rgba(255,255,255,.65);padding:19px 14px 9px;transition:border-color .25s,background .25s,box-shadow .25s,transform .25s}.enquiry-form textarea{min-height:175px}.enquiry-form input:hover,.enquiry-form select:hover,.enquiry-form textarea:hover{background:#fff}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--px-green);background:#fff;box-shadow:0 12px 28px rgba(22,122,50,.09);transform:translateY(-1px)}.enquiry-form .check{display:grid;grid-template-columns:24px 1fr;align-items:start;gap:12px;font-size:.8rem;font-weight:500}.enquiry-form .check input{width:22px;min-height:22px;accent-color:var(--px-deep-green)}.enquiry-form button{justify-self:start;min-width:190px}

/* News, article, generic records */
.news-grid{gap:35px}.news-grid article{background:#fff;padding-block-end:24px}.news-grid article>*:not(.news-visual){margin-inline:22px}.news-visual{overflow:hidden}.news-visual img{transition:transform .55s var(--px-ease)}.news-visual:hover img{transform:scale(1.04)}.news-grid h3{font-size:clamp(1.5rem,2.5vw,2.7rem)}.article-body{max-width:920px;padding-block:85px}.article-body>.cms-image{margin-block-end:60px}.article-body .prose{font-family:var(--serif);font-size:1.16rem}.article-body .prose h2,.article-body .prose h3{font-family:var(--sans);margin-block-start:2em}.record-page,.catalog-page{padding-block:110px;max-width:1360px}.record-page>h1,.catalog-page>h1{max-width:13ch;font-size:clamp(3.4rem,6vw,6.5rem)}.record-page>.large-copy{font-size:clamp(1.25rem,2vw,1.8rem)}.record-page>.cms-image{width:100%;max-height:650px;object-fit:cover;margin-block:45px}.catalog-grid{grid-template-columns:repeat(3,1fr);gap:4px}.catalog-grid article{padding:26px;background:#fff}.catalog-grid article img{width:calc(100% + 52px);max-width:none;margin:-26px -26px 24px;aspect-ratio:16/10;object-fit:cover}.catalog-grid h2{font-size:clamp(1.4rem,2.4vw,2.5rem)}

/* Shared premium footer */
.site-footer{position:relative;overflow:hidden;padding-block-start:0;background:var(--px-black);color:#fff}.footer-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:88px 88px;mask-image:linear-gradient(#000,transparent)}.footer-lead{position:relative;grid-template-columns:1fr auto;padding-block:85px;border-color:#303832}.footer-lead h2{max-width:15ch;margin-block:10px 12px;font-size:clamp(2.7rem,5vw,5rem)}.footer-lead p:not(.eyebrow){color:#aeb8b1}.footer-primary{background:var(--px-yellow);border-color:var(--px-yellow);color:var(--px-black)}.footer-columns{position:relative;grid-template-columns:1.6fr .7fr .8fr 1fr;gap:45px;padding-block:65px}.footer-identity{grid-column:auto}.footer-columns>nav{grid-column:auto}.footer-contact{grid-column:auto}.footer-columns strong,.footer-contact h3{display:block;margin-block-end:14px;color:#fff;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.footer-columns a{display:block;min-height:34px;padding-block:4px;color:#bdc6bf;text-decoration:none;font-size:.76rem}.footer-columns a:hover{color:var(--px-yellow)}.footer-identity img{width:210px;padding:7px;background:#fff!important}.footer-identity h2{font-size:1.15rem}.footer-identity p{color:#aab4ac;font-size:.76rem}.footer-bottom{position:relative;align-items:center;color:#909c93}.back-to-top{margin-inline-start:auto;text-decoration:none}.back-to-top span{margin-inline-start:6px}

/* RTL and responsive behavior */
html[dir=rtl] .expertise-item:before{inset-inline-start:0}html[dir=rtl] .premium-link span,html[dir=rtl] .row-arrow{transform:scaleX(-1)}
@media(max-width:1260px){.site-header{grid-template-columns:148px 1fr auto auto;padding-inline:20px}.brand{width:140px}.primary-nav a{padding-inline:6px;font-size:.67rem}.nav-contact{padding-inline:11px!important}.footer-columns{gap:28px}}
@media(max-width:1000px){.site-header{grid-template-columns:1fr auto auto;min-height:78px}.brand{grid-column:1}.language-menu{grid-column:2}.menu-toggle{grid-column:3}.js .menu-open .primary-nav{inset-block-start:78px;background:var(--px-black)}.js .menu-open .primary-nav a{color:#fff;border-color:#333b35}.inner-intro,.portfolio-intro,.case-intro{min-height:430px}.expertise-item{grid-template-columns:60px 1fr}.directory-image{grid-column:2}.corporate-module{grid-template-columns:1fr}.corporate-module>header,.corporate-module>h2,.project-progress>div:first-child,.case-overview>div:first-child{position:static}.portfolio-results>div,.portfolio-results .portfolio-featured{grid-column:span 6}.case-intro>.lead,.case-intro>.case-sectors{grid-column:8/-1}.case-intro>h1{grid-column:1/8}.footer-columns{grid-template-columns:1fr 1fr}.footer-identity{grid-column:1/-1}.contact-layout{grid-template-columns:1fr}.contact-layout>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-layout>div:first-child>h2{grid-column:1/-1}}
@media(max-width:700px){.site-header{min-height:72px;padding-inline:15px}.brand{width:128px}.language-menu{margin-inline:4px}.js .menu-open .primary-nav{inset-block-start:72px}.editorial-hero,.trust-hero{min-height:410px;padding-block:125px 60px}.editorial-hero h1,.trust-hero h1{font-size:clamp(3rem,13vw,4.7rem)}.inner-intro,.portfolio-intro,.case-intro{display:block;min-height:430px;padding-block:125px 58px}.inner-intro h1,.portfolio-intro h1,.case-intro h1{font-size:clamp(3rem,13vw,4.7rem)}.inner-intro .intro-statement,.portfolio-intro .lead,.case-intro .lead{margin-block-start:28px}.expertise-directory{margin-block:55px}.expertise-item{display:grid;grid-template-columns:40px 1fr;gap:15px;padding-block:35px}.directory-image{grid-column:1/-1;grid-row:auto}.directory-description h2{font-size:2rem}.corporate-cover,.case-cover{margin-block-end:55px}.corporate-cover img,.case-cover img{height:430px}.corporate-module{padding-block:60px}.structured-entries>li{grid-template-columns:40px 1fr}.relation-list{grid-template-columns:1fr}.corporate-cta,.trust-cta{display:block;margin-block:60px;padding:38px 25px}.corporate-cta>div+div{margin-block-start:25px}.portfolio-tabs{inset-block-start:72px;overflow:auto;flex-wrap:nowrap}.portfolio-tabs a{white-space:nowrap}.portfolio-filters,.filter-bar,.document-filters{grid-template-columns:1fr}.filter-actions,.search-field{grid-column:1}.portfolio-results{display:block}.project-story{margin-block-end:55px}.case-intro>.case-sectors{margin-block-start:18px}.project-progress,.case-overview{grid-template-columns:1fr;padding-block:58px}.case-facts{grid-template-columns:1fr}.gallery-grid{display:block}.gallery-grid figure{margin-block-end:5px}.trust-entry-grid article,.indicator-grid article,.credential-card,.organization-card,.document-list article{grid-template-columns:1fr;padding:28px 10px}.vacancy-row{grid-template-columns:1fr}.contact-layout{padding-block:65px}.contact-layout>div:first-child{display:block;padding:27px}.enquiry-form{grid-template-columns:1fr}.news-grid{display:block}.news-grid article{margin-block-end:35px}.catalog-grid{grid-template-columns:1fr}.record-page,.catalog-page{padding-block:75px}.footer-lead{display:block;padding-block:65px}.footer-actions{margin-block-start:28px}.footer-columns{display:block;padding-block:50px}.footer-columns>*{margin-block-end:38px}.footer-bottom{align-items:flex-start}.back-to-top{margin-inline-start:0}}
@media(prefers-reduced-motion:reduce){.directory-image img,.gallery-grid img,.news-visual img{transition:none}.expertise-item:before{transition:none}}
.motion-ready .home-reveal{opacity:0;transform:translateY(22px);transition:opacity .62s var(--px-ease) var(--home-delay,0ms),transform .62s var(--px-ease) var(--home-delay,0ms)}.motion-ready .home-reveal.home-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.motion-ready .home-reveal{opacity:1;transform:none;transition:none}}
.page-corporate .page-page .inner-intro:after{background-image:linear-gradient(90deg,rgba(6,9,7,.95),rgba(6,9,7,.6)),url('demo-planning-team.webp')}.page-corporate .service-page .inner-intro:after{background-image:linear-gradient(90deg,rgba(6,9,7,.95),rgba(6,9,7,.58)),url('demo-bridge-construction.webp')}.page-corporate .sector-page .inner-intro:after{background-image:linear-gradient(90deg,rgba(6,9,7,.95),rgba(6,9,7,.55)),url('demo-building-construction.webp')}
.site-header .brand{padding:0;background:transparent!important;box-shadow:none}.site-header .brand-logo{width:100%;height:auto;max-height:56px;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,0,0,.28))}

/* Compact architectural footer matching the approved visual direction */
.site-footer:before{content:"";position:absolute;inset-inline:0;inset-block-start:0;height:245px;background:linear-gradient(rgba(9,11,10,.82),rgba(9,11,10,.96)),url('demo-building-construction.webp') center 45%/cover no-repeat;filter:grayscale(.75)}
.site-footer .footer-grid{z-index:1;opacity:.7;pointer-events:none}.site-footer .footer-lead{display:block;min-height:245px;padding-block:42px 34px;text-align:center}.footer-lead>div:first-child{display:flex;flex-direction:column;align-items:center}.footer-lead .eyebrow{display:none}.footer-lead h2{max-width:none;margin:0;color:#fff;font-size:clamp(2rem,3vw,3.15rem);line-height:1.05}.footer-lead h2:after{content:"";display:block;width:48px;height:3px;margin:18px auto 14px;background:var(--px-yellow)}.footer-lead p:not(.eyebrow){margin:0;color:#c5cdc7;font-size:.83rem}.footer-actions{flex-direction:row;justify-content:center;align-items:center;gap:22px;margin-block-start:22px}.footer-actions .button{min-height:44px;padding:10px 18px;font-size:.76rem}.footer-actions .text-link{font-size:.74rem}
.site-footer .footer-columns{grid-template-columns:1.45fr repeat(4,.75fr) 1.1fr;gap:0;padding-block:38px 32px;border-block-start:1px solid #303731}.footer-columns>*{min-width:0;padding-inline:22px;border-inline-start:1px solid #313832}.footer-columns>*:first-child{padding-inline-start:0;border-inline-start:0}.footer-columns>*:last-child{padding-inline-end:0}.footer-identity img{width:175px;margin-block:0 14px;padding:5px}.footer-identity p{max-width:28ch;margin:0;color:#aeb7b0;font-size:.67rem;line-height:1.55}.footer-columns strong,.footer-contact h3{margin-block-end:12px;font-size:.62rem}.footer-columns a{min-height:27px;padding-block:2px;font-size:.65rem}.footer-contact p{margin:6px 0;color:#aeb7b0;font-size:.65rem;line-height:1.5}.site-footer .footer-bottom{min-height:52px;padding-block:13px;border-color:#303731;font-size:.64rem}.footer-bottom .back-to-top{display:inline-flex;align-items:center}
@media(max-width:1000px){.site-footer .footer-columns{grid-template-columns:1.2fr repeat(2,1fr)}.footer-columns>*{border-block-end:1px solid #303731;padding:24px}.footer-columns>*:first-child{padding-inline-start:24px}.footer-columns>*:last-child{padding-inline-end:24px}}
@media(max-width:700px){.site-footer:before{height:285px}.site-footer .footer-lead{min-height:285px;padding:45px 20px 32px}.footer-lead h2{font-size:2.25rem}.footer-actions{flex-direction:column;gap:13px}.site-footer .footer-columns{display:grid;grid-template-columns:1fr 1fr;padding-block:22px}.footer-identity{grid-column:1/-1}.footer-columns>*{margin:0;padding:24px 14px;border-inline-start:0;border-block-end:1px solid #303731}.footer-columns>*:first-child{padding-inline:14px}.footer-columns>*:last-child{padding-inline:14px}.footer-contact{grid-column:1/-1}.site-footer .footer-bottom{gap:15px}.back-to-top{margin-inline-start:0}}
.page-home .premium-cta{display:none}.footer-identity img{width:150px;height:auto;padding:0;background:transparent!important}

/* Keep every footer control above decorative layers and fully interactive. */
.site-footer .footer-lead,
.site-footer .footer-columns,
.site-footer .footer-bottom{position:relative;z-index:2}
.site-footer a,
.site-footer button{position:relative;pointer-events:auto}

/* Structured editorial entries: keep narrative content out of the index rail */
.structured-entries>li:before{grid-column:1;grid-row:1;align-self:start;padding-block-start:8px}
.structured-entries>li>h3,.structured-entries>li>.entry-date,.structured-entries>li>.entry-subtitle,.structured-entries>li>.prose,.structured-entries>li>address,.structured-entries>li>a{grid-column:2;min-width:0}
.structured-entries>li>h3{grid-row:1;margin-block:0 12px}
.structured-entries>li>.entry-symbol{display:none}
.structured-entries>li>figure{grid-column:2;width:100%;margin:20px 0}
.structured-entries>li>.prose{width:100%;max-width:780px}
.structured-entries>li>.prose p{max-width:68ch}
@media(max-width:700px){.structured-entries>li{grid-template-columns:36px minmax(0,1fr);gap:14px}.structured-entries>li>figure{grid-column:1/-1}}

/* Shared content grids: assign every child deliberately so copy never falls into a narrow rail. */
.corporate-module,.trust-section,[id]{scroll-margin-top:104px}
.document-list article{grid-template-columns:minmax(0,1fr) auto}
.document-list article>div{min-width:0}
.document-list article>.button{justify-self:end;white-space:nowrap}
.credential-card{grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);align-items:start}
.credential-card>div{grid-column:1;min-width:0}
.credential-card>dl{grid-column:2;grid-row:1/4;margin:0}
.credential-card>a{grid-column:1;justify-self:start}
.organization-card{grid-template-columns:minmax(150px,210px) minmax(0,1fr);align-items:start}
.organization-card>.cms-image,.organization-card>.neutral-image{grid-column:1;grid-row:1/8;width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff}
.organization-card>*:not(.cms-image):not(.neutral-image){grid-column:2;min-width:0}
.organization-card h3{font-size:clamp(1.45rem,2.3vw,2.5rem)}
.organization-demo{width:max-content;max-width:100%;padding:7px 10px;border:1px solid #dfbf27;background:#fff8ce;color:#403500;font-size:.58rem!important;font-weight:850;letter-spacing:.08em;text-transform:uppercase}

/* Clients and partners — premium relationship directory */
.page-credibility-organizations{background:#f3f5f1}.page-credibility-organizations .organizations-hero:before{background-image:linear-gradient(90deg,rgba(4,10,6,.97),rgba(6,19,11,.74) 55%,rgba(5,9,6,.2)),url('demo-building-construction.webp');background-position:center 46%}
.organizations-index{padding-block:clamp(65px,8vw,110px)}.organizations-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,450px);align-items:end;gap:55px;margin-block-end:44px}.organizations-heading .eyebrow{margin:0 0 13px;color:var(--px-deep-green);font-size:.67rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.organizations-heading h2{max-width:13ch;margin:0;font-size:clamp(2.7rem,4.8vw,5.2rem);line-height:.98;letter-spacing:-.06em}.organizations-heading>p{margin:0;color:#59645c;line-height:1.75}
.organizations-index .organization-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;border:0}
.organizations-index .organization-card{position:relative;display:grid;grid-template-columns:180px minmax(0,1fr);gap:0;min-width:0;min-height:390px;padding:0!important;border:1px solid #d4dcd6;background:#fff;box-shadow:0 15px 44px rgba(16,31,21,.08);overflow:hidden;transition:transform .42s var(--px-ease),box-shadow .42s,border-color .3s}.organizations-index .organization-card:hover{padding:0!important;border-color:#a5b4a8;background:#fff;box-shadow:0 28px 65px rgba(16,31,21,.15);transform:translateY(-7px)}
.organization-visual{position:relative;display:flex;min-height:100%;flex-direction:column;justify-content:center;align-items:center;padding:25px;background:linear-gradient(155deg,#08130c,#163c22);color:#fff;overflow:hidden}.organization-visual:before{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.12);transform:rotate(45deg)}.organization-visual:after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,var(--px-yellow) 0 68%,var(--px-green) 68%)}.organization-visual strong{position:relative;font-size:clamp(2.3rem,4vw,4rem);font-weight:850;letter-spacing:-.06em}.organization-number{position:absolute;inset:20px auto auto 20px;color:var(--px-yellow);font-size:.64rem;font-weight:850;letter-spacing:.12em}.organization-visual-label{position:absolute;inset:auto auto 22px;color:#aebcb2;font-size:.56rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}
.organization-content{display:flex;min-width:0;flex-direction:column;padding:28px 28px 24px}.organization-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-block-end:21px;color:#68746c;font-size:.59rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.organization-meta .status{padding:5px 8px;border:1px solid #2b7b41;background:#edf8ef;color:#17612b;font-size:.56rem}.organizations-index .organization-content h3{margin:0;font-size:clamp(1.55rem,2.4vw,2.45rem);line-height:1.03;letter-spacing:-.045em;overflow-wrap:normal;word-break:normal}.organization-content .organization-demo{margin:17px 0 0}.organization-summary{margin:20px 0 0;color:#59635c;line-height:1.68}.organization-actions{display:flex;justify-content:flex-end;margin-block-start:auto;padding-block-start:24px;color:#7b857e;font-size:.59rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.organization-actions a{color:var(--px-deep-green);text-decoration:none}.organization-actions a span{display:inline-block;margin-inline-start:5px;transition:transform .25s}.organization-actions a:hover span{transform:translate(3px,-3px)}
.organization-projects{margin-block-start:22px;padding-block-start:18px;border-block-start:1px solid #d6ddd7}.organization-projects h4{margin:0 0 10px;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}.organization-projects ul{margin:0;padding:0;list-style:none}.organization-projects li{display:flex;justify-content:space-between;gap:10px;padding-block:7px;font-size:.7rem}.organization-projects li span{color:#738078}
html[dir=rtl] .organization-number{inset:20px 20px auto auto}
@media(max-width:1100px){.organizations-index .organization-grid{grid-template-columns:1fr}.organizations-index .organization-card{grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:760px){.organizations-heading{grid-template-columns:1fr}.organizations-index .organization-card{grid-template-columns:1fr;min-height:0}.organization-visual{min-height:190px}.organization-content{min-height:340px}.organization-visual-label{inset:auto auto 18px}}
@media(max-width:430px){.organization-content{min-height:370px;padding:24px 20px}.organization-meta{align-items:flex-start;flex-direction:column}.organization-content .organization-demo{width:auto}}

/* Services — premium capability directory */
.expertise-service{position:relative}.expertise-service .inner-intro{min-height:570px}.expertise-service .inner-intro:after{background-image:linear-gradient(90deg,rgba(4,9,6,.97),rgba(5,15,9,.76) 52%,rgba(5,9,6,.18)),url('demo-bridge-construction.webp');background-position:center 48%}.expertise-service .inner-intro>div:first-child{grid-column:1/8}.expertise-service .inner-intro .intro-statement{grid-column:9/-1;padding-inline-start:30px;border-inline-start:1px solid rgba(255,255,255,.35)}
.services-overview{display:grid;grid-template-columns:repeat(3,1fr);margin-block:0;border-inline:1px solid #ccd3cd;border-block-end:1px solid #ccd3cd;background:#fff;box-shadow:0 18px 50px rgba(17,31,21,.07)}.services-overview>div{position:relative;min-height:235px;padding:36px 34px;border-block-start:4px solid var(--px-deep-green);overflow:hidden;transition:background .35s,transform .35s var(--px-ease)}.services-overview>div+div{border-inline-start:1px solid #ccd3cd}.services-overview>div:hover{z-index:1;background:#f8fbf7;transform:translateY(-6px)}.services-overview span{display:block;margin-block-end:34px;color:var(--px-deep-green);font-size:.68rem;font-weight:850;letter-spacing:.12em}.services-overview strong{display:block;margin-block-end:11px;font-size:clamp(1.65rem,2.5vw,2.65rem);line-height:1}.services-overview p{margin:0;color:#5c675f;line-height:1.65}.services-overview>div:after{content:"";position:absolute;width:90px;height:90px;inset:auto -45px -45px;border:1px solid rgba(27,105,47,.16);transform:rotate(45deg)}
.expertise-service .expertise-directory{margin-block:clamp(75px,9vw,125px);border:0}.services-directory-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:50px;align-items:end;margin-block-end:46px;padding-block-end:38px;border-block-end:1px solid #afb9b1}.services-directory-heading .eyebrow{grid-column:1/-1;margin:0;color:var(--px-deep-green);font-size:.66rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.services-directory-heading h2{margin:0;font-size:clamp(2.7rem,5vw,5.6rem);line-height:.95;letter-spacing:-.06em}.services-directory-heading>p{margin:0;color:#59645c;line-height:1.75}
.expertise-service .expertise-item{display:grid;grid-template-columns:75px minmax(0,.95fr) minmax(360px,1.05fr);gap:clamp(30px,5vw,72px);min-height:440px;padding:38px 0;border:0;border-block-end:1px solid #bdc6bf}.expertise-service .expertise-item:first-of-type{border-block-start:1px solid #bdc6bf}.expertise-service .expertise-item:before{width:5px;background:var(--px-deep-green)}.expertise-service .expertise-item:nth-of-type(even) .directory-image{grid-column:2;grid-row:1}.expertise-service .expertise-item:nth-of-type(even) .directory-description{grid-column:3}.expertise-service .expertise-item:nth-of-type(even) .directory-number{grid-column:1;grid-row:1}.expertise-service .directory-number{font:800 1rem/1 var(--sans);letter-spacing:.12em}.expertise-service .directory-description{align-self:center}.expertise-service .directory-description .eyebrow{color:var(--px-deep-green);font-size:.62rem;font-weight:850;letter-spacing:.12em}.expertise-service .directory-description h2{margin:14px 0 18px;font-size:clamp(2.2rem,3.7vw,4.3rem);line-height:.96;letter-spacing:-.055em}.expertise-service .directory-description>p:not(.eyebrow){max-width:54ch;margin-block-end:28px;color:#59645d;line-height:1.72}
.expertise-service .directory-image{position:relative;display:block;min-height:330px;background:#0b130e;box-shadow:0 20px 48px rgba(15,29,20,.14)}.expertise-service .directory-image img{height:100%;min-height:330px;aspect-ratio:16/10;filter:saturate(.86)}.directory-image-action{position:absolute;display:grid;place-items:center;inset:auto 20px 20px auto;width:48px;height:48px;background:var(--px-yellow);color:#111;font-weight:900;transition:transform .3s var(--px-ease)}.expertise-item:hover .directory-image-action{transform:translate(4px,-4px)}
.directory-graphic{isolation:isolate;display:flex!important;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(145deg,#0a130d,#183c23)!important;color:#fff;text-decoration:none}.directory-graphic:before{content:"";position:absolute;z-index:-1;width:250px;height:250px;border:1px solid rgba(255,255,255,.11);transform:rotate(45deg);box-shadow:0 0 0 55px rgba(255,255,255,.025)}.directory-graphic>span{position:absolute;inset:24px auto auto 25px;color:var(--px-yellow);font-size:.7rem;font-weight:850;letter-spacing:.15em}.directory-graphic>strong{font-size:clamp(2.7rem,5vw,5.2rem);letter-spacing:-.06em}.directory-graphic>i{position:absolute;display:grid;place-items:center;inset:auto 22px 22px auto;width:48px;height:48px;background:var(--px-yellow);color:#111;font-style:normal;font-weight:900;transition:transform .3s}.expertise-item:hover .directory-graphic>i{transform:translate(4px,-4px)}
@media(max-width:1000px){.expertise-service .inner-intro>div:first-child,.expertise-service .inner-intro .intro-statement{grid-column:auto}.expertise-service .expertise-item{grid-template-columns:55px 1fr}.expertise-service .expertise-item .directory-description,.expertise-service .expertise-item:nth-of-type(even) .directory-description{grid-column:2}.expertise-service .expertise-item .directory-image,.expertise-service .expertise-item:nth-of-type(even) .directory-image{grid-column:2;grid-row:auto}.expertise-service .expertise-item .directory-number,.expertise-service .expertise-item:nth-of-type(even) .directory-number{grid-column:1;grid-row:1}.services-directory-heading{grid-template-columns:1fr}}
@media(max-width:700px){.services-overview{grid-template-columns:1fr}.services-overview>div{min-height:190px}.services-overview>div+div{border-inline-start:0}.expertise-service .inner-intro .intro-statement{padding-inline-start:0;border:0}.expertise-service .expertise-item{display:grid;grid-template-columns:38px 1fr;gap:18px;min-height:0;padding-block:32px}.expertise-service .directory-description h2{font-size:2.25rem}.expertise-service .directory-image{min-height:230px}.expertise-service .directory-image img{min-height:230px}.services-directory-heading h2{font-size:2.8rem}}

/* Sectors — premium industry directory */
.expertise-sector .inner-intro{min-height:570px}.expertise-sector .inner-intro:after{background-image:linear-gradient(90deg,rgba(4,9,6,.96),rgba(5,15,9,.69) 52%,rgba(5,9,6,.15)),url('demo-building-construction.webp');background-position:center 44%}.expertise-sector .inner-intro>div:first-child{grid-column:1/8}.expertise-sector .inner-intro .intro-statement{grid-column:9/-1;padding-inline-start:30px;border-inline-start:1px solid rgba(255,255,255,.34)}
.sectors-overview{display:grid;grid-template-columns:.72fr 1fr 1fr;align-items:stretch;margin-block:0;background:var(--px-charcoal);color:#fff;box-shadow:0 20px 52px rgba(14,28,19,.14)}.sectors-overview>.eyebrow{align-self:center;margin:0;padding:34px;color:var(--px-yellow);font-size:.63rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.sectors-overview>div{display:flex;min-height:150px;flex-direction:column;justify-content:center;padding:32px 34px;border-inline-start:1px solid #394139;transition:background .3s}.sectors-overview>div:hover{background:#173b22}.sectors-overview strong{margin-block-end:8px;font-size:1.22rem}.sectors-overview span{color:#b8c2ba;font-size:.75rem}
.expertise-sector .expertise-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-block:clamp(75px,9vw,125px);border:0}.sectors-directory-heading{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);align-items:end;gap:50px;margin-block-end:17px;padding-block-end:40px;border-block-end:1px solid #adb7af}.sectors-directory-heading .eyebrow{margin:0 0 13px;color:var(--px-deep-green);font-size:.65rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.sectors-directory-heading h2{max-width:12ch;margin:0;font-size:clamp(2.8rem,5vw,5.5rem);line-height:.96;letter-spacing:-.06em}.sectors-directory-heading>p{margin:0;color:#59645c;line-height:1.75}
.expertise-sector .expertise-item{position:relative;display:flex;min-width:0;flex-direction:column;gap:0;padding:0 0 30px;border:1px solid #d2dad4;background:#fff;box-shadow:0 15px 42px rgba(16,31,21,.07);overflow:hidden;transition:transform .4s var(--px-ease),box-shadow .4s,border-color .3s}.expertise-sector .expertise-item:hover{border-color:#9ead9f;box-shadow:0 27px 60px rgba(16,31,21,.14);transform:translateY(-7px)}.expertise-sector .expertise-item:before{display:none}.expertise-sector .directory-number{position:absolute;z-index:3;inset:20px auto auto 20px;padding:7px 9px;background:var(--px-yellow);color:#111;font:850 .63rem/1 var(--sans);letter-spacing:.1em}.expertise-sector .directory-image{order:-1;position:relative;display:block;width:100%;overflow:hidden;background:#0b130e}.expertise-sector .directory-image img{width:100%;aspect-ratio:16/9;object-fit:cover;filter:saturate(.9);transition:transform .7s var(--px-ease),filter .5s}.expertise-sector .expertise-item:hover .directory-image img{transform:scale(1.045);filter:saturate(1.06)}.expertise-sector .directory-image-action{inset:auto 18px 18px auto}.expertise-sector .directory-description{display:flex;min-height:315px;flex-direction:column;padding:28px 28px 0}.expertise-sector .directory-description .eyebrow{color:var(--px-deep-green);font-size:.59rem;font-weight:850;letter-spacing:.11em}.expertise-sector .directory-description h2{margin:12px 0 15px;font-size:clamp(1.9rem,3vw,3.25rem);line-height:1;letter-spacing:-.05em}.expertise-sector .directory-description>p:not(.eyebrow){margin:0;color:#5a655d;line-height:1.7}.expertise-sector .directory-description>.text-link{width:max-content;margin-block-start:auto;padding-block-start:22px}
.sector-graphic{isolation:isolate;display:flex!important;min-height:290px;align-items:center;justify-content:center;color:#fff;text-decoration:none}.sector-graphic:before,.sector-graphic:after{content:"";position:absolute;z-index:-1}.sector-graphic:before{width:210px;height:210px;border:1px solid rgba(255,255,255,.14);transform:rotate(45deg)}.sector-graphic:after{inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:52px 52px}.sector-graphic-1{background:linear-gradient(145deg,#0a170f,#1b4a29)!important}.sector-graphic-2{background:linear-gradient(145deg,#15150a,#4b4415)!important}.sector-graphic-3{background:linear-gradient(145deg,#08161a,#17434a)!important}.sector-graphic-4{background:linear-gradient(145deg,#15100b,#50301b)!important}.sector-graphic>span{position:absolute;z-index:2;inset:20px auto auto 20px;padding:7px 9px;background:var(--px-yellow);color:#111;font-size:.63rem;font-weight:850}.sector-graphic>strong{position:relative;z-index:2;font-size:clamp(3.5rem,7vw,7rem);letter-spacing:-.08em}.sector-graphic>i{position:absolute;z-index:2;inset:auto 22px 20px auto;color:#fff;font-size:.65rem;font-style:normal;font-weight:800;letter-spacing:.1em;text-transform:uppercase;transition:transform .3s}.expertise-item:hover .sector-graphic>i{transform:translate(4px,-3px)}
html[dir=rtl] .expertise-sector .directory-number,html[dir=rtl] .sector-graphic>span{inset:20px 20px auto auto}
@media(max-width:1000px){.expertise-sector .inner-intro>div:first-child,.expertise-sector .inner-intro .intro-statement{grid-column:auto}.sectors-overview{grid-template-columns:1fr 1fr}.sectors-overview>.eyebrow{grid-column:1/-1}.sectors-directory-heading{grid-template-columns:1fr}.expertise-sector .expertise-directory{grid-template-columns:1fr 1fr}.expertise-sector .directory-description{min-height:350px}}
@media(max-width:700px){.expertise-sector .inner-intro .intro-statement{padding-inline-start:0;border:0}.sectors-overview{grid-template-columns:1fr}.sectors-overview>.eyebrow{grid-column:auto}.sectors-overview>div{min-height:125px;border-inline-start:0;border-block-start:1px solid #394139}.expertise-sector .expertise-directory{display:grid;grid-template-columns:1fr}.expertise-sector .directory-description{min-height:0}.expertise-sector .directory-description>.text-link{margin-block-start:25px}.sector-graphic{min-height:230px}.sectors-directory-heading h2{font-size:2.9rem}}
.trust-entry-grid article{grid-template-columns:minmax(150px,.55fr) minmax(0,1.6fr);align-items:start}
.trust-entry-grid article>h3{grid-column:1;grid-row:1/4}
.trust-entry-grid article>p,.trust-entry-grid article>.prose{grid-column:2;min-width:0}
.trust-entry-grid article>.prose p{max-width:68ch}
@media(max-width:700px){.document-list article,.credential-card,.organization-card,.trust-entry-grid article{grid-template-columns:1fr}.document-list article>.button{justify-self:start}.credential-card>div,.credential-card>dl,.credential-card>a,.organization-card>*,.organization-card>*:not(.cms-image):not(.neutral-image),.trust-entry-grid article>h3,.trust-entry-grid article>p,.trust-entry-grid article>.prose{grid-column:1;grid-row:auto}.organization-card>.cms-image,.organization-card>.neutral-image{grid-column:1;grid-row:auto;max-width:240px}.corporate-module,.trust-section,[id]{scroll-margin-top:82px}}

/* Certifications and licences register */
.page-credibility-credentials{background:#f3f5f1}.page-credibility-credentials .credentials-hero:before{background-image:linear-gradient(90deg,rgba(5,11,7,.96),rgba(7,22,13,.76) 55%,rgba(6,10,7,.3)),url('demo-hse-inspection.webp')}
.credentials-index{padding-block:clamp(65px,8vw,110px)}.credentials-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,460px);gap:50px;align-items:end;margin-block-end:42px}.credentials-heading .eyebrow{margin-block-end:13px;color:var(--px-deep-green);font-size:.67rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.credentials-heading h2{max-width:12ch;margin:0;font-size:clamp(2.5rem,4.3vw,4.7rem);line-height:1;letter-spacing:-.055em}.credentials-heading>p{margin:0;color:#59645c;line-height:1.75}
.credentials-index .credential-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;border:0}
.credentials-index .credential-card{position:relative;display:flex;min-width:0;min-height:560px;flex-direction:column;gap:0;padding:32px!important;border:1px solid #d5ddd7;background:#fff;box-shadow:0 16px 46px rgba(15,31,21,.08);overflow:hidden;transition:transform .38s var(--px-ease),box-shadow .38s,border-color .38s}
.credentials-index .credential-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--px-deep-green)}.credentials-index .credential-card:after{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--px-yellow) 0 28%,transparent 28%)}.credentials-index .credential-card:hover{padding:32px!important;border-color:#a9b6ac;background:#fff;box-shadow:0 28px 60px rgba(15,31,21,.14);transform:translateY(-7px)}
.credential-title{display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;align-items:start}.credential-icon{display:grid;place-items:center;width:54px;height:62px;background:var(--px-charcoal);color:var(--px-yellow);clip-path:polygon(0 0,100% 0,100% 76%,50% 100%,0 76%)}.credential-icon span{font-size:1.35rem;font-weight:900}.credential-title .eyebrow{margin:3px 0 9px;color:var(--px-deep-green);font-size:.63rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.credentials-index .credential-title h2{margin:0;font-size:clamp(1.7rem,2.5vw,2.7rem);line-height:1.04;letter-spacing:-.045em;overflow-wrap:normal;word-break:normal}
.credential-demo{width:max-content;max-width:100%;margin:25px 0 0;padding:8px 11px;border:1px solid #dfbf27;background:#fff8ce;color:#403500;font-size:.59rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.credential-summary{margin:22px 0 27px;color:#59635c;line-height:1.7}
.credentials-index .credential-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-block-start:1px solid #d6ddd7}.credentials-index .credential-facts>div{min-width:0;padding:17px 12px 17px 0;border-block-end:1px solid #d6ddd7}.credentials-index .credential-facts>div:nth-child(even){padding-inline-start:17px;border-inline-start:1px solid #d6ddd7}.credential-facts dt{color:#69756d;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.credential-facts dd{margin:6px 0 0;color:#152019;font-size:.83rem;font-weight:700;overflow-wrap:anywhere}.credential-facts .status{padding:5px 8px;background:#edf8ef;font-size:.61rem}.credential-facts .status.pending-renewal,.credential-facts .status.expiring-soon{background:#fff5ca;color:#725c00}
.credential-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-block-start:auto;padding-block-start:27px;color:#758078;font-size:.63rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.credential-actions a{color:var(--px-deep-green);text-decoration:none}.credential-actions a span{display:inline-block;margin-inline-start:5px;transition:transform .25s}.credential-actions a:hover span{transform:translate(3px,-3px)}
html[dir=rtl] .credentials-index .credential-card:before{inset:auto 0 0 auto}.credentials-index .credential-card:after{pointer-events:none}
@media(max-width:900px){.credentials-heading{grid-template-columns:1fr}.credentials-index .credential-list{grid-template-columns:1fr}.credentials-index .credential-card{min-height:0}}
@media(max-width:560px){.credentials-index .credential-card,.credentials-index .credential-card:hover{padding:24px 20px!important}.credential-title{grid-template-columns:44px minmax(0,1fr);gap:13px}.credential-icon{width:43px;height:50px}.credentials-index .credential-facts{grid-template-columns:1fr}.credentials-index .credential-facts>div:nth-child(even){padding-inline-start:0;border-inline-start:0}.credential-demo{width:auto}.credential-actions{align-items:flex-start;flex-direction:column}}

/* Projects: explicit masthead placement prevents implicit grid tracks and narrow copy. */
.portfolio-intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(22px,3vw,42px)}
.portfolio-intro>div:first-child{grid-column:1/8;min-width:0}
.portfolio-intro>div:last-child{grid-column:8/-1;min-width:0;align-self:end;padding-inline-start:clamp(0px,2vw,28px);border-inline-start:1px solid rgba(255,255,255,.25)}
.portfolio-intro .lead{max-width:42ch;margin:0;font-size:clamp(1.08rem,1.55vw,1.4rem);line-height:1.65}
.portfolio-intro .portfolio-counts{margin-block-start:25px;color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.portfolio-tabs{gap:8px;margin-block:0 38px;padding-block:13px;box-shadow:0 10px 25px rgba(10,18,13,.06)}
.portfolio-tabs a{position:relative;padding:13px 18px;border:0!important;font-weight:750;transition:color .25s,background .25s}
.portfolio-tabs a:after{content:"";position:absolute;inset-inline:18px;inset-block-end:6px;height:2px;background:var(--px-yellow);transform:scaleX(0);transition:transform .3s var(--px-ease)}
.portfolio-tabs a:hover,.portfolio-tabs a[aria-current]{background:#fff;color:var(--px-deep-green)}
.portfolio-tabs a:hover:after,.portfolio-tabs a[aria-current]:after{transform:scaleX(1)}
.project-filter-panel{overflow:hidden;margin-block:38px 55px;border:0;border-radius:4px;background:#fff;box-shadow:0 18px 50px rgba(17,31,21,.1)}
.project-filter-panel summary{position:relative;display:flex;align-items:center;min-height:64px;padding:18px 70px 18px 26px;border:0!important;background:var(--px-charcoal);color:#fff;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;list-style:none}
.project-filter-panel summary::-webkit-details-marker{display:none}
.project-filter-panel summary:after{content:"+";position:absolute;inset-inline-end:24px;display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.35);color:var(--px-yellow);font-size:1.25rem;transition:transform .35s var(--px-ease),background .25s}
.project-filter-panel[open] summary:after{transform:rotate(45deg);background:rgba(255,255,255,.08)}
.project-filter-panel .portfolio-filters{padding:clamp(24px,3vw,38px);border:0;background:linear-gradient(135deg,#fff 0,#f4f7f2 100%)}

/* Premium public form language shared by project, document, search and enquiry forms. */
.portfolio-filters label,.document-filters label,.filter-bar label,.enquiry-form>label:not(.check){display:grid;gap:9px;margin:0;color:#313a34;font-size:.69rem;font-weight:850;letter-spacing:.075em;text-transform:uppercase}
.portfolio-filters input,.portfolio-filters select,.document-filters input,.document-filters select,.filter-bar input,.filter-bar select,.search-line input,.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea{width:100%;min-height:58px;padding:16px 17px;border:1px solid #c8d0ca;border-radius:3px;background-color:#fff;color:var(--px-black);font-size:.95rem;font-weight:500;letter-spacing:0;text-transform:none;outline:0;box-shadow:0 1px 0 rgba(9,11,10,.03);transition:border-color .25s,box-shadow .25s,transform .25s,background-color .25s}
.portfolio-filters input:hover,.portfolio-filters select:hover,.document-filters input:hover,.document-filters select:hover,.filter-bar input:hover,.filter-bar select:hover,.search-line input:hover,.enquiry-form input:not([type=checkbox]):hover,.enquiry-form select:hover,.enquiry-form textarea:hover{border-color:#8fa096;background-color:#fcfefc}
.portfolio-filters input:focus,.portfolio-filters select:focus,.document-filters input:focus,.document-filters select:focus,.filter-bar input:focus,.filter-bar select:focus,.search-line input:focus,.enquiry-form input:not([type=checkbox]):focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--px-deep-green);background:#fff;box-shadow:0 0 0 4px rgba(47,179,68,.13),0 14px 30px rgba(18,67,34,.1);transform:translateY(-2px)}
.portfolio-filters select,.document-filters select,.filter-bar select,.enquiry-form select{appearance:none;padding-inline-end:44px;background-image:linear-gradient(45deg,transparent 50%,#167a32 50%),linear-gradient(135deg,#167a32 50%,transparent 50%);background-position:calc(100% - 20px) 25px,calc(100% - 14px) 25px;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.portfolio-filters input[type=search],.search-line input[type=search]{padding-inline-start:46px;background-image:radial-gradient(circle at 21px 25px,transparent 6px,#718078 6.5px,#718078 8px,transparent 8.5px),linear-gradient(45deg,transparent 48%,#718078 49% 56%,transparent 57%);background-size:auto,10px 10px;background-position:0 0,27px 31px;background-repeat:no-repeat}
.filter-actions{gap:22px;padding-block-start:5px}.filter-actions a{font-size:.76rem;font-weight:800;text-decoration-color:var(--px-yellow);text-underline-offset:5px}.filter-actions .button,.portfolio-filters .button{min-height:54px;padding-inline:28px;box-shadow:0 9px 24px rgba(120,95,0,.16)}
.results-heading{margin-block:50px 28px;padding-block:0 22px}.results-heading>span{padding:7px 10px;border:1px solid #cbd2cc;color:#526059;font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.portfolio-results{grid-template-columns:repeat(12,minmax(0,1fr))}
.portfolio-results>div,.portfolio-results .portfolio-featured{grid-column:span 6;min-width:0}
.portfolio-results .project-story{height:100%;display:flex;flex-direction:column;margin:0;background:#fff;box-shadow:0 14px 38px rgba(20,34,24,.08);transition:transform .4s var(--px-ease),box-shadow .4s var(--px-ease)}
.portfolio-results .project-story:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(20,34,24,.14)}
.portfolio-results .project-visual img{aspect-ratio:16/9}.portfolio-results .project-caption{padding:24px;border:0;background:var(--px-charcoal)}
.portfolio-results .project-caption h3{margin-block:8px 0;font-size:clamp(1.35rem,2.2vw,2.25rem);line-height:1.15}
.portfolio-results .project-story>p{flex:1;margin:0;padding:20px 24px 26px;line-height:1.7}

.contact-layout>div:last-child{position:relative;padding:clamp(28px,4vw,58px);overflow:hidden;border:1px solid #d5dbd6;background:#fff;box-shadow:0 24px 65px rgba(17,31,21,.1)}
.contact-layout>div:last-child:after{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--px-deep-green) 0 78%,var(--px-yellow) 78%)}
.contact-layout>div:last-child>h2{max-width:12ch;margin-block:0 42px;line-height:1.02}
.enquiry-form{gap:27px 20px}
.enquiry-form textarea{min-height:190px;resize:vertical;line-height:1.6}
.enquiry-form .check{padding:18px;border:1px solid #d6dcd7;background:#f5f7f3;transition:border-color .25s,background .25s}
.enquiry-form .check:focus-within{border-color:var(--px-deep-green);background:#fff}
.enquiry-form .check input{appearance:none;display:grid;place-content:center;width:22px;height:22px;min-height:22px;margin:0;border:2px solid #819087;border-radius:2px;background:#fff}
.enquiry-form .check input:before{content:"";width:11px;height:7px;border-inline-start:3px solid #fff;border-block-end:3px solid #fff;transform:rotate(-45deg) scale(0);transition:transform .2s var(--px-ease)}
.enquiry-form .check input:checked{border-color:var(--px-deep-green);background:var(--px-deep-green)}
.enquiry-form .check input:checked:before{transform:rotate(-45deg) scale(1)}
.enquiry-form>.small{margin:0;padding:16px 18px;border-inline-start:3px solid var(--px-yellow);background:#fffbed;color:#51574f;line-height:1.65}
.enquiry-form>button{min-height:58px;padding-inline:34px;box-shadow:0 12px 30px rgba(120,95,0,.18)}
@media(max-width:1000px){.portfolio-intro>div:first-child{grid-column:1/7}.portfolio-intro>div:last-child{grid-column:7/-1}.portfolio-results>div,.portfolio-results .portfolio-featured{grid-column:span 6}}
@media(max-width:700px){.portfolio-intro{display:block}.portfolio-intro>div:last-child{margin-block-start:28px;padding-inline-start:18px}.portfolio-tabs{margin-inline:calc(50% - 50vw);padding-inline:14px}.project-filter-panel{margin-inline:-5px}.project-filter-panel .portfolio-filters{padding:22px 18px}.portfolio-results{display:block}.portfolio-results>div{margin-block-end:30px}.contact-layout>div:last-child{padding:30px 20px}.contact-layout>div:last-child>h2{margin-block-end:32px}.enquiry-form{gap:21px}.portfolio-filters input,.portfolio-filters select,.document-filters input,.document-filters select,.filter-bar input,.filter-bar select,.search-line input,.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea{min-height:56px}}
@media(prefers-reduced-motion:reduce){.portfolio-tabs a,.project-filter-panel summary:after,.portfolio-results .project-story,.portfolio-filters input,.portfolio-filters select,.document-filters input,.document-filters select,.filter-bar input,.filter-bar select,.search-line input,.enquiry-form input,.enquiry-form select,.enquiry-form textarea{transition:none!important;transform:none!important}}

/* Contact page — structured business enquiry experience */
.contact-hero{min-height:530px}.contact-hero .container{display:grid;align-content:end}.contact-hero h1{max-width:9ch}.contact-hero-points{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:25px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2)}.contact-hero-points span{display:flex;align-items:center;gap:8px;color:#dce4de;font-size:.75rem}.contact-hero-points i{color:var(--px-yellow)}
.contact-layout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.35fr);gap:clamp(35px,6vw,90px);align-items:start;padding-block:clamp(65px,8vw,110px)}.contact-information{position:sticky;inset-block-start:95px;padding:0!important;background:none!important;color:var(--px-black)!important}.contact-information>.eyebrow{color:var(--px-deep-green)}.contact-information>h2{max-width:12ch;margin:17px 0 20px;color:var(--px-black)!important;font-size:clamp(2.2rem,4vw,4.2rem)!important}.contact-intro{color:var(--px-muted);line-height:1.75}.contact-steps{margin-top:35px;border-block-start:1px solid var(--px-line)}.contact-steps article{display:grid;grid-template-columns:38px 1fr;gap:15px;padding:20px 0;border-block-end:1px solid var(--px-line)}.contact-steps article>span{color:var(--px-deep-green);font-size:.72rem;font-weight:850}.contact-steps h3{margin:0 0 7px;font-size:1rem;letter-spacing:-.01em}.contact-steps p{margin:0;color:var(--px-muted);font-size:.77rem;line-height:1.6}.office-directory{margin-top:36px;padding:24px;background:var(--px-charcoal);color:#fff}.office-directory>h3{margin:0 0 16px;color:#fff;font-size:1rem;letter-spacing:0}.office-empty{display:flex;gap:13px;align-items:flex-start}.office-empty>i{color:var(--px-yellow);font-size:1.15rem}.office-empty p,.office-empty strong,.office-empty span{display:block;margin:0}.office-empty strong{font-size:.78rem}.office-empty span{margin-top:5px;color:#b9c4bc;font-size:.7rem;line-height:1.55}.office-directory .office{border-color:#38423b}.office-directory .office h3{color:#fff;font-size:1.2rem}.office-type{color:var(--px-yellow);font-size:.63rem;text-transform:uppercase;letter-spacing:.08em}.office-directory address{color:#c5cec7;font-size:.76rem;font-style:normal}.office-links{display:grid;gap:5px;margin-top:13px}.office-links a{display:flex;gap:8px;align-items:center;color:#fff!important;font-size:.72rem;text-decoration:none}.office-links i,.office-hours i{width:15px;color:var(--px-yellow)}.office-hours{display:flex;gap:8px;margin:13px 0 0;color:#c5cec7;font-size:.7rem}
.contact-form-panel{position:relative;overflow:hidden;border:1px solid #d5dbd6;background:#fff;box-shadow:0 24px 65px rgba(17,31,21,.1)}.contact-form-panel:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--px-deep-green) 0 84%,var(--px-yellow) 84%)}.contact-form-panel>header{padding:clamp(30px,4vw,52px) clamp(24px,4vw,54px) 25px;border-block-end:1px solid var(--px-line)}.contact-form-panel>header h2{margin:10px 0;font-size:clamp(2.4rem,4vw,4.4rem)}.contact-form-panel>header>p:last-child{margin:0;color:var(--px-muted);font-size:.75rem}.contact-form-panel>header>p:last-child span:first-child,.enquiry-form label b{color:#a12c25}.enquiry-form{display:block}.enquiry-form fieldset{margin:0;padding:31px clamp(24px,4vw,54px);border:0;border-block-end:1px solid var(--px-line)}.enquiry-form legend{display:grid;grid-template-columns:35px 1fr;column-gap:12px;width:100%;padding:0}.enquiry-form legend>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--px-deep-green);color:#fff;font-size:.68rem;font-weight:850}.enquiry-form legend strong{font-size:.95rem}.enquiry-form legend small{margin-top:2px;color:var(--px-muted);font-size:.68rem}.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 18px;margin-top:25px}.contact-fields>label{min-width:0}.contact-fields .field-wide{grid-column:1/-1}.enquiry-form label{gap:8px!important;color:#27332b!important;font-size:.7rem!important;font-weight:800!important;letter-spacing:.045em!important;text-transform:none!important}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{border:1px solid #c8d0ca!important;border-radius:3px!important;background:#fbfcfa!important;padding:17px!important}.enquiry-form textarea{min-height:185px}.enquiry-form label>small{color:var(--px-muted);font-size:.65rem;font-weight:500}.contact-consent{padding:25px clamp(24px,4vw,54px);background:#f3f6f2}.contact-consent .check{grid-template-columns:24px 1fr;margin:0;padding:0;border:0;background:none}.contact-consent>p{display:flex;gap:9px;margin:16px 0 0;padding:14px 16px;border-inline-start:3px solid var(--px-yellow);background:#fff;color:#566159;font-size:.7rem;line-height:1.6}.contact-consent>p i{margin-top:4px;color:var(--px-deep-green)}.contact-submit{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px clamp(24px,4vw,54px)}.contact-submit>p{display:flex;gap:9px;margin:0;color:var(--px-muted);font-size:.67rem;line-height:1.5}.contact-submit>p i{margin-top:4px;color:var(--px-deep-green)}.contact-submit .button{flex:0 0 auto;display:inline-flex;align-items:center;gap:20px;min-width:190px;justify-content:space-between}.contact-error,.contact-success{display:flex;gap:15px;margin:25px clamp(24px,4vw,54px);border:1px solid #efd1ce}.contact-success{border-color:#c6dfcc}.contact-error>i{color:#a12c25}.contact-success>i{color:var(--px-deep-green);font-size:1.4rem}.contact-error h3,.contact-success h3{margin:0 0 6px;font-size:1rem}.contact-error p,.contact-success p{margin:0}.contact-success .text-link{margin-top:18px}
@media(max-width:1000px){.contact-information{position:static}.contact-layout{grid-template-columns:1fr}.contact-information{display:grid!important;grid-template-columns:1fr 1fr!important;gap:20px!important}.contact-information>.eyebrow,.contact-information>h2,.contact-information>.contact-intro{grid-column:1/-1}.contact-steps,.office-directory{margin-top:15px}}
@media(max-width:700px){.contact-hero{min-height:500px}.contact-hero-points{display:grid}.contact-information{display:block!important}.contact-steps,.office-directory{margin-top:30px}.contact-layout{padding-block:55px}.contact-fields{grid-template-columns:1fr}.contact-fields .field-wide{grid-column:auto}.contact-form-panel>header{padding:31px 21px 22px}.enquiry-form fieldset{padding:27px 21px}.contact-consent,.contact-submit{padding:23px 21px}.contact-submit{align-items:stretch;flex-direction:column}.contact-submit .button{width:100%}}

/* Project card contrast and media polish */
.portfolio-results .project-visual{position:relative;isolation:isolate;background:#111713}
.portfolio-results .project-visual:after{content:"";position:absolute;inset:auto 0 0;height:24%;background:linear-gradient(transparent,rgba(5,8,6,.32));pointer-events:none}
.portfolio-results .project-visual img{display:block;width:100%;height:auto!important;aspect-ratio:auto;object-fit:cover;filter:saturate(.92) contrast(1.03);transition:transform .65s var(--px-ease),filter .4s}
.portfolio-results .project-story:hover .project-visual img{transform:scale(1.025);filter:saturate(1.04) contrast(1.04)}
.portfolio-results .project-caption{position:relative;grid-template-columns:minmax(0,1fr) 44px;align-items:end;gap:20px;min-height:150px;padding:25px 26px 27px;background:linear-gradient(135deg,#111512 0%,#171c18 100%);color:#fff!important}
.portfolio-results .project-caption:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(var(--px-yellow),var(--px-deep-green));transform:scaleY(0);transform-origin:bottom;transition:transform .4s var(--px-ease)}
.portfolio-results .project-story:hover .project-caption:before{transform:scaleY(1)}
.portfolio-results .project-caption>div{min-width:0}
.portfolio-results .project-status{display:block;margin:0;color:var(--px-yellow)!important;font-size:.7rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase}
.portfolio-results .project-caption h3{margin:11px 0 0!important;color:#fff!important;font-size:clamp(1.55rem,2.3vw,2.45rem);line-height:1.08;letter-spacing:-.025em}
.portfolio-results .project-caption h3 a{color:#fff!important;text-decoration:none;text-decoration-color:var(--px-yellow);text-decoration-thickness:2px;text-underline-offset:6px}
.portfolio-results .project-caption h3 a:hover,.portfolio-results .project-caption h3 a:focus-visible{color:#fff!important;text-decoration-line:underline}
.portfolio-results .project-caption>span[aria-hidden]{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.35);color:var(--px-yellow)!important;font-size:1.15rem;transition:background .25s,border-color .25s,transform .35s var(--px-ease)}
.portfolio-results .project-story:hover .project-caption>span[aria-hidden]{border-color:var(--px-yellow);background:var(--px-yellow);color:var(--px-black)!important;transform:translate(3px,-3px)}
.portfolio-results .project-story>p{border-block-start:1px solid #e3e7e3;background:#fff;color:#55615a!important;font-size:.95rem}
@media(max-width:700px){.portfolio-results .project-caption{min-height:0;padding:23px 20px;grid-template-columns:minmax(0,1fr) 40px}.portfolio-results .project-caption>span[aria-hidden]{width:38px;height:38px}.portfolio-results .project-caption h3{font-size:1.55rem}}

/* Projects directory — composed status navigation and reliable filter layout */
.portfolio-intro>.breadcrumbs{position:absolute;z-index:2;inset-block-start:30px;inset-inline-start:max(var(--gutter),calc((100vw - 1360px)/2));min-height:34px;color:rgba(255,255,255,.72)}
.portfolio-intro>.portfolio-title{grid-column:1/8;min-width:0}.portfolio-intro>.portfolio-summary{grid-column:8/-1;min-width:0;align-self:end;padding-inline-start:clamp(0px,2vw,28px);border-inline-start:1px solid rgba(255,255,255,.25)}
.portfolio-intro>.breadcrumbs ol{margin:0;list-style:none!important;padding:0}
.portfolio-intro>.breadcrumbs a{color:#fff}.portfolio-intro>.breadcrumbs li+li:before{color:var(--px-yellow)}
.portfolio-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-block:16px}
.portfolio-tabs a{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;min-height:64px;padding:10px 14px!important;border:1px solid #dce1dc!important;border-radius:3px;background:rgba(255,255,255,.7);color:#28322b;text-decoration:none;box-shadow:0 5px 18px rgba(15,30,19,.035)}
.portfolio-tabs a i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#eaf3eb;color:var(--px-deep-green);transition:background .25s,color .25s,transform .35s var(--px-ease)}
.portfolio-tabs a span{font-weight:800}.portfolio-tabs a b{display:grid;place-items:center;min-width:29px;height:29px;padding-inline:7px;border-radius:999px;background:#eef1ed;color:#5c675f;font-size:.7rem}
.portfolio-tabs a:after{inset-inline:64px 14px;inset-block-end:0}
.portfolio-tabs a:hover,.portfolio-tabs a[aria-current]{border-color:#cfd7d0!important;background:#fff;box-shadow:0 12px 30px rgba(14,34,20,.08)}
.portfolio-tabs a:hover i,.portfolio-tabs a[aria-current] i{background:var(--px-deep-green);color:#fff;transform:rotate(-5deg) scale(1.04)}
.portfolio-tabs a[aria-current] b{background:var(--px-yellow);color:var(--px-black)}
.project-filter-panel{border-radius:6px}.project-filter-panel summary{min-height:78px;padding:15px 78px 15px 22px}
.project-filter-panel summary>span{display:grid;grid-template-columns:42px 1fr;column-gap:14px;align-items:center}
.project-filter-panel summary>span>i{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.2);color:var(--px-yellow);font-size:1rem}
.project-filter-panel summary strong{font-size:.82rem;letter-spacing:.08em}.project-filter-panel summary small{margin-block-start:3px;color:#aeb8b1;font-size:.68rem;font-weight:500;letter-spacing:0;text-transform:none}
.project-filter-panel summary>b{font-size:.67rem;color:#dfe6e1}
.project-filter-panel .portfolio-filters{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;padding:32px}
.project-filter-panel .portfolio-filters>div{grid-column:span 3;min-width:0}.project-filter-panel .portfolio-filters>.search-field{grid-column:span 6}
.project-filter-panel .portfolio-filters>.filter-actions{grid-column:1/-1;display:flex;align-items:center;gap:22px;padding-block-start:4px}
.project-filter-panel .filter-actions .button{display:inline-flex;align-items:center;gap:10px}.project-filter-panel .filter-actions a{display:inline-flex;align-items:center;gap:8px;color:var(--px-deep-green)}
.results-heading{align-items:center}.results-heading h2{margin:0}.results-heading>span{background:#fff}
@media(max-width:900px){.portfolio-intro>.portfolio-title{grid-column:1/7}.portfolio-intro>.portfolio-summary{grid-column:7/-1}.project-filter-panel .portfolio-filters>div,.project-filter-panel .portfolio-filters>.search-field{grid-column:span 6}}
@media(max-width:700px){.portfolio-intro>.breadcrumbs{inset-block-start:20px}.portfolio-intro>.portfolio-title,.portfolio-intro>.portfolio-summary{display:block;margin-block-start:0;min-width:0}.portfolio-intro>.portfolio-summary{margin-block-start:28px;padding-inline-start:18px}.portfolio-tabs{grid-template-columns:repeat(3,minmax(150px,1fr));overflow:auto}.portfolio-tabs a{grid-template-columns:34px 1fr auto;min-height:58px}.portfolio-tabs a i{width:34px;height:34px}.project-filter-panel summary small,.project-filter-panel summary>b{display:none}.project-filter-panel .portfolio-filters>div,.project-filter-panel .portfolio-filters>.search-field{grid-column:1/-1}.project-filter-panel .portfolio-filters>.filter-actions{align-items:flex-start;flex-direction:column}.results-heading{align-items:flex-start;flex-direction:column}}

/* Compact navigation with accessible disclosure submenus */
.primary-nav>.nav-group{position:relative;color:#fff}
.primary-nav>.nav-group>summary{position:relative;display:flex;align-items:center;gap:6px;min-height:42px;padding:8px 10px;color:#fff;font-size:.73rem;font-weight:700;cursor:pointer;list-style:none;user-select:none}
.primary-nav>.nav-group>summary::-webkit-details-marker{display:none}
.primary-nav>.nav-group>summary:after{content:"";position:absolute;inset-inline:10px;inset-block-end:3px;height:2px;background:var(--px-yellow);transform:scaleX(0);transition:transform .3s var(--px-ease)}
.primary-nav>.nav-group>summary>span{color:var(--px-yellow);font-size:.95rem;transition:transform .25s var(--px-ease)}
.primary-nav>.nav-group[open]>summary>span{transform:rotate(180deg)}
.primary-nav>.nav-group:hover>summary:after,.primary-nav>.nav-group[open]>summary:after,.primary-nav>.nav-group[data-current=true]>summary:after{transform:scaleX(1)}
.nav-submenu{position:absolute;z-index:95;inset-block-start:calc(100% + 11px);inset-inline-start:50%;width:260px;padding:10px;background:#fff;color:var(--px-black);border-block-start:3px solid var(--px-yellow);box-shadow:0 22px 55px rgba(0,0,0,.24);transform:translateX(-50%);animation:nav-submenu-in .25s var(--px-ease)}
.nav-submenu:before{content:"";position:absolute;inset-block-start:-10px;inset-inline-start:calc(50% - 8px);border:8px solid transparent;border-block-end-color:var(--px-yellow);border-block-start:0}
.primary-nav .nav-submenu a{display:flex;min-height:44px;padding:11px 13px;color:#202923!important;font-size:.78rem;border-block-end:1px solid #e5e9e5;transition:padding .25s,background .25s,color .25s}
.primary-nav .nav-submenu a:last-child{border-block-end:0}
.primary-nav .nav-submenu a:after{display:none}
.primary-nav .nav-submenu a:hover,.primary-nav .nav-submenu a:focus-visible,.primary-nav .nav-submenu a[aria-current=page]{padding-inline-start:19px;background:#f1f6f1;color:var(--px-deep-green)!important}
.primary-nav .nav-submenu a[aria-current=page]{font-weight:850}
@keyframes nav-submenu-in{from{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%,0)}}
@media(min-width:1001px){.primary-nav>.nav-group:hover>.nav-submenu{display:block}.primary-nav>.nav-group:not([open]):hover>.nav-submenu{display:block}.primary-nav>.nav-group:after{content:"";position:absolute;inset:100% -18px -14px}}
@media(max-width:1000px){.js .menu-open .primary-nav{gap:0}.primary-nav>.nav-group{width:100%;border-block-end:1px solid #333b35}.primary-nav>.nav-group>summary{justify-content:space-between;min-height:64px;padding:12px 0;color:#fff;font-size:clamp(1.7rem,7vw,3.5rem);letter-spacing:-.035em}.primary-nav>.nav-group>summary:after{inset-inline:0}.nav-submenu{position:static;width:100%;padding:3px 0 14px;border:0;background:transparent;box-shadow:none;transform:none;animation:none}.nav-submenu:before{display:none}.primary-nav .nav-submenu a{min-height:48px;padding:10px 18px!important;border-color:#303832;color:#cfd7d1!important;font-size:1rem!important}.primary-nav .nav-submenu a:hover,.primary-nav .nav-submenu a:focus-visible,.primary-nav .nav-submenu a[aria-current=page]{background:#171c18;color:var(--px-yellow)!important}.js .menu-open .primary-nav>.nav-contact{margin-block-start:24px}}

/* Premium header call-to-action */
.primary-nav>.nav-contact{position:relative;isolation:isolate;display:grid;grid-template-columns:auto 29px;gap:11px;align-items:center;min-height:48px!important;padding:5px 6px 5px 19px!important;overflow:hidden;border:1px solid #ffe760;border-block-end:3px solid #b99600;border-radius:3px;background:linear-gradient(135deg,#ffe343 0%,var(--px-yellow) 62%,#efbf00 100%);box-shadow:0 9px 24px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.5);font-size:.74rem;font-weight:850;letter-spacing:.015em;transition:transform .3s var(--px-ease),box-shadow .3s,filter .3s}
.primary-nav>.nav-contact:before{content:"";position:absolute;z-index:-1;inset:-40% auto -40% -55%;width:38%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);transform:skewX(-18deg);transition:left .6s var(--px-ease)}
.primary-nav>.nav-contact:after{display:none!important}
.primary-nav>.nav-contact>span{display:grid;place-items:center;width:29px;height:29px;border-radius:2px;background:var(--px-black);color:var(--px-yellow);font-size:.9rem;transition:transform .35s var(--px-ease),background .3s,color .3s}
.primary-nav>.nav-contact:hover,.primary-nav>.nav-contact:focus-visible{background:linear-gradient(135deg,#ffe95e,var(--px-yellow));box-shadow:0 14px 32px rgba(0,0,0,.34),0 0 0 1px rgba(255,212,0,.18);filter:saturate(1.06);transform:translateY(-2px)}
.primary-nav>.nav-contact:hover:before,.primary-nav>.nav-contact:focus-visible:before{left:125%}
.primary-nav>.nav-contact:hover>span,.primary-nav>.nav-contact:focus-visible>span{background:var(--px-deep-green);color:#fff;transform:translate(2px,-2px) rotate(-8deg)}
.primary-nav>.nav-contact:active{transform:translateY(0);box-shadow:0 5px 14px rgba(0,0,0,.25)}
@media(max-width:1000px){.primary-nav>.nav-contact{display:flex;justify-content:center;gap:14px;min-height:60px!important;padding:7px 9px 7px 22px!important;color:var(--px-black)!important;font-size:1rem!important}.primary-nav>.nav-contact>span{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.primary-nav>.nav-contact,.primary-nav>.nav-contact:before,.primary-nav>.nav-contact>span{transition:none!important;transform:none!important}}

/* HSE and quality editorial presentation */
.page-credibility-page main{counter-reset:trust-sections}
.trust-demo-badge{display:inline-flex;align-items:center;gap:9px;margin-block-start:24px;padding:8px 12px;border:1px solid rgba(255,255,255,.32);background:rgba(8,12,9,.48);color:#fff;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px)}
.trust-demo-badge:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--px-yellow);box-shadow:0 0 0 4px rgba(255,212,0,.16)}
.page-credibility-page .trust-section{position:relative;counter-increment:trust-sections;overflow:hidden}
.page-credibility-page .trust-section:after{content:counter(trust-sections,decimal-leading-zero);position:absolute;z-index:-1;inset-inline-end:12px;inset-block-start:50px;color:rgba(18,65,31,.045);font:800 clamp(6rem,13vw,13rem)/1 var(--sans);letter-spacing:-.08em;pointer-events:none}
.page-credibility-page .trust-section>.eyebrow{margin-block-end:18px;font-size:.7rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.page-credibility-page .trust-section>h2{max-width:18ch;margin-block-end:28px;letter-spacing:-.045em}
.page-credibility-page .trust-section>.prose{max-width:760px;color:#4f5b53;font-size:1.05rem;line-height:1.85}
.page-credibility-page .trust-entry-grid{margin-block-start:45px;border-block-start:1px solid #aeb8b0}
.page-credibility-page .trust-entry-grid article{padding-block:38px;background:transparent}
.page-credibility-page .trust-entry-grid article:hover{padding-inline:28px;background:linear-gradient(90deg,#fff,rgba(255,255,255,.25))}
.page-credibility-page .trust-entry-grid article>h3{margin:0;font-size:clamp(1.4rem,2.1vw,2.25rem)}
.page-credibility-page .trust-entry-grid article>p{color:var(--px-deep-green);font-size:.69rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.page-credibility-page .trust-entry-grid article>.prose{color:#4d5851;line-height:1.75}
.page-credibility-page .trust-entry-grid article>.prose p{margin:0}
@media(max-width:700px){.trust-demo-badge{font-size:.58rem}.page-credibility-page .trust-section:after{inset-block-start:35px;font-size:6rem}.page-credibility-page .trust-section>.prose{font-size:1rem}.page-credibility-page .trust-entry-grid article{padding:28px 5px}.page-credibility-page .trust-entry-grid article:hover{padding-inline:12px}}

/* News, listings and approval placeholders */
.phase6-section>.filter-bar{margin-block-end:48px;padding:28px;border:0;background:linear-gradient(135deg,#fff,#f1f5f1);box-shadow:0 16px 42px rgba(20,34,24,.08)}
.phase6-section>.filter-bar>button{min-height:58px;padding:14px 25px;border:1px solid var(--px-yellow);border-radius:2px;background:var(--px-yellow);color:var(--px-black);font-weight:850;cursor:pointer;box-shadow:0 9px 24px rgba(120,95,0,.15);transition:transform .25s var(--px-ease),background .25s,box-shadow .25s}
.phase6-section>.filter-bar>button:hover,.phase6-section>.filter-bar>button:focus-visible{background:var(--px-deep-yellow);box-shadow:0 14px 30px rgba(120,95,0,.22);transform:translateY(-2px)}
.news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
.news-grid article,.news-grid article:first-child{grid-column:auto;grid-row:auto;min-width:0;padding-block-end:30px;overflow:hidden;box-shadow:0 12px 34px rgba(20,34,24,.07);transition:transform .35s var(--px-ease),box-shadow .35s}
.news-grid article:hover{transform:translateY(-5px);box-shadow:0 22px 48px rgba(20,34,24,.12)}
.news-grid article>.cms-image,.news-grid article>.neutral-image{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.news-grid article>.neutral-image{display:grid;place-items:end start;min-height:260px;padding:24px;background:linear-gradient(135deg,rgba(8,25,15,.78),rgba(8,11,9,.96)),url('demo-building-construction.webp') center/cover;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.news-grid article>h2{font-size:clamp(1.65rem,2.7vw,3rem);line-height:1.06;overflow-wrap:normal;word-break:normal}
.news-grid article>h2 a{text-decoration-color:#99a19b;text-decoration-thickness:1px;text-underline-offset:6px}
.news-grid article>h2 a:hover{color:var(--px-deep-green);text-decoration-color:var(--px-yellow)}
.empty-state,.empty-line{position:relative;padding:34px 36px;border:1px dashed #9aa79e;background:linear-gradient(135deg,#fff,#f3f6f2);color:#526059}
.empty-state:before,.empty-line:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(var(--px-yellow),var(--px-deep-green))}
@media(max-width:700px){.phase6-section>.filter-bar{padding:20px}.news-grid{display:block}.news-grid article{margin-block-end:30px}.news-grid article>h2{font-size:1.8rem}.news-grid article>.neutral-image{min-height:210px}}

/* Newsroom editorial index */
.page-news{background:#f3f5f1}
.page-news .news-hero:before{background-image:linear-gradient(90deg,rgba(5,10,7,.97),rgba(5,14,9,.82) 48%,rgba(5,10,7,.28)),url('demo-building-construction.webp');background-position:center 42%}
.news-hero-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:40px;width:100%}.news-hero-inner>div:first-child{max-width:820px}
.news-hero-mark{display:grid;gap:4px;min-width:220px;padding:22px 0 4px;border-block-start:1px solid rgba(255,255,255,.4);color:#fff;text-align:end}.news-hero-mark span{color:var(--px-yellow);font-size:.67rem;font-weight:850;letter-spacing:.2em;text-transform:uppercase}.news-hero-mark strong{font-size:1.35rem}
.news-index{padding-block:clamp(65px,8vw,110px)}.news-index-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);align-items:end;gap:45px;margin-block-end:36px}.news-index-heading .eyebrow{margin:0 0 12px;color:var(--px-deep-green);font-size:.67rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.news-index-heading h2{margin:0;font-size:clamp(2.4rem,4.5vw,4.8rem);letter-spacing:-.055em}.news-index-heading>p{margin:0;color:#59645c;line-height:1.75}
.news-index>.news-filter{grid-template-columns:1.3fr 1fr .75fr auto;align-items:end;margin-block-end:52px;padding:26px 28px 28px;border:0;border-block-start:4px solid var(--px-deep-green);background:#fff;box-shadow:0 18px 50px rgba(19,35,24,.09)}.news-filter label{gap:9px}.news-filter label>span{color:#344139;font-size:.65rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.news-filter input,.news-filter select{min-height:58px;border:1px solid #c7d0c9;border-radius:0;background:#f9faf8;padding-inline:17px;transition:border-color .25s,background .25s,box-shadow .25s,transform .25s}.news-filter input:hover,.news-filter select:hover{border-color:#849489;background:#fff}.news-filter input:focus,.news-filter select:focus{border-color:var(--px-deep-green);background:#fff;box-shadow:0 0 0 4px rgba(35,119,55,.11);transform:translateY(-1px)}
.news-index>.news-filter>button{display:flex;justify-content:space-between;align-items:center;gap:26px;min-width:190px;min-height:58px;padding-inline:20px;border:0;border-radius:0;background:var(--px-yellow);color:#111;font-weight:850;box-shadow:none}.news-index>.news-filter>button span:last-child{display:grid;place-items:center;width:30px;height:30px;background:#111;color:#fff;transition:transform .3s var(--px-ease)}.news-index>.news-filter>button:hover span:last-child{transform:translateX(4px)}
.news-index .news-grid{gap:32px}.news-card{position:relative;padding:0!important;border:1px solid #d7ddd8;background:#fff;box-shadow:0 16px 42px rgba(17,31,22,.08)!important}.news-card:after{content:"";position:absolute;inset:auto 0 0;height:4px;background:linear-gradient(90deg,var(--px-deep-green) 0 72%,var(--px-yellow) 72%);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--px-ease)}.news-card:hover:after{transform:scaleX(1)}
.news-card-visual{position:relative;display:block;overflow:hidden;background:#101712}.news-card-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,9,6,.76));pointer-events:none}.news-card-visual>.cms-image,.news-card-visual>.neutral-image{display:block;width:100%;aspect-ratio:16/9;min-height:0;object-fit:cover;transition:transform .75s var(--px-ease),filter .5s}.news-card:hover .news-card-visual>.cms-image,.news-card:hover .news-card-visual>.neutral-image{transform:scale(1.045);filter:saturate(1.08)}.news-card-brand{position:absolute;z-index:2;inset-inline-start:24px;inset-block-end:20px;color:#fff;font-size:.63rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.news-card-body{display:flex;min-height:290px;flex-direction:column;padding:26px 28px 30px}.news-card-meta{display:flex;justify-content:space-between;gap:20px;margin:0 0 20px;color:#496254!important;font-size:.64rem!important;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.news-card-meta span{color:var(--px-deep-green)}.news-card-body h2{margin:0 0 17px;font-size:clamp(1.75rem,2.8vw,3rem);line-height:1.03;letter-spacing:-.045em}.news-card-body h2 a{color:#101310;text-decoration:none}.news-card-body h2 a:hover{color:var(--px-deep-green)}.news-card-body>p:not(.news-card-meta){margin:0;color:#59635c;line-height:1.7}.news-card-link{display:inline-flex;align-items:center;gap:9px;width:max-content;margin-block-start:auto;padding-block-start:25px;color:var(--px-deep-green);font-size:.72rem;font-weight:850;text-decoration:none;text-transform:uppercase;letter-spacing:.08em}.news-card-link span{transition:transform .3s var(--px-ease)}.news-card-link:hover span{transform:translate(4px,-4px)}
html[dir=rtl] .news-card:after{transform-origin:right}
@media(max-width:900px){.news-index>.news-filter{grid-template-columns:1fr 1fr}.news-index>.news-filter>button{width:100%}}
@media(max-width:700px){.news-hero-inner,.news-index-heading{grid-template-columns:1fr}.news-hero-mark{display:none}.news-index>.news-filter{display:grid;grid-template-columns:1fr;padding:20px}.news-card-body{min-height:0;padding:23px 20px 27px}.news-card-link{margin-block-start:22px}.news-card-meta{align-items:flex-start;flex-direction:column;gap:7px}}

.phase6-section>.vacancy-row{position:relative;grid-template-columns:minmax(260px,.9fr) minmax(0,1fr) 46px;align-items:center;margin-block:0;padding:32px 26px;border-block-end:1px solid #ccd3cd;background:#fff;transition:padding .3s var(--px-ease),background .3s,box-shadow .3s}
.phase6-section>.vacancy-row:after{content:"↗";display:grid;place-items:center;width:42px;height:42px;border:1px solid #aeb8b0;color:var(--px-deep-green);transition:background .25s,color .25s,transform .3s var(--px-ease)}
.phase6-section>.vacancy-row:hover{z-index:1;padding-inline:34px;background:#f8fbf7;box-shadow:0 16px 35px rgba(20,34,24,.09)}
.phase6-section>.vacancy-row:hover:after{background:var(--px-yellow);border-color:var(--px-yellow);color:var(--px-black);transform:translate(3px,-3px)}
.phase6-section>.vacancy-row h3{margin:0;font-size:clamp(1.5rem,2.4vw,2.6rem)}
.phase6-section>.vacancy-row h3 a{text-decoration:none}.phase6-section>.vacancy-row h3 a:hover{text-decoration:underline;text-decoration-color:var(--px-yellow);text-underline-offset:7px}
.phase6-section>.vacancy-row p{margin:0;color:var(--px-muted)}
.phase6-section>.vacancy-row~h2{margin-block:75px 22px;padding-block-start:55px;border-block-start:1px solid #bfc7c0}
@media(max-width:700px){.phase6-section>.vacancy-row{grid-template-columns:minmax(0,1fr) 42px;gap:14px;padding:25px 18px}.phase6-section>.vacancy-row p{grid-column:1}.phase6-section>.vacancy-row:after{grid-column:2;grid-row:1/3}.phase6-section>.vacancy-row:hover{padding-inline:20px}}
.office-directory{padding:0;overflow:hidden;border:1px solid #303a33;background:var(--px-charcoal);box-shadow:0 18px 45px rgba(11,25,15,.16)}.office-directory>h3{display:flex;align-items:center;min-height:58px;margin:0;padding:0 24px;border-block-end:1px solid #303a33;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.office-directory .office{padding:24px 24px 0;border:0}.office-directory .office h3{font-size:1.35rem}.office-directory address{max-width:34ch;line-height:1.65}.office-links{grid-template-columns:1fr 1fr;gap:0;margin:20px -24px 0;border-block-start:1px solid #303a33}.office-links a{min-height:47px;padding:10px 15px;border-block-end:1px solid #303a33}.office-links a:nth-child(even){border-inline-start:1px solid #303a33}.office-links a:last-child:nth-child(odd){grid-column:1/-1}.office-map{margin:0 -24px;overflow:hidden;border:0;background:#dce3dd}.office-map iframe{display:block;width:100%;height:235px;border:0;filter:saturate(.82) contrast(1.04)}
@media(min-width:1001px){.contact-information{position:static}.contact-form-panel{margin-top:0}.contact-layout{align-items:start}.enquiry-form fieldset{padding-block:26px}.contact-fields{gap:18px}.enquiry-form input,.enquiry-form select{min-height:54px}.enquiry-form textarea{min-height:160px}}
@media(max-width:430px){.office-links{grid-template-columns:1fr}.office-links a:nth-child(even){border-inline-start:0}.office-links a:last-child:nth-child(odd){grid-column:auto}.office-map iframe{height:220px}}
.contact-essential-fields{padding-block:26px!important}.contact-essential-fields .contact-fields{margin-top:20px}.contact-essential-fields textarea{min-height:130px}.contact-essential-fields legend>span{border-radius:3px}.contact-consent{padding-block:18px}.contact-submit{padding-block:20px}.contact-form-panel>header{padding-block-end:20px}.contact-form-panel>header h2{font-size:clamp(2.25rem,3.6vw,3.7rem)}

/* Contact experience v2 */
.page-contact{background:var(--px-off-white)}.contact-hero-v2{position:relative;isolation:isolate;min-height:470px;overflow:hidden;background:#0d100f;color:#fff}.contact-hero-v2:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#080a09 0 52%,rgba(8,10,9,.55)),url('demo-building-construction.webp') center right/58% 100% no-repeat}.contact-hero-v2:after{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px}.contact-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:470px}.contact-hero-copy{max-width:700px;padding-block:80px}.contact-hero-copy h1{max-width:12ch;margin:14px 0 20px;color:#fff;font-size:clamp(3.2rem,5.5vw,5rem);line-height:.98;letter-spacing:-.055em}.contact-hero-copy>p:last-of-type{max-width:650px;color:#d4dcd6;font-size:1.05rem;line-height:1.7}.contact-hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.contact-call{display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:800;text-decoration:none}.contact-call i{color:var(--px-yellow)}.contact-hero-visual{position:relative;height:100%}.contact-hero-visual span{position:absolute;right:0;bottom:24px;color:rgba(255,255,255,.08);font-size:clamp(6rem,13vw,12rem);font-weight:900}.contact-options{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);margin-top:-34px;background:#fff;box-shadow:0 16px 44px rgba(11,25,15,.13)}.contact-options>a{display:grid;grid-template-columns:48px 1fr auto;gap:16px;align-items:center;min-height:106px;padding:22px 28px;border-inline-end:1px solid var(--px-line);color:#101511;text-decoration:none;transition:transform .2s,background .2s}.contact-options>a:hover{z-index:2;background:#fbfdf9;transform:translateY(-4px)}.contact-options>a>i{display:grid;place-items:center;width:46px;height:46px;background:#eaf3ec;color:var(--px-deep-green)}.contact-options strong,.contact-options small{display:block}.contact-options small{margin-top:5px;color:var(--px-muted)}.contact-options b{color:var(--px-deep-green)}
.contact-workspace{display:grid;grid-template-columns:minmax(290px,.72fr) minmax(0,1.35fr);gap:clamp(40px,6vw,88px);align-items:start;padding-block:clamp(70px,8vw,105px)}.contact-guide{position:sticky;top:105px}.contact-guide h2{margin:14px 0 18px;font-size:clamp(2rem,3.2vw,3.3rem);line-height:1.03}.contact-guide>p:not(.eyebrow){color:var(--px-muted);line-height:1.7}.contact-guide ol{position:relative;margin:30px 0;padding:0;list-style:none}.contact-guide ol:before{content:"";position:absolute;left:17px;top:22px;bottom:22px;width:1px;background:#cdd5ce}.contact-guide li{position:relative;display:grid;grid-template-columns:36px 1fr;gap:15px;padding:13px 0}.contact-guide li>span{z-index:1;display:grid;place-items:center;width:35px;height:35px;border:1px solid #9cad9f;border-radius:50%;background:var(--px-off-white);color:var(--px-deep-green);font-size:.65rem;font-weight:850}.contact-guide strong,.contact-guide small{display:block}.contact-guide small{margin-top:4px;color:var(--px-muted);line-height:1.5}.contact-guide-facts{display:grid;gap:10px;padding-top:20px;border-top:1px solid var(--px-line)}.contact-guide-facts>*{display:flex;gap:10px;align-items:center;color:#314037;font-size:.8rem;text-decoration:none}.contact-guide-facts i{width:18px;color:var(--px-deep-green)}
.contact-form-v2{border-radius:20px}.contact-form-v2>header{padding:34px 40px 26px}.contact-form-v2>header h2{margin:8px 0;font-size:clamp(2.25rem,4vw,3.8rem)}.enquiry-steps{display:block}.form-progress{display:grid;grid-template-columns:repeat(3,1fr);padding:0 40px;border-block-end:1px solid var(--px-line)}.form-progress span{position:relative;display:flex;align-items:center;gap:9px;min-height:70px;color:#7a847d;font-size:.72rem;font-weight:800}.form-progress span:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--px-green);transform:scaleX(0);transform-origin:left;transition:transform .25s}.form-progress span.is-active:after,.form-progress span.is-complete:after{transform:scaleX(1)}.form-progress span.is-active{color:#132018}.form-progress span b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#eef2ee}.form-progress span.is-active b,.form-progress span.is-complete b{background:var(--px-deep-green);color:#fff}.form-progress-mobile{display:none}.form-step{margin:0;padding:30px 40px;border:0;animation:contact-step-in .25s ease}.form-step legend{position:absolute;width:1px;height:1px;overflow:hidden}.form-step[hidden]{display:none}.form-step .contact-fields{margin:0}.form-step input,.form-step select,.form-step textarea{min-height:54px!important;border-radius:10px!important;background:#fff!important}.form-step textarea{min-height:145px!important}.form-step .check{padding:16px;border:1px solid var(--px-line);border-radius:10px;background:#f6f8f5}.career-guidance{margin:0;padding:15px;border-inline-start:3px solid var(--px-yellow);background:#fff9df;color:#3d463f}.form-controls{display:flex;justify-content:flex-end;gap:14px;padding:22px 40px 30px;border-block-start:1px solid var(--px-line)}.form-controls button{min-height:50px;border-radius:8px}.form-back{padding:10px 20px;border:1px solid #bcc6be;background:#fff;font-weight:800;cursor:pointer}.form-submit:disabled{opacity:.65;cursor:wait}.contact-success-v2{padding:60px 45px;text-align:center}.contact-success-v2>i{color:var(--px-deep-green);font-size:3rem}.contact-success-v2>strong{display:block;margin:10px auto 20px;padding:15px;border:1px dashed #90a497;background:#f5f8f4;font-size:1.3rem}.contact-success-v2>div{display:flex;justify-content:center;gap:22px;align-items:center}
.contact-office-section{padding-block:80px;background:#fff}.contact-office-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:stretch;overflow:hidden;border:1px solid var(--px-line)}.contact-office-grid>div:first-child{padding:clamp(35px,5vw,70px);background:#111512;color:#fff}.contact-office-grid h2{margin:12px 0;color:#fff;font-size:clamp(2.3rem,4vw,4rem)}.contact-office-grid>div:first-child>p:not(.eyebrow){color:#c9d1cb}.office-city{font-size:1.15rem;font-weight:800}.office-actions{display:grid;gap:10px;margin-top:30px}.office-actions a{display:flex;gap:10px;align-items:center;min-height:45px;color:#fff;text-decoration:none}.office-actions i{width:20px;color:var(--px-yellow)}.office-map-v2 iframe{display:block;width:100%;height:100%;min-height:440px;border:0}.contact-closing{position:relative;padding-block:70px;overflow:hidden;background:#0d100f;color:#fff}.contact-closing:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:55px 55px;pointer-events:none}.contact-closing>.container{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:end;gap:45px}.contact-closing h2{margin:10px 0;color:#fff;font-size:clamp(2.5rem,4.5vw,4.6rem)}.contact-closing p{max-width:720px;color:#c9d1cb}.contact-closing>div>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:20px;flex:0 0 auto}.contact-closing .text-link{color:#fff}@keyframes contact-step-in{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
@media(max-width:900px){.contact-hero-grid{grid-template-columns:1fr}.contact-hero-visual{display:none}.contact-options{margin-top:0}.contact-workspace{grid-template-columns:1fr}.contact-guide{position:static}.contact-guide ol{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.contact-guide ol:before{display:none}.contact-office-grid{grid-template-columns:1fr}.office-map-v2 iframe{min-height:340px}}
@media(max-width:700px){.contact-hero-v2,.contact-hero-grid{min-height:500px}.contact-hero-v2:before{background:linear-gradient(rgba(8,10,9,.75),rgba(8,10,9,.96)),url('demo-building-construction.webp') center/cover}.contact-hero-copy{padding-block:100px 65px}.contact-hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.contact-options{grid-template-columns:1fr;margin-inline:16px}.contact-options>a{min-height:88px;padding:16px 18px;border-inline-end:0;border-block-end:1px solid var(--px-line)}.contact-guide ol{display:block}.contact-guide ol:before{display:block}.contact-form-v2>header{padding:28px 20px 20px}.form-progress{display:none}.form-progress-mobile{display:block;margin:0;padding:14px 20px;border-block:1px solid var(--px-line);color:var(--px-deep-green);font-weight:800}.form-step{padding:24px 20px}.form-step .contact-fields{grid-template-columns:1fr}.form-controls{padding:18px 20px 24px}.form-controls .button{flex:1}.contact-office-section{padding-block:55px}.office-map-v2 iframe{min-height:280px}.contact-closing>.container{align-items:flex-start;flex-direction:column}.contact-success-v2{padding:40px 20px}.contact-success-v2>div{align-items:stretch;flex-direction:column}.contact-success-v2 .button{width:100%}}
@media(prefers-reduced-motion:reduce){.form-step,.contact-options>a{animation:none;transition:none}}

/* Keep the consent control a real checkbox. The stepped-form text-input rules
   above intentionally enlarge normal inputs, but must never affect checkboxes. */
.enquiry-steps .form-step .check{
  position:relative;
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:start;
  gap:12px!important;
  cursor:pointer;
}
.enquiry-steps .form-step .check input[type="checkbox"]{
  appearance:none;
  display:grid;
  place-content:center;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  padding:0!important;
  margin:0!important;
  border:2px solid #819087!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:none!important;
  cursor:pointer;
}
.enquiry-steps .form-step .check input[type="checkbox"]:checked{
  border-color:var(--px-deep-green)!important;
  background:var(--px-deep-green)!important;
}
.enquiry-steps .form-step .check input[type="checkbox"]:focus-visible{
  outline:3px solid rgba(22,122,50,.22);
  outline-offset:3px;
}
.enquiry-steps .form-step .check>span{
  min-width:0;
  line-height:1.55;
  cursor:pointer;
}
