:root {
    --orangeAccent: #ff712b;
    --darkerOrange: #cc5500;
    --blueAccent: #5e8cdb;
    --darkerBlue: #3a5980;
    --sectionColor1: #111;
    --sectionColor2: #222;
}

body {
    background-color: var(--sectionColor1);
    background-color: var(--sectionColor1);

    margin: 0;
    padding: 0;

    font-family: monospace;
    color: white;
}

h1 {
    font-size: 2.5rem;
}
h2 {
    color: var(--blueAccent);
    font-weight: bold;
    text-align: center;
    font-size: 1.5rem;
    margin-top: 0;
}
h3 {
    color: var(--orangeAccent);
    font-weight: bold;
    font-size: 1rem;
}

nav {
    background-color: black;
    z-index: 10;
    position: fixed;
    top: 0;
    left: 0;

    display: flex;
    justify-content: center;
    gap: 0rem;

    width: 100%;

    font-size: 1rem;

    a {
        color: var(--orangeAccent);
        text-decoration: none;

        border: solid transparent .25rem;
        padding: 1rem 3rem;
        @media (max-width: 800px) {
            padding: 1rem 2rem;
        }
        @media (max-width: 500px) {
            padding: 1rem 1rem;
        }
        

        &:hover {
            border-block: solid var(--orangeAccent) .25rem;
        }
        &:active {
            border-block: solid var(--darkerOrange) .25rem;
        }
    }
}

header {
    display: flex;
    flex-direction: column;
    position: relative;

    img {
        z-index: 1;
        height: 100vh;
        object-fit: cover;
    }

    .filter {
        z-index: 2;
        position: absolute;
        left: 0;
        top: 0;

        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.7);
    }

    .headerText {
        z-index: 3;
        position: absolute;
        bottom: 20%;

        width: 100%;
        justify-items: center;
        h2 {
            color: var(--orangeAccent);
        }
    }
}

.sectionDivider {
    width: auto;
    height: .25rem;
    margin: .3rem 1rem;
    background-color: var(--orangeAccent);

    border-radius: 1rem;
}

section {
    margin-inline: auto;
    
    display: flex;
    flex-direction: column;

    padding: 1rem;

    .showcase {
        display: flex;
        flex-wrap: wrap;
        gap: 1rem;
        justify-content: center;
        
        .card {
            display: flex;
            flex-direction: column;
            gap: 1rem;
            width: 100%;
            max-width: 500px;

            background-color: var(--sectionColor2);
            
            text-decoration: none;
            color: white;

            padding: 1rem;
            border-radius: 1.5rem;
            
            h3, p, ul {
                margin: 0px;
            }

            ul {
                padding-left: 1.5rem;
            }

            .gallery {
                display: flex;
                flex-direction: column;
                gap: .5rem;
            }

            img, video {
                width: 100%;
                height: auto;
                border-radius: 1rem;
            }
        }
    }
}

.contactSection {
    max-width: 500px;
    margin: auto;

    .contactUpper {
        display: flex;
        justify-content: space-between;
        align-items: center;
        height: min-content;
        
        @media (max-width: 500px) {
            flex-direction: column;
            gap: 1rem;
        }

        img {
            height: 100px;
            max-width: auto;
            border: solid var(--sectionColor2) 2px;
            border-radius: 10rem;
        }

        .contactInfo {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            gap: .5rem;
            @media (max-width: 500px) {
                align-items: center;
            }

            & * {
                margin: 0;
            }

            h2 {
                text-align: left;
            }

            .socialLinks {
                display: flex;
                gap: .5rem;

                a {
                    color: var(--orangeAccent);
                    text-decoration: none;
                    border: solid var(--blueAccent) 2px;
                    border-radius: 1rem;
                    padding: .25rem .75rem;

                    &:hover {
                        border: solid var(--orangeAccent) 2px;
                    }
                    &:active {
                        background-color: var(--sectionColor2);
                    }
                }
            }
        }
    }

    .resumeButton {
        background-color: var(--orangeAccent);
        color: black;
        text-decoration: none;

        border: solid transparent 2px;
        border-radius: 1rem;
        padding: 1rem 2rem;
        width: fit-content;
        margin: auto;

        &:hover {
            border: solid var(--blueAccent) 2px;
            color: var(--darkerBlue);
        }
        &:active {
            background-color: var(--darkerOrange);
        }
    }
}

.backToTop {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 1rem;

    a {
        background-color: var(--sectionColor1);
        color: var(--orangeAccent);
        text-decoration: none;

        padding: .5rem 3rem;
        border: solid var(--orangeAccent) 2px;
        border-radius: 1rem;
        &:hover {
            border: solid var(--blueAccent) 2px;
            color: var(--darkerBlue);
        }
        &:active {
            background-color: var(--darkerOrange);
        }
    }
}