/*!
Theme Name: Education Advancement
Theme URI: https://www.edadvancement.org/
Author: Phill Mamula
Author URI: http://www.phillm.com
Description: 2022 Theme for Partership for Education Advancement
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: edadvancement
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Education Advancement is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/


@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@700&family=Roboto:wght@300;400;500;700&display=swap');


/* =Global
-------------------------------------------------------------- */
html,body {
  	margin: 0; padding: 0;
  	min-height: 100%;
}
body {
	background: #FFFFFF;
	color: #12151D;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	font-size: 18px;
	line-height: 1.6em;
}
strong { font-weight: 600; }

/* Type */
h1,h2,h3,h4 {
	color: #192954;
    font-family: 'Roboto Condensed', serif;
    font-weight: 700;
    line-height: 1.1em;
    font-weight: normal;
    margin: 0 0 15px;
}
h1 { font-size: 4em; }
h2 { font-size: 3em; }
h3 { font-size: 2em; }
h4 { font-size: 1.75em; }
p { margin: 0 0 15px; }
a, a:link, a:visited { 
	color: #192954; 
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out; 
}
a:hover { color: #99B951; }
button { cursor: pointer; }
video:focus,
input:focus,
button:focus {outline:0; cursor: pointer;}
textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"],
.input-checkbox {
-webkit-appearance: none !important;
border-radius: 0;
}
ul, li { margin: 0; padding: 0; }
hr {
    background-color: rgba(0,0,0,0.1);
    border: 0;
    height: 1px;
    margin: 3vw auto;
}

.sm-text { font-size: 0.9em; line-height: 1.4em; }

/* Colors */
.mountain { color: #374c2a; }
.green { color: #91c33f; }
.skyblue { color: #acd2ed; }
.blue { color: #192954; }
.cream { color: #f1efe1; }
.sand { color: #E4D2A2; }
.white { color: #f4f4f4; }
.light-bg 	  { background: #F4F4F4; color: inherit;}
.green-bg 	  { background: #91c33f; color: #192954;}
.skyblue-bg   { background: #acd2ed; color: #192954;}
.blue-bg      { background: #192954; color: #f4f4f4;}
.mountain-bg  { background: #283D1B; color: #f1efe1;}

.light-section {
    background: #fbfbf9;
    border-top: 1px solid #dededd;
    border-bottom: 1px solid #dededd;
}


/* Structure */
.post, .page, .page-content, 
.entry-content, .entry-summary { margin: 0; }

#section {
	padding: 5vw 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-content: center;
    overflow: hidden;
}
#section:last-of-type { padding-bottom: calc(5vw + 100px); }

.flex { display: flex; flex-wrap: wrap; align-items: center;}
.flex>* { flex: 1; }
.flex .half { flex: 1 0 50%; width: 50%; }
.flex .third { flex: 1 0 33.3%; width: 33.3%; }
.flex .two-third { flex: 1 0 66.6%; width: 66.6%; }

.container {
    width: 90vw;
    max-width: 1200px;
    position: relative;
    margin: 0 auto;
}
.container.small { max-width: 900px; }


/* CTA Buttons */
a.large-cta {
    color: #192954;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 0.9em;
    line-height: 1.3em;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    display: table;
    margin-top: 30px;
    padding: 14px 40px;
    max-width: 350px;
    border: 1px solid;
    text-decoration: none;
}

a.large-cta.inverted,
a.large-cta:hover {
    border-color: #192954;
    background: #192954;
    color: #F4F4F4;
}
.blue-bg a.large-cta {
    color: #f4f4f4;
    border: 1px solid #5d85a7;
}

a.large-cta.inverted:hover,
.blue-bg a.large-cta:hover { border-color: #91c33f; background: #91c33f; color: #192954; }

/* =Header
-------------------------------------------------------------- */
header#masthead {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 99;
    padding-top: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.25);
}
ul.menu, 
ul.menu li {
    list-style: none;
    margin: 0;
    padding: 0;
}


/* Logo */
.header-top .site-branding { padding: 10px 0; }
header#masthead nav.main-navigation { flex: 3; padding-left: 15px; }
.header-top .site-branding img { width: 100%; max-width: 250px; margin-bottom: 0; }

.header-top.container.flex { align-items: flex-end; }
.header-top.container.flex nav.main-navigation  { flex: 3; }



/* Navigation */
header#masthead nav.main-navigation ul { 
    display: flex; 
    justify-content: flex-end;
}
header#masthead nav.main-navigation ul li {
    flex: inherit;
    padding-left: 5vw;
}
header#masthead nav.main-navigation ul li:first-of-type { margin-left: 0; }
header#masthead nav.main-navigation ul li a {
    color: #FFFFFF;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 0.9em;
    line-height: 1em;
    letter-spacing: 0.08em;
    padding: 20px 10px;
}
header#masthead nav.main-navigation ul li a:hover {
    margin-bottom: -3px;
    border-bottom: 3px solid #90c340;
}
header#masthead nav.main-navigation ul li.menu-item-has-children {
    position: relative;
}
header#masthead nav.main-navigation ul li.menu-item-has-children a:after {
    content: '\f107';
    font: var(--fa-font-regular);
    padding-left: 13px;
}
header#masthead nav.main-navigation ul li.menu-item-has-children .sub-menu a:after { display: none; }


/* Drop Down */
header#masthead nav.main-navigation ul.sub-menu {
    flex-direction: column;
    background: rgba(0,0,0,0.75);
    border-top: 3px solid #90c340;
    width: auto;
    box-shadow: none;
}
header#masthead nav.main-navigation ul.sub-menu li {
    border-bottom: 1px solid rgba(255,255,255,0.1);
    margin: 0;
    padding: 0;
}
header#masthead nav.main-navigation ul.sub-menu li a:hover { border: none; margin-bottom: 0; background: rgba(0,0,0,0.9); }
header#masthead nav.main-navigation ul.sub-menu li a {
    font-size: 0.9em;
    line-height: 1em;
    font-weight: 400;
    padding: 15px;
}
header#masthead nav.main-navigation ul.sub-menu li a:hover { color: #90c340; }


/* Top Menu */
.top-menu {
    background: #ecedea;
    border-bottom: 1px solid #dcdfd6;
    padding: 5px 0;
}
.top-menu .container.flex { justify-content: space-between; }
.top-menu .container.flex>* { flex: inherit; }
.top-menu ul { 
    display: flex; 
    flex-wrap: wrap; 
    width: 100%;
}
.top-menu ul li { margin-right: 3vw; }
.top-menu ul li a {
    color: #3E393B; 
    font-size: 0.8em;
    font-weight: 400;
    text-decoration: none; 
}
.top-menu ul#admin-menu li {
    margin-right: 0;
    margin-left: 3vw;
}



/* Owl Carousel - Auto Height Plugin */
.owl-height {
    -webkit-transition: height 500ms ease-in-out;
    -moz-transition: height 500ms ease-in-out;
    -ms-transition: height 500ms ease-in-out;
    -o-transition: height 500ms ease-in-out;
    transition: height 500ms ease-in-out;
}
.owl-carousel {
    margin: 0 auto;
    -webkit-tap-highlight-color: transparent;
    /* position relative and z-index fix webkit rendering fonts issue */
    position: relative;
    z-index: 1;
}
.owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
}
.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
.owl-carousel .owl-stage-outer {
    overflow: hidden;
}
.owl-carousel .owl-stage-outer {
    z-index: 999;
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-nav .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-nav .owl-next,
.owl-carousel .owl-nav .owl-dot {
  color: inherit;
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.owl-carousel.owl-loaded {
  display: block;
}
.owl-carousel.owl-loading {
  opacity: 0;
  display: block;
}
.owl-carousel.owl-hidden {
  opacity: 0;
}
.owl-carousel .owl-refresh .owl-item {
  display: none;
}
.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.owl-carousel .owl-item img {
  display: block;
  width: 100%;
  -webkit-transform-style: preserve-3d;
}
.owl-carousel.owl-text-select-on .owl-item {
  -webkit-user-select: auto;
  -moz-user-select: auto;
  -ms-user-select: auto;
  user-select: auto;
}
.owl-carousel .owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}
.owl-carousel.owl-rtl {
  direction: rtl;
}
.owl-carousel.owl-rtl .owl-item {
  float: right;
}

.owl-dot {}
.owl-dot {
    background: none;
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: 50%;
    text-transform: uppercase;
    padding: 8px;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    margin-right: 15px;
}
.owl-dot:hover { 
    border: 1px solid #32475F;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;  
}
.owl-dot.active { 
    background: #32475F;
    border: 1px solid #32475F;
  }
.owl-nav { display: none; }
.owl-nav button { 
    background: none;
    border: 1px solid;
    display: inline-block;
    width: 50px;
    height: 50px;
    padding: 0 0 3px 0;
    font-size: 1.25em;
    line-height: 0;
    margin-right: 8px;
    border-radius: 50%;
    opacity: 0.3;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;  
}
.owl-nav button:hover {
    opacity: 1;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;  
}


/* =Home
-------------------------------------------------------------- */

/* Video Hero */
#section.video-hero {
    background: #000000;
    color: #F4F4F4;
    align-content: center;
    padding: calc(5vw + 200px) 0 6vw;
    position: relative;
    border-radius: 0 0 5vw 0;
    overflow: hidden;
}
#section.video-hero:before {
    content: '';
    background: -moz-linear-gradient(left,  rgba(0,0,0,0.78) 0%, rgba(0,0,0,0.61) 19%, rgba(25,28,56,0.15) 69%, rgba(25,28,56,0) 85%);
    background: -webkit-linear-gradient(left,  rgba(0,0,0,0.78) 0%,rgba(0,0,0,0.61) 19%,rgba(25,28,56,0.15) 69%,rgba(25,28,56,0) 85%);
    background: linear-gradient(to right,  rgba(0,0,0,0.78) 0%,rgba(0,0,0,0.61) 19%,rgba(25,28,56,0.15) 69%,rgba(25,28,56,0) 85%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.65;
    z-index: 9;
}
#section.video-hero .container { position: relative; z-index: 9; }

