.mono-300 {
	font-family: 'Roboto Mono', monospace;
	font-weight: 300;
}
.mono-400 {
	font-family: 'Roboto Mono', monospace;
	font-weight: 400;
}
.mono-500 {
	font-family: 'Roboto Mono', monospace;
	font-weight: 500;
}

.bg-green-dark {
	background-color: #313A2E !important;
}
.bg-redtide {
	background-color: #A15842 !important;
}

.headroom--not-top .navbar-sticky {
    padding: 0.5rem 0;
}
.headroom--not-top .navbar-sticky.navbar-dark {
    backdrop-filter: blur(20px);
    box-shadow: 0 5px 12px 0 rgb(0 0 0 / 14%);
    background: rgba(255,255,255,0.2);
}
.navbar-dark .navbar-brand {
    color: #f7cc76;
}
.navbar-brand img {
    width: 56px;
    max-height: 3.5rem;
	border-radius: 50%;
  	box-shadow: 0px 0px 9px 4px rgb(51 51 51 / 0.3);
  	animation: glow 2.5s linear infinite alternate;
}
.navbar-brand {
	font-size: 1rem;
    font-weight: 300;
	letter-spacing: 0.15rem;
}
.headroom--not-top .navbar-sticky.navbar-dark .navbar-brand {
	color: #ffffff;
}
.navbar-logo {
	margin-right: 1rem;
}

.navbar-sticky.navbar-stuck {
	transition: all 1s ease;
    backdrop-filter: blur(20px);
    box-shadow: 0 5px 12px 0 rgb(0 0 0 / 14%);
    background: rgba(255,255,255,0.2);
}

.navbar-light .navbar-nav .nav-link {
    color: #fff;
}

footer {
	position: relative;
}
footer .navbar-brand {
	margin-right: 0;
}
footer .navbar-brand img {
    width: 88px;
    max-height: 5.5rem;
}

.video-bg {
    /* Span the full grid */
    grid-area: var(--fullGrid);

    /* Re-size video to cover full screen while maintaining aspect ratio */
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;

    /* Display video below overlay */
    z-index: -1;
}

.video-bg::-webkit-media-controls {
    display: none !important;
}

.video-overlay {
    /* Span the full grid */
    grid-area: var(--fullGrid);

    /* Center Content */
    display: grid;
    justify-content: center;
    align-content: center;
    text-align: center;

    /* Semi-transparent background */
    background-color: rgba(0, 0, 0, 0.55);
}

.algae-bg {
	background: rgb(156,86,166);
	background: linear-gradient(128deg, rgba(156,86,166,1) 0%, rgba(70,166,139,1) 50%, rgba(166,136,53,1) 100%);
}

.algaeb-bg {
	background: rgb(29,89,72);
	background: -moz-linear-gradient(128deg, rgba(29,89,72,1) 0%, rgba(70,166,139,1) 50%, rgba(89,75,33,1) 100%);
	background: -webkit-linear-gradient(128deg, rgba(29,89,72,1) 0%, rgba(70,166,139,1) 50%, rgba(89,75,33,1) 100%);
	background: linear-gradient(128deg, rgba(29,89,72,1) 0%, rgba(70,166,139,1) 50%, rgba(89,75,33,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#1d5948",endColorstr="#594b21",GradientType=1);
}

.hotspot::before {
    color: rgb(29,89,72);
}

.hotspot:hover::before {
    background-color: #1D5948;
    color: #fff;
}

.input-group > .form-control.ff-has-errors, .input-group > .form-control.ff-has-errors:focus {
				z-index: 5 !important;
			}
			
			input.ff-has-errors {
				border-color: #6F1D1F !important;
			}
			.ff-form-success, .ff-form-errors, ul.ff-errors {
				display: none !important;
			}
			.form-error-banner {
				color: #6F1D1F !important; 
				position: absolute;
			}
			
			.form-success-banner {
				color: #008411 !important; 
				position: absolute;
			}

* {
    scrollbar-width: none;
    scrollbar-color: rgba(0,0,0,.25) rgba(0,0,0,.1);
}

*::-webkit-scrollbar {
    width: 10px;
}

*::-webkit-scrollbar-track {
    background: rgba(0,0,0,.1);
}

*::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,.25);
    border-radius: 10px;
    border: 0px none #ffffff;
}

*::-webkit-scrollbar-thumb:hover {
    background-color: rgba(128,135,139,.8);
}

@keyframes glow{
  to {
    box-shadow: 0px 0px 20px 10px rgb(51 51 51 / 0.2);
  }
}