:root {
    --primary-color: white;
    --secondary-color: black;
    --HI-blue: rgb(0, 54, 148);

    --main-font: Inter;
    --secondary-font: 'Libre Baskerville';
    --third-font: 'Josefin Sans';

    --main-font-color: black;
    --secondary-font-color: rgb(35, 35, 35);
}
header, nav {
    padding: 0;
    margin: 0;
}
nav {
    grid-template-columns: 1fr 2fr;
    grid-template-rows: 1fr;
    justify-content: space-between;
    z-index: 5;

    font-family: var(--secondary-font);
    background-color: var(--primary-color);
    color: var(--secondary-font-color);

    display: grid;
    position: fixed;
    left: 0;
    width: 100%;
    height: 110px;
}
#top-nav-list {
    list-style: none;
    font-size: 1rem;
    font-weight: bold;

    display: flex;
    justify-content: space-between;
    justify-self: end;

    width: 96%;
    max-width: 600px;
    padding-right: 2vw;
    padding-inline-start: 2vw;
    margin: auto 0;

}
a {
    text-decoration: none;
    color: var(--secondary-font-color);
}
a:hover {
    text-decoration: none;
}
#sidebar a {
    color: rgba(255, 255, 255, 0.85);
}
ul li a:hover {
    text-decoration: underline;
}
#logo {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: 1fr;
}
#logo-name {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;

    padding: 18px 0 20px 2vw;
    height: 70%;
}
#logo-name h3 {
    font-size: 1.8rem;
    font-weight: 900;
    color: var(--HI-blue);

    align-self: center;

    margin: 0;
    text-decoration:none !important
}
#logo-name h3:first-child {
    align-self: end;
}
#logo-name h3:last-child {
    align-self: start;
}
#logo-picture {
    justify-self: start;
    padding: 22px 0 20px 2vw;
    height: 70px;
}

#hamburger-menu {
    display: none;
}
.hamburger-bar {
    margin: 3px;
    height: 4px;
    width: 30px;
    border-radius: 6px;

    background-color: var(--secondary-color);
}

#sidebar {
    z-index: 10;
    position: fixed;
    top: 0;
    height: 100vh;
    width: clamp(240px, 50vw, 400px);
    border-right: 3px solid white;
    background-color: var(--HI-blue);

    will-change: transform;
    transition: transform 0.5s ease;
    transform: translateX(-100%);
}
#sidebar.visible {
    display: block;
    transform: translateX(0);
}
#sidebar h2 {
    color: rgba(245, 245, 245, 0.9);
    margin-left: 6vw;
    margin-top: 5vh;

    font-family: var(--secondary-font);
    font-size: clamp(2.3rem, calc(2.3rem + 0.5vw), 5rem);
}
#sidebar ul {
    list-style: none;
    font-family: var(--third-font);
    font-size: clamp(1.9rem, calc(1.9rem + 0.5vw), 5rem);
    color: rgba(255, 255, 255, 0.85);

    margin-left: 6vw;
    padding-left: 0;
}
#sidebar li {
    margin-top: 20px;
}
.arrow {
    float: right;

    margin: 0;
    margin-right: 10%;
    padding: 0;

    border-bottom-right-radius: 5px;
    border-right: 4px solid white;
    border-bottom: 4px solid white;
    width: 15px;
    height: 15px;

    rotate: -45deg;
}

@media only screen and (max-width: 700px) { 
    #top-nav-list {
        display: none;
    }
    #hamburger-menu {
        display: block;
        list-style: none;
        justify-self: end;
        align-self: center;

        margin-right: 30px;
        margin-top: 35px;
        padding-left: 15px;

        height: 24px;
    }
}