﻿body {
    background-color: #ffffff;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.grid {
    display: grid;
    grid-template-columns: 10fr 20fr 70fr 10fr;
    grid-template-rows: auto auto 1fr auto;
    grid-template-areas:
        "logo logo header header"
        ". menu navside ."
        ". menu content ."
        "footer footer footer footer";
}

.menu{
    grid-area: menu;
    height: 30px;
    border-bottom: 1px solid gainsboro;
}

.logo {
    grid-area: logo;
    background-color: rgb(240, 240, 240);
    border-bottom: 2px solid gainsboro;
    border-right: 1px solid gainsboro;
    border-left: 1px solid gainsboro;

    display: flex;
    justify-content: center;
    align-items: center;
}

.nav-menu-main {
    grid-area: header;
    background-color: whitesmoke;
    border-bottom: 2px solid gainsboro;
    border-right: 1px solid gainsboro;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav-stages {
    grid-area: navside;
    border-bottom: 1px solid gainsboro;
    border-right: 2px solid gainsboro;
}
.menu-projects {
    grid-area: menu;
    border-right: 1px solid gainsboro;
    border-left: 2px solid gainsboro;
    min-height: 80vh;
}

main {
    grid-area: content;
    /*padding: 0px 5px;*/
    margin: 0;
    max-width: 2000px;
    min-height: 60vh;
    border-right: 2px solid gainsboro;
}

.grid > footer {
    grid-area: footer;
    background-color: whitesmoke;
    display: flex;
    flex-direction: column;
    line-height: 1.5;
    align-items: center;
    text-align: center;
    border: 1px solid gainsboro;
    padding: 5px 20px;
    border-top-width: 2px;
    font-size: 0.9em;
}
.grid > footer p{
    line-height: 140%;
    margin: 4px 0;
}
.grid > footer a{
    color: royalblue;
    text-decoration: none;
}
.grid > footer a:hover{
    color: blue;
}


.loading{
}
.loading p{
    margin: auto;
    width: 30em;
    padding: 30px 20px;
    background-color: white;
    border: 1px solid gainsboro;
    border-radius: 2px;
    font-size: 1.5em;
    letter-spacing: 2px;
    text-align: center;
    margin-top: 3em;
}

