/* Main styles */

:root {
    --main-background-color: rgba(37, 40, 66, 1); 
    --accent-color: rgb(252, 231, 200);
    --highlight-color: rgb(248, 185, 91);
}

html {
    scroll-behavior: smooth;
    font-size: 18px;
}

body {
    background-color: var(--main-background-color);
    font-family: 'Outfit', sans-serif;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
    color: var(--accent-color);
}

.accent {
    color: var(--highlight-color);
}

/* Navbar and related styles */

.navbar {
    background-color: var(--main-background-color);
    position:fixed;
    width: 75%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 3px solid var(--accent-color);
}

.brand {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo {
    font-size: 3rem;
}

.name { 
    margin: none;
    font-size: min(2rem, 4vh);
    font-family: Lobster, sans-serif;
    margin-left: 1rem;
}

.nav-bar-buttons {
    display: flex;
    justify-content: space-between;
    width: 40%;
}

.nav-button {
    border: 2px solid var(--main-background-color);
    cursor: pointer;
    text-decoration: none;
    color: var(--accent-color);
}

.nav-button:hover {
   border-bottom: 2px solid var(--highlight-color);
}

/* Header and related styles */

header {
    margin-top: 20vh;
    height: 80vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 75%;
}

.intro-container {
    display: flex;
    align-items: center;
    width: 100%;
}

.intro {
    font-size: 1.2rem;
}

.profilePic { 
    --base-size: min(50vh, 60vw);
    width: var(--base-size);
    height: var(--base-size);
    border-radius: var(--base-size);
    margin: 0.5rem;
    border: 4px solid var(--accent-color);
    padding: 0.3rem;
}

.resume-button {
    cursor: pointer;
    font-size: 1.5rem;
    color: var(--main-background-color);
    margin-top: 2rem;
    width: 25%;
    border-radius: 100rem;
    background-color: var(--accent-color);
    text-decoration: none;
    text-align: center;
    padding: .5rem;
}

/* Main and related styles */

main {
    display: flex;
    flex-direction: column;
    margin: auto;
    align-items: center;
    width: 75%;
}

.about-container {
    display: flex;
    flex-direction: column;
    width: 75%;
}

.section-title {
    border-bottom: 3px solid var(--accent-color);
    width: 100%;
    text-align: center;
    font-size: 2rem;
    font-family: Lobster, sans-serif;
}

.projects {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}

.project-card {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.project-card-image {
    --base-size: 30vw;
    width: var(--base-size);
    height: calc(var(--base-size)/2);
    margin: 1rem;
    border-radius: 5px;
}


/* Footer and related styles */

footer {
    width: 75%;
    height: 50vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.contact-container {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
}

.img-link {
    --base-size: 10vh;
    padding:0.2rem;
    width: var(--base-size);
    height: var(--base-size);
    border: 3px solid var(--main-background-color);
    border-radius: 10rem;
}

.img-link:hover{
    border: 3px solid var(--accent-color);
    border-radius: 10vw;
}

/* Canvas and related styles */

#canvas1 {
    border: 3px solid var(--accent-color);
    cursor: none;
    border-radius: 5px;
}

#backCanvas {
    margin: 0;
    padding: 0;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    
}

.read-text {
    background-color: rgba(37, 40, 66, 0.7);
}

.flx {
    display: flex;
}

.flxc {
    display: flex;
    flex-direction: column;
}

.jc-eve {
    justify-content: space-evenly;
}

.ai-eve {
    align-items: space-evenly;
}

.w100 {
    width: 100%;
}

.h100 {
    height: 100%;
}

.jc-cnt {
    justify-content: center;
}

@media screen and (max-width: 800px) {
    html {
        scroll-behavior: smooth;
        font-size: 12;
    }

    .profilePic { 
        --base-size: min(50vh, 50vw);
        width: var(--base-size);
        height: var(--base-size);
        border-radius: var(--base-size);
        margin: 0.5rem;
        border: 4px solid var(--accent-color);
        padding: 0.3rem;
    }

    header {
        margin-top:10vh;
        display: flex;
        align-items: center;
        flex-direction: column;
        width: 75%;
    }

    .intro-container {
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
    }

    .navbar {
        background-color: var(--main-background-color);
        position:fixed;
        width: 75%;
        display: flex;
        flex-direction: column;
        
        border-bottom: 3px solid var(--accent-color);
    }

    .nav-bar-buttons {
        align-self: flex-start;
        width: 100%;
    }

    .project-card-image {
        --base-size: 50vw;
        width: var(--base-size);
        height: calc(var(--base-size)/2);
        margin: 1rem;
        border-radius: 5px;
    }

    .logo {
        font-size: 8vw;
    }
    
    .name { 
        margin: none;
        font-size: 6vw;
        font-family: Lobster, sans-serif;
        margin-left: 1rem;
    }
}