:root {
    --main-color: white;
    --secondary-color: red;
    --third-color: black;
    --nav-height: 3rem;
    --footer-height: 2rem;
    --title-font-size: 30px;
    --normal-font-size: 20px;

    font-size: var(--normal-font-size);
    font-family: sans-serif;
    box-sizing: border-box;
}

html,
body {
   margin:0;
   padding:0;
   height:100%;
}


body {
    color: var(--third-color);
    background-color:var(--main-color);
}

h1{
    font-size: 2rem;
}

#wrapper{
    min-height:100%;
   position:relative;
   padding-bottom: var(--footer-height);
}

a{
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

@media only screen and (max-width:900px) {
    section.content {
        padding: 0;
        margin: 0;
    }
}


@media only screen and (min-width:900px) {
    section.content {
        padding: 2vw;
        margin: 0;
    }
}

/* navbar */ 

nav {
    top: 0;
    width: 100%;
    height: var(--nav-height);
    position: fixed;
    background: var(--secondary-color);
    padding: 0;
    display: flex;
    justify-content: space-around;  
    align-items: center; 
    z-index: 1000;
}

a.brand-title {
    font-size: var(--title-font-size);
    line-height: var(--nav-height);
    color: var(--main-color);
    font-weight: bold;
    padding: 0;
    text-decoration: underline;
    cursor: pointer;
}

nav ul {
    margin: 0;
    line-height: var(--nav-height);
    display: flex;
    flex-wrap: nowrap;
}

nav ul li{
    display: inline-block;
    line-height: var(--nav-height);
    padding: 0 0.5rem;
    margin: 0;
}

nav ul li a{
    color: var(--main-color);
}

nav .menu {
    display: none;
    cursor: pointer;
}

nav .menu div{
    background-color: var(--main-color);
    width: 25px;
    height: 0.4vh;
    margin: 5px;
}

@media only screen and (max-width:915px) {
    body {
        overflow-x: hidden;
    }

    nav ul{
        opacity: 90%;
        position: absolute;
        right: 0;
        top: var(--nav-height);
        background-color: var(--secondary-color);
        display: flex;
        flex-direction: column;
        transform:translateX(100%)
    }

    nav .menu{
        display: block;
    }
    
    
}

.nav-active {
    transform: translate(0%);
}

/* footer */

footer {
    line-height: var(--footer-height);
    width: 100%;
    background-color: var(--secondary-color);
    display: flex;
    justify-content: space-around;
    position: absolute;
    bottom: 0;
}

footer a {
    color:var(--main-color);
}

/* section contents */

main{
    margin-top: var(--nav-height);
}

.flex-container {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

section.content h1, section.content p{
    text-align: center;
}

.flex-element {
    padding: 0.5rem 2rem;
    box-shadow: 0 0 0.2rem var(--third-color);
    border-radius: 0.1rem;
    margin: 0.3rem;
    min-width: 11rem;
}