@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#102d36;--navy:#082832;--green:#d0ef65;--muted:#526970;--line:#d4dfe1;--paper:#f3f7f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font:16px/1.7 'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #518300;outline-offset:5px}.skip{position:fixed;top:-100px;z-index:50;background:#fff;padding:12px}.skip:focus{top:0}.utility{background:var(--navy);color:#d2e4e8;padding:9px 5%;font-size:12px;letter-spacing:.1em;display:flex;justify-content:space-between}.header{background:#fff;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:19px 5%;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;gap:12px;align-items:center;font-size:29px;font-weight:700;letter-spacing:.08em;line-height:1}.brand-mark{background:var(--navy);color:var(--green);height:46px;width:46px;display:grid;place-items:center;font-size:34px;font-style:italic;letter-spacing:-.12em;padding-right:6px}.brand-sub{display:block;font-size:10px;letter-spacing:.055em;line-height:1.4;margin-top:5px}nav{display:flex;gap:28px;align-items:center;font-size:14px;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--green);color:var(--navy);padding:15px 23px;font-size:14px;font-weight:700;border:1px solid transparent;transition:background .2s}.button:hover{background:#bce341}.button.dark{background:var(--navy);color:#fff}.button.dark:hover{background:#1b4854}.button.outline{color:#fff;border-color:#ffffff65;background:transparent}.button.outline:hover{background:#ffffff15}.menu-toggle{display:none}.hero{position:relative;background:var(--navy);color:#fff;min-height:650px;isolation:isolate;display:flex;align-items:center}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#06232ff2 0%,#06232fce 35%,#06232f25 85%);z-index:-1}.hero-inner{padding:72px 6% 95px;width:100%}.eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.hero .eyebrow{color:var(--green)}h1,h2,h3{margin:0;line-height:1.03;font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-weight:600}h1{font-size:clamp(64px,7.5vw,108px);letter-spacing:-.02em;margin:22px 0}h1 span{color:var(--green)}.hero p{font-size:18px;color:#e1ebed;max-width:480px;margin:24px 0 30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-caption{position:absolute;bottom:20px;right:5%;font-size:12px;color:#d5e0e2}.ribbon{display:grid;grid-template-columns:repeat(4,1fr);background:var(--navy);color:#fff;padding:0 6%}.ribbon a{padding:25px 22px;border-left:1px solid #ffffff25;font-size:14px;display:flex;justify-content:space-between;gap:10px}.ribbon a:last-child{border-right:1px solid #ffffff25}.ribbon a:hover{background:#163d47}.ribbon span{color:var(--green)}.section{padding:95px 6%;scroll-margin-top:0}.section-title{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:end;margin-bottom:45px}h2{font-size:clamp(44px,4.6vw,66px);letter-spacing:-.01em;margin-top:17px}.section-title p{color:var(--muted);margin:0;max-width:470px}.services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.service-card{padding:37px;background:white;position:relative}.service-card:target{box-shadow:inset 5px 0 var(--green)}.number{font-size:13px;letter-spacing:.1em;color:#526970;display:block;margin-bottom:25px}.service-card h3{font-size:34px;margin-bottom:17px}.service-card p{color:var(--muted);max-width:500px;margin:0 0 25px}.service-card details{border-top:1px solid var(--line);padding-top:17px}.service-card summary{cursor:pointer;font-size:14px;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:10px}.service-card summary:after{content:'+';font-size:23px;line-height:1}.service-card details[open] summary:after{content:'−'}.service-card ul{color:var(--muted);padding-left:20px;font-size:15px}.fit{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;align-items:start}.fit>div>p{color:var(--muted)}.fit-list article{padding:24px 0;border-top:1px solid var(--line)}.fit-list article:first-child{padding-top:0;border:0}.fit-list h3{font-size:30px}.fit-list p{color:var(--muted);margin:12px 0}.text-link{font-weight:700;font-size:14px;border-bottom:1px solid;padding-bottom:4px}.approach{background:var(--navy);color:white}.approach .eyebrow{color:var(--green)}.approach .section-title p{color:#c9dde1}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:60px}.steps article{border-top:1px solid #ffffff40;padding-top:22px}.steps .number{color:var(--green);margin-bottom:30px}.steps h3{font-size:34px}.steps p{color:#c9dde1;margin-bottom:0}.standard{background:var(--green);padding:26px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}.standard p{margin:0;font-size:20px;font-weight:600}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:9%}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq details:first-child{padding-top:0}.faq summary{font-weight:600;cursor:pointer;padding-right:16px}.faq details p{color:var(--muted)}.partnership{background:#e7eff1;display:grid;grid-template-columns:1fr 1fr;gap:10%}.partnership p{color:var(--muted)}.brief{background:#fff;padding:32px;border-top:4px solid var(--navy)}.brief h3{font-size:30px}.brief ul{padding-left:20px;color:var(--muted)}.brief li{margin:12px 0}.brief small{display:block;color:var(--muted);font-size:13px;margin-top:15px}.copy-status{min-height:24px;margin:8px 0 0!important;font-size:14px}.footer{background:var(--navy);color:#fff;padding:55px 6% 25px}.footer-main{display:flex;justify-content:space-between;gap:35px;align-items:start}.footer .brand-mark{background:var(--green);color:var(--navy)}.footer p{color:#bed2d7;max-width:350px}.footer nav{flex-wrap:wrap}.footer-bottom{border-top:1px solid #ffffff25;margin-top:40px;padding-top:22px;font-size:12px;color:#bed2d7;display:flex;justify-content:space-between;gap:15px}button{cursor:pointer}.service-card,.fit-list article{scroll-margin-top:115px}@media(min-width:1600px){.hero-inner,.section,.ribbon{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}}@media(max-width:900px){nav{gap:17px}.header nav .button{display:none}.section-title{gap:30px}.hero{min-height:600px}.hero:before{background:linear-gradient(90deg,#06232fee,#06232f65)}.ribbon{padding:0 3%}.ribbon a{padding:20px 12px}.section{padding:70px 6%}.fit,.faq,.partnership{gap:6%}.steps{gap:25px}.service-card{padding:28px}}@media(max-width:650px){html{scroll-padding-top:85px}.utility{font-size:10px;padding:7px 6%}.utility span:last-child{display:none}.header{padding:17px 6%;flex-wrap:wrap}.brand{font-size:25px}.brand-sub{font-size:9px}.brand-mark{width:40px;height:40px;font-size:30px}.menu-toggle{display:block;border:1px solid var(--line);padding:7px 12px;background:white;font-size:14px}.header nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:15px 0 0;gap:0}.header nav.open{display:flex}.header nav a{padding:11px 0}.hero{min-height:610px}.hero-inner{padding:60px 6% 75px}.hero h1{font-size:clamp(60px,14vw,84px)}.hero p{font-size:16px;max-width:360px}.hero>img{object-position:65%}.hero:before{background:#06232fba}.hero-caption{font-size:10px;left:6%;right:auto}.ribbon{grid-template-columns:1fr 1fr;padding:0}.ribbon a{padding:18px 6%;font-size:12px;border-bottom:1px solid #ffffff25}.section-title,.fit,.faq,.partnership{grid-template-columns:1fr;gap:30px}.section-title{margin-bottom:30px}.section{padding:58px 6%}.service-grid{grid-template-columns:1fr}.service-card{padding:28px}.number{margin-bottom:18px}.steps{grid-template-columns:1fr;gap:30px;margin-top:35px}.steps .number{margin-bottom:15px}.standard{align-items:flex-start;flex-direction:column;padding:27px 6%;gap:15px}.standard p{font-size:18px}.footer-main{flex-direction:column}.footer nav{gap:20px}.footer-bottom{flex-direction:column}.brief{padding:25px}.button{font-size:13px;padding:14px 18px}.fit-list article:first-child{padding-top:22px;border-top:1px solid var(--line)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.credentials{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;padding:20px 6%;background:#d0ef65;color:#082832;font-size:14px}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin:25px 0}.contact-email{font-weight:700;overflow-wrap:anywhere}.utility a{font-weight:700}.utility a:hover{text-decoration:underline}@media(max-width:650px){.utility{flex-direction:column;gap:4px}.utility a{font-size:12px}.credentials{gap:8px 18px;justify-content:flex-start}.credentials strong{width:100%}}

