, but this code // executes before the first paint, when

Âé¶¹Çø

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Brian Scharp | Âé¶¹Çø

Âé¶¹Çø

Skip to main content

Brian Scharp

Adjunct Instructor

Biography

Scharp is a senior level business and marketing leader with more than 25 years successful experience driving results for world-class, category leading organizations through strategic planning with a human-centered focus.

Currently, he is the Chief Strategy Officer for , an award-winning marketing and communications firm headquartered in Grand Rapids. Previously, Scharp was a member of the senior executive team for a global, faith-based, non-profit organization, . Scharp has worked with global brands including HarperCollins Publishers, Miller Knoll, Ford Motor Company, Harvard University, Templeton Religion Trust and Water for Good.

He's an Effie Award winner, the global symbol of recognition for marketing effectiveness and proudly serves as Vice President of Programming on the board for .

If he’s not working or teaching, he’s probably out exploring the world on a bike.

Education

  • PhD (abd currently) – North Central University 
  • MBA – Western Michigan University 
  • BA – Journalism and Advertising – Liberty University
  • BS – Business and Marketing – Liberty University 

Professional Experience

  • Chief Strategy Officer – Grey Matter Group
  • Chief Marketing Officer – Our Daily Bread Ministries
  • Marketing Director – Herman Miller
  • Vice President of Marketing – HarperCollins Publishers