
:root {
	--bs-btn-bg: #004D25;
	--bs-border-radius: 10px;
}


html, body {
	height: 100%;
}

body {
	display: flex;
	flex-direction: column;
	background-image: url("/images/background.png");
	background-size: 100% 100%; /* STRETCH to full size */
	background-repeat: no-repeat;
	background-position: top left;
	background-attachment: fixed;
	min-height: 100%;
}

main {
	flex: 1 0 auto;
}

footer {
	background-color: #860038;
	padding: 0.5rem 0;
	color: white;
	font-size: 12px;
	font-weight: 400;
}

	footer a {
		color: white;
		padding-left: 20px;
		padding-right: 20px;
		line-height: 12px;
	}

	footer span.spacer {
		background-color: white;
		height: 12px;
		width: 1px;
		display: inline-block
	}

	footer a:hover {
		color: white;
		text-decoration: underline;
	}

.top-panel {
	background: #F2F5EB;
	font-size: 18px;
	color: black;
	padding-right: 5rem;
}

	.top-panel .nav-links a {
		color: black;
		font-size: 1rem;
		padding-left: 1rem;
		padding-right: 1rem;
	}

		.top-panel .nav-links a:hover {
			color: black;
			text-decoration: underline;
		}

.bottom-panel {
	background: #00853A;
	font-size: 10px;
	color: white;
}


	.bottom-panel p.header {
		font-size: 16px
	}

	.bottom-panel p.subheader {
		font-size: 14px
	}

	.bottom-panel p {
		font-size: 12px;
	}

		.bottom-panel p.contact-header {
			font-size: 12px;
			padding-top: 10px;
		}

		.bottom-panel p.contact-info,
		.bottom-panel a.contact-info {
			font-size: 12px;
			color: white;
		}

			.bottom-panel a.contact-info:hover {
				color: white;
				text-decoration: underline;
			}

.right-panel {
	background: #FAF9F5;
	font-size: 24px;
	color: black;
}

.right-panel .step-circle {
	background-color: #004D25;
	min-width: 3rem;
	min-height: 3rem;
	max-width: 3rem;
	max-height: 3rem;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 500;
	z-index: 1;
	color: white;
}

.right-panel .timeline-line {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1.5rem; /* Matches half of circle width */
	width: 2px;
	top: 3rem;
	background-color: #D1CCBE;
	z-index: 0;
}

.right-panel .step-heading {
	font-size: 24px;
	font-weight: 600;
	padding-left: 0.75rem;
	padding-top: 0.25rem;
}

.right-panel .step-subheading {
	font-size: 16px;
	padding-left: 0.75rem;
	white-space: nowrap;
}

.right-panel li.step-inactive .step-circle {
	background-color: #FAF9F5;
	border: 2px solid #D1CCBE;
}

.right-panel li.step-inactive,
.right-panel li.step-inactive .step-circle {
	color: #D1CCBE;
}


.right-panel.right-panel-md .step-circle {
	min-width: 2rem;
	min-height: 2rem;
	max-width: 2rem;
	max-height: 2rem;
}


	.right-panel.right-panel-md .timeline-line {
		top: 0;
		right: 0;
		left: 1.5rem; /* Matches half of circle width */
		height: 2px;
		top: 1rem;
		width: unset;
	}

	.right-panel.right-panel-md {
		font-size: 16px;
	}


.logo img {
	height: 80px;
}


.form-body {
	background-color: white;
	padding-left: 2rem;
	padding-right: 2rem;
	padding-top: 2rem;
	padding-bottom: 2rem;
}

	.form-body .form-step-heading {
		color: #860038;
		font-size: 36px;
		font-weight: 600;
	}

	.form-body .form-step-count-heading {
		color: black;
		font-size: 24px;
		font-weight: 600;
	}

	.form-body .form-step-sub-heading {
		color: #2B7050;
		font-size: 24px;
		font-weight: 600;
	}

	.form-body .form-heading {
		color: black;
		font-size: 24px;
		font-weight: 600;
		padding-top: 1rem;
		display: inline-block;
	}

	.form-body .row {
		padding-top: .5rem;
	}