#section.video-hero h1 {
    width: 90%;
    font-size: 5.5em;
    line-height: 1em;
    margin-bottom: 15px;
}
#section.video-hero p {
    font-size: 1.1em;
    max-width: 650px;
}
#section.video-hero a.large-cta { color: #FFFFFF; }


/* Video Background */
.iframe-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    pointer-events: none;
    overflow: hidden;
}
.iframe-wrapper video {
    width: 100vw;
    height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
    min-height: 100vh;
    min-width: 177.7vw; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
    position: absolute;
    top: 50%; 
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Overlap */
#section.overlap {
    overflow: visible;
}
#section.overlap .section-details { padding: 50px 5vw 50px 0; }
.section-details { 
    flex: 1 0 50%;
}

.overlap-image {
    flex: 1 0 50%;
    position: relative;
    z-index: 9;
    overflow: hidden;
}
.overlap-image span {
    opacity: 0.5;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 10px 15px;
    font-size: 0.8em;
    width: 100%;
}

/* Statistics */
#section.statistics { padding: 0; }
#section.statistics .section-title {
    background: rgba(0,0,0,0.05);
    text-align: center;
    padding: 15px 0;
}
#section.statistics .section-title h3 { margin: 0; font-size: 1.1em; text-transform: uppercase; }
.stat-columns.flex { align-items: initial;}
.stat-columns.flex>* { 
    padding: 20px 5vw;
    flex-grow: 1; 
    border-right: 1px solid rgba(0,0,0,0.1); 
}
.counter {
    font-size: 4.25em;
    letter-spacing: -0.06em;
    height: 65px;
    font-family: 'Roboto Condensed', sans-serif;
    margin-top: 30px;
}
.stat-item strong { margin: 2px 0; display: block; }
.stat-item p { margin-top: auto; }

.stat-item:nth-child(4) .counter:before { content: '$'; }
.stat-item:nth-child(4) .counter:after { content: 'M'; }
.stat-item:last-of-type .counter:after { content: 'K'; }

/* Partner Logos */
.partners-area.flex .section-details { flex: 1; }
.partners-area.flex .partners-logos { flex: 3; padding-left: 5vw; }
.partners-logos .logo-gallery .logo-item:nth-child(1),
.partners-logos .logo-gallery .logo-item:nth-child(2),
.partners-logos .logo-gallery .logo-item:nth-child(3) { flex: 1 0 33.3%; width: 33.3%; }
.partners-logos .logo-gallery .logo-item:nth-child(1) img,
.partners-logos .logo-gallery .logo-item:nth-child(2) img,
.partners-logos .logo-gallery .logo-item:nth-child(3) img {
    width: auto;
    max-width: 190px;
    max-height: 110px;
}

.logo-gallery.flex>* {
    flex: 1 0 25%;
    text-align: center;
    padding: 15px 10px;
}
.logo-gallery.flex>* img { width: auto; max-width: 110px; max-height: 80px; }


/* =Approach
-------------------------------------------------------------- */
#section.split-hero { padding: 0; }
#section.split-hero .container.flex>* { min-height: 600px; }
#section.split-hero .post-thumbnail img {
    object-fit: cover;
    height: 600px;
}
.approach-mission { padding: 50px 0; }
#section.approach-area { padding-bottom: 35px; }
.approach-features { flex: 1.5; padding-right: 5vw; }
.approach-features .feature {
    padding: 10px 0;
    margin-bottom: 2vw;
}
.approach-features .feature h4 {
    font-size: 2em;
    line-height: 1em;
    margin: 0 0 15px;
}

.listing.no-border { border: none; }

/* Features */
.approach-partners {
    border:  1px solid #dededd;
    position: relative;
}
#section.approach-partners .container.flex { flex-direction: row-reverse; }
#section.fifty-fifty.approach-partners .featured-image { padding: 0 5vw 0 0; }

span.caption {
    font-size: 0.75em;
    text-transform: uppercase;
    text-align: right;
    display: block;
    letter-spacing: 0.04em;
    font-weight: 400;
    color: #797768;
}


/* University Logos Carousel */
#section.uni-partners.listing.light-section {
    padding: 3vw 0 calc(2vw + 100px);
    display: block;
}
#section.uni-partners .partner-title { font-size: 0.9em; line-height: 1.2em; }

#section.uni-partners .disclaimer {
    margin: 50px auto 0;
    color: #6a6961;
    font-size: 0.8em;
    line-height: 1.5em;
    text-align: center;
}
/* Logo Grid */
.uni-grid.flex { align-items: center; justify-content: center; }
.uni-grid.flex>* { flex: 1 0 25%; width: 25%; max-width: 25%; padding: 30px; text-align: center; }
.uni-grid.flex>* img {
    width: auto;
    max-width: 180px;
    max-height: 100px;
}
/* Logo Carousel */
.logo-carousel { margin: 0px auto 10px; }
.logo-carousel .owl-stage {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.logo-carousel .logo-item { text-align: center; }
.logo-carousel .logo-item img {
    max-width: 180px;
    max-height: 95px;
    width: auto;
    mix-blend-mode: multiply;
    height: auto;
    margin: 0 auto;
}

/* =Page Header
-------------------------------------------------------------- */
#section.page-header {
    padding: calc(100px + 15vw) 0 100px;
    display: block;
    position: relative;
    border-radius: 0 0 5vw 0;
    overflow: hidden;
    z-index: 9;
}
#section.page-header .post-thumbnail {
    position: absolute;
    top: -25%;
    left: 0;
    animation: grow infinite alternate ease-in-out 20s;
    z-index: -2;
}
@keyframes grow {
  0% { transform: scale(1.2);}
  100% { transform: scale(1);}
}

