/*
Theme Name: EPSO Foundation
Template: devdmbootstrap4
Author: karl@axiodesign.com
*/

@import url("../devdmbootstrap4/style.css");


/*
font-family: 'Roboto', sans-serif;
font-family: 'Roboto Condensed', sans-serif;
*/
html,
body {
    margin: 0;
    padding: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
}
img {
    display: block;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto Condensed', sans-serif;
    text-transform: uppercase;
}


.container {
    width: 100%;
    max-width: 2400px;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
}
.dmbs-content-wrapper {
    margin-top: 0;
}


#page-header {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    margin: 0;
    width: 100%;
    height: 104px;
    background: url('images/bkgrd_header_1366w104h.jpg') no-repeat;
    background-size: 100% 104px;
    padding: 0;
    z-index: 10;
}
#wpadminbar {
    display: none;
}
body.wp-admin #wpadminbar {
    display: block;
}

#site-logo {
    display: block;
    position: absolute;
    top: 25px;
    left: 50px;
    z-index: 20;
}

#site-title {
    display: block;
    position: absolute;
    top: 55px;
    left: 180px;
    color: #FFFFFF;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    font-style: italic;
    text-transform: uppercase;
}

#page-footer {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8em;
    background-color: #0F132A;
    padding: 2em 20px 2em 5em;
    color: #FFFFFF;
    font-family: Arial, sans-serif;
    font-size: 0.8rem;
    line-height: 1.25em;
    font-weight: 400;
    z-index: 20;
}
#page-footer address {
    display: block;
    margin: 0;
    font-style: normal;
}
#page-footer .footnote {
    display: block;
    margin: 0;
    font-style: italic;
}
#page-footer .footer-button {
    display: inline-block;
    float: right;
    margin: 0.25em;
    border: solid 1px #00AEEF;
    padding: 1em 2.5em;
    text-align: center;
    color: #FFFFFF;
    font-family: Arial Black, sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    font-style: normal;
    text-transform: uppercase;
}
#page-footer .footer-button:hover,
#page-footer .footer-button:focus {
    text-decoration: none;
}
#page-footer .scroll-hint {
    display: block;
    position: absolute;
    bottom: 10em;
    left: 0;
    width: 100%;
    padding: 0;
    text-align: center;
    z-index: 10;
}
.scroll-hint #scroll-to-next-section {
    display: inline-block;
    margin: 0 auto;
}
.section-content .scroll-hint img {
    display: block;
    margin: 0 auto;
    width: 5rem;
    max-width: 44px;
    border: none;
}
body.page-template-default .scroll-hint {
    display: none !important;
}


#menu-main-navigation {
    margin: 15px;
    font-size: 0.8rem;
}
ul.navbar {
    background: transparent;
}
ul.navbar-bar {
}
ul.navbar-nav li {
    margin: 0 1em;
}
ul.navbar-nav li a {
    border-bottom: solid 5px transparent;
    padding: 0 !important;
    color: #FFFFFF;
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
}
ul.navbar-nav li a:hover {
    border-color: #D2232A;
    color: #6CB1CD;
}
.navbar-toggler {
    color: #FFFFFF;
}
button.navbar-toggler,
button.navbar-toggler:focus {
    outline: none;
}
.navbar-collapse.collapsing,
.navbar-collapse.show {
    display: inline-block;
    border: none;
    background: rgba(15, 19, 42, 0.85);
    padding: 10px;
    z-index: 30;
}
.navbar-collapse.collapsing ul.navbar-nav li a,
.navbar-collapse.show ul.navbar-nav li a {
    display: inline-block;
    margin: 0.5em;
    line-height: 1.1em;
}
.navbar-collapse.collapsing .nav-link,
.navbar-collapse.show .nav-link {
    width: auto;
}

/*
Current page highlighting (uses post ids--you must update this list if menu items or pages change) */
.page-id-71 .menu-item-82 a,
.page-id-73 .menu-item-81 a,
.page-id-75 .menu-item-80 a,
.page-id-77 .menu-item-79 a {
    border-color: #D2232A;
    color: #6CB1CD;
}



