/* Globals */
 @font-face {
	 font-family: "Modula";
	 src: './Modula Regular.ttf' format("truetype");
}
/* Global fade-in animation */
.fade-in {
    opacity: 0;
    animation: fadeInEffect 1s ease-in forwards;
}

@keyframes fadeInEffect {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

 #borders {
	 background-image: url('https://www.coloradomesa.edu/images/png/century/images/branding/fancy-border.png');
	 width: 100%;
	 height: 100%;
	 max-height: 1080px;
	 min-height: 800px;
	 position: absolute;
	 background-size:contain;
	 background-position: center;
	 background-repeat: no-repeat;
	 left: 50%;
	 top: 50%;
	 transform: translate(-50%, -50%);
	 z-index: 1;
	 border-top: solid transparent 20px;
}
 @media screen and (max-width: 1400px) {
	 #borders {
		 opacity: 0%;
	}
}
 #overlay {
	 min-width: 100%;
	 min-height: 100%;
	 background-image: url('https://www.coloradomesa.edu/images/png/century/images/branding/noise.png');
	 background-size:cover;
	 background-position: center;
	 background-repeat: no-repeat;
	 position: absolute;
	 left: 0;
	 top: 0;
	 display: flex;
	 opacity: 50%;
	 box-shadow: 0px 0px 40px 40px #190A10;
	 z-index: -1;
}
 #background-image {
	 max-width: 1920px;
	 position: relative;
	 width: 100%;
	 height: 100%;
	 position: absolute;
	 left: 50%;
	 top: 50%;
	 background-size:cover;
	 background-position: center;
	 background-repeat: no-repeat;
	 box-shadow: inset 0px 0px 40px 40px #190A10;
	 background-image: url('https://www.coloradomesa.edu/images/png/century/images/branding/background.png');
	 transform: translate(-50%, -50%);
	 overflow: visible;
	 z-index: 0;
}
 body {
	 font-family: "Modula";
	 background: #2c3e50;
	 color: #ecf0f1;
	 margin: 0;
	 height: 100vh;
	 display: flex;
	 justify-content: center;
	 align-items: center;
	 overflow: hidden;
	 background-color: #190A10;
	 box-shadow: inset 0px 0px 30px 30px #190A10;
	 min-height: 1080px;
	 background-size:cover;
	 background-position: center;
	 background-repeat: no-repeat;
}
 #background-container {
	 position: relative;
	 min-width: 100%;
	 min-height: 100%;
	 display: flex;
	 justify-content: center;
	 align-items: center;
}
 #site-header {
	 position: absolute;
	 top: 0;
	 left: 0;
	 width: 100%;
	 height: 100px;
	 display: flex;
	 align-items: center;
	 padding: 0 20px;
	 z-index: 300;
	 background: #240B17;
	 backdrop-filter: blur(30px);
	 mix-blend-mode: luminosity;
}
 .logo-container img {
	 display: flex;
	 align-items: center;
	 gap: 15px;
	 max-width: 220px;
}
 @keyframes fadeIn {
	 from {
		 opacity: 0;
	}
	 to {
		 opacity: 1;
	}
}
 @keyframes fadeOut {
	 from {
		 opacity: 1;
	}
	 to {
		 opacity: 0;
	}
}
/* Rotating Stacked Images */
 .stacked-images {
	 position: relative;
	 width: 500px;
	 aspect-ratio: 1 / 1;
	 transition: all ease-in 400ms;
	 z-index: 1;
}
 @media only screen and (max-width: 600px) {
	 .stacked-images {
		 width: 400px;
	}
}
 .shadow, .border-spin, .base {
	 position: absolute;
	 inset: 0;
	 background-size: contain;
	 background-position: center;
	 background-repeat: no-repeat;
}
 .shadow {
	 background-image: url('https://www.coloradomesa.edu/images/png/century/images/branding/100-shadow.png');
	 z-index: 1;
	 mix-blend-mode: overlay;
}
 .border-spin {
	 background-image: url('https://www.coloradomesa.edu/images/png/century/images/branding/city-border-spin.png');
	 animation: spinCounterClockwise 40s linear infinite;
	 transform-origin: center;
	 z-index: 2;
}
 .base {
	 background-image: url('https://www.coloradomesa.edu/images/png/century/images/branding/base-filled.png');
	 z-index: 3;
}
/* Spin Animation */
 @keyframes spinCounterClockwise {
	 from {
		 transform: rotate(0deg);
	}
	 to {
		 transform: rotate(-360deg);
	}
}
/* Clock */
 .flipclock {
	 display: flex;
	 justify-content: center;
	 padding: 5px 0px;
	 margin-top: 10px;
	 border-radius: 18px;
	 z-index: -1;
	 box-sizing: border-box;
	 background-color:rgba(0,0,0,0.2);
	 margin-bottom: 30px;
}
 .flipclock * {
	 box-sizing: inherit;
}
 .leaf {
	 display: flex;
	 flex-direction: column;
	 perspective: 300px;
	 margin: 0 10px;
}
 .top, .bottom, .leaf-front, .leaf-back {
	 position: relative;
	 display: block;
	 height: 50px;
	 width: 70px;
	 background-color: #351825;
	 color: white;
	 overflow: hidden;
	 border-color: #2C1722;
}
 .top span, .bottom span, .leaf-front span, .leaf-back span {
	 position: absolute;
	 left: 50%;
	 width: 100%;
	 text-align: center;
	 font-family: "Modula", sans serif;
	 font-size: 85px;
	 line-height: 100px;
	 transform: translateX(-50%);
}
 .top, .leaf-front {
	 border-top-left-radius: 18px;
	 border-top-right-radius: 18px;
	 margin-bottom: 1px;
	 border-bottom-style: solid;
	 border-bottom-width: 2px;
}
 .top span, .leaf-front span {
	 top: 0;
}
 .leaf-front {
	 position: absolute;
	 z-index: 10;
}
 .bottom, .leaf-back {
	 border-bottom-left-radius: 18px;
	 border-bottom-right-radius: 18px;
	 border-top-style: solid;
	 border-top-width: 1px;
}
 .bottom span, .leaf-back span {
	 bottom: 0;
}
 .leaf-back {
	 position: absolute;
	 top: 50px;
	 z-index: 10;
}
 @media screen and (max-width: 600px) {
	 .flipclock {
		 padding: 20px 13px;
	}
	 .leaf {
		 margin: 0 0.6666666667vw;
	}
	 .leaf::after {
		 margin-top: 1.3333333333vw;
		 font-size: 2.3333333333vw;
	}
	 .top, .bottom, .leaf-front, .leaf-back {
		 height: 10.6666666667vw;
		 width: 20vw;
	}
	 .top span, .bottom span, .leaf-front span, .leaf-back span {
		 height: 21.3333333333vw;
		 font-size: 13.3333333333vw;
		 line-height: 21.3333333333vw;
	}
	 .leaf._3-digits .top, .leaf._3-digits .bottom, .leaf._3-digits .leaf-front, .leaf._3-digits .leaf-back {
		 width: 24.6666666667vw;
	}
	 .top, .leaf-front {
		 border-top-left-radius: 1vw;
		 border-top-right-radius: 1vw;
	}
	 .bottom, .leaf-back {
		 border-bottom-left-radius: 1vw;
		 border-bottom-right-radius: 1vw;
	}
	 .leaf-back {
		 top: 10.6666666667vw;
	}
}
 .leaf-front {
	 transform-origin: bottom center;
	 transform: rotateX(0deg);
	 transform-style: preserve-3d;
	 transition-delay: 0.3s;
}
 .leaf-back {
	 transform-origin: top center;
	 transform: rotateX(90deg);
	 transform-style: preserve-3d;
	 transition-delay: 0s;
}
 .bottom::before {
	 content: "";
	 display: block;
	 position: absolute;
	 top: 0;
	 left: 0;
	 width: 100%;
	 height: 0%;
	 background: black;
	 background: linear-gradient(180deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
	 filter: blur(10px);
}
 .flip .leaf-front {
	 transform: rotateX(-90deg);
	 transition: transform 0.3s ease-in, background-color 0.3s ease-in, color 0.3s ease-in;
	 transition-delay: 0s;
	 color: black;
	 background-color: #492133;
}
 .flip .leaf-back {
	 transform: rotateX(0deg);
	 transition: transform 0.3s ease-in, background-color 0.3s ease-in, color 0.3s ease-in;
	 transition-delay: 0.3s;
}
 .flip .bottom::before {
	 transition: height 0.3s ease-in-out;
	 transition-delay: 0.15s;
	 height: 100%;
}
 .container {
	 display: flex;
	 flex-direction: column;
	 align-items: center;
	 justify-content: center;
	 height: 100vh;
	/* Ensures the container takes the full height of the viewport */
	 position: relative;
	/* Required if any absolute positioning is used within children */
}
 