#menu-toggle {
    display: none;
    background: none;
    border: none;
    font-size: 2rem;
    cursor: pointer;
}

@media (max-width: 1080px) {
    #menu-toggle {
        display: block;
        background: none;
        border: none;
        font-size: 2rem;
        cursor: pointer;
        margin-left: auto;
        margin-right: 1rem;
        z-index: 1001;
        position: relative;
    }

    #logo-container p {
        padding: .25rem;
        font-size: 1.75rem;
        letter-spacing: .2rem;
    }

    #central-logo {
        width: 60vw;
    }

    nav {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background-color: rgba(255, 255, 255, 0.98);
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 1.5rem;
        z-index: 1000;
    }

    nav.show {
        display: flex;
    }

    nav div {
        width: 80%;
        text-align: center;
    }

    nav a button {
        width: 100%;
        max-width: 300px;
        font-size: 1.2rem;
        padding: 1rem;
    }

      footer {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 1.5rem;
        padding: 2rem 1rem;
        height: initial;
    }

    footer > div {
        width: 100%;
        display: flex;
        justify-content: center;
        gap: 1rem;
        flex-wrap: wrap;
    }
    
    .footer-mid {
        order: -1;
        flex-direction: column;
        align-items: center;
    }

    .footer-logo {
        max-width: 100px;
        height: auto;
    }

    .footer-mid p {
        margin: 0.5rem 0;
        font-size: 0.9rem;
    }

    .footer-mid a img {
        width: 30px;
        height: 30px;
    }

    .software-contents {
        min-width: 80vw;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        padding: 1rem;
    }

    .home-contents {
        min-width: 80vw;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        padding: 1rem;
    }

    .software-card {
        width: initial;
        margin-bottom: 2rem;
    }

    .software-card img{
        width: 80vw;
        height: initial;
    }

    .home-card {
        width: initial;
        margin-bottom: 2rem;
    }

    .home-card img{
        width: 80vw;
        height: initial;
    }

    .home-card img{
        width: 80vw;
        height: initial;
    }


    .training-asce7-mod {
        order: -1;
        flex-direction: column;
        align-items: center;
    }


    .software-card-description a{
        display: flex;
        flex-direction: column;
    }


    .home-card-description a{
        display: flex;
        flex-direction: column;
    }

    .other-training-contents{
        min-width: 80vw;
        flex-direction: column;
    }

    .other-training-contents a{
        width: initial;
    }

    .foundation-failure-image-container {
        display: flex;
        flex-direction: column;
    }

    .foundation-failure-image {
        max-width: 80vw;
    }

    .split-view {
        flex-direction: column;
    }

    .split-view a{
        max-width: initial;
        margin: 1rem;
    }

}