#section.page-header { background-color: #000000; }
#section.page-header:before {
    content: '';
    background: -moz-linear-gradient(left,  rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.1) 100%);
    background: -webkit-linear-gradient(left,  rgba(0,0,0,0.6) 0%,rgba(0,0,0,0.1) 100%);
    background: linear-gradient(to right,  rgba(0,0,0,0.6) 0%,rgba(0,0,0,0.1) 100%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 1;
    z-index: -1;
}
#section.page-header h1 { margin: 0; font-size: 5em; line-height: 1em;}
#section.page-header p {
    color: #e3e0da;
    margin-top: 25px;
    font-size: 1.1em;
    line-height: 1.5em;
    max-width: 850px;
}
#section.page-header .header-title { max-width: 900px; }


/* Listing Title */
#section.listing .listing-title {
    padding: 15px 0;
    position: relative;
    margin-bottom: 25px;
    margin-top: -2vw;
}
#section.listing .listing-title:after {
    content: '';
    width: calc(100% + 10vw);
    height: 1px;
    background: rgba(0,0,0,0.3);
    position: absolute;
    top: 35%;
    right: -10vw;
}
#section.listing .listing-title h4 {
    background: #FFFFFF;
    color: #817d7a;
    text-transform: uppercase;
    font-size: 1em;
    padding-right: 3vw;
    letter-spacing: 0.04em;
    display: table;
    position: relative;
    z-index: 9;
}
#section.listing.light-section .listing-title h4 { background: #fbfbf9; }

#section.listing.board { border-top: 1px solid rgba(0,0,0,0.2); }


/* =Team
-------------------------------------------------------------- */
/* Team Listing */
#section.listing.team { padding-bottom: 50px; }
.team-listing.flex { align-items: initial; }
.team-listing { 
    width: calc(100% + 20px); 
    margin-left: -10px;
}
.team-grid { margin-bottom: 75px; }
.team-listing.flex>* { 
    flex: 1 0 calc(25% - 15px); 
    width: calc(25% - 15px); 
    max-width: calc(25% - 15px); 
    margin: 0 5px 15px;
}
.member-grid-item {
    border:  1px solid #dededd;
}
.member-grid-item .member-image {
    overflow: hidden;
    width: 100%;
    height: 250px;
}
.member-grid-item .member-image img { 
    height: 250px;
    width: 100%; 
    object-fit: cover; 
    object-position: center;
}
.member-grid-item .member-image a {
    display: block;
}
.member-grid-item .member-details { padding: 15px; text-align: center; min-height: 100px; }
.member-grid-item .member-details h4 { font-size: 1.4em; margin: 0 auto 5px; }
.member-grid-item .member-details span.job-title {
    display: block;
    font-size: 0.8em;
    line-height: 1.2em;
}
.member-grid-item a { text-decoration: none; }

/* Team History */
#section.team-history {
    margin-top: 50px;
    border-radius: 0 5vw 0 0;
    border-bottom: none;
    padding: 5vw 0 50px;
}
#section.fifty-fifty.team-history .container.flex { align-items: center; }
#section.fifty-fifty.team-history .section-description { flex: 4; }

.cta-links { margin: 40px 0; }
.cta-links.flex>* { margin: 10px 15px 10px 0; }

.board-header .entry-subtitle {
    width: 100%;
    max-width: 850px;
}

/* Team Single */
#section.team-header { 
    padding: calc(100px + 5vw) 0 50px; 
    border-radius: 0 0 5vw 0;
    overflow: visible;
}
#section.team-header .container.flex { align-items: flex-end; }
#section.team-header .container.flex .member-title,
.team-overlap .container.flex .entry-content { flex: 2; padding-left: 5vw;}
#section.team-header .container.flex .member-title h1 { margin: 0; }
#section.team-header .job-title { font-size: 1.2em; }
#section.team-header .post-thumbnail { border-radius: 0 5vw 0 0; overflow: hidden; margin-bottom: -9px;}
#section.team-header .profile-image { margin-bottom: -200px; z-index: 8;}
#section.team-header .profile-image a.large-cta {
    margin: 0 auto 15px;
    width: 100%;
    border: none;
    color: #1a2954;
}
#section.team-header .profile-image a.large-cta:hover { background: #1a2954; color: #f1efe1; }
.team-overlap { padding: 50px 0 25px; }


/* =Page (Default)
-------------------------------------------------------------- */
.entry-header { padding: 3vw 0; }
.entry-header h1 { margin: 0; }

/* Entry Content */
.entry-content { margin-bottom: 5vw; }
.entry-content ul { margin: 15px 0; }
.entry-content li { margin-left: 25px; margin-bottom: 15px; }
.entry-content h2,
.entry-content h3,
.entry-content h4 { font-size: 1.5em; margin: 25px 0 5px; }

.entry-content blockquote {
    color: #90c340;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.6em;
    line-height: 1.2em;
    margin: 25px auto;
    padding: 0 3vw;
}

/* Accordion */
.accordion-item {
    margin: 15px 0;
    border-bottom: 1px solid rgba(0,0,0,0.1);
    overflow: hidden;
}
.accordion-panel { display: none; padding: 10px 0;}

.expand-all { text-align: right }
.expand-all button.btn {
    padding: 5px 10px;
    border-radius: 0;
    border: none;
    text-transform: uppercase;
    font-size: 0.8em;
    letter-spacing: 0.06em;
    font-weight: 600;
    background: transparent;
    color: #c9c9b3;
    transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    margin-bottom: 15px;
}
.expand-all button.btn:hover {
    color: #12151D;
}

#section.faq-listing { padding: 0 0 50px; margin-top: -25px; }
#section.faq-listing .container { padding-right: 20vw; }
.question-item { padding-right: 5px;}
.question-item i { 
    transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;  }
.question-item.is-active i { transform: rotate(180deg); }

.question-item .question { padding: 10px 0; }
.question-item .question.flex>* { flex: inherit; }
.question-item .question.flex { justify-content: space-between; align-items: flex-start; }
.question-item .question h4 {
    font-size: 1.5em;
    margin: 0 0 10px;
}
.question-item .question i { color: #5a5a57; padding-top: 3px; }
.question-item .description { padding: 0 0 25px 0; }


/* =404
-------------------------------------------------------------- */
#section.page-header.error-404 {
    background: #20271C;
    padding-top: calc(100px + 10vw);
}
#section.page-header.error-404:before { display: none;}
#section.page-header.error-404 h1 { max-width: 600px; }
#section.page-header.error-404 p { max-width: 600px; }

/* =Default
-------------------------------------------------------------- */
#section.default-page-header {
    padding: calc(100px + 5vw) 0 150px;
}
.page.overlap {
    margin-top: -100px;
    padding: 5vw 0;
    border-radius: 0 5vw 0 0;
    background: #FFFFFF;
}
.page.overlap .container.flex { align-items: initial; }
.page.overlap .container.flex .entry-content { flex: 1 0 33.3%}
.page.overlap .container.flex .form-embed { flex: 1 0 66.6%; padding-right: 30px; border-right: 1px solid rgba(0,0,0,0.1); }
.page.overlap .form-embed { min-height: 400px; margin-bottom: 100px; }
.page.overlap .entry-content {
    max-width: 900px;
    margin: 0;
}
.page.overlap.form-split .entry-content { padding-left: 3vw; }
.page.overlap.form-split .entry-content h4 { text-transform: uppercase; font-size: 1.2em; margin: 3vw 0 5px;}
.page.overlap.form-split .entry-content h4:first-of-type { margin-top: 0; }

/* Job Listing */
.default-page-header .job-detail { width: 100%; max-width: 650px; }
.default-page-header .job-detail span { font-size: 1.1em; font-weight: 400; }
.job-description .entry-content { padding-right: 50px; }
.job-description .application-form { padding-left: 50px; border-left: 1px solid rgba(0,0,0,0.1); }

body.job .page.overlap .container.flex .entry-content { flex: 2; width: auto; max-width: auto; padding-right: 50px;}
body.job .page.overlap .container.flex .application-form {
    flex: 1 0 33.3%;
    width: 33.3%;
    max-width: 33.3%;
    padding-left: 50px;
}