/*
PayPal donate button */
.button-container {
    display: inline-block;
    position: absolute;
    right: 50px;
    bottom: -110px;
    margin: 0;
}
.donate-button {
    display: block;
    margin-bottom: 15px;
    border-radius: 15px;
    border: solid 2px #BE9522;
    background-color: #E4C640;
    padding: 5px 25px;
    text-align: center;
    color: #0F132A;
    font-family: Arial, sans-serif;
    font-size: 0.9rem;
    line-height: 1em;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
    outline: none;
    z-index: 20;
}
.donate-button:hover {
    color: #FFFFFF;
    text-decoration: none;
}
.donate-button.long-label {
    padding: 5px 15px;
    font-size: 0.8rem;
    white-space: nowrap;
}
.donate-button.alt-color {
    border-color: #1173FB;
    background: #FFFFFF;
    color: #1173FB;
}
.donate-button.alt-color:hover {
    color: #000000;
}
body.page-id-246 .button-container {
    display: none;
}


/*
Global section styles */
section.section-background {
    display: block;
    box-sizing: border-box;
    background-attachment: fixed;
    background-size: cover;
    background-position: bottom;
    background-repeat: no-repeat;
}

section.section-content {
    position: relative;
    margin: 0;
    padding: 0;
    z-index: 2;
    font-size: 1rem;
}
section.section-content p {
    margin: 0;
}
.section-content blockquote {
    margin: 0;
    padding: 20px 125px;
}
.section-content:last-of-type {
    margin-bottom: 5em;
}

/*
Section-specific styles */
section#section-intro {
    padding: 5em 3em 25em 3em;
}
section#section-intro h2 {
    margin: 25px 0;
    color: #0F132A;
    font-size: 1.7em;
    line-height: 1.1em;
    font-weight: 700;
    font-style: italic;
}
section#section-intro.section-content p {
    padding: 50px;
}
section#section-fundraising h3 {
    margin: 0;
    color: #FFFFFF;
    font-family: 'Roboto', sans-serif;
    font-size: 2em;
    font-weight: 600;
    font-style: normal;
    text-transform: none;
}
section#section-fundraising h2 {
    margin-top: 80px;
    color: #FFFFFF;
    font-size: 2.35em;
    letter-spacing: 0;
    font-weight: 300;
    font-style: italic;
}
section#section-fundraising h1 {
    margin-top: 20px;
    color: #FFFFFF;
    font-size: 4.5em;
    letter-spacing: 0.25em;
    font-weight: 700;
    font-style: italic;
}
section#section-fundraising blockquote {
    margin: 0;
    background: rgba(37, 64, 143, 0.90);
    padding: 50px 15%;
    color: #FFFFFF;
    font-family: 'Roboto', sans-serif;
    font-size: 1rem;
}

section#section-gallery img {
    display: inline-block !important;
    margin: 10px 10px 10px 0;
}
section#section-gallery img:last-of-type {
    margin-right: 0;
}
section#section-fundraising-status {
    padding: 28vh 0 0 0;
}
section#section-fundraising-status h2 {
    color: #0F132A;
    font-size: 2.30em;
    font-weight: 300;
    font-style: italic;
}
section#section-fundraising-status h1 {
    color: #0F132A;
    font-size: 4.5em;
    letter-spacing: 0.1em;
    font-weight: 700;
    font-style: italic;
}
section#section-fundraising-status h2:last-of-type {
    margin-bottom: 25vh;
}
section#section-fundraising-status .filmstrip,
section#section-fundraising-status .filmstrip .cell {
    padding: 0;
}
section#section-epsof-in-action {
    padding: 100px 0 100px 50px;
}
section#section-epsof-in-action h2 {
    margin: 0;
    color: #FFFFFF;
    font-size: 3.5em;
    font-weight: 300;
    font-style: italic;
}
section#section-epsof-in-action h2:first-of-type {
    margin-top: 40px;
    text-indent: 1.5em;
}
section#section-epsof-in-action h1 {
    margin: 0;
    color: #FFFFFF;
    font-size: 4.5em;
    letter-spacing: 0.2em;
    font-weight: 700;
    font-style: italic;
}
section#section-epsof-in-action h4 {
    display: inline-block;
    margin: 0;
    border: solid 1px #00AEEF;
    padding: 10px 25px;
    text-align: center;
    color: #FFFFFF;
    font-family: Arial Black, sans-serif;
    font-size: 1.25em;
    font-weight: 600;
    font-style: normal;
}
section#section-epsof-in-action h4:first-of-type {
    margin-top: 5em;
}


