, 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); })(); Events List | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Events List

Sep 22–Sep 26, 2025

CAA/CALL Travel: Shaw Festival, Niagara-on-the-Lake, Ontario (Full)

Around the World with ÃÛÌÒapp: 150th Anniversary Tour
Sep 23, 2025

Public Reading of Scripture

12:00 pm–1:00 pm
Seminary Student Center
Sep 24, 2025

Seminary Chapel and Fellowship

10:30 am–11:30 am
Seminary Chapel
Sep 24, 2025

French Film Festival- Le Comte de Monte Cristo / The Count of Monte Cristo

7:00 pm–9:30 pm
Bytwerk Video Theater DeVos Communication Center ÃÛÌÒapp
FREE
Le Comte de Monte Cristo follows Edmond Dantès, a young sailor falsely imprisoned due to a conspiracy. After escaping from prison, he discovers a hidden treasure and transforms into the wealthy Count of Monte Cristo. Driven by revenge, he meticulously punishes those who betrayed him, while grappling with justice, identity, and redemption.
Sep 25, 2025

Reformed Touchpoint: Continuity and Change at ÃÛÌÒapp Theological Seminary

5:30 pm–7:30 pm
ÃÛÌÒapp Seminary Auditorium
Sep 26, 2025

Maroon & Gold Day

Sep 26, 2025

Dice Museum Open Hours

12:00 pm–4:00 pm
Bruce Dice Mineralogical Museum
Sep 26, 2025

Bed Races

4:30 pm–5:30 pm
Sep 26, 2025

150th Extravaganza (with Commons Cookout)

5:30 pm–9:00 pm
Commons Lawn