/**
Theme Name: TRNERR
Author: Minimal Chaos
Author URI: https://minimalchaosweb.com
Description: A custom WordPress theme for TRNERR based off of the Astra theme framework.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: trnerr
Template: astra
*/


/*
 * Fixing Beaver Builder buttons with CSS concatenation
 ------------------------------------------------------------------------------ */
a.fl-button {
    text-decoration:none !important;
}


/* Making columns full width on tablet sized screens */
@media only screen and (max-width:768px) {
    .fl-col-small:not(.fl-col-small-full-width) {
        max-width: 100%;
    }
}

/* Making heading links not underlined */
.entry-content h1 a,
.entry-content h2 a,
.entry-content h3 a,
.entry-content h4 a,
.entry-content h5 a {
    text-decoration: none !important;
}

/* Adjusting mobile nav styles */

@media only screen and (max-width:1125px) and (min-width: 922px) {
    .ast-builder-menu-1 .menu-item>.menu-link {
        font-size: 13px !important;
    }

    .ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img {
        max-width: 240px;
    }
}

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

    li.menu-item .ast-arrow-svg {
        color: #000;
    }

    .ast-mobile-svg {
        fill: #fff !important;
    }

}

/* Search header overlay */
.ast-search-box.header-cover {
    background: rgba(30, 48, 66, .95);
}



/* Accordion styles */
a.fl-accordion-button-label,
a.fl-accordion-button-icon {
    text-decoration: none !important;
}


/*
 * List styles
 */

.check-list .fl-rich-text ul {
    list-style: none;
    margin-left: 28px;
}

.check-list .fl-rich-text ul li {
    margin-bottom: 20px;
}

.check-list .fl-rich-text ul li::before {
    font-family: 'Font Awesome 5 Free';
    content: "\f00c";
    margin: 0 0 0 -28px;
    color: #487048;
    position: absolute;
    font-size: 14px;
    font-weight: 900;
    /* Needed to make Font Awesome icons work */
    vertical-align: middle;
}

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

    .check-list .fl-rich-text ul {
        list-style: none;
        margin-left: 24px;
    }

    .check-list .fl-rich-text ul li::before {
        font-size: 13px;
        margin: 0 0 0 -24px;
    }
}



/* Advisory Council Logos */
.advisory-council-agencies img {
    max-height: 90px;
    width: auto;
}

@media only screen and (max-width:1024px) {
    .advisory-council-agencies img {
        max-height: 80px;
    }
}




/* Footer */
.footer-logos img {
    max-width: 90px;
    max-height: 90px;
    width: auto;
    height: auto;
}

@media only screen and (max-width:1024px) {
    .footer-logos img {
        max-width: 80px;
        max-height: 80px;
    }
}

.footer a:hover {
    text-decoration: underline;
}


/* Gravity Forms */

/*
.footer-mailing-list input[type="email"],
.footer-mailing-list button {
    border-radius: 25px;

}

.footer-mailing-list button {
    color: #5f3f2a !important;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .02rem;
    font-size: .9rem !important;
}

@media only screen and (min-width:641px) {

    .footer-mailing-list input[type="email"] {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        border-top-left-radius: 25px;
        border-bottom-left-radius: 25px;
        height: 2.5rem;
    }

    .footer-mailing-list button {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        border-top-right-radius: 25px;
        border-bottom-right-radius: 25px;
        margin-left: -7px;
    }

}

@media only screen and (max-width:640px) {
    .footer-mailing-list button {
        width: 100%;
        height: 48px !important;
    }
}

@media only screen and (max-width:768px) and (min-width:641px) {
    .footer-mailing-list button {
        margin-left: -13px;
    }
}
*/

.footer-mailing-list .gform_footer {
    margin-top: 0 !important;
}

.footer-mailing-list input.gform_button {
    width: 100%;
}



.footer-mailing-list button:hover {
    background: #e18f1f;
    color: #000;
}

