:root{font-family:system-ui,Arial,sans-serif;color:#142944;background:#fff;font-size:16px;line-height:1.55;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}img{max-width:100%;display:block}a{color:inherit}button{font:inherit}.container{width:min(1200px,calc(100% - 40px));margin-inline:auto}.narrow{max-width:790px}.skip{position:absolute;top:-60px;left:16px;background:#fff;padding:8px;z-index:100}.skip:focus{top:8px}.topbar{background:#061b3b;color:#d6e7fa;font-size:.84rem}.topbar .container{display:flex;justify-content:space-between;padding-top:7px;padding-bottom:7px}.topbar a{text-decoration:none;font-weight:700}.header{background:#fff;border-bottom:1px solid #dce7f2;position:sticky;top:0;z-index:20}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font:800 1.4rem system-ui,Arial,sans-serif;letter-spacing:-.055em;color:#0a2d5d;text-decoration:none;display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.logo b{color:#1574c9}.mark{display:grid;place-items:center;background:#0c50a0;color:#fff;width:31px;height:31px;border-radius:7px;font-size:1.08rem;font-weight:800;letter-spacing:0}.desktop-nav{display:flex;align-items:center;gap:25px}.desktop-nav a{font-size:.92rem;font-weight:700;text-decoration:none}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:#0a67bd}.desktop-nav .nav-cta{background:#0b62b6;color:#fff;padding:11px 17px;border-radius:5px}.desktop-nav .nav-cta:hover{background:#073d78;color:#fff}.mobile-menu{display:none}.hero{background:#071e42;color:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.07fr .93fr;min-height:530px;align-items:stretch;gap:42px}.hero-copy{padding:75px 0 57px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:800;color:#8ac4ff;margin:0 0 14px}.eyebrow.blue{color:#0a66b8}.hero h1,.page-intro h1,.article-hero h1{font:800 clamp(2.65rem,5.1vw,5.15rem)/1.06 system-ui,Arial,sans-serif;letter-spacing:-.06em;margin:0 0 22px}.lead{font-size:1.12rem;color:#d7e7f6;max-width:610px;line-height:1.7;margin:0 0 28px}.buttons{display:flex;gap:11px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;background:#0b62b6;color:#fff;border:1px solid #0b62b6;padding:13px 21px;border-radius:5px;font-weight:800;text-decoration:none;min-height:48px;transition:background .15s}.button:hover{background:#096ab9}.button-outline{background:transparent;border-color:#7da9d7}.button-outline:hover{background:#ffffff19}.button-light{background:#fff;border-color:#fff;color:#07396f}.button-light:hover{background:#d9eafa}.hero-foot{margin:42px 0 0;color:#9ebbd7;font-size:.87rem}.hero-photo{position:relative;align-self:stretch;min-height:420px}.hero-photo:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#071e42 0%,transparent 30%)}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-photo span{position:absolute;bottom:17px;right:15px;z-index:2;background:#071e42ad;color:#e0eaf5;font-size:.7rem;padding:5px 8px;border-radius:3px}.section{padding:78px 0}.section h2,.band h2,.contact-strip h2{font:800 clamp(2rem,3.5vw,3.25rem)/1.15 system-ui,Arial,sans-serif;letter-spacing:-.05em;margin:0 0 20px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-head h2{margin:0}.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.panel{border:1px solid #dbe7f2;border-radius:7px;padding:27px;background:#fff}.panel .num{font:800 2rem system-ui,Arial,sans-serif;color:#4775a2}.panel h3{font:800 1.35rem system-ui,Arial,sans-serif;letter-spacing:-.035em;margin:14px 0 8px}.panel p{color:#526982;line-height:1.65;min-height:104px}.panel a,.text-link{font-weight:800;color:#0b65b7;text-decoration-thickness:1px;text-underline-offset:5px}.band{background:#0a3772;color:#fff;padding:62px 0}.band-inner,.contact-strip .container{display:flex;justify-content:space-between;gap:35px;align-items:center}.band h2{max-width:710px}.band p:not(.eyebrow){color:#d4e5f6;max-width:670px;margin-bottom:0}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:76px;align-items:center}.split p{max-width:600px;color:#526982;line-height:1.72}.quote-card{background:#f0f6fc;border:1px solid #d8e7f7;padding:35px;border-radius:8px}.quote-card strong{font:800 1.2rem system-ui,Arial,sans-serif}.quote-card ul{padding-left:22px;margin-bottom:0;line-height:2}.pale{background:#f2f7fc}.article-card{display:block;background:#fff;border:1px solid #dbe6f1;border-radius:8px;padding:28px;text-decoration:none;transition:transform .15s,box-shadow .15s}.article-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px #072c5616}.article-card small{color:#0a69b9;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.article-card h2,.article-card h3{font:800 1.35rem system-ui,Arial,sans-serif;letter-spacing:-.035em;line-height:1.3;margin:14px 0}.article-card p{color:#536a82}.article-card span{color:#0b66b9;font-weight:800}.contact-strip{background:#071e42;color:#fff;padding:50px 0}.contact-strip h2{font-size:2rem;margin:0 0 5px}.contact-strip p{color:#bed3e9;margin:0}.footer{background:#031630;color:#d6e5f4;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:45px}.footer-logo{color:#fff}.footer-logo b{color:#8ac4ff}.footer-grid p{max-width:300px;color:#a8c2dc}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-grid strong{color:#fff;margin-bottom:5px}.footer-grid a{text-decoration:none}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #234161;margin-top:45px;padding-top:18px;color:#91abc5;font-size:.84rem}.page-intro,.article-hero{background:#081f44;color:#fff;padding:65px 0}.page-intro h1,.article-hero h1{font-size:clamp(2.55rem,5vw,4.3rem)}.page-intro p:not(.eyebrow),.article-hero p:not(.eyebrow){font-size:1.1rem;color:#cfdfef;line-height:1.7}.model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.model{border:1px solid #dae6f2;border-radius:7px;padding:26px;background:#fff}.model span{color:#0a66b8;text-transform:uppercase;letter-spacing:.09em;font-weight:800;font-size:.75rem}.model h2{font-size:2rem;margin:10px 0}.model p{color:#526982;margin:0;line-height:1.6}.info-callout{margin-top:35px;padding:31px;background:#eaf4ff;border-left:4px solid #1676ca}.info-callout strong{font:800 1.3rem system-ui,Arial,sans-serif}.info-callout p{max-width:650px}.steps{display:grid;gap:14px}.steps div{border:1px solid #c9dff3;background:#fff;border-radius:6px;padding:17px;display:flex;align-items:center;gap:20px;font-weight:700}.steps b{font:800 1.5rem system-ui,Arial,sans-serif;color:#1980d2}.faq-list{border-top:1px solid #dce7f1}.faq-item{border-bottom:1px solid #dce7f1;padding:19px 0}.faq-item summary{cursor:pointer;font:800 1.1rem system-ui,Arial,sans-serif;list-style:none;display:flex;justify-content:space-between;gap:18px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:'+';color:#1978c7}.faq-item[open] summary:after{content:'−'}.faq-item p{color:#526982;line-height:1.7;max-width:700px;margin:15px 0 3px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.article-hero .back{display:inline-block;margin-bottom:40px;color:#bed9f2;font-weight:700;text-decoration:none}.article-hero .date{color:#9dbbd8;font-size:.9rem}.article-body{max-width:760px;font-size:1.06rem;line-height:1.82}.article-body p{margin:0 0 23px}.article-body h2{font-size:1.65rem;margin:38px 0 15px}.sources{border-top:1px solid #dce7f1;margin-top:36px;padding-top:20px;display:grid;gap:7px;font-size:.9rem}.sources a{color:#0c64ae}.article-cta{margin-top:40px;background:#eaf4ff;padding:30px;border-radius:7px}.article-cta h2{margin:0 0 8px}.article-cta .button{margin-top:5px}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contact-card{background:#f0f6fc;border:1px solid #d8e7f5;border-radius:7px;padding:32px;min-width:0}.contact-card>span{color:#365f87;font-weight:800}.contact-card h2{font-size:1.55rem;margin:14px 0}.big-link{font:800 clamp(1.1rem,2.4vw,1.65rem) system-ui,Arial,sans-serif;color:#0c62ad;overflow-wrap:anywhere}.contact-card p,.contact-details p{color:#536982}.contact-details{margin-top:30px;padding-top:22px;border-top:1px solid #e0e9f3}#commercial,#residentiel{scroll-margin-top:82px}
@media(max-width:980px){.desktop-nav{gap:12px}.desktop-nav a{font-size:.81rem}.hero-grid{gap:15px}.hero-photo{min-height:340px}.three,.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split{gap:30px}}
@media(max-width:760px){.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;list-style:none;font-weight:800;color:#0b54a0;padding:10px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:45px;background:#fff;border:1px solid #dce7f1;box-shadow:0 14px 24px #0d315321;padding:16px;min-width:225px;display:grid;gap:14px}.mobile-menu a{text-decoration:none;font-weight:700}.hero-grid{display:flex;flex-direction:column;gap:0}.hero-copy{padding:54px 0 36px}.hero-photo{min-height:250px;max-height:320px}.hero-photo:before{display:none}.split,.footer-grid{grid-template-columns:1fr}.three,.model-grid,.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.band-inner,.contact-strip .container{align-items:flex-start;flex-direction:column}.panel p{min-height:0}}
@media(max-width:560px){.container{width:min(100% - 32px,1200px)}.header-inner{min-height:64px}.logo{font-size:1.15rem}.hero h1{font-size:2.6rem}.lead{font-size:1.02rem}.hero-foot{margin-top:30px}.section{padding:52px 0}.three,.two,.model-grid,.article-grid,.contact-grid{grid-template-columns:1fr}.page-intro,.article-hero{padding:49px 0}.quote-card{padding:22px}.footer{padding-top:45px}.footer-grid{gap:28px}.section-head{align-items:flex-start;flex-direction:column}.contact-strip h2{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button,.article-card{transition:none}}
.factory{background:#fff;scroll-margin-top:85px}.factory .section-head{align-items:end}.factory-lead{max-width:510px;color:#526982;line-height:1.65;margin:0}.factory-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.factory-gallery figure{margin:0;background:#f2f7fc;border:1px solid #dbe7f2;border-radius:7px;overflow:hidden}.factory-gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.factory-gallery figcaption{font-weight:800;padding:13px 17px;color:#193b61}.gallery-link{margin:24px 0 0;color:#526982}.gallery-link a{color:#0b65b7;font-weight:800}
@media(max-width:760px){.factory-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.factory .section-head{align-items:flex-start}}
@media(max-width:560px){.factory-gallery{grid-template-columns:1fr}.factory-lead{margin-top:8px}}
.hero-photo:before{display:none}.hero-photo img{object-fit:contain;background:#fff}

.home-maintenance{background:#e8f4ff;border-bottom:1px solid #c8e2f8;padding:32px 0}.home-maintenance-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.home-maintenance h2{font:800 clamp(1.45rem,2.6vw,2.2rem)/1.15 system-ui,Arial,sans-serif;letter-spacing:-.035em;margin:0 0 8px;color:#092e60}.home-maintenance p:not(.eyebrow){margin:0;color:#405b78;max-width:690px}.home-maintenance .eyebrow{margin-bottom:9px}.home-maintenance .button{flex:none}@media(max-width:760px){.home-maintenance-inner{align-items:flex-start;flex-direction:column;gap:18px}.home-maintenance{padding:27px 0}}
.sitemap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.sitemap-group{border:1px solid #d8e7f5;border-radius:7px;padding:27px;background:#f7fbff}.sitemap-group h2{font-size:1.35rem;margin:0 0 15px;color:#0a3567}.sitemap-group ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}.sitemap-group a{color:#0b60ab;font-weight:700;text-underline-offset:3px}.sitemap-group a:hover{color:#073d78}@media(max-width:900px){.sitemap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.sitemap-grid{grid-template-columns:1fr}.sitemap-group{padding:23px}}
.breadcrumbs{background:#f4f8fc;border-bottom:1px solid #e0eaf4;color:#47617d;font-size:.88rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:11px 0;margin:0}.breadcrumbs li:not(:first-child)::before{content:'›';margin-right:6px;color:#8da5bd}.breadcrumbs a{color:#0b5faa;text-underline-offset:3px}.breadcrumbs [aria-current=page]{font-weight:700;color:#28496b}.faq-category+.faq-category{margin-top:35px}.faq-category>h2{font-size:1.45rem;color:#113b6b;margin:0 0 16px;scroll-margin-top:110px}.faq-item[id],.article-body h2[id]{scroll-margin-top:115px}.guide-toc{background:#eaf4ff;border-left:4px solid #1574c9;padding:22px 25px;margin:25px 0;display:grid;gap:8px}.guide-toc strong{color:#0a3567}.guide-toc a{color:#0b60ab;font-weight:700;text-underline-offset:3px}.guide-toc a:hover{color:#073d78}
.related-reading{border-top:1px solid #dce7f1;margin-top:38px;padding-top:12px}.related-reading h2{margin:18px 0 10px}.related-reading ul{margin:0;padding-left:22px}.related-reading a{color:#0b60ab;font-weight:700;text-underline-offset:3px}
.footer-social,.profile-links{display:flex;align-items:center;gap:10px}.footer-social{margin-top:12px}.profile-links{margin-top:16px}.social-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;color:#aed5f7;text-decoration:none}.social-icon svg{display:block;width:25px;height:25px}.footer-social .social-icon:hover{color:#fff}.profile-links .social-icon{color:#0b62b6}.profile-links .social-icon:hover{color:#084784;background:#eaf4ff}.social-icon:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.contact-form-panel{background:#fff;border:1px solid #dce8f4;border-radius:14px;padding:clamp(24px,4vw,46px);box-shadow:0 8px 32px rgba(6,35,76,.06)}.contact-form-panel h2{margin:0 0 12px}.contact-form-panel>p{max-width:65ch}.contact-form-panel form{margin-top:26px}.form-field{display:flex;flex-direction:column;gap:8px;margin:0 0 20px}.form-field label{font-weight:700;color:#0a2448}.form-field input,.form-field textarea{width:100%;font:inherit;line-height:1.5;padding:12px 14px;border:1px solid #9cb2c9;border-radius:7px;background:#fff;color:#092144}.form-field input:focus-visible,.form-field textarea:focus-visible{outline:2px solid #126bb8;outline-offset:2px}.form-privacy{font-size:15px;line-height:1.55}.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{min-height:1.5em;font-weight:700;color:#0a457c}.contact-form-panel button:disabled{opacity:.55;cursor:wait}

.client-work{background:#f5f9fd;scroll-margin-top:85px}.client-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.client-gallery figure{margin:0;background:#fff;border:1px solid #dbe7f2;border-radius:7px;overflow:hidden;box-shadow:0 5px 16px rgba(7,30,66,.06)}.client-gallery img{display:block;width:100%;height:210px;object-fit:cover}.client-gallery figcaption{font-weight:800;padding:13px 15px;color:#193b61;line-height:1.35}@media(max-width:900px){.client-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.client-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.client-gallery img{height:190px}}@media(max-width:560px){.client-gallery{grid-template-columns:1fr}.client-gallery img{height:auto;aspect-ratio:4/3}}
.model-equipment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 34px}.model-equipment>div{background:#f2f7fc;border:1px solid #d8e7f5;border-radius:7px;padding:24px}.model-equipment h2{font-size:1.4rem;margin:0 0 9px}.model-equipment p{color:#526982;line-height:1.65;margin:0}@media(max-width:680px){.model-equipment{grid-template-columns:1fr}.model-equipment>div{padding:21px}}
.model-equipment .equipment-logo{display:block;width:234px;max-width:100%;height:auto;margin:4px 0 22px}.controller-photo{aspect-ratio:1.6;overflow:hidden;background:#fff;border:1px solid #d8e7f5;border-radius:5px;margin:0 0 18px}.controller-photo img{display:block;width:400%;max-width:none;height:auto}
.emissions-table-wrap{overflow-x:auto;margin:24px 0;border:1px solid #d8e7f5;border-radius:7px}.emissions-table-wrap:focus-visible{outline:2px solid #126bb8;outline-offset:2px}.emissions-table{width:100%;min-width:640px;border-collapse:collapse;text-align:left}.emissions-table th,.emissions-table td{padding:16px;border-bottom:1px solid #d8e7f5;vertical-align:top;line-height:1.5}.emissions-table thead{background:#eaf4ff;color:#0a3567}.emissions-table tbody th{width:140px;color:#0a3567}.emissions-table tbody tr:last-child th,.emissions-table tbody tr:last-child td{border-bottom:0}
.model-features{list-style:none;padding:14px 0 0;margin:16px 0 0;border-top:1px solid #dce8f4;display:grid;gap:8px;color:#284760;font-size:.91rem;line-height:1.45}.model-features li{padding-left:17px;position:relative}.model-features li::before{content:"•";position:absolute;left:0;color:#0b65b7;font-weight:800}
.model-photo{display:block;background:#f2f7fc;border:1px solid #e2ebf5;border-radius:5px;overflow:hidden;margin:-8px -8px 18px}.model-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.model .model-price{color:#0a3567;font-weight:800;margin-top:18px}.model-detail-link{display:inline-block;margin-top:10px;color:#0a62b0;font-weight:800;text-underline-offset:3px}.product-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,65px);align-items:start}.product-detail-photo{margin:0;border:1px solid #dce8f2;border-radius:7px;overflow:hidden;background:#f6f9fc}.product-detail-photo img{width:100%;height:auto}.product-detail-photo figcaption{padding:11px 18px;color:#526982;font-size:.85rem}.product-detail-copy h2{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.15;margin:0 0 15px}.product-detail-copy p,.product-detail-copy li{color:#405b74;line-height:1.7}.product-detail-copy ul{padding-left:22px}.product-price{display:grid;gap:4px;background:#eaf4ff;border-left:4px solid #1676ca;padding:20px;margin:26px 0}.product-price small{font-size:.84rem;color:#315b7d}.product-price strong{font-size:clamp(1.4rem,3vw,2rem);color:#083c73}.product-price span{font-size:.91rem;color:#405b74}.product-back{margin-top:22px}.product-back a{color:#0a62b0;font-weight:700}@media(max-width:800px){.product-detail{grid-template-columns:1fr}}
.product-detail-copy .product-download{margin:0 0 17px}.product-download a{display:inline-block;color:#0a62b0;font-weight:800;text-underline-offset:3px}.product-download a:hover{color:#073d78}
