/* =============================================================================================
	BASE STYLES AND LAYOUT
============================================================================================= */

/* ------------------------------------------------------------------------ CSS Variables */

:root {
	--black-dark: #000000;
	--black: #1A1818;
	--grey-medium: #807777;
	--grey-light: #E8ECEF;
	--green-very-dark: #27332F; 
	--green-dark: #005238; 
	--green-medium: #288466;
	--green-light: #D6F6EF; 
	--yellow-dark: #FFDB00;	
	--yellow-light: #FEEA72;
	--white: #fff;
	--red: #e7004c;
}


/* ------------------------------------------------------------------------ Page Styles & Resets */

html {
	position: relative; /*for sticky footer*/
  	min-height: 100%;
}

body {
	font: normal 100%/1.6 'DM Sans', Arial, Helvetica, sans-serif; 
	color: : var(--black);	
	background-color: : var(--white);
} 

.preload * { /* Transitions fire only after page load http://css-tricks.com/transitions-only-after-page-load/ */
	-webkit-transition: none !important;
		transition: none !important;
	}

@media (min-width: 1200px) {

	/*offset sticky footer*/
	.body--sticky-footer {
		padding-bottom: 329px; /*This will change depending on the height of the footer*/
	}

	/*if the header is fixed, add this class to the body*/
	.body--fixed-header {
		padding-top: 128px; /*This will change depending on the height of the header*/
	}
	
}

@media (min-width: 1440px) {

	.body--sticky-footer {
		padding-bottom: 437px; 
	}

}


/* ------------------------------------------------------------------------ Keyboard Accessibility */

.skip-link { 
	position:absolute; 
	left:-10000px; 
	top:0; 
	width:1px; 
	height:1px; 
	overflow:hidden;
	background-color: var(--green-medium);
	color: var(--white);
	font-size: 0.875rem;
	text-decoration:none;
	z-index: 1100;
	padding:0.5rem 0.625rem; 
} 

.skip-link:focus, .skip-link.sr-only-focusable:active, .skip-link.sr-only-focusable:focus {
	position: absolute; 
	outline: none; 
	left:0;
	outline: none; 
	width:auto; 
	height:auto;
} 

.skip-link:hover {
	color: var(--white);
	background-color: var(--green-dark);
}

a:focus, .carousel-control-next:focus,.carousel-control-prev:focus, .btn:focus, .carousel__link:focus .carousel__btn, .form-control-file:focus {
	outline: solid thin rgba(0, 0, 0, 0.5);
	box-shadow: none;
} 

.sidenav__header-link:focus, .card__header-link:focus {outline: solid thin rgba(255, 255, 255, 0.5);}

a:hover, a:active { outline: none !important; } /*...not with mouse (kinda) */


/* ------------------------------------------------------------------------ Headers */

h1, h2, h3,
.h1, .h2, .h3  { 		
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: .75rem;
}	

h1, .h1 {	
	font-size: 2rem;	
	line-height: 1.15;
	text-transform: uppercase;
	font-family: 'Poppins', Arial, Helvetica, sans-serif; 
	text-shadow: 0px 0px 15px rgba(0,0,0,0.25);
}

.h1--lg {
	font-size: 3rem;
	line-height: 1;
	color: var(--yellow-light);
}
	
h2, .h2 {
	text-transform: uppercase;
	font-size: 2rem;
	font-family: 'Barlow Condensed', Arial, Helvetica, sans-serif;  
	color: var(--green-dark);
	position: relative;
	display: inline-grid;
}
		
h3, .h3 { 
	text-transform: uppercase;
	font-size: 1.5rem; 
	font-family: 'Barlow Condensed', Arial, Helvetica, sans-serif;  
	color: var(--green-dark);
}	

main h2,
main .h2 {
	margin-top: .75rem;
}

main h3,
main .h3 {
	margin-top: 1.75rem;
}

main h2:first-child,
main .h2:first-child,
main .card h2:first-child,
main .card .h2:first-child {
	margin-top: 0;
}
	
@media (min-width: 768px) {	

	h1, .h1 {
		font-size: 3rem;
	}

	.h1--lg {
		font-size: 5rem;
	}

	h2, .h2 {
		font-size: 2.5rem;
		padding-right: 1rem;
	}

	h3, .h3 { 
		font-size: 1.75rem; 
	}

}	

@media (min-width: 1440px) {	

	h1, .h1 {
		font-size: 4rem;
	}

	.h1--lg {
		font-size: 7rem;
	}

	h2, .h2 {
		font-size: 3rem;
	}

	h2:after, .h2:after {
		content: "///";
		position: absolute;
		top: 0;
		right: -3.125rem;
		color: var(--yellow-dark);
	}

	h3, .h3 { 
		font-size: 2rem; 
	}

}	

@media (min-width: 1680px) {	

	h1, .h1 {
		font-size: 5rem;
	}

	.h1--lg {
		font-size: 9rem;
	}
	.h2--lg {
		font-size: 3.75rem;
	}
}	

	
/* ------------------------------------------------------------------------ Lists */

ul, .list { 
	list-style: none; 
	list-style-position: outside;
	padding-left: 0;
}

ul li, .list__item {	
    padding: 0 0 0.5rem 1rem;
	background: url(../../images/arrow-right-gray.svg) no-repeat left 0.625rem;
	background-size: 0.625rem 0.625rem;
}

.nav-tabs li.nav-item{
	padding:initial;
	background:initial;
}

ul.no-bullets {
	margin-bottom: 0;
}

ul.no-bullets li {
	padding: 0 0 1rem 0;
	background-image: none;
}

ul ul, .list__sub-list {
	margin-top: 0.25rem;
}


ul ol {
	padding-left: 1.375rem;
	margin-top: 0.25rem;
}

ul ol li {
	background-image: none;
	padding-left: 0;
}
		
ol {
	padding-left: 1rem;
}	

ol li {padding-bottom: 0.25rem;}

ol ol {
	padding-left: 1.25rem;
	margin-top: 0.25rem;
}

ol ul {margin-top: 0.25rem;}
		
li:last-child { 
	padding-bottom:0;
}
		
					
/* ------------------------------------------------------------------------ Other Base Text Styles */

.color-inherit {
	color: inherit;
}	

.text-muted {
	color: var(--grey-medium)!important;
}

.intro-text {
	font-size:1.25rem;
}

.note {
	font-size: .875rem;
}

.line-height-sm {
	line-height: 1.3;
}

sup, sub {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup { 
	top: -0.5em; 
}

sub { 
	bottom: -0.25em; 
}

@media (min-width: 1200px) {    
    .multi-column2, .multi-column3 {
	    -webkit-column-count: 2;
	    -moz-column-count: 2;
	    column-count: 2;
	    -webkit-column-gap: 2em;
	    -moz-column-gap: 2em;
	    column-gap: 2em;
	    display:block;
  	}

  	.multi-column2 li, .multi-column3 li {
	    break-inside: avoid-column;
	}
}

@media (min-width: 1440px) {

	main p,
	li,
	label,
	legend,
	table,
	.form-control,
	.selectize-input,
	.page-link {
		font-size: 1.125rem;
	}

	.intro-text {
		font-size:1.5rem;
	}

}

@media (min-width: 1680px) {

	.multi-column3 {
	    -webkit-column-count: 3;
	    -moz-column-count: 3;
	    column-count: 3;
	    -webkit-column-gap: 2em;
	    -moz-column-gap: 2em;
	    column-gap: 2em;
	    display:block;
  	}

}

	
/* ------------------------------------------------------------------------ Links */

a { 
	color: var(--green-medium); 
	font-weight: bold;
	transition: all 0.25s;
	text-decoration: underline;
}	

a:hover {
	text-decoration: none;
	color: var(--green-dark);
}

.text-black, .text-black a {
	color: var(--black);
}	

a.text-black, .text-black a:hover {
	text-decoration: underline;
	color: var(--green-dark);
}

a.weight-normal, .weight-normal a {
	font-weight: normal;
}

a.no-underline, .no-underline a { 
	text-decoration: none;
}	

a.no-underline:hover, .no-underline a:hover {
	text-decoration: underline;
}

main a { 
	word-wrap: break-word; 
}

a img {
	border: none;
	-webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0) scale(1.0, 1.0);
	transition: opacity 0.25s;
}				

a img:hover { 
	opacity: .9;
}	

