:root {
	--droplet-width: 150px;
}

#mainContainer {
	font-family: var(--font-primary);
}
.hero_container {
	position: relative;
	height: calc(100vh - var(--header_spacer_height));
	height: 100vh;
	min-height: 750px;
	display: flex;
}

.hero.wide {
	position: relative;
	width: 73%;
	height: 100%;
/* 	padding: 40px; */
	background-position: var(--background-position, center);
	background-size: var(--background-size, cover);
	box-sizing: border-box;
/* 	overflow: visible; */
	overflow: hidden;
	background-position: center top;
}

.hero.wide:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: '';
	background-image: linear-gradient(180deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.6) 20%, rgba(0,0,0,0.4) 40%, rgba(0,0,0,0.3) 100%);
	display: none;
}


/* bgvid */
@media (max-width: 1024px) {
	.bgvid {
		display: none!important;
	}
	
/*
	.hero, .site-header {
    position: relative;
    height: 70vh;
}
.button-container {
    left: 50%;
    text-align: center;
    bottom: 140px;
}
*/
	}



.bgvid {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: -100;
  opacity: 1;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  z-index: 0;
}

/*
 *  Use the following to add a darkened overlay on top of the video
 *  (usually necessary for legibility if there will be text on top)
 */
 
.hero:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .25;
  z-index: 2;
}

/* end bgvid */

.floating-tagline {
	position: absolute;
	min-width: 413px;
	width: 45%;
	height: 50vh;
	min-height: 200px;
	background-color: var(--primary-color);
    top: 0%;
    left: 0%;
    z-index: 1;	
    padding: 70px 70px 70px 40px;
    font-size: var(--default-h3);
    color: var(--primary-color-text);
    text-align: right;
    display: flex;
	align-items: flex-start;
	 justify-content: flex-end;

}
	p.heading-1 {
	    line-height: 1.3;
		line-height: 1.3;
		margin-top: 1.4em;
    }
.floating-service {
	min-width: 330px;
    background-color: var(--charcoal);
    color: var(--primary-color-text);
    position: relative;
    padding-top: calc(50vh + 30px);
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
    font-size: var(--default-h5);
    display: flex;
    align-items: center;
    width: 30%;
    justify-content: center;
}
	.floating-service h4 {
	    color: var(--secondary-color);
	    font-size: var(--default-h4);
	    font-weight: 400;
	    letter-spacing: 1px;
	    margin: 0 0 .5em;
	    text-align: center;
	}
		
		.floating-service p {
		    margin: 0 .5em;
		    line-height: var(--default-lh);
		    text-align: center;
		}		
	
			.floating-service div p:last-child {
			    margin-top: 25px;
			}			
				.service-wrapper {
					justify-content: center;
					align-items: center;
					align-content: space-evenly;
					flex-wrap: nowrap;
					height: 100%;
				}
				p.tag-action {
					position: absolute;
					bottom: 0;
					font-style: normal;
					text-indent: 0;
				}
		
					.floating-content a.btn, .floating-content a.btn:visited {
						font-weight: 500;
						letter-spacing: 1px;
					}

/*
					.floating-content a.btn::before {
						content: "";
						position: absolute;
						top: 50%;
						right: 13px;
						transform: translate(0, -50%);
						width: 30px;
						height: 30px;
						border: 3px solid;
						border-radius: 20px;
						display: block;
						box-sizing: border-box;
					}
					.floating-content a.btn::after {
						content: "";
						position: absolute;
						top: 50%;
						right: 19px;
						transform: translate(0, -50%);
						width: 0;
						height: 0;
						border-top: 8px solid transparent;
						border-bottom: 8px solid transparent;
						border-left: 14px solid;
						display: block;
						box-sizing: border-box;
					}
*/
/*
		.floating-content a.btn:hover {
			background-color: var(--secondary-color);
		}
*/

#section-container {
	position: relative;
	background-color: #fff;
}


