Commercial HVAC & Low-Carbon Plant Design

We specialize in modernizing aging mechanical infrastructure and designing high-performance new systems. As part of our building mechanical engineering in BC, our approach prioritizes equipment that is straightforward to monitor, inherently energy-efficient under real climate loads, and easily maintained by your facility staff without proprietary restrictions.

Technical Scope:
  • Air-source and ground-source heating and cooling systems
  • Hydronic distribution, high-efficiency boiler plants, and central plant design
  • Heat recovery ventilation and energy recovery systems
  • Laboratory, industrial shop, and other specialty exhaust and extraction systems
  • Rooftop and packaged air handling units
  • Ductwork design and airflow balancing
  • Radon mitigation

Plumbing & Hydronic Infrastructure Design

Reliable fluid dynamics are the backbone of long-term building health. Integrated into our broader mechanical engineering services on Vancouver Island and across BC, our plumbing design process emphasizes proactive cross-discipline coordination to resolve spatial conflicts early in design, preventing costly site modifications.

Technical Scope:
  • Domestic hot and cold water distribution
  • Sanitary and storm drainage systems
  • Natural gas distribution piping
  • Compressed air and other specialty gas systems
  • Backflow prevention and cross-connection control

Integrated Fire Protection & Life Safety

We integrate fire suppression systems seamlessly into your architectural layout, ensuring complete safety code compliance without sacrificing usable spatial footprint.

Technical Scope:
  • Wet and dry sprinkler system design
  • Standpipe and fire pump systems
  • Fire and smoke damper coordination
  • Life-safety system integration with mechanical infrastructure

Energy Modelling & Sustainability Consulting

As a member of the BC Hydro Alliance of Energy Professionals, our mechanical engineering services translate complex carbon-reduction mandates and BC Energy Step Code targets into pragmatic, cost-effective design choices. We utilize simulation data to right-size mechanical equipment—preventing over-sizing expenses while helping clients unlock utility rebates to maximize project value.

Technical Scope:
  • Life cycle cost analysis
  • Building energy modelling
  • BC Energy Step Code compliance reporting
  • Utility incentive and rebate application support
  • Decarbonization and electrification strategy

Controls & Building Automation

We design modern direct digital control (DDC) and building automation systems that give facility operators simple, intuitive control over performance. Our hands-on involvement through commissioning ensures your controls deliver real-world energy savings.

Technical Scope:
  • DDC control system design
  • Building automation system integration
  • Sequence of operations development
  • Points list and network architecture design

Additional Info at a glance

Customizer > Aditional CSS

Make sure to assign CSS Class sticky-tabs-top to the Kadence tabs Element

/* STICKY TABS TOP */
.sticky-tabs-top .kt-tabs-wrap.kt-tabs-layout-tabs {
  overflow: visible;
}

.sticky-tabs-top .kt-tabs-wrap.kt-tabs-layout-tabs .kt-tabs-title-list {
  position: -webkit-sticky;
  position: sticky;
  top: var(--tabs-sticky-offset, 5px);
  z-index: 10;
  background: transparent !important;
  transition: top 0.15s ease; /* smooths the push-down/pull-up */
}

/* Glass background for tab bar */
.sticky-tabs-top .kt-tabs-wrap.kt-tabs-layout-tabs .kt-tabs-title-list::before {
  content: "";
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  bottom: -15px;
  border-radius: 20px;
  z-index: -1;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 100%);
  -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 100%);
  pointer-events: none;
}

.kb-header-sticky-wrapper,
.site-main-header-wrap {
  z-index: 9999;
}
/* END STICKY TABS TOP */

Snippets > All Snippets > Add New
Name: Sticky Tab Top Functions

Make sure the snippet is located in site footer (end of <body>)

<script>
(function() {
  // ---------------------------------
  // Live header-position watcher
  // Measures the header's actual bottom edge (accounts for reveal/hide transform)
  // and pushes the sticky tab bar down to sit just below it.
  // ---------------------------------
  const BASE_GAP = 5;   // gap when header is fully hidden
  const EXTRA_GAP = 5;  // small breathing room below the header when visible

  function findHeader() {
    return document.querySelector('.site-header-inner-wrap.kadence-sticky-header');
  }

  function updateStickyOffset() {
    const header = findHeader();
    if (!header) return;

    const rect = header.getBoundingClientRect();
    // If header is scrolled above the viewport (hidden), bottom will be <= 0
    const visibleBottom = Math.max(0, rect.bottom);

    const offset = visibleBottom > 0 ? visibleBottom + EXTRA_GAP : BASE_GAP;

    document.documentElement.style.setProperty('--tabs-sticky-offset', offset + 'px');
  }

  let ticking = false;
  function requestUpdate() {
    if (ticking) return;
    ticking = true;
    requestAnimationFrame(() => {
      updateStickyOffset();
      ticking = false;
    });
  }

  function initHeaderWatcher() {
    const header = findHeader();
    if (!header) {
      setTimeout(initHeaderWatcher, 500);
      return;
    }
    updateStickyOffset();
    window.addEventListener('scroll', requestUpdate, { passive: true });
    window.addEventListener('resize', requestUpdate);

    // Catch the header's own transform transitions (reveal/hide animation)
    new MutationObserver(requestUpdate).observe(header, {
      attributes: true,
      attributeFilter: ['style', 'class']
    });
  }
  initHeaderWatcher();

  // ---------------------------------
  // Kadence tabs smooth scrolling
  // Only for .sticky-tabs-top
  // ---------------------------------
  document.addEventListener('click', function (e) {
    const a = e.target.closest(
      '.sticky-tabs-top .kt-tabs-wrap .kt-tabs-title-list a.kt-tab-title, ' +
      '.sticky-tabs-top .kt-tabs-wrap .kt-tabs-accordion-title a.kt-tab-title'
    );
    if (!a) return;
    const wrap = a.closest('.kt-tabs-wrap');
    if (!wrap || !wrap.closest('.sticky-tabs-top')) return;
    e.preventDefault();
    const li = a.closest('.kt-title-item');
    if (li) li.click();
    setTimeout(() => {
      const content = wrap.querySelector('.kt-tab-inner-content[aria-hidden="false"]') || wrap;
      const isTopTabs = wrap.classList.contains('kt-tabs-layout-tabs');
      let headerOffset = 0;
      if (isTopTabs) {
        const tabBar = wrap.querySelector('.kt-tabs-title-list');
        const tabBarIsSticky = tabBar && getComputedStyle(tabBar).position === 'sticky';
        if (tabBarIsSticky) {
          const stickyTop = parseFloat(getComputedStyle(tabBar).top) || 0;
          const tabBarHeight = tabBar.offsetHeight;
          headerOffset = stickyTop + tabBarHeight;
        } else {
          headerOffset = document.body.classList.contains('admin-bar') ? 180 : 140;
        }
      } else {
        headerOffset = document.body.classList.contains('admin-bar') ? 180 : 140;
      }
      const y = content.getBoundingClientRect().top + window.scrollY - headerOffset;
      window.scrollTo({
        top: Math.max(0, Math.round(y)),
        behavior: 'smooth'
      });
      if (location.hash && /^#tab-/i.test(location.hash)) {
        history.replaceState(null, '', location.pathname + location.search);
      }
    }, 60);
  });
})();
</script>

No additional Notes

Lina