/*
Theme Name:     Twentytwentyone-child
Theme URI:      
Description:    Twentytwentyone child theme.
Author:         Me
Author URI:     
Template:       twentytwentyone
Version:        0.1.0
*/

:root {
    font-size: .9rem;
    --global--color-primary: #f5faf4;
    --global--color-background: #2A3228;
    --content--color--link: #d2f1ff;
    --button--color-text: #fff;
    --entry-header--color-link: #d2f1ff;
    --wp--style--color--link: #d2f1ff;
    --global--font-size-page-title: 4rem;
}

h2 {
    color: #96d8f6;
}

a {
    cursor: pointer;
}

#page .wp-block-button a.wp-element-button {
    background-color: #5B6936;
    border-color: #5B6936;
}

#page .wp-block-button a.wp-element-button:hover {
    background-color: #515e30 !important;
    border-color: #515e30 !important;
}

h1, h2 {
    font-family: caudex, serif !important;
}

/*
* Responsive Styling
*/

@media only screen and (min-width: 900px) {
    :root {
        --responsive--aligndefault-width: min(calc(100vw - 8 * var(--global--spacing-horizontal)), 900px);
    }

    .home .ugb-inner-block h1.ugb-block-title {
        font-size: 1.8em;
    }
}

.home .ugb-block-title {
    font-size: 2.4em;
}

/*
* Header
*/

@media only screen and (min-width: 482px) {
    .site-logo .custom-logo {
        max-width: 500px;
    }

    .site-header {
        padding-top: 10px;
        padding-bottom: 10px !important;
        background-color: black;
        max-width: 100%;
        row-gap: 0px;
        margin-bottom: 15px;
    }
}


/* mega menu */

@media only screen and (min-width: 482px) and (max-width: 775px) {
    .site-logo .custom-logo {
        max-width: 485px;
    }
}

@media only screen and (min-width: 482px) and (max-width: 555px) {
    #menu-item-1894 {
        display: none;
    }
}

@media only screen and (max-width: 600px) {
    .site-logo .custom-logo {
        max-width: 300px;
    }

    button.primary-mobile-menu:focus {
        border: none;
    }

    .xxxsite-header {
        top: -62px;
        position: sticky;
        background-color: black;
        opacity: 1;
        width: 100%;
        margin-right: 0;
        margin-left: 0;
        max-width: 100%;
    }

    div.menu-button-container button.button:focus {
        outline: none;
    }

    home.page #page h1 {
        font-size: 2em !important;
    }
}

.primary-navigation-open .menu-button-container {
    padding-top: 0px;
}

article>header.entry-header>h1.entry-title {
    text-align: center;
}

article.type-conference>header.entry-header, article.type-page>header.entry-header {
    display: none;
}

/*
* Events
*/

.b4c-search-result div.event-date {
    font-size: 20px;
    margin-bottom: 5px;
    font-weight: bold;
}

article.type-event>div>div.event-date {
    font-weight: bold;
}

#main article .type-event .b4c-event img {
    max-width: 200px;
    padding-top: 1.3em;
}

#main article .type-event .b4c-event hr {
    padding-top: 2em;
    width: 90%;
}

#main article p.meetup-link {
    border: 1px solid white;
    display: block;
    padding: 20px;
}

div.type-event>p>strong>em {
    color: #96D8F6;
    font-family: 'caudex, serif';
    font-size: larger;
}

/*
* Custom Palette Color
* from - https://developer.wordpress.org/block-editor/developers/themes/theme-support/
*/

.has-seal-brown-color {
    color: #662800;
}

.has-seal-brown-background-color {
    background-color: #662800;
}

.has-fulvous-color {
    color: #dd8409;
}

.has-fulvous-background-color {
    background-color: #dd8409;
}

.has-pale-silver-color {
    color: #d2caca;
}

.has-pale-silver-background-color {
    background-color: #d2caca;
}

.has-blue-ryb-color {
    color: #3d3df3;
}

.has-blue-ryb-background-color {
    background-color: #3d3df3;
}

.has-cornflower-blue-color {
    color: #7785f5;
}

.has-cornflower-blue-background-color {
    background-color: #7785f5;
}

.has-resolution-blue-color {
    color: #182691;
}

.has-resolution-blue-background-color {
    background-color: #182691;
}

.has-lime-green-color {
    color: #12cc3c;
}

.has-lime-green-background-color {
    background-color: #12cc3c;
}

.has-international-orange-engineering-color {
    color: #bd1212;
}

.has-international-orange-engineering-background-color {
    background-color: #bd1212;
}

.has-fulvous-light-color {
    color: #e68715;
}

.has-fulvous-light-background-color {
    background-color: #e68715;
}

.has-baby-blue-color {
    color: #96d8f6;
}

.has-baby-blue-background-color {
    background-color: #96d8f6;
}

.has-black-color {
    color: #000;
}

.has-black-background-color {
    background-color: #000;
}

.has-white-color {
    color: #fff;
}

.has-white-background-color {
    background-color: #fff;
}

.has-phlox-color {
    color: #D63AF9;
}

.has-phlox-background-color {
    background-color: #D63AF9;
}

.has-light-cyan-color {
    color: #D3E8E9;
}

.has-light-cyan-background-color {
    background-color: #D3E8E9;
}

.has-dark-moss-color {
    color: #5B6936;
}

.has-dark-moss-background-color {
    background-color: #5B6936;
}

.has-citrine-color {
    color: #EACE31;
}

.has-citrine-background-color {
    background-color: #EACE31;
}

.has-lilac-color {
    color: #CD96BA;
}

.has-lilac-background-color {
    background-color: #CD96BA;
}

.has-dark-cyan-color {
    color: #588A8A;
}

.has-dark-cyan-background-color {
    background-color: #588A8A;
}

.has-black-olive-color {
    color: #2A3228;
}

.has-black-olive-background-color {
    background-color: #2A3228;
}

.has-steelblue-color {
    color: #4682B4;
}