section {
	position: relative;
	padding: var(--section-padding-top) 0;
	background-color: #fff;
}

	.section_background_container {
		position: absolute;
		width: 100%;
		height: 100%;
	}
	
		.section_background_container::before {
			content: "";
			position: absolute;
			width: 100%;
			height: 100%;
	
			background-image: var(--background-image);
			background-position: var(--background-position);
			background-size: cover;
		}
	
			.section_background {
				width: 100%;
				height: 100%;
				background-position: center;
				background-size: cover;
				background-repeat: no-repeat;
				background-image: var(--background-image);
			}

	section h2 {
		position: relative;
		margin: 0.25em 0 0.5em;
		color: var(--charcoal);
		font-size: 51px;
		font-size: var(--default-h3);
		font-weight: 500;
		text-align: left;
		line-height: var(--default-lh);
	}
	
/*
		section h2 span {
			display: block;
			white-space: nowrap;
			font-size: var(--default-h3);
		}
*/
	
	section h3 {
		color: var(--charcoal);
		font-size: var(--default-h3);
		margin: 0;
	}
	
	section h4 {
		position: relative;
		margin-bottom: 0;
		color: var(--charcoal);
		font-size: var(--default-h4);
		font-weight: 600;
		text-transform: uppercase;
	}
	
		section h4.active {
		}
		
			section h4:before {
				content: var(--icon-arrow-right-charcoal);
				position: absolute;
				left: 0;
				top: 50%;
				transform: translate(-150%, -50%);
				display: inline-block;
				vertical-align: middle;
				opacity: 0;
				transition: .3s;
			}

				section .active h4:before {
					opacity: 1;
				}
	
	section .section_content_wrapper {
		position: relative;
		width: 82%;
		margin: 0 auto;
	}
	section p {
		position: relative;
		font-size: var(--default-p);
		line-height: var(--default-lh);
	}


	section .section-header {
		margin-bottom: 3rem;
	}

		section .section-header.centered {
			text-align: center;
		}


	.column_container {
		position: relative;
		width: 100%;
		padding: 60px 100px;
		display: flex;
		justify-content: space-between;
	}
	
		.column_container .column {
			position: relative;
			width: 50%;
		}
		
			.column_container .column-image {
/* 				width: 55%; */
			}
			
/*
			.column_container .column:not(.column-image) {
				padding: 0 9em;
			}
*/
		
			.column.left {
				padding-right: 0;
			}

			.column.right {
				padding-left: 0;
			}
		

		.droplet_container {
			position: relative;
			margin-bottom: calc(var(--droplet-width) / 3.055);
		}

			.droplet {
				position: relative;
				width: var(--droplet-width);
				height: var(--droplet-width);
				border-radius: calc(var(--droplet-width) / 2) calc(var(--droplet-width) / 2) 0;
				transform: rotate(45deg);
				overflow: hidden;
			}
			
				.droplet::before {
					content: "";
					position: absolute;
					width: 120%;
					height: 130%;
					background-image: var(--background-image);
					background-repeat: no-repeat;
					background-position: center center;
					background-size: cover;
					transform: translate(-50%, -40%) rotate(-45deg);
					left: 50%;
					top: 50%;
				}

		section .left,
		section .right {
			position: relative;
		}

		section .section_button {
			text-align: center;
		}
		
			section .section_button a {
				font-size: 17pt;
			}
		
		section .background_container {
			position: relative;
			height: 0;
			padding-top: 56.25%;
		}

			section .background_container .background {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background-position: center;
				background-size: cover;
			}
		.floating-title {
			position: absolute;
			color: #fff;
			display: flex;
			align-items: flex-end;
			padding: 0 60px;
		}
	
/*
		.section_action a.btn:first-child {
			margin-left: 0;
		}
		.section_action a.btn:last-child {
			margin-right: 0;
		}
*/


