﻿@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.4/font/bootstrap-icons.css");

html {
    font-size: 1rem;
    position: relative;
    min-height: 100%;
    background-color: #191923;
}

body {
    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
    margin-left: auto;
    margin-right: auto;
    width: 80%;
    /* Margin bottom by footer height */
    margin-bottom: 60px;
    background-color: #191923;
    color: #eeeeee;
}

@media (min-width: 1000px) {
    html {
        font-size: 1.1rem;
    }
}

@media (max-width: 600px) {
    body {
        font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
        margin-left: auto;
        margin-right: auto;
        width: 95%;
    }

    html {
        font-size: .9rem;
    }
}

p, li {
    color: #c3c3c3;
}

h2 {
    color: #eeeeee;
    margin: auto;
}

h3 {
    margin: auto;
}

h4 {
    margin: auto;
}


.masthead {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    background-color: #26262F;
}

/*Navigation*/
.navigation {

}

.navigation ul {
    display: flex;
    flex-direction: row;
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

    .navigation ul li {
        position: relative;
    }

        .navigation ul li::after {
            content: '';
            position: absolute;
            width: 100%;
            transform: scaleX(0);
            height: 2px;
            bottom: 0px;
            left: 0;
            background-color: #FFC300;
            transform-origin: bottom center;
            transition: transform 0.25s ease-out;
        }

        .navigation ul li:hover::after {
            transform: scaleX(1);
            transform-origin: bottom center;
        }

        .navigation ul li a {
            display: block;
            color: white;
            text-align: center;
            padding: 16px;
            text-decoration: none;
            font-size: 1.15rem;
        }

        .navigation ul li a:hover {
            background-color: #33333A;
            color: #FFC300;
        }
        
        .navigation ul li a:active {
            color: #FFC300;
        }

/*Links*/
.links {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.links ul {
    display: flex;
    flex-direction: row;
    list-style-type: none;
    overflow: hidden;
    margin: auto;
}

    .links ul li {
        display: flex;
        width: 50px;
        justify-content: space-between;
    }

        .links ul li::after {
            display: block;
            color: white;
            text-align: center;
            padding: 16px;
            text-decoration: none;
        }

        .links ul li a {
            display: flex;
            color: white;
            text-align: center;
            font-size: 28px;
            text-decoration: none;
        }

        .links ul li a:hover {
                color: #FFC300;
        }

/* Index */
.info .name {
    font-size: 20px;
    color: #EEEEEE;
}

.project {
    margin-top: .5rem;
}

    .project p {
        margin-top: .5rem;
    }

    .project a {
        color: #FFC300;
        text-decoration: none;
    }

p.projectname {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 18px;
}

.about {
    margin-top: 1rem;
    margin-bottom: 1rem;
    min-height: 245px;
}

.projects {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

p.name {
    padding-left: 1.5rem;
    margin: auto;
}

.headshot {
    float: left;
    width: 160px;
    overflow: hidden;
    margin-right: 15px;
    position: relative;
}

    .headshot img {
        width: 100%;
        height: 100%;
        transform: scale(2.5);
        transform-origin: 45% 20%;
    }

.skills {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.skill-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex: 1;
    flex-wrap: wrap;
}

    .skill-container .skill {
        display: flex;
        margin: 1rem;
        flex: 1 1 auto;
        -webkit-justify-content: inherit;
        justify-content: inherit;
    }

        .skill-container .skill i {
            font-size: 4rem;
        }

        .skill-container .skill i:hover {
            color: #FFC300;
            cursor: pointer;
        }       

/* Resume */
p.content, p.header-address {
    padding-left: 0rem;
    margin: auto;
}

p.header-contact {
    padding-left: 0rem;
    margin: auto;
    text-align: right;
}

@media (max-width: 575px) {
    p.header-contact {
        padding-left: 0rem;
        margin: auto;
        text-align: left;
    }
}

p.info {
    padding-left: 3rem;
    margin: .5rem;
}

.experience {
    margin-top: 1.5rem;
}

.references {
    margin-top: 1.5rem;
}

.download {
    margin-bottom: 1rem;
    float: right;
    margin-left: 1rem;
}

.btn {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

    .btn:hover {
        cursor: pointer;
    }

.job .job-header {
    margin-bottom: 5px;
}

.resume {
    margin-top: 1rem;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

    .resume .resume-header {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }

        .resume .resume-header resume-header-child {
            flex-basis: auto;
        }

    .resume ul {
        margin-top: .7rem;
    }

.job .job-header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

    .job .job-header .job-header-child {
        flex-basis: auto;
    }

@media (max-width: 1000px) {
    .resume .resume-header .resume-header-child {
        font-size: .9rem;
    }

    .download {
        display: none;
    }
}