.has-steelblue-background-color {
    background-color: #4682B4;
}

.has-doger-blue-color {
    color: #319afa;
}

.has-doger-blue-background-color {
    background-color: #319afa;
}

/*
* Menu Styles 
*
*/

/* get rid of the plus signs for submenu*/

.primary-navigation>div>.menu-wrapper .sub-menu-toggle {
    display: none;
}

#content main .type-page .entry-content .ugb-inner-block {
    z-index: auto;
}

#content main .type-page .entry-content .what-you-do .ugb-inner-block {
    z-index: 2;
}

@media only screen and (max-width: 1070px) {
    .primary-navigation a {
        font-size: var(--primary-nav--font-size-sub-menu-mobile);
    }
}

@media only screen and (max-width: 952px) {
    .primary-navigation {
        font-size: smaller;
    }
}

@media only screen and (max-width: 826px) {
    .primary-navigation {
        font-size: small;
    }
}

/*
* hamburger menu
@media only screen and (max-width: 950px) {
    .menu-button-container {
        display: flex;
    }
    .primary-navigation .primary-menu-container {
        visibility: hidden;
    }
	.primary-navigation-open .primary-navigation {
		width: 100%;
		position: fixed;
		z-index: 2;
    }

	.primary-navigation-open .has-logo.has-title-and-tagline .primary-navigation > .primary-menu-container {
		transform: translateX(0) translateY(0);
	}

	.primary-navigation > .primary-menu-container {
		height: 100vh;
		z-index: 499;
		overflow-x: hidden;
		overflow-y: auto;
		border: 2px solid transparent;
	}

	.has-logo.has-title-and-tagline .primary-navigation > .primary-menu-container {
		position: fixed;
		transform: translateY(0) translateX(100%);
	}

	.primary-navigation > .primary-menu-container:focus {
		border: 2px solid var(--global--color-primary);
	}

	.primary-navigation > div > .menu-wrapper {
		padding-bottom: 100px;
	}

	.primary-navigation > div > .menu-wrapper ul {
		padding-left: 0;
	}

	.primary-navigation > div > .menu-wrapper .sub-menu-toggle {
		display: none;
	}
	.primary-navigation .sub-menu .menu-item:last-child() {
		margin-bottom: 0;
	}

}

*/

/*
* Search Results
*/

/* hide top of page */

.search-results #masthead .site-branding {
    display: none;
}

.search-results #main {
    padding-top: 0px;
}

.search-results a.return-home {
    font-size: small;
    padding-left: 1em;
}

.search-results .b4c-search-form {
    margin-top: 10px;
}

.b4c-search-results {
    column-count: 3;
    -webkit-column-count: 3;
    column-gap: 0;
    -webkit-column-gap: 0;
    margin-top: 3vh;
}

.b4c-search-result {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    padding: 8px;
}

div.b4c-search-result a {
    text-decoration: none;
}

#main div.b4c-search-result a:focus {
    color: white;
}

div.b4c-search-result a:active {
    color: #96d8f6;
}

.b4c-search-result img {
    width: 100%;
    max-height: 350px;
    margin: auto;
    object-fit: contain;
}

.b4c-search-result>div {
    padding: 10px;
    border-radius: 10px;
    background-color: #96d8f63f;
}

.b4c-search-result h2 {
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 1vh;
    font-family: "Open Sans";
}

.b4c-search-result .the-excerpt,
.b4c-search-result .excerpt_part {
    line-height: 140%;
    font-size: smaller;
    overflow-wrap: break-word;
}

.b4c-search-result .dashicons {
    float: right;
    margin-top: 5px;
    margin-left: 5px;
}

.b4c-search-result .post-type {
    margin-bottom: 3px;
    width: 100%;
    text-align: right;
}

/*
* Search Form
*/

.b4c-search-form {
    margin-bottom: 1vh;
}

.tag-search {
    padding-top: 10px;
    width: 100%;
    max-width: 650px;
    margin: 0 auto;
    text-align: center;
    padding-bottom: 15px;
}

.tag-search-wrapper {
    width: 100%;
}

.b4c-search-form .search-form {
    max-width: 50em;
}

.b4c-search-form .tag-select-container {
    padding-top: 20px;
}

.b4c-search-result-count,
.b4c-search-result-restriction {
    margin-top: 1vh;
    margin-bottom: 0;
    width: 100%;
}

.b4c-search-form #tag-select {
    padding-left: 10px;
    padding-right: 10px;
}

#page main .b4c-search-form .search-field {
    padding-left: 10px;
    margin-right: 0px;
    padding-right: 34px;
}

form #search-form-1::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

#page main .b4c-search-form .reset-button {
    font-size: xx-large;
    font-family: 'Open Sans';
    height: 45px;
    background-color: rgb(230 230 230);
    position: relative;
    border: none;
    right: 36px;
    top: 16px;
    margin-right: -26px;
    padding: 1px 6px;
}

#page main .b4c-search-form .search-submit {
    border: 0px solid white;
    margin-right: 0px;
    background-color: var(--button--color-background);
    color: var(--global--color-white-90);
}

.b4c-search-form .search-submit:active {
    background-color: var(--global--color-primary);
    color: var(--button--color-background);
    outline: none;
}

.b4c-search-form .search-submit {
    color: var(--global--color-primary);
    margin-top: calc(var(--global--spacing-vertical) / 3);
    margin-left: 0px;
}

.b4c-search-form .search-submit:hover {
    color: var(--global--color-primary);
    background-color: var(--button--color-background);
    outline: none;
}

.b4c-search-form .search-submit:hover, .b4c-search-result>div:hover, .b4c-search-form .tag-search .tag-link:hover {
    box-shadow: 0px 0px 6px 3px #96d8f6;
}

.b4c-search-form #tag-select:focus, .b4c-search-form input[type="search"]:focus {
    outline: none;
    box-shadow: 0px 0px 6px 4px #96d8f6;
}

.b4c-search-form label {
    text-align: right;
    padding-right: 5px;
}