@media (min-width: 992px) {
	.form-body .row {
		padding-top: 2rem;
	}
}

		.form-body .row .field-heading {
			color: black;
			font-weight: 600;
		}

		.form-body .row .field-footer {
			color: darkgrey;
			font-size: 12px;
			padding-left: 1rem;
			padding-top: 0.75rem;
		}

			.form-body .row .field-footer a {
				font-weight: 800;
			}


	.form-body .btn.btn-primary {
		background-color: #004D25;
		color: white;
	}

		.form-body .btn.btn-primary:hover {
			background: #00853A;
			border-color: #00853A;
		}

	.form-body .btn.btn-secondary {
		background-color: white;
		color: black;
	}

		.form-body .btn.btn-secondary:hover {
			background: #00853A;
			border-color: #00853A;
			color: white;
		}

	.form-body .btn.btn-danger {
		background-color: #E84F4F;
		border-color: #E84F4F;
		color: white;
	}

		.form-body .btn.btn-danger:hover {
			background: #E59090;
			border-color: #E84F4F;
			color: white;
		}

	.form-body .btn,
	.form-body .btn:hover,
	.form-body .btn:active {
		border-radius: 0.25rem;
		border: 2px solid #004D25;
		border-width: 2px !important;
	}

	.form-body .form-control {
		border-radius: 0.25rem;
	}

	.form-body .inline-buttons .btn {
		min-width: unset;
		padding: unset;
		width: unset;
		width: unset;
	}

	.form-body .inline-buttons .btn {
		min-width: unset;
		max-height: 30px;
		padding: unset;
	}

	.form-body .inline-buttons .btn {
		min-width: unset;
		max-height: 30px;
		padding: unset;
	}

	.form-body .inline-buttons .btn-check + label {
		background-color: white;
		color: black;
	}

	.form-body .inline-buttons .btn-check:checked + label {
		background-color: #004D25;
		color: white;
		border-color: #004D25;
	}

	.form-body .btn-check.meridiem + label,
	.form-body .btn-check.meridiem:checked + label {
		background-color: #004D25;
		color: white;
		border-color: #004D25;
	}

		.form-body .btn-check.meridiem + label .checked {
			display: none;
		}

	.form-body .form-text {
		color: black;
		font-size:
	}

	.form-body .form-text-heading {
		font-weight: 600;
		color: black
	}

	.form-body .btn-check.meridiem + label .unchecked {
		display: inline;
	}

	.form-body .btn-check.meridiem:checked + label .checked {
		display: inline;
	}

	.form-body .btn-check.meridiem:checked + label .unchecked {
		display: none;
	}

	.form-body .form-control.timepart {
		width: 4rem;
	}


	.form-body i.fa-triangle-exclamation {
		color: orange;
	}

	.form-body .form-check-label {
		color: black;
	}

	.form-body .feetable {
		border: 1px solid black;
	}

		.form-body .feetable td {
			border: 1px solid black;
			background-color: #F9F9F4;
			color: black;
			padding: 1rem;
			text-align: center;
		}

		.form-body .feetable thead tr {
			border: 1px solid black;
			color: white;
			background-color: #00853A;
		}

		.form-body .feetable thead th {
			padding: 1rem;
			text-align: center;
			border: 1px solid black;
		}

	.form-body.start-form-body {
		background: #F2F5EB;
		color: black;
	}

.right-panel.start-terms-body {
	background: white;
}

	.right-panel.start-terms-body .terms-heading {
		color: #2B7050;
		font-size: 30px;
		font-weight: 600;
	}

.right-panel.start-terms-body {
	font-size: 12px;
}

	.right-panel.start-terms-body .terms a {
		font-weight: 600;
	}

		.right-panel.start-terms-body .terms a:hover {
			text-decoration: underline;
		}


.form-body.start-form-body .card {
	border-radius: 5px;
	background: #F2F5EB;
	border-color: #F2F5EB;
}

	.form-body.start-form-body .card .card-header {
		background-color: white;
		border-radius: 5px;
		border: 1px solid #CCCCCC;
		font-weight: 600;
		padding-left: 2px;
		padding-right: 2px;
	}

		.form-body.start-form-body .card .card-header .btn {
			background-color: white;
			border: none;
			color: #6E6E6E;
		}

	.form-body.start-form-body .card .card-body {
		background-color: white;
		border-radius: 5px;
		border: 1px solid #CCCCCC;
		color: #6E6E6E;
	}


.form-body .step-complete .form-step-sub-heading {
	font-size: 16px;
	color: black;
}

.form-body .step-complete .tick {
	background-color: #004D25;
	min-width: 5rem;
	min-height: 5rem;
	max-width: 5rem;
	max-height: 5rem;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 500;
	font-size: 35px;
	z-index: 1;
	color: white;
}

.form-body .step-complete .section-heading {
	font-size: 20px;
	color: black;
	font-weight: 600;
}

.form-body .step-complete .section-text {
	font-size: 16px;
	color: black;
	line-height: 40px
}

	.form-body .step-complete .section-text em {
		font-style: italic;
	}

	.form-body .step-complete .section-text a:hover {
		text-decoration: underline;
	}

.invalid-feedback {
	display: block;
}

.dz-preview {
	display: none !important;
}

.upload-container .file-name {
	border: 1px solid #CCCCCC;
}


.row span.form-control {
	padding-top: 9px;
	color: darkgrey;

}

ul, ol {
	font-variant-numeric: tabular-nums;
	margin-left: 0; /* remove browser default margin */
	padding-left: 1.25rem; /* room for the bullet/number */
}