/* Generated by build.py; edit the source stylesheets. */



:root{--ink:#142f39;--muted:#5d6f74;--green:#3f996d;--lime:#d3e6b1;--paper:#f7f8f4;--line:#dce3dd;--light:#edf2ea;--white:#fff;--max:1440px;--heading:Manrope,Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:123.75px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{color:inherit}a,button{cursor:pointer}img,svg{vertical-align:middle}img{max-width:100%;display:block}button{border:0}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-family:var(--heading);font-weight:600;line-height:1.14;letter-spacing:-.045em}h1{font-size:clamp(47.25px,5.5vw,87.75px)}h2{font-size:clamp(36px,3.6vw,56.25px)}h3{font-size:27px}p+p{margin-top:20.25px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3.375px solid var(--green);outline-offset:5.625px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2.25px solid var(--green);outline-offset:2.25px}::selection{background:var(--lime);color:var(--ink)}[hidden]{display:none!important}.wrap{max-width:var(--max);margin:0 auto;padding:0 49.5px}.section{padding-top:112.5px;padding-bottom:112.5px}.kicker{display:flex;align-items:center;gap:11.25px;font-size:12.375px;letter-spacing:.13em;font-weight:bold;line-height:1.5;text-transform:uppercase}.kicker:before{content:'';width:7.875px;height:7.875px;flex-shrink:0;background:var(--green);border-radius:50%}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:56.25px;margin-bottom:47.25px}.section-top .kicker{margin-bottom:22.5px}.section-top>p{max-width:438.75px;color:var(--muted);font-size:19.125px;line-height:1.8}.muted{color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:20.25px;font-size:15.75px;font-weight:bold;border-bottom:1.125px solid var(--ink);padding-bottom:6.75px}.text-link svg{width:20.25px;height:20.25px;transition:transform .2s}.text-link:hover svg{transform:translate(3.375px,-3.375px)}.button{display:inline-flex;align-items:center;justify-content:center;gap:29.25px;min-height:58.5px;padding:15.75px 25.875px;background:var(--ink);color:var(--white);font-size:14.625px;font-weight:bold;line-height:1.5;border-radius:3.375px;transition:background .2s,transform .2s}.button:hover{background:#24515c;transform:translateY(-2.25px)}.button svg{width:20.25px;height:20.25px;flex-shrink:0}.button.lime{background:var(--lime);color:var(--ink)}.button.lime:hover{background:#e0edca}.button.outline{color:var(--ink);background:transparent;border:1.125px solid var(--line)}.button.outline:hover{background:var(--light)}.actions{display:flex;align-items:center;gap:31.5px;flex-wrap:wrap}.skip-link{position:fixed;top:-112.5px;left:22.5px;z-index:100;background:var(--ink);color:white;padding:13.5px}.skip-link:focus{top:11.25px}
.site-header{position:sticky;top:0;z-index:30;background:rgba(247,248,244,.97);border-bottom:1.125px solid var(--line);backdrop-filter:blur(15.75px)}.header-inner{height:99px;display:flex;align-items:center;justify-content:space-between;gap:40.5px}.brand{display:inline-flex;align-items:center;gap:11.25px;line-height:1;flex-shrink:0}.brand-icon{width:40.5px;height:40.5px;display:grid;place-items:center;background:var(--green);color:white;border-radius:3.375px;font-family:var(--heading);font-weight:800;letter-spacing:-.11em;font-size:23.625px;padding-right:2.25px}.brand-type{font-family:var(--heading);font-weight:800;letter-spacing:-.075em;font-size:32.625px}.brand-type span{font-weight:600;letter-spacing:-.06em;color:var(--green)}.header-nav{display:flex;align-items:center;gap:33.75px;margin-left:auto}.header-nav>a,.nav-drop>summary{font-size:14.625px;line-height:1.5;font-weight:bold;white-space:nowrap;list-style:none}.header-nav>a:hover,.nav-drop>summary:hover,.header-nav a[aria-current=page]{color:var(--green)}.nav-drop>summary::-webkit-details-marker{display:none}.nav-drop>summary{display:flex;align-items:center;gap:5.625px;cursor:pointer}.nav-drop>summary svg{width:14.625px;height:14.625px}.nav-drop{position:relative}.nav-drop[open]>summary svg{transform:rotate(180deg)}.drop-panel{position:absolute;top:40.5px;left:-27px;width:360px;padding:15.75px;background:white;border:1.125px solid var(--line);border-radius:5.625px;box-shadow:0 15.75px 45px #142f3914;display:grid}.drop-panel a{font-size:14.625px;line-height:1.4;padding:12.375px 13.5px;border-radius:3.375px}.drop-panel a:hover{background:var(--light);color:var(--green)}.drop-panel>a:first-child{font-weight:bold;border-bottom:1.125px solid var(--line);border-radius:0;margin-bottom:7.875px}.header-tools{display:flex;align-items:center;gap:27px}.language{font-size:12.375px;display:flex;align-items:center;gap:9px}.language .active{font-weight:bold}.language a{color:var(--muted)}.language a:hover{color:var(--green)}.header-tools .button{min-height:47.25px;padding:11.25px 19.125px;gap:19.125px;font-size:13.5px}.menu-toggle{display:none;padding:10.125px;background:transparent}.menu-toggle svg{width:25.875px;height:25.875px}
.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:54px;padding-top:56.25px;padding-bottom:56.25px;align-items:center}.hero-copy{padding:28.125px 0}.hero .kicker{font-size:11.25px;letter-spacing:.11em;margin-bottom:32.625px}.hero h1{font-size:clamp(54px,5.4vw,85.5px);line-height:1.1;letter-spacing:-.06em;max-width:753.75px}.hero .lead{max-width:511.875px;font-size:19.125px;color:var(--muted);line-height:1.85;margin-top:29.25px;margin-bottom:36px}.hero .actions .text-link{font-size:13.5px}.hero-location{margin-top:60.75px;display:flex;align-items:center;gap:9px;font-size:10.125px;font-weight:bold;letter-spacing:.12em;color:var(--muted)}.hero-location svg{width:15.75px;height:15.75px}.hero-image{position:relative;min-height:641.25px;align-self:stretch;overflow:hidden;border-radius:4.5px;background:var(--ink)}.hero-image>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 45%}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#142f3900 55%,#071f2b9e)}.photo-top{position:absolute;z-index:1;top:28.125px;left:28.125px;display:flex;align-items:center;gap:10.125px;background:#f7f8f4ef;padding:10.125px 13.5px;color:var(--ink);font-size:11.25px;font-weight:bold;letter-spacing:.025em;border-radius:2.25px}.photo-top svg{width:16.875px;height:16.875px;color:var(--green)}.photo-bottom{position:absolute;z-index:1;left:33.75px;right:33.75px;bottom:33.75px;color:white}.photo-bottom h2{font-size:30.375px;letter-spacing:-.04em;max-width:337.5px;line-height:1.2}.photo-tags{display:flex;flex-wrap:wrap;gap:7.875px;margin-top:19.125px}.photo-tags span{font-size:10.125px;line-height:1.3;padding:6.75px 10.125px;border:1.125px solid #ffffff70;border-radius:2.25px;background:#142f394d}.photo-corner{position:absolute;top:90px;right:29.25px;width:50.625px;height:50.625px;border-top:1.125px solid #ffffff80;border-right:1.125px solid #ffffff80;z-index:1}.sector-strip{border-top:1.125px solid var(--line);border-bottom:1.125px solid var(--line);display:flex;gap:39.375px;justify-content:space-between;align-items:center;padding-top:28.125px;padding-bottom:28.125px}.sector-strip>.kicker{font-size:10.125px;color:var(--muted);max-width:168.75px}.sectors{display:flex;gap:50.625px;font-family:var(--heading);font-size:14.625px;font-weight:600}.sectors span{display:flex;align-items:center;gap:10.125px}.sectors svg{height:20.25px;width:20.25px;color:var(--green)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);column-gap:38.25px}.service-card{padding:32.625px 0 33.75px;border-top:1.125px solid var(--line);display:flex;flex-direction:column;min-height:284.625px;position:relative}.service-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.service-icon{width:40.5px;height:40.5px;display:grid;place-items:center;border:1.125px solid var(--line);border-radius:50%;color:var(--green)}.service-icon svg{width:20.25px;height:20.25px}.service-number{font-size:11.25px;font-weight:bold;color:#7d8c87}.service-card h3{font-size:22.5px;line-height:1.25;letter-spacing:-.035em;margin-bottom:13.5px;max-width:337.5px;transition:color .2s}.service-card p{font-size:14.625px;color:var(--muted);line-height:1.8;max-width:371.25px}.service-card .card-link{font-size:12.375px;font-weight:bold;margin-top:24.75px;display:flex;align-items:center;gap:14.625px}.service-card .card-link svg{height:16.875px;width:16.875px}.service-card:hover .card-link svg{transform:translate(3.375px,-3.375px)}.epc-section{background:var(--ink);color:white}.epc-inner{display:grid;grid-template-columns:1fr .9fr;gap:106.875px;align-items:center}.epc-inner .kicker{color:var(--lime);font-size:11.25px;margin-bottom:25.875px}.epc-inner .kicker:before{background:var(--lime)}.epc-inner h2{line-height:1.2;font-size:clamp(34.875px,3.4vw,52.875px)}.epc-inner p{color:#c5d3d5;font-size:16.875px;line-height:1.9;max-width:506.25px;margin-top:27px}.epc-inner .text-link{color:var(--lime);border-color:#d3e6b180;margin-top:33.75px;font-size:13.5px}.epc-stage{display:flex;gap:24.75px;padding:30.375px 0;border-top:1.125px solid #ffffff30}.epc-stage:last-child{border-bottom:1.125px solid #ffffff30}.stage-number{font-family:var(--heading);font-size:16.875px;color:var(--lime);padding-top:4.5px}.epc-stage h3{font-size:25.875px;line-height:1.4}.epc-stage p{font-size:14.625px;line-height:1.8;margin-top:7.875px;max-width:371.25px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:58.5px}.process-step{border-top:1.125px solid var(--line);padding-top:27px}.process-step .process-num{font-family:var(--heading);font-size:34.875px;font-weight:600;color:#759777;margin-bottom:37.125px;display:block}.process-step h3{font-size:22.5px;line-height:1.3;margin-bottom:16.875px}.process-step p{font-size:15.75px;color:var(--muted);line-height:1.85}.equipment-feature{background:var(--light);border-radius:4.5px;display:grid;grid-template-columns:1fr 1fr;padding:72px 78.75px;gap:39.375px;align-items:center}.equipment-feature .kicker{margin-bottom:22.5px}.equipment-feature p{color:var(--muted);max-width:472.5px;font-size:16.875px;margin-top:24.75px;line-height:1.9}.equipment-feature .text-link{margin-top:28.125px;font-size:13.5px}.equipment-illustration{display:flex;flex-direction:column;align-items:center;position:relative;padding:16.875px}.equipment-illustration>svg{width:258.75px;height:281.25px;max-width:100%;color:var(--ink)}.equipment-illustration>span{font-size:11.25px;color:var(--muted);letter-spacing:.06em;margin-top:20.25px;text-align:center}.equipment-illustration:before{content:'';width:292.5px;height:292.5px;border:1.125px solid #142f3912;border-radius:50%;position:absolute;top:5.625px}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:101.25px}.faq-layout .kicker{margin-bottom:24.75px}.faq-list{border-top:1.125px solid var(--line)}.faq-list details{border-bottom:1.125px solid var(--line)}.faq-list summary{font-family:var(--heading);font-size:16.875px;letter-spacing:-.02em;font-weight:600;list-style:none;padding:25.875px 36px 25.875px 0;cursor:pointer;position:relative;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:3.375px;top:23.625px;color:var(--green);font-size:24.75px;font-family:var(--body);font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:15.75px;line-height:1.9;color:var(--muted);padding:0 33.75px 27px 0}.cta{border-top:1.125px solid var(--line);padding-top:78.75px;padding-bottom:78.75px;display:grid;grid-template-columns:1.1fr 1fr;gap:67.5px;align-items:center}.cta .kicker{margin-bottom:23.625px}.cta h2{font-size:clamp(40.5px,4vw,63px)}.cta-right{padding-left:33.75px}.cta p{color:var(--muted);font-size:18px;line-height:1.85;max-width:427.5px;margin-bottom:28.125px}.site-footer{background:var(--ink);color:#fff;padding-top:67.5px}.footer-grid{display:grid;grid-template-columns:1.1fr .7fr .7fr 1fr;gap:56.25px;padding-bottom:56.25px}.site-footer .brand-type{color:white}.site-footer .brand-type span{color:var(--lime)}.site-footer .brand-icon{background:var(--lime);color:var(--ink)}.footer-description{font-size:13.5px;line-height:1.9;color:#beccce;margin-top:25.875px;max-width:281.25px}.footer-heading{font-size:11.25px;letter-spacing:.1em;color:var(--lime);text-transform:uppercase;margin-bottom:22.5px;font-weight:bold}.footer-links{display:grid;gap:11.25px;font-size:13.5px;color:#d2dcdd}.footer-links a:hover{color:var(--lime)}.footer-contact p{font-size:13.5px;color:#d2dcdd;line-height:1.9;margin-top:12.375px}.footer-contact a{font-size:13.5px;overflow-wrap:anywhere}.footer-contact a:hover{color:var(--lime)}.footer-bottom{border-top:1.125px solid #ffffff20;padding:24.75px 0;display:flex;justify-content:space-between;gap:22.5px;color:#afc1c5;font-size:11.25px}.footer-bottom nav{display:flex;gap:24.75px;flex-wrap:wrap}.footer-bottom a:hover{color:white}
.breadcrumb{padding-top:37.125px;display:flex;align-items:center;gap:11.25px;font-size:12.375px;color:var(--muted)}.breadcrumb a:hover{color:var(--green)}.breadcrumb svg{width:13.5px;height:13.5px}.page-hero{padding-top:61.875px;padding-bottom:73.125px;max-width:1125px}.page-hero .kicker{margin-bottom:28.125px}.page-hero h1{font-size:clamp(43.875px,4.8vw,73.125px);max-width:1125px;line-height:1.14}.page-hero .intro{font-size:21.375px;color:var(--muted);line-height:1.8;max-width:855px;margin-top:31.5px}.page-hero .actions{margin-top:33.75px}.page-hero.compact{padding-bottom:45px}.service-detail{display:grid;grid-template-columns:1fr 348.75px;gap:101.25px;padding-bottom:90px}.detail-main>p{color:var(--muted);font-size:18px;line-height:1.9;margin-top:25.875px}.detail-main>h2{font-size:38.25px;line-height:1.3}.detail-main>.kicker{margin-top:50.625px;margin-bottom:22.5px}.topic{padding:27px 0;border-top:1.125px solid var(--line)}.topic h3{font-size:23.625px;line-height:1.4;margin-bottom:14.625px}.topic p{font-size:16.875px;color:var(--muted);line-height:1.9}.detail-sidebar{background:var(--light);border:1.125px solid var(--line);border-radius:4.5px;padding:31.5px;align-self:start;position:sticky;top:135px}.detail-sidebar .kicker{font-size:11.25px;margin-bottom:22.5px}.detail-sidebar ul{padding:0;margin:0;list-style:none;display:grid;gap:18px}.detail-sidebar li{font-size:14.625px;color:var(--muted);display:flex;align-items:flex-start;gap:11.25px;line-height:1.7}.detail-sidebar li svg{height:18px;width:18px;flex-shrink:0;margin-top:3.375px;color:var(--green)}.detail-sidebar .button{margin-top:31.5px;width:100%;font-size:12.375px;gap:14.625px;padding-left:11.25px;padding-right:11.25px}.outcome{margin-top:31.5px;padding:31.5px;background:var(--white);border-left:3.375px solid var(--green)}.outcome .kicker{margin-bottom:16.875px}.outcome p{font-size:16.875px;line-height:1.8}.related-section{padding:56.25px 0;border-top:1.125px solid var(--line)}.related-section h2{font-size:29.25px;margin-bottom:33.75px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24.75px}.related-link{display:flex;align-items:center;justify-content:space-between;gap:22.5px;border:1.125px solid var(--line);padding:24.75px;font-size:14.625px;background:var(--white);border-radius:3.375px}.related-link:hover{border-color:var(--green)}.related-link svg{width:20.25px;height:20.25px;flex-shrink:0;color:var(--green)}.about-split{display:grid;grid-template-columns:1fr 1fr;gap:78.75px;padding-bottom:95.625px;align-items:center}.about-photo{height:495px;border-radius:4.5px;object-fit:cover;width:100%}.about-copy h2{font-size:38.25px;line-height:1.3;margin-bottom:28.125px}.about-copy>p{font-size:18px;color:var(--muted);line-height:1.9}.about-copy .text-link{margin-top:31.5px}.three-topics{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding-top:50.625px;padding-bottom:73.125px;border-top:1.125px solid var(--line)}.three-topics h3{font-size:25.875px;margin-bottom:18px}.three-topics p{font-size:15.75px;color:var(--muted);line-height:1.85}.three-topics .topic-index{color:var(--green);font-size:13.5px;display:block;margin-bottom:27px}
.catalogue-controls{display:flex;gap:10.125px;flex-wrap:wrap;margin:9px 0 40.5px}.filter-button{padding:10.125px 19.125px;font-size:13.5px;border:1.125px solid var(--line);border-radius:3.375px;background:transparent}.filter-button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.filter-button:hover{border-color:var(--green)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:29.25px;padding-bottom:39.375px}.product-card{background:white;border:1.125px solid var(--line);border-radius:4.5px;overflow:hidden;display:flex;flex-direction:column}.product-picture{height:196.875px;display:flex;align-items:center;justify-content:center;background:var(--light);position:relative}.product-picture>svg{width:112.5px;height:157.5px;color:var(--ink)}.product-picture>.product-brand{position:absolute;left:22.5px;top:19.125px;font-family:var(--heading);font-size:11.25px;font-weight:800;letter-spacing:.05em;color:var(--green)}.product-picture>.product-kind{position:absolute;bottom:13.5px;right:18px;font-size:9px;letter-spacing:.07em;color:var(--muted);text-transform:uppercase}.product-content{padding:25.875px;display:flex;flex-direction:column;flex:1}.product-content h2{font-size:22.5px;line-height:1.35;letter-spacing:-.025em;margin-bottom:14.625px}.product-content p{font-size:13.5px;color:var(--muted);margin-bottom:22.5px}.product-content .text-link{font-size:12.375px;border:0;justify-content:space-between;margin-top:auto}.catalogue-notice{font-size:13.5px;color:var(--muted);max-width:956.25px;padding:18px 0 40.5px}.commercial-panel{border:1.125px solid var(--line);background:var(--light);padding:39.375px;display:flex;gap:56.25px;justify-content:space-between;align-items:center;margin:22.5px 0 78.75px;border-radius:4.5px}.commercial-panel h2{font-size:31.5px;line-height:1.3;margin-bottom:16.875px}.commercial-panel p{font-size:15.75px;color:var(--muted);max-width:765px;line-height:1.85}.commercial-panel .button{flex-shrink:0}.product-detail{display:grid;grid-template-columns:.8fr 1fr;gap:78.75px;padding-bottom:90px;align-items:start}.product-display{min-height:416.25px;display:flex;align-items:center;justify-content:center;background:var(--light);border-radius:4.5px;position:relative}.product-display>svg{width:213.75px;height:303.75px}.product-display>span{position:absolute;bottom:22.5px;color:var(--muted);font-size:12.375px}.product-info .kicker{margin-bottom:22.5px}.product-info h2{font-size:33.75px;margin-bottom:27px}.product-info p{font-size:16.875px;color:var(--muted);line-height:1.9}.product-info .button{margin-top:33.75px}.product-info dl{display:grid;grid-template-columns:135px 1fr;gap:16.875px;font-size:14.625px;border-top:1.125px solid var(--line);padding-top:25.875px;margin-top:31.5px}.product-info dt{color:var(--muted)}.product-info dd{margin:0}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-bottom:101.25px}.contact-details{padding-top:9px}.contact-detail{border-top:1.125px solid var(--line);padding:28.125px 0}.contact-detail .kicker{margin-bottom:15.75px}.contact-detail>a{font-size:clamp(18px,2vw,25.875px);font-family:var(--heading);letter-spacing:-.035em;overflow-wrap:anywhere;line-height:1.5;display:block}.contact-detail a:hover{color:var(--green)}.contact-detail p{font-size:16.875px;line-height:1.9;color:var(--muted)}.contact-detail .secondary-email{font-size:14.625px;color:var(--muted);font-family:var(--body);letter-spacing:0;margin-top:11.25px}.contact-detail .map-link{display:inline-flex;font-family:var(--body);font-size:12.375px;margin-top:16.875px;align-items:center;gap:11.25px;letter-spacing:0}.contact-detail .map-link svg{height:15.75px;width:15.75px}.contact-form{padding:40.5px;background:white;border:1.125px solid var(--line);border-radius:4.5px}.contact-form h2{font-size:30.375px;margin-bottom:32.625px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20.25px}.field{display:flex;flex-direction:column;gap:7.875px;margin-bottom:22.5px}.field label{font-size:13.5px;font-weight:bold}.field input,.field textarea,.field select{width:100%;color:var(--ink);background:var(--paper);border:1.125px solid #cfd8d1;border-radius:3.375px;min-height:51.75px;padding:12.375px 14.625px;font-size:15.75px}.field textarea{min-height:146.25px;resize:vertical;line-height:1.7}.field input::placeholder,.field textarea::placeholder{color:#687b80;font-size:13.5px}.form-note{font-size:12.375px;color:var(--muted);line-height:1.7;margin-top:15.75px;max-width:483.75px}.enquiry-result{margin-top:28.125px;border-top:1.125px solid var(--line);padding-top:28.125px}.enquiry-result h3{font-size:21.375px;line-height:1.5}.enquiry-result>p{font-size:13.5px;color:var(--muted);line-height:1.8;margin-top:13.5px}.enquiry-result textarea{background:var(--paper);border:1.125px solid var(--line);width:100%;min-height:225px;font-size:13.5px;line-height:1.75;padding:14.625px;resize:vertical;margin:19.125px 0}.enquiry-result .actions{gap:11.25px}.enquiry-result .button{min-height:47.25px;padding:11.25px 15.75px;font-size:12.375px;gap:11.25px}.copy-status{font-size:13.5px;color:var(--green);margin-top:13.5px;display:block}.simple-body{max-width:855px;padding-bottom:90px}.simple-body p{font-size:19.125px;line-height:1.9;color:var(--muted)}.simple-body h2{font-size:30.375px;margin:36px 0 22.5px}.simple-body .actions{margin-top:36px}.not-found{text-align:center;padding:112.5px 22.5px}.not-found .kicker{justify-content:center;margin-bottom:28.125px}.not-found p{margin-top:22.5px;color:var(--muted)}.not-found .button{margin-top:33.75px}
@media(min-width:1687.5px){:root{--max:1563.75px}.hero{gap:78.75px}.hero-image{min-height:697.5px}.hero h1{font-size:93.375px}}
@media(max-width:1237.5px){.wrap{padding-left:33.75px;padding-right:33.75px}.header-nav{gap:23.625px}.header-tools{gap:20.25px}.header-inner{gap:28.125px}.header-tools .button{display:none}.hero{gap:31.5px}.hero-image{min-height:596.25px}.hero h1{font-size:66.375px}.hero .lead{font-size:18px}.hero .actions{gap:22.5px}.hero .button{padding-left:19.125px;padding-right:19.125px;gap:19.125px}.sectors{gap:27px;font-size:12.375px}.epc-inner{gap:61.875px}.equipment-feature{padding:56.25px}.faq-layout{gap:56.25px}.footer-grid{gap:33.75px}.service-detail{gap:50.625px;grid-template-columns:1fr 320.625px}.contact-grid{gap:50.625px}.commercial-panel{gap:28.125px;flex-direction:column;align-items:flex-start}}
@media(max-width:900px){.section{padding-top:73.125px;padding-bottom:73.125px}.header-inner{height:83.25px}.header-nav{display:none;position:absolute;left:0;right:0;top:83.25px;margin:0;padding:22.5px 33.75px 31.5px;background:var(--paper);border-bottom:1.125px solid var(--line);max-height:calc(100dvh - 83.25px);overflow-y:auto;box-shadow:0 22.5px 33.75px #142f3910;align-items:stretch;gap:0}.header-nav.is-open{display:flex;flex-direction:column}.header-nav>a,.nav-drop>summary{font-size:16.875px;padding:14.625px 0;white-space:normal}.nav-drop>summary{justify-content:space-between}.drop-panel{position:static;width:auto;box-shadow:none;background:var(--light);margin:0 0 13.5px;border:0;padding:7.875px 11.25px}.drop-panel a{font-size:14.625px;padding:11.25px 13.5px}.menu-toggle{display:inline-block}.header-tools{gap:20.25px}.brand-type{font-size:29.25px}.brand-icon{height:37.125px;width:37.125px;font-size:21.375px}.hero{padding-top:36px;padding-bottom:36px;gap:28.125px}.hero .kicker{font-size:9px;margin-bottom:24.75px}.hero h1{font-size:51.75px}.hero .lead{font-size:15.75px;margin-top:22.5px;margin-bottom:28.125px}.hero .actions{align-items:flex-start;flex-direction:column;gap:22.5px}.hero-location{margin-top:33.75px;font-size:9px}.hero-image{min-height:556.875px}.photo-top{top:20.25px;left:20.25px;right:20.25px;font-size:9px;padding:10.125px;line-height:1.5}.photo-bottom{left:22.5px;right:22.5px;bottom:24.75px}.photo-bottom h2{font-size:25.875px}.photo-tags{gap:5.625px}.photo-tags span{font-size:9px}.sector-strip{padding-top:22.5px;padding-bottom:22.5px;gap:25.875px;align-items:flex-start}.sectors{display:grid;gap:13.5px}.section-top{gap:31.5px;align-items:flex-start}.section-top>p{font-size:15.75px;max-width:337.5px}.service-grid{grid-template-columns:repeat(2,1fr);column-gap:33.75px}.service-card{min-height:264.375px}.epc-inner{grid-template-columns:1fr 1fr;gap:39.375px}.epc-inner h2{font-size:36px}.epc-inner p{font-size:14.625px}.epc-stage{gap:16.875px}.epc-stage h3{font-size:21.375px}.epc-stage p{font-size:13.5px}.process-grid{gap:33.75px}.process-step h3{font-size:20.25px}.process-step p{font-size:14.625px}.equipment-feature{padding:39.375px;grid-template-columns:1.2fr .8fr}.equipment-feature h2{font-size:37.125px}.equipment-feature p{font-size:14.625px}.equipment-illustration>svg{width:185.625px;height:236.25px}.equipment-illustration:before{width:213.75px;height:213.75px;top:24.75px}.equipment-illustration>span{font-size:9px}.faq-layout{grid-template-columns:.8fr 1.2fr;gap:33.75px}.faq-list summary{font-size:14.625px}.faq-list p{font-size:13.5px}.cta{gap:28.125px;padding-top:61.875px;padding-bottom:61.875px}.cta-right{padding-left:11.25px}.cta p{font-size:15.75px}.cta h2{font-size:42.75px}.footer-grid{grid-template-columns:1fr 1fr;gap:45px}.footer-description{max-width:315px}.page-hero{padding-top:45px;padding-bottom:56.25px}.page-hero .intro{font-size:19.125px}.service-detail{grid-template-columns:1fr;gap:45px}.detail-sidebar{position:static}.detail-sidebar ul{display:grid;grid-template-columns:1fr 1fr;gap:22.5px}.detail-sidebar .button{width:auto;padding:13.5px 28.125px}.related-grid{gap:15.75px}.related-link{font-size:12.375px;padding:20.25px}.about-split{gap:39.375px}.about-photo{height:450px}.about-copy h2{font-size:31.5px}.about-copy>p{font-size:15.75px}.three-topics{gap:28.125px}.product-grid{grid-template-columns:repeat(2,1fr)}.product-detail{gap:39.375px}.contact-grid{grid-template-columns:1fr;gap:28.125px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:0 28.125px}.contact-form{padding:33.75px}.contact-detail>a{font-size:21.375px}.contact-detail p{font-size:14.625px}}
@media(max-width:652.5px){.wrap{padding-left:24.75px;padding-right:24.75px}.header-inner{gap:16.875px;height:78.75px}.header-nav{top:78.75px;padding-left:24.75px;padding-right:24.75px}.brand-type{font-size:25.875px}.brand-icon{width:33.75px;height:33.75px;font-size:19.125px}.header-tools{gap:13.5px}.language{font-size:11.25px;gap:6.75px}.menu-toggle{padding:7.875px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:28.125px;padding-bottom:33.75px;gap:31.5px}.hero-copy{padding:14.625px 0 0}.hero .kicker{font-size:9px;letter-spacing:.09em;margin-bottom:24.75px}.hero h1{font-size:clamp(45px,11vw,65.25px);line-height:1.1;max-width:573.75px}.hero .lead{font-size:16.875px;line-height:1.8;max-width:495px;margin-top:25.875px;margin-bottom:28.125px}.hero .actions{flex-direction:row;align-items:center;gap:24.75px}.hero .button{min-height:54px;font-size:12.375px;padding:13.5px 16.875px;gap:15.75px}.hero .actions .text-link{font-size:11.25px;gap:11.25px}.hero-location{font-size:9px;margin-top:31.5px}.hero-image{min-height:382.5px;width:100%;aspect-ratio:1.2}.hero-image>img{object-position:50% 45%}.photo-top{right:auto;font-size:10.125px}.photo-bottom h2{font-size:29.25px;max-width:303.75px}.photo-tags span{font-size:9px}.sector-strip{gap:24.75px;justify-content:flex-start}.sector-strip>.kicker{font-size:9px;width:101.25px;flex-shrink:0;line-height:1.8;align-items:flex-start}.sector-strip .kicker:before{margin-top:4.5px}.sectors{font-size:11.25px;gap:10.125px}.sectors span{gap:10.125px}.sectors svg{height:16.875px;width:16.875px}.section{padding-top:61.875px;padding-bottom:61.875px}.section-top{display:block;margin-bottom:33.75px}.section-top .kicker{margin-bottom:20.25px}.section-top>p{font-size:15.75px;margin-top:22.5px;max-width:100%}h2{font-size:36px}.service-grid{column-gap:23.625px}.service-card{min-height:275.625px;padding-top:24.75px;padding-bottom:28.125px}.service-meta{margin-bottom:22.5px}.service-icon{height:34.875px;width:34.875px}.service-icon svg{height:18px;width:18px}.service-card h3{font-size:19.125px;line-height:1.3;letter-spacing:-.035em;overflow-wrap:anywhere}.service-card p{font-size:13.5px;line-height:1.7}.service-card .card-link{font-size:11.25px;gap:9px;margin-top:20.25px}.service-number{font-size:10.125px}.epc-inner{grid-template-columns:1fr;gap:39.375px}.epc-inner .kicker{font-size:9px}.epc-inner h2{font-size:38.25px}.epc-inner p{font-size:15.75px;max-width:100%}.epc-stage{gap:24.75px;padding:27px 0}.epc-stage h3{font-size:25.875px}.epc-stage p{font-size:14.625px}.process-grid{grid-template-columns:1fr;gap:24.75px}.process-step{display:grid;grid-template-columns:39.375px 1fr;column-gap:22.5px;padding-top:23.625px}.process-step .process-num{font-size:24.75px;grid-row:1/3;margin:0;padding-top:2.25px}.process-step h3{font-size:21.375px;line-height:1.4;margin-bottom:9px}.process-step p{font-size:14.625px;grid-column:2}.equipment-feature{padding:33.75px 27px 29.25px;grid-template-columns:1fr;gap:28.125px}.equipment-feature h2{font-size:37.125px}.equipment-feature p{font-size:15.75px}.equipment-illustration{padding:5.625px}.equipment-illustration>svg{height:225px;width:191.25px}.equipment-illustration:before{height:236.25px;width:236.25px;top:0}.equipment-illustration>span{margin-top:11.25px;font-size:10.125px}.faq-layout{grid-template-columns:1fr;gap:33.75px}.faq-layout h2{font-size:36px}.faq-list summary{font-size:15.75px;padding-top:24.75px;padding-bottom:24.75px}.faq-list p{font-size:14.625px}.cta{grid-template-columns:1fr;gap:28.125px;padding-top:50.625px;padding-bottom:50.625px}.cta-right{padding:0}.cta p{font-size:16.875px;max-width:100%}.cta h2{font-size:45px}.footer-grid{gap:36px 22.5px;padding-bottom:39.375px;grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-description{max-width:100%;font-size:13.5px;margin-top:16.875px}.footer-contact{grid-column:1/-1}.footer-heading{margin-bottom:16.875px;font-size:10.125px}.footer-links{font-size:12.375px;gap:10.125px}.footer-contact>a{font-size:18px}.footer-contact p{font-size:13.5px;max-width:270px}.footer-bottom{display:grid;gap:13.5px;padding:22.5px 0;font-size:10.125px}.footer-bottom nav{gap:15.75px}.site-footer{padding-top:45px}.breadcrumb{padding-top:28.125px;font-size:11.25px;line-height:1.5;flex-wrap:wrap;gap:6.75px}.page-hero{padding-top:37.125px;padding-bottom:45px}.page-hero h1{font-size:clamp(37.125px,9vw,50.625px);line-height:1.18;overflow-wrap:anywhere}.page-hero .intro{font-size:18px;line-height:1.85;margin-top:24.75px}.page-hero .kicker{font-size:10.125px;margin-bottom:22.5px}.service-detail{gap:33.75px;padding-bottom:56.25px}.detail-main>h2{font-size:31.5px}.detail-main>p{font-size:15.75px;line-height:1.9}.topic h3{font-size:22.5px}.topic p{font-size:15.75px}.detail-sidebar{padding:27px}.detail-sidebar ul{grid-template-columns:1fr;gap:16.875px}.outcome{padding:25.875px}.outcome p{font-size:15.75px}.related-grid{grid-template-columns:1fr;gap:13.5px}.related-link{font-size:14.625px;padding:22.5px}.related-section{padding:39.375px 0}.related-section h2{font-size:28.125px}.about-split{grid-template-columns:1fr;gap:33.75px;padding-bottom:50.625px}.about-photo{height:337.5px}.about-copy h2{font-size:32.625px}.three-topics{grid-template-columns:1fr;gap:30.375px;padding-top:36px;padding-bottom:45px}.three-topics .topic-index{margin-bottom:13.5px}.three-topics h3{font-size:25.875px;margin-bottom:13.5px}.three-topics p{font-size:15.75px}.product-grid{grid-template-columns:1fr;gap:22.5px}.product-picture{height:213.75px}.product-content{padding:27px}.product-content h2{font-size:24.75px}.product-content p{font-size:14.625px}.catalogue-controls{gap:7.875px}.filter-button{font-size:11.25px;padding:10.125px 13.5px}.commercial-panel{padding:28.125px;margin-bottom:50.625px}.commercial-panel h2{font-size:30.375px}.commercial-panel .button{font-size:12.375px;max-width:100%;gap:13.5px}.product-detail{grid-template-columns:1fr;gap:33.75px;padding-bottom:56.25px}.product-display{min-height:326.25px}.product-display>svg{width:168.75px;height:247.5px}.product-info h2{font-size:32.625px}.product-info p{font-size:15.75px}.contact-grid{gap:16.875px;padding-bottom:61.875px}.contact-details{grid-template-columns:1fr}.contact-detail{padding:22.5px 0}.contact-detail>a{font-size:24.75px}.contact-form{padding:25.875px}.contact-form h2{font-size:28.125px;margin-bottom:27px}.field-row{grid-template-columns:1fr;gap:0}.field{margin-bottom:20.25px}.field input,.field select,.field textarea{font-size:18px}.field label{font-size:13.5px}.enquiry-result .actions{flex-direction:column;align-items:stretch}.simple-body p{font-size:16.875px}.simple-body{padding-bottom:56.25px}}
/* Original MONO palette and dot-matrix wordmark, reconstructed from supplied references. */
:root{--green:#007e96;--lime:#bce9e7;--light:#eaf2f1}
.brand-dots{width:41.625px;height:41.625px;fill:var(--green);flex-shrink:0}.brand-word{display:grid;gap:5.625px}.brand-name{font-family:var(--heading);font-size:25.875px;font-weight:800;letter-spacing:-.045em;white-space:nowrap}.brand-tagline{font-size:8.775px;font-weight:400;letter-spacing:.01em;line-height:1}.site-footer .brand-dots{fill:var(--lime)}.site-footer .brand-tagline{color:#c2d0d2}.sr-only{position:absolute;width:1.125px;height:1.125px;padding:0;margin:-1.125px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.diagnostics-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:95.625px;align-items:center;border-bottom:1.125px solid var(--line)}.diagnostics-copy .kicker{margin-bottom:27px}.diagnostics-copy p:not(.kicker){font-size:16.875px;line-height:1.9;color:var(--muted);margin-top:28.125px}.diagnostics-copy .text-link{margin-top:28.125px;font-size:13.5px}.diagnostic-viewer{border:1.125px solid var(--line);border-radius:4.5px;overflow:hidden;background:var(--white)}.diagnostic-controls{display:flex;padding:14.625px;gap:9px;border-bottom:1.125px solid var(--line)}.diagnostic-controls button{font-size:12.375px;padding:9px 18px;border-radius:3.375px;background:var(--paper);border:1.125px solid var(--line)}.diagnostic-controls button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.diagnostic-viewer img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#142f39}.diagnostic-viewer figcaption{font-size:11.25px;line-height:1.8;padding:16.875px 22.5px;color:var(--muted)}.process-section{padding-top:78.75px}.equipment-photo{margin:0 auto;width:258.75px;max-width:100%}.equipment-photo img{height:348.75px;width:100%;object-fit:cover;object-position:50% 65%;border-radius:4.5px}.equipment-photo figcaption{font-size:11.25px;color:var(--muted);text-align:center;margin-top:14.625px}.renewable-links{padding:16.875px 0 61.875px}.renewable-links h2{font-size:31.5px;margin-bottom:28.125px}
@media(max-width:1237.5px){.brand-dots{width:37.125px;height:37.125px}.brand-name{font-size:22.5px}.brand-tagline{font-size:7.875px}.diagnostics-section{gap:50.625px}}
@media(max-width:900px){.diagnostics-section{gap:39.375px}.diagnostics-copy h2{font-size:36px}.diagnostics-copy p:not(.kicker){font-size:14.625px}.equipment-photo{width:213.75px}.equipment-photo img{height:292.5px}.equipment-photo figcaption{font-size:9px}}
@media(max-width:652.5px){.brand-dots{width:34.875px;height:34.875px}.brand-name{font-size:20.25px}.brand-tagline{font-size:7.2px}.brand{gap:7.875px}.diagnostics-section{grid-template-columns:1fr;gap:33.75px}.diagnostics-copy p:not(.kicker){font-size:15.75px}.diagnostic-controls button{font-size:11.25px;padding:9px 14.625px}.diagnostic-viewer figcaption{font-size:10.125px;padding:14.625px 18px}.equipment-photo{width:258.75px}.equipment-photo img{height:292.5px}.equipment-photo figcaption{font-size:10.125px}.process-section{padding-top:50.625px}.renewable-links h2{font-size:28.125px}}
.retrotec-partner{display:flex;align-items:center;gap:33.75px;padding:24.75px 31.5px;background:white;border:1.125px solid var(--line);border-radius:4.5px;margin:0 0 39.375px}.retrotec-partner img{width:185.625px;height:auto;max-height:73.125px;object-fit:contain}.retrotec-partner p{font-family:var(--heading);font-size:15.75px;font-weight:600;line-height:1.5;padding-left:31.5px;border-left:1.125px solid var(--line)}.retrotec-feature-logo{width:191.25px;height:auto;max-height:67.5px;object-fit:contain;object-position:left;margin-bottom:27px}.product-picture{height:264.375px;background:#fff}.product-picture .catalogue-photo{width:100%;height:100%;padding:39.375px 29.25px 28.125px;object-fit:contain}.product-picture .product-brand{z-index:1}.product-display{background:white;border:1.125px solid var(--line);padding:36px}.product-display .product-main-image{width:auto;height:auto;max-width:95%;max-height:371.25px;object-fit:contain;margin-bottom:33.75px}.product-display>span{font-size:11.25px}.manufacturer-photo{width:382.5px}.manufacturer-photo img{height:393.75px;width:100%;object-fit:contain;object-position:center;background:#fff;padding:16.875px;border-radius:4.5px}.commercial-equipment-photo{object-fit:contain;background:#fff;padding:24.75px}
@media(max-width:900px){.retrotec-partner{gap:24.75px}.retrotec-partner p{font-size:13.5px;padding-left:22.5px}.retrotec-partner img{width:157.5px}.manufacturer-photo{width:258.75px}.manufacturer-photo img{height:320.625px}}
@media(max-width:652.5px){.retrotec-partner{padding:24.75px;gap:16.875px;flex-direction:column;align-items:flex-start}.retrotec-partner img{width:168.75px}.retrotec-partner p{border-left:0;padding-left:0;font-size:13.5px}.product-picture{height:258.75px}.product-picture .catalogue-photo{padding:36px 31.5px 22.5px}.product-display{padding:28.125px;min-height:348.75px}.product-display .product-main-image{max-height:292.5px}.retrotec-feature-logo{width:174.375px;max-height:56.25px}.manufacturer-photo{width:292.5px;max-width:100%}.manufacturer-photo img{height:337.5px}.commercial-equipment-photo{height:315px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* MONO Energy: professional engineering presentation. */
:root {
  --ink: #122f3d;
  --muted: #586d78;
  --green: #087d93;
  --lime: #bce8eb;
  --paper: #f5f7f8;
  --light: #edf3f5;
  --line: #d8e2e7;
  --max: 1485px;
}
body { background: var(--paper); }
h1,h2,h3,h4 { letter-spacing: -.035em; }
h2 { font-size: clamp(36px,3.3vw,49.5px); line-height: 1.22; }
.section { padding-top: 90px; padding-bottom: 90px; }
.kicker { font-size: 11.25px; letter-spacing: .12em; }
.button { font-size: 14.625px; min-height: 56.25px; border-radius: 2.25px; }
.button:hover { transform: none; }
.text-link { font-size: 14.625px; }
.utility-bar { background: var(--ink); color: #d9e7ed; }
.utility-inner { height: 38.25px; display: flex; align-items: center; justify-content: space-between; gap: 27px; }
.utility-contacts { display: flex; align-items: center; gap: 28.125px; }
.utility-contacts a { display: inline-flex; align-items: center; gap: 9px; font-size: 11.25px; line-height: 1.5; }
.utility-contacts svg { height: 13.5px; width: 13.5px; color: #8bc9d3; }
.utility-contacts a:hover { color: white; }
.utility-tag { font-size: 10.125px; letter-spacing: .07em; text-align: right; }
.site-header { background: #fff; backdrop-filter: none; box-shadow: 0 2.25px 11.25px #122f3d05; }
.header-inner { height: 94.5px; }
.header-nav>a,.nav-drop>summary { font-size: 14.625px; font-weight: 600; }
.brand-name { letter-spacing: -.04em; }
.drop-panel { border-radius: 2.25px; box-shadow: 0 15.75px 38.25px #122f3d12; }
.drop-panel a { font-size: 14.625px; line-height: 1.55; }
.hero-band { background: var(--ink); color: white; }
.hero-band .hero { padding-top: 58.5px; padding-bottom: 60.75px; gap: 65.25px; grid-template-columns: 1.05fr 1fr; }
.hero-copy { padding: 22.5px 0; }
.hero .kicker { color: #bddce4; font-size: 10.125px; line-height: 1.7; letter-spacing: .1em; margin-bottom: 28.125px; }
.hero .kicker:before { background: #7bc3d0; }
.hero h1 { font-size: clamp(48.375px,4.25vw,65.25px); line-height: 1.18; letter-spacing: -.04em; }
.hero .lead { color: #d0dfe6; font-size: 18px; line-height: 1.9; max-width: 573.75px; margin-top: 28.125px; margin-bottom: 33.75px; }
.hero .text-link { color: #eff7fa; border-color: #eff7fa80; font-size: 13.5px; }
.hero-location { color: #b4cbd5; font-size: 10.125px; margin-top: 38.25px; letter-spacing: .09em; }
.hero-image { min-height: 540px; border-radius: 2.25px; border: 1.125px solid #ffffff1a; }
.hero-image:after { background: linear-gradient(180deg,#122f3d08 45%,#071f2bd9); }
.photo-top { border-radius: 1.125px; top: 25.875px; left: 25.875px; font-size: 10.125px; letter-spacing: .05em; padding: 11.25px 14.625px; }
.photo-bottom { left: 31.5px; right: 31.5px; bottom: 30.375px; }
.photo-bottom h2 { font-size: 28.125px; max-width: 405px; line-height: 1.3; }
.photo-tags span { font-size: 10.125px; padding: 6.75px 9px; }
.photo-corner { display: none; }
.sector-strip { background: transparent; padding-top: 25.875px; padding-bottom: 25.875px; }
.sector-strip>.kicker { max-width: 202.5px; font-size: 10.125px; }
.sectors { font-size: 13.5px; gap: 33.75px; }
.section-top { gap: 73.125px; margin-bottom: 39.375px; }
.section-top>p { font-size: 16.875px; line-height: 1.9; max-width: 472.5px; }
.service-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 24.75px; }
.service-card { grid-column: span 4; min-height: 281.25px; border: 1.125px solid var(--line); padding: 29.25px; background: #fff; border-radius: 3.375px; transition: border-color .18s,box-shadow .18s; }
.service-card:nth-child(-n+4) { grid-column: span 6; min-height: 286.875px; }
.service-card:hover { border-color: #80b4bf; box-shadow: 0 9px 27px #122f3d07; }
.service-meta { margin-bottom: 22.5px; }
.service-icon { width: 42.75px; height: 42.75px; border: 0; border-radius: 3.375px; background: #eaf3f5; }
.service-icon svg { width: 23.625px; height: 23.625px; }
.service-number { font-size: 11.25px; letter-spacing: .08em; }
.service-card h3 { max-width: 100%; font-size: 22.5px; line-height: 1.35; letter-spacing: -.025em; }
.service-card:nth-child(-n+4) h3 { font-size: 24.75px; }
.service-card p { max-width: 100%; font-size: 15.75px; line-height: 1.85; }
.service-card .card-link { margin-top: auto; padding-top: 22.5px; font-size: 12.375px; }
.epc-inner { gap: 95.625px; }
.epc-inner h2 { font-size: clamp(36px,3.1vw,48.375px); line-height: 1.28; }
.epc-inner p { font-size: 16.875px; line-height: 1.9; }
.epc-stage h3 { font-size: 24.75px; }
.epc-stage p { font-size: 15.75px; }
.fire-feature { display: grid; grid-template-columns: .95fr 1.05fr; gap: 95.625px; align-items: center; border-bottom: 1.125px solid var(--line); }
.fire-copy>.kicker { margin-bottom: 24.75px; }
.fire-copy>p:not(.kicker) { font-size: 16.875px; color: var(--muted); line-height: 1.95; margin-top: 25.875px; max-width: 551.25px; }
.fire-copy>.text-link { margin-top: 29.25px; }
.fire-points { list-style: none; padding: 0; margin: 0; border-top: 1.125px solid var(--line); }
.fire-points li { padding: 27px 0; border-bottom: 1.125px solid var(--line); display: grid; grid-template-columns: 22.5px 1fr; gap: 19.125px; }
.fire-points li>svg { width: 21.375px; height: 21.375px; color: var(--green); margin-top: 4.5px; }
.fire-points h3 { font-size: 21.375px; line-height: 1.4; letter-spacing: -.02em; margin-bottom: 9px; }
.fire-points p { font-size: 15.75px; line-height: 1.85; color: var(--muted); }
.diagnostics-section { gap: 84.375px; }
.diagnostics-copy p:not(.kicker) { font-size: 16.875px; }
.diagnostic-controls button { font-size: 13.5px; }
.diagnostic-viewer figcaption { font-size: 12.375px; }
.process-step .process-num { color: var(--green); font-size: 31.5px; margin-bottom: 25.875px; }
.process-step h3 { font-size: 22.5px; line-height: 1.4; }
.process-step p { font-size: 15.75px; }
.equipment-feature { padding: 58.5px 67.5px; background: #eaf1f4; border: 1.125px solid var(--line); border-radius: 3.375px; }
.equipment-feature h2 { font-size: clamp(34.875px,3.1vw,48.375px); line-height: 1.25; }
.equipment-feature p { font-size: 16.875px; }
.equipment-photo figcaption { font-size: 12.375px; line-height: 1.7; }
.faq-layout { grid-template-columns: .85fr 1.15fr; gap: 84.375px; }
.faq-list summary { font-size: 15.75px; }
.faq-list p { font-size: 15.75px; }
.cta h2 { font-size: clamp(36px,3.3vw,48.375px); line-height: 1.25; }
.cta p { font-size: 16.875px; }
.cta-right { padding-left: 0; }
.site-footer { padding-top: 61.875px; }
.footer-description,.footer-links,.footer-contact p { font-size: 13.5px; }
.footer-links { line-height: 1.8; }
.breadcrumb { padding-top: 33.75px; font-size: 12.375px; }
.page-hero { padding-top: 47.25px; padding-bottom: 56.25px; }
.page-hero h1 { font-size: clamp(41.625px,4vw,59.625px); line-height: 1.22; letter-spacing: -.035em; }
.page-hero .intro { font-size: 19.125px; line-height: 1.85; max-width: 945px; margin-top: 25.875px; }
.detail-main>h2 { font-size: 34.875px; line-height: 1.35; }
.detail-main>p { font-size: 16.875px; }
.topic h3 { font-size: 23.625px; }
.topic p { font-size: 16.875px; }
.detail-sidebar { background: #eef3f6; border-radius: 3.375px; }
.outcome { border-radius: 2.25px; }
.contact-form { box-shadow: 0 9px 31.5px #122f3d04; }
.contact-detail>a { font-size: 23.625px; }
.contact-form .field label { font-size: 13.5px; }
.catalogue-controls { gap: 10.125px; }
.filter-button { font-size: 13.5px; padding: 11.25px 18px; border-radius: 2.25px; }
.product-card { border-radius: 3.375px; box-shadow: 0 3.375px 15.75px #122f3d03; }
.product-content h2 { font-size: 22.5px; line-height: 1.4; }
.product-content p { font-size: 14.625px; }
.product-kind { max-width: calc(100% - 36px); text-align: right; line-height: 1.5; }
.retrotec-partner { padding: 23.625px 30.375px; border-radius: 2.25px; }
.retrotec-partner p { font-size: 15.75px; }
.product-info h2 { font-size: 32.625px; }
.about-copy h2 { font-size: 34.875px; }
.simple-body p { font-size: 18px; }

/* Image viewports grow the equipment, while the existing frames keep their dimensions. */
.product-picture .catalogue-photo { padding: 13.5px 15.75px; transition: transform .35s ease; }
.product-display .product-main-image { display: block; }
.manufacturer-photo img { padding: 0; }
.commercial-equipment-photo { padding: 4.5px; }
.product-picture { overflow: hidden; }

/* Project guidance and technical content. */
.project-explorer { border-top: 1.125px solid var(--line); }
.project-explorer .section-top h2 { max-width: 776.25px; }
.project-choices { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1.125px solid var(--line); background: #fff; }
.project-choice { min-height: 85.5px; border: 0; border-right: 1.125px solid var(--line); background: #fff; padding: 24.75px; display: flex; align-items: center; gap: 15.75px; text-align: left; font-family: var(--heading); font-size: 15.75px; font-weight: 600; color: var(--ink); cursor: pointer; position: relative; transition: background .2s ease; }
.project-choice:last-child { border-right: 0; }
.project-choice>span { font-size: 11.25px; color: var(--muted); }
.project-choice>svg { width: 19.125px; height: 19.125px; margin-left: auto; flex-shrink: 0; }
.project-choice:after { content: ''; position: absolute; bottom: -1.125px; left: 0; right: 0; height: 3.375px; background: var(--green); transform: scaleX(0); transform-origin: left; transition: transform .25s ease; }
.project-choice[aria-selected=true] { background: #edf4f6; }
.project-choice[aria-selected=true]:after { transform: scaleX(1); }
.project-choice:hover { background: #f2f7f8; }
.project-panel { display: grid; grid-template-columns: 1.3fr .7fr; gap: 60.75px; padding: 45px; border: 1.125px solid var(--line); background: #fff; }
.project-choices:not([hidden])~.project-panel { border-top: 0; }
.project-panel h3 { font-size: 29.25px; line-height: 1.4; margin-bottom: 20.25px; }
.project-panel p { font-size: 15.75px; line-height: 1.9; color: var(--muted); }
.project-points { padding: 0; margin: 25.875px 0; list-style: none; }
.project-points li { display: flex; align-items: flex-start; gap: 12.375px; margin: 13.5px 0; font-size: 14.625px; line-height: 1.8; }
.project-points svg { color: var(--green); flex-shrink: 0; width: 18px; height: 18px; margin-top: 4.5px; }
.project-panel aside { padding: 31.5px; background: var(--light); align-self: start; }
.project-panel aside .kicker { color: var(--ink); font-size: 10.125px; }
.project-panel aside>.text-link { margin-top: 25.875px; }
.project-panel .project-links-label { margin-top: 31.5px; font-size: 11.25px; text-transform: uppercase; letter-spacing: .09em; color: var(--ink); }
.project-links { display: flex; flex-wrap: wrap; gap: 18px 27px; margin-top: 14.625px; }
.project-links .text-link { font-size: 13.5px; }
.testing-guidance { border-top: 1.125px solid var(--line); margin-top: 45px; }
.testing-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28.125px; }
.testing-card { padding: 36px; border: 1.125px solid var(--line); background: #fff; }
.testing-icon { width: 45px; height: 45px; color: var(--green); margin-bottom: 22.5px; }
.testing-icon svg { width: 36px; height: 36px; }
.testing-card h3 { font-size: 28.125px; line-height: 1.4; margin-bottom: 19.125px; }
.testing-card>p { font-size: 15.75px; line-height: 1.9; color: var(--muted); }
.testing-card .testing-prepare { color: var(--ink); margin-top: 28.125px; font-size: 13.5px; font-weight: 600; }
.testing-card .project-points { margin-bottom: 0; }
.testing-grid.single { grid-template-columns: 1fr; }
.testing-grid.single .testing-card { display: grid; grid-template-columns: 1fr 1fr; column-gap: 56.25px; }
.testing-grid.single .testing-icon { grid-column: 1/-1; }
.testing-grid.single h3,.testing-grid.single .testing-card>p:not(.testing-prepare) { grid-column: 1; }
.testing-grid.single .testing-prepare { grid-column: 2; grid-row: 2; margin: 0; align-self: start; }
.testing-grid.single .project-points { grid-column: 2; grid-row: 3; margin-top: 0; }
.testing-action { margin-top: 31.5px; }
.service-deliverables { border-top: 1.125px solid var(--line); }
.service-deliverables h2 { margin-top: 25.875px; }
.deliverables-intro { font-size: 16.875px; color: var(--muted); line-height: 1.9; max-width: 798.75px; margin-top: 22.5px; }
.deliverable-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 29.25px; margin-top: 39.375px; }
.deliverable-card { padding-top: 24.75px; border-top: 2.25px solid var(--line); }
.deliverable-number { color: var(--green); font-size: 12.375px; }
.deliverable-card h3 { font-size: 23.625px; line-height: 1.4; margin: 20.25px 0 15.75px; }
.deliverable-card p { font-size: 15.75px; line-height: 1.9; color: var(--muted); }

/* Restrained motion; no colour splits in the wordmark or headings. */
.reading-progress { position: fixed; top: 0; left: 0; width: 100%; height: 2.25px; background: var(--green); transform: scaleX(0); transform-origin: left; z-index: 1000; pointer-events: none; }
.reveal-ready { opacity: 0; transform: translateY(20.25px); transition: opacity .6s ease var(--reveal-delay,0ms),transform .6s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms); }
.reveal-ready.is-revealed { opacity: 1; transform: translateY(0); }
.motion-ready .hero-copy { animation: intro-copy .65s ease both; }
.motion-ready .hero-image { animation: intro-photo .8s cubic-bezier(.2,.7,.2,1) both; }
.motion-ready .project-panel:not([hidden]) { animation: project-enter .3s ease both; }
.text-link svg,.button svg,.card-link svg,.service-icon { transition: transform .25s ease; }
@media (hover:hover) and (pointer:fine) {
 .text-link:hover svg,.button:hover svg,.service-card:hover .card-link svg { transform: translate(3.375px,-3.375px); }
 .service-card:hover .service-icon { transform: translateY(-3.375px); }
 .product-card:hover .catalogue-photo,.product-card:focus-within .catalogue-photo { transform: scale(1.035); }
 .product-card { transition: box-shadow .25s ease,border-color .25s ease; }
 .product-card:hover { border-color: #8db2be; box-shadow: 0 11.25px 27px #122f3d0b; }
}
@keyframes intro-copy { from { opacity: 0; transform: translateY(13.5px); } to { opacity: 1; transform: translateY(0); } }
@keyframes intro-photo { from { opacity: 0; transform: translateX(18px); } to { opacity: 1; transform: translateX(0); } }
@keyframes project-enter { from { opacity: .35; transform: translateY(6.75px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width:900px) {
 .project-choice { padding: 20.25px 16.875px; font-size: 13.5px; gap: 10.125px; }
 .project-choice>svg { display: none; }
 .project-panel { grid-template-columns: 1fr; gap: 31.5px; padding: 31.5px; }
 .project-panel aside { padding: 27px; }
 .testing-card { padding: 27px; }
 .deliverable-grid { gap: 22.5px; }
 .deliverable-card h3 { font-size: 21.375px; }
}
@media (max-width:630px) {
 .project-choices { grid-template-columns: 1fr; }
 .project-choice { min-height: 65.25px; border-right: 0; border-bottom: 1.125px solid var(--line); font-size: 14.625px; padding: 19.125px 22.5px; }
 .project-choice:last-child { border-bottom: 0; }
 .project-choice>svg { display: block; }
 .project-choice:after { width: 3.375px; height: auto; left: -1.125px; top: 0; right: auto; bottom: 0; transform: scaleY(0); }
 .project-choice[aria-selected=true]:after { transform: scaleY(1); }
 .project-panel { padding: 25.875px; gap: 28.125px; }
 .project-panel h3 { font-size: 25.875px; }
 .project-panel aside { padding: 25.875px; }
 .project-points li { font-size: 14.625px; }
 .project-links { flex-direction: column; align-items: flex-start; }
 .testing-grid,.deliverable-grid { grid-template-columns: 1fr; }
 .testing-grid.single .testing-card { display: block; }
 .testing-grid.single .testing-prepare { margin-top: 28.125px; }
 .testing-grid.single .project-points { margin-top: 19.125px; }
 .testing-card h3 { font-size: 25.875px; }
 .testing-card { padding: 27px; }
 .deliverable-grid { gap: 31.5px; }
 .deliverable-card h3 { font-size: 24.75px; }
}
@media (prefers-reduced-motion:reduce) {
 .motion-ready .hero-copy,.motion-ready .hero-image,.motion-ready .project-panel:not([hidden]) { animation: none; }
 .reveal-ready { opacity: 1; transform: none; transition: none; }
 .catalogue-photo,.text-link svg,.button svg,.card-link svg,.service-icon,.product-card,.project-choice,.project-choice:after { transition: none !important; }
 .product-card:hover .catalogue-photo,.product-card:focus-within .catalogue-photo,.text-link:hover svg,.button:hover svg,.service-card:hover .card-link svg,.service-card:hover .service-icon { transform: none; }
}
@media (max-width:1237.5px) {
  .hero-band .hero { gap: 40.5px; }
  .hero h1 { font-size: 54px; }
  .hero .lead { font-size: 16.875px; }
  .hero-image { min-height: 528.75px; }
  .sectors { gap: 22.5px; font-size: 12.375px; }
  .section-top { gap: 42.75px; }
  .service-card { padding: 25.875px; }
  .service-card h3 { font-size: 21.375px; }
  .service-card:nth-child(-n+4) h3 { font-size: 23.625px; }
  .fire-feature,.diagnostics-section,.epc-inner { gap: 56.25px; }
  .equipment-feature { padding: 47.25px; }
}
@media (max-width:900px) {
  .header-inner { height: 83.25px; }
  .header-nav { top: 83.25px; background: #fff; }
  .header-nav>a,.nav-drop>summary { font-size: 16.875px; }
  .utility-inner { height: 36px; gap: 16.875px; }
  .utility-tag { font-size: 9px; }
  .utility-contacts { gap: 16.875px; }
  .utility-contacts a { font-size: 10.125px; }
  .section { padding-top: 67.5px; padding-bottom: 67.5px; }
  .hero-band .hero { gap: 31.5px; padding-top: 42.75px; padding-bottom: 45px; }
  .hero h1 { font-size: 43.875px; }
  .hero .kicker { font-size: 9px; }
  .hero .lead { font-size: 15.75px; line-height: 1.85; }
  .hero-image { min-height: 517.5px; }
  .hero .actions { gap: 24.75px; }
  .photo-bottom h2 { font-size: 24.75px; }
  .photo-tags span { font-size: 9px; }
  .service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 21.375px; }
  .service-card,.service-card:nth-child(-n+4) { grid-column: span 1; padding: 27px; min-height: 281.25px; }
  .service-card:last-child { grid-column: 1/-1; }
  .service-card h3,.service-card:nth-child(-n+4) h3 { font-size: 22.5px; }
  .service-card p { font-size: 14.625px; }
  .fire-feature { gap: 45px; }
  .fire-points h3 { font-size: 19.125px; }
  .fire-points p { font-size: 14.625px; }
  .fire-copy>p:not(.kicker) { font-size: 15.75px; }
  .epc-inner p { font-size: 15.75px; }
  .equipment-feature { padding: 38.25px; }
  .equipment-feature p { font-size: 15.75px; }
  .faq-layout { gap: 45px; }
  .page-hero h1 { font-size: 48.375px; }
  .page-hero .intro { font-size: 18px; }
}
@media (max-width:652.5px) {
  .utility-bar { display: none; }
  .header-inner { height: 81px; }
  .header-nav { top: 81px; }
  .hero-band .hero { display: flex; gap: 33.75px; padding-top: 32.625px; padding-bottom: 33.75px; }
  .hero-copy { padding: 5.625px 0 0; }
  .hero .kicker { font-size: 9px; line-height: 1.8; max-width: 326.25px; margin-bottom: 22.5px; }
  .hero h1 { font-size: clamp(38.25px,9vw,48.375px); line-height: 1.22; }
  .hero .lead { font-size: 16.875px; line-height: 1.85; margin-top: 23.625px; margin-bottom: 28.125px; }
  .hero .actions { flex-direction: column; gap: 22.5px; align-items: flex-start; }
  .hero .button { font-size: 13.5px; min-height: 55.125px; padding: 13.5px 20.25px; }
  .hero .text-link { font-size: 13.5px; }
  .hero-location { font-size: 9px; margin-top: 29.25px; }
  .hero-image { min-height: 360px; aspect-ratio: 1.1; }
  .photo-top { top: 20.25px; left: 20.25px; font-size: 9px; padding: 10.125px; }
  .photo-bottom { left: 23.625px; right: 23.625px; bottom: 25.875px; }
  .photo-bottom h2 { font-size: 25.875px; line-height: 1.3; }
  .photo-tags { gap: 5.625px; }
  .photo-tags span { font-size: 9px; padding: 6.75px 7.875px; }
  .sector-strip { gap: 22.5px; padding-top: 24.75px; padding-bottom: 24.75px; }
  .sector-strip>.kicker { max-width: 101.25px; font-size: 9px; }
  .sectors { font-size: 11.25px; gap: 11.25px; }
  .section { padding-top: 56.25px; padding-bottom: 56.25px; }
  h2 { font-size: 34.875px; }
  .section-top { margin-bottom: 31.5px; }
  .section-top>p { font-size: 15.75px; line-height: 1.9; }
  .service-grid { grid-template-columns: minmax(0,1fr); gap: 19.125px; }
  .service-card,.service-card:nth-child(-n+4),.service-card:last-child { grid-column: auto; min-height: 0; padding: 27px; }
  .service-card h3,.service-card:nth-child(-n+4) h3 { font-size: 23.625px; line-height: 1.4; }
  .service-card p { font-size: 15.75px; line-height: 1.8; }
  .service-card .card-link { font-size: 13.5px; }
  .service-meta { margin-bottom: 20.25px; }
  .epc-inner { gap: 33.75px; }
  .epc-inner h2 { font-size: 34.875px; }
  .epc-inner p { font-size: 15.75px; }
  .epc-stage h3 { font-size: 24.75px; }
  .epc-stage p { font-size: 15.75px; }
  .fire-feature { grid-template-columns: minmax(0,1fr); gap: 32.625px; }
  .fire-copy>p:not(.kicker) { font-size: 15.75px; line-height: 1.9; }
  .fire-points li { padding: 24.75px 0; gap: 15.75px; }
  .fire-points h3 { font-size: 20.25px; }
  .fire-points p { font-size: 15.75px; }
  .diagnostics-section { gap: 33.75px; }
  .diagnostics-copy p:not(.kicker) { font-size: 15.75px; }
  .process-step p { font-size: 15.75px; }
  .process-step h3 { font-size: 22.5px; }
  .equipment-feature { padding: 30.375px 25.875px; }
  .equipment-feature h2 { font-size: 34.875px; }
  .equipment-feature p { font-size: 15.75px; }
  .equipment-photo figcaption { font-size: 11.25px; }
  .faq-layout { gap: 31.5px; }
  .faq-list summary { font-size: 15.75px; }
  .faq-list p { font-size: 15.75px; }
  .cta h2 { font-size: 37.125px; }
  .cta p { font-size: 15.75px; }
  .page-hero { padding-top: 34.875px; padding-bottom: 42.75px; }
  .page-hero h1 { font-size: clamp(34.875px,8.4vw,43.875px); line-height: 1.24; }
  .page-hero .intro { font-size: 16.875px; line-height: 1.9; }
  .detail-main>h2 { font-size: 30.375px; }
  .detail-main>p,.topic p { font-size: 15.75px; }
  .topic h3 { font-size: 22.5px; }
  .filter-button { font-size: 12.375px; padding: 11.25px 14.625px; }
  .product-content h2 { font-size: 23.625px; }
  .retrotec-partner p { font-size: 14.625px; }
  .about-copy h2 { font-size: 31.5px; }
}

/* Three primary services and three building-design disciplines. */
:root { --presentation-scale: 1; }
.contact-form { position: relative; }
.form-trap { position: absolute; left: -11250px; top: 0; width: 1.125px; height: 1.125px; overflow: hidden; }
.form-privacy { display: block; width: fit-content; font-size: 13.5px; color: var(--muted); text-decoration: underline; text-underline-offset: 3.375px; margin-top: 15.75px; }
.form-error { padding: 15.75px; margin-top: 20.25px; color: #7e2727; background: #fff2f2; border: 1.125px solid #e8caca; font-size: 14.625px; }
.button:disabled { cursor: wait; opacity: .7; }
.request-received { min-height: 60vh; padding-top: 101.25px; padding-bottom: 101.25px; }
.request-received h1 { max-width: 1012.5px; margin-top: 28.125px; }
.request-received>p:not(.kicker) { max-width: 798.75px; margin: 28.125px 0 36px; color: var(--muted); }
.service-children { list-style: none; padding: 0; margin: 3.375px 0 13.5px 16.875px; border-left: 1.125px solid var(--line); }
.drop-panel .nav-service-branch>a { display: block; font-weight: 600; }
.drop-panel .service-children a { display: block; font-size: 13.5px; line-height: 1.6; padding: 10.125px 13.5px; }
.drop-panel { max-height: calc(100dvh - 202.5px); overflow-y: auto; }
.footer-links .service-children { margin-top: 9px; margin-bottom: 0; }
.footer-links .service-children a { display: block; font-size: 12.375px; line-height: 1.75; padding: 4.5px 0 4.5px 14.625px; }
.breadcrumb { flex-wrap: wrap; }
.primary-grid .service-primary { grid-column: span 6; min-height: 275.625px; }
.primary-grid .service-design { grid-column: 1/-1; min-height: 0; }
.primary-grid .service-primary h3 { font-size: 27px; }
.primary-grid .service-design>h3 { max-width: 100%; }
.service-disciplines { list-style: none; counter-reset: design; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 27px; padding: 0; margin: 27px 0 5.625px; }
.service-disciplines li { counter-increment: design; display: flex; align-items: flex-start; gap: 12.375px; font-size: 15.75px; line-height: 1.7; padding-top: 16.875px; border-top: 1.125px solid var(--line); }
.service-disciplines li:before { content: '0' counter(design); font-size: 11.25px; line-height: 2.3; color: var(--green); }
.supporting-services-label { font-size: 12.375px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); margin: 40.5px 0 19.125px; }
.secondary-grid .service-card { grid-column: span 4; min-height: 275.625px; }
.secondary-grid .service-card h3 { font-size: 22.5px; }
.topic-number { display: block; font-size: 12.375px; color: var(--green); letter-spacing: .08em; margin-bottom: 13.5px; }
.topic-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22.5px; margin-top: 25.875px; }
.topic-actions .button { min-height: 49.5px; font-size: 13.5px; }
.topic-actions .text-link { font-size: 13.5px; }
@media (max-width:1237.5px) {
 .service-disciplines { gap: 20.25px; }
 .service-disciplines li { font-size: 14.625px; }
 .primary-grid .service-primary h3 { font-size: 25.875px; }
 .secondary-grid .service-card h3 { font-size: 21.375px; }
}
@media (max-width:900px) {
 .drop-panel { max-height: none; }
 .primary-grid .service-primary { grid-column: span 1; }
 .primary-grid .service-design { grid-column: 1/-1; }
 .secondary-grid .service-card { grid-column: span 1; }
 .secondary-grid .service-card:last-child { grid-column: 1/-1; }
 .service-disciplines { grid-template-columns: 1fr; gap: 9px; }
 .service-disciplines li { padding-top: 11.25px; }
}
@media (max-width:652.5px) {
 .primary-grid .service-primary,.primary-grid .service-design,.secondary-grid .service-card { grid-column: auto; min-height: 0; }
 .primary-grid .service-primary h3 { font-size: 25.875px; }
 .secondary-grid .service-card h3 { font-size: 23.625px; }
 .service-disciplines { margin-top: 22.5px; }
 .service-disciplines li { font-size: 14.625px; line-height: 1.8; }
 .footer-links .service-children a { font-size: 13.5px; }
 .topic-actions { flex-direction: column; align-items: flex-start; }
}

:root{--presentation-scale:1.125}