.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message {
    color: #C02B0A !important;
}


/*
 * Gravity Forms contact form
 ------------------------------------------------------------------------------ */
.gform_wrapper input,
.gform_wrapper textarea {
    border-radius: 10px;
}

input.gform_button {
    border-radius: 30px;
    color: #5f3f2a;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: .3px;
    padding-top:
}

input.gform_button:hover {
    background: #ed9b2b;
}


/*
 * Team Members
 ------------------------------------------------------------------------------ */
h2.department {
    text-align: center;
}

.team-members-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px;
    max-width: 1260px;
    margin: 0 auto 60px auto;
    padding: 20px;
}

.team-member {
    width: calc(50% - 15px);
}



.team-member-content {
    padding: 30px;
    background-color: #f8f7e7;
    border-radius: 10px;
    min-height: 304px;
}

.team-member-content p {
    font-size: 14px;
}

.bio-photo-title-container {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.bio-photo {
    width: 40%;
}

.bio-photo img {
    border-radius: 50%;
}

.bio-title {
    width: 55%;
}

.bio-title h4 {
    margin-bottom: 10px;
    font-size: 24px;
}

.bio-title i {
    margin-right: 4px;
    color: #5f3f2a;
}

.job-title {
    font-weight: bold;
    margin-bottom: 0;
}

p.phone-number {
    margin-bottom: 0;
}

p.email {
    margin-bottom: 15px;
}

.bio-content p:last-of-type {
    margin-bottom: 0;
}

/* Expand/collape toggle example taken from here: https://stackoverflow.com/a/9417288 */
.bio-toggle {
    position: relative;
    width: auto;
    display: inline-block;
    padding: 4px 16px;
    border-radius: 20px;
    font-size: 12px;
    background-color: #f3ae4f;
    color: #5f3f2a;
    margin-left: 45%;
    cursor: pointer;
}

.bio-toggle:hover {
    background-color: #ed9b2b;
}

.bio-toggle::before {
    content: "\25bc";
    margin-right: 4px;
}

.bio-toggle.is-active {
    margin-bottom: 10px;
}

.bio-toggle.is-active::before {
    content: "\25b2";
}

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

    .team-members-container {
        gap: 20px;
    }

    .team-member,
    .bio-photo,
    .bio-title {
        width: 100%;
    }

    .bio-photo-title-container {
        display: block;
    }

    .team-member-content {
        text-align: center;
    }

    .bio-content {
        text-align: left;
    }

    .bio-photo img {
        max-width: 200px;
        margin-bottom: 20px;
    }

    .bio-toggle {
        margin-left: 0;
    }

    .bio-title h4 {
        margin-bottom: 10px;
        font-size: 21px;
    }

}


/*
 * Projects and Initiatives
 ------------------------------------------------------------------------------ */

.project-initiative-container {
    width: 920px;
    max-width: 100%;
    padding: 20px;
    margin: 0 auto 60px auto;
}


/*
 * Library Links
 ------------------------------------------------------------------------------ */

.single-library .fl-row-content-wrap {
    /* padding-bottom: 0; */
}

.library-link-container {
    width: 920px;
    max-width: 100%;
    padding: 20px;
    margin: 0 auto 60px auto;
}

.library-link-container ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.library-link-container ul li {
    margin: 0 0 10px 0;
    padding: 0;
}

.library-link-container .library-link {
    font-weight: bold;
}

.library-link-container .library-link img {
    max-width: 18px;
    margin-right: 10px;
}


/*
 * Library Categories (Custom Taxonomy term listing on main Library archive page)
 ------------------------------------------------------------------------------ */

.library-categories-container {
    width: 1160px;
    max-width: 100%;
    padding: 20px;
    margin: 0 auto 40px auto;
    text-align: center;
}

.library-categories-container p {
    margin-bottom: 10px;
}

.library-categories-container ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.library-categories-container ul li {
    display: inline;
    margin: 0;
}