/* =Slate
-------------------------------------------------------------- */

/* Checkbox */
div.form_container:not(.form_width_narrow) div.form_question.form_layout_table .form_responses, 
div.form_container:not(.form_width_narrow) div.form_question.form_layout_table .form_responses_labels {
    display: flex !important;
    flex: 1;
}
div.form_container:not(.form_width_narrow) div.form_question.form_layout_table>fieldset>div {
    display: flex;
    flex-wrap: wrap;
}

/* Impact / Job Form */
.form_question.form_checkbox .form_label,
body.single .form_layout_stacked.form_question .form_label {  
    margin: 25px 0 0; 
    font-family: 'Roboto Condensed', serif; 
    text-transform: uppercase;
    font-size: 1.1em;
}
body.single .form_layout_stacked.form_question:first-of-type .form_label { margin-top: 0; }

body.single .form_layout_stacked.form_question { margin: 0 0 5px !important; }
body.single .form_layout_stacked.form_text .form_label {
    margin: 0;
    font-family: inherit;
    font-size: 0.8em;
}
#form_page_573aac5d-3a00-4f06-8b89-e72220eb8cc3 .form_question.form_text:nth-child(1),
#form_page_573aac5d-3a00-4f06-8b89-e72220eb8cc3 .form_question.form_text:nth-child(2),
#form_page_573aac5d-3a00-4f06-8b89-e72220eb8cc3 .form_question.form_text:nth-child(3),
#form_page_573aac5d-3a00-4f06-8b89-e72220eb8cc3 .form_question.form_text:nth-child(4) {
    display: inline-block;
    width: 50%;
}
#form_page_573aac5d-3a00-4f06-8b89-e72220eb8cc3 .form_question.form_text:nth-child(2),
#form_page_573aac5d-3a00-4f06-8b89-e72220eb8cc3 .form_question.form_text:nth-child(4) {
    padding-left: 15px;
}
body.single .form_response_material_upload { margin: 10px 0 25px; }


/* Labels */
div.form_question .form_label, 
div.form_question label {
    color: #4c4b45;
    font-size: 0.85em;
    text-transform: uppercase;
    font-weight: 400;
    display: block;
}

/* Input Fields */
div.form_question { margin-bottom: 10px !important; }

form .form_question select { 
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='151515'><polygon points='0,0 100,0 50,50'/></svg>") no-repeat;
  background-size: 12px;
  background-position: calc(100% - 15px) 17px;
  background-repeat: no-repeat;
}
form .form_question input,
form .form_question textarea,
form .form_question select {
    border: 1px solid rgba(0,0,0,0.4);
    border-radius: 0;
    padding: 8px 12px;
    width: 100%;
    margin: 0 !important;
}
form .form_question input[type="radio"] { width: auto; transform: scale(1.2); }
form .form_question textarea { height: 120px; }

/* Checkbox */
div.form_question.form_checkbox .form_response { margin: 10px 0; }
div.form_question.form_checkbox .form_response input { width: auto; transform: scale(1.1); }
div.form_question.form_checkbox .form_response input+label { margin-left: 15px; }

/* Flex Fields */
div.form_question.form_text.form_layout_table.hidden { display: none !important; }
div.form_question.form_text.form_layout_table,
div.form_question.form_address div {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    margin: 5px 0;
}

div.form_question.form_text.form_layout_table label,
div.form_question.form_address div>* { flex: 1 !important;}
div.form_question.form_text.form_layout_table div.form_responses,
div.form_question.form_address div.form_responses { flex: 3 !important; padding: 0 !important;}


/* Address */
div.form_question.form_address {
    padding: 20px 0;
    border-top: 1px solid #d7d4c3;
    margin-top: 30px;
}
div.form_question.form_address div.form_label {
    display: block;
    font-family: 'Roboto Condensed', sans-serif;
    text-transform: uppercase;
    font-size: 1.5em;
    margin-bottom: 15px;
}

/* Donate Amount */
#form_1668d6d7-1e3d-459c-898d-b6df96a4eaae {
    background: #f5f4ed;
    margin: 5px auto 25px;
    border: 1px solid #d7d4c3;
    border-radius: 10px;
    padding: 0;
    text-align: center;
    overflow: hidden;
}
#form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_label {
    background: rgb(255 255 255 / 52%);
    text-transform: uppercase;
    margin: 0 auto;
    font-weight: 500;
    letter-spacing: 0.04em;
    padding: 5px 0;
    display: block;
    width: 100% !important;
    font-family: 'Roboto Condensed', sans-serif;
    text-align: center;
}
#form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_responses { margin: 15px auto; }
#form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_responses>* { flex: 1; border-right: 1px solid rgba(0, 0, 0, 0.1); padding: 10px 2vw 15px; }
#form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_responses>*:last-of-type { border: none; }
#form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_response input+label {
    margin: 10px auto 0;
    font-family: 'Roboto Condensed', sans-serif;
    text-transform: uppercase;
    font-size: 1.15em;
    display: block;
}
#form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_response input[type="radio"] { transform: scale(1.5); }


/* Payment Form */
div#payment_form {
    background: #fafaf7;
    border: 1px solid #e6e4d8 !important;
    padding: 20px 20px 0 !important;
    border-radius: 10px;
}
/* Radio Button Side by Side */
div#payment_form td.form_question { 
    display: flex !important;
    align-items: center !important;
}
div#payment_form td.form_question>* { flex: 1 0 50%; }

div#payment_form tbody label[for="newAmount"],
div#payment_form span.displayAmount { 
    font-family: 'Roboto Condensed', sans-serif;
}

div#payment_form tbody label[for="newAmount"] {
    font-size: 1.15em;
}
div#payment_form label { text-transform: uppercase; font-size: 0.85em; line-height: 1.3em; padding: 10px 0; }

div#payment_form input { width: auto; }
div#payment_form input#routing,
div#payment_form input#account { width: 80%; }
div#payment_form span#displayAmount.displayAmount { font-size: 2em; }
div.form_container:not(.form_width_narrow) div.form_question.form_layout_table>fieldset>div { display: flex; }

div#payment_form td#selected_card {
    display: table;
    width: 100%;
}

div#payment_form div.form_question .form_label, 
div#payment_form div.form_question label {
    display: block;
    text-transform: uppercase;
    font-size: 0.9em;
    color: #283d1b;
}

div#payment_form #card-location { max-width: 100%; padding: 10px 15px; }

/* Recurring Payments */
div#payment_form input#recurring { transform: scale(1.2); width: auto; }
div#payment_form label[for="recurring"] {
    font-weight: bold;
    padding: 25px 0 25px 10px;
    display: inline-block;
}
tbody#recurring_questions select {
    width: 100%;
    background-color: #FFFFFF;
    max-width: 225px;
}
tbody#recurring_questions select#recurring_end_years,
tbody#recurring_questions span#recurring_end_months select { max-width: 125px; }
div#recurring_start_date_div {
    padding: 10px 0;
}


/* Payment Name */
div#payment_form tbody tr th { text-transform: uppercase; line-height: 1.4em; }
div#payment_form tbody#name_section input { width: 100%; }
div#payment_form #block_check_manual { font-size: 0.8em; line-height: 1.5em; margin: 5px 0 15px; }

div#payment_form label[for="routing"],
div#payment_form label[for="account"] { padding-right: 15px; }

/* Mailing List */
.form_question.form_layout_table.form_address {
    border-top: 1px solid #ebebe4;
    margin: 20px auto !important;
    padding: 10px 0 !important;
}
.form_question.form_layout_table.form_address div.form_label {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: normal;
    text-transform: uppercase;
    font-size: 1.2em;
    width: 100% !important;
    display: block !important;
    margin-bottom: 15px;
    color: #90c340;
}

/* Submit Button */
form button.default.form_button_submit {
    padding: 15px 5vw;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 0.9em;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: normal;
    border-radius: 0;
    color: #f1efe1;
    border: none;
    background: #12151D;
    transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
}
form button.default.form_button_submit:hover {
    background: #90c340;
    border: #90c340;
    color: #12151D;
}



