/* ACE Controls v1.9.6 | Bright Architectural Premium | progressive visual redesign */
:root{--navy:#102c40;--navy2:#24485e;--teal:#087e99;--teal-bright:#0b829e;--ink:#173649;--muted:#5a7180;--line:#dce9ed;--paper:#f5f9fb;--white:#fff;--shadow:0 19px 48px rgba(35,78,102,.09)}
html{scroll-padding-top:96px}body{background:#fff;color:#173649;-webkit-font-smoothing:antialiased}::selection{background:#c6ebf6;color:#0b3448}
.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid #e5edf1;box-shadow:0 5px 25px rgba(22,63,83,.035);backdrop-filter:blur(18px)}.nav-inner{min-height:85px}.wordmark-main{color:#18384b}.wordmark-main span{color:#0b87a7}.wordmark-sub{color:#708a96}.main-nav{gap:clamp(15px,2vw,32px)}.main-nav>a{color:#294659}.main-nav>a:hover{color:#087e99}.main-nav .nav-contact{background:#0c7694;color:#fff;border:1px solid #0c7694;border-radius:100px;padding:12px 21px;box-shadow:0 8px 20px #0c769420}.main-nav .nav-contact:hover{background:#095d78;color:#fff}
/* Shared light architectural heroes */
.home-hero,.case-hero,.about-hero,.partner-hero,.ac-contact-hero,.ace-knx-hero,.ace-fire-hero,.arm-hero{background:radial-gradient(ellipse at 90% 0%,rgba(182,232,243,.58),transparent 47%),radial-gradient(ellipse at 0% 100%,rgba(243,220,170,.19),transparent 40%),linear-gradient(120deg,#fffefb 0%,#f5fbfe 52%,#eaf5fa 100%)!important;color:#173649!important;border-bottom:1px solid #e0ebee;overflow:hidden}
.home-hero{position:relative}.home-hero:before,.about-hero:before,.partner-hero:before{content:"";position:absolute;pointer-events:none;inset:0;background-image:linear-gradient(90deg,rgba(16,94,122,.025) 1px,transparent 1px),linear-gradient(rgba(16,94,122,.025) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to right,transparent,black);opacity:.75}.home-hero>.container,.about-hero>.container,.partner-hero>.container{position:relative}
.hero-inner{min-height:575px;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(28px,4.5vw,75px)}.hero-copy{padding:90px 0 75px}.hero-copy h1{color:#143448;font-size:clamp(43px,5.25vw,76px);letter-spacing:-.065em;line-height:1.08}.hero-copy h1 em,.about-hero h1 em,.partner-hero h1 em,.arm-hero h1 em{color:#0b84a2!important}.hero-description,.about-hero p:not(.eyebrow),.partner-hero p,.ac-contact-hero-copy>p:not(.eyebrow),.ace-knx-hero p,.ace-fire-hero p:not(.eyebrow),.arm-hero p{color:#557183!important;line-height:1.8}
.eyebrow.light,.ace-knx-hero .eyebrow,.ace-fire-hero .eyebrow{color:#087e99!important}.eyebrow{color:#087e99}.eyebrow-line{background:#bf9a5d}.hero-button,.contact-button,.arm-primary,.ac-cta-primary,.ace-form-submit{background:linear-gradient(115deg,#0a7897,#086782)!important;color:#fff!important;border:1px solid #086782!important;border-radius:100px!important;box-shadow:0 11px 25px #087c9a29;min-height:47px;transition:transform .2s,box-shadow .2s,background .2s}.hero-button:hover,.contact-button:hover,.arm-primary:hover,.ac-cta-primary:hover,.ace-form-submit:hover{background:#075a77!important;box-shadow:0 14px 30px #087c9a3b}.hero-secondary,.arm-hero-secondary,.ac-contact-hero-link,.ace-fire-actions .hero-secondary{color:#0b6a87!important;font-weight:800;text-decoration:none}.hero-secondary:hover,.arm-hero-secondary:hover{color:#074c63!important}
.hero-photograph{border-radius:22px!important;overflow:hidden;box-shadow:0 28px 64px #20506b24,0 0 0 8px #ffffffaa!important;border:1px solid #fff!important;transform:none!important}.hero-photograph img{object-fit:cover}.hero-photo-caption{background:rgba(255,255,255,.94)!important;color:#315469!important;backdrop-filter:blur(8px);letter-spacing:.1em}
.hero-stats{border-top:1px solid #d6e5ea;padding-top:24px;padding-bottom:28px}.hero-stats>div{border-right:1px solid #d5e4e9}.hero-stats strong{color:#15384e;font-size:31px}.hero-stats span{color:#627e8e}
/* Inner page mastheads */
.case-hero{padding:58px 0 67px}.case-hero h1,.about-hero h1,.partner-hero h1,.ac-contact-hero h1,.ace-knx-hero h1,.ace-fire-hero h1,.arm-hero h1{color:#143448!important}.breadcrumbs{color:#5b7989}.breadcrumbs a:hover{color:#087e99}.case-hero-sub{color:#587687}.about-hero-kpis div{border:1px solid #d8e8ee;background:rgba(255,255,255,.88);box-shadow:0 12px 30px #235c7410}.about-hero-kpis strong,.partner-milestones strong{color:#0e5770}.about-hero-kpis span,.partner-milestones span{color:#577686}.partner-milestones{border-top:1px solid #d9e8eb;padding-top:24px}
.ac-contact-hero h1{max-width:820px}.ac-contact-hero-link{border-bottom:1px solid #0a87a0}.ac-hero-ring{border-color:#9ccfdc}.ac-hero-ring-two{box-shadow:0 0 0 31px #4eafc70b,0 0 0 62px #4eafc708}.ac-hero-dot{background:#0e9fb0;box-shadow:0 0 18px #56b6c6}.ac-hero-technical{color:#19516b}.ac-hero-technical span{color:#087e99}
.arm-logo-panel{background:#fff!important;border:1px solid #d7e8ed!important;box-shadow:0 18px 45px #235e7217;border-radius:22px!important}.arm-logo-panel p{color:#59717b!important}
/* Spacious sections, consistent rhythm */
.section{padding-block:clamp(65px,7vw,104px)}.ace-section{background:#f7fafc;padding-block:clamp(66px,7vw,98px)}.ace-section.ace-white{background:#fff}.capabilities-section,.about-leadership{background:#fff}.portfolio-section,.about-capability,.about-history,.ac-contact-options,.ac-premium-form-section,.md-home-preview{background:#f5f9fb}.ace-brands-section{background:linear-gradient(180deg,#fff,#f5f9fc)}.about-reach,.ac-contact-direct{background:linear-gradient(118deg,#eff8fb,#f9fcfd)!important;color:#18394c!important;border-top:1px solid #e0eaee}.about-reach h2,.ac-contact-direct h2{color:#15384c!important}.about-reach p,.ac-office-address address,.ac-office-address p{color:#5b7482!important}.ac-office-address p a{color:#087794!important}.about-contact{border-color:#cddfe7}.about-contact strong{color:#18384c}.about-home-ctas a:not(.hero-button){color:#087e99}
.section-heading h2,.ace-section .ace-section-head h2,.ace-brands-head h2{color:#17394d}.section-heading p:not(.eyebrow),.ace-section .ace-section-head p,.ace-brands-head p:not(.eyebrow){color:#607986}
/* Refined cards and images */
.project-card,.ace-tile,.about-service,.history-row,.ac-contact-card,.partnership-discipline,.certificate-item,.ace-brand-tile,.ace-resource-list a,.ac-social-button,.facts-card,.search-panel{border:1px solid #e0eaf0;border-radius:17px;box-shadow:0 7px 24px rgba(18,70,100,.045);background:#fff}.project-card:hover,.ace-tile:hover,.ace-brand-tile:hover,.ac-contact-card:hover{box-shadow:0 19px 41px rgba(18,70,100,.12);border-color:#c3dce7}.project-visual{background:linear-gradient(120deg,#d4e9f1,#7db7c9)}.project-visual img{object-fit:cover}.project-card-content{padding:27px}.card-topline{color:#0b829e}.project-card h3{color:#17394d}.project-card p,.ace-tile p,.about-service p{color:#5e7683}.card-link,.underlink,.back-link,.ace-inline-link,.ace-tile a{color:#087e99}.facts-card{position:sticky;top:112px;background:#fff;padding:32px}.fact-row{border-color:#e2eaee}.detail-image{border-radius:19px;box-shadow:0 16px 40px #244f6914}.case-copy p:not(.eyebrow),.scope-list{color:#536f7e}
.ace-brand-tile{min-height:211px;border-radius:17px}.ace-brand-visual{background:#fff}.ace-brand-meta{border-color:#e5edf1}.ace-brand-disclaimer{color:#607786}.partner-logo-box,.md-expertise-item,.md-expanded-bio,.fire-safety-evidence{background:#f5fafc;border-color:#d8e8ed}
/* Elevated section details */
.ace-section .ace-section-head,.section-heading{margin-bottom:37px}.ace-tile{padding:31px}.ace-resource-list a,.ace-brochure-tile{border-radius:16px}.ac-contact-direct .ac-social-button{box-shadow:0 9px 25px #1a546312}.ac-maps-link{background:#e0f4f8;color:#0b647d}.ac-contact-jump{background:#fff;border-color:#e1ecf0}.ac-contact-jump a{color:#1b6076}.ac-card-icon{background:#eaf6fa;color:#087e99}.ac-cta-outline{color:#087e99;border-color:#bbdce6}.ac-premium-form-panel{background:#fff;border:1px solid #e0eaf0;border-radius:18px;box-shadow:0 20px 50px #164b6710}
/* Final dark anchor: premium contrast rather than dark-dominated site */
.footer{background:#12364b;color:#cedde4;padding-top:72px}.footer-mark span{color:#75d6e6}.footer-bottom{color:#bdd2de;border-color:#ffffff28}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #087e99;outline-offset:3px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.hero-button:hover,.contact-button:hover{transform:translateY(-2px)}}
@media(max-width:950px){.hero-inner{gap:30px;min-height:0}.hero-copy{padding:70px 0 55px}.hero-photograph{max-width:100%}.hero-stats>div{padding-right:24px;margin-right:24px}}
@media(max-width:700px){.nav-inner{min-height:73px}.main-nav{top:72px;background:#fff}.main-nav .nav-contact{align-self:stretch;text-align:center}.hero-inner{display:grid;grid-template-columns:1fr;gap:0}.hero-copy{padding:62px 0 28px}.hero-copy h1{font-size:clamp(39px,10vw,56px)}.hero-description{font-size:16px}.hero-photograph{margin:0 0 32px;max-height:310px;border-radius:16px!important}.hero-stats{flex-wrap:wrap;gap:16px}.hero-stats>div{padding:0 15px 0 0;margin:0 0 0 0}.hero-stats strong{font-size:25px}.about-hero,.partner-hero,.ace-knx-hero,.ace-fire-hero,.arm-hero{padding-top:62px;padding-bottom:60px}.ac-contact-hero-copy{padding:58px 0}.about-reach,.ac-contact-direct{padding-block:55px}.section{padding-block:65px}.ace-section{padding-block:62px}.ac-contact-card{min-height:auto}.project-card-content{padding:22px}.ace-brand-tile{min-height:180px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