#page main .b4c-search-form .tag-search .tag-link, #page main .b4c-search-form .tag-search .tag-link:focus {
    border: 0px solid white;
    border-radius: 25px;
    padding: 0.1em 0.5em 0.3em;
    margin-right: 10px;
    margin-top: 10px;
    display: inline-block;
    width: fit-content;
    transition: 10ms;
    background-color: var(--button--color-background);
}

#page main .b4c-search-form .tag-search .tag-link.s-term {
    border: 0px solid white;
    color: var(--global--color-background);
    background-color: var(--global--color-white-90);
}

.b4c-search-result label {
    color: #404040;
    display: block;
}

.page-id-225129 .b4c-search-form .search-the-site-image, #post-225129>div>div {
    display: none;
}

.search-the-site-instructions {
    font-size: .9em;
    margin-top: 5px;
    margin-bottom: 0px;
}

.search-the-site-instructions p {
    margin-bottom: 3px;
}

.search .search-the-site-image {
    display: none;
}

/*
* Search Landing Page
*/

.post-225129 .entry-header, .post-225129 .entry-content {
    display: none;
}

#post-225129>div>figure, #post-225129>div {
    margin-top: 0;
}

#post-225129, #post-225129>div>figure {
    margin-bottom: 1vh;
}

.page-id-225129 .b4c-search-form {
    margin-top: 1vh;
}

@media only screen and (max-width: 1180px) {
    .b4c-search-results {
        column-count: 2;
        -webkit-column-count: 2;
        column-gap: 0;
        -webkit-column-gap: 0;
    }
}

@media only screen and (max-width: 940px) {
    .b4c-search-results {
        column-count: 1;
        -webkit-column-count: 1;
        column-gap: 0;
        -webkit-column-gap: 0;
    }
}

/*
* posts
*/

/* blog and post archives */

.blog .entry-title a, .archive .entry-title a {
    text-decoration: none;
    color: #96D8F6;
    background-color: transparent;
    text-underline-offset: 0;
    line-height: 1;
}

.blog .entry-title a:hover, .archive .entry-title a:hover {
    color: var(--entry-header--color-link);
    background-color: transparent;
}

.blog .entry-title a:active, .blog .entry-title a:focus, .archive .entry-title a:active, .archive .entry-title a:focus {
    color: #96D8F6 !important;
    background-color: transparent !important;
}

.blog #main article header h2.entry-title {
    text-align: center;
    font-family: "caudex, serif";
}

.blog #main article header h2.entry-title a {
    font-family: "caudex, serif";
}

#main {
    padding-top: 0px;
}

.archive .post-thumbnail {
    max-width: 400px;
}

.archive .archive-note {
    padding-top: var(--global--spacing-vertical);
    font-style: italic;
}

/*
* posts and pages
*/

.singular .entry-header {
    border-bottom: none;
    padding-bottom: calc(2 * var(--global--spacing-vertical));
    margin-bottom: 0;
}

.single #content h1.entry-title {
    font-family: 'caudex, serif';
    line-height: 1;
    color: #96D8F6;
    padding-top: 20px;
    padding-bottom: 20px;
}

.archive h2.entry-title a {
    font-family: "caudex, serif";
}

/*
* link colors
*/

.wp-block-ugb-text a, .entry-content a {
    color: #d2f1ff;
}

#main .type-article .entry-content a:focus {
    color: #96d8f6;
}

.entry-content h2.ugb-text__title a {
    color: inherit;
}

.wp-block-ugb-text a:active {
    background-color: rgb(55, 55, 55);
    background: rgb(55, 55, 55);
}

/*
* email registration form
*/

.email-registration-form .field label {
    display: inline-block;
    width: 115px;
}

.email-registration-form label.error {
    color: #900;
    display: inline-block;
    padding: 0 10px;
}

.email-registration-form .field {
    padding: 4px 0;
}

.email-registration-form .consent {
    padding-bottom: 4px;
}

.email-registration-form .field .required-star {
    color: #aa0000;
    display: inline-block;
    margin-left: 5px;
}

.email-registration-form .field .checkboxes {
    max-width: 275px;
    border: 1px solid #a9a9a9;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.email-registration-form .field .checkbox {
    display: block;
    position: relative;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: 30px;
    line-height: 26px;
    padding: 2px 28px 2px 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    color: #404040;
    overflow: hidden;
    text-decoration: none;
}

.email-registration-form .field .checkbox input {
    opacity: 0.01;
    position: absolute;
    left: -50px;
    z-index: -5;
}

.email-registration-form .field .checkbox:last-child {
    border-bottom: none;
}

.email-registration-form .field .checkbox.selected {
    background: rgb(50, 142, 253);
    color: #fff;
}

.email-registration-form .field .checkbox.selected:before {
    color: #fff;
    line-height: 30px;
    position: absolute;
    right: 10px;
}

.email-registration-form .field input {
    padding: 4px;
    width: 215px;
}

.email-registration-form .errors {
    border: 1px solid #900;
    color: #900;
    padding: 10px;
}

.email-registration-form .hidden {
    display: none;
}

.btn-group .btn-submit-email {
    padding: 4px 10px;
    background: var(--global--color-white-90);
}

#email-registration-form>div.section.contact>h3 {
    display: none;
}

/*
* Widget Area
*/

.widget-area {
    margin-top: calc(1 * var(--global--spacing-vertical));
}

section.widget_custom_html>h2.widget-title {
    display: none;
}

.widget-title {
    font-weight: 400;
    padding-bottom: 10px;
}

.widget-area .search-field {
    padding-left: 10px;
    padding-right: 10px;
    /* border-radius: 23px; */
}

.widget_search>.search-form .search-field {
    max-width: 225px;
    /* margin-right: 5px; */
}

.widget-area .search-form label {
    display: none;
}

.widget-area #search-form-2::-webkit-search-cancel-button {
    display: block;
}