/* =About
-------------------------------------------------------------- */
span.eyebrow {
    font-size: 0.7em;
    line-height: 1em;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 10px 20px;
    border: 1px solid;
    border-radius: 30px;
    margin-bottom: 30px;
    display: table;
}

/* Mission */
#section.about-mission { 
    padding: calc(100px + 3vw) 0 10vw; 
    border-bottom: 1px solid rgba(0,0,0,0.2); 
    margin-top: -5vw;
}
#section.about-mission h2 {
    font-size: 3.25em;
    line-height: 1.15em;
    margin: 25px 0 2vw;
}
#section.about-mission p {
    font-size: 1.1em;
    margin-bottom: 50px;
}
#section.about-mission ul.feature-list.flex {
    align-items: initial;
}
#section.about-mission ul.feature-list.flex li {
    list-style: none;
    font-weight: 400;
    padding: 0 5vw 0 0;
    line-height: 1.4em;
    font-size: 1.2em;
}
#section.about-mission ul.feature-list.flex li i {
    color: #90c340;
    font-size: 2em;
    display: block;
    margin-bottom: 15px;
}

#section.fifty-fifty h3.section-title {
    font-size: 3em;
    line-height: 1em;
    margin-bottom: 40px;
}
#section.fifty-fifty .featured-image {
    padding: 0 0 0 5vw;
}
#section.fifty-fifty .featured-image img { object-fit: cover; width: 100%; height: 100%; }
#section.fifty-fifty.about-board .featured-image {
    padding: 0 5vw 0 0;
}

.board-members.flex { align-items: initial; }
.board-members.flex>* { flex: 1 0 25%; max-width: 25%; margin-bottom: 3vw; padding-right: 4vw; font-size: 0.9em; line-height: 1.4em; }
.board-members.flex>* strong,
.board-members.flex>* em { display: block; margin-bottom: 5px; }
.board-members.flex>* strong { font-size: 1.15em; }
.board-members.flex span { font-size:0.9em; line-height:1.1em; }

/* Approach */
#section.fifty-fifty.approach { border-bottom: 1px solid rgba(0,0,0,0.1); }
#section.fifty-fifty.approach .container.flex { align-items: initial; }
#section.fifty-fifty.approach .container.flex .section-description { flex: 1.5; }
#section.fifty-fifty.approach.flip .container.flex { flex-direction: row-reverse; }
#section.fifty-fifty.approach.flip .featured-image { padding: 0 5vw 0 0; }
#section.fifty-fifty.approach .container.flex img { height: auto; }
#section.fifty-fifty .entry-content { margin-bottom: 25px; }
#section.fifty-fifty .cta-links { margin: 15px 0 0; }

/* Columns */
#section.fifty-fifty.columns h3 { margin-bottom: 15px; }
#section.fifty-fifty.columns .columns.flex { align-items: initial; width: calc(100% + 40px); margin-left: -20px; }
#section.fifty-fifty.columns .columns.flex>* { padding: 20px; }
#section.fifty-fifty.columns .columns.flex>* strong { display: block; margin-bottom: 10px; line-height: 1.3em; font-size: 1.2em; width: 85%; }

/* Board */
#section.about-board.light-section {
    border-radius: 5vw 0 0 0;
    border-bottom: none;
}
#section.about-board .section-title { padding-right: 2vw; }
#section.about-board.light-section .section-title p,
#section.about-partners.light-section .section-title p { max-width: 980px; }

#section.light-section.about-board-listing { border: none; padding: 3vw 0; }
#section.light-section.no-border { border-bottom: none; padding-bottom: 25px; }
#section.light-section.about-board.no-border.no-corner { border-radius: 0; }
#section.light-section.supporters-listing { border: none; padding-top: 25px; }
#section.light-section.logos {
    border: none;
    padding:  3vw 0 250px;
}

/* Partners */
#section.about-partners .container.flex { align-items: initial; }
#section.about-partners .partners-logos .logo-gallery {
    margin: 50px auto;
}
#section.about-partners .partners-logos .logo-gallery .logo-item:nth-child(1), 
#section.about-partners .partners-logos .logo-gallery .logo-item:nth-child(2), 
#section.about-partners .partners-logos .logo-gallery .logo-item:nth-child(3) {
    flex: 1 0 33.3%;
    width: 33.3%;
    max-width: 33.3%;
}
#section.about-partners .logo-gallery.flex>* {
    flex: 1 0 20%;
    width: 20%;
    max-width: 20%;
}

/* =Careers
-------------------------------------------------------------- */
#section.jobs.main-content { 
    padding: 5vw 0 2vw; 
}
#section.listing.jobs {
    padding-bottom: calc(3vw + 100px);
}

.careers-border-top {
    border-top: 1px solid #dededd;
}
.careers-border-top p { width: 100%; max-width: 980px; }


/* Job Listing */
.jobs-item.flex { align-items:flex-start; }
.jobs-item.flex h4 { flex: 2; }
.jobs-item.flex .job-detail { flex: 1; }
.jobs-item.flex .short-description { flex: 2; }

.jobs-item { padding: 30px 0; border-bottom: 1px solid rgba(0,0,0,0.2); }
.jobs-item:last-of-type { border-bottom: none; }
.jobs-item h4 { padding-right: 3vw; }
.jobs-item h4 a { text-decoration: none; }
.jobs-item .job-detail {
    padding-left: 3vw;
    line-height: 1.2em;
}

/* Job Details */
.job-detail .job-option { margin-bottom: 15px; }
.job-detail label {
    font-size: 0.8em;
    text-transform: uppercase;
    display: block;
}
.job-detail span { font-weight: 500; font-size: 0.9em; }
.job-disclaimer { 
    border-top: 1px dashed rgba(0,0,0,0.1);
    padding-top: 2vw;
    color: #6a6961;
    font-size: 0.8em;
    line-height: 1.5em;
    margin-top: 15px;
}


/* =News (Posts)
-------------------------------------------------------------- */
/* Listing */
article { 
    padding: 50px 0;
    border-bottom: 1px solid #dededd;
}
article:nth-child(even) {
    background: #fbfbf9;
}
article:nth-child(even) .container.flex { flex-direction: row-reverse; }
article:nth-child(even) .container.flex .article-list-image { margin-left: 5vw; margin-right: 0; }

body.blog #section.page.overlap { padding: 25px 0 150px; }

.page.overlap article .container.flex { align-items: center; }
article .container.flex .article-list-content { flex: 1.5; }
article .container.flex .article-list-image {
    margin-right: 5vw;
    height: 400px;
    overflow: hidden;
}
article .container.flex .article-list-image img { object-fit: cover; object-position: center; height: 400px; width: 100%; }

article .article-list-excerpt { max-width: 900px; }

article .article-list-header h3 { font-size: 2.25em; line-height: 1.2em; }
article .article-list-header h3 a { text-decoration: none; }

article .entry-meta {
    padding: 5px 0 10px;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 0.9em;
    letter-spacing: 0.02em;
    color: #9f9f9b;
}