.btn {
	padding: .75rem 5rem .75rem 1rem;
	border:none;
	border-radius: 0;
	text-transform: uppercase;
	cursor: pointer;
	font-weight: bold;
	text-decoration: none;
}

.btn-sm{
	padding: 0.5rem 1rem !important;
	font-size: 1rem !important;
}

.btn-primary,
.btn-secondary {
	background:none;
	border:none;
	color: var(--black);
	position: relative;	
	z-index:1;
	overflow: hidden;
	transition: all 0.25s;
}

.btn-primary:before,
.btn-secondary:before{
	content:'';
	position: absolute;
	z-index:-1;
	top:0;
	left:0;
	height:100%;
	width:100%;
}

.btn-primary:before{
	background-color: var(--green-light);
}

.btn-secondary:before{
	background-color: var(--yellow-light);
}


.btn-primary:after,
.btn-secondary:after {
	content: "";    
	position: absolute;
	z-index:-1;
    top: 0;
    right: -1px;
    width: 4rem;
    height: 100%;
    background-image: url(../../images/arrow-right-yellow.svg);
    background-repeat: no-repeat;
    background-position: right 1.25rem center;
    background-size: 1rem;
    background-color: var(--green-medium);
    clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%);
    transition: all .25s;
}

.btn-primary--dark:after {
	background-color: var(--green-very-dark);
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:not([disabled]):not(.disabled).active, .btn-primary:not([disabled]):not(.disabled):active, .show>.btn-primary.dropdown-toggle,
.btn-secondary:hover,
.btn-secondary:active,
.btn-secondary:not([disabled]):not(.disabled).active, .btn-secondary:not([disabled]):not(.disabled):active, .show>.btn-secondary.dropdown-toggle {
	/*background-color: var(--green-light);*/
	background:none;
	box-shadow: none;
	padding-left:2.25rem;
	padding-right:4.25rem;
}

.btn-primary:hover span,
.btn-secondary:hover span {
	padding-left:.75rem;
	margin-right:-.75rem;
}

.btn-primary:hover:after,
.btn-secondary:hover:after {
	width: calc(100% + 2px);
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	background-position: right 2rem center;
}


.btn-show-loading{
    position: relative;
}

.btn-loading-overlay{
    position: absolute;
    z-index:1000;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.7);
}

.btn-loading-icon{
    font-size:1.5em;
    color:#FFF;
    position: relative;
    top:50%;
    transform:translateY(-50%);
    text-align: center;
}

.btn-more {
	display: inline-block;
	text-transform: uppercase;
	text-decoration: none;
	padding-right: 1.125rem;
	background-image: url(../../images/arrow-right-yellow.svg);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: .625rem;
}

.btn-more:hover  {
	padding-right: 1.625rem;
}

.btn-arrow{
    display: inline-block;
    background-color:var(--green-very-dark);
    width:50px;
    height:50px;
    border-radius:100px;
    position: relative;
}

.btn-arrow:after{
    content:'';
    height:100%;
    width:100%;
    display: block;
    background-image:url('../../images/arrow-right-yellow.svg');
    background-repeat: no-repeat;
    background-size:35%;
    background-position: center;
    transition: 0.3s;
}

.btn-arrow:hover:after{
    transform:translateX(3px);
}


@media (min-width: 1200px) {	
	
	.anchor {
		display: block;
		height: 190px;
		margin-top: -190px;
		visibility: hidden;
	}
}

@media (min-width: 1440px) {	

	.btn {
		padding: 1rem 5rem 1rem 1.5rem;
	}


}


/* ------------------------------------------------------------------------ Images */
	
img {
	max-width: 100%;
	height: auto!important; 
}

   .img--float-left, .img--float-right { 
	margin: .5rem 0 1rem 0;	
}

@media (min-width: 576px) {	
	.img--float-left {
		float: left;
		margin: .5rem 1.5rem .375rem 0;
		max-width:50%;
		}
		
	.img--float-right {
		float: right;
		margin: .5rem 0 .375rem 1.5rem;
		max-width:50%;
		}
}

@media (min-width: 768px) {	
	.img--float-left, 
	.img--float-right { max-width:33%; }
}	

	
/* ------------------------------------------------------------------------ SVG's */

svg {
	width: 1rem;
	height: 1rem;
}	
	

/* ------------------------------------------------------------------------ Horizontal Rules */

hr, .hr { 
	margin: 1.5rem auto;
}	

@media (min-width: 768px) {

	hr, .hr {
		margin: 2rem auto;
	}

}	



/* ------------------------------------------------------------------------ Bootstrap Overrides */
.nav-tabs .nav-link{
	border-bottom:5px solid transparent;
}

.nav-tabs .nav-link.active{
	border-bottom-color:var(--green-medium);
}
.tab-pane{
	padding:30px 0 15px;
}

.col-xl-1b {
	position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
}

a.bg-light:focus, a.bg-light:hover, button.bg-light:focus, button.bg-light:hover {
	background-color: transparent !important;
}

@media (min-width: 1200px) {
	.col-xl-1b {
		position: relative;
	    width: 100%;
	    padding-right: 15px;
	    padding-left: 15px;
	    -ms-flex: 0 0 12%;
	    flex: 0 0 12%;
	    max-width: 12%;
	}

	.w-xl-auto {
		width:auto !important;
	}

	.mt-xxl-5 {
		margin-top: 3rem !important;
	}

	.mb-xxl-5 {
		margin-bottom: 3rem !important;
	}
}

@media (min-width: 1440px) {
	.col-xxl-3 {
	    -ms-flex: 0 0 25%;
	    flex: 0 0 25%;
	    max-width: 25%;
	}

	.px-xxl-4 {
		padding-left: 1.5rem!important;
		padding-right: 1.5rem!important;
	}
}

@media (min-width: 1680px) {
	.col-xxxl-2 {
	    -ms-flex: 0 0 16.666667%;
	    flex: 0 0 16.666667%;
	    max-width: 16.666667%;
	}
}


/* ------------------------------------------------------------------------ Datepicker Overrides */
.gj-datepicker-bootstrap button{
	padding:0;
}

.gj-datepicker-bootstrap [role=right-icon] button .gj-icon, 
.gj-datepicker-bootstrap [role=right-icon] button .material-icons{
	top:50% !important;
	transform:translateY(-50%);
}

.gj-datepicker-bootstrap .input-group-append{
	background-color: var(--grey-light);
}


/* =============================================================================================
	HEADER
============================================================================================= */

.print-header { display:none; }
	
.logo { 
	flex: 1;
	display: block;
}

.logo__img {
	max-width: 6rem; 
	width: 100%;
	transition: all .5s;
}

.header {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	z-index: 1030;
	padding: 1rem 0;
	transition: all .5s;
}

.header--green {
	background-color: var(--green-medium);
}

@media (min-width: 768px) {	
	
	.logo__img {
		max-width: 7rem; 
	}

	.logo__error-page {
		margin:1.5rem auto 2.5rem auto;
		float: none;
	}

}

@media (min-width: 1200px) {	

	.header--fixed-top {
		
		position: fixed;
	    top: 0;
	    right: 0;
	    left: 0;
	    z-index: 1040;    
	}

	.header {
		background-color: transparent;
		padding: 1.5rem;
	}

	.header.header--scroll {
		background-color: rgba(39,51,47,.9);
		backdrop-filter: blur(8px);
		padding: 1rem;
	}

	.header--scroll  .logo__img {
		max-width: 6rem; 
	}

}

@media (min-width: 1440px) {	

	.logo__img {
		max-width: 8rem; 
	}

}

@media (min-width: 1680px) {	

	.logo__img {
		max-width: 10rem; 
	}

}

header .navbar-wrapper > .nav-item{
	display: flex;
	height:100%;
}

header .navbar-wrapper > .nav-item a{
	padding:1.375rem 1rem;
	color:var(--white);
	font-size:1.125rem;
	text-decoration: none;
	font-weight: normal;
	display: flex;
	justify-content: center;
	flex-direction: column;
	position: relative;
	height:100%;
}

@media(max-width:1680px){
	header .navbar-wrapper > .nav-item a {
		font-size:0.9rem;
		padding:1.375rem .7rem;
	}
}

@media(max-width:1400px){
	header .navbar-wrapper > .nav-item a {
		font-size:.875rem;
	}
}