.btn-group input.btn-submit-email, .widget_search>form.search-form input.search-submit {
    /* border-radius: 23px; */
    color: var(--global--color-primary);
    background-color: var(--button--color-background);
    border: 0px solid white;
    padding: var(--button--padding-vertical) var(--button--padding-horizontal);
}

.btn-group input.btn-submit-email:active, .widget_search>form.search-form input.search-submit:active {
    background-color: var(--global--color-primary);
    color: var(--button--color-background);
    outline: none;
}

.btn-group input.btn-submit-email:hover, .widget_search>form.search-form input.search-submit:hover {
    color: var(--global--color-primary);
    background-color: var(--button--color-background);
    box-shadow: 0px 0px 6px 3px #d2f1ff;
    outline: none;
}

.widget-area input[type="search"]:focus {
    outline: none;
    box-shadow: 0px 0px 6px 4px #96d8f6;
}

.widget-area .email-registration-form div.consent {
    display: none;
}

.widget-area div.section.captcha {
    margin-top: 4vh;
}

div.footer-social-icons img {
    max-width: 40px;
    padding-left: 5px;
    display: inline-block;
}

#footer-appeal h3 {
    display: none;
}

#footer-appeal .textwidget>div {
    padding-bottom: 0px;
}

#footer-appeal .textwidget>div>div>div {
    padding-bottom: 70px;
    border-bottom: 3px solid var(--global--color-border);
}

#footer-appeal .textwidget p {
    font-size: var(--footer--font-size);
    text-align: left;
}

#footer-appeal .textwidget>div>div>div>div.ugb-button-container {
    padding-top: 30px;
    padding-bottom: 30px;
}

hr.footer {
    border-top: 3px solid white;
    margin-top: 35px;
}

/* 
* Newsletter Signup Section
*/

.newsletter-signup .email-registration-form h3, .newsletter-signup .email-registration-form div.consent {
    display: none;
}

.newsletter-signup .email-registration-form .field label {
    display: block;
    color: white;
}

.newsletter-signup .email-registration-form .field.text {
    margin-right: 20px;
}

.newsletter-signup .email-registration-form .field input {
    margin-left: 0px;
    margin-bottom: 15px;
    margin-right: 15px;
    border: 0px;
    line-height: 2;
    background-color: white;
}

.newsletter-signup .email-registration-form .field.email input {
    max-width: 100%;
    max-width: 400px;
}

.newsletter-signup .email-registration-form .captcha, .newsletter-signup .email-registration-form .btn-group, .newsletter-signup .email-registration-form .field {
    max-width: 200px;
    margin-right: 10px;
    display: block;
    float: left;
}

.email-registration-form .btn-group {
    padding-bottom: 10px;
}

.newsletter-signup .email-registration-form .field.email {
    max-width: 250px;
}

.newsletter-signup .email-registration-form .captcha {
    max-width: fit-content;
}

.newsletter-signup h1 {
    margin-top: 30px !important;
}

.newsletter-signup .fb_iframe_widget span {
    vertical-align: top !important;
}

.signup-hide.hidden {
    display: none;
}

#email-registration-form-container div.social-media-buttons #facebookShareOnly>span {
    height: 28px !important;
}

#page #content button.button {
    color: var(--global--color-primary);
}

.page-template-custom-page-with-title #page #content article.type-page>header.entry-header {
    display: block;
}

#post-5295 h2 {
    font-size: 1.8em;
    color: #96D8F6;
}

/*
* Compendium Articles
*/

article.type-article h1.entry-title {
    display: block;
}

article.type-article blockquote {
    padding-left: 3em;
}

blockquote:before {
    display: none;
}

article.type-article div.article_biblio {
    border-top: solid 1px;
    padding-top: 2vh;
}

.compendium-issue h2 {
    font-size: larger;
}

.compendium-issue {
    margin-bottom: 1em;
}

.compendium-bold {
    font-weight: 700;
}

.compendium-italic {
    font-style: italic;
}

.compendium-sub {
    vertical-align: sub;
}

.compendium-underline {
    font-size: larger;
}

.compendium-super {
    font-size: larger;
}

/*
    * Home Page
    */

.home-cover-text {
    text-shadow: 5px 5px 5px black;
}

.home #page .wp-block-ugb-card {
    padding-top: 35px;
    padding-bottom: 35px;
}

@media only screen and (max-width: 1320px) {
    .newsletter-signup .email-registration-form .field {
        display: contents;
    }

    .newsletter-signup .email-registration-form .field #email-address {
        margin-bottom: 2em;
    }
}

@media only screen and (max-width: 400px) {
    .mexico-feature h1.ugb-feature__title {
        font-size: 2.3em !important;
    }

    .ugb-card.ugb-card--v2 .ugb-card__content {
        padding: 45px 9px;
    }
}

.home #page #announcements, .home #page #events, .home #page #recent-posts {
    padding-top: 90px !important;
    padding-bottom: 0px;
}

.home .what-we-do-top.wp-block-ugb-card {
    padding-bottom: 35px !important;
}

.home .what-we-do-bottom.wp-block-ugb-card {
    padding-top: 35px !important;
}

.home .what-you-do .ugb-card__image {
    height: 53vw;
    max-height: 390px;
}

@media only screen and (max-width: 400px) {
    .home .what-you-do .ugb-card__content {
        padding-top: 10px;
    }
}

.home .what-you-do .ugb-card__content {
    padding-top: 35px;
}

@media only screen and (max-width: 777px) {
    .home .what-you-do .ugb-card__content {
        padding-top: 10px;
    }
}

.home #page .read-earth-story {
    padding-top: 0px;
    padding-bottom: 0px;
}

.home #page .transformation-in-mexico video {
    width: 100%;
    max-width: 630px;
    vertical-align: text-top;
    margin-bottom: 0;
}

.home #page .transformation-in-mexico h1 {
    font-size: 2.5em;
    color: #22b51b;
    text-align: right;
}

.home #page .transformation-in-mexico p {
    display: block;
    text-align: right;
}

.home #page .transformation-in-mexico a.video-credit {
    font-size: .8em;
}

