* {
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style-type: none;
}

.flex {
    display: flex;
}

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

.flex-row {
    flex-direction: row;
}

.gap{
    gap: 1em;
}

.grid {
    display: grid;
}

.grid-2 {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 1em;
}

.grid-4 {
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 1em;
}

.grid-span-2{
    grid-column: span 2;
}

.grid-span-3{
    grid-column: span 3;
}

.grid-span-4{
    grid-column: span 4;
}

.underline{
    text-decoration: underline;
}

li {
    margin-left: 1vw;
}

.align-center {
    align-self: center;
}

.center {
    text-align: center;
}

.margin-column{
    margin-left: 5vw;
    margin-right: 5vw;
}

.visuImg {
    width: 100%;
    height: 100%;
    max-width: 15vw;
    max-height: 15vh;
}

/**** NavBar ****/
.navBar {
    min-height: 100vh;
    background: #004380;
    color: white;
    font-weight: bold;
    max-width: 25vw;
}

.navBar .logo{
    height: 8vh;
}

.navBar a{
    color: white;
}

.navBar a:visited {
    color: white;
}

.navBar .menu{
    padding: 1em;
}

.navBar li {
    padding-top: 1rem;
}

/*** Header ***/
.header {
    height: 5vh;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    position: relative;
    z-index: 10;
    align-items: center;
    justify-content: right;
}

/**** Content ****/
.main {
    width: 90vw;
    max-height: 100vh;
}

.content {
    background: #F5F5F5;
    position: relative;
    z-index: auto;
    padding-top: 2vh;
    min-height: 93vh;
}