/************************
FONT INCLUDES
*************************/
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700;900&display=swap');
/************************
BODY
*************************/
body {
	background: #fff!important;
	color: #000;
	font-family: 'Inter', Helvetica, Arial, sans-serif;
	font-size: 1rem;
	letter-spacing: -0.1px;
}

::selection {
	background: #f1f8e7;
}
/***************************
THEME COLORS
****************************/
/*** dark ***/
.bg-dark {
	background: #000!important;
}

.text-dark {
	color: #000!important;
}

/*** light ***/
.bg-light {
	background: #eee!important;
}

.text-light {
	color: #eee!important;
}

/*** primary, GREEN ***/
.bg-primary {
	background: #4ca150!important;
}

.text-primary {
	color: #4ca150!important;
}

	/*** primary, LIME GREEN ***/
	.bg-primary-lt {
		background: #9ece5e!important;
	}

	.text-primary-lt {
		color: #9ece5e!important;
	}


/*** secondary, YELLOW ***/
.bg-secondary {
	background: #fcbe2e!important;
}

.text-secondary {
	color: #fcbe2e!important;
}

	/*** secondary, soft yellow ***/
	
	.bg-secondary-lt {
		background: #fcefd1;
	}

/*** tertiary, RED ***/
.bg-tertiary {
	background: #c1272d!important;
}

.text-tertiary {
	color: #c1272d!important;
}

	/*** tertiary, ORANGE ***/
	.bg-tertiary-lt {
		background: #f15a24!important;
	}

	.text-tertiary-lt {
		color: #f15a24!important;
	}
/*************************
HEADINGS AND FONTS
**************************/
h1, .h1 {
	font-weight: 700;
	line-height: 100%;
}

h2, .h2 {
	font-weight: 700;
}

h3, .h3 {
	font-weight: 700;
}

h4, .h4 {
	font-weight: 700;
}

h5, .h5 {
	font-weight: 700;
	font-size: 1rem;
}

h6, .h6 {
	font-weight: 700;
	letter-spacing: 1px;
	font-size: 0.8rem;
}

.display-1, .display-2, .display-3, .display-4 {
	font-weight: 700;
	line-height: 100%;
}

.text-serif {
	font-family: Georgia, serif;
}

.text-sans-serif {
	font-family: 'Inter', helvetica, arial, sans-serif;
}

.lead {
	font-size: 1.3rem;
}

.small {
	font-size: 0.8rem;
}

blockquote {
	font-size: 1.2rem;
	letter-spacing: 0.5px;
	opacity: 0.8;
	max-width: 600px;
	margin: 2rem auto;
	text-align: center;
}

figure {
	
}

	figcaption {
		font-style: italic;
		font-size: 0.9rem;
		opacity: 0.8;
	}

/**************************
LINKS AND BUTTONS
***************************/
/*** default links ***/	
a {
	color: #4ca150;
	transition: 0.3s;
}

	a:hover {
		background: #f1f8e7;
		color: #29562b;
	}
	
	a:active, a:focus {
		color: #29562b;
	}

/*** default button ***/	
.btn, input[type=submit] {
	border-radius: 0;
	border-width: 2px;
	padding: 10px;
	transition: 0.3s;
	font-weight: bold;
}

	.btn svg {
		width: 25px!important;
		height: 25px!important;
		transition: 0.3s;
	}

	.btn:hover {

	}
	
		.btn:hover svg {
			margin-left: 20px;
		}
	
	.btn:active, .btn:focus {
		
	}
	
	.btn:focus-visible {
		border-color: #222;
		box-shadow: 0 0 0 .25rem rgba(76,161,80,.25);
	}
	
.btn-primary, #edit-submit {
	background: #4ca150;
	color: #fff;
	border-color: #29562b;
	text-decoration: none;
}

	.btn-primary:hover {
		background: #28702b;
		color: #fff;
		border-color: #29562b;
	}
	
	.btn-primary:active, .btn-primary:focus, .btn-primary:focus-visible {
		background: #28702b!important;
		color: #fff;
		border-color: #29562b!important;
	}
	
	.btn-primary svg {
		background: #29562b;
		outline: 10px solid #29562b;
		margin-left: 15px;
	}
	
	
.btn-secondary {
	background: #fcc035;
	color: #fff;
	border-color: #f7931e;
	text-decoration: none;
}

	.btn-secondary:hover {
		background: #f7931e;
		border-color: #f7931e;
	}
	
	.btn-secondary:active, .btn-secondary:focus, .btn-secondary:focus-visible {
		background: #f7931e!important;
		color: #fff;
		border-color: #f7931e!important;
	}
	
	.btn-secondary svg {
		background: #f7931e;
		outline: 10px solid #f7931e;
		margin-left: 15px;
	}
	