/* Single Article */
body.single-post .entry-meta { font-size: 0.9em; color: #9f9f9b; border-top: 1px solid rgba(0,0,0,0.15); padding-top: 15px; margin-top: 25px; }
body.single-post #section.post-header { padding: calc(100px + 5vw) 0 150px; border-radius: 0 0 5vw 0; }
body.single-post .post-thumbnail {
    margin: -150px 0 25px;
    border-radius: 0 5vw 0 0;
    overflow: hidden;
}
body.single-post .entry-content { margin-bottom: 150px; }
body.single-post .entry-content iframe { margin: 25px auto; display: block; }
body.single-post .entry-content a.large-cta { max-width: 600px; margin: 0 auto; }

/* Embed Slate in article */
body.single-post .entry-content form {
    background: #f1f0ea;
    border: 1px solid #dcdad8;
    padding: 20px 10px 30px;
    border-radius: 10px;
    margin: 25px auto 40px;
}
body.single-post .entry-content form .form_page {
    display: flex !important;
    flex-wrap: wrap;
}
body.single-post .entry-content form .form_page>* {
    flex: 1 0 50%;
    width: 50%;
    padding: 5px 15px;
}
body.single-post .entry-content form .form_page .form_checkbox {
    flex: 1 0 100%;
    width: 100%;
}
body.single-post .entry-content form .form_page .form_checkbox .form_label {
    margin: 5px 0;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    text-transform: none;
    font-size: 0.9em;
    width: 90%;
    float: left;
}
body.single-post .entry-content form .form_page .form_checkbox .form_responses {
    float: right;
    text-align: right;
}
body.single-post .entry-content form .form_page .form_checkbox .form_responses .form_response { margin: 5px; }

body.single-post .entry-content form .action { text-align: center; }
body.single-post .entry-content form .action button {
    margin: 10px auto 5px;
    width: 100%;
    max-width: 600px;
}


/* Embed Resposively */
.embed-container { 
    position: relative; padding-bottom: 56.25%; 
    height: 0; overflow: hidden; max-width: 100%;
} 
.embed-container iframe, 
.embed-container object, 
.embed-container embed { position: absolute; 
    top: 0; left: 0; 
    width: 100%; height: 100%; 
}


/* =Footer
-------------------------------------------------------------- */
footer.site-footer {
    padding: 20px 0;
    margin-top: -5vw;
    border-radius: 5vw 0 0 0;
}

/* Footer Pop Up */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 99; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.7); /* Black w/ opacity */
}
.modal-content {
    background-color: #FFFFFF;
    border-top: 10px solid #90C340;
    margin: 0 auto;
    top: calc(50% - 225px);
    padding: 50px;
    border-radius: 0 0 0 30px;
    overflow: hidden;
    width: 90vw;
    max-width: 800px;
    position: relative;
}
.modal-content div.form_p .form_label {
    font-weight: normal;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.5em;
    width: 70%;
    line-height: 1em;
    color: inherit;
}

/* Email Capture Form */
#form_page_172f0567-0f8b-457a-9eb8-542bd11c70c8 .form_page {
    display: flex;
    flex-wrap: wrap;
}
#form_page_172f0567-0f8b-457a-9eb8-542bd11c70c8 .form_p {
    flex: 1 0 100%;
    width: 100%;
    margin: -15px auto 15px !important;
}
#form_page_172f0567-0f8b-457a-9eb8-542bd11c70c8 .form_text {
    flex: 1 0 50%; width: 50%;
    padding-right: 15px;
}

/* The Close Button */
.close {
    color: #015015;
    float: right;
    font-size: 2em;
    position: absolute;
    top: 30px;
    right: 40px;
    z-index: 9;
}
.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}