section#first-section {
	color: var(--secondary-color-text);
	background-color: #fff;
}
	#first-section .floating-title {
		position: absolute;
		height: 80%;
		width:35%;
		right: 0;
		top: 0;
		color: var(--primary-color-text);
		display: flex;
		align-items: flex-end;
		background-color: var(--secondary-color);
		padding: 0 60px;
		color: #fff;
	}
		#first-section h2 {
			color: #fff;
		}
	
section#second-section {
	padding: 0;	
}
	#second-section .section_content_wrapper {
		width: 100%;
	}
	#second-section .section_background {
		height:100vh;
	}
	#second-section .floating-title  {
	    bottom: 0;
	    left: 0;
	    background-color: var(--primary-color);
	    color: var(--primary-color-text);
	    display: block;
	    width: 45%;
	    padding: 60px 8%;
	}
		#second-section h2 {
			color: #fff;
		}
		#second-section .section_background_mobile {
			background-position: center 10%;
		}

section#events-section {
	background-color: #fff;
}

	#events-section .container {
		width: 95%;
		color: #fff;
	}

	#events-section h2 {
		text-align: center;
		color: var(--secondary-color);
		margin: 0;
		line-height: 1;
	}
		
		#events-section h3 {
		    font-size: var(--default-h5);
		    font-weight: 400;
		    text-transform: uppercase;
		    line-height: var(--default-lh);
		    color: #fff;
		    line-height: 1.2;
		    margin-bottom: 0.275em;
		    margin-top: 4.15em;
		}
			
			#events-section h4 {
			    margin-top: 0;
			    font-size: var(--default-h3);
			    font-weight: 400;
			    color: #fff;
			    line-height: 1;
			}

			#events-section .slide h4.event_month {
		    position: relative;
		    font-size: var(--default-p);
		    line-height: 1;
		    margin: 0;
		    text-transform: uppercase;
			}

			#events-section .slide p {
				font-size:clamp(15px, 2.1vw, 18px);
				margin: 0;
			}
			
		.slide a.btn.white {
		    padding: 10px 40px 10px 4px;
		}

/*
	#events-section .slide .event_text p {
	    font-size: var(--default-p);
		line-height: var(--default-lh);
	    margin-bottom: 6px;
	}
*/
	
	#events-section .slide-container {
/* 		outline: #fff solid 3px; */
		outline-offset: -26px;
		background: rgb(29,29,29);
		background: linear-gradient(0deg, rgba(29,29,29,1) 70%, rgba(136,206,72,1) 70%);
		padding: 4.75em;
	}
	
		#events-section .slide .event_action {
			margin-top: 2em;
		    position: absolute;
		    bottom: 37px;
		}
	
	#events-section .section_action {
		position: relative;
		margin-top: 3em;
		text-align: center;
	}
	#events-section .slide-container :last-child {
		margin-bottom: 55px;
		}

section#third-section {
	padding: 0;
}
	#third-section .section_content_wrapper {
		width: 100%;
	}
	#third-section .section_background {
		height:100vh;
	}
	#third-section .floating-title  {
	    top: 0;
	    right: 0;
	    background-color: var(--primary-color);
	    color: var(--primary-color-text);
	    display: block;
	    width: 45%;
	    padding: 60px 8%;
	}
		#third-section h2 {
			color: #fff;
		}