header .navbar-wrapper > .nav-item .top-level a:hover,
header .navbar-wrapper > .nav-item .top-level a.active{
	color:var(--yellow-light);
}

header .navbar-wrapper > .nav-item a:hover{
	text-decoration: underline;
}

header .navbar-wrapper > .nav-item:not(.last) .top-level a::after{
	content: '/';
	position: absolute;
	top:50%;
	transform:translateY(-50%);
	right:-.15rem;
	font-size:1.1rem;
	color:var(--yellow-light);
	font-weight: normal;
}

header .nav-item button{
    outline:none;
    background:none;
    border:none;
    position: absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    font-size:10px;
    padding-left:15px;
    height:100%;
}

header .megamenu{
	background:var(--white);
	padding:1rem 1rem 2rem;
	position: absolute;
	bottom:0;
	right:0;
	transform:translateY(100%);
	width:100%;
	/*display: none;*/
}

@media(min-width:1201px){
	header .megamenu{
		display: none;
	}

    .nav-item.has-megamenu:hover > .megamenu{
        display: block;
    }

}

header .navbar-wrapper .megamenu a{
	color:var(--black);
	position: relative;
	padding:.875rem 0;
	line-height: 1.3;
	font-weight: normal;
	text-decoration: none;
	display: block;
	padding-right:30px;
}

header .megamenu a:hover,
header .megamenu a.active{
	color:var(--green-medium);
	text-decoration: underline;
}

header .megamenu .nav-item{
	border-bottom:2px solid var(--green-light);
}

header .subnav .nav-item{
	border:none;
}

header .subnav{
	/*display: none;
	transition: 0.3s;
	overflow: hidden;*/
	padding-left:1rem;
}

header .navbar-wrapper .subnav a{
	padding:.375rem 1rem;
	padding-left:0;
}

header .nav-item.has-subnav a::after{
	content: '+';
	position: absolute;
	top:50%;
	transform:translateY(-50%);
	right:0;
}

header .nav-item.has-subnav:hover a::after{
	content: '-';
}

@media(max-width:1200px){
	header .navbar-wrapper > .nav-item{
		display: block;
	}

	header .navbar-wrapper > .nav-item:not(.last) .top-level a::after{
		content:'';
	}

	header .navbar-wrapper > .nav-item a{
		width:100%;
		padding:.875rem 0;
		font-size:100%;
	}

	header .navbar-wrapper > .nav-item:not(.last) a{
		border-bottom:2px solid rgba(214,246,239,.25);
	}

	header .nav-item button{
        color:var(--yellow-light);
    }

	/*
	header .navbar-wrapper > .nav-item.has-megamenu a:after{
		content:'+' !important;
		font-size:1.2rem;
		right:1rem;
	}
	*/

	header .megamenu{
		/*display: block !important;*/
		position: static;
		transform:none;
		background:none;
		padding:1rem;
	}

	/*
	header .subnav{
		display: block !important;
	}
	*/

	header .navbar-wrapper .megamenu a{
		padding:.375rem 1rem;
		color:var(--white);
	}

	header .megamenu .nav-item a{
        padding:.375rem 1rem;
        border-bottom:none !important;
        line-height: 1.3;
    }
	
	header .navbar-wrapper .megamenu a:hover,
	header .navbar-wrapper .megamenu a.active {
		color:var(--yellow-light);
	}

	header .navbar-wrapper .megamenu .nav-item{
		border-bottom:none;
	}
}

@media(min-width:1200px){
	header .megamenu{
		padding:1rem 2rem 2rem;
		width: 1110px !important;
	    max-width: 1110px !important;
	}
}

@media(min-width:1440px){
	header .megamenu{
		width: 1330px !important;
	    max-width: 1330px !important;
	}
}


@media(min-width:1680px){
	header .megamenu{
		width: 1570px !important;
	    max-width: 1570px !important;
	}
}


/* ------------------------------------------------------------------------ Seach Area */

.search-trigger img {
    width: 2rem;
    height: 2rem;
    margin-left:.5rem;
}


@media (min-width: 1200px) {	

	.search-trigger {
		margin-right: -1px;
		width: 5rem;
		height: 4rem;
		background-color: var(--green-very-dark);
		position: relative;		
		clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%);

	}

}

@media (min-width: 1680px) {	

	.search-trigger {
		width: 6rem;
		height: 5rem;
	}

}



/* ------------------------------------------------------------------------ Search Full Screen */

#search {
	z-index: 2000;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-color: var(--green-medium);
	transition: all 0.5s ease-in-out;
	transform: translate(0px, -100%) scale(0, 0);
	opacity: 0;
}

#search .container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display:inline-block;
	text-align:center;
}

#search .logo__img {
	max-width: 8rem; 
}

#search .form-control--search {	
	color: var(--black);
    background-color: var(--white);
    border:none;
	font-weight: bold;
	font-size: 2rem;	
	padding-left: 2rem;
	padding-right: 2rem;
	text-align: center;
	outline: none;	
}

#search .form-control--search::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: var(--black);
}
#search .form-control--search::-moz-placeholder { /* Firefox 19+ */
  color: var(--black);
}
#search .form-control--search:-ms-input-placeholder { /* IE 10+ */
  color: var(--black);
}
#search .form-control--search:-moz-placeholder { /* Firefox 18- */
  color: var(--black);
}


#search .btn {
	text-align: center;
	margin-top: 2rem;
}

#search .close {
	position: fixed;
	top: 15px;
	right: 15px;
	color: var(--black);
	background-color: var(--white);
	border-color: var(--white);
	opacity: 1;
	padding: 10px 17px;
	font-size: 27px;
	border-radius:50%;
}

#search .close:hover {
	color: var(--green-dark);
}

#search.open {
	transform: translate(0px, 0px) scale(1, 1);
	opacity: 1;
}

@media (min-width: 992px) {	

	#search .container {
		width: 75%;
	}

	#search .logo__img {
		max-width: 10rem; 
	}

	#search .form-control--search {		
		font-size: 3rem;
	}

}

@media (min-width: 1200px) {	

	#search .container {
		width: 62%;
	}

}

@media (min-width: 1440px) {	

	#search .container {
		width: 50%;
	}

}


.SearchResults .OutputUrl {
    color: #333 !important;
    padding-bottom: 2em !important;
    border-top: 1px solid #ddd !important;
}

/* ------------------------------------------------------------------------ Navbar Nav */

.navbar-nav .nav-link {
	border-bottom: 2px solid rgba(214,246,239,.25);
	color: var(--white);
	padding: .875rem 0;
	position:relative;
	line-height: 1.3;
	font-weight: normal;
}

.navbar-nav .nav-link:hover {
	border-bottom: 2px solid rgba(214,246,239,.25);
}

.navbar-nav .nav-item.active>.nav-link,
.navbar-nav .nav-link:hover {
    color: var(--yellow-light);
}

.navbar-nav .nav-item:last-child .nav-link,
.navbar-nav .nav-link.highlighted,
.navbar-nav .megamenu .nav-link.has-submenu:hover {
	border-bottom: none !important;
}

.navbar-nav.sm-collapsible .has-submenu {
	padding-right: 2em;
}

.navbar-nav .dropdown-menu {
	border: 0;
	padding-top: 0;
	background-color: var(--green-medium);
	border-radius: 0;
	margin:0;
	padding:0 0 1.25rem 0;
	border-bottom: 2px solid rgba(214,246,239,.25);
}

.navbar-nav .dropdown-item {
	border-bottom:none;
	padding: .375rem 1rem;
	color: var(--white);
	line-height:1.3;
}

.navbar-nav .dropdown-menu li.active > .dropdown-item,
.navbar-nav .dropdown-menu .dropdown-item.active {
	font-weight:bold;
}

.navbar-nav li {
	padding: 0;
	background-image: none;
	position:relative;
}

.navbar-nav .dropdown-menu li.active > .dropdown-item,
.dropdown-item.active {
	color: var(--yellow-light);
	background-color: var(--green-medium);
}

.navbar-nav .dropdown-item:hover,
.navbar-nav .dropdown-item:focus {
	background-color: var(--green-medium);
}

.navbar-nav .dropdown-item:hover {
	text-decoration: underline;
	color: var(--yellow-light);
}

.navbar-nav .dropdown-item:active {
	color:var(--white);
}

