, 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); })(); Geology, Geography, and Environment | Â鶹Çø

Â鶹Çø

Skip to main content
School of STEM

Geology, Geography, and Environment

Explore the richness of Earth and its peoples in a Christian learning community.

Join a group of highly-motivated, inquisitive students to examine, investigate and analyze earth systems. You'll study with professors who bring years of experience and research opportunities, and a distinctly Christian viewpoint to the classroom. Get ready to dive in to an active scientific community.

At Calvin, you'll serve God and one another through creation care in the classroom, the lab, the field, and across the globe. You'll marvel at God’s creation through everyday encounters with God’s incredible world. And you'll graduate ready to lead in fields as diverse as community planning, conservation science, and land management.

Explore your academic options here, or join us on , , and the .

Explore Programs

Environmental Science and Studies Majors, Minor

Delivery Mode
On Campus
Degree Options
Major
Minor

Geography Major, Minor

Delivery Mode
On Campus
Degree Options
Major
Minor

Geology Major (BA, BS), Minor

Delivery Mode
On Campus
Degree Options
Major
Minor

GIS Graduate Certificate for Local Government

Delivery Mode
Online
Degree Options
Graduate Certificate

Delivery Mode
Online
Degree Options
MS

Sustainability Designation

Delivery Mode
On Campus
Degree Options
Emphasis

Study Off-campus

Image
Root Glacier

Alaska Public Lands

On this course, student will learn about the diverse biogeography of Alaska, diverse cultural relationships with Alaskan land, competing demands for Alaskan lands and resources, and ways that federal agencies mediate the ensuing conflicts.

Image
DeathValley_2023_Cr

Geology of Death Valley and Joshua Tree National Parks

This course is an introduction to the geology and resources of the desert Southwest through a 10-day tour of classic sites including Death Valley and Joshua Tree national parks as well as Lake Mead and Hoover Dam.

Upcoming Events