section#fourth-section {
	padding-top: 0;
}
	#fourth-section .section_content_wrapper {
		max-width: 76%;	
	}
	#fourth-section .section-title h2 {
		color: var(--secondary-color);
		margin: 0;
	}
	#fourth-section .section-title {
	    flex-wrap: nowrap;
	    align-items: center;
	    max-width: 400px;
	    justify-content: space-between;
	    margin-bottom: 30px;
	}
	
	.sermon-blocks {
	    display: flex;
	    justify-content: space-between;
	    align-items: flex-start;
	    margin: 0;   
	}
	
	.sermon-blocks .block {
		width: 61%;
/* 		outline: #fff solid 3px; */
		outline-offset: -26px;
		background: rgb(29,29,29);
		background: linear-gradient(0deg, rgba(29,29,29,1) 59%, rgba(136,206,72,1) 59%);
		padding: 5.75em; 
		min-height: 590px;
		
	}
		.sermon-blocks .block:last-child {
		    width: 34%;
		}
			.block a.btn.white {
			    padding: 20px 40px 20px 4px;
			    /* margin-top: 2em; */
			    position: absolute;
			    bottom: 70px;
			}
	
	
	.sermon-info {
	    flex-direction: column;
	    margin: 0;
	    position: relative;
	    top: -3px;
	}
	
		.sermon-info h2 {
			text-align: center;
			color: var(--secondary-color);
		}
			
			.sermon-info h3 {
			    font-size: var(--default-h5);
			    font-weight: 400;
			    text-transform: uppercase;
			    line-height: var(--default-lh);
			    color: #fff;
			    line-height: 1.2;
			    margin-bottom: 0.275em;
			    margin-top: 4.15em;
			}
				
				.sermon-info h4 {
				    margin-top: 0;
				    font-size: var(--default-h3);
				    font-weight: 400;
				    color: #fff;
				    line-height: 1;
				}
	
				.sermon-info h4.event_month {
			    position: relative;
			    font-size: var(--default-p);
			    line-height: 1;
			    margin: 0;
			    text-transform: uppercase;
				}
	
				.sermon-info p {
					font-size:clamp(15px, 2.1vw, 18px);
					margin: 0;
					color: #fff;
				}
				.sermon-info a {
					text-decoration: none;
				}
				.sermon-info p:last-child {
					margin-bottom: 65px;
				}
				.mobile_btn {
					display: none;
				}
.section_background_mobile {
	display: none;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-image: var(--background-image);

}


@media (max-width: 1260px) {
}


@media (max-width: 1200px) {
}

@media (max-width: 1100px) {
	#third-section .column_container {
		padding: 60px 10px;
	}
}

@media (max-width: 1024px) {
	.floating {
		padding-top: 150px;
	}

	section h2 {
	}
	section p {
		margin: 1rem 0;
	}
	
	.column_container {
		padding: 60px 70px;
	}

	#fourth-section .column.column-text {
		padding: 70px;
	}
	
		#fourth-section h2 {
		}
}

@media (max-width:900px) {
	#third-section .column_container {
		--droplet-width: 240px;
	}
	
	#fifth-section h2 {
		font-size: 27px;
	}
	
	#fifth-section p {
		font-size: 21px;
	}
}

@media (max-width: 768px) {
	.floating-tagline {
		align-items: flex-end;
	}
	section h2 {
		text-align: center;
	}
	

/*
		section .btn {
			max-width: 75%;
		}
*/
		
			section .section_button a {
				font-size: 12pt;
			}

	
	.column_container {
		flex-direction: column;
		padding: 2rem;
	}
	
		.column_container .column {
			padding: 0;
			width: 100%;
			text-align: center;
		}
		
			.column_container .column.left {
				padding-bottom: 2rem;
			}
	#first-section .section_text {
	    width: 53%;
	}
	#third-section a.column {
		margin-bottom: 10em;
	}
	
	#fifth-section .column_container .column {
		--droplet-width: 200px;
		margin-bottom: 100px;
		padding: 0 20px;
	}

}

@media (max-width: 768px) and (min-height: 640px) {
/*
	.hero.wide {
		height: 50vh;
	}
*/

	.floating {
	}
	
		.floating-content {
		}
		
		.floating-content a.btn {
		}
		
}