.btn-tertiary {
	background: #f15a24;
	color: #fff;
	text-decoration: none;
	border-color: #c1272d;
}

	.btn-tertiary:hover {
		background: #c1272d!important;
		border-color: #c1272d!important;
		color: #fff!important;
	}
	
	.btn-tertiary:active, .btn-tertiary:focus {
		background: #c1272d!important;
		border-color: #c1272d!important;
		color: #fff!important;
	}
	
	.btn-tertiary svg {
		background: #c1272d;
		outline: 10px solid #c1272d;
		margin-left: 15px;
	}
	
/***************************
WEBFORMS
****************************/
.form-control, .form-select, .form-check-input {
	border-radius: 0;
	border-color: #000;
}

	.form-control:focus, .form-select:focus {
		border-color: #4ca150;
		box-shadow: 0 0 0 .25rem rgba(76,161,80,.25);
	}
	
.form-check-input:checked {
  background-color: #4ca150;
  border-color: #4ca150;
}

	.form-check-input:focus {
		border-color: #4ca150;
		box-shadow: 0 0 0 .25rem rgba(76,161,80,.25)
	}

label {
	font-weight: 700;
}

/*************************
DESIGN ELEMENTS / HELPER CLASSES
**************************/
hr {
	background-color: #9dcc5d;
	border-color: #9dcc5d;
	opacity: 1;
}

/*** background + overlay sections ***/
.background { /* applied to parent image */
	position:relative;
}

.text-overlay { /* applied to child with text */
	z-index: 3;
	position: relative;
}

.bg-overlay { /* applied to child to add gradient/overlay to parent image*/
	position: absolute;
	z-index: 2;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	width: 100%;
	background: rgba(0,0,0,0.2);
}

/***************************
CARDS
****************************/
.view-header h2 {
	margin-top: 2rem;
}

.card {
	border-radius: 0;
	background: #fff;
	padding: 0.8rem;
	box-shadow: 0 0.4vh 15px 0 rgba(252,190,46, 0.15);
	transition: 0.3s;
	border: 0;
}

	.card:hover {
		margin-top: -1vh;
		box-shadow: 0 0.4vh 15px 0 rgba(252,190,46, 0.1);
	}
	
	.card h4 {
		transition: 0.3s;
	}
	
	.card:hover h4 {
		color: #4CA150;
	}

	a.card-link {
		text-decoration: none;
		background: none;
		color: inherit;
	}

	.card-img-top {
		border-radius: 0;
	}

/* horizontal card */
.h-card {
	border-radius: 0;
	background: #fff;
	padding: 0.8rem;
	box-shadow: 0 0.4vh 15px 0 rgba(252,190,46, 0.15);
	transition: 0.3s;
	border: 0;
	margin: 1rem 0 1rem 0;
}

	.h-card:hover {
		margin-top: 1vh;
		box-shadow: 0 0.4vh 15px 0 rgba(252,190,46, 0.1);
	}
	
	.h-card h4 {
		transition: 0.3s;
	}
	
	.h-card:hover h4 {
		color: #4CA150;
	}
	
.cal-square {
	background: #4CA150;
	color: #fff;
	height: 60px;
	width: 60px;
	padding: 10px 5px 5px 5px;
	margin: 0 auto;
	text-align: center;
}

/***************************
NAVIGATION
****************************/
.navbar {
	background: rgba( 255, 255, 255, 0.7 );
	box-shadow: 0 0 15px 0 rgba( 31, 38, 135, 0.2 );
	backdrop-filter: blur( 8px );
	border-radius: 10px;
	border: 1px solid rgba( 255, 255, 255, 0.18 );
	border-radius: 0;
	padding: 0.5vh 0;
}

	.navbar-toggler {
		background: #4ca150;
		color: #fff;
		border-radius: 0;
	}

	.navbar a {
		font-weight: bold;
		color: #000;
		text-decoration: none!important;
	}
	
		.navbar a:hover {
			background: none;
		}
	
	/*** dropdowns ***/
	.navbar .dropdown-menu {
		border-radius: 0;
	}
	
	.navbar .dropdown-menu a {
		font-size: 0.9rem;
		color: #444;
	}
	
		.navbar .dropdown-menu a:hover {
			color: #000;
		}

/***************************
FOOTER
****************************/
footer, .footer {
	background: #fff;
	border-top: 2px solid #4CA150;
	padding: 1vh 0;
	color: #666;
}

