, 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); })(); Sports Communication | »Æ´óÏɸßÊÖÂÛ̳

»Æ´óÏɸßÊÖÂÛ̳

Skip to main content

Sports Communication

Undergraduate Program On Campus

What You'll Learn

Be a voice that brings sports teams, fans, and communities together.

A sports communication major from »Æ´óÏɸßÊÖÂÛ̳ equips you to thrive in one of today's fastest-growing media careers. Build connections and solve problems to support athletes and the communities that love them.

Make creative decisions about your team's brand. Write and speak with integrity about the sports you love. Graduate ready to lead the conversation in any sports environment.

At Calvin, you'll find:

  • Hands-on courses that explore every aspect of sports communications. Your classes cover public relations, crisis communication, broadcast journalism, and media production.
  • Internships and other practical opportunities. You'll get experience in the field before you graduate.
  • A deeply Christian perspective. Build the confidence and skills to speak truth into difficult ethical questions in the sports world. 
  • Loading...

Faculty

Garth Pauley

Professor
2011–present: Professor, Department of Communication, »Æ´óÏɸßÊÖÂÛ̳2005–2011: Associate Professor, Department of Communication, Calvin College1998–2005: Assistant Professor, Department of