:root {
    --primary-bg-color: #234152;
    --text-color: #e6e6e6;
    --link-color: hsl(0, 0%, 90%);
    --header-bg-color: #000000;
    --nav-bg-color: #000000;
    --link-clicked-color: #287d9e;
    --nav-width: 239px; /* icon width */
    --bannar-width: 970px;
}

html, body {
    display: flex;
    flex-direction: column;
    background-color: var(--primary-bg-color);
    color: var(--text-color);
    height: 100%;
    margin: 0;
    font-family: 'Courier New', Courier, monospace;
}

a {
    /* text-decoration: none; */
    color: var(--link-color);
}

header {
    display: flex;
    height: 100px;
    width: 100%;
    background-color: var(--header-bg-color);
}

header a {

    text-decoration: none;
}

.ascii-banner {

    font-family: 'Courier New', Courier, monospace;
    font-size: xx-small;
}

.container {
    display: flex; /* Flex container for nav and main */
    height: 100%;
}

.container p {
    margin-top: 15px;
}

nav {
    width: var(--nav-width);
    background-color: var(--nav-bg-color);
    flex-grow: 0;
    flex-shrink: 0; /* ensure the main element resizes, not the nav bar */
}

nav ul {
    list-style-type: none;
    padding: 20px;
    margin: 0;
}

nav ul li {
    font-size: larger;
    text-align: left;
    padding: 10px;
}

nav a {
    padding: 5px;
    text-decoration: none;
}

nav a:active {
    color: var(--link-clicked-color);
}

main {
    flex-grow: 1;
    flex-shrink: 1;
    padding-left: 20px;
}

.content {
    padding: 10px;
    width: 1000px;
}

.link-list {
    padding-left: 20px;
    /* list-style: none; */
}

.link-list li { /* for link or other element lists, so they arent so cluttered */
    /* margin-top: 15px; */
    margin-bottom: 15px;
    padding-bottom: 5px;

}

@media (max-width: 600px) { /* Adjust the breakpoint as needed */

    .container {
        flex-direction: column; /* Stack navigation and content vertically */
        /* height: calc(100% - 100px); */
    }

    header {
        flex-direction: column;
        text-align: center;
        position: relative;
        height: fit-content;
    }

    header img {
        /* flex-grow: 1; */
        width: 100%;
    }

    .ascii-banner {
        font-size: 5.5px;
    }

    nav {
        width: 100%; /* Full width on small screens */
    }

    nav ul {
        padding-top: 0px;
        padding-bottom: 0px;
    }

    nav ul li {
        text-align: center;
    }
}