.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.experience-grid article{border-top:1px solid var(--line);padding-top:25px}.experience-grid strong{display:block;font:600 clamp(48px,5vw,72px)/1 'Barlow Condensed',Arial,sans-serif;color:var(--ink);margin-bottom:18px}.experience-grid h3{font-size:27px}.experience-grid p,.about-note{color:var(--muted)}.experience-grid a{text-decoration:underline}.about-note{margin:35px 0 0;border-top:1px solid var(--line);padding-top:25px}@media(max-width:1050px){.header nav{gap:16px}.header nav .button{display:none}}@media(max-width:650px){.experience-grid{grid-template-columns:1fr;gap:25px}}

/* Preserve the official stacked logo and its original proportions. */
.brand{flex-shrink:0}.official-logo{display:block;width:168px;height:auto;object-fit:contain}.header{padding-top:10px;padding-bottom:10px}.footer .official-logo{width:230px}html{scroll-padding-top:180px}.service-card,.fit-list article{scroll-margin-top:180px}@media(max-width:650px){.official-logo{width:132px}.footer .official-logo{width:210px}html{scroll-padding-top:145px}.service-card,.fit-list article{scroll-margin-top:145px}.header{padding-top:8px;padding-bottom:8px}}

.workorder-platform{margin:22px 0 25px;padding:22px;background:#f3f7f7;border:1px solid var(--line)}.workorder-platform span{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--muted);margin-bottom:18px}.workorder-platform a{display:inline-block;max-width:100%}.workorder-platform img{display:block;width:220px;max-width:100%;height:auto}

.contact-panel{background:#fff;color:var(--ink)}.contact-panel p{color:var(--muted)}#contact-form{display:grid;gap:12px;margin-top:24px}#contact-form label{font-weight:600;font-size:15px}#contact-form label span{font-size:14px;font-weight:400}#contact-form input,#contact-form textarea{width:100%;box-sizing:border-box;border:1px solid #9eafb2;background:#fff;border-radius:3px;padding:13px;font:inherit;color:#102e35}#contact-form input:focus,#contact-form textarea:focus{outline:2px solid #16877e;outline-offset:2px}#contact-form textarea{resize:vertical}.contact-note,#contact-status{font-size:14px;line-height:1.6}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contact-send{justify-content:space-between;cursor:pointer}#contact-send:disabled{opacity:.55;cursor:not-allowed}#contact-status{margin:0}#contact-form[aria-busy=true]{opacity:.8}

.portal-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.portal-features article{border-top:1px solid var(--line);padding-top:22px}.portal-features h3{font-size:28px}.customer-portal .button{margin-top:15px}@media(max-width:650px){.portal-features{grid-template-columns:1fr}}
/* Shared multipage layout */
nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px;text-decoration-color:#5fae41}.page-intro{background:var(--navy);color:white;padding:70px 6% 80px;border-bottom:7px solid var(--green)}.page-intro .eyebrow{color:var(--green)}.page-intro h1{font-size:clamp(48px,6vw,84px);max-width:1050px}.page-intro p{max-width:740px;font-size:19px;color:#d2e4e8}.home-services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.home-services>a{padding:36px 28px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.home-services>a:first-child{padding-left:0}.home-services h3{font-size:34px;margin:20px 0 10px}.home-services .text-link{margin-top:auto}.home-services>a:hover h3{text-decoration:underline;text-underline-offset:6px}.home-about{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:var(--paper);padding:80px 6%}.home-about h2,.home-portal h2{font-size:clamp(38px,4.5vw,64px)}.home-about p,.home-portal p{max-width:600px}.scope-note{font-size:14px;color:var(--muted)}.home-portal{display:flex;align-items:center;justify-content:space-between;gap:40px}.partnership h1{font-size:clamp(48px,6vw,84px)}.footer nav{flex-wrap:wrap}.page-intro+.section{padding-top:64px}@media(max-width:800px){.home-services,.home-about{grid-template-columns:1fr}.home-services>a{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.home-about{gap:24px;padding:48px 6%}.home-portal{display:block}.home-portal .button{margin-top:20px}.page-intro{padding:48px 6%}.header nav{gap:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.video-hero{overflow:hidden}.video-hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:0;transition:opacity 1.2s ease}.video-hero.video-ready>video{opacity:1}.video-hero:before{background:linear-gradient(90deg,rgba(6,35,47,.95),rgba(6,35,47,.62) 48%,rgba(6,35,47,.2))}.hero-media-controls{position:absolute;bottom:22px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:12px;color:#fff}.hero-media-controls button{background:#082832dd;border:1px solid #ffffff88;color:#fff;border-radius:3px;padding:8px 14px;font-size:14px}.hero-media-controls button:hover{background:#1b4854}.hero-media-controls a{text-decoration:underline;text-underline-offset:3px}.video-hero .hero-inner{padding-bottom:120px}@media(max-width:650px){.video-hero:before{background:#06232fb8}.hero-media-controls{bottom:16px;gap:8px}.hero-media-controls span{font-size:12px}.video-hero .hero-inner{padding-bottom:135px}}

/* Interactive process sequences */
.process-section{padding:70px max(6vw,24px);background:#082832;color:#fff;overflow:hidden;border-top:1px solid #31505a}
.process-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:28px}.process-heading h2{font-size:clamp(30px,4vw,52px);margin:12px 0}.process-heading p{max-width:650px;color:#b9ccd1;line-height:1.7}.process-heading .eyebrow{color:#d0ef65}.process-pause{flex-shrink:0;background:transparent;border:1px solid #718a90;color:white;padding:11px 16px;cursor:pointer;font:inherit;font-size:13px}.process-pause:hover{background:#21434c}
.process-track{display:grid;grid-template-columns:repeat(var(--steps),1fr);position:relative;margin:36px 0 30px;gap:16px}.process-track:before{content:"";position:absolute;top:27px;left:35px;right:35px;height:1px;background:#547078}.flow-step{border:0;background:transparent;color:#b9ccd1;text-align:left;position:relative;cursor:pointer;padding:0;font:inherit}.flow-node{display:flex;width:56px;height:56px;border:1px solid #547078;background:#082832;align-items:center;justify-content:center;border-radius:50%;font-size:13px;transition:background .4s,color .4s,box-shadow .4s}.flow-step strong{display:block;margin-top:18px;font-size:clamp(17px,2vw,23px)}.flow-step.is-active{color:#fff}.flow-step.is-active .flow-node{background:#d0ef65;border-color:#d0ef65;color:#082832;box-shadow:0 0 0 7px #d0ef6514}.flow-step:hover .flow-node{border-color:#d0ef65}.flow-step:focus-visible,.process-pause:focus-visible{outline:3px solid #d0ef65;outline-offset:6px}.process-detail{display:flex;align-items:flex-start;gap:28px;border-top:1px solid #31505a;padding-top:24px;min-height:90px}.process-count{font-size:12px;color:#d0ef65;white-space:nowrap;padding-top:5px;letter-spacing:2px}.process-detail p{margin:0;max-width:720px;line-height:1.7;color:#dbe7ea}
@media(max-width:650px){.process-section{padding:44px 24px}.process-heading{display:block}.process-pause{margin-top:10px}.process-track{gap:8px}.flow-node{width:44px;height:44px}.process-track:before{top:21px;left:22px;right:22px}.flow-step strong{font-size:14px;overflow-wrap:anywhere}.process-detail{gap:14px;min-height:125px}}
@media(prefers-reduced-motion:reduce){.flow-node{transition:none}}

.scada-section{padding:70px max(6vw,24px);background:#082832;color:#e3f0f2}.scada-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px}.scada-heading h2{font-size:clamp(32px,4vw,54px);margin:16px 0}.scada-heading .eyebrow{color:#d0ef65}.scada-heading p,.scada-caption{color:#acc5cd;line-height:1.7}.demo-label{font:11px monospace;letter-spacing:1px;padding:12px;border:1px solid #55717a;white-space:nowrap}.scada-display{border:1px solid #3b5c69;border-radius:12px;background:#081c26;box-shadow:0 24px 70px #0005;overflow:hidden}.scada-top{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #294551;font:12px monospace;letter-spacing:1px}.scada-top button{background:#183640;color:#dff3ef;border:1px solid #54747d;padding:10px 14px;cursor:pointer}.scada-metrics{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0}.scada-metrics>div{padding:0 24px;border-right:1px solid #294551}.scada-metrics small{font:11px monospace;color:#97b2bc;display:block;margin-bottom:12px}.scada-metrics strong{font:32px monospace;color:#e3f7f5}.scada-metrics em{font:12px monospace;margin-left:8px;color:#8cabb6}.scada-metrics .scada-status{font-size:17px;color:#5ce0cd}.scada-metrics .scada-standby{font-size:17px;color:#98b1ba}.scada-diagram{display:block;width:100%;height:auto}.scada-bottom{display:flex;align-items:center;gap:24px;padding:18px 24px;border-top:1px solid #294551;font:10px monospace;color:#98b8c2}.scada-bottom svg{flex:1;min-width:80px;max-width:400px}.scada-bottom i{display:inline-block;width:6px;height:6px;background:#5ce0cd;border-radius:50%;margin-right:6px}.scada-caption{max-width:870px;font-size:13px;margin-top:22px}.scada-flowline{animation:flow-stream 2s linear infinite}.scada-signal{animation:flow-stream 4s linear infinite}.scada-rotor{transform-origin:530px 180px;animation:pump-spin 3s linear infinite}.scada-paused *{animation-play-state:paused!important}@keyframes flow-stream{to{stroke-dashoffset:-44}}@keyframes pump-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.scada-display *{animation:none!important}}@media(max-width:650px){.scada-section{padding:44px 18px}.scada-heading{display:block}.demo-label{display:inline-block;margin-top:10px;white-space:normal}.scada-metrics{grid-template-columns:repeat(2,1fr);gap:25px}.scada-metrics strong{font-size:26px}.scada-top{padding:14px;gap:14px;font-size:10px}.scada-bottom{flex-wrap:wrap;padding:14px}.scada-bottom>span:last-child{display:none}.scada-diagram{min-height:210px}.scada-metrics>div{padding:0 16px}}

/* Reversible field photography trial: original files remain unaltered. */
.field-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:7vw;padding:70px max(6vw,24px);background:#edf3f3}.field-feature figure{margin:0;position:relative}.field-feature img{display:block;width:100%;height:560px;object-fit:cover;object-position:center;filter:brightness(1.06) saturate(.94)}.field-feature figcaption{position:absolute;bottom:0;left:0;right:0;padding:22px;color:white;background:linear-gradient(transparent,#082832dc);font-size:13px}.field-feature h2{font-size:clamp(34px,4vw,56px);line-height:1.06;margin:20px 0}.field-feature p{line-height:1.8}.field-feature .button{margin:18px 0}.service-photo{height:280px;overflow:hidden;margin:0 0 26px;background:#dfe8e8}.service-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 43%;filter:brightness(1.06) saturate(.94)}.records-photo img{object-position:center 35%}@media(max-width:650px){.field-feature{grid-template-columns:1fr;padding:40px 24px;gap:28px}.field-feature img{height:440px}.service-photo{height:240px}}

.maintainx-cta{display:block;margin-top:16px;font-size:14px;font-weight:700;color:#082832;text-decoration:underline;text-underline-offset:4px}

.hero h1{font-size:clamp(42px,6.6vw,96px)}
@media(max-width:650px){.hero h1{font-size:clamp(34px,8.5vw,55px)}}
