, 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); })(); Overnight Accommodations | °ÄÃÅÁùºÏ²Ê¿ª½±¼Ç¼×ÊÁÏ

°ÄÃÅÁùºÏ²Ê¿ª½±¼Ç¼×ÊÁÏ

Skip to main content

Overnight Accommodations

A comfortable looking bed
Note: Road closures on campus for the Calvin Classic 5k on Saturday, October 5.

Experience the difference.

Looking for a home away from home just got easier. Our beautifully appointed overnight accommodations include 66 guest rooms, 3 King Suites, and comfortable amenities. Enjoy our quiet setting at Calvin Ecosystem Preserve & Native Gardens, and a one-of-a-kind hospitality experience.

Ìý

Details & amenities

Single King Rooms
  • King bed with queen sleeper sofa
Double Queen Rooms
  • 2 queen beds
Accessible King Suite
  • King bed with sleeper sofa
  • All suites have a mini kitchenette and larger living area
  • Two rooms have bathtubs with benches
  • One room has a power recliner and roll-in shower
  • Raised toilet seats and grab bars

  • Complimentary continental breakfast
    Ìý
    • Available daily between 6:00 a.m.–10 a.m.
  • Coffee available 24 hours a day at the front desk
  • On-site fitness center and pool, open Monday-Friday for Summer 2023 (please note that hours may be limited. See Venema Aquatic Center for pool hours).
  • Cable television
  • Free Wireless Internet access (Wi-Fi)
  • On-site coin-operated guest laundry facilities
  • Hair dryers, irons and full size ironing boards
  • Sofa sleepers in King Rooms and King Suites
  • Portable cribs available upon request

Reserve a group of 4 or more rooms— with just three easy-access floors, a generous lobby, and continental breakfast, Prince lodging offers the space needed for a family wedding weekend, traveling team, or professional association group with efficiency and comfort in mind. Reservations now open for West Michigan Home and Garden Show, Grand Rapids Boat Show, and World of Winter Festival.

Discounts apply for: