/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Base
	- CSS Variables
	- Typography
	- Links
	- Forms
# Components
	- Header
	- Content
	- Widgets
	- Sections
	- Icons
	- Site Navigation
	- Comments
	- Media
	- Captions
	- Testimonials
	- Coupon
	- Galleries
	- Accordion Setup
# Plugins
	- Carousel
# Mobile Styles


/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# CSS Variables
--------------------------------------------- */

:root {
  --font-primary: 								Helvetica, Arial, Verdana, sans-serif; 
  --font-secondary: 							var(--font-primary);
  --font-tertiary: 								var(--font-secondary);
  --font-text: 									"Open Sans", sans-serif;
	

  --lightest-grey: 								rgba(241, 241, 241, 1);
  --light-grey: 								rgba(225, 225, 225, 1);
  --medium-grey: 								rgba(200, 200, 200, 1);
  --dark-grey: 									rgba(130, 130, 130, 1);
  --darkest-grey: 								rgba(60, 60, 60, 1);
	
  --light-blue: 								rgba(200, 238, 253, 1); 
  --main-blue: 									rgba(123, 203, 234, 1); /* #7bcbea */
  --dark-blue: 									rgba(48, 159, 202, 1);

  --accent-color: 								var(--black);
  --accent-border: 								1px solid var(--black);
  --accent-background: 							var(--white-high);
  
  --warning: 									rgba(255, 0, 0, 1);  
	
  --anon-icon: 									var(--accent-color);
  --anon-icon-bg: 								var(--accent-background);
		 
  --text-color: 								var(--black);
	
  --button-color: 								var(--black);
  --button-background: 							var(--black-lowest);
  --button-font-family: 						var(--font-secondary);
  --button-text-transform: 						capitalize;
  --button-font-variant: 						none;
  
  --button-color-hover: 						var(--black);
  --button-background-hover: 					var(--main-blue);

  --font-size-text: 							20px;
}

/* Typography
--------------------------------------------- */
body {
	background: 									var(--white);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 									var(--font-primary);
	font-weight: 									bold;
	line-height: 									1.3;
	color:											var(--dark-blue);
	text-transform:									capitalize;
	text-align:										center; 
	margin:											0;
	z-index: 										100;
}

h1,
h2 {
	color: 											var(--black);
	border-bottom: 									1px solid var(--darkest-grey);
	padding-bottom: 								10px;
	margin-bottom: 									var(--measure-small)
}

h2 {
	margin-bottom: 									0;
}

/* Links
--------------------------------------------- */
a,
a:visited {
	color: 											var(--dark-blue);
	background-color: 								transparent;
	cursor:											pointer;
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}

a:hover,
a:active,
a.tab-focus {
	color: 											var(--medium-grey);
}

/* Forms
--------------------------------------------- */
label,
#secondary label {
	color:											var(--text-color);
}

::placeholder { 
	color:											var(--black-med);
}

span.wpcf7-spinner::before {
    color: 											var(--white-high);
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Header
--------------------------------------------- */
.top-strip {
	margin:											0;
	padding-right: 									3%;
	padding-top:									4px;
	padding-bottom:									4px;
	background:										linear-gradient(90deg, var(--lightest-grey) 2%, var(--light-grey) 70%);
	z-index:										1000;
}

.logo-strip {
	margin:											0;
	padding-left: 									3%;
	padding-top:									0;
	padding-bottom:									0;
	background: 									url('../../uploads/header-bg.webp') 100% 100% no-repeat;
	background-size: 								cover;
	z-index:										3000;
	max-height: 									160px;
}

.logo-strip .logo {
	transform: 										translateY(-25px);
}

.menu-strip {
	margin:											0;
	padding-top:									0;
	padding-bottom:									0;
	background:										linear-gradient(90deg, var(--lightest-grey) 2%, var(--light-grey) 70%);
	z-index:										5000;
}

.menu-clip .menu-strip {
	overflow: 										hidden;
	clip-path: 										polygon(0% 0%, 100% 0%, 100% calc(100% + 80vh), 0% calc(100% + 80vh));
}	

.fixed-strip {
    position: 										fixed !important;
    top: 											0;
    left: 											0;
    width: 											100% !important;
    z-index: 										10000;
    pointer-events: 								none;
}

.stuck {
	position:										fixed !important;
	width: 											100%; 
	top:											0;
	z-index:										99999 !important;
}

/* Content
--------------------------------------------- */
.verse {
	margin-top: 									-15px;
	font-style: 									italic;
	text-align: 									right;
}

.zeffy-frame {
	position: 										relative;
	overflow: 										hidden;
	height:											500px;
	width:											150%;
	margin-left: 									-25%;
	filter: 										grayscale(1);
	z-index: 										50;
	margin-top: 									-40px;
}

/* Sections
--------------------------------------------- */
.section[class*="style-"] { 

}

/* Style 1 */
.section.style-1 {
	background: 									var(--light-grey);
}

/* Style 2 */
.section.style-2 {
	background: 									var(--lightest-grey);
}

/* Style 3 */
.section.style-3 {
	background: 									transparent; 
}

/* Style 4 */
.section.style-4 {
	background: 									linear-gradient(90deg, var(--main-blue) 5%, var(--light-blue) 35%, var(--light-blue) 65%, var(--main-blue) 95%);
}

.section.style-2 h2,
.section.style-4 h2,
.section.style-4 h3 {
	color: 											var(--black);
}

.section.style-4 h4 {
	color: 											var(--dark-blue);
}


#applications {
	padding-bottom: 								250px;
}

section#applications  .flex {
  	gap: 											var(--measure-small) 4.5%;
}

#random-pics {
	padding: 										0 10px;
	margin-top: 									-250px; 
	margin-bottom: 									-250px;
	z-index: 										8000;
}

#random-pics .flex {
	gap: 											10px;
}

#random-pics .col-row-of-pics {
	margin-left: 									-1px;
}

#random-pics img {
	border: 										1px solid var(--black);
}

#our-story {
	padding-top: 									250px;
	z-index: 										2000;
	border-top: 									1px solid var(--black);
}

/* Footer
--------------------------------------------- */
#colophon {

}

.site-info {

}

.site-info .site-info-right a {
}

.site-info .site-info-right a:hover,
.site-info .site-info-right a:active,
.site-info .site-info-right a.tab-focus {
}
	
ul#footer-menu {
	margin: 										0;
}

ul#footer-menu li.menu-item {
	display: 										inline;
	width: 											auto;
}

ul#footer-menu li.menu-item + li.menu-item::before {
	content: 										" • ";
}

.site-info-center .col-inner .block:nth-of-type(1) {
	order: 											1;
}

.site-info-center .col-inner .block:nth-of-type(3) {
	order: 											3;
	text-align: 									left;
}
		
/* Icons & Social Media
--------------------------------------------- */
.icon-box .icon {
	color: 											var(--white);
	background: 									var(--main-blue);
}

a.icon-btn {
	color:											var(--white);
	transform:										rotate(360deg);
}

a.icon-btn:hover,
a.icon-btn:active,
a.icon-btn.tab-focus {
	color:											var(--main-blue);
	transform:										rotate(0deg);
}

a.icon-btn .icon-bg {
	background:										var(--white);
	transform:										scale(0);
}

a.icon-btn:hover .icon-bg,
a.icon-btn:active .icon-bg,
a.icon-btn.tab-focus .icon-bg {
	background:										var(--white);
	transform:										scale(1);
}


/* Site Navigation
--------------------------------------------- */
/* Main Menu */
.main-navigation ul {
	margin: 										0;
	padding-left: 									2%;
	padding-right: 									2%;
	font-family:									var(--font-secondary);
	font-size:										24px;
	text-transform:									capitalize;
	font-weight:									normal;	
}

.main-navigation li {
	background: 									transparent;
	transition:										all calc(var(--main-trans-speed) * 2) var(--main-trans-easing);
}

.main-navigation li:hover,
.main-navigation li.active,
.main-navigation li.tab-focus {
	background: 									var(--main-blue);
}

.main-navigation a {
	background: 									transparent;
	border:											none;
	padding:										8px 0;
	text-decoration: 								none;
	color:											var(--darkest-grey);
	line-height:									1;
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}

.main-navigation ul.main-menu li:hover > a, 
.main-navigation ul.main-menu li.active > a, 
.main-navigation ul.main-menu li > a.tab-focus {    
	color: 											var(--black);
	background: 									transparent;
	border:											none;
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}

@keyframes menu-icon-anim {
	0% 		{ transform: 								translateX(-50px) scale(0) }
	25% 	{ transform: 								translateX(-5px) scale(1.2) }
	100% 	{ transform: 								translateX(0px) scale(1) }
}


/* Sub-Menu */
.main-navigation ul.sub-menu {
	transform: 										scale(1) translateY(0);
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}	

#desktop-navigation ul.sub-menu {
	background:										var(--light-grey);
	border:											none;
}	

#desktop-navigation li:hover ul.sub-menu,
.main-navigation ul.sub-menu.active,
#desktop-navigation li.menu-item-has-children[aria-expanded="true"] ul.sub-menu {
	transform: 										scale(1) translateY(0);
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}	

.main-navigation ul.sub-menu li a {
	padding:										4px 20px;
}

/* Mobile Menu */
#mobile-menu-bar {
	background: 								    linear-gradient(90deg, var(--lightest-grey) 0%, var(--medium-grey) 100%);	 
	border-bottom: 									none;
	box-shadow: 									none;
}

#mobile-menu-bar a,
#mobile-menu-bar .mm-bar-btn.scroll-to-top-btn .icon,
#mobile-menu-bar .mm-bar-btn.call-btn .icon,
#mobile-menu-bar .email-btn .icon,
#mobile-menu-bar .email2-btn .icon {
	color:											var(--dark-blue);
}

#mobile-menu-bar .mm-bar-btn.activate-btn div {
	background-color: 								var(--dark-blue);
}

#mobile-navigation {
	background: 								    linear-gradient(90deg, var(--lightest-grey) 0%, var(--medium-grey) 100%);	
	padding-top: 									0;
	padding-bottom; 								5px;
}

#mobile-navigation #mobile-menu > li:first-of-type {
	border-top:										1px solid var(--black-med);
}

#mobile-navigation #mobile-menu > li:last-of-type {
	border-bottom:									1px solid var(--white-med);
}

.top-slide.top-flex #mobile-navigation li {
	border: 										none !important;
	border-radius: 									6px;
}

#mobile-menu-bar .mm-bar-btn,
.top-slide.top-flex #mobile-navigation li a {
	color:											var(--dark-blue);
	background: 									var(--white-med);
	border-right:									1px solid var(--white-highest);
	border-bottom:									1px solid var(--white-highest);
	border-left: 									1px solid var(--black-med);
	border-top: 									1px solid var(--black-med);
	border-radius: 									6px;
}

.top-slide.top-flex #mobile-navigation ul.main-menu li:hover > a, 
.top-slide.top-flex #mobile-navigation ul.main-menu li.active > a {    
	color:											var(--white);
	background: 									var(--dark-blue);
	border-right:									1px solid var(--white-highest);
	border-bottom:									1px solid var(--white-highest);
	border-left: 									1px solid var(--black-med);
	border-top: 									1px solid var(--black-med);
	border-radius: 									6px;
}

/* Posts & Comment Navigation */
span.page-numbers.current {
}

span.page-numbers.dots {
}

.navigation.single .nav-links a i, 
.navigation.single .nav-links a .post-title {
}

.navigation.single .nav-links a:hover i, 
.navigation.single .nav-links a:hover .post-title,
.navigation.single .nav-links a.tab-focus i, 
.navigation.single .nav-links a.tab-focus .post-title {
}

