.js-off-canvas-overlay {
	background: rgba(136, 201, 14, 0.5);
}
/** FIRST LEVEL **/
#offcanvas-nav > li > a {
	padding-left: 0;
	font-weight: bold;
	color: #88C90E;
	font-size: 19px;
	line-height: 29px;
	padding-bottom: 0.8rem;
}
/** SECOND LEVEL **/
#offcanvas-nav > li > .submenu > li > a {
	padding-left: 0;
	font-weight: bold;
	color: #88C90E;
	font-size: 19px;
	line-height: 29px;
}
/** THIRD LEVEL **/
#offcanvas-nav > li > .submenu > li > .submenu > li > a {
	padding-left: 0;
	font-weight: bold;
	color: #88C90E;
	font-size: 18px;
	line-height: 27px;
}
/** FOURTH LEVEL **/
#offcanvas-nav > li > .submenu > li > .submenu > li > .submenu > li > a {
	padding-left: 0;
	font-weight: 400;
	color: #46382F;
	font-size: 18px;
	line-height: 27px;
}
/** FIFTH LEVEL **/
#offcanvas-nav > li > .submenu > li > .submenu > li > .submenu > li > .submenu > li > a {
	padding-left: 1rem;
	font-weight: 500;
	color: #46382F;
	font-size: 16px;
	line-height: 25px;
}
.drilldown .is-drilldown-submenu-parent > a::after {
	border: 0;
	display: none;
}
.drilldown .is-drilldown-submenu-parent > a {
	background: transparent url(../images/mobileMenuArrow.png) no-repeat right 0.5rem top 50%;
	background-size: 11px 8px;
	margin-top: -4px;
	display: inline-block;
	padding-right: 2rem;
	transition: all 0.25s;	
    padding-top: 0.85rem;
    padding-bottom: 0.75rem;
}
.drilldown .is-drilldown-submenu-parent > a:hover {
	background-position: right 0px top 50%;
}
.drilldown .is-drilldown-submenu li.js-drilldown-back a {
	font-weight: 500 !important;
	color: #97ACAA !important;
	font-size: 17px !important;
	line-height: 26px !important;
	background: transparent url(../images/mobileBackArrow.png) no-repeat left 0 top 50% !important;
	background-size: 6px 5px !important;
	display: inline-block !important;
	padding-left: 0.75rem !important;
	margin-bottom: 1rem !important;	
}
.drilldown .js-drilldown-back > a::before {
	border: 0;
	display: none;
}
.drilldown .is-drilldown-submenu li.heading > a,
#offcanvas-nav > li.heading > a {
	margin: 1rem 0 1.5rem 0 !important;
	color: #644A3A !important;
	font-size: 21px !important;
	padding-bottom: 1.5rem !important;
	border-bottom: 1px solid #BFD0CF !important;
	font-weight: bold !important;
	background: transparent !important;
	cursor: default !important;
	border-top: 0px !important;
	padding-left: 0 !important;
}
#offcanvas-nav > li.heading > a {
	margin-top: 4rem !important;
}
#offcanvas-nav > li.heading > a:focus {
	outline: none !important;
}
.offcanvas-bottom {
	position: absolute;
	bottom: 1rem;
	height: 100px;
	width: 100%;
	overflow: hidden;
}
.offcanvas-container {
	position: relative;
	min-height: 97vh;
	padding-bottom: 120px;
}
#off-canvas {

}
.offcanvas-bottom .search-form .search-field {
	width: 100%;
}
.offcanvas-bottom .left {
	width: 50%;
	float: left;
}
.offcanvas-bottom .right {
	width: 50%;
	float: right;
	text-align: right;
}
.offcanvas-bottom a.social {
	text-indent: 9999px;
	display: inline-block;
	width: 22px;
	height: 18px;
}
.offcanvas-bottom .contact-link {
	font-size: 17px;
	line-height: 1;
	font-weight: bold;
	color: #88C90E;
}
.offcanvas-bottom .contact-container {
	clear: both;
	width: 100%;
	overflow: hidden;
	margin-bottom: 1rem;
}
iframe {
	max-width: 100% !important;
}
.logged-in #offcanvas-nav {
	margin-top: 20px;
}
.drilldown a {
	padding: 0.75rem 1rem;
}
#off-canvas #menu-item-895,
#off-canvas #menu-item-896,
#off-canvas #menu-item-897 {
	margin-top: -0.25rem;
}