/* Footer Tagline */
.tagline-footer { 
    position: relative;
    margin-bottom: 50px;
}
.tagline-footer .container { 
    padding: 15px 0 30px;
    border-bottom: 1px solid rgba(255,255,255,0.2);
}
.tagline-footer .container.flex { justify-content: space-between; }
.tagline-footer .container.flex>* { flex: inherit; }
.tagline-footer h4 { 
    margin: 0; 
    color: #FFFFFF;
    font-size: 2em;
    flex: 3;
}
.tagline-footer button.large-cta {
    background: transparent;
    border-radius: 0;
    color: inherit;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 0.9em;
    line-height: 1.3em;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 14px 40px;
    border: 1px solid;
    text-decoration: none;
}
.tagline-footer .large-cta:hover { background: #90c340; border: 1px solid #90c340; color: #12151D; }
.bottom-footer.container.flex { align-items: initial; }

.tagline-cta.flex { justify-content: flex-end; }


/* Footer Navigation */
.footer-navigation.flex { align-items: initial; flex: 2; }
.footer-navigation>* { padding-right: 8vw; padding-bottom: 50px; }
.footer-navigation ul.menu li { padding: 0; }
.footer-navigation ul.menu li a { 
    font-size: 0.9em;
    color: inherit; 
    text-decoration: none; 
}
.footer-navigation ul.menu li a:hover { color: #acd2ed; }

.footer-navigation ul.menu li:first-of-type {
    border-bottom: 1px solid rgb(172 210 237 / 25%);
    padding: 3px 0;
    margin-bottom: 10px;
    font-weight: 500;
}
.footer-navigation ul.menu li:first-of-type a {
    font-size: 1em;
    text-transform: uppercase;
    border-bottom: 2px solid #90C340;
    padding-bottom: 6px;
    letter-spacing: 0.04em;
}
.footer-navigation ul.menu li:first-of-type a:hover { color: inherit; }

/* Copyright */
footer.site-footer .site-info {
    font-size: 0.8em;
    line-height: 1.4em;
    font-weight: 300;
}
footer.site-footer .site-info a { color: inherit; }
footer.site-footer .site-info a:hover { color: #F4F4F4; }

footer.site-footer .site-info .socials { max-width: 120px; margin: 0 0 20px; }
footer.site-footer .site-info .socials a {
    font-size: 1.8em;
    margin: 0 5px 0 0;
}

/* =Mobile (Media Queries)
-------------------------------------------------------------- */
@-ms-viewport {
  width: device-width;
}
@viewport {
  width: device-width;
}
@media only screen and (max-width: 1120px) {
    #section.page-header h1 { font-size: 4.5em; }
    .uni-grid.flex>* { flex: 1 0 33.3%; width: 33.3%; max-width: 33.3%; }
    .uni-grid.flex>* img { width: 100%; max-width: 140px; height: auto; max-height: initial; }
}
@media only screen and (max-width: 1024px) {

    /* FAQs */
    #section.faq-listing { padding: 0 0 50px; margin-top: 0; }
    #section.faq-listing .container { padding-right: 0; }

    /* Team */
    .team-listing.flex>* { 
        flex: 1 0 calc(33.3% - 15px); 
        width: calc(33.3% - 15px); 
        max-width: calc(33.3% - 15px); 
        margin: 0 5px 15px;
    }

    /* About */
    #section.page-header h1 { font-size: 4em; width: 80%; }
    #section.about-mission h2 { font-size: 3em; }
    #section.about-mission ul.feature-list.flex li { font-size: 1.1em; font-weight: normal; }

    #section.fifty-fifty h3.section-title { font-size: 2.5em; margin-bottom: 25px; }
}
@media only screen and (max-width: 820px) {
    /* Header */
    header#masthead { padding: 15px 0 5px; }
    header#masthead .header-top.container.flex { display: block; width: 100%; }
    header#masthead .header-top .site-branding { padding: 0 5vw; }
    header#masthead .header-top .site-branding img { max-height: 60px; width: auto; }
    header#masthead nav.main-navigation { padding-left: 0; }
    header#masthead button.menu-toggle {
        display: block;
        background: transparent;
        border: none;
        width: 40px;
        height: 40px;
        border-radius: 0;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        -o-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
        cursor: pointer;
        text-indent: -999em;
        position: absolute;
        top: 10px;
        right: 5vw;
    }
    button.menu-toggle span {
        display: block;
        position: absolute;
        height: 2px;
        width: 100%;
        background: #fdfcf5;
        opacity: 1;
        left: 0;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .25s ease-in-out;
        -moz-transition: .25s ease-in-out;
        -o-transition: .25s ease-in-out;
        transition: .25s ease-in-out;
    }
    button.menu-toggle span:nth-child(1) { top: 5px;}
    button.menu-toggle span:nth-child(2),
    button.menu-toggle span:nth-child(3) { top: 20px;}
    button.menu-toggle span:nth-child(4) { top: 35px;}     
    .main-navigation.toggled button.menu-toggle span { background: #90C340; }   
    .main-navigation.toggled button.menu-toggle span:nth-child(1) {
        top: 20px;
        width: 0%;
        left: 50%;
    }
    .main-navigation.toggled button.menu-toggle  span:nth-child(2) {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .main-navigation.toggled button.menu-toggle span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .main-navigation.toggled button.menu-toggle span:nth-child(4) {
        top: 20px;
        width: 0%;
        left: 50%;
    }
    header#masthead nav.main-navigation ul { display: none; }
    header#masthead nav.main-navigation.toggled ul { display: block; }

    header#masthead nav.main-navigation.toggled ul {
        display: block;
        background: #151515;
        border-top: 4px solid #90c340;
        overflow: hidden;
        padding: 0;
        margin: 5px auto -10px;
    }
    header#masthead nav.main-navigation ul li { padding: 0; }
    header#masthead nav.main-navigation ul li a { padding: 20px 5vw; font-size: 1em; letter-spacing: 0.1em; }
    header#masthead nav.main-navigation ul li a:hover { border: none; margin-bottom: 0; }
    header#masthead nav.main-navigation ul li.menu-item-has-children a:after { opacity: 0.5; margin-left: 5px; }

    /* Dropdown Inline */
    header#masthead nav.main-navigation ul.sub-menu { border-top: none; margin-bottom: 0; background: #000000;}
    header#masthead nav.main-navigation ul.sub-menu li { border: none; border-top: 1px solid #151515;}
    header#masthead nav.main-navigation ul.sub-menu li a { padding: 20px 10vw; width: 100%; font-size: 0.95em; }
    header#masthead nav.main-navigation ul li {
        border-top: 1px solid #222222;
    }
    header#masthead nav.main-navigation ul li:hover > ul, 
    header#masthead nav.main-navigation ul li.focus > ul{
        display: block;
        position: relative;
        width: 100%;
        top: auto;
        float: none;
        box-shadow: none;
    }

    /* Color Overwrites */
    body.page-template-default header#masthead nav.main-navigation.toggled ul,
    body.blog header#masthead nav.main-navigation.toggled ul,
    body.single header#masthead nav.main-navigation.toggled ul { background: #152142; }
    body.page-template-default header#masthead nav.main-navigation.toggled ul.sub-menu,
    body.blog header#masthead nav.main-navigation.toggled ul.sub-menu,
    body.single header#masthead nav.main-navigation.toggled ul.sub-menu { background: #111b38; }
    body.page-template-default header#masthead nav.main-navigation ul li,
    body.blog header#masthead nav.main-navigation ul li,
    body.single header#masthead nav.main-navigation ul li { border-top: 1px solid #2e3958;}
    body.page-template-default header#masthead nav.main-navigation ul.sub-menu li,
    body.blog header#masthead nav.main-navigation ul.sub-menu li,
    body.single header#masthead nav.main-navigation ul.sub-menu li { border-top: 1px solid #0f121c; }

    /* Pages */
    #section { padding: 50px 0; }
    .flex .half { flex: 1 0 100%; width: 100%; }
    span.eyebrow { font-size: 0.8em; }
    .entry-content ul { padding-left: 15px; }
    #section.default-page-header { padding: calc(100px + 10vw) 0 75px;}
    .page.overlap { margin-top: -50px; padding: 50px 0; border-radius: 0 50px 0 0;}


    #section.page-header .post-thumbnail { height: 100%; top: 0; }
    #section.page-header .post-thumbnail img {
        width: auto;
        object-fit: cover;
        height: 100%;
    }

    /* Approach */
    #section.fifty-fifty.approach.flip .container.flex { flex-direction: column; }
    #section.fifty-fifty.approach .featured-image { padding: 15px 0; text-align: left; }
    #section.fifty-fifty.approach .featured-image img { width: 100%; max-width: 520px; }
    #section.fifty-fifty.approach .featured-image span.caption { text-align: left; }

    #section.about-board.light-section { border-radius: 50px 0 0 0; }
    
    /* Home */
    #section.video-hero { border-radius: 0 0 50px 0; padding: calc(5vw + 150px) 0 50px; }
    #section.video-hero h1 { font-size: 3em; }
    #section.page-header { border-radius: 0 0 50px 0; overflow: hidden; padding: calc(100px + 10vw) 0 50px; }
    #section.overlap .section-details { padding: 0 0 50px; }
    .stat-columns.flex>* { flex: 1 0 50%; width: 50%; border-bottom: 1px solid rgba(0,0,0,0.1); }

    .counter { font-size: 3em; height: 40px; }
    .stat-item strong { display: block; line-height: 1.2em; }
    .approach-features { padding: 0; }
    .approach-features .feature h4 { margin: 0 0 5px; }


    /* Team */
    #section.team-header { border-radius: 0 0 50px 0; padding: 125px 0 50px; }
    #section.team-header .post-thumbnail { border-radius: 0 25px 0 0; }
    #section.team-header .container.flex { align-items: center; }
    #section.team-header .container.flex .member-title { flex: 1.5; }
    #section.team-header .container.flex .member-title h1 { font-size: 4em; line-height: 1em; width: 80%; margin-bottom: 15px; }
    #section.team-header .profile-image { margin-bottom: 0; }
    .team-overlap .container.flex .entry-content { padding: 0; }
    .empty-space { display: none; }

    /* Careers */
    body.job .job-description.page.overlap .container.flex { flex-direction: column; }
    body.job .job-description.page.overlap .container.flex>* { flex: 1 0 100%; width: 100%; max-width: 100%; }
    body.job .page.overlap .container.flex .entry-content { padding: 0; }
    body.job .page.overlap .container.flex .application-form { padding: 50px 0; border: none; border-top: 1px solid rgba(0,0,0,0.2); }

    /* About */
    #section.about-mission { margin-top: -50px; }
    #section.fifty-fifty .container.flex { flex-direction: column; }
    #section.fifty-fifty .featured-image { padding: 0; margin: 25px 0; }
    #section.fifty-fifty .featured-image img { object-fit: contain; height: auto; }

    .board-members.flex>* { flex: 1 0 33.3%; width: 33.3%; max-width: 33.3%; margin-bottom: 25px; padding-right: 15px; }


    #section.fifty-fifty.columns .columns.flex>* { flex: 1 0 50%; width: 50%; max-width: 50%; }

    #section.listing .listing-title { margin: 5px 0 25px; }
    #section.light-section.logos { padding-bottom: 100px; }
    .partners-area.flex { flex-direction: column;}
    .partners-area.flex .partners-logos { flex: 1 0 100%; padding: 10px 0; margin-top: 35px;}
    .partners-logos .logo-gallery .logo-item:nth-child(1) img, 
    .partners-logos .logo-gallery .logo-item:nth-child(2) img, 
    .partners-logos .logo-gallery .logo-item:nth-child(3) img { 
        width: auto; max-width: 150px; 
        max-height: 90px; 
        padding: 0; margin: 0;
    }
    .logo-carousel .logo-item img { width: 80%; max-width: inherit; max-height: initial; }

    /* News */
    article { padding: 25px 0; }
    article .article-list-header h2 { font-size: 2.25em; margin: 0; }
    .page.overlap article .container.flex, 
    .page.overlap article:nth-child(even) .container.flex { flex-direction: column; }
    article .container.flex .article-list-image,
    article:nth-child(even) .container.flex .article-list-image { margin: 10px auto 3vw; height: 300px; width: 100%; }
    article .container.flex .article-list-image img { height: 300px; width: 100%; }

    .page.overlap.form-split .entry-content h4 { font-size: 1.5em; margin-bottom: 10px; }

    /* Forms (Flex Fields) */
    table.plain>*>tr>th, table.plain>*>tr>td { padding: 0; }
    
    div.form_question.form_text.form_layout_table label,
    div.form_question.form_address div>* { flex: 1 !important;}
    div.form_question.form_text.form_layout_table div.form_responses,
    div.form_question.form_address div.form_responses { flex: 2 !important; padding: 0 !important;}

    div.form_question.form_address div.form_label { margin-top: 20px; }
    tbody#recurring_questions select#recurring_end_years { max-width: 100%; }
    tbody#recurring_questions span#recurring_end_months { margin: 0 !important; }
    tbody#recurring_questions span#recurring_end_months select { 
        display: block; max-width: 50%; margin: 5px 0 0 !important; }

    .page.overlap .container.flex  { flex-direction: column-reverse; }
    .page.overlap.form-split .entry-content { padding: 0 0 25px; }
    .page.overlap .container.flex .form-embed { flex: 1; padding: 25px 0 50px; border: none; }

    div#payment_form td.form_question { display: block !important;}
    div#payment_form td.form_question>* { padding: 2px 0 !important; }


    #form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_responses>* { 
        flex: 1 0 33.3%; width: 33.3%; 
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        padding: 20px 10px 15px;
    }
    #form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_responses>*:nth-child(3) { border-right: none; }
    #form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_responses>*:nth-child(4),
    #form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_responses>*:nth-child(5) {
        border-bottom: none;
    }
    #form_1668d6d7-1e3d-459c-898d-b6df96a4eaae .form_response input+label { line-height: 1.5em; }

    form button.default.form_button_submit { width: 100%; padding: 15px 50px; font-size: 1.2em; margin: 10px auto 0; }

    /* Team */
    .team-listing.flex>* { 
        flex: 1 0 calc(50% - 15px); 
        width: calc(50% - 15px); 
        max-width: calc(50% - 15px); 
        margin: 0 5px 15px;
    }

    /* Careers */
    .jobs-item { padding: 25px 0;}
    .jobs-item.flex h4 { flex: 1 0 100%; font-size: 2.25em; }
    .jobs-item.flex .short-description { padding-right: 15px; }
    #section.listing .listing-title { padding: 0; }

    /* News */
    body.single-post .entry-content form { padding: 30px; }
    body.single-post .entry-content form .form_page { display: block !important; }
    body.single-post .entry-content form .form_page .form_checkbox .form_label {
        float: none;
        width: 100%;
        line-height: 1.2em;
    }
    body.single-post .entry-content form .form_page .form_checkbox .form_responses {
        float: none; text-align: left;
    }

    /* FAQs */
    #section.faq-listing { padding-top: 25px; }
    .question-item .question h4 { padding-right: 25px; }
    .question-item .description { padding: 5px 0 40px; }

    #section.page-header { padding: calc(100px + 35vw) 0 50px; }
    #section.video-hero:before,
    #section.page-header:before {
        content: '';
        opacity: 1;
        background:    -moz-linear-gradient(to top, rgb(0 0 0 / 70%) 50%,rgb(0 0 0 / 0%) 100%);
        background: -webkit-linear-gradient(to top, rgb(0 0 0 / 70%) 50%,rgb(0 0 0 / 0%) 100%);
        background:         linear-gradient(to top, rgb(0 0 0 / 70%) 50%,rgb(0 0 0 / 0%) 100%);
        width: 100%;
        height: 70%;
        top: auto;
        bottom: 0;
        left: 0;
    }
    #section.video-hero p,
    #section.page-header p { font-size: 1em; line-height: 1.6em; }

    /* Footer */
    footer.site-footer { border-radius: 50px 0 0 0; margin-top: -50px; padding: 20px 0 50px;}
    .tagline-footer { margin-bottom: 35px; }
    .tagline-footer h4 { flex: 1; }
    .bottom-footer.container.flex { flex-direction: column; }
    .tagline-footer button.large-cta { margin-top: 15px; }
    .footer-navigation>* { padding-right: 25px; padding-bottom: 15px; }
    .footer-navigation>*:last-of-type { padding-right: 0; }

    .modal-content { padding: 30px 8vw 50px; }
    .modal-content div.form_p .form_label { width: 85%;}

}
@media only screen and (max-width: 600px) {
    body { font-size: 17px; }
    h1 { font-size: 3.5em; }
    h2 { font-size: 2.5em; }
    h3,
    #section.about-mission h2,
    #section.fifty-fifty h3.section-title { font-size: 2.25em; margin: 5px 0 15px; }
    h4 { font-size: 2em; }
    .container { width: 85vw; }

    .cta-links.flex { flex-direction: column; }
    .cta-links.flex>* { margin: 5px auto; width: 100%; max-width: 350px; }

    /* Pages */
    #section.video-hero { padding: calc(5vw + 150px) 0 50px; }
    .iframe-wrapper video { min-width: 275vw; }
    h1.entry-title,
    #section.page-header h1, 
    #section.video-hero h1 {
        font-size: 2.75em;
        width: 100%;
        padding: 0;
    }
    #section.about-mission ul.feature-list.flex li { flex: 1 0 50%; padding: 0 25px 25px 0; font-size: 1em; }


    #section.fifty-fifty.columns .columns.flex { width: 100%; margin: 0 auto; flex-direction: column; }
    #section.fifty-fifty.columns .columns.flex>* { flex: 1 0 100%; width: 100%; max-width: 100%; padding: 0 0 25px; }

    /* Team */
    .team-listing { width: 100%; margin: 0 auto; }
    #section.team-header .container.flex { flex-direction: column-reverse; align-items: initial; }
    #section.team-header .container.flex .member-title { padding: 0 0 25px; }
    .member-grid-item .member-details h4 { font-size: 1.75em; margin: 5px auto; }
    #section.team-header .post-thumbnail {  border-radius: 0; margin-bottom: -100px; width: 80%;}

    #section.team-history {
        border-radius: 0 50px 0 0;
        padding: 50px 0 20px;
    }
    #section.team-history .featured-image { max-width: 350px; }

    .partners-logos .logo-gallery .logo-item:nth-child(1), 
    .partners-logos .logo-gallery .logo-item:nth-child(2), 
    .partners-logos .logo-gallery .logo-item:nth-child(3),
    .logo-gallery.flex>*,
    .uni-grid.flex>* { flex: 1 0 50%; width: 50%; max-width: 50%; }

    #section.team-header .post-thumbnail img { max-height: 300px; width: auto; border-radius: 0 50px 0 0; }
    .team-overlap { padding-top: 125px; }
    #section.team-header .container.flex .member-title h1 { font-size: 3em; width: 100%; margin-bottom: 5px; }

    .partners-logos .logo-gallery .logo-item:nth-child(1) img, 
    .partners-logos .logo-gallery .logo-item:nth-child(2) img, 
    .partners-logos .logo-gallery .logo-item:nth-child(3) img {
        max-width: 125px;
        max-height: auto;
    }

    /* FAQs */
    .question-item .question.flex { display: block; position: relative; }
    .question-item .question h4 { padding-right: 50px; }
    .question-item .question i { position: absolute; top: 15px; right: 5px; }

    /* Footer */
    footer.site-footer { padding: 25px 0 50px; }
    .tagline-footer .container.flex, .tagline-cta.flex { display: block; }
    .tagline-footer .container.flex h4 { font-size: 2.5em; line-height: 1em; }
    .tagline-footer .container.flex a.large-cta { margin: 25px 0 0; }
    footer.site-footer .container { width: 85vw; }
    .footer-navigation.flex { margin-bottom: 25px; }
    .footer-navigation.flex ul { margin-right: 5vw; }
    .footer-navigation.flex .menu-col-1-container { order: 1; }
    .footer-navigation.flex .menu-col-2-container { order: 3; }
    .footer-navigation.flex .menu-col-3-container { order: 2; }
    .footer-navigation ul.menu li a { font-size: 1em; }
    .footer-navigation.flex>* { flex: 1 0 50%; width: 50%; max-width: 50%; padding-right: 0; }
}
@media only screen and (max-width: 500px) {
    /* Teams */
    #section.about-mission ul.feature-list.flex li,
    .team-listing.flex>*,
    .board-members.flex>* { flex: 1 0 100%; width: 100%; max-width: 100%; margin: 5px auto 25px; padding: 0; }
    .board-members.flex>* { font-size: 1em; line-height: 1.4em; padding-right: 25px; }
    .board-members.flex>* strong { font-size:  1.2em; margin: 0 0 5px; display: block; }
}