.home #page #content div.mexico-top-sep .ugb-block-content div.ugb-separator__svg-wrapper {
    height: 81px !important;
    transform: scale(-1, -1);
    margin-bottom: 80px;
}

.home #page #content div.mexico-bottom-sep .ugb-block-content div.ugb-separator__svg-wrapper {
    height: 81px !important;
    margin-top: 80px;
}

@media only screen and (max-width: 1090px) {
    .home #page .transformation-in-mexico .wp-block-column {
        font-size: smaller;
    }

    .page-id-698 .ugb-feature .ugb-feature__item, .page-id-201 .ugb-feature .ugb-feature__item {
        grid-template-columns: 1fr !important;
    }

    .page-id-201 .ugb-feature .ugb-feature__item div img.ugb-feature__image {
        max-width: 400px;
    }
}

@media only screen and (max-width: 910px) {
    .home #page .transformation-in-mexico .wp-block-column {
        flex-basis: 100% !important;
        padding-bottom: 25px;
    }

    .home #page .transformation-in-mexico h1, .home #page .transformation-in-mexico p {
        text-align: left;
    }
}

@media only screen and (min-width: 1480px) {
    .home #page .read-earth-story {
        padding-top: 25px;
    }
}

.home #page .out-of-sunlight .wp-block-cover__inner-container {
    margin-top: 0px;
}

.home #page .out-of-sunlight .wp-block-cover {
    padding-top: 0px;
}

.home #page p.see-all {
    margin-bottom: 80px;
}

.home #page .what-we-do-top div.ugb-card__content, .home #page .what-we-do-bottom div.ugb-card__content {
    padding-right: 2px;
    padding-left: 2px;
}

.home #page .ugb-blog-posts.ugb-blog-posts--v2 .ugb-blog-posts__featured-image img {
    max-height: 350px;
}

.home #page .ugb-blog-posts__excerpt p,
.page-template-page-era-php #page .wp-block-stackable-columns p {
    padding-bottom: 10px;
    line-height: normal;
}

.home #page .ugb-blog-posts__excerpt div.event-time {
    font-size: 16px;
    margin-bottom: 10px;
}

.post-thumbnail .wp-post-image {
    max-width: 100%;
}

.singular .entry-header figcaption {
    max-width: 600px;
}

body.busy-cursor * {
    cursor: progress;
}

body.not-busy-cursor * {
    cursor: default;
}

/* Start by setting display:none to make this hidden.
   Then we position it in relation to the viewport window
   with position:fixed. Width, height, top and left speak
   for themselves. Background we set to 80% white with
   our animation centered, and no-repeating */

.wait-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, .8) url('/wp-content/themes/twentytwentyone-child/busy_loading.gif') 50% 50% no-repeat;
}

/* When the body has the loading class, we turn
   the scrollbar off with overflow:hidden */

body.loading .wait-modal {
    overflow: hidden;
}

/* Anytime the body has the loading class, our
   modal element will be visible */

body.loading .wait-modal {
    display: block;
}

/*
* Blog Section on Home Page
*/

@media only screen and (max-width: 820px) {
    .ugb-blog-posts.ugb-blog-posts--v2.ugb-blog-posts--columns-3 .ugb-block-content {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media only screen and (max-width: 1300px) {
    .ugb-blog-posts.ugb-blog-posts--v2.ugb-blog-posts--columns-3 .ugb-block-content {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
}

.wp-block-ugb-blog-posts figure.ugb-blog-posts__featured-image, .type-event figure.post-thumbnail, .blog figure.post-thumbnail {
    max-width: 540px;
}

/*
* Archives
*/

.archive h2 a {
    color: #96d8f6;
}

.archive h2.entry-title {
    text-align: center;
}

.archive h2.entry-title a {
    font-family: "caudex, serif";
}

/*
* Donation form
*/

div.entry-content #donation-form>div.btn-group>input.btn-submit-donation {
    color: #000;
    background-color: #12cc3c;
}

div.entry-content #donation-form>div.btn-group>input.btn-submit-donation:hover {
    color: #fff;
}

div.entry-content #donation-form>div.btn-group>input.btn-submit-donation:hover {
    color: #fff;
}

div.entry-content #donation-form div.field>label>span.required-star, div.entry-content #donation-form div.field>#card-errors, div.entry-content #donation-form div.section.captcha>#noCaptchaResponseError {
    color: red;
}

#donation-form>div.section.recurring>div.field.checkbox.recurring>label {
    color: white;
}

#donation-form>div.section.true-impact>div.field.checkbox.true-impact>label {
    color: white;
}

#donation-form>div.section.recurring>div.field.checkbox.recurring #recurring {
    left: -20px;
    top: 6px;
    width: 25px;
}

#donation-form>div.section.true-impact>div.field.checkbox.true-impact #true-impact {
    top: 6px;
    width: 25px;
    margin-right: 10px;
}

#donation-form>div.section h3, #donation-form>div.section.captcha {
    padding-top: 30px;
    padding-bottom: 30px;
}

#donation-form>div.section {
    padding-bottom: 10px;
}

/*
  css to make bloomerang radio button options list look like buttons
*/

/* other amount was too small */

#donation-form>div.section.donation>div.other-amount>#other-amount {
    font-size: large;
    width: 100px;
}

/* hide the radio buttons */

#donation-form>div.section.donation>div.field.radio>label>input {
    display: none;
    margin-right: 1em;
}

/* radio label hover and selected colors */

#donation-form>div.section.donation>div.field.radio>label.selected, #donation-form>div.section.donation>div.field.radio>label:hover {
    background-color: #09c;
    color: #eee;
}

/* radio label styles and default colors */

#donation-form>div.section.donation>div.field.radio>label {
    display: block;
    background-color: #ADE;
    border-radius: 15px;
    font-size: large;
    text-align: center;
    padding: 8px 16px;
    width: 380px;
}

#monthly-giving #donation-form>div.section.donation>div.field.radio>label {
    width: 200px;
}