.filmstrip {
    margin: 0;
    display: table;
    width: 100%;
    background-color: #FFFFFF;
    padding: 10px 0 0 0;
    text-align: center;
}
.filmstrip .cell {
    display: table-cell;
    margin: 0;
    border-right: solid 5px #FFFFFF;
    border-left: solid 5px #FFFFFF;
    padding: 0 0 10px 0;
}
.filmstrip .cell:first-child {
    border-left: none;
}
.filmstrip .cell:last-child {
    border-right: none;
}
.filmstrip .cell img {
    display: block;
    margin: 0;
    width: 100%;
    height: auto;
}

.two-column a[href$=".pdf"] {
    display: inline-block;
    min-width: 20em;
    border: solid 2px #0082AB;
    border-radius: 1em;
    background: #FFFFFF;
    padding: 5px 25px;
    text-align: center;
    color: #6D6F71;
    font-size: 1rem;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
}


/*
Events styles */
.upcoming-events {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    float: right;
    max-width: 550px;
    margin: 0 100px 25px 25px;
}
.event {
    flex-basis: content;
    display: inline-block;
    margin: 0 20px 20px 0;
    text-align: center;
}
.event a {
    text-decoration: none;
}
.event img {
    display: block;
    margin: 0 auto;
    border: solid 3px #E6E7E8;
}
.event img[src$=".png"] {
    border: none;
}



/*
Bio styles */
.bios { }
.bios.board-of-directors {
    clear: both;
    display: table;
    width: auto;
    max-width: 75%;
}
.bio {
    display: table-row;
}
.bio .headshot {
    display: table-cell;
    margin: 0;
    width: 156px;
    padding: 1.25em 0 1em 0;
    vertical-align: top;
}
.bio .headshot img,
.bio .headshot .headshot-placeholder {
    margin: 0;
    width: 156px;
    height: 194px;
    background-color: #BCBDC0;
    padding: 0;
}
.bio .bio-copy {
    display: table-cell;
    margin: 0;
    width: auto;
    max-width: 75%;
    padding: 1em 1em 1em 3em;
    vertical-align: top;
    font-size: 0.9em;
}
.bio .bio-copy .bio-name {
    display: block;
    margin: 0.5em 0 0.75em 0;
    font-size: 1.1em;
    font-weight: 600;
    text-transform: uppercase;
}
.hidden-content {
    display: none;
}
.read-more-link {
    color: #D2232A;
    text-transform: capitalize;
}


/*
Contact form styles */
.wpcf7 {
}
.contact-form label {
    display: block;
    margin-bottom: 0;
    font-size: 0.9rem;
}
.contact-form input,
.contact-form textarea {
    width: 100%;
    padding: 2px 5px;
    font-size: 1rem;
}
.contact-form input[type=submit] {
    display: inline-block;
    width: auto;
    border-radius: 15px;
    border: solid 2px #A7A9AC;
    background-color: #0082AB;
    padding: 5px 25px;
    text-align: center;
    color: #FFFFFF;
    font-family: Arial, sans-serif;
    font-size: 0.9rem;
    line-height: 1em;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
    outline: none;
    z-index: 20;
}



/*
Default page styles */
.page-template-default .dmbs-content-wrapper {
    margin-top: 48px;
}
.page-template-default .dmbs-main {
    padding: 100px 0 150px 0;
}
.page-template-default .outer-container.two-column {
    padding-left: 120px;
}
.page-template-default .outer-container.one-column {
    padding-right: 120px;
    padding-left: 120px;
}
.page-template-default .outer-container .column:nth-of-type(1) {
    padding-right: 50px;
}
.page-template-default .dmbs-main p {
}
.page-template-default .dmbs-main h1 {
    margin: 20px 0;
    color: #000000;
    font-family: 'Roboto', sans-serif;
    font-size: 1.5em;
    font-weight: 600;
    text-transform: uppercase;
}
.page-template-default .page-layout {
    display: flex;
}
.page-template-default .page-layout .column:first-child {
    flex: 50%;
}
.page-template-default .page-layout .column:not(:first-child) {
    flex: auto;
    justify-content: flex-end;
}
.page-template-default blockquote {
    display: block;
    margin: 30px 50px 30px 0;
    padding: 0;
    font-size: 0.80em;
}

