﻿#header-logo-box {
    height: 95%;
    margin: .5em;
    display: flex;
    flex-direction: row;
    width: 401px;
    float: left
}

    #header-logo-box > :first-child {
        flex: 1 1
    }

    #header-logo-box > :last-child {
        flex: .5 0
    }

@media(min-width:768px) {
    #header-logo-box {
        flex-direction: column
    }
}

.navbar-header {
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between
}

    .navbar-header:after, .navbar-header:before {
        display: none
    }

#content-viewport {
    position: fixed;
    top: var(--header-offset);
    overflow-y: scroll;
    overflow-x: hidden;
    width: 100vw;
    height: calc(100vh - var(--header-offset));
    --header-offset: 90px
}

@media(min-width:768px) {
    .navbar-header {
        flex-direction: row
    }

    #content-viewport {
        --header-offset: 165px
    }
}

@media(min-width:992px) {
    #content-viewport {
        --header-offset: 93px
    }
}

#free-file-logo {
    width: 401px;
    max-width: calc(100vw - 10ch)
}

footer {
    display: flex;
    flex-direction: column;
    background-color: #f4f4f8;
    color: #7a7f8b;
    text-align: center;
    padding-bottom: 40px
}

.footer-list {
    text-align: left;
    min-width: 20ch
}

    .footer-list h4 {
        color: #727682;
        font-weight: 900
    }

    #landing-footer .footer-links a:not(.panel-title), .footer-list .footerlinks a {
        color: #727682;
        font-weight: 400;
        font-size: 13px;
        text-decoration: none
    }

#footer-logo {
    width: 50px;
    height: 50px
}

.footer-section {
    display: flex;
    flex-flow: column;
    justify-content: space-between
}

    .footer-section #footer-description {
        font-size: 14px;
        line-height: 1.571
    }

@media(min-width:1200px) {
    .footer-section #footer-description {
        margin-right: 125px
    }
}

@media screen and (max-width:767px) {
    .footer-section #footer-description {
        margin: 15px 30px 30px
    }
}

@media(max-width:767px) {
    .footer-section #footer-logo {
        margin: 30px auto 15px
    }
}

@media(min-width:768px) {
    footer {
        text-align: left
    }

    .footer-section:first-child {
        flex-direction: row;
        margin-bottom: 55px
    }

        .footer-section:first-child > :not(:last-child) {
            margin-right: 75px
        }

    .footer-section:last-child {
        flex-direction: row-reverse
    }
}

#footer-certifications {
    grid-auto-flow: column;
    grid-template-rows: repeat(2,1fr);
    grid-gap: 1rem;
    align-items: center;
    justify-items: center
}

@media(min-width:768px) {
    #footer-certifications {
        grid-template-rows: 1fr
    }
}