#donation-form>div.section.donation>div.field.radio.other-option.required>label {
    width: 150px;
}

#donation-form>div.section.contact>div.field>label,
#donation-form>div.section.billing-address>div.field>label,
#donation-form>div.section.payment>div.field>label,
#donation-form>div.section.custom-fields>div.field>label,
#donation-form>div.section.comment>div.field>label {
    color: var(--global--color-primary);
}

#donation-form>.btn-group>.btn-submit-donation {
    color: var(--global--color-primary);
    background-color: var(--button--color-background);
    border: 0px solid white;
    padding: var(--button--padding-vertical) var(--button--padding-horizontal);
}

/*
* Bloomerang Forms
*/

div.entry-content #interaction-form label {
    color: white;
}

div.entry-content #interaction-form div.field>label>span.required-star,
div.entry-content #interaction-form div.section.captcha>#noCaptchaResponseError {
    color: red;
}

#donation-form>div.section.contact>div.field label.error,
#donation-form>div.section.billing-address>div.field label.error,
#donation-form>div.section.payment>div.field label.error,
#donation-form>div.section.custom-fields>div.field label.error,
#donation-form>div.section.comment>div.field label.error {
    color: red;
}

.donation-form .field .checkbox,
.interaction-form .field .checkbox {
    color: #404040 !important;
    background: #ADE !important;
}

.donation-form .field .checkbox:hover,
.interaction-form .field .checkbox:hover,
.donation-form .field .checkbox.selected,
.interaction-form .field .checkbox.selected {
    background: #09c !important;
    color: #eee !important;
}

.donation-form .field .checkboxes {
    border: none
}

div.entry-content #donation-form>div.btn-group>input.btn-submit-donation {
    color: #000;
    background-color: #12cc3c;
}



#donation-form>div.section h3 {
    padding-top: 30px;
    padding-bottom: 30px;
}

#donation-form>div.section {
    padding-bottom: 10px;
}

*/ div.entry-content #registration-form div.field>label>span.required-star, div.entry-content #donation-form div.field>#card-errors, div.entry-content #donation-form div.section.captcha>#noCaptchaResponseError {
    color: red;
}

div.entry-content #registration-form label {
    color: white;
}

div.entry-content #registration-form #true-impact {
    left: -20px;
    top: 6px;
    width: 25px;
}

#registration-form>div.section h3 {
    padding-top: 30px;
    padding-bottom: 30px;
}

#registration-form>div.section.true-impact>div {
    padding-bottom: 40px;
}

div.entry-content #registration-form div.registrationType label {
    color: black;
}

div.entry-content #registration-form>div.btn-group>input.btn-submit-registration, div.entry-content #registration-form>div.btn-group>input.btn-submit-registration:hover, div.entry-content #registration-form>div.btn-group>input.btn-submit-registration:focus, div.entry-content #registration-form>div.btn-group>input.btn-submit-registration:active, div.entry-content #interaction-form>div.btn-group>input.btn-submit-interaction, div.entry-content #interaction-form>div.btn-group>input.btn-submit-interaction:hover, div.entry-content #interaction-form>div.btn-group>input.btn-submit-interaction:focus, div.entry-content #interaction-form>div.btn-group>input.btn-submit-interaction:active {
    line-height: var(--button--line-height);
    color: var(--button--color-text);
    cursor: pointer;
    font-weight: var(--button--font-weight);
    font-family: var(--button--font-family);
    font-size: var(--button--font-size);
    background-color: var(--button--color-background);
    border-radius: var(--button--border-radius);
    border: var(--button--border-width) solid var(--button--color-background);
    text-decoration: none;
    padding: var(--button--padding-vertical) var(--button--padding-horizontal);
}

div.entry-content #registration-form>div.btn-group>input.btn-submit-registration:hover, div.entry-content #interaction-form>div.btn-group>input.btn-submit-interaction:hover {
    border: var(--button--border-width) solid white;
}

div.entry-content #registration-form>div.btn-group {
    padding-top: 40px;
}

div.entry-content .registration-form .registration-summary #numberOfRegistrations {
    width: 65px;
}

div.entry-content .registration-form .registration-summary input.amount-field {
    width: 8em;
}

/*
  hide the ticket number column
 */

.section.registrationSummary table th.tickets-column, .section.registrationSummary table td:nth-child(3) {
    display: none;
}

/*
 css to make bloomerang radio button options list look like buttons
*/

/* other amount was too small */

#other-amount {
    font-size: large;
}

/* hide the radio buttons */

#registration-form>div.section.registrationType>div.field.radio>label>input {
    display: none;
    margin-right: 1em;
}

/* radio label hover and selected colors */

#registration-form>div.section.registrationType>div.field.radio>label.selected, #registration-form>div.section.registrationType>div.field.radio>label:hover {
    background-color: #09c;
    color: #eee;
}

/* radio label styles and default colors */

#registration-form>div.section.registrationType>div.field.radio>label {
    display: block;
    background-color: #ADE;
    border-radius: 15px;
    font-size: large;
    text-align: center;
    padding: 8px 16px;
    width: 420px;
}

#registration-form>div.section.registrationType>div.field.radio.other-option.required>label {
    width: 50px;
}

/*
* VoW
*/

#main div.entry-content div.vow-rainwater-retention {
    padding-top: 10px;
}

@media only screen and (min-width: 1000px) {
    #main div.entry-content div.vow-rainwater-retention {
        padding-left: 10%;
        padding-right: 10% !important;
    }
}

#main div.entry-content h2.vow-rainwater-retention {
    margin-top: 70px;
}

.wp-block-file .wp-block-file__button {
    line-height: var(--button--line-height);
    color: var(--button--color-text);
    cursor: pointer;
    font-weight: var(--button--font-weight);
    font-family: var(--button--font-family);
    font-size: var(--button--font-size);
    background-color: var(--button--color-background);
    border-radius: var(--button--border-radius);
    border: var(--button--border-width) solid var(--button--color-background);
    text-decoration: none;
    padding: var(--button--padding-vertical) var(--button--padding-horizontal);
    display: inline-block;
}

