@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#092534;--navy2:#103d4d;--teal:#008b84;--teal-bright:#6bddd0;--ink:#193544;--muted:#627984;--line:#e2e9eb;--paper:#f5f8f8;--white:#fff;--shadow:0 18px 46px rgba(9,37,52,.07)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font:16px/1.7 'DM Sans',system-ui,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,'DM Sans',sans-serif;line-height:1.18;letter-spacing:-.045em}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%}[hidden]{display:none!important}:focus-visible{outline:3px solid #2bc3b5;outline-offset:3px}.container{width:min(1240px,calc(100% - 56px));margin-inline:auto}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.nav-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:flex;flex-direction:column;gap:6px}.wordmark-main{font:800 24px/1 Manrope,sans-serif;letter-spacing:-.08em;color:var(--navy)}.wordmark-main span{color:var(--teal);margin-left:5px}.wordmark-sub{font:700 9px/1.2 Manrope,sans-serif;letter-spacing:.19em;color:#7a8d96}.main-nav{display:flex;align-items:center;gap:38px;font-size:13px;font-weight:700}.main-nav>a:hover,.underlink:hover,.card-link:hover{color:var(--teal)}.nav-contact{border:1px solid #c6e2df;padding:11px 20px;border-radius:6px;color:var(--teal)}.menu-toggle{display:none;border:1px solid var(--line);border-radius:7px;background:white;width:43px;height:42px;padding:10px}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:4px 0}.home-hero{background:linear-gradient(120deg,#082431 4%,#0b3442 56%,#0b5055);color:white;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.3fr .7fr;min-height:500px;align-items:center;gap:55px}.hero-copy{padding:75px 0}.eyebrow{font:800 11px/1.4 Manrope,sans-serif;letter-spacing:.18em;color:var(--teal);text-transform:uppercase;margin-bottom:22px}.eyebrow.light{color:var(--teal-bright)}.eyebrow-line{display:inline-block;width:28px;height:1px;background:currentColor;vertical-align:middle;margin:0 12px}.hero-copy h1{font-size:clamp(45px,5.6vw,79px);letter-spacing:-.065em;margin-bottom:27px;line-height:1.07}.hero-copy h1 em{font-style:normal;color:var(--teal-bright)}.hero-description{max-width:580px;color:#c9dce0;font-size:17px;line-height:1.85;margin-bottom:35px}.hero-button,.contact-button{display:inline-flex;align-items:center;gap:30px;justify-content:space-between;background:var(--teal);padding:13px 23px;color:white;border-radius:6px;font-size:13px;font-weight:800}.hero-button:hover,.contact-button:hover{background:#00746e}.hero-art{height:360px;position:relative;border:1px solid #ffffff24;border-radius:50%;display:grid;place-items:center;transform:translateX(80px);box-shadow:0 0 0 50px #ffffff07,0 0 0 100px #ffffff05}.hero-art:after{content:'';position:absolute;inset:55px;border:1px solid #ffffff25;border-radius:50%}.hero-art span{font:800 19px/1.6 Manrope,sans-serif;letter-spacing:.2em;text-align:center;color:#acd5d6}.hero-stats{display:flex;gap:0;border-top:1px solid #ffffff2a;padding-top:22px;padding-bottom:27px}.hero-stats>div{padding-right:52px;margin-right:52px;border-right:1px solid #ffffff25}.hero-stats>div:last-child{border:0}.hero-stats strong{display:block;font:800 27px/1.3 Manrope,sans-serif;color:white}.hero-stats span{font-size:11px;color:#bad0d5;letter-spacing:.05em}.section{padding-block:91px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}.section-heading h2{font-size:clamp(30px,3.7vw,46px);color:var(--navy);margin-bottom:12px}.section-heading p:not(.eyebrow){color:var(--muted);margin-bottom:0}.underlink{font-size:13px;font-weight:800;color:var(--teal);white-space:nowrap;padding-bottom:8px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.project-card{min-width:0;background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}.project-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.project-visual{display:block;height:220px;position:relative;overflow:hidden;background:linear-gradient(130deg,#0d2b3b,#0d5961)}.project-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.project-card:hover img{transform:scale(1.04)}.visual-monogram{display:none;position:absolute;left:25px;bottom:23px;font:800 11px/1.4 Manrope,sans-serif;letter-spacing:.22em;color:#c4e9e6}.image-missing .visual-monogram{display:block}.image-missing:before{content:'';position:absolute;width:250px;height:250px;border:1px solid #ffffff2a;border-radius:50%;right:-70px;top:-90px;box-shadow:0 0 0 38px #ffffff0a,0 0 0 76px #ffffff06}.project-card-content{padding:26px;display:flex;flex-direction:column;flex:1}.card-topline{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;color:var(--teal);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.card-topline span:last-child{color:#899aa1}.project-card h3{font-size:21px;margin:15px 0 12px;color:var(--navy)}.project-card h3 a:hover{color:var(--teal)}.project-card p{font-size:13px;line-height:1.75;color:var(--muted);margin-bottom:24px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-link{font-size:13px;color:var(--teal);font-weight:800;margin-top:auto}.portfolio-section{background:var(--paper)}.search-panel{background:white;border:1px solid var(--line);padding:23px;border-radius:10px;box-shadow:var(--shadow)}.search-label{display:block;font-size:12px;font-weight:800;margin-bottom:10px}.filter-controls{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:13px}.filter-controls input,.filter-controls select{width:100%;min-width:0;border:1px solid #d5e1e4;border-radius:6px;padding:13px 14px;background:white;color:var(--ink);outline-color:var(--teal)}.result-line{display:flex;align-items:center;justify-content:space-between;margin:28px 0 20px;color:var(--muted);font-size:13px}.result-line p{margin:0}.reset-button{background:none;border:0;color:var(--teal);font-size:13px;font-weight:800}.pagination{display:flex;justify-content:center;align-items:center;gap:17px;margin-top:40px}.pagination button{background:white;border:1px solid #cddfe1;padding:10px 17px;border-radius:6px;font-size:13px;font-weight:800}.pagination button:disabled{opacity:.35;cursor:not-allowed}.pagination span{font-size:13px;color:var(--muted)}.no-results{text-align:center;padding:60px;color:var(--muted)}.source-disclaimer{font-size:11px;color:#7e9098;margin:40px 0 0;max-width:850px}.case-hero{background:linear-gradient(120deg,#082432,#14505a);padding:50px 0 67px;color:white}.breadcrumbs{font-size:12px;color:#bdd2d7;margin-bottom:48px;display:flex;gap:13px}.breadcrumbs a:hover{color:white;text-decoration:underline}.case-hero h1{font-size:clamp(37px,5vw,65px);max-width:1050px;line-height:1.12;margin:0 0 20px}.case-hero-sub{color:#b9d6da;font-size:16px;margin:0}.case-container{padding-top:42px;padding-bottom:78px}.detail-image{height:clamp(270px,40vw,510px);position:relative;overflow:hidden;background:linear-gradient(130deg,#0d2b3b,#0d5961);border-radius:10px}.detail-image img{height:100%;width:100%;object-fit:cover;display:block}.case-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);gap:74px;margin-top:58px}.case-copy section{padding-bottom:32px;margin-bottom:38px;border-bottom:1px solid var(--line)}.case-copy h2{font-size:28px;color:var(--navy);margin:0 0 17px}.case-copy p:not(.eyebrow){color:#4c6571;line-height:1.9}.scope-list{margin:0;padding-left:21px;color:#4c6571}.scope-list li{padding:0 0 12px 5px}.scope-list li::marker{color:var(--teal)}.facts-card{background:var(--paper);padding:32px;border-radius:10px;position:sticky;top:112px}.facts-card h2{font-size:24px;color:var(--navy);margin-bottom:25px}.facts-card dl{margin:0 0 30px}.fact-row{padding:14px 0;border-bottom:1px solid #dbe5e7}.fact-row dt{font-size:10px;letter-spacing:.1em;font-weight:800;text-transform:uppercase;color:#7d929b}.fact-row dd{margin:7px 0 0;font-size:14px;font-weight:700;color:var(--navy);overflow-wrap:anywhere}.contact-button{width:100%;font-size:12px}.case-bottom{border-top:1px solid var(--line);padding-top:28px;display:flex;justify-content:space-between;gap:35px;align-items:center}.back-link{color:var(--teal);font-weight:800;font-size:13px;white-space:nowrap}.case-bottom p{font-size:11px;color:#85979d;max-width:600px;margin:0}.footer{background:#092534;color:#b6cbd0;padding:62px 0 26px}.footer-grid{display:flex;justify-content:space-between;gap:60px}.footer-mark{font:800 25px Manrope,sans-serif;color:white;letter-spacing:-.07em}.footer-mark span{color:#5fd0c3;margin-left:5px}.footer p{font-size:13px;max-width:430px;line-height:1.85}.footer h3{font-size:13px;color:white;letter-spacing:0}.footer a:hover{color:white}.footer-bottom{border-top:1px solid #ffffff24;margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#93aeb6}@media(max-width:950px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-art{transform:translateX(55px);height:280px}.case-layout{gap:32px}.hero-inner{gap:20px}}@media(max-width:700px){.container{width:min(100% - 36px,1240px)}.nav-inner{min-height:72px}.wordmark-main{font-size:21px}.wordmark-sub{font-size:7px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:71px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:22px 18px;gap:18px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav a{display:block}.nav-contact{width:max-content}.hero-inner{display:block;min-height:auto}.hero-copy{padding:67px 0 60px}.hero-copy h1{font-size:clamp(40px,10vw,55px)}.hero-description{font-size:15px}.hero-art{display:none}.hero-stats{gap:18px;flex-wrap:wrap}.hero-stats>div{padding:0 16px 0 0;margin:0;border:0}.hero-stats strong{font-size:22px}.hero-stats span{font-size:10px}.section{padding-block:61px}.section-heading{display:block}.section-heading h2{font-size:32px}.underlink{display:inline-block;margin-top:15px}.project-grid{grid-template-columns:1fr;gap:19px}.project-visual{height:230px}.filter-controls{grid-template-columns:1fr}.search-panel{padding:17px}.case-hero{padding:31px 0 48px}.breadcrumbs{margin-bottom:36px}.case-hero h1{font-size:37px}.case-container{padding-top:22px}.detail-image{height:250px}.case-layout{grid-template-columns:1fr;margin-top:38px}.facts-card{position:static}.case-copy h2{font-size:24px}.case-bottom{display:block}.case-bottom p{margin-top:18px}.footer-grid,.footer-bottom{display:block}.footer-grid>div+div{margin-top:30px}.footer-bottom span{display:block;margin-top:6px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Premium refinement: richer hierarchy, editorial spacing and responsive media */
.hero-inner{grid-template-columns:1.04fr .96fr;gap:5vw}.hero-photograph{position:relative;height:440px;overflow:hidden;border-radius:12px 0 0 12px;background:#123b47;box-shadow:0 32px 85px #0003}.hero-photograph:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#06212d9c,transparent 50%)}.hero-photograph img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-photo-caption{position:absolute;z-index:1;left:26px;bottom:22px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.13em}.capabilities-section{background:#fff}.capabilities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.capability-card{border:1px solid #dbe7e9;border-radius:12px;padding:35px 31px;min-height:330px;display:flex;flex-direction:column;background:linear-gradient(145deg,#fff,#f8fbfb)}.capability-num{font:800 12px Manrope,sans-serif;color:#008b84;letter-spacing:.14em}.capability-card h3{font-size:24px;color:#092534;margin:32px 0 14px}.capability-card p{font-size:14px;color:#5e7681;line-height:1.8}.capability-card a{margin-top:auto;color:#007f79;font-weight:800;font-size:13px}.about-section{background:#092534;color:#c4dce0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.about-section h2{color:white;font-size:clamp(34px,4vw,53px);max-width:580px}.about-section p{line-height:1.9}.about-section .hero-button{margin-top:17px}.project-visual img,.detail-image img{background:#0d3541}.project-card{box-shadow:0 5px 24px #09253408}.project-card:hover{box-shadow:0 24px 60px #0925341c}.project-card h3{overflow-wrap:anywhere}.case-copy p{max-width:73ch}.case-copy section{scroll-margin-top:110px}.case-copy p:not(.eyebrow){line-height:1.8}.facts-card{box-shadow:0 12px 35px #0925340b}.hero-button:focus-visible,.contact-button:focus-visible{outline:3px solid #6bddd0;outline-offset:4px}.capability-card a:hover{text-decoration:underline}.footer a{overflow-wrap:anywhere}
@media(max-width:950px){.hero-inner{grid-template-columns:1fr 1fr;gap:30px}.hero-photograph{height:360px}.capabilities-grid{grid-template-columns:1fr 1fr}.about-grid{gap:30px}}
@media(max-width:700px){.hero-inner{display:block}.hero-photograph{height:260px;border-radius:10px;margin-bottom:35px}.hero-copy{padding-bottom:30px}.capabilities-grid,.about-grid{grid-template-columns:1fr}.capability-card{min-height:unset}.about-section h2{font-size:34px}.main-nav{max-height:calc(100vh - 72px);overflow-y:auto}}


/* Signature refinement — October 2026 */
:root{--teal:#087f79;--ink:#183746;--paper:#f4f8f8}
html{scroll-padding-top:95px}body{font-feature-settings:"kern" 1}::selection{background:#c1f1e9;color:#092534}
.skip-link{position:fixed;top:-70px;left:18px;z-index:100;background:#fff;color:#092534;padding:12px 20px;border-radius:8px;box-shadow:0 8px 24px #0003}.skip-link:focus{top:12px}
.reading-progress{position:fixed;top:0;left:0;width:0;height:3px;background:#15b5a9;z-index:90;pointer-events:none}
.site-header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.home-hero{background:radial-gradient(circle at 68% 16%,#16616a 0,transparent 39%),linear-gradient(115deg,#061e2b,#0b3b47)}
.hero-inner{min-height:555px}.hero-copy h1{max-width:850px}.hero-photograph{border-radius:14px;box-shadow:0 25px 90px #0005}
.hero-photograph img{transition:transform 1.2s ease}.hero-photograph:hover img{transform:scale(1.045)}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.hero-secondary{color:#d8efed;font-size:13px;font-weight:800;border-bottom:1px solid #70cfc6;padding:10px 0}.hero-secondary:hover{color:white}
.hero-stats{align-items:center}.hero-stats strong{font-size:clamp(24px,2.7vw,34px)}
.section{padding-block:clamp(64px,7vw,106px)}.section-heading h2{letter-spacing:-.055em}
.project-card{border-radius:13px;isolation:isolate}.project-visual{height:230px}.project-card-content{padding:27px}.card-link{display:inline-flex;gap:8px;align-items:center}
.project-card:hover .card-link{text-decoration:underline;text-underline-offset:4px}
.capability-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.capability-card:hover{transform:translateY(-4px);border-color:#8acbc4;box-shadow:0 22px 50px #09253410}
.filter-controls input:focus,.filter-controls select:focus{outline:2px solid #008b84;outline-offset:2px}
.project-visual img{object-position:center}.project-visual.image-missing{background:linear-gradient(135deg,#0c2a38,#0e6064)}
.portfolio-intro{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 28px}.portfolio-intro a{font-size:12px;font-weight:700;color:#0a665f;background:#e7f5f2;padding:9px 14px;border-radius:50px}.portfolio-intro a:hover{background:#d2ece7}
.related-section{padding:64px 0;background:#f4f8f8;border-top:1px solid #e0e9e9}.related-heading{font-size:clamp(25px,3vw,35px);margin:0 0 25px;color:#092534}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.related-tile{display:flex;flex-direction:column;gap:13px;background:#fff;padding:26px;border:1px solid #dce7e8;border-radius:12px;transition:transform .2s,box-shadow .2s}.related-tile:hover{transform:translateY(-3px);box-shadow:0 14px 32px #09253412}.related-tile span{font-size:10px;font-weight:800;letter-spacing:.14em;color:#087f79}.related-tile strong{font-size:17px;line-height:1.35;color:#092534}.related-tile small{margin-top:auto;color:#087f79;font-weight:800}
.contact-band{background:linear-gradient(110deg,#0a2c3a,#0b5458);color:white;padding:55px 0}.contact-band-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.contact-band h2{font-size:clamp(27px,3.4vw,40px);margin:0 0 10px}.contact-band p{color:#c6e3e2;margin:0}.contact-band .hero-button{flex-shrink:0;background:#fff;color:#0a4a4b}.contact-band .hero-button:hover{background:#dbf5ef}
.case-hero{background:radial-gradient(circle at 90% 20%,#1a6570,transparent 40%),linear-gradient(110deg,#071f2d,#104650)}.case-hero h1{letter-spacing:-.05em}.detail-image{border-radius:14px}.facts-card{border:1px solid #e0e9ea;border-radius:14px}.case-copy h2{letter-spacing:-.04em}.case-copy p{overflow-wrap:anywhere}
.footer{padding-top:75px}.footer-bottom{line-height:1.7}
@media(max-width:900px){.related-grid{grid-template-columns:repeat(2,1fr)}.contact-band-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.hero-inner{min-height:auto}.hero-photograph{height:290px}.hero-actions{gap:15px}.hero-stats>div{flex:1 1 100px}.related-grid{grid-template-columns:1fr}.related-section{padding:46px 0}.related-tile{padding:22px}.contact-band{padding:45px 0}.project-visual{height:220px}}
@media(prefers-reduced-motion:reduce){.hero-photograph img,.capability-card,.related-tile{transition:none!important}}

/* Approved ACE Controls / Siemens artwork integration */
.wordmark{display:flex;align-items:center;min-width:0}.ace-brand-logo{display:block;width:min(365px,32vw);height:auto;max-height:69px;object-fit:contain;object-position:left center}.footer-mark{max-width:345px;background:#fff;border-radius:5px;padding:9px 12px;display:inline-flex}.ace-footer-logo{display:block;width:100%;height:auto;max-height:68px;object-fit:contain}.siemens-partner-footer{max-width:260px;align-self:start}.siemens-partner-footer img{display:block;width:100%;height:auto;border-radius:3px}.siemens-partner-footer p{font-size:11px;margin:9px 0 0;color:#c3d7da}.partner-assurance{font-weight:700;color:#fff}.footer-grid{flex-wrap:wrap}.footer-grid>div{min-width:200px}@media(max-width:950px){.ace-brand-logo{width:275px}}@media(max-width:700px){.ace-brand-logo{width:min(235px,63vw);max-height:55px}.footer-mark{max-width:290px}.siemens-partner-footer{max-width:230px}}

.photo-source-panel{padding:32px 0 52px}.photo-source-inner{border:1px solid #cbdfe0;background:#f3f8f8;border-radius:20px;padding:clamp(22px,4vw,42px)}.photo-source-inner h2{margin:.35em 0}.photo-source-inner p{max-width:760px}.photo-source-inner a{color:#087f7a;font-weight:700;text-underline-offset:4px}

/* Akij Flour Mills: avoid excessive enlargement of the available 561px source photo. */
.akij-flour-case .detail-image{height:clamp(260px,32vw,380px);background:#173944}.akij-flour-case .detail-image img{object-fit:contain;object-position:center}

.md-home-network{margin-top:12px!important}.md-home-network a{color:#087f79;font-weight:800;font-size:13px;text-decoration:underline;text-underline-offset:5px}

/* Footer: authentic Siemens + Armstrong partner marks, November 2026 */
.footer-grid .partner-footer{width:270px;max-width:270px;min-width:235px;flex-shrink:0}
.partner-footer h3{font:800 12px/1.4 Manrope,'DM Sans',sans-serif;letter-spacing:.10em;text-transform:uppercase;color:#d9eaed;margin:0 0 16px}
.partner-footer .footer-partner-brand{display:block;max-width:270px;text-decoration:none;border-radius:9px;margin:0 0 15px;color:#c3d7da}
.partner-footer .footer-partner-brand img{display:block;width:100%;height:auto;max-height:100px;object-fit:contain;object-position:center;background:#fff;padding:12px;border-radius:8px;box-shadow:0 8px 20px #0002}
.partner-footer .footer-partner-brand span{display:block;font-size:11px;font-weight:600;line-height:1.55;margin:7px 0 0}
.partner-footer .footer-partner-brand:hover span,.partner-footer .footer-partner-brand:focus-visible span{color:#75e0d6}
.partner-footer .footer-armstrong-brand img{padding:16px 10px;max-height:95px}
@media(max-width:900px){.footer-grid{gap:30px}.footer-grid .partner-footer{flex:1 1 240px}}
@media(max-width:700px){.footer-grid .partner-footer{width:min(100%,270px);max-width:270px}.partner-footer .footer-partner-brand{max-width:250px}}
