html {
	height: 100%;
}

body {
	font-family: ubuntu_titlingbold, Arial, sans-serif;
	display: flex;
	flex-flow: column nowrap;
	min-height: 100%;
	font-size: 1.25rem;
}

#page {
	flex-grow: 1;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
}

#footer {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	margin: 2rem;
	font-size: 1.25rem;
}

#header {
	font-size: 4rem;
	margin: 3rem 2rem 1rem 2rem;
	text-align: center;
	word-wrap: break-word;
}

#header h1 {
	font-size: 8rem;
}

#header.small h1 {
	font-size: 7rem;
}

#subheader {
	font-size: 3rem;
	margin: 0 2rem 1rem 2rem;
	text-align: center;
	word-wrap: break-word;
}

.green {
	color: #15533d;
}

.btn-primary {
	color: #fff;
	background-color: #15533d;
	border-color: #15533d;
}

.btn-outline-primary {
	color: #15533d;
	border-color: #15533d;
}

.btn-primary:hover,
.btn-outline-primary:hover {
	color: #fff;
	background-color: #2f8c6c;
	border-color: #2f8c6c;
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show > .btn-outline-primary.dropdown-toggle {
	color: #fff;
	background-color: #2f8c6c;
	border-color: #2f8c6c;
}

.btn-primary.focus, .btn-primary:focus {
	color: #fff;
	background-color: #2f8c6c;
	border-color: #2f8c6c;
	box-shadow: 0 0 0 .2rem rgba(83, 198, 158, 0.5);
}

.btn-primary:not(:disabled):not(.disabled).active:focus,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.show > .btn-primary.dropdown-toggle:focus,
.btn-outline-primary.focus, .btn-outline-primary:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
	box-shadow: 0 0 0 .2rem rgba(83, 198, 158, 0.5);
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #15533d;
  background-color: transparent;
}

.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #15533d;
  border-color: #15533d;
}

#background {
	flex-grow: 1;
	display: flex;
	flex-flow: column nowrap;
}

#maincontent {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}

.text {
	text-align: center;
	margin: 0 2rem;
	max-width: 860px;
}

#registrationbutton {
	width: 100%;
	max-width: 20rem;
}

#links {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.link {
	font-size: 1.5rem;
	margin: 1rem;
	min-width: 11rem;
}

.link-group {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}

.link-group-title {
	font-size: 2rem;
	margin-top: 1.5rem;
	width: 100%;
}

.newsletter-form {
	justify-content: center;
	gap: 1rem;
	margin-bottom: .5rem;
}

.newsletter-form:not(.submitting):not(.submitted) .during-submit,
.newsletter-form:not(.submitting):not(.submitted) .after-submit {
	display: none;
}

.newsletter-form.submitting .before-submit,
.newsletter-form.submitting .after-submit {
	display: none;
}

.newsletter-form.submitted .before-submit,
.newsletter-form.submitted .during-submit {
	display: none;
}

@media screen and (max-width: 1200px) {
	#header.small h1 {
		font-size: 6rem;
	}
}

@media screen and (max-width: 992px) {
	#header {
		font-size: 3rem;
		margin: 2rem 1rem 1rem 1rem;
	}

	#header.small h1 {
		font-size: 5rem;
	}
}

@media screen and (max-width: 576px) {
	body {
		font-size: 1rem;
	}

	#header {
		font-size: 2rem;
	}

	#header.small {
		margin: 2rem 1rem 1rem 1rem;
	}

	#header h1 {
		font-size: 6rem;
	}

	#header.small h1 {
		font-size: 4rem;
	}
	
	#links {
		width: 100%;
		padding: 1rem;
	}

	.text {
		margin: 0 1rem;
	}

	.link {
		margin: .5rem;
		width: calc(100% - 1rem);
	}

	.link-group-title {
		margin-top: 1.5rem;
	}

	.link-group {
		flex-flow: column nowrap;
		width: 100%;
	}
}

@media screen and (max-width: 576px) {

}