@media screen and (max-width: 80rem) {
	
	#mega-menu-wrap-main-nav #mega-menu-main-nav {
		width: auto;
	}
	#mega-menu-wrap-main-nav #mega-menu-main-nav > li.mega-menu-item > a.mega-menu-link {
		padding: 0px 18px 0px 18px;
		font-size: 17px;
	}
	.slide {
		height: 330px;
	}
	.slide .inner {
		padding-top: 40px;
		padding-left: 45px;
	}
	.sliderPaging .wpv-filter-previous-link {
		left: 0.5rem;
	}
	.slide h2 {
		font-size: 30px;
		line-height: 48px;
		width: 75%;
	}
	.slide p {
		font-size: 16px;
		line-height: 28px;
	}
	.slide button {
		font-size: 14px;
	}
	.cta-inner {
		background-size: cover !important;
		padding-right: 2rem;		
	}
	.cta:last-child .cta-inner {
		background-position: 50% bottom !important;
	}
	.cta-inner h3 {
		font-size: 22px;
		line-height: 33px;
		width: 90%;
	}
	.home .news-heading > h2 {
		font-size: 20px;
		color: #46382F;
		margin-top: 0;
	}
	.teaser .image > img {
		height: auto;
		width: 100%;
	}
	.teaser .image {
		height: auto;
	}
	.news-more-link {
		font-size: 11px;
		top: 10px;
	}
	.teaser h4 {
		margin-bottom: 0.75rem;
	}
	.teaser .excerpt {
		margin-bottom: 0.5rem;
		min-height: auto;
	}
	main {
		margin-top: 1.5rem;
	}
	.home main {
		margin-top: 0;
	}
	.event-teaser .image {
		height: auto;
	}
	.form-group .inline-label {
		display: none;
	}
	.subsection {
		padding: 1rem;
	}
	.subsection-image {
		margin: 0 0.5rem 0.5rem 0;
	}
	.subsection-image > img {
		width: 60px;
		height: 60px;
	}
	.teaser {
		margin-bottom: 1.5rem;
	}
	.about-block {
		background-size: cover !important;
	}	
	#fnz-banner > .inner-container {
		height: 320px;
	}
	#fnz-inner .large-12 img {
		width: 220px;
	}
	#sfy-banner > .inner-container {
		padding-top: 2rem;
		height: 320px;
	}
	#wpv-view-layout-73 {
		margin-left: 1.75rem !important;
		margin-right: 1.75rem !important;
	}	
	.sfy-subhead p {
		margin-top: 0.5rem;
	}
	#sfy-sponsor {
		bottom: 0.5rem;
		left: 3rem;
	}
	.event-teaser .contain-details {
		height: 380px;
	}	
}

@media screen and (max-width: 64rem) { 
	.top-bar-right .menu a {
		background: transparent url(../images/mobilemenu.png) no-repeat right top;
		background-size: 41px 34px;
		transition: all 0.25s;
		width: 41px;
		height: 34px;
		text-indent: 9999px;
		padding: 0;
		margin-top: -45px;
		margin-right: 1rem;
	}
	.top-bar-right .menu a:hover {
		opacity: 0.7;
	}
	.top-bar-right .float-right {
		float: right;
	}
	.top-bar-right .menu {
		background: transparent;
		padding: 0;
		text-align: right;
		justify-content: flex-end;
	}
	.top-bar {
		height: 150px;
	}
	.top-bar > .grid-container {
		width: 100%;
	}
	.custom-logo-link, .custom-logo-link img {
		width: auto;
		height: 80px;
	}
	#off-canvas {
		background: #fff;
		padding: 1rem;
	}
	h2.mobile {
		margin: 4rem 0 1.5rem 0;
		color: #644A3A;
		font-size: 21px;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid #BFD0CF;
	}

	#topnav {
		display: none !important;
	}
	#top-bar-menu .show-for-large {
		display: none !important;
	}
	#top-bar-menu .hide-for-large {
		display: block !important;
	}
	.top-bar-right .menu a {
		margin-top: 1.75rem;
	}
	.top-bar {
		height: 130px;
	}	
	#fnz-partners {
		position: relative;
		bottom: auto;
		right: auto;
		height: 112px;
		width: 100%;
		background: #fff;
		padding: 0.5rem 1rem 1rem;
	}
	#fnz-partners .fnz-partner {
		display: inline-block;
		margin-right: 1rem;
		height: 66px;
		width: 15%;
	}
	#dmf-banner > .inner-container {
		height: 300px;
	}
}

@media screen and (max-width: 52rem) { 
	/** Small tablet **/
	
	.slide {
		height: auto;
		background-size: 100% 250px;
		background-position: 50% top;
		margin-right: -.625rem;
		margin-left: -.625rem;
		background-color: #EFF7F6;
	}
	.slide .inner {
		background: none;
		padding: 250px 0 0 20px;
	}
	.slide h2 {
		font-size: 38px;
		line-height: 48px;
		color: #049590;
		margin-bottom: 0.5rem;
		margin-top: 0.5rem;
		width: 100%;
	}
	.teaser .image > img {
		height: auto;
	}
	.teaser .image {
		height: auto;
	}
	.teaser {
		margin-bottom: 1rem;
	}	
	#wpv-view-layout-30 .sliderPaging {
		display: none;
	}
	.slide p {
		width: 70%;
		margin-bottom: 1rem;
	}
	.slide .button {
		margin-bottom: 1rem;
	}
	.slider-banner {
		margin-bottom: 1rem;
	}
	.home .cta {
		margin-bottom: 1rem;
		height: 110px;
	}
	.home .cta-inner {
		background-size: cover !important;
		background-position: left bottom !important;
	}
	.cta-inner h3 {
		font-size: 22px;
		line-height: 28px;
	}	
	.newsletter-blurb {
		padding-left: 90px;
	}
	.featured-news-container {
		display: none;
	}
	aside.featured-news {
		margin-bottom: 1rem;
	}	
	.event-teaser .contain-details {
		height: 480px;
	}	
}

