/*
Theme Name: upEND
Theme URI: http://www.drivendevelopment.com/
Description: Custom WordPress theme for upEND.
Author: <a href="http://designpositive.co" target="_blank">Design Positive</a>
Version: 1.0
*/

@import url(default.css);

/**
 * Defaults and Resets
 */
*,
*:before,
*:after {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}

html {font-size: 62.5%; -webkit-text-size-adjust: none;}

html, body {margin: 0; padding: 0; background: #fff;}

body {font-family: 'Libre Franklin', Arial, Verdana, Sans-Serif; font-size: 16px; line-height: 24px; color: #382E2C;}

form {margin: 0; padding: 0;}

img {border: 0; max-width: 100%; height: auto;}

td {vertical-align: top;}

p {margin: 0 0 30px 0;}
p:last-child {margin: 0;}

a {transition: 0.25s ease; color: #09806C;}
a:focus,
a:hover {background: #09806C; color: #fff;}

h2 {margin: 0 0 15px 0; font-size: 30px; line-height: 38px;}
* + h2 {margin-top: 50px;}
h3 {margin: 0 0 15px 0; font-size: 18px; line-height: 26px; color: #09806C;}
h3 a {text-decoration: none;}

/**
 * General
 */
.clearBoth, .clear {clear: both; height: 0px; font-size: 0; line-height: 0; display: block;}
.clearfix {zoom: 1;}
.clearfix:after {content: ""; display: block; height: 0; font-size: 0; line-height: 0; clear: both; visibility: hidden;}
.hidden {height: 1px; left: -10000px; overflow: hidden; position: absolute; top: auto; width: 1px;}
.screen-reader-text,
.visually-hidden {border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;}

a#skip,
a#skip:hover,
a#skip:visited {position: absolute; left: 0px; top: -500px; width: 1px; height: 1px; overflow: hidden;}
a#skip:active,
a#skip:focus {position: static; width: auto; height: auto;}

nav ul {margin: 0; padding: 0; list-style-type: none;}

/**
 * Layout
 */
#header > div {position: relative; z-index: 1010;}
#header .logo {position: absolute; top: 30px; left: 40px; display: block; background: none;}
#header .logo img {display: block;}
#header .toggle-menu {position: absolute; top: -4px; right: 0; background: none; border: none; padding: 0; margin: 0; z-index: 100000; display: none; width: 41px; height: 33px;}
#header .toggle-menu .close {display: none;}
#header .email {position: absolute; display: none; top: 19px; left: 20px;}
#header nav {position: absolute; top: 37px; right: 40px; font-size: 20px; line-height: 22px;}
#header nav li {margin-left: 30px; float: left;}
#header a {color: #fff; text-decoration: none; position: relative; background: none;}
#header a:before {position: absolute; content: ""; left: 0; right: 0; bottom: -4px; height: 2px; background: #fff; opacity: 0; transition: 0.5s ease;}
#header a:focus:before,
#header a:hover:before {opacity: 1;}
#header .donate-cta a {padding: 10px 20px; border-radius: 50px; background: #09806C; border: solid 2px #09806C;}
#header .donate-cta a:before {display: none;}
#header .donate-cta a:focus,
#header .donate-cta a:hover {background: #fff; color: #09806C;}

#menu .nav li.mobile-only {display: none;}

/*
.scrolled:not(.mobile-menu) #header {background: rgba(0,0,0,0.6);}
.scrolled #header > div {height: 70px;}
.scrolled #header .logo {top: 15px;}
.scrolled #header .toggle-menu {top: 18px;}

.hide-header:not(.mobile-menu) #header {top: -70px;}
*/

#main {overflow: hidden;}

#alert {background: #09806C; color: #fff; text-align: center; position: relative; font-size: 20px; line-height: 24px; display: none;}
#alert .section > div {padding: 20px 100px; max-width: 100%;}
#alert button {position: absolute; width: 26px; height: 32px; top: calc(50% - 15px); right: 40px; background: none; border: none; padding: 0; margin: 0; cursor: pointer; padding: 3px 0 5px 0; border-bottom: solid 2px transparent;}
#alert button:focus,
#alert button:hover {border-bottom-color: #fff;}
#alert a {color: #fff;}
#alert a:focus,
#alert a:hover {background: #fff; color: #09806C;}

#footer {background: #09806C; position: relative; font-size: 14px; line-height: 20px; color: #fff;}
#footer > div {padding-top: 20px; padding-bottom: 20px;}
#footer a {color: #fff; text-decoration: none;}
#footer a:focus,
#footer a:hover {background: none; text-decoration: underline;}
#footer ul {margin: 0; padding: 0; list-style-type: none; display: flex; flex-wrap: wrap;}
#footer li {margin-left: 20px;}
#footer .container {display: flex; flex-wrap: wrap; justify-content: space-between;}

.section > div {max-width: 1280px; margin: 0 auto; padding: 0 40px; position: relative;}
.section.gutter > div {padding-top: 120px; padding-bottom: 120px;}
.section.has-bg-image {background-size: cover; color: #fff; position: relative;}
.section.has-bg-image:before {position: absolute; content: ""; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5);}

.bg-green {background: #07806D;}
.bg-light-green {background: #E9F4F2;}
.bg-yellow {background: #f9f2d8;}
.bg-black {background: #382E2C;}
.bg-purple .generic-content {color: #fff;}
.bg-dark-green {background: #07806D;}
.bg-blue {background: #525A6C;}

/**
 * Miscellaneous
 */
sup {position: relative; font-size: 10px; line-height: 10px; top: -5px;}

a.underline-on-hover {position: relative; background: none;}
a.underline-on-hover:before {position: absolute; content: ""; left: 0; bottom: -2px; width: 100%; height: 2px; background: #fff; opacity: 0; transition: 0.25s ease}
a.underline-on-hover:focus:before,
a.underline-on-hover:hover:before {opacity: 1;}

.btn {-webkit-appearance: none; -webkit-border-radius: none; font-size: 16px; line-height: 20px; color: #fff; text-decoration: none; background: #09806C; border: solid 2px #09806C; font-weight: bold; display: inline-block; text-align: center; cursor: pointer; padding: 16px 30px; border-radius: 30px;}
.btn .fa,
.btn .fab {display: inline-block; vertical-align: middle; margin-right: 20px; font-size: 32px; line-height: 32px;}
.btn:focus,
.btn:hover {background: #fff; color: #09806C;}
.btn.white {background: none; border-color: #fff; color: #fff;}
.btn.white:focus,
.btn.white:hover {background: #fff; color: #09806C;}

.social-icons {-webkit-appearance: none; -webkit-border-radius: none; position: relative; font-size: 30px; line-height: 40px; color: #382e2c; text-decoration: none; background: transparent; border: transparent; font-weight: bold; display: inline-block; text-align: center; cursor: pointer; border-radius: 30px; margin: 0 30px;}
.social-icons:before {display: block; width: 100%; height: 2px; background: #07806d; content: ""; position: absolute; left: 0; bottom: -2px; opacity: 0; transition: 0.25s ease;}
.social-icons:focus,
.social-icons:hover {background: transparent; color: #07806d;}
.social-icons:focus:before,
.social-icons:hover:before {opacity: 1;}

.large-text {font-size: 25px; line-height: 30px;}

.uppercase {text-transform: uppercase;}

.green-copy {color: #09806C;}

.page-header {background: #09806C no-repeat center center; background-size: cover; font-size: 18px; line-height: 28px; color: #fff; position: relative;}
.page-header > div {min-height: 500px; display: flex; align-items: center; position: relative;}
.page-header h1 {margin: 0 0 10px 0; font-size: 18px; line-height: 28px; text-transform: uppercase;}
.page-header h2,
body.home .page-header h1 ,
.page-header .h2 {margin: 0 0 10px 0; font-size: 40px; line-height: 48px; text-transform: none;}
.page-header .content {max-width: 750px; padding: 100px 0;}
.page-header .date {font-size: 18px; line-height: 22px;}
.page-header.large > div {min-height: 100vh;}
.page-header.plain {text-shadow: 0 0 15px rgba(0,0,0,0.4);}
.page-header.plain h1 {margin: 0 0 10px 0; font-size: 40px; line-height: 48px; text-transform: none;}
.page-header.plain:before {display: none;}
.page-header.mask:before {position: absolute; content: ""; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5);}
body.home .page-header {font-size: 25px; line-height: 30px; font-weight: bold;}

.generic-content {max-width: 800px;}
.generic-content ul li + li {margin-top: 20px;}
.generic-content.center {margin-left: auto; margin-right: auto;}

.two-columns {overflow: hidden; max-width: 100%;}
.two-columns > div {margin: -50px; display: flex; flex-wrap: wrap;}
.two-columns > div > div {width: 50%; padding: 50px;}

.partners {font-size: 14px; line-height: 20px; overflow: hidden; margin: 40px 0; max-width: 950px;}
.partners:last-child {margin-bottom: 0;}
.partners > div {display: flex; flex-wrap: wrap; margin: 0 -50px -80px -50px;}
.partners > div > div {width: 50%; padding: 0 50px 80px 50px;}
.partners h3 {margin: 0; font-size: 14px; line-height: 24px;}
.partners .logo img {display: block; margin: 0 0 30px 0;}
.partners.x3 {max-width: 100%;}
.partners.x3 > div > div {width: 33.3333%;}

.actions {margin: 10px -20px 0 -20px;}
.actions .btn {min-width: 200px; margin: 20px;}
.actions:last-child {margin-bottom: -40px;}

.cta-module {text-align: center;}
.cta-module .content {max-width: 600px; margin: 0 auto 30px auto;}
.cta-module .social-media {margin: 0; padding: 20 20px; list-style-type: none; display: flex; justify-content: center;}
.cta-module .social-media li {padding: 20 20px;}
.cta-module .social-media .btn {border-radius: 5px;}

.tiles {margin: 60px 0;}
.tiles:first-child {margin-top: 0;}
.tiles:last-child {margin-bottom: 0;}
.tiles > div {display: flex; flex-wrap: wrap; margin: 0 -15px -60px -15px;}
.tiles > div > div {width: 33.3333%; padding: 0 15px 60px 15px;}
.tiles > div > div p:last-child a {font-weight: bold;}
.tiles > div > div p:last-child a:after {font-family: 'Font Awesome 5 Pro'; content: "\f105"; margin-left: 5px; font-weight: 300;}
.tiles p:not(:last-child) {margin: 0 0 10px 0;}
.tiles a {text-decoration: none;}
.tiles .thumb img {display: block; width: 100%; margin: 0 0 25px 0;}
.tiles.x4 {font-size: 14px; line-height: 20px;}
.tiles.x4 > div > div {width: 25%;}
.tiles.x4 h3 {margin: 0 0 10px 0; font-size: 16px; line-height: 24px;}
.tiles .footer {width: 100%; justify-content: center; padding-bottom: 0; text-align: center;}

.large-tiles {margin: 60px 0; color: #fff;}
.large-tiles:first-child {margin-top: 0;}
.large-tiles:last-child {margin-bottom: 0;}
.large-tiles > div {display: flex; flex-wrap: wrap; margin: 0 -20px -40px -20px; justify-content: center;}
.large-tiles > div > div {width: 33.3333%; padding: 0 20px 40px 20px; display: flex;}
.large-tiles > div > div > div {background: #09806C; cursor: pointer; width: 100%;}
.large-tiles > div > div > div:hover .thumb > div,
.large-tiles > div > div > div:focus-within .thumb > div {filter: grayscale(0%); transform: scale(1.1);}
.large-tiles > div > div > div:hover a,
.large-tiles > div > div > div:focus-within a {text-decoration: underline;}
.large-tiles h3 {margin: 0; font-size: 30px; line-height: 35px; font-weight: normal; color: inherit;}
.large-tiles h3 a {color: #fff; text-decoration: none;}
.large-tiles .thumb {padding-bottom: 100%; overflow: hidden; position: relative;}
.large-tiles .thumb > div {background: no-repeat center center; background-size: cover; filter: grayscale(100%); transition: 0.5s ease; position: absolute; top: 0; right: 0; bottom: 0; left: 0;}
.large-tiles .content {padding: 30px; min-height: 200px;}

.event-tiles {margin: 60px 0; color: #fff;}
.event-tiles:last-child {margin-bottom: 0;}
.event-tiles > div {display: flex; flex-wrap: wrap; margin: 0 -15px -60px -15px;}
.event-tiles > div > div {width: 50%; padding: 0 15px 60px 15px; display: flex;}
.event-tiles > div > div > div {background: #09806C; width: 100%;}
.event-tiles h3 {margin: 0 0 20px 0; font-size: 24px; line-height: 32px;}
.event-tiles a {color: #fff;}
.event-tiles a:focus,
.event-tiles a:hover {background: #fff; color: #09806C;}
.event-tiles .thumb {background: no-repeat center center; background-size: cover; padding-bottom: 43%;}
.event-tiles .thumb img {display: block; width: 100%;}
.event-tiles .content {padding: 30px;}
.event-tiles .meta {font-weight: bold;}
.event-tiles .excerpt {margin: 0 0 30px 0;}
.event-tiles .excerpt p {display: inline;}
.event-tiles .footer {width: 100%; text-align: center; justify-content: center; padding-bottom: 0;}

.contact-info {color: #fff;}
.contact-info > div {display: flex; flex-wrap: wrap;}
.contact-info > div > div {width: 33.3333%; padding: 0 30px; border-left: solid 1px #fff;}
.contact-info h3 {margin: 0 0 10px 0; font-size: 22px; line-height: 26px; color: #fff;}

.press-releases ul {margin: 0; padding: 0; list-style-type: none; font-weight: bold;}
.press-releases li + li {margin-top: 10px;}

.videos > div {display: flex; flex-wrap: wrap; margin: 60px -15px -60px -15px;}
.videos > div > div {width: 50%; padding: 0 15px 60px 15px;}
.videos h3 {margin: 0 0 10px 0; font-size: 22px; line-height: 32px; color: #382E2C;}
.videos .thumb img {display: block; margin: 0 0 30px 0;}

a.video {display: block; position: relative;}
a.video:before {position: absolute; content: ""; top: calc(50% - 30px); left: calc(50% - 30px); width: 60px; height: 60px; background: rgba(255,255,255,0.75); border-radius: 50%;}
a.video:after {position: absolute; content: ""; top: calc(50% - 30px); left: calc(50% - 30px); width: 60px; height: 60px; background: url(images/play.svg) no-repeat center center;}

.featured-image {float: right; max-width: 600px; margin: 0 -400px 20px 0; padding: 0 0 0 40px;}

.email-signup-form > div {display: flex; flex-wrap: wrap; justify-content: center; margin: 0 -6px -12px -6px; align-items: center;}
.email-signup-form > div > div {max-width: 280px; padding: 0 6px 12px 6px;}
.email-signup-form input {border: solid 1px #382E2C; padding: 10px; font-size: 16px; line-height: 24px;}
.email-signup-form .btn {border-radius: 0; padding: 11px 30px;}

.card-slider {font-size: 20px; line-height: 24px; color: #515A6C; margin: 40px 0 0 0; padding: 0 0 100px 0; position: relative; display: flex;}
.card-slider > .card {width: 400px; flex-shrink: 0;}
.card-slider.slick-initialized {display: block;}
.card-slider .slick-list {display: flex; overflow: visible;}
.card-slider .slick-track {display: flex;}
.card-slider .card {display: flex; padding: 0 10px;}
.card-slider .card > div {background: #fff; border-radius: 20px; padding: 35px 40px 90px 40px; position: relative;}
.card-slider .card .eyebrow {margin: 0 0 10px 0; font-size: 15px; text-transform: uppercase; font-weight: bold;}
.card-slider .card h3 {margin: 0 0 20px 0; font-size: 30px; line-height: 34px;}
.card-slider .card .date {margin: 0; text-transform: uppercase; position: absolute; font-size: 15px; left: 40px; bottom: 30px;}
.card-slider .slick-arrow {position: absolute; left: calc(50% - 20px); bottom: 0; background: none; border: none; margin: 0; padding: 0; color: #fff; font-size: 60px; line-height: 60px; transition: 0.25s ease;}
.card-slider .slick-arrow.slick-next {left: calc(50% + 20px);}
.card-slider .slick-arrow.slick-disabled {opacity: 0; cursor: default;}
.card-slider .slick-arrow:focus,
.card-slider .slick-arrow:hover {color: #09806c;}
.card-slider a img {border: solid 3px transparent;}
.card-slider a:focus img,
.card-slider a:hover img {border-color: #09806c;}

.featured-news-module {display: flex; flex-direction: row; flex-wrap: wrap; gap: 100px; margin-bottom: 100px;}
.featured-news-module > .featured-news-col {display: flex; flex-direction: column; align-items: flex-start; flex-basis: 100%; flex: 1;}
.featured-news-module .featured-news-image {position: relative; width: 100%; min-height: 100px;}
.featured-news-module .featured-category-overlay {position: absolute; top: 0; left: 0; padding: 10px; background-color: #0b3d36; color: white; text-transform: uppercase;}

.endup-survey-intro {margin: 50px auto 0 auto; max-width: 750px;}

/**
 * Front page
 */
.hero {background: url(images/hero-1.jpg) no-repeat center center; background-size: cover; text-shadow: 0 0 15px rgba(0,0,0,0.4); color: #fff; font-weight: bold; position: relative; font-size: 20px; line-height: 24px; background-attachment: fixed;}
.hero:before {position: absolute; content: ""; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.4);}
.hero > div {min-height: 100vh; display: flex; align-items: center; position: relative;}
.hero h2 {margin: 0 0 20px 0; font-size: 40px; line-height: 48px; font-weight: 600;}
.hero .content {max-width: 450px;}

.hero-1 .content {max-width: 550px;}

.hero-2 {background-image: url(images/hero-2.jpg);}
.hero-2 .container {display: flex; align-items: center; justify-content: space-between; width: 100%;}
.hero-2 .photos {padding: 62px 40px 0 0;}
.hero-2 .photos > div {position: relative;}
.hero-2 .photos img {display: block; position: relative;}
.hero-2 .photos img.placeholder {visibility: hidden;}
.hero-2 .photos img.left {position: absolute; top: 0; left: 0;}
.hero-2 .photos img.right {position: absolute; right: 0; bottom: 0;} /* left: 198px; top: -125px; */

.hero-3 {background-image: url(images/hero-3.jpg);}

.hero-4 {background-image: url(images/hero-4.jpg);}
.hero-4 > div {justify-content: flex-end;}

.support-banner {background: url(images/faces.jpg) no-repeat right top; background-size: cover; position: relative; color: #fff; font-weight: bold; font-size: 24px; line-height: 28px;}
.support-banner > div {min-height: 100vh; display: flex; align-items: center; padding-top: 60px; padding-bottom: 60px;}
.support-banner:before {position: absolute; content: ""; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.65);}
.support-banner h2 {margin: 0 0 20px 0; font-size: 56px; line-height: 60px; color: #fff; font-weight: bold; color: #fff;}
.support-banner a {color: #fff;}
.support-banner .container {display: flex; flex-wrap: wrap; justify-content: space-between; padding: 100px 0; position: relative; width: 100%;}
.support-banner .container > .photos {width: 45%;}
.support-banner .container > .content {width: 55%; padding: 0 0 0 80px;}
.support-banner .photos img {display: block; box-shadow: 0 0 10px 0 rgba(0,0,0,0.5);}
.support-banner .photos img:nth-child(2) {margin: 50px 0 0 100px;}
.support-banner .small {font-size: 14px; line-height: 18px; font-weight: 300;}

.support-form .gform_wrapper div.validation_error {background: #fff; color: #f00; border: none; padding: 10px; text-align: left;}
.support-form .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {width: 100% !important; max-width: 100% !important;}
.support-form .gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {background: none; border: none; padding: 0;}
.support-form .gform_wrapper .validation_message {background: #f00; color: #fff; padding: 5px;}
.support-form .gform_wrapper ul.gform_fields li.gfield {padding: 0;}
.support-form .gform_wrapper .top_label input.medium,
.support-form .gform_wrapper .top_label select.medium,
.support-form .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]) {width: 100%; margin: 0; padding: 15px; font-size: 18px; line-height: 22px; border: none !important;}
.support-form .gform_wrapper .gform_footer input.button,
.support-form .gform_wrapper .gform_footer input[type="submit"],
.support-form .gform_wrapper .gform_footer input[type="image"] {width: 100%; font-size: 24px; line-height: 28px; border-radius: 40px; margin: 0; text-transform: uppercase; transition: 0.25s ease;}

.share-banner {display: none;}
.share-banner > div {min-height: 100vh; display: flex; align-items: center; padding-top: 60px; padding-bottom: 60px; color: #fff;}
.share-banner > div > div {width: 100%;}
.share-banner h2 {margin: 0 auto 60px auto; font-size: 40px; line-height: 44px; color: #fff; font-weight: bold; color: #fff; max-width: 700px; text-align: center;}

.share-callouts {display: flex; flex-wrap: wrap; margin: 0 -20px -40px -20px; text-align: center;}
.share-callouts > div {width: 33.3333%; padding: 0 20px 40px 20px;}
.share-callouts .action {position: relative; padding-top: 60px;}
.share-callouts .action:before {position: absolute; font-family: 'Font Awesome 5 Brands'; content: "\f09a"; top: 0; left: 0; right: 0; text-align: center; font-size: 40px; line-height: 40px;}
.share-callouts img {box-shadow: 2px 2px 30px 0 rgba(0,0,0,0.5); border-radius: 10px; display: block; margin: 0 auto;}
.share-callouts .twitter .action:before {content: "\f099";}
.share-callouts .instagram .action:before {content: "\f16d";}

body.home .generic-content h2 {margin: 0 0 20px 0; font-size: 40px; line-height: 48px;}
body.home .bg-white .generic-content h2 {color: #09806C;}

/**
 * Forms
 */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
input[type="url"],
input[type="date"],
input[type="datetime-local"],
input[type="color"],
select,
textarea {font-family: 'Libre Franklin', Arial, Verdana, Sans-Serif; font-size: 16px; line-height: 24px; color: #382E2C; width: 100%; padding: 10px;}

input[type="submit"] {cursor: pointer; border-radius: 0;}

button {cursor: pointer;}

ul.gform_fields {margin: 0; padding: 0; list-style-type: none;}

.gform_footer {margin: 20px 0 0 0;}

.gform_validation_container {border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;}

.gform_wrapper .contact-form .gfield_label {border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;}
.gform_wrapper .contact-form .top_label input.medium,
.gform_wrapper .contact-form .top_label select.medium {width: 100%; padding: 10px !important; border: solid 1px #382E2C;}
.gform_wrapper .contact-form ul.gform_fields li.gfield {padding-right: 0 !important;}
.gform_wrapper .contact-form .btn {width: 100% !important;}

.gform_wrapper .hide-label .gfield_label {border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;}

.gform_wrapper .general-form {max-width: 540px; margin: 0 auto;}
.gform_wrapper .general-form input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.gform_wrapper .general-form select,
.gform_wrapper .general-form textarea {padding: 10px; border: solid 1px #382E2C; width: 100%; font-size: 16px;}
.gform_wrapper .general-form input.button {width: 100%;}
.gform_wrapper .general-form fieldset {padding: 0; border: none; margin: 30px 0;}
.gform_wrapper .general-form legend {font-weight: normal;}
.gform_wrapper .general-form .gfield:not(fieldset) {margin: 0 0 20px 0;}
.gform_wrapper .general-form .ginput_container_radio {margin: 10px 0 0 0;}
.gform_wrapper .general-form .ginput_container_radio [class^="gchoice gchoice"] {display: flex; align-items: flex-start; margin: 10px 0 0 20px;}
.gform_wrapper .general-form .ginput_container_radio input {margin: 5px 0 0 0;}
.gform_wrapper .general-form .ginput_container_radio label {padding: 0 0 0 10px;}
.gform_wrapper .general-form .ginput_container_checkbox [class^="gchoice gchoice"] {display: flex; align-items: flex-start; margin: 10px 0 0 20px;}
.gform_wrapper .general-form .ginput_container_checkbox input {margin: 5px 0 0 0;}
.gform_wrapper .general-form .ginput_container_checkbox label {padding: 0 0 0 10px;}
.gform_wrapper .general-form .gfield_label {font-weight: normal;}

#gform_4 #field_4_11 > legend {border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;}
#gform_4 #field_4_12 {margin: 0 0 -30px 0;}

@media only screen and (max-width: 1200px) {

    .hero-2 .photos img.placeholder {visibility: visible;}
    .hero-2 .photos img.left,
    .hero-2 .photos img.right {display: none;}

}

@media only screen and (max-width: 1150px) {
}

@media only screen and (max-width: 1100px) {
}

@media only screen and (max-width: 1050px) {

    .contact-info > div > div {width: 100%; padding: 0; border: none;}
    .contact-info > div > div + div {margin-top: 30px; padding-top: 30px; border-top: solid 1px #fff;}

    .large-tiles > div > div {width: 50%;}

}

@media only screen and (max-width: 1000px) {
}

@media only screen and (max-width: 950px) {

    #header .toggle-menu {display: block;}

    #menu {position: fixed; top: -100vh; right: 0; bottom: 0; left: 0; overflow-y: scroll; -webkit-overflow-scrolling: touch; background: #09806C; z-index: 1000; transition: 0.5s ease; opacity: 0; pointer-events: none;}
    #menu ul {margin: 0; padding: 0; list-style-type: none;}
    #menu a:before {display: none;}
    #menu .nav {font-size: 40px; line-height: 48px; font-weight: bold;}
    #menu .nav li {float: none; margin: 0;}
    #menu .nav li + li {margin-top: 20px;}
    #menu .nav li.mobile-only {display: block;}
    #menu .nav a {color: #fff; text-decoration: none;}
    #menu .nav a:focus,
    #menu .nav a:hover {text-decoration: underline;}
    #menu .nav li.current-menu-item > a {color: #000;}
    #menu .content {display: flex; align-items: center; min-height: 100vh; text-align: center;}
    #menu .content > div {width: 100%;}
    #menu .close-menu {position: absolute; top: 20px; right: 20px; background: none; border: none; padding: 0; margin: 0;}

    .mobile-menu {overflow: hidden;}
    .mobile-menu #menu {opacity: 1; top: 0; pointer-events: all;}
    .mobile-menu #header .toggle-menu {position: fixed; top: 30px; right: 40px;}
    .mobile-menu #header .toggle-menu .open {display: none;}
    .mobile-menu #header .toggle-menu .close {display: block;}

    .tiles > div > div,
    .tiles.x4 > div > div {width: 50%;}

    .partners.x3 > div > div {width: 50%;}

    .support-banner .container {display: block;}
    .support-banner .container > .photos {width: 100%; max-width: 400px; margin: 0 auto 40px auto;}
    .support-banner .container > .content {width: 100%; padding: 0;}

    .featured-image {margin-right: -200px;}

}

@media only screen and (max-width: 900px) {
}

@media only screen and (max-width: 850px) {

    .event-tiles > div > div {width: 100%;}

    .two-columns > div > div {width: 100%;}

    .featured-news-module {flex-direction: column; gap: 30px; margin-bottom: 90px;}

    .hero h2,
    .support-banner h2 {font-size: 30px; line-height: 38px;}

    .hero-2 .container {display: block;}
    .hero-2 .photos {padding: 0;}
    .hero-2 .photos img.placeholder {width: 400px; margin: 0 auto 40px auto;}
}

@media only screen and (max-width: 800px) {
}

@media only screen and (max-width: 750px) {

    #alert .section > div {padding-left: 40px; text-align: left;}

    #footer .container {display: block;}
    #footer li:first-child {margin-left: 0;}

    .btn {padding: 9px 20px;}
    .btn .fa,
    .btn .fab {font-size: 30px; line-height: 20px; margin-right: 10px;}

    .actions .btn {min-width: 150px;}

    .cta-module .social-media li {padding: 30 30px;}

    .videos > div > div {width: 100%;}

    .featured-image {margin: 0 0 20px 0; max-width: 100%; padding: 0; float: none;}
    .featured-image img {width: 100%;}

}

@media only screen and (max-width: 700px) {

    .large-tiles > div > div {width: 100%;}

}

@media only screen and (max-width: 650px) {
}

@media only screen and (max-width: 600px) {

    #mobile-menu .nav {font-size: 24px; line-height: 34px; padding-top: 80px;}
    #mobile-menu .nav li + li {margin-top: 5px;}

    .tiles > div > div,
    .tiles.x4 > div > div {width: 100%;}

    .partners.x3 > div > div {width: 100%;}

    .hero {background-attachment: scroll;}

    .partners > div > div {width: 100%;}

    .email-signup-form > div > div {width: 100%; max-width: 100%;}
    .email-signup-form input {width: 100%;}
    .email-signup-form .btn {width: 100%;}

}

@media only screen and (max-width: 550px) {

    .cta-module .social-media {display: block;}
    .cta-module .social-media li {padding: 0;}
    .cta-module .social-media li + li {margin-top: 20px;}
    .cta-module .social-media .btn {width: 100%; max-width: 200px;}
}

@media only screen and (max-width: 500px) {
}

@media only screen and (max-width: 450px) {
}

@media only screen and (max-width: 400px) {
}

@media only screen and (max-width: 350px) {
}

@media only screen and (max-width: 300px) {
}


@media only screen and (max-height: 600px) {

}

.password-protect-form {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh; /* Full viewport height */
    text-align: center; /* Center text inside the div */
}

.password-protect-form form {
    margin: 0; /* Reset margin for the form */
}