.navbar-nav .dropdown-menu .dropdown-menu {
	background-color: var(--green-medium);
	border-bottom: none;
	padding-bottom: 0;
}

.navbar-nav.sm-collapsible .dropdown-menu .dropdown-menu {
	margin: .125rem 0 0 1rem;
}

.navbar-nav .dropdown-item .dropdown-item {
	background-color: inherit;
}

.navbar-nav:not(.sm-collapsible) .nav-link .sub-arrow {
	display: none;
	border:0;
}

.navbar-nav.sm-collapsible .sub-arrow {
	border: none;
	width: 2rem;
	margin-right: 0;
}

.navbar-nav:not(.sm-collapsible) .dropdown-item .sub-arrow, .navbar-nav:not(.sm-collapsible):not([data-sm-skip]) .dropdown-menu .dropdown-toggle::after {
    border: none;
    width: .625rem;
    height: .625rem;
    background-image: url(../../images/arrow-right-gray.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: .625rem .625rem;
}

.dropdown-toggle::after {
   display:none
}



/* ------------------------------------------------------------------------ Navbar Sidenav Variant - Note: sidenav wrapper styling is in Sidenav section */

.navbar-nav--sidenav {
	border-top: 2px solid var(--green-light);
}

.navbar-nav--sidenav .nav-link {
	border-bottom: 2px solid var(--green-light);
	color: var(--black);
}

.navbar-nav--sidenav .nav-link:hover  {
	border-bottom: 2px solid var(--green-light);
}

.navbar-nav--sidenav .nav-item.active .nav-link,
.navbar-nav--sidenav .nav-item.active:hover .nav-link,
.navbar-nav--sidenav .nav-link:hover {
    color: var(--green-medium);
}

.navbar-nav--sidenav .nav-item.active .nav-link {
    font-weight:bold;
}

.navbar-nav .nav-item:last-child .nav-link,
.navbar-nav .nav-link.highlighted  {
	border-bottom: none;
}

.navbar-nav--sidenav .dropdown-menu {
	background-color: var(--white);
	border-bottom: 2px solid var(--green-light);
}

.navbar-nav--sidenav .dropdown-item {
	color: var(--black);
}

.navbar-nav--sidenav .dropdown-menu li.active > .dropdown-item,
.navbar-nav--sidenav .dropdown-item.active {
	color: var(--green-medium);
	background-color: var(--white);
}

.navbar-nav--sidenav .dropdown-item:hover,
.navbar-nav--sidenav .dropdown-item:focus {
	background-color: var(--white);
}

.navbar-nav--sidenav .dropdown-item:hover {
	text-decoration: underline;
	color: var(--green-medium);
}


.navbar-nav--sidenav .dropdown-item:active {
	color:var(--green-medium);
}

.navbar-nav--sidenav .dropdown-menu .dropdown-menu {
	background-color: var(--white);
}

.megamenu .dropdown-menu{
    position: static !important;
}


@media (min-width: 1200px) {	

	.navbar-wrapper {
		background-color: var(--green-medium);
		height: 4rem;
		position: relative;
	}

	.navbar-wrapper:before {
		content: "";
		position:absolute;
		top: 0;
		left:-.813rem;
		width:1rem;
		height: 4rem;
		background-image: url(../../images/nav-angle.png);
	    background-repeat: no-repeat;
	    background-position: center center;
	    background-size: auto 100%;
	}

	.navbar-nav--topnav li {
		padding-right:.5rem;
	}

	.navbar-nav--topnav .nav-item {
	    background-image: url(../../images/topnav-divider.svg);
	    background-repeat: no-repeat;
	    background-position: right .5rem center;
	    background-size: 0.375rem;
	}

	.navbar-nav--topnav .nav-item:last-child {
		background-image: none;
	}

	.navbar-nav--topnav .nav-link {
		padding: 1.375rem 0!important;
		margin-right: 1rem;
		border-bottom: 0;
		color: var(--white);
		font-size: .875rem;
	}

	.navbar-nav--topnav .nav-link:hover {
		border-bottom: 0;
	}

	.navbar-nav--topnav .nav-item.active .nav-link,
	.navbar-nav--topnav .nav-item.active:hover .nav-link,
	.navbar-nav--topnav .nav-link:hover {
	    color: var(--yellow-light);
	}

	.navbar-nav--topnav .nav-item:last-child .nav-link {
		margin-right:0; 
	}

	.navbar-nav--topnav .has-megamenu {
		position:static;
	}

	.navbar-nav--topnav .dropdown-menu {
		padding: 0;
		min-width: 15rem !important;
		background-color: var(--white);
	}

	.navbar-nav--topnav .dropdown-item {
		color: var(--black);
		border-bottom: 2px solid var(--green-light);
		padding: .875rem 0;
	}

	.navbar-nav--topnav .dropdown-menu li.active > .dropdown-item,
	.dropdown-item.active,
	.navbar-nav--topnav .dropdown-item:hover,
	.navbar-nav--topnav .dropdown-item:focus {
		color: var(--green-medium);
		background-color: var(--white);
		
	}

	.navbar-nav--topnav .dropdown-item:active {
		color:var(--green-medium);
	}

	.navbar-nav--topnav .dropdown-menu .dropdown-menu {
		background-color: var(--white);
	}

}

@media (min-width: 1440px) {

	.navbar-nav--topnav .nav-item {
	    background-position: right .75rem center;
	    background-size: 0.438rem;
	}

	.navbar-nav--topnav .nav-link {
		font-size: 1rem;
		margin-right: 1.5rem;
	}

	.navbar-nav--topnav .nav-item:after {
	    width: 32px;
	}

}

@media (min-width: 1680px) {

	.navbar-wrapper {
		height: 5rem;
	}

	.navbar-wrapper:before {		
		left:-.938rem;
		height: 5rem;
	}

	.navbar-nav--topnav .nav-link {
		font-size: 1.125rem;
		margin-right: 1.5rem;
		padding: 1.75rem 0!important;
	}

}



/* ------------------------------------------------------------------------ Megamenu */

@media (min-width: 1200px) {
	.navbar-nav--topnav .megamenu {
	    width: 1110px!important;
	    max-width: 1110px!important;
	    left: auto;
	    right: 0;
	    box-shadow: 0px 0px 15px rgba(0,0,0,0.25);
	}

	.navbar-nav--topnav .megamenu[style] {
		margin-left: 0!important;
		right: 0!important;
		left: auto!important;
	}

	.megamenu-body {
		padding: 1rem 1rem 2rem 1rem;
	}

	.megamenu__columns>li {
		position: relative;
	    width: 100%;
	    padding-right: 15px;
	    padding-left: 15px;
        -ms-flex: 0 0 50%;
	    flex: 0 0 50%;
	    max-width: 50%;
	}

	.megamenu .dropdown-item.highlighted {
		border-bottom: none !important;
	}

	.megamenu .sub-arrow {
		background-image: none !important;
		top: 50% !important;
	}

	li.has-megamenu > a .sub-arrow{
        display: none;
    }

	.megamenu .sub-arrow::before {
		position: absolute; 
	    right: 0;
	    /*margin: -0.7em 0.5em 0 0;*/
	    border: 1px solid rgba(0, 0, 0, .1);
	    border-radius: .25rem;
	    padding: 0;
	    width: 2em;
	    height: 1.4em;
	    font-size: 1.25rem;
	    line-height: 1.2em;
	    text-align: center;
	    content: '+';
	    border: none;
	    width: 2rem;
	    margin-right: 0;
	}

	.megamenu .dropdown-item.highlighted .sub-arrow::before {
	    content: '-';
	}

	.dropdown-menu--megamenu {
	    margin: 0 !important;
	    width: 100% !important;
	    position: relative !important;
    	border-bottom: 2px solid var(--green-light) !important;
    	padding: 0 0 1.25rem 0 !important;
	}

	.dropdown-menu--megamenu[style] {
	    max-width: 100% !important;
	}

	.dropdown-menu--megamenu .dropdown-item {
		border-bottom: none;
	    padding: .375rem 1rem;
	    line-height: 1.3;
	}

}

@media (min-width: 1440px) {

	.navbar-nav--topnav .megamenu {
	    width: 1330px!important;
	    max-width: 1330px!important;
	}

	.megamenu__columns>li {
        -ms-flex: 0 0 33.333333%;
	    flex: 0 0 33.333333%;
	    max-width: 33.333333%;
	}

}

@media (min-width: 1680px) {

	.navbar-nav--topnav .megamenu {
	    width: 1570px!important;
	    max-width: 1570px!important;
	}

}



/* ------------------------------------------------------------------------ Navbar Toggler */

.navbar-toggler {
	padding: 0 0 0 1rem;
	border: none;
	cursor: pointer;
}

.navbar-toggler-icon {
    background-image: url(../../images/menu-icon.svg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	background-image: url(../../images/menu-icon-open.svg);
}

@media (min-width: 1200px) {

	.navbar-toggler {
		display: none;
	}

}



/* ------------------------------------------------------------------------ Sidenav - Note: nav styling is in Navbar Nav section */

.sidenav-toggler {
	text-align: left;
}

.sidenav-toggler:hover, .sidenav-toggler:active, .sidenav-toggler:not([disabled]):not(.disabled).active, .sidenav-toggler:not([disabled]):not(.disabled):active, .show>.btn-primary.dropdown-toggle {
    background-color: var(--green-medium);
    box-shadow: none;
}

.sidenav-toggler.active:after {
    width: calc(100% + 2px);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    background-position: right 2rem center;
}

.sidenav.sticky-top {
	top: 192px; /*This will change depending on the height of the header*/
}

.sidenav {
	border: 2px solid var(--green-light);
	padding: 1.5rem 1.5rem .75rem 1.5rem;
	display:none;
}

.sidenav.show {
	display:block;
}

.sidenav__header-link {
	display: block;
	transition: all 0.25s;
	color: var(--green-dark);
}

.sidenav__header-link:hover {
 	color: var(--green-medium);
 	text-decoration: none !important;
}


@media (max-width: 991px) {

	.sidenav.sticky-top {
		position: static; /*disable on smaller screens*/
	}

}

@media (min-width: 992px) {
	
	.sidenav-toggler {
		display:none;
	}

	.sidenav {
		border: none;
		padding:0;
		display:block;
	}

}

@media (min-width: 1440px) {

	.sidenav__list-container {
		width:90%;
	}

}



/* =============================================================================================
	MAIN CONTENT AREA
============================================================================================= */

@media (min-width: 992px) {		
	
	.aside {
		padding-left: 1rem
	}
	
	.main--full-width {
		width: 100%;
		padding-left: 0;
	}
			
}

@media (min-width: 1440px) {	
	main p,
	main li,
	label,
	table,
	.btn {
		font-size: 1.125rem;
	}	
}

@media (min-width: 1440px) {
	.container {
	    max-width: 1360px;
	}
}

@media (min-width: 1680px){ 
	.container {
	    max-width: 1600px;
	}
}



/* ------------------------------------------------------------------------ Sections */

.section { 
	padding: 4rem 0;
}

.pb-section, .py-section {
    padding-bottom: 4rem!important;
}

.pt-section, .py-section {
    padding-top: 4rem!important;
}

.mb-section, .my-section {
    margin-bottom: 4rem!important;
}

.mt-section, .my-section {
    margin-top: 4rem!important;
}

@media (min-width: 1440px) {	

	.section { 
		padding: 7rem 0; 
	}

	.section--lg { 
		padding: 10rem 0; 
	}

	.pb-section, .py-section {
	    padding-bottom: 7rem!important;
	}

	.pt-section, .py-section {
	    padding-top: 7rem!important;
	}

	.mb-section, .my-section {
	    margin-bottom: 7rem!important;
	}

	.mt-section, .my-section {
	    margin-top: 7rem!important;
	}

}



/* ------------------------------------------------------------------------ Jumbotron/banner */

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0) rotate(90deg);
  }
  40% {
    transform: translateY(-20px) rotate(90deg);
  }
  60% {
    transform: translateY(-15px) rotate(90deg);
  }
}

