html {
    scroll-behavior: smooth;
}
a, a:active, a:hover, a:visited {
    color: black;
}

h1 {
    font-size : 1.4em;
    font-weight: normal;
    line-height: 1;
}
h2 {
    font-size: 1.5em;
    line-height: 1;
    text-align:center;
}
img.img-fluid {
    max-width: 100%;
    height: auto;
    display: block;
}
header.mdc-layout-grid {
    background-color: transparent;
    position:absolute;
    z-index:100;
    padding: 5px 20px;
    min-width: 100%;
}
/*header.mdc-layout-grid .mdc-layout-grid-row {*/
/*    background-color: transparent;*/
/*    flex-direction: row;*/
/*    justify-content: space-between;*/
/*}*/
header.mdc-layout-grid .mdc-layout-grid__cell img{
    max-height: 50px;
}
header.mdc-layout-grid .mdc-layout-grid__cell nav {
    margin: 10px;
    float:right;
}
header.mdc-layout-grid .mdc-layout-grid__cell nav .mdc-button {
    color: white;
    padding: 0;
}

header.mdc-layout-grid .mdc-layout-grid__cell nav .mdc-button.sign-in-button {
    margin-left:24px;margin-right: 10px;
}
header.mdc-layout-grid .mdc-layout-grid__cell nav .mdc-button.join-button {
    border: 1px solid white;
}
header.mdc-layout-grid .mdc-layout-grid__cell nav a {
    color: white;
    padding: 10px 30px;
}

.hero > .mdc-layout-grid {
    min-height: 100vh;
}
.hero > .mdc-layout-grid h1 {
    padding-top: 40vh;
}
.hero .mdc-layout-grid {
    padding-top: 64px;
    background-position: center;
    background-size: cover;
    background-color: rgba(0,0,0,0.5);
}
.hero .mdc-layout-grid h1 {
    text-align: center;
    color: white;
    font-weight: normal;
    line-height: 2.3rem;
    font-size: 2.3rem;
}
@media (min-width: 840px){
    .mdc-layout-grid__cell--offset-1 {
        grid-column-start: 2;
    }
    .mdc-layout-grid__cell--offset-2 {
        grid-column-start: 3;
    }
    .mdc-layout-grid__cell--offset-3 {
        grid-column-start: 4;
    }
    .mdc-layout-grid__cell--offset-4 {
        grid-column-start: 5;
    }
}

.mdc-select--focused .mdc-select__dropdown-icon {
    background: url("data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%23000%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.54%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E") no-repeat center;
}
.mdc-text-field:not(.mdc-text-field--disabled),
.mdc-select:not(.mdc-select--disabled) .mdc-select__anchor {
    background-color: transparent;
}
.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label,
.mdc-select:not(.mdc-select--disabled).mdc-select--focused .mdc-floating-label {
    color: black;
}
.mdc-list-item.mdc-list__item--full-bleed-divider {
    border-top: 1px solid silver;
}

.mdc-select.es-mdc-select .mdc-select__menu .mdc-list .es-mdc-select-multiple-item--selected {
    background-color: black;
    color: white;
}
.mdc-select.es-mdc-select .mdc-select__menu .mdc-list .mdc-list-item--selected::before,
.mdc-select.es-mdc-select .mdc-select__menu .mdc-list .es-mdc-select-multiple-item--selected::before{
    background-color: transparent;
}
.es-mdc-select.mdc-select.error-missing {
    background-color: #ffc0c0;
    animation-name: flash;
    animation-duration: 0.3s;
    animation-iteration-count: 2;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
}

.scroll-to-content {
    position: absolute;
    width: 100%;
    text-align: center;
    margin-top: -50px;
}
.scroll-to-content a {
    color: white;
    opacity: .6;
}
.scroll-to-content a .material-icons {
    transform: rotate(90deg);
    font-size: 3em;
}

.mdc-layout__content {
    overflow-x: initial;
    overflow-y: initial;
    padding: 64px 0 0 0;
    display: block;
}
.mdc-layout__content.has-hero{
    padding: 0;
}

.footer {
    background-color: #313131;
    color: white;
}
.footer a {
    color: white;
}
.footer .social-links {
    padding: 2rem 0;
    text-align: center;
}
.footer .social-links a {
    margin: 0 10px;
    border: 1px solid white;
    border-radius: 50%;
    height: 32px;
    width: 32px;
    text-align: center;
    line-height: 32px;
}
.footer .footer-menu {
    padding: 2rem;
    text-align: center;
}
.footer .footer-menu nav{
    display: flex;
    justify-content: space-between;
}
.footer .footer-menu nav .sign-in-button,
.footer .footer-menu nav .join-button,
.footer .footer-menu nav .close-menu {
    display: none;
}
.footer nav a {
    font-size: 16px;
}
.footer .footer-menu .contact-info {
    font-size:0.9rem;
    color:whitesmoke;
}
.footer .footer-menu .contact-info .material-icons {
    font-size: 1rem;
    padding: 0 10px;
    margin: 5px 0;
    vertical-align: sub;
}
.footer .footer-menu .contact-info a {
    margin-left:20px;
}

.d-flex {
    display: flex;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-justify {
    text-align: justify;
}
.text-center {
    text-align: center;
}

#session-message {
    background-color: rgba(253, 201, 123, 0.5);
    padding: 10px;
}
#session-success {
    background-color: rgba(10, 191, 10, 0.5);
    padding: 10px;
}
#session-errors {
    background-color: rgba(255,0,0,0.6);
    padding: 10px;
}
#session-errors ul {
    margin-top: 10px;
}
#session-errors ul li {
    list-style-type: disc;
    margin-left: 20px;
}

.fixed-aspect-220 {
    max-height: 220px;
    min-height: 220px;
    min-width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
header.mdc-layout-grid .nav-container .close-menu,
header.mdc-layout-grid .nav-menu-controller {
    display: none;
}

@media (max-width: 768px) {
    header.mdc-layout-grid .nav-menu-controller {
        display: block;
        color: white;
        text-align: right;
        padding-top: 10px;
    }
    header.mdc-layout-grid .nav-container {
        position: absolute;
        padding-left: 20px;
        right: 0;
        top: 0;
        background-color: rgba(0,0,0,.5);
        display: none;
    }
    header.mdc-layout-grid .nav-container.mdc-layout-grid__cell--span-2-phone nav a {
        display: block;
        padding: 10px;
        margin-bottom: 10px;
    }
    header.mdc-layout-grid .nav-container.mdc-layout-grid__cell--span-2-phone nav a.close-menu {
        text-align: right;
        margin-top: -5px;
    }
    header.mdc-layout-grid .nav-container.mdc-layout-grid__cell nav .mdc-button.sign-in-button {
        margin: 0 0 10px 0;
    }
    header.mdc-layout-grid .nav-container.mdc-layout-grid__cell nav .mdc-button.join-button {
        display: inline-flex;
        margin-left: 10px;
        text-align: center;
    }

    .hero > .mdc-layout-grid {
        min-height: 100vh;
    }
    .hero > .mdc-layout-grid h1 {
        padding-top: 40vh;
    }

    .footer .footer-menu {
        padding: 0 10px 20px 10px;
    }
    .footer .footer-menu nav {
        flex-wrap: wrap;
        justify-content: space-evenly;
        padding: 0 20px;
    }
    .footer .footer-menu nav a {
        margin-bottom: 5px;
    }
    .footer .footer-menu .contact-info a {
        display: block;
        margin-left: 0;
    }


}
