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

ÃÛÌÒapp

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); })(); Weddings Event Services | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Weddings

Looking for your perfect venue in the Grand Rapids area? ÃÛÌÒapp’s diverse facilities and lush campus could provide the perfect setting for your perfect day.

Ìý

Top venues

University Chapel

With a round stage, soaring acoustics and ornate pipe organ, the Chapel provides an intimate and magnificent setting to make your wedding day one to remember.

Prince Conference Center

The Prince Conference Center provides a wonderful, stress-free environment. The scenic Willow Room can seat up to 170 guests for a ceremony, and the elegant Great Hall can seat up to 272 guests for a dinner reception.

Covenant Fine Arts Center

The Recital Hall, outfitted with remarkable wood acoustics and compact seating, or the auditorium, with its grand stage and balcony section, are ideal locales for large ceremonies. The communal meeting spaces of the Covenant Fine Arts Center also provide intermittent refreshment-serving space or a full reception to-do.

Ìý

Start Planning