.jumbotron {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 0;
    margin-bottom: 0;
    min-height: 15rem;
    border-radius: 0;
    position: relative;
}

.jumbotron--home {
    min-height: 28rem;
    background-image: url(../../images/jumbotron-home-image.jpg);
    overflow: hidden;
}
   
.jumbotron--home iframe, .jumbotron--home video {
    display: none;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.jumbotron__overlay {
    background-color: rgba(0,0,0,.5);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.jumbotron__overlay--top {
    background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
    position: absolute;
    width: 100%;
    height: 50%;
    top: 0;
    left: 0;
}

.jumbotron__scroll {
	display:none;
}

.jumbotron--inside {
    min-height: 22rem;
}

.jumbotron__caption {
    color: var(--white);
    position: relative;
    text-align: right;
}

.jumbotron h1 { 
	padding-left: 3rem;
}

.jumbotron .h2 {
	color: var(--white);
	padding-right: 0;
	display:block;
}

.jumbotron .h2:after {
	display:none;
}

.jumbotron__side {
	background: url(../../images/jumbotron-side.png) no-repeat left top;
	background-size: 100% 100%;
	position: absolute;
    width: 13rem;
    height: 100%;
    top: 0;
    left: calc((100% - (100% - 30px)) / 2 - 9.75rem) !important;
}

.jumbotron__side:after {
	content: "";
	background: url(../../images/jumbotron-wheat.svg) no-repeat left top;
	background-size: 100%;
	position: absolute;
    width: 4.5rem;
    height: 6.75rem;
    bottom: 0;
    right: -.5rem;
}

@media (min-width: 576px) {
    .jumbotron--home {
        min-height: 30rem;
    }

    .jumbotron--inside {
        min-height: 24rem;
    }

    .jumbotron h1 {
	    padding-left: 5rem;
	}

     .jumbotron__side {
    	width: 13rem;
	    left: calc((100% - 540px) / 2 - 8.75rem) !important;
	}

	.jumbotron__side:after {
	    right: 0;
	}

}

@media (min-width: 768px) {

	.jumbotron h1 {
	    padding-left: 7rem;
	}

	.jumbotron__side {
	    left: calc((100% - 720px) / 2 - 8.25rem) !important;
	}

}

@media (min-width: 992px) {
  
	.jumbotron__side {
    	width: 15rem;
	    left: calc((100% - 960px) / 2 - 10.25rem) !important;
	}

	.jumbotron__side:after {
	    width: 5.5rem;
    	height: 8.25rem;
    	right: -.25rem;
	}

	.jumbotron--home iframe, .jumbotron--home video {
        display: block;
        width: 100%;
    }

    .jumbotron--home {
    	height: 95vh;
        min-height: 34rem;
        max-height: 34rem;
    }

}

@media (min-width: 1200px) {
	.jumbotron__overlay--top {
		display:none;
	}

    .jumbotron__side {
	    left: calc((100% - 1140px) / 2 - 10.25rem) !important;
	}

	.jumbotron--home {
        max-height: 38rem;
    }

    .jumbotron--inside {
        min-height: 28rem;
    }

    .jumbotron__scroll {
		display: block;
		position: absolute;
	    width: 100%;
	    height: 100%;
	    bottom: 2rem;
	    left: calc(50% - 1.5rem);
	    width: 3rem;
		height: 3rem;
		border-radius: 50%;
		background: var(--green-medium) url(../../images/arrow-right-yellow.svg) no-repeat center center;
	    background-size: 1rem;   
	    transform: rotate(90deg);
	    transition: all .25s;
	}

	.jumbotron__scroll a {
		display: block;
		width: 3rem;
		height: 3rem;
	}

	.jumbotron__scroll:hover {
		animation: bounce 1.25s infinite ease-in-out;
		background-color: var(--green-dark)
	}
}

@media (min-width: 1440px) {
    .jumbotron__side {
    	width: 22.5rem;
	    left: calc((100% - 1360px) / 2 - 17rem) !important;
	}

	.jumbotron__side:after {
	    width: 6.5rem;
	    height: 9.75rem;
	    right: 1rem;
	}

	.jumbotron--home {    
        min-height: 42rem;
        max-height: 45rem;
    }

    .jumbotron--inside {
        min-height: 33rem;
    }

    .jumbotron h1 {
	    padding-left: 8rem;
	}

    .jumbotron__scroll {
	    bottom: 3rem;
	    left: calc(50% - 2rem);
	    width: 4rem;
		height: 4rem;
	}

	.jumbotron__scroll a {
		display: block;
		width: 4rem;
		height: 4rem;
	}


}

@media (min-width: 1680px) {
    .jumbotron__side {
	    left: calc((100% - 1600px) / 2 - 16rem) !important;
	}
	.jumbotron__side:after {
	    width: 7.5rem;
	    height: 11.25rem;
	}

	.jumbotron--home {    
        min-height: 50rem;
        max-height: 54rem;
    }

    .jumbotron--inside {
        min-height: 38rem;
    }

    .jumbotron h1 {
	    padding-left: 10rem;
	}

}



/* ------------------------------------------------------------------------ Breadcrumbs */

.section--breadcrumb {
	background-color: var(--green-light);
	padding:1rem 0;
	display:none;
}

.breadcrumb {
    padding: 0;
    margin-bottom: 0;
    background-color: transparent;
}

.breadcrumb li {
	padding-bottom: 0;
	white-space: nowrap;
	max-width: 15%;
    overflow: hidden;
    text-overflow: ellipsis; 
    font-weight: bold;   
}

.breadcrumb-item.active {
    max-width: 25%;
    color: var(--black);
}

.breadcrumb a {
	color: var(--black);
	text-decoration: underline;
}

.breadcrumb a:hover {
	text-decoration: none;
	color: var(--green-dark);
	text-decoration: none;
}

.breadcrumb-item+.breadcrumb-item::before {
    color: var(--green-medium);
    font-weight: bold;
}

@media (min-width: 992px) {

	.section--breadcrumb {
		display:block;
	}
}


/* ------------------------------------------------------------------------ Sponsors Scroll */

.section--sponsors .container {
	background: url(../../images/our-sponsors-bg.svg) no-repeat center center;
	background-size: 90%;
}

.sponsor-scroll {
	display: none;
	margin-bottom: 0;
}

.sponsor-scroll li {
	background-image: none;
	padding-bottom: 0;
}

.sponsor-scroll img {
	width:12rem;
}

@media (min-width: 992px) {

	.section--sponsors .container {
		background-size: 85%;
	}

	.sponsor-scroll img {
		width:15rem;
	}

}

@media (min-width: 1440px) {

	.sponsor-scroll img {
		width:18rem;
	}

}

/* ------------------------------------------------------------------------ Sponsors */

.sponsor-cell{
	display: block;
	border:2px solid var(--green-light);
	padding:15px;
	height:300px;
	text-align: center;
	margin-bottom:30px;
}

.sponsor-cell:hover{
	border-color: var(--green-dark);
}

.sponsor-cell--img{
	position: relative;
	top:50%;
	transform:translateY(-50%);
	max-width: 100%;
	max-height: 100%;
}


/* ------------------------------------------------------------------------ Callout with Outer Image Wrapper */

.callout--image-wrap {
	background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.callout--image-wrap__inner {
	background-color: rgba(255,255,255,.95);
	width: 100%;
	margin: 3rem 1.5rem;
	padding: 2rem 1rem;
	position: relative;
}


.callout--image-wrap--sm {
	position: relative;
	margin: 4rem 0;
	background-position: center 20%;
}

.callout--image-wrap--sm a {
    text-decoration: none;   
}

.callout--image-wrap--sm a:after {
	content: "";
	position: absolute;
	top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	background-color: rgba(26,24,24,0);
	transition: all .25s;
}

.callout--image-wrap--sm:hover a:after {
	background-color: rgba(26,24,24,.75);
}

.callout--image-wrap--sm .callout--image-wrap__inner {
	text-align: center;
	transition: all .25s;
	z-index: 1;
}

.callout--image-wrap--sm:hover .callout--image-wrap__inner {
	margin: 3rem 1rem;
	padding: 2rem 1.5rem;
	background-color: rgba(255,255,255,1);
}

.callout--image-wrap--sm .callout--image-wrap__img {
	width: 4rem;
	height: 7.714rem;
	margin-bottom: 1rem;
	transition: all .25s;
}

.callout--image-wrap--sm:before, .callout--image-wrap--sm:after {
	content: "";
	position:absolute;
	top: -.75rem;
    left: 0;
    width: 100%;
	height:.75rem;
	background: url(../../images/card-bg.png) no-repeat left bottom;
	background-size: 100% .75rem;
}

.callout--image-wrap--sm:after {
	top:auto;
	bottom: -.75rem;
	transform: rotate(180deg);

}

@media (min-width: 576px) {
	.callout--image-wrap--sm:hover .callout--image-wrap__img {
		margin-bottom: 1.5rem;
	}

	.callout--image-wrap--sm:hover .callout--image-wrap__inner {
		padding: 1.75rem 1.5rem;
	}
}


@media (min-width: 992px) {

	.callout--image-wrap-group {
		position: relative;
	}

	.callout--image-wrap-group--lg:after {
		content: "";
		position:absolute;
		top:-4.5rem;
		right:-4.5rem;
		width: 9rem;
		height:8.75rem;
		background-image: url(../../images/accent-citrus.svg);
	    background-repeat: no-repeat;
	    background-position: center center;
	    background-size: 100%;
	    z-index: -1;
	    transform: scale(.6);
	}

	.callout--image-wrap-group--lg .callout--image-wrap {
		clip-path: polygon(0 0, 100% 0, 94% 100%, 0% 100%);
	}

	.callout--image-wrap-group--lg .callout--image-wrap__inner {
		margin: 4rem 4.5rem 4rem 2rem;
		padding: 3rem 1.5rem;
	}

	.callout--image-wrap-group--lg .callout--image-wrap__inner:after {
		content: "";
		position:absolute;
		top:0;
		right:-2.813rem;
		width: 2.813rem;
		height:100%;
		background-image: url(../../images/callout-image-wrap-inner-bg.png);
	    background-repeat: no-repeat;
	    background-position: center center;
	    background-size: 2.813rem 100%;
	    opacity: .95;
	}

	.callout--image-wrap-group--lg .callout--image-wrap--right {
		clip-path: polygon(6% 0, 100% 0, 100% 100%, 0 100%);
	}

	.callout--image-wrap-group--lg .callout--image-wrap--right .callout--image-wrap__inner {
		margin: 4rem 2rem 4rem 4.5rem;
	}

	.callout--image-wrap-group--lg .callout--image-wrap--right .callout--image-wrap__inner:after {
		right: auto;
		left:-2.813em;
	  	transform: rotate(180deg);
	}
	
}

@media (min-width: 1680px) {

	.callout--image-wrap-group--lg:after {
		transform: scale(1);
	}

	.callout--image-wrap-group--lg .callout--image-wrap__inner {
		margin: 8rem 6.5rem 8rem 4rem;
		padding: 4rem 3rem;
	}

	.callout--image-wrap-group--lg .callout--image-wrap--right .callout--image-wrap__inner {
		margin: 8rem 4rem 8rem 6.5rem;
	}


	.callout--image-wrap--sm .callout--image-wrap__inner {
    	margin: 4rem 3rem;
    	padding: 3rem 2rem;
    }

    .callout--image-wrap--sm:hover .callout--image-wrap__inner {
		margin: 4rem 2rem;
		padding: 2.75rem 3rem;
	}

}



/* ------------------------------------------------------------------------ Callout Split */

.callout-split {
    color: var(--white);
	position: relative;
	}

.callout-split__text {
	background: var(--green-medium) url(../../images/callout-split-bg.svg) repeat-x center bottom;
	position: relative;

	width: 100%;
    padding-right: 15px !important;
    padding-left: 15px !important;
    margin-right: auto;
    margin-left: auto;
}

.callout-split__image {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	position: relative;
	height: 18rem;	
}

@media (min-width: 576px) {

	.callout-split__text {
		padding: 4rem calc((100% - 510px) / 2) !important;
	}

}

@media (min-width: 768px) {

	.callout-split__text {
		padding: 4rem calc((100% - 690px) / 2) !important;
	}

	.callout-split__image {
		height: 20rem;
	}

}

@media (min-width: 992px) {
	
	.callout-split {
	    color: var(--white);
		background: var(--green-medium) url(../../images/callout-split-bg.svg) repeat-x center bottom;
	}

	.callout-split:after {
		content: "";
		position:absolute;
		top:-7.25rem;
		left: calc((100% - 960px) / 2 - 2rem) !important;
		width: 8.25rem;
		height:9.125rem;
		background-image: url(../../images/accent-cotton.svg);
	    background-repeat: no-repeat;
	    background-position: center center;
	    background-size: 100%;
	    z-index: -1;
	    transform: scale(.6);
	}

	.callout-split__text {
		padding-left: calc((100% - 930px) / 2) !important;
		padding-right: 2rem !important;
		background: none;
	}

	.callout-split__image {
		height:unset;
	}

    .callout-split__text:after {
    	content: "";
	    position: absolute;
	    top: 0;
	    right: -4.938em;
	    width: 5rem;
	    height: 100%;
	    background-image: url(../../images/callout-split-bg-angle.png);
	    background-repeat: no-repeat;
	    background-position: right center;
	    background-size: 5rem 100%;
	    z-index: 1;
    }

}

@media (min-width: 1200px) {
	.callout-split__text {
		padding-left: calc((100% - 1110px) / 2) !important;
		padding-right: 4rem !important;
	}

	.callout-split:after {
		left: calc((100% - 1140px) / 2 - 2.5rem) !important;
	}
}

@media (min-width: 1440px) {
	.callout-split__text {
		padding:9rem !important;
	    padding-left: calc((100% - 1330px) / 2) !important;
	}

	.callout-split:after {
		left: calc((100% - 1360px) / 2 - 2.5rem) !important;
	}
}

@media (min-width: 1680px) {
	.callout-split__text {
	    padding-left: calc((100% - 1570px) / 2) !important;
	    padding-right: 9rem !important;
	}

	.callout-split:after {
		left: calc((100% - 1600px) / 2 - 3rem) !important;
		top: -9.125rem;
		transform: scale(1);
	}

}



/* ------------------------------------------------------------------------ Cards */

.card {
	border: 2px solid var(--green-medium);
	position:relative;
	margin: 4rem 0;
}

.card:before, .card:after {
	content: "";
	position:absolute;
	top: calc(-.75rem - 2px);
	left:-2px;
	width: calc(100% + 4px);
	height:.75rem;
	background: url(../../images/card-bg.png) no-repeat left bottom;
	background-size: 100% .75rem;
}

.card:after {
	top:auto;
	bottom: calc(-.75rem - 2px);
	transform: rotate(180deg);
}

.card, .card-header:first-child  {
	border-radius: 0;
}

.card-body {
	padding: 1.5rem;
}

@media (min-width: 992px) {
	.card-body {
		padding: 2rem;
	}
}

@media (min-width: 1680px) {
	.card-body {
		padding: 2.75rem 3rem;
	}
}


/* ------------------------------------------------------------------------ Card Columns */

.card-columns {
    -webkit-column-gap: 0;
    column-gap: 0;
}

.card-columns .card {
    border: none;
    margin:  0 0 2rem 0;
    border:none;
}

.card-columns .card:before, .card-columns .card:after {
	display:none;
}

@media (min-width: 576px) {
	.card-columns {
	    -webkit-column-count: 2;
	    -moz-column-count: 2;
	    column-count: 2;
	    -webkit-column-gap: 2rem;
	    -moz-column-gap: 2rem;
	    column-gap: 2rem;
	}
}

@media (min-width: 1440px) {
	.card-columns {
	    -webkit-column-count: 3;
	    -moz-column-count: 3;
	    column-count: 3;
	    -webkit-column-gap: 2rem;
	    -moz-column-gap: 2rem;
	    column-gap: 2rem;
	}
}



/* ------------------------------------------------------------------------ List Group */

.list-group-item, .list-group li {	
 	margin-bottom: 0;
 	border: none;
 	border-bottom: 2px solid var(--green-light);
}

.list-group-item:last-child, .card>.list-group:last-child .list-group-item:last-child {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.list-group-item:first-child, .card>.list-group:first-child .list-group-item:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.list-group-item, .list-group li {
	padding: 0;
	background: url(../../images/list-group-bullet.svg) no-repeat left 1.25rem;
	background-size: .75rem .75rem;
}

.list-group-item.intro-text {
	background-size: 1rem 1rem;
}

.list-group-item.active, .list-group li.active {
	background-color: var(--white);
    border-color: var(--green-light);
}

.list-group__link, .list-group li a {
	display: block;
	line-height: 1.3;
	transition: all 0.25s;
	padding: 1rem 0 1rem 1.5rem;	
	font-weight: bold;
}

.list-group-item.intro-text .list-group__link, .list-group-item.intro-text a, .list-group-item.intro-text span, .list-group-item span {
	padding: 1rem 0 1rem 2rem;	
}

a.list-group__link:hover, .list-group li a:hover {
	transform: translateX(.5rem);
}

.list-group ul {
	margin:0 0 1.5rem 1.75rem;	
}

.list-group ul li {
	margin:0 ;	
	padding: 0 0 0.5rem 1rem;
	border-bottom:none;
	background: url(../../images/arrow-right-gray.svg) no-repeat left 0.625rem;
    background-size: 0.625rem 0.625rem;
}

.list-group-item.intro-text span, .list-group-item span {
	display: block;
	line-height: 1.3;
	transition: all 0.25s;
}

@media (min-width: 1440px) {
	.list-group-item, .list-group li {
		background-size: 1rem 1rem;
		background-position: left 1.375rem;
	}

	.list-group-item.intro-text {
		background-size: 1.25rem 1.25rem;
	}

	.list-group__link, .list-group li a {
		padding: 1.125rem 0 1.125rem 1.75rem;	
	}

	.list-group-item.intro-text .list-group__link, .list-group-item.intro-text a, .list-group-item.intro-text span, .list-group-item span {
		/*padding: 1.125rem 0 1.125rem 2.25rem;*/
		padding: 1.125rem 0 1.125rem 1.75rem
	}

}


/* ------------------------------------------------------------------------ Featured Box */

.featured-box {
	border: solid 2px var(--green-light);
	padding: 2rem;
	/*height: 100%;*/
}

.featured-box div.image {
	position: relative;
	top: 50%;
	/*transform: translateY(-50%);*/
}

/* ------------------------------------------------------------------------ Accordions */

.accordion-group {
	border-top: 2px solid var(--green-light);
}

.accordion__card {
	border-bottom: 2px solid var(--green-light);
}

.accordion__card-header {
	background-color: transparent;
    border-bottom: 0;
    padding:0;
    font-weight: bold;
    background: url(../../images/list-group-bullet.svg) no-repeat right 1.5rem;
	background-size: 1rem 1rem;
}

.accordion__card.active .accordion__card-header {
	background-image: url(../../images/list-group-bullet-minus.svg);
}

.accordion__card-link {
	padding: 1rem 2rem 1rem 0;
	line-height: 1.3;
	display:block;
	text-decoration: none;
	color: var(--black);
}

.accordion__card-link:hover {	
	color: var(--green-dark);
	transform: translateX(.5rem);
}

.accordion__card-body {
	padding: 0 0 .75rem 0;
}

@media (min-width: 1440px) {

	.accordion__card-header {
		background-size: 1.25rem 1.25rem;
	}

	.accordion__card-link {
	    padding: 1.125rem 2.25rem 1.125rem 0;
	}

	.accordion__card-body {
		padding: 0 0 1rem 0;
	}

}


/* ------------------------------------------------------------------------ Pagination */

.pagination {
	align-items: center;
}

.page-item {
	background-image: none;
	margin: 0 0.25rem 0 0;
	padding: 0;
}

.page-link:hover {
	background-color: transparent;
	border-color: transparent;
}

.page-link {
	font-weight: normal;
	color: var(--black);
	border: 0;
	padding:0;
}

.page-item.active .page-link {
	background-color: transparent;
	border-color: white;
	color: var(--black);
	border: 2px solid var(--green-light);
	text-align: center;
	font-weight: bold;
	border-radius: 0;
	padding: 0.5rem 1.25rem;
}

.page-item:before {
	display: none;
}

.page-arrow {
	width: 1.5rem;
	height: 1.5rem !important;
	fill: var(--black);
	transition: all .25s
}

.page-arrow:hover {
	fill: var(--green-dark);
}

.page-arrow--prev {
	transform: rotate(180deg);
}


.paginate_button.current {
	background: var(--grey-light) !important;
	border-color: var(--grey-light) !important;
}

.paginate_button:hover {
	color: var(--white) !important;
	background: var(--green-medium) !important;
	border-color: var(--green-medium) !important;
}

.paginate_button.current:hover {
	cursor:default !important;
	background: var(--grey-light) !important;
	border-color: var(--grey-light) !important;
}

.paginate_button.previous, .paginate_button.next {
	background: none !important;
	border-color: none !important;
}

/* ------------------------------------------------------------------------ Tables */

.table {
	background-color: var(--white);
	color: var(--black);
	border-top: 2px solid var(--green-light);
}

.table thead th {
	color: var(--green-dark);
    border: none;
    border-bottom: 2px solid var(--green-light);
}

.table td, .table th {
    padding: .75rem 1.5rem .75rem 0;
    vertical-align: top;
    border-top: none;
    border-bottom: 2px solid var(--green-light);
}

.table.table-sm td, .table.table-sm th{
	padding:0.3rem;
}

.table td {
	vertical-align: middle;
}

.table td.fit, 
.table th.fit {
    white-space: nowrap;
    width: 1%;
}

/*@media (max-width: 767px) {
    .table-scroll:before {
        position: relative;
        content: 'Swipe or scroll table to view all info';
        margin-top: 1rem;
        font-size: 1rem;
        display: block;
    }
    
}   */ 

table.dataTable.no-footer {
	border-bottom: 0 !important;
	margin-bottom: 1em;
}

/* ------------------------------------------------------------------------ Forms */
	
.required-input {
	color: var(--red) !important;
	font-size: 0.875rem;
	font-weight:bold;
}

.selectize-control{
	font-size:0; /* fix for whitespace adding height to elements */
}

.form-control,
.selectize-input {
	border-radius:0;
	border: 2px solid var(--green-light);
	padding: .5rem .75rem;
	height: auto;
}

.selectize-input{
	box-shadow: none;
	line-height: 1.5;
}

.selectize-dropdown{
	font-size: 1.1rem;
}

.form-control:focus,
.selectize-input:focus {
	box-shadow: none;
	border-color: rgba(0, 0, 0, 0.5);
}

.selectize-dropdown .optgroup-header{
	font-weight: bold;
}

select.form-control:not([size]):not([multiple]) {
    height: auto;
}

.form-control-file {cursor: pointer;}

.custom-file, .custom-file-input {
	height: auto;
}

.custom-file-label {
    height: auto;
    padding: .5rem .75rem;
    line-height: 1.5;
    color: var(--black);
    background-color: var(--white);
    border: 2px solid var(--green-light);
    border-radius: 0;
}

.custom-file-label::after {
    height: auto;
    padding: .375rem .75rem;
    color: var(--black);
    background-color: var(--green-light);
    border-radius: 0;
    line-height: 1.6;
}

.btn-file {
	background-color: var(--green-medium);
	color: var(--white);
	padding: .625rem .75rem;
}

.btn-file:hover {
	background-color: var(--green-dark);
	color: var(--white);
}


/*custom radio and checkbox*/
.custom-control {
	padding-left: 1.75rem;
	margin-bottom: 0;
	cursor: pointer;
}

.custom-control-label::before {
    background-color: var(--white);
    border: 2px solid #abe6d9;
    top: .375rem;
}

.custom-control-label::after {
    top: .375rem;
}

.custom-control-input:checked~.custom-control-label::before {
    background-color: var(--green-medium);
	border-color: var(--green-medium);
}

.custom-control-input:focus ~ .custom-control-indicator {
    box-shadow: none;
    border-color: var(--black);
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px white inset;
}


/* ------------------------------------------------------------------------ Job Opening Page */

.job-cell {
	display: block;
	position: relative;
	padding:25px 0;

	border-bottom:2px solid var(--green-light);
	text-decoration: none;
	padding-right:70px;
	color:inherit;
	font-weight: normal;
}

.job-cell:first-of-type{
	border-top:2px solid var(--green-light);
}

.job-cell:after{
	position: absolute;
	content: '';
	height:50px;
	width:50px;
	top:50%;
	transform:translateY(-50%);
	right:0;
	z-index:1000;
	background-image:url(images/arrow-right-yellow.svg);
	background-repeat: no-repeat;
	background-size: 60% 60%;
	background-color: var(--green-medium);
	background-position: center;
	border-radius:100px;
	transition: 0.3s;
}

.job-cell:hover{
	text-decoration: none;
	color:initial;
}

.job-cell:hover:after{
	right:20px;
}


/* ------------------------------------------------------------------------ Award Application */

.supplemental-container{
	border:2px solid var(--green-medium);
	padding:15px;
	margin-bottom:30px;
	position: relative;
}

.supplemental-container .remove{
	position: absolute;
	top:0;
	right:0;
	transform:translate(2px,calc(-100% - 2px));
	background:var(--red);
	padding:2px 10px;
	color:#FFF;
	z-index:1000;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	font-weight: bold;
	cursor: pointer;
}

#supplemental-template .remove{
	display: none;
}

#team-members li{
	border:2px solid var(--green-medium);
	padding:15px;
	padding-top:35px;
	list-style-type: none;
	background:#FFF;
	position: relative;
	margin-bottom:30px;
}

#team-members .sort-handle{
	position: absolute;
	top:0;
	left:0;
	font-weight: bold;
	background:var(--green-light);
	border-bottom:2px solid var(--green-medium);
	border-right: 2px solid var(--green-medium);
	padding:0 10px;
	cursor: move;
}

#team-members .remove-member{
	position: absolute;
	top:0;
	right:0;
	font-weight: bold;
	background:var(--red);
	border-bottom:2px solid var(--green-medium);
	border-left: 2px solid var(--green-medium);
	padding:0 10px;
	color:#FFF;
	text-decoration: none;
}