.library-categories-container ul li a {
    display: inline-block;
    padding: 4px 16px;
    background-color: #f3ae4f;
    color: #5f3f2a;
    border-radius: 10px;
    font-weight: bold;
    margin: 5px 10px;
}

.library-categories-container ul li a:hover {
    background-color: #ed9b2b;
}

.post-type-archive-library .fl-post-grid-post,
.tax-library_categories .fl-post-grid-post {
    padding-top: 20px;
}

.post-type-archive-library .fl-post-grid-post,
.post-type-archive-library .fl-post-grid-post img,
.tax-library_categories .fl-post-grid-post,
.tax-library_categories .fl-post-grid-post img {
    border-radius: 10px;
}

.post-type-archive-library .fl-post-feed-post,
.tax-library_categories .fl-post-feed-post {
    margin-block-end: 50px;
    padding-bottom: 50px;
}


.single-library .featured-image img {
    max-height: 600px;
    width: auto;
}


/*
 * Water data live feed
 ------------------------------------------------------------------------------ */
.data-container {
    display: flex;
    justify-content: space-between;
}

.data-container div {
    width: 30%;
}

@media only screen and (max-width:768px) {
    .data-container {
        display: block;
    }

    .data-container div {
        width: 100%;
    }
}

p.data-title {
    font-size: 14px;
    margin-bottom: 0;
    font-weight: bold;
    text-align: center;
}

p.data-title i {
    font-size: 1.3em;
    font-size: 1.3em;
    margin-right: 5px;
    vertical-align: middle;
    margin-top: -2px;
    color: #a2dbe8 !important;
}

p.data-metric {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
}

p.data-metric span {
    font-weight: normal;
    font-size: .8em;
}




/*
 * Donate boxes
 */
.donate-boxes p {
	margin: 0;
}

.donate-boxes a {
	text-decoration: none !important;
}

.donate-boxes a:hover {
	background:#f3ae4f !important;
	color: #000 !important;
}


/*
 * Simple Calendar plugin
 ------------------------------------------------------------------------------ */
.simcal-event-details strong {
    font-size: 14px;
}

.simcal-default-calendar-list {
    padding: 0;
}

.simcal-default-calendar-list ul.simcal-events {
    margin: 0;
}


/*
 * Photo captions
 ------------------------------------------------------------------------------ */
.fl-photo-caption.fl-photo-caption-below {
    text-overflow: initial;
    white-space: normal;
    padding-bottom: 0;
}


/* ---- Custom stuff for William's photo credits ---- */
.william-bay .photo-credit,
.william-bay-overlay .photo-credit {
    line-height: 1;
    font-size: 12px;
    margin-top: 10px;
}

/* For row background images */
.william-bay-overlay .fl-row-content-wrap .photo-credit {
    position: absolute;
    bottom: 20px;
    right: 20px;
    color: #fff;
    text-shadow: 0px 0px 10px rgb(0, 0, 0, .9);
}

/* For photo module img overlays */
.william-bay-overlay .photo-credit {
    position: absolute;
    bottom: 10px;
    right: 10px;
    color: #fff;
    text-shadow: 0px 0px 10px rgb(0, 0, 0, .9);
}

.william-bay-overlay .fl-row-content-wrap .photo-credit a,
.william-bay-overlay .photo-credit a {
    color: #fff;
}



/* ----- Header photo credits ----- */
.breadcrumb-photo-credit .fl-row-content-wrap,
.home-video-credit-row .fl-row-content-wrap {
    position: unset;
}

.william-header-photo-credit,
.custom-header-photo-credit,
.home-video-credit {
    position: absolute;
    right: 0;
    margin-top: -100px;
    color: #fff !important;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, .9);
}

.home-video-credit {
    margin-top: -125px;
    text-align: right;
}

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

    .william-header-photo-credit,
    .custom-header-photo-credit,
    .home-video-credit {
        right: unset;
        margin-top: -50px;
        width: 100%;
        text-align: center;
    }

    .home-video-credit {
        text-align: center;
        margin-top: -100px;
    }
}