/*
* Conference Speakers
*/

#page div.conference-speaker figure.post-thumbnail {
    margin-right: 1em;
    margin-top: .3em;
    float: left;
    max-width: fit-content;
    max-height: fit-content;
    margin-bottom: 0px;
}

#page div.conference-speaker p {
    margin-bottom: 1.7em;
}

#page div.conference-speaker figure.post-thumbnail img {
    margin-top: 0px;
    height: 9.4em;
    margin-bottom: 0px;
}

#page div.conference-speaker div.content {
    min-height: 10em;
}

@media only screen and (max-width: 481px) {
    #page div.conference-speaker figure.post-thumbnail {
        max-width: 100%;
        padding-top: 1em;
        padding-bottom: 1em;
    }

    #page div.conference-speaker figure.post-thumbnail img {
        margin-left: 0px;
    }
}

#main article.type-speaker nav.post-navigation, #main article.type-speaker footer.entry-footer {
    display: none;
}

.type-speaker ul {
    padding-left: 1em;
}

.type-speaker .post-thumbnail {
    max-width: 600px;
}

.single .type-featured-creature .post-thumbnail {
    display: none;
}

.archive .type-featured-creature .post-thumbnail {
    display: block;
}


.archive-description {
    font-size: var(--global--font-size-base);
}

.archive-description p {
    margin-top: var(--global--spacing-vertical);
    margin-bottom: var(--global--spacing-vertical);
}

#main .b4c-search-result div.conference {
    font-size: smaller;
    font-weight: bold;
}

#main .b4c-search-result div.conference span {
    font-weight: normal;
}

/* The side navigation menu */

.slide-navigation {
    height: 100%;
    /* 100% Full-height */
    width: 320px;
    /* 0 width - change this with JavaScript */
    position: fixed;
    /* Stay in place */
    z-index: 1000;
    /* Stay on top */
    top: 0;
    /* Stay at the top */
    right: -320px;
    background-color: #222;
    /* Black*/
    overflow-x: hidden;
    /* Disable horizontal scroll */
    padding-top: 50px;
    /* Place content 60px from the top */
    transition: 0.5s;
    /* 0.5 second transition effect to slide in the slide-navigation */
    overscroll-behavior: contain;
    /* prevent window scrolling */
}

/* The navigation menu links */

.slide-navigation a {
    text-decoration: none;
    font-size: 16px;
    line-height: 1.5;
    color: #fff;
    display: block;
    transition: 0.3s;
    cursor: pointer;
    padding-left: 15px;
    padding-right: 15px;
}

.slide-navigation li.new-item a {
    background-color: #22b61c;
}

.slide-navigation ul.sub-menu {
    padding-left: 15px;
    padding-right: 15px;
}

.icon-menu {
    padding-left: 5px;
}

/* When you mouse over the navigation links, change their color */

.icon-menu-mag:hover, .icon-menu:hover {
    background-color: #22b61c;
    border-radius: 10px;
}

.slide-navigation a:hover {
    cursor: pointer;
}

.slide-navigation li.new-item a:hover {
    color: #000;
}

.slide-navigation>div>#primary-menu-list li a:focus {
    cursor: pointer;
}

#masthead.has-logo .primary-menu-container {
    padding-top: 0px;
}

@media (max-width: 700px) {
    .site-header .custom-logo-link {
        margin-left: 5px;
    }
}

/* Position and style the close button (top right corner) */

.slide-navigation #slide-navigation-close {
    position: absolute;
    top: 0;
    right: 25px;
    font-size: 36px;
    width: 50px;
    text-align: center;
}

.slide-navigation-open span {
    vertical-align: middle;
    display: inline-block;
}

#slide-navigation-open:focus {
    outline: none;
}

#slide-navigation-open {
    background-color: black;
    border: none;
    border-radius: 10px;
    padding: 0px;
    color: white;
    cursor: pointer;
    position: fixed;
    top: 0px;
    right: 0px;
    z-index: 999;
    opacity: 1;
    transition: all .7s ease;
    line-height: 1.15;
}

.slide-navigation .sub-menu-toggle {
    display: none;
}

.slide-navigation ul {
    list-style: none;
}

.slide-navigation ul.menu-wrapper {
    padding-left: 0px;
    width: 100%;
    padding-bottom: 100px;
}

.admin-bar #slide-navigation-open {
    top: 32px;
}

#slide-navigation-open.hide {
    top: -100px;
}

.site a:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
    background-color: black;
    color: lightskyblue;
}

@media print {
    body {
        background: #fff !important;
        color: #000 !important;
    }

    a {
        color: #aaa !important;
    }

    #colophon, #slide-navigation-open, #masthead, #footer-appeal {
        display: none;
    }
}

#page #content p.back-to-site .button {
    background-color: #12CC3C;
    transition: all .2s ease-in-out;
}

#page #content p.back-to-site .button:hover, #page #content p.back-to-site .button:focus {
    background-color: #3D3DF3;
}


/* ERA page styles */

.era-logo {
    padding-left: 3vw;
    text-align: left;
}

.b4c-logo {
    padding-left: 3vw;
    text-align: center;
}

.era-logo img {
    max-width: 125px;
}

#era-b4c-footer-logo>a>img {
    max-width: 90vw;
}

.page-template-page-era-php #page .site-branding {
    max-width: 125px;
}

@media only screen and (min-width: 482px) {
    .page-template-page-era-php #page .primary-navigation a {
        font-weight: bold;
    }
}

.page-template-page-era-php #page #masthead {
    box-shadow: #21c3fc 0px 3px 10px;
}


.page-template-page-era-php #page .stk-block .stk-button {
    background-color: #21c3fc;
}

.page-template-page-era-php #page .stk-block .stk-button.stk--hover-effect-darken:hover {
    filter: brightness(0.8) contrast(1.2);
}