@media (max-width:640px) {
	section {
		--section-padding-top: 2rem;
	}

	.hero_container {
		height: 110vh;
		min-height: auto;
		display: flex;
		flex-direction: column;
	}
	.floating-tagline {
		position: relative;
	    width: 100%;
	    height: 15vh;
	    padding: 30px;
	    order: 1;
	    min-width: 100%;
	    align-items: flex-start;
	}
	.floating-service {
	    padding: 30px;
	    order: 3;
	    width: 100%;
	    min-width: 100%;
	    align-items: flex-end;
	    justify-content: flex-end;
    }
    .service-wrapper {
  	  align-items: flex-end;
    }
    	.floating-service h4,
    	.floating-service p {
	    	margin: 0;
	    	text-align: right;
    	}
    	.floating-service p a.btn.white {
/*
			margin-top: 6px;
			LINE-HEIGHT: 1;
			DISPLAY: INLINE-BLOCK;
*/
    	}
	    .hero.wide {
		    width: 100%;
		    order: 2;
		    background-position: right;
		    background-size: 170%;
	    }
	    p.heading-1 {
	 	   margin-top: 2em;
 		}
 	section#first-section {
	 	display: flex;
	 	flex-direction: column;
	 	padding-top: 0;
 	}
 	#first-section .section_text {
	    width: 100%;
	}
 	#first-section .section_content_wrapper {
	 	padding-top: var(--section-padding-top);
 	}
	 	#first-section .floating-title {
		 	position: relative;
		 	width: 100%;
		 	padding: 0 9%;
		 	justify-content: center;
	 	}
		 	#first-section h2 {
			    margin: 0.75em 0;
			}
			.section_background_mobile {
				display: block;
				position: relative;
				height: -webkit-fill-available;
				min-height: 200px;
				height: 200px;
				width: 100%;
				background-size: cover;
				background-repeat: no-repeat;
			}
	#second-section .section_content_wrapper {
		flex-direction: column-reverse;
	}
		#second-section .section_background {
			display: flex;
			flex-direction: column;
/* 			height: auto; */
			height: -webkit-fill-available;
		}
			#second-section .floating-title {
				position: relative;
				width: 100%;
			}
			#second-section .section_background_mobile {
				background-position: center right;
			}
	#third-section .section_content_wrapper {
		flex-direction: column-reverse;
	}
		#third-section .section_background {
			display: flex;
			flex-direction: column;
/* 			height: auto; */
			height: -webkit-fill-available;
		}
			#third-section .floating-title {
				position: relative;
				width: 100%;
			}
			#third-section .section_background_mobile {
				background-position: center left;
			}
	#events-section .container {
		width: 100%;
		padding: 0;
	}
			
	#eventSlider .slide {
		width: 100vw;
		margin: 0;
	}	
	.slide-container {
		margin: 0;
	}
	#events-section .slide-container {
	    padding: 60px 70px;
	}
	
		#slideNext,
		#slidePrev { 
		    background: #fff;
		    border-radius: 50%;
		    padding: 9px;
		    width: 39px;
			
		}
			#slidePrev {
		    left: 9px;
		    }	
		    #slideNext {
		    right: 9px;
			}
	section#fourth-section .section_content_wrapper {
		max-width: 100%;
		width: 100%;
	}		
	#fourth-section .section-title {
	    align-items: center;
	    /* margin: 0 auto; */
	    text-align: center;	
    }
	    #fourth-section .section-title :last-child {
		    display: none;
	    }
	.sermon-blocks {
		display: block;
	}
		.sermon-blocks .block {
			width: 100%;
		}    
			.sermon-blocks .block:last-child {
				display: none;
			}    
    .mobile_btn {
	    display: block;
    }
    
	
}

@media (max-width:420px) {
.floating-tagline {
	 align-items: flex-end;
    font-size: clamp(27px,4.55vw,64px);
}
p.heading-1 {
    margin: 0;
}
}


@media (max-width: 500px) {

		.service-wrapper a.btn.white:after,.service-wrapper a.btn.white:visited,.service-wrapper span.btn.white {
	    	top: -8px;
		}
		.section_background_mobile {
			height: 0;
			padding-bottom: 90%;
		}
}




@media (max-height: 800px) {
}

@media (max-height: 575px) {
}

@media (max-height: 450px) {
}