.navigation.single .nav-links a .meta-nav, 
.navigation.single .nav-links a:hover .meta-nav, 
.navigation.single .nav-links a.tab-focus .meta-nav {
}

/* Posts and Pages
--------------------------------------------- */
.archive-meta {
}

.single-meta {
}

/* Comments */
#comments {

}

ul.comment-list > .comment {
}

/* Media
--------------------------------------------- */
#primary img:not(.img-widget), 
#wrapper-top img, 
#wrapper-bottom img, 
iframe,
svg.anonymous-icon {
	border: 										1px solid var(--darkest-grey);
}

img.logo-slider-img,
img.img-products,
img.products-img {
}	

img.img-404 {
	filter: 										sepia(0) contrast(1) hue-rotate(0deg) drop-shadow(-1px -1px 0 var(--black-low)) drop-shadow(1px 1px 0 var(--white-low));
}


/* Accordion Setup
--------------------------------------------- */
.block-accordion h2 { 
	border: 									none;
}

.block-accordion h2 .accordion-icon {
	font-size: 									18px;
}

.block-accordion p {
	margin: 									15px 0;
}


/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

#count-up {
	padding: 									0;
}

#count-up .flex {
	gap: 										0;
}

#count-up .col {
	padding: 									1.3em 0 1.75em;
	background: 								var(--main-blue);
	opacity: 									1 !important;
}

#count-up .col.miles.animate {
	background: 								rgba(0,0,0,0.1);
}

#count-up .col.hours.animate {
	background: 								rgba(0,0,0,0.15);
}

#count-up .col.donations.animate {
	background: 								rgba(0,0,0,0.2);
}

#count-up .col.missionaries.animate {
	background: 								rgba(0,0,0,0.25);
}

.counter {
	text-align: 								center;
	font-size: 									24px;
	font-weight: 								bold;
	line-height: 								1.2;
}

.counter .count-up {
	font-size: 									54px;
}

/*--------------------------------------------------------------
# Mobile Styles
--------------------------------------------------------------*/

/* Desktops */
@media only screen and (min-width: 1025px) { 
}

/* 4: Large Tablets (landscape) */
@media (max-width: 1280px) {
}

/* 3: Small Tablets (landscape) */
@media (max-width: 1024px) {
	#applications {
		padding-bottom: 								180px;
	}

	#our-story {
		padding-top: 									180px;
	}
}

/* 2: Phones (landscape) + Tablets (portrait) */
@media (max-width: 860px) {
	.logo-strip {
	  	padding-left: 									0;
	}
	
	.top-strip .col.text-right {
		text-align: 									right !important;
	}
	
	.logo .col-inner {
		margin-left: 									0 !important;
	}	
	
	.logo-strip .logo {
	  	transform: 										translateY(-12px);
	}
		
	.zeffy-frame {
	  width: 											180%;
	  margin-left: 										-40%;
	}
}

/* 1: Phones (portrait) */
@media (max-width: 576px) {
	section.strip-elem.logo-strip {
		margin-bottom: 									100px;
	}
		
	.header-full .strip-elem .flex {
		grid-template-columns: 							1fr !important;
		grid-column: 									edge-start/edge-end;
	}	
	
	.logo-strip .logo {
	  	transform: 										translateY(0);
		margin-top: 									40px;
	}
	
	.logo-strip .logo img {
		max-height: 									unset;
		width: 											100%;
	}
	
	
	.grid-6e .col-row-of-pics:nth-last-child(2) {
		display: 										block !important;
	}
	
	#applications {
		padding-bottom: 								80px;
	}

	#random-pics {
		margin-top: 									-25px; 
		margin-bottom: 									-200px;
	}
	
	#our-story {
		padding-top: 									280px;
	}
	
	.zeffy-frame {
	 	width: 											100%;
	  	margin-left: 									0;
		height: 										560px;
	}
}