.page-template-default .page-image-block {
    display: inline-block;
    float: right;
    margin: 20px 0;
    max-width: 590px;
    justify-content: flex-end;
}
.page-template-default .page-image-block .row {
    margin: 0;
    padding: 0;
}
.page-template-default .page-image-block .row .column {
    flex: 50%;
    padding: 1px;
}
.page-template-default .page-image-block .row .column:first-child {
    flex: 100%;
    padding: 1px;
}


/*
Page-specific styles (tied to page ids, if this page is replaced, a change here will be required) */
.page-template-default.page-id-140 h1 {
    font-family: 'Roboto', sans-serif;
    font-size: 2.4em;
    line-height: 1.25em;
    font-weight: 500;
    text-transform: none;
}
.page-template-default.page-id-140 .filmstrip {
    margin-left: auto;
    margin-right: auto;
    max-width: 75%;
}


@media screen and (max-width: 1300px) {
    html, body {
        font-size: 18px;
    }
    #page-footer {
        font-size: 10px;
    }
    #menu-main-navigation {
        margin: 0;
    }
}
@media screen and (max-width: 1100px) {
    section#section-epsof-in-action h4:first-of-type {
        margin-top: 40px;
    }
    .upcoming-events {
        display: block;
        float: none;
        margin: 0 auto;
        text-align: center;
    }
}
@media screen and (max-width: 1000px) {
    html, body {
        font-size: 16px;
    }
    #page-footer {
        font-size: 9px;
    }
}
@media (max-width: 992px) {
    .navbar {
        justify-content: flex-end !important;
    }
}
@media screen and (max-width: 800px) {
    html, body {
        font-size: 14px;
    }
    #page-footer {
        font-size: 8px;
    }
}
@media screen and (max-width: 768px) {
    #site-logo img {
        width: 90px;
    }
    .dmbs-main {
        padding-right: 0;
        padding-left: 0;
    }

    section.section-background {
        background-attachment: scroll;
        background-size: cover;
    }
    .page-template-default .dmbs-main {
        padding-top: 80px;
    }
    .page-template-default .outer-container.two-column,
    .page-template-default .outer-container.one-column {
        padding-right: 30px;
        padding-left: 30px;
    }
    blockquote {
        padding: 50px;
    }
    .page-template-default .page-image-block {
        display: block;
        float: none;
        margin-left: auto;
        margin-right: auto;
    }

    .bios.board-of-directors {
        max-width: 100%;
    }
}
@media screen and (max-width: 600px) {
    html, body {
        font-size: 12px;
    }
    #page-footer {
        font-size: 8px;
    }
}
@media screen and (max-width: 375px) {
    html, body {
        font-size: 9px;
    }

    .dmbs-main {
        margin-top: 50px;
    }

    .dmbs-content-wrapper {
        padding: 0;
    }

    .dmbs-header-nav-container {
        margin: 0 0 0 5px;
    }

    .page-template-default .dmbs-content-wrapper {
        margin-top: 20px;
    }

    .page-template-default .dmbs-main {
        padding-top: 0;
    }

    #page-header {
        height: 60px;
    }

    #page-footer {
        padding: 10px;
        font-size: 6px;
    }

    #page-footer .footer-button {
        margin: 0 20px 0 5px;
        padding: 0.5em 1em;
    }

    #site-logo {
        top: 20px;
        left: 25px;
    }

    #site-logo img {
        width: 55px;
    }

    #site-title {
        top: 25px;
        left: 100px;
    }

    section {
        padding: 0 20px;
    }

    section#section-intro {
    }

    section#section-fundraising {
        font-size: 8px;
    }

    section#section-fundraising-status {
        font-size: 8px;
    }

    section#section-epsof-in-action {
        font-size: 8px;
    }

    .upcoming-events {
        display: block;
        float: none;
        margin: 0 auto;
        text-align: center;
    }

    .upcoming-events .event img {
    }

    .bio .headshot,
    .bio .headshot img,
    .bio .headshot .headshot-placeholder {
        width: 78px;
        height: 97px;

    }
    .upcoming-events {
        max-width: 100%;
    }
}
@media screen and (max-width: 600px) {
}
@media screen and (max-width: 600px) {
}
@media screen and (max-width: 600px) {
}