#team-members .ui-sortable-placeholder{
	border: 2px dashed #000;
	visibility: visible !important;
}

#team-members .ui-sortable-helper{
	box-shadow: -4px 4px 6px #dadada;
}

/* ------------------------------------------------------------------------ HOF Gallery */

.hof-cell {
	border:2px solid var(--green-light);
	padding:25px;
	text-align: center;
	margin-bottom:30px;
}

.hof-cell-image {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

			
/* =============================================================================================
	FOOTER
============================================================================================= */

@keyframes bouncetotop {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0) rotate(270deg);
  }
  40% {
    transform: translateY(-20px) rotate(270deg);
  }
  60% {
    transform: translateY(-15px) rotate(270deg);
  }
}

.to-top {
	position: fixed;
	opacity: 0;
	visibility: hidden;
	bottom: 1rem;
	right: 1rem;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	cursor: pointer;
	background: var(--green-medium) url(../../images/arrow-right-yellow.svg) no-repeat center center;
    background-size: 1rem;   
    transform: rotate(270deg);
	z-index: 10;
	transition: transform .25s ease-in-out, opacity .25s ease-in-out, visibility .25s;
}

.to-top.show {
	opacity: 1;
	visibility: visible;
}

.to-top:hover {
	animation: bouncetotop 1.25s infinite ease-in-out;
	background-color: var(--green-dark)
}