.era-iframe-container {
    display: flex;
    width: 96vw;
    height: 96vh;
    flex-direction: column;
    overflow: hidden;
    padding-left: 3vw;
    margin-top: 0;
}

.era-iframe-yt-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}

.page-template-page-era-php #page .era-iframe-container .oi-iframe {
    height: 100%;
    width: 100%;
    border: none;
    margin: 0;
    padding: 0;
}

.page-template-page-era-php #page .era-iframe-yt-container .yt-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-width: 900px;
}

.page-template-page-era-php #page .menu-button-container {
    position: fixed;
    top: 0;
    width: fit-content;
    background-color: transparent;
}

.page-template-page-era-php .donate-menu-button {
    background-color: #309afe;
}

@media only screen and (max-width: 651px) {
    #masthead.has-logo .menu-button-container {
        padding-top: 0px;
    }
}


.content-only header,
.content-only footer {
    display: none;
}

.google-form #the-form {
    margin: 0 auto;
}


/*
accordion menu
*/

/* Style the accordion panel. Note: hidden by default */
.menu-wrapper .accordion .sub-menu {
    height: 0rem;
    overflow: hidden;
    transition: .7s;
}

.menu-wrapper .accordion-active .sub-menu {
    height: 31rem;
    padding-top: 7px;
    background-color: #111;
}

#slide-navigation .menu-wrapper .menu-item-has-children>a {
    padding-top: 15px;
    padding-bottom: 15px;
    border-top: 1px solid #222;
    font-size: inherit;
}

#slide-navigation .menu-wrapper .donate-menu-button>a {
    padding-top: 15px;
    padding-bottom: 15px;
    border-top: 1px solid #222;
    background-color: #309afe;
    font-size: inherit;
}

.menu-wrapper .accordion>a:hover,
.menu-wrapper .accordion .sub-menu .menu-item>a:hover,
#slide-navigation .menu-wrapper .accordion a:focus,
.menu-wrapper .accordion-active {
    background-color: #31622C;
}

#slide-navigation .menu-wrapper span.sub {
    font-style: italic;
    font-size: small;
    padding-left: 1rem;
    display: block;
}

@media (min-width: 482px) {
    .primary-menu-container, .primary-navigation>div>.menu-wrapper {
        justify-content: left !important;
    }

    .primary-navigation {
        margin-top: auto;
        margin-bottom: auto;
    }
}

/* mega menu */
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-icon-left>a.mega-menu-link:before {
    width: 2em;
    text-align: center;
    margin-right: 0;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 a.mega-menu-link .mega-description-group .mega-menu-description {
    font-style: normal;
    font-size: 0.9em;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 .mega-menu-nodesc a.mega-menu-link .mega-description-group .mega-menu-description {
    display: none;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row .mega-menu-nodesc>ul.mega-sub-menu>li.mega-menu-item:not(:first-child) {
    padding-top: 0px;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row .mega-menu-nodesc>ul.mega-sub-menu>li.mega-menu-item {
    padding-bottom: 0px;
}

.mega-sub-menu .wp-caption {
    margin-bottom: 0;
    max-width: 100%;
}

.mega-sub-menu .wp-caption-text {
    display: none;
}

ul.mega-sub-menu li.widget_media_image,
ul.mega-sub-menu li.widget_media_image a {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 .mega-menu-has-icons .mega-description-group {
    width: 80%;
    padding-left: 10px;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1>li.mega-menu-megamenu>ul.mega-sub-menu {
    left: calc((1000px - 100%) * -1 - 5px);
    margin-top: 2px;
    background-color: #1d1d1d;
    width: 1000px;
    max-width: 100vw;
}

@media (max-width: 1213px) {
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1>li.mega-menu-megamenu>ul.mega-sub-menu {
        left: calc((100% - 1000px) * .5);
    }
}

@media (max-width: 1000px) {
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1>li.mega-menu-megamenu>ul.mega-sub-menu {
        left: 0;
    }
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row .mega-menu-column>ul.mega-sub-menu>li.mega-menu-item {
    padding-bottom: 0;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-align-bottom-left.mega-toggle-on>a.mega-menu-link {
    border-radius: 5px 5px 5px 5px;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-donate-menu-button>a.mega-menu-link {
    background-color: #309afe;
    font-weight: bold;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-donate-menu-button>a.mega-menu-link:hover {
    color: #309afe;
    background-color: #EDEDED;
    font-weight: bold;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-search-the-website {
    padding-left: 10px;
    padding-right: 10px;
}

@media only screen and (max-width: 768px) {
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-search-the-website {
        padding-bottom: 10px;
        padding-left: 0;
        padding-right: 0;
    }
}

.page-template-default .menu-button-container #primary-mobile-menu {
    display: none;
}

@media (max-width: 768px) {
    .page-template-default .site-header.has-logo:not(.has-title-and-tagline).has-menu .site-logo {
        position: static;
    }

    .page-template-default .primary-navigation {
        position: static;
        width: 100%;
    }
}

@media only screen and (min-width: 482px) {
    .site-branding {
        margin-right: 80px;
    }
}

.wp-custom-logo .site-header {
    align-items: flex-end;
}

.linkify-card:hover {
    cursor: pointer;
    box-shadow: 0 0 0 3px var(--content--color--link);
}

.wp-block-stackable-icon .stk--svg-wrapper .stk--inner-svg svg:last-child, .wp-block-stackable-icon .stk--svg-wrapper .stk--inner-svg svg:last-child :is(g,path,rect,polygon,ellipse) {
    fill: var(--global--color-primary);
}

.page-template-default .b4c-grouped-column-boxes .wp-block-columns .wp-block-column {
    /* border: 1px solid; */
    margin-bottom: 1em;
}

div.entry-top-meta .categories .term-button {
    background-color: #4682b4;
    text-decoration: none;
    padding: 0.3em 1em;
    margin-right: 1em;
    border-radius: 4px;
    display: inline-block
}

div.entry-top-meta .categories .term-button:hover {
    background-color: #386e9b;
}