@media screen and (max-width: 40rem) {
	/** Mobile device **/
	.top-bar .top-bar-left, 
	.top-bar .top-bar-right {
		flex: 0 0 50%;
		max-width: 50%;
	}
	.top-bar-right .menu {
		float: right;
	}
	.slide {
		height: auto;
		background-size: contain;
		background-position: 50% top;
		margin-right: -.625rem;
		margin-left: -.625rem;
		background-color: #EFF7F6;
	}
	.slide .inner {
		background: none;
		padding: 280px 20px 0 20px;
	}
	.slide h2 {
		font-size: 48px;
		line-height: 62px;
		color: #049590;
		margin-bottom: 1rem;
		width: 100%;
	}
	.pagination-dots li {
		display: inline-block;
	}
	#wpv-view-layout-30 .sliderPaging {
		display: none;
	}
	.slide p {
		width: 90%;
		margin-bottom: 1rem;
	}
	.slide .button {
		margin-bottom: 1rem;
	}
	.slider-banner {
		margin-bottom: 1rem;
	}
	.home .cta {
		margin-bottom: 1rem;
		height: 110px;
	}
	.home .cta-inner {
		background-size: cover !important;
		background-position: left bottom !important;
	}
	.cta-inner h3 {
		font-size: 24px;
		line-height: 28px;
		background-image: none;
	}
	.home .news-heading > h2 {
		margin-top: 1rem;
		color: #46382F;
		font-size: 26px;
		line-height: 39px;
	}
	.home .news-more-link {
		display: none;
	}
	.teaser .image > img {
		height: auto;
	}
	.teaser .image {
		height: auto;
	}
	.teaser h4 {
		margin-bottom: 1rem;
	}
	.teaser .excerpt {
		min-height: 0;
	}
	.teaser {
		margin-bottom: 2rem;
	}
	h3.partners {
		color: #46382F;
		font-size: 20px;
	}
	#wpv-view-layout-73 .wpv-filter-next-link {
		right: 1rem;
		top: 40%;
	}
	
	#wpv-view-layout-73 .wpv-filter-previous-link {
		left: 1rem;
		top: 40%;
	}
	.signup > label {
		display: inline;
		padding-right: 8rem;
	}
	#footer2 ul {
		margin-left: 0;
	}
	#footer2 ul li {
		display: inline-block;
		width: 40%;
	}
	#footer3 a {
		display: block;
		margin-bottom: 0.5rem;
	}
	#footer3 .alignright a {
		display: inline;
	}
	#footer3 .alignright {
		text-align: left;
	}
	#sfy-banner > .inner-container {
		height: auto;
		padding: 1rem;
		background: #644A3A;
	}
	#sfy-inner .large-12 a img {
		width: 20%;
	}
	.sfylogo-container img {
		width: 100% !important;
		max-width: 320px;
	}	
	h2.sfy-title {
		font-size: 24px;
		line-height: 30px;
	}
	#sfy-partners {
		position: relative;
		bottom: auto;
		right: auto;
		height: 112px;
		width: auto;
		background: #fff;
		padding: 0.5rem 1rem 1rem;
	}
	#sfy-partners .sfy-partner {
		display: inline-block;
		margin-right: 1rem;
		height: 66px;
		width: 45%;
	}
	#sfy-banner {
		background: transparent url(../images/fnzbg.jpg) no-repeat 50% top;
		background-size: contain;
		padding-top: 80px;
		margin-bottom: 0;
	}
	#sfy-sponsor {
		position: relative;
		left: auto;
		bottom: auto;
		margin-bottom: 1rem;		
	}
	.page-template-template-fnz-php main {
		margin-top: 2rem;
	}
	.page-id-78 #fnz-banner {
		margin-bottom: 0;
	}
	#dmf-inner #fnz-partners {
		margin-bottom: 4rem;
	}
	#dmf-banner > .inner-container {
		height: 300px;
	}
	.form-group > select {
		display: inline-block;
		width: 140px;
	}
	.single-event .sidebar {
		margin-top: 1rem;
	}
	.teaser.news .readmore {
		position: relative;
		right: auto;
		bottom: auto;
		float: right;
	}
	.teaser.news {
		margin-top: 1rem;
	}
	.casestudy {
		margin-top: 1rem;
	}
	.casestudy .cs-inner > img {
		height: auto;
		width: 100%;
	}	
	.casestudy .cs-inner {
		max-width: 100%;
		height: auto;
	}
	.casestudy .details-container {
		height: auto;
	}
	.form-group .inline-label {
		display: none;
	}
	.event-teaser .contain-details {
		height: auto;
	}
	.event-teaser .readmore {
		position: relative;
		bottom: auto;
		right: auto;
		margin-top: 1rem;
	}
	.service .icon {
		padding: 0.5rem !important;
	}
	.news-more-link {
		font-size: 14px;
	}	
}

@media screen and (max-width: 30rem) {
	.slide .inner {
		background: none;
		padding: 200px 20px 0 20px;
	}
}