:root{color:#edf1f2;font-synthesis:none;--accent:#7edbd1;--ink:#0c1417;--muted:#b0bec1;background:#0c1417;font-family:Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p,figure{margin:0}html{scroll-behavior:smooth;scroll-padding-top:30px}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.skip-link{z-index:100;color:#111;background:#fff;padding:15px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:15px}.staging-bar{color:#879a9e;text-align:right;background:#182327;padding:5px 6%;font-size:10px}.site-header{color:#fff;background:#0c1417;border-bottom:1px solid #263438;justify-content:space-between;align-items:center;gap:30px;padding:17px max(6%,50vw - 580px);display:flex}.brand{align-items:center;display:flex}.brand-logo{object-fit:contain;width:95px;height:50px;display:block}.brand-wordmark{letter-spacing:-.03em;font-size:23px;font-weight:650}.site-header nav{align-items:center;gap:30px;font-size:14px;font-weight:500;display:flex}.site-header nav>a:not(.button):hover{color:var(--accent)}.button{background:var(--accent);color:#071715;border:1px solid var(--accent);border-radius:3px;justify-content:center;align-items:center;min-height:44px;padding:13px 22px;font-size:14px;font-weight:600;transition:background .15s;display:inline-flex}.button:hover{background:#c7f1eb}.button.small{padding:10px 20px}.menu-toggle{display:none}.hero{color:#fff;isolation:isolate;background:#0c1417;align-items:end;min-height:620px;padding:95px max(6%,50vw - 580px);display:flex;position:relative;overflow:hidden}.hero-photo{object-fit:cover;object-position:70% center;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.hero-with-photo:after{content:"";z-index:-1;background:linear-gradient(90deg,#081215ab 0%,#08121550 48%,#0000 80%),linear-gradient(#0000 25%,#081215a0);position:absolute;inset:0}.hero-copy{width:100%;max-width:650px}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:#85bbb5;font-size:11px;font-weight:600;line-height:1.5}.hero .eyebrow{color:#b3d9d4;margin-bottom:20px}h1{letter-spacing:-.035em;max-width:650px;font-size:clamp(36px,3.7vw,55px);font-weight:600;line-height:1.15}em{color:inherit;font-style:normal}.hero-intro{color:#e1e9e9;max-width:570px;margin-top:24px;font-size:17px;line-height:1.7}.hero-actions{margin-top:28px}.text-link{text-underline-offset:5px;font-size:14px;font-weight:550;text-decoration:underline 1px;display:inline-block}.text-link:hover{text-decoration-thickness:2px}.text-link.light{color:#c0e8e2}.section{padding:78px max(6%,50vw - 580px)}.section-heading{margin-bottom:38px;display:block}.section-heading>.eyebrow{margin-bottom:20px}.section-heading h2{max-width:650px}h2{letter-spacing:-.025em;font-size:clamp(28px,2.8vw,40px);font-weight:550;line-height:1.2}.section-heading>div>p{max-width:650px;color:var(--muted);margin-top:20px;font-size:16px;line-height:1.8}.section-heading .text-link{margin-top:22px}.services,.software{grid-template-columns:1fr 1fr;align-items:center;gap:38px 55px;display:grid}.services .section-heading,.software .section-heading{margin:0}.section-photo{background:#111d20;border:1px solid #34474a;position:relative;overflow:hidden}.section-photo img{width:100%;height:auto;display:block}.section-photo figcaption{color:#a6bfbc;letter-spacing:.03em;background:#081316d9;padding:7px 12px;font-size:9px;position:absolute;bottom:0;right:0}.service-list{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:0 55px;margin-top:15px;display:grid}.service-row{border-top:1px solid #314247;grid-template-columns:24px 1fr;align-items:start;gap:15px;padding:26px 0;display:grid}.row-number{color:#759b98;padding-top:5px;font-size:11px}.service-row h3{letter-spacing:-.02em;font-size:22px;font-weight:550;line-height:1.3}.service-row p{color:var(--muted);grid-column:2;max-width:490px;font-size:14px;line-height:1.8}.software{background:#17262b}.product-list{grid-column:1/-1;grid-template-columns:repeat(2,1fr);gap:0 55px;margin-top:15px;display:grid}.product{border-top:1px solid #3c5056;flex-direction:column;align-items:start;padding:26px 0;display:flex}.product .eyebrow{color:#91b4b0;font-size:10px}.product h3{letter-spacing:-.02em;margin:16px 0 12px;font-size:23px;font-weight:500}.product>p:not(.eyebrow){color:#b0bec1;max-width:490px;margin-bottom:20px;font-size:14px;line-height:1.8}.product .text-link{margin-top:auto;font-size:12px}.reference-list{grid-template-columns:repeat(2,1fr);gap:55px;display:grid}.reference{border-top:1px solid #37524f;padding:24px 0 0}.reference .eyebrow{font-size:10px}.reference h3{letter-spacing:-.03em;margin:19px 0 16px;font-size:34px;font-weight:600}.reference>p:last-child{max-width:490px;color:var(--muted);font-size:15px;line-height:1.8}.about{background:#17262b;grid-template-columns:1.2fr 1fr;align-items:stretch;display:grid}.team-photo{background:#222;min-height:500px;position:relative}.team-photo img{object-fit:cover;width:100%;height:100%;display:block}.team-photo figcaption{color:#fff;background:#10191cdb;padding:15px 25px;font-size:10px;position:absolute;bottom:0;left:0;right:0}.about-copy{padding:70px 10%}.about-copy>.eyebrow{margin-bottom:22px}.about-copy>p:not(.eyebrow){color:#b7c3c5;margin-top:24px;font-size:16px;line-height:1.9}.about-location{color:#8fb1ad;margin-top:25px;font-size:12px}.about:not(:has(.team-photo)){grid-template-columns:1fr}.about:not(:has(.team-photo)) .about-copy{max-width:none;padding:70px max(6%,50vw - 580px)}.about-copy h2,.about-copy>p{max-width:800px}.contact{background:#0f1b1e;border-top:1px solid #2b4142;grid-template-columns:1fr 1fr;gap:48px 12%;display:grid}.contact h2{max-width:450px;margin:22px 0}.contact>div>p{color:var(--muted);max-width:450px;font-size:16px;line-height:1.8}.contact-details>a,.contact-details>div{border-bottom:1px solid #314747;padding:18px 0;display:block}.contact-details small{text-transform:uppercase;letter-spacing:.07em;color:#8fb1ad;font-size:10px}.contact-details span{letter-spacing:-.025em;overflow-wrap:anywhere;margin-top:12px;font-size:24px;display:block}.contact-details .phone-link span{color:#b9e2db;font-size:30px;font-weight:500}.contact-details p{margin-top:12px;font-size:14px;line-height:1.7}.contact-details a:hover span{text-underline-offset:6px;text-decoration:underline}.site-footer{color:#fff;background:#081013;grid-template-columns:1fr 1fr;gap:45px;padding:50px max(6%,50vw - 580px) 25px;display:grid}.footer-brand{letter-spacing:-.02em;font-size:24px;font-weight:550}.site-footer p{color:#8fa0a4;margin-top:12px;font-size:12px}.footer-links{color:#c0cdce;flex-wrap:wrap;place-content:start end;gap:23px;font-size:13px;display:flex}.footer-links a:hover{text-decoration:underline}.footer-bottom{color:#8fa0a4;border-top:1px solid #293b3e;grid-column:1/-1;justify-content:space-between;padding-top:20px;font-size:11px;display:flex}.error-page{min-height:75vh;padding:100px 6%}.error-page p{margin:25px 0;line-height:1.7}@media (width<=959px){.site-header{padding:15px 6%;position:relative}.brand-logo{width:85px;height:45px}.menu-toggle{color:#fff;background:0 0;border:1px solid #657b7d;align-items:center;gap:15px;padding:10px 14px;font-size:13px;display:flex}.site-header nav{z-index:10;background:#0c1417;border-bottom:1px solid #385153;flex-direction:column;align-items:stretch;gap:23px;padding:25px 6%;display:none;position:absolute;top:100%;left:0;right:0}.site-header nav.is-open{display:flex}.site-header .button{align-self:start}.hero{min-height:580px;padding:70px 6%}.hero-copy{max-width:540px}.services,.software{gap:30px}.section{padding:60px 6%}.service-list,.product-list{gap:0 30px}.service-row h3{font-size:21px}.about{grid-template-columns:1fr}.team-photo{min-height:0}.team-photo img{aspect-ratio:1.7;height:auto}.about-copy,.about:not(:has(.team-photo)) .about-copy{padding:60px 6%}.contact{column-gap:7%}.contact-details span{font-size:21px}.contact-details .phone-link span{font-size:26px}}@media (width<=600px){.staging-bar{font-size:9px}.hero{align-items:end;min-height:560px;padding:65px 6%}.hero-photo{object-position:77% center}.hero-with-photo:after{background:linear-gradient(#07121420,#071214a0 45%,#071214ed 100%)}.hero .eyebrow{margin-bottom:19px;font-size:10px}h1{font-size:36px}.hero-intro{margin-top:23px;font-size:15px;line-height:1.75}.hero-actions{margin-top:25px}.button{font-size:13px}.services,.software,.contact{grid-template-columns:1fr}.section{padding:50px 6%}.section-heading{margin-bottom:30px}.section-heading>div>p{font-size:15px}h2{font-size:29px}.section-photo{margin-top:0}.service-list,.product-list,.reference-list{grid-template-columns:1fr;gap:0;margin-top:4px}.service-row{gap:13px;padding:23px 0}.service-row h3{font-size:22px}.service-row p{font-size:14px}.product{padding:24px 0}.reference-list{gap:30px}.reference h3{font-size:31px}.reference>p:last-child{font-size:14px}.about-copy,.about:not(:has(.team-photo)) .about-copy{padding:50px 6%}.about-copy>p:not(.eyebrow){font-size:15px}.contact{gap:25px}.contact>div>p{font-size:15px}.contact-details .phone-link span{font-size:29px}.site-footer{grid-template-columns:1fr;gap:32px;padding:40px 6% 25px}.footer-links{justify-content:start;gap:20px}.footer-brand{font-size:23px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.services{color:#edf1f2;background:#0c1417;display:block}.services .eyebrow{color:#85bbb5}.services .section-heading>div>p{color:#b0bec1}.services .section-heading{max-width:730px;margin-bottom:42px}.service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.service-row{border:0;padding:0;display:block}.service-image{object-fit:cover;width:100%;height:270px;margin-bottom:24px;display:block}.service-row h3{margin-bottom:14px}.service-row p{color:#b0bec1;font-size:16px}.service-row:not(:has(img)){background:#17262b;padding:28px}.software{display:block}.software .section-heading{max-width:760px}.product-list{max-width:760px;margin-top:35px;display:block}.product{padding-bottom:0}.reference-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.reference h3{font-size:30px}.contact-form{grid-column:1/-1;width:100%;max-width:850px;margin-top:30px}.contact-form h3{margin-bottom:25px;font-size:26px}.form-fields{grid-template-columns:1fr 1fr;gap:22px;display:grid}.contact-form label{margin-bottom:20px;font-size:14px;display:block}.contact-form input,.contact-form textarea{color:#fff;width:100%;font:inherit;background:#17262b;border:1px solid #5b7478;border-radius:3px;margin-top:9px;padding:12px;display:block}.contact-form textarea{resize:vertical}.form-trap{position:absolute;left:-10000px}.form-note,.form-status{color:#b0bec1;margin:15px 0;font-size:14px;line-height:1.7}.contact-form button:disabled{opacity:.6}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--accent);outline-offset:2px}@media (width<=600px){.service-list,.reference-list,.form-fields{grid-template-columns:1fr}.service-list{gap:30px}.service-image{height:230px}.contact-form{margin-top:15px}}.about-text{max-width:800px;margin-top:24px}.about-text p{color:#b7c3c5;font-size:16px;line-height:1.9}.about-text p+p{margin-top:20px}@media (width<=600px){.about-text p{font-size:15px}}.software .product-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;max-width:none;display:grid}.software-demo{width:100%;margin-bottom:24px}.software-demo img{border:1px solid #3c5056;width:100%;height:auto;display:block}.software-demo figcaption{color:#91b4b0;margin-top:10px;font-size:11px;line-height:1.5}@media (width<=800px){.software .product-list{grid-template-columns:1fr}}.language-switch{align-items:center;gap:8px;font-size:12px;display:flex}.language-switch a{color:#b0bec1;padding:8px 3px}.language-switch a[aria-current=page]{color:var(--accent);text-underline-offset:5px;text-decoration:underline}.partners{background:#17262b}.partner-logos{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.partner-logos li{background:#e7eeef;border-radius:3px;justify-content:center;align-items:center;min-height:120px;padding:20px;display:flex}.partner-logos img{object-fit:contain;width:165px;max-width:100%;height:75px;display:block}@media (width<=800px){.partner-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=600px){.partner-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.partner-logos li{min-height:100px;padding:16px}.partner-logos img{height:60px}}.partner-logos img[alt=Mack]{filter:brightness(0)}.group-site .hero{align-items:center;min-height:680px}.group-site h1{font-size:clamp(48px,5.6vw,82px);line-height:1.08}.group-site .hero-photo{object-position:65% center}.group-site .hero-with-photo:after{background:linear-gradient(90deg,#081215dd 0%,#08121585 50%,#08121530 100%),linear-gradient(#0000 60%,#0c1417)}.group-site .service-row{background:#142125;border:1px solid #34484d;padding:32px}.group-site .service-row h3{font-size:30px}.group-site .service-row .text-link{color:var(--accent);margin-top:24px}.group-direction{background:#0c1417}.commitment-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;display:grid}.commitment-list article{border-top:2px solid var(--accent);padding-top:24px}.commitment-list h3{font-size:24px;line-height:1.3}.commitment-list p{color:var(--muted);margin-top:18px;font-size:16px;line-height:1.8}.group-site .about{border-top:1px solid #34484d}@media (width<=800px){.commitment-list{grid-template-columns:1fr;gap:30px}.group-site .hero{min-height:590px}.group-site .service-row{padding:24px}}.hero .eyebrow{letter-spacing:.08em;margin-bottom:24px;font-size:clamp(16px,1.2vw,20px);font-weight:650}.group-site .service-row{flex-direction:column;display:flex}.group-site .service-row .text-link{margin-top:auto;padding-top:24px}@media (width<=950px){.group-site .service-list{grid-template-columns:1fr}}.group-company-contact a{overflow-wrap:anywhere;border:0;margin-top:12px;padding:0;font-size:20px;display:block}.group-company-contact a:hover{color:var(--accent)}.group-company-contact a[href^=tel\:]{color:var(--muted);font-size:17px}.group-site .service-list{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=950px){.group-site .service-list{grid-template-columns:1fr}}.installation-site .hero-photo{filter:brightness(.55)}.installation-site .hero-with-photo:after{background:linear-gradient(90deg,#081215cc 0%,#08121580 55%,#08121525 100%),linear-gradient(#0000 30%,#081215b3)}.contact-form.is-sent>:not(h3):not(.form-status){display:none}.contact-form.is-sent .form-status{border-left:3px solid var(--accent);color:#edf1f2;background:#17262b;margin-top:24px;padding:24px;font-size:18px}.cf-turnstile{margin-bottom:16px}.about-location a:hover,.site-footer p a:hover{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.document-page .section{max-width:1160px;margin:auto;padding-left:6%;padding-right:6%}.document-page h1{margin-top:18px}.document-content,.document-news{max-width:850px;color:var(--muted);margin-top:40px;line-height:1.85}.document-content h2,.document-news h2{color:#edf1f2;margin:36px 0 18px;font-size:26px}.document-content h3{color:#edf1f2;margin:24px 0 14px;font-size:20px}.document-content p{margin:14px 0}.document-content a{text-underline-offset:4px;text-decoration:underline}.document-intro{color:var(--muted);margin-top:24px}.document-news article{border-top:1px solid #34484d;padding:12px 0 28px}.document-page .button{margin-top:24px}.document-content ul,.document-content ol{padding-left:24px}