/*
 * Search Results
 ------------------------------------------------------------------------------ */
.search-results .ast-archive-description {
    display: none;
}



.ast-single-post-order,
.single-post .post-navigation {
    display: none;
}

.single-post .entry-content {
    padding-top: 40px;
    padding-bottom: 60px;
}

/*
 * Projects and Initiatives
 ------------------------------------------------------------------------------ */

.single-project .featured-image img {
    max-height: 500px;
    width: auto;
}

.project-initiative-container h2 {
    margin-bottom: 16px;
}

.popup-gallery,
.sponsors-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.sponsors-container {
    align-items: center;
}

.sponsor {
    text-align: center;
    font-weight: bold;
}

.sponsor img {
    max-width: 220px;
    max-height: 100px;
    width: auto;
    height: auto;
}

.popup-gallery a {
    display: inline-block;
}

.popup-gallery a:hover img {
    opacity: .7;
}

.popup-image {
    text-align: center;
}

.popup-gallery .popup-image,
.sponsor {
    width: 30%;
    margin: 1.666%;
}

.project-section {
    margin-bottom: 60px;
}

@media only screen and (max-width: 1024px) {
    .sponsor {
        width: 46%;
        margin: 15px 2%;
    }
}

@media only screen and (max-width: 800px) {
    .popup-gallery .popup-image {
            width: 48%;
            margin: 10px 1%;
        }
}

@media only screen and (max-width: 560px) {
    .popup-gallery .popup-image {
            width: 100%;
            margin: 12px 0;
        }
    
    .sponsor {
        font-size: .9em;
        line-height:1.4em;
    }

    .sponsor img {
        max-width: 120px;
        max-height: 80px;
        width: auto;
        height: auto;
    }

    .project-section {
        margin-bottom: 30px;
    }
    
}

.popup-gallery .popup-image p {
    font-size: .9em;
    margin-bottom: 0;
    line-height: 1.4em;
    margin-top: 10px;
}

/*
 * Projects and Initiatives archive page
 */

 .post-type-archive-project h2.fl-post-grid-title,
 .tax-project_category h2.fl-post-grid-title {
    margin-bottom: 20px;
    font-size: 20px;
 }

.post-type-archive-project .fl-post-grid-post,
.tax-project_category .fl-post-grid-post  {
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    background: #f9f8e9;
    border-color: #efeee0;
    border-radius: 5px;
 }

.post-type-archive-project .fl-post-grid-more,
.tax-project_category .fl-post-grid-more {
    font-weight: 600;
    font-size: 11px;
    letter-spacing: 0.3px;
    text-transform: uppercase;
    border: 1px solid #e7a243;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    padding: 4px 16px;
    background: #f3ae4f;
    color: #5f3f2a;
    margin-bottom: 10px;
    margin-top: 20px;
}

.post-type-archive-project .fl-post-grid-more:hover,
.post-type-archive-project .fl-post-grid-more:focus,
.post-type-archive-project .fl-post-grid-more:active,
.tax-project_category .fl-post-grid-more:hover,
.tax-project_category .fl-post-grid-more:focus,
.tax-project_category .fl-post-grid-more:active {
    background-color: #ed9b2b;
}

/*
 * Navigation
 ------------------------------------------------------------------------------ */
 ul.ast-nav-menu li.cta a {
    background: #f3ae4f;
    color: #000 !important;
    border-radius: 100px;
 }

 ul.ast-nav-menu li.cta a:hover,
 ul.ast-nav-menu li.cta a:focus {
     background: #ed9b2b;
     color: #000 !important;
 }

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

    ul.ast-nav-menu li.cta a {
        display: inline-block;
        width: 100px !important;
        text-align: center;
        margin: 10px;
    }
 }

 svg.ast-mobile-svg {
    fill: #fff !important;
 }