.print-footer { 
	display:none;
}

.footer { 
	background-color: var(--green-very-dark);
	color: var(--white);
}

.footer .divider {
 color: var(--yellow-dark);
 margin: 0 .75rem;
 display:inline-block;
}

.footer a:not(.btn) { 
	color: var(--white);
	text-decoration: none;
}

.footer a:not(.btn):hover { 
	color: var(--yellow-light);
	text-decoration: underline;
}

.footer__rkd {
	display: inline-block;
	width: 5.625rem; 
}

.footer__copyright {
	margin-bottom: 0;
	font-size: 1rem;
}	
		
.footer__icon {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	margin: 0 1.5rem 0 0;	
}

.footer__icon svg {
    width: 2rem;
    height: 2rem;
    fill: var(--green-light);
    transition: fill 0.25s;
}

.footer__icon svg:hover {
    fill: var(--yellow-dark);
}

.footer__logos {
	margin: 0 0 1.5rem 0;
	width: 42%;
	max-width: 11.25rem;
}
	
@media (min-width: 992px) {

	.footer__logos {
		margin: 0 0 1.5rem 0;
		width: 75%;
	}

}

@media (min-width: 1200px) {

	.footer {
		height: 329px;
		overflow: hidden;
		width: 100%;
		position: absolute;
	    bottom: 0;
	    right: 0;
	}

	.footer__logos {
		margin: 0 0 0 1rem;
	}

}

@media (min-width: 1440px) {

	.footer {
		height: 437px;
	}

	.footer__logos {
		margin: 0 0 0 2rem;
	}

}