Morbern Inc.


.bmc18-nav–item {
display: block;
font-family: sans-serif;
line-height: 1em;
.bmc18-nav {
margin-bottom: 1em;
.bmc18-banner–main {
display: block;
width: 100%;
border-bottom: solid 0.25em #fff;
.bmc18-nav–item {
text-align: center;
padding: 0.5em;
font-weight: bold;
text-decoration: none;
background-color: #ec3b9a;
color: #fff;
border-bottom: solid 0.25em #fff;
transition-property: background-color;
transition-duration: 0.2s;
.bmc18-nav–item:hover {
background-color: #39b54a;
color: #fff;
@media screen and (min-width: 480px) {
.bmc18-nav {
display: table;
width: 100%;
table-layout: fixed;
.bmc18-banner–main {
/*border-bottom: solid 0.5em #fff;*/
.bmc18-nav–row {
display: table-row;
.bmc18-nav–item {
display: table-cell;
vertical-align: middle;
border: solid 0.5em #fff;
.bmc18-nav–row > .bmc18-nav–item:first-child {
border-left: 0;
.bmc18-nav–row > .bmc18-nav–item:last-child {
border-right: 0;

Morbern’s coated fabrics end up on everything from office chairs to snowmobiles (Photograph by Johnny C.Y. Lam)

Look down at the chair you’re sitting in. If you’re in a car, on the bus, at the office or in a restaurant, you’re likely sitting on a coated fabric from Morbern Inc. And though you’re probably not on a snowmobile or in a hot tub, the Montreal-based upholstery manufacturer supplies fabric for those, too. “Basically anywhere you put your butt, that’s where we sell,” jokes CEO Mark Bloomfield.

In Montreal in the 1950s, when Bloomfield’s grandfather, Morris, founded the company in what was then the textile capital of the world, vintage butts would find themselves in saddles and upholstered chairs. “Back then, they knitted the fabrics themselves and added a vinyl plastic film with glue,” says Bloomfield, who started working in his family business at the age of 15. “These days are totally different.”

Namely, Morbern’s offerings have been transformed by technology. “Morbern’s quite an old company, so there’s always a ton of room to modernize and improve,” says president Eric Lamontagne. It now imports rather than knits the fabrics itself, for example, and then Morbern engineers get to work. “We coat [the fabric] to produce vinyl or urethane or polypropylene, finish them aesthetically and then sell them to various industries,” says Bloomfield. Morbern makes about 50 different coated fabrics that can be customized by colour, pattern and finish in about 3,000 different ways. More than 400 employees work mostly in warehouses in Montreal and Ontario (60 staff work in the U.S., and a dozen more in Asia and Europe).

If Morbern is doing its job, regular folk probably won’t notice their chair fabric much at all. But when a fabric isn’t working, they’ll absolutely notice. Bloomfield tells this story about one client who realized they had a car seat-cover problem: “Three-quarters of cars have dark interiors, so drivers of those cars didn’t notice, but the other quarter have light interiors that, when you happen to sit down in a pair of new, dark denim, it will actually stain the vinyl.” The client came to Morbern desperately needing a fast solution. “We worked with the customers and our engineers to create a highly cleanable, denim-resistant topcoat that didn’t stain.” This went first into cars, but also into nightclubs and restaurants as other industries took notice.

Since Bloomfield, with both science and commerce degrees in his pocket, started full-time in 1991, problem-solving like this has become Morbern’s calling card. Their MorCare product, for example, was created specifically for the health care industry to be able to withstand the strong cleaners necessary in hospitals. (Since then, Morbern has made some 15 million yards of it.) Allsport was an innovation made for personal watercraft, like Sea-Doos, which had a problem with water seeping through stitches and seams. Morbern invented an all-way stretch coated fabric that needed no sewn seams—and eliminated any entry point for unwanted water.

MorGreen products, meanwhile, are environmentally friendly, 100% post-consumer waste and renewable materials that require less energy and water to make. But the truth is sustainability isn’t a buzzword at Morbern—it has always been in its mandate. One of the first in the field to do so, the company long ago eliminated heavy metals from its products. It works hard to control its emissions and even improve the air quality.

“Morbern seems to be most successful in making the most difficult products,” says Lamontagne. In his wildest engineering dreams, what is the craziest coated fabric innovation he can imagine? “If money and imagination had no limit, I’d like to invent a smart vinyl that has the ability to adapt itself to its environment. Imagine a vinyl that could adjust its own temperature or change colour with a click of a button.” “Or,” adds Bloomfield, “maybe something that could repair itself and grow back together.” If anyone can make it happen, it will be Morbern.

a.bmc18-actionlink {
display: block;
text-align: center;
padding: .8em;
font-size: 1.2em;
font-family: sans-serif;
color: #fff;
background-color: #EC3B9A;
font-weight: 700;
text-decoration: none;
border-radius: 4px;
transition-property: background-color;
transition-duration: .2s

a.bmc18-actionlink:hover {
background-color: #39b54a

Even more of Canada’s Best Managed Companies »

// API calls for recent posts to the ‘best-managed-companies’ tag. Grabs five of the given posts at random. NOTE: Post IDs are hard-coded below in `eligiblePosts`
‘use strict’;
var bodyClass = document.getElementsByTagName(‘body’)[0].getAttribute(‘class’);
var container = document.querySelector(‘#dynamicPosts’);
// tag id for ‘best-managed-companies’
// var tagID = 351657;
var postCount = 5;
var exclude = parseInt(( bodyClass.indexOf(‘postid’) >= 0 ? isolateID(bodyClass)[1] : 0));
var eligiblePosts = [1079843,1079845,1079849,1079851,1079853,1079855,1079857,1079859,1079861,1079863,1079865,1079867,1079869,1079873,1079875,1079877,1079879,1079881,1079885,1079887,1079889,1079891,1079893,1079895,1079897,1079899,1079901,1079903,1079905,1079907,1079909,1079911,1079913,1079915,1079917,1079919,1079921,1079925,1079923,1079927,1079929,1079931,1079933,1079935];
var chosenPosts = arrayRandomSubset(eligiblePosts, postCount, exclude); // subset of eligiblePosts, see function below
var endpoint = ‘’;
endpoint += ‘include=’ + chosenPosts.join(‘,’);
endpoint += ‘&_embed’;

fetch ( endpoint )
return response.json();
.then( function(data){
.catch(function( err ){

function postsRender(data){

// Define Post Elements
// post container
var thePost = document.createElement(‘div’);
// visual holder
var theVisual = document.createElement(‘div’);
// visual link
var theImgLink = document.createElement(‘a’);
// text holder
var theText = document.createElement(‘div’);
// the image
var theImage = document.createElement(‘img’);
theImage.setAttribute(‘src’, post._embedded[‘wp:featuredmedia’][0].source_url);
theImage.setAttribute(‘alt’, post._embedded[‘wp:featuredmedia’][0].alt_text);
// the headline
var theHed = document.createElement(‘h1’);
theHed.innerHTML = ‘‘ + post.title.rendered + ‘‘;
// the dek
var theDek = document.createElement(‘div’);
theDek.innerHTML = post.excerpt.rendered;
// the spacer
var theDivider = document.createElement(‘hr’);
//tack it all together

// return the wordpress postID from the body class
function isolateID( string ){
var pattern = /postid-(d+)?/;
return string.match(pattern);

* From a given array, provide a subset
* @param arr — the array from which to read the values
* @param n — the number of results required
* @param excl — a value to exclude from the results

function arrayRandomSubset(arr, n, excl){
let out = [];
// for the specified count, loop over the given array, select values randomly, and add them to the output array, but only if they aren’t already included.
// NOTE: we temporarily increase the length of the loop to output an array of length n + 1. This is so that if there is an `excl` value provided
for ( var i = 0; i < n + 1; i++ ){
// select a random position in the array
let r = parseInt( Math.random() * arr.length );
// if the value at position `r` isn’t already in the output, add it
if ( out.indexOf(arr[r]) < 0 ) {
// if the value IS already in the output, decrement the loop to try again.
} else {
// if the excluded value is not in the output, just trim to `n` results
if ( out.indexOf(excl) < 0 ) {
return out.splice(0, n);
// if it IS in the output, remove it.
} else {
let e = out.splice(out.indexOf(excl), 1);
return out;

The post Morbern Inc. appeared first on Canadian Business – Your Source For Business News.


Please enter your comment!
Please enter your name here