.footer-band {
	background: #9fcf5e;
	background-image: url("data:image/svg+xml,%3Csvg width='100' height='20' viewBox='0 0 100 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.184 20c.357-.13.72-.264 1.088-.402l1.768-.661C33.64 15.347 39.647 14 50 14c10.271 0 15.362 1.222 24.629 4.928.955.383 1.869.74 2.75 1.072h6.225c-2.51-.73-5.139-1.691-8.233-2.928C65.888 13.278 60.562 12 50 12c-10.626 0-16.855 1.397-26.66 5.063l-1.767.662c-2.475.923-4.66 1.674-6.724 2.275h6.335zm0-20C13.258 2.892 8.077 4 0 4V2c5.744 0 9.951-.574 14.85-2h6.334zM77.38 0C85.239 2.966 90.502 4 100 4V2c-6.842 0-11.386-.542-16.396-2h-6.225zM0 14c8.44 0 13.718-1.21 22.272-4.402l1.768-.661C33.64 5.347 39.647 4 50 4c10.271 0 15.362 1.222 24.629 4.928C84.112 12.722 89.438 14 100 14v-2c-10.271 0-15.362-1.222-24.629-4.928C65.888 3.278 60.562 2 50 2 39.374 2 33.145 3.397 23.34 7.063l-1.767.662C13.223 10.84 8.163 12 0 12v2z' fill='%23ffffff' fill-opacity='0.22' fill-rule='evenodd'/%3E%3C/svg%3E");
	padding: 2vh 0;
	box-shadow: 0 -1vh 15px 0 rgba(0,0,0, 0.1);
	margin-top: 3.5vh;
}

/***************************
HEADERS
****************************/
.interior-header {
	background: linear-gradient(180deg, #9fcf5e 60%, #fff 50%);
	position: relative;
	padding-top: 15vh;
}

	.interior-header:after {
		content: '';
		height: 100%;
		width: 100%;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		position: absolute;
		z-index: 2;
		background: transparent;
		background-image: url("data:image/svg+xml,%3Csvg width='100' height='20' viewBox='0 0 100 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.184 20c.357-.13.72-.264 1.088-.402l1.768-.661C33.64 15.347 39.647 14 50 14c10.271 0 15.362 1.222 24.629 4.928.955.383 1.869.74 2.75 1.072h6.225c-2.51-.73-5.139-1.691-8.233-2.928C65.888 13.278 60.562 12 50 12c-10.626 0-16.855 1.397-26.66 5.063l-1.767.662c-2.475.923-4.66 1.674-6.724 2.275h6.335zm0-20C13.258 2.892 8.077 4 0 4V2c5.744 0 9.951-.574 14.85-2h6.334zM77.38 0C85.239 2.966 90.502 4 100 4V2c-6.842 0-11.386-.542-16.396-2h-6.225zM0 14c8.44 0 13.718-1.21 22.272-4.402l1.768-.661C33.64 5.347 39.647 4 50 4c10.271 0 15.362 1.222 24.629 4.928C84.112 12.722 89.438 14 100 14v-2c-10.271 0-15.362-1.222-24.629-4.928C65.888 3.278 60.562 2 50 2 39.374 2 33.145 3.397 23.34 7.063l-1.767.662C13.223 10.84 8.163 12 0 12v2z' fill='%23ffffff' fill-opacity='0.22' fill-rule='evenodd'/%3E%3C/svg%3E");
	}
	
.home-header {
	position: relative;
	padding-top: 15vh;
	padding-bottom: 5vh;
	background: #9fcf5e;
	background-image: url("data:image/svg+xml,%3Csvg width='100' height='20' viewBox='0 0 100 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.184 20c.357-.13.72-.264 1.088-.402l1.768-.661C33.64 15.347 39.647 14 50 14c10.271 0 15.362 1.222 24.629 4.928.955.383 1.869.74 2.75 1.072h6.225c-2.51-.73-5.139-1.691-8.233-2.928C65.888 13.278 60.562 12 50 12c-10.626 0-16.855 1.397-26.66 5.063l-1.767.662c-2.475.923-4.66 1.674-6.724 2.275h6.335zm0-20C13.258 2.892 8.077 4 0 4V2c5.744 0 9.951-.574 14.85-2h6.334zM77.38 0C85.239 2.966 90.502 4 100 4V2c-6.842 0-11.386-.542-16.396-2h-6.225zM0 14c8.44 0 13.718-1.21 22.272-4.402l1.768-.661C33.64 5.347 39.647 4 50 4c10.271 0 15.362 1.222 24.629 4.928C84.112 12.722 89.438 14 100 14v-2c-10.271 0-15.362-1.222-24.629-4.928C65.888 3.278 60.562 2 50 2 39.374 2 33.145 3.397 23.34 7.063l-1.767.662C13.223 10.84 8.163 12 0 12v2z' fill='%23ffffff' fill-opacity='0.22' fill-rule='evenodd'/%3E%3C/svg%3E");
}

	.css-clipped {
		width: 100%;
		height: auto;
		clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
		position: relative;
		z-index: 5;
	}
		
		.clipped-shadow {
			filter: drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.35));
		}
		
		/*.clipped-shadow:after {
			background: #4ca150;
			content: '.';
			height: 100%;
			width: 100%;
			max-width: 300px;
			max-height: 300px;
			position: absolute;
			transform: rotate(45deg);
			left: 0;
			right: 200px;
			margin: 0 auto;
			top: 15%;
		}*/