* {
    /*outline: 1px solid black;*/
}

html {
    font-family: "Roboto", sans-serif;
    line-height: 1.5;
    color: #555555;
}

body {
    margin: 0;
    max-width: 100vw;
    overflow-x: hidden;
}

.grey {
    background-color: #f7f7ff;
    width: 100vw;
}

.grid_item__bio {
    margin: 0 auto 2vw;
    max-width: 1140px;
    padding: 5em 1em 1em;
}

.biography {
    display: flex;
    flex-direction: row;
    gap: 3em;
}

.biography__photo--name {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.biography__photo--name h2 {
    margin-bottom: 1vh;
}

.biography__photo--name p {
    margin-top: 0;
    color: #ff9301;
}

.section__heading {
    position: relative;
    display: inline-block;
    z-index: 1;
    margin-bottom: 0;
}

.section__heading--circ {
    position: absolute;
    top: 15px;
    left: -5px;
    opacity: 0.5;
    z-index: -1;
    height: 25px;
    width: 25px;
}

.biography__photo--image {
    width: 200px;
    height: 200px;
    border-radius: 50%;
}

.grid_item__skills {
    z-index: 0;
    margin: 2vw auto 0;
    max-width: 1140px;
    display: flex;
    flex-direction: column;
    padding: 1em;
}

.whatido {
    display: flex;
    flex-direction: column;
    margin-bottom: 2em;
}

.whatido__item {
    padding: 100px 2em 1em 2em;
    position: relative;
    background-color: white;
    overflow: hidden;
    border-radius: 0.75em;
}

.list {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: row;
    gap: 1em;
    justify-content: space-evenly;
    align-content: space-evenly;
}

.awards__item {
    padding-top: 1em;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-items: center;
    align-items: center;
    background-color: white;
    border-radius: 0.75em;
}

.awards__item--text {
    margin-top: 0.5em;
    font-weight: normal;
}

.awards__item--img {
    width: 25px;
    height: 25px;
}

.whatido__item--img {
    width: 150px;
    height: 150px;
}

.whatido__item--imgwrap {
    position: absolute;
    top: -50px;
    left: -40px;
    margin: 0;
}

.squiggly-line {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-content: flex-start;
    max-width: 1140px;
    margin: 0 auto;
    overflow: hidden;
    height: 8px;
}

.grid_item__header {
    margin: 0 auto;
    max-width: 1140px;
    padding: 1em 1em 0;
}

.header {
    display: flex;
    flex-direction: row;
    gap: 2em;
    justify-content: space-between;
    align-content: space-between;
}

.list__menu {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: row;
    gap: 1em;
    justify-content: flex-start;
    align-content: center;
}

.header__avatar {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.header__avatar--circ {
    opacity: 0.5;
    position: absolute;
    top: -300px;
    right: -375px;
    z-index: -1;
    width: 825px;
    height: 825px;
}

.header__avatar--photo {
    width: 320px;
    height: 320px;
    /*border-radius: 50%;*/
}

.right {
    max-width: 50%;
}

.navbar {
    margin-top: 2.5em;
    margin-bottom: 2.5em;
    height: 3em;
}

.header__text--hello,
.header__text--name,
.header__text--job {
    margin-top: 0;
    margin-bottom: 0;
}

.orange {
    color: #ff9301;
}

.header__text--name {
    font-size: 3em;
}

.header__text--hello {
    color: #0b0b15;
}

.navbar__item {
    border-bottom: 3px transparent solid;
}

.navbar__item:hover {
    border-bottom: 3px solid #ff9301;
}

.navbar__item--link {
    text-decoration: none;
    color: #555555;
}

h1, h2, h3, h4 {
    color: #0b0b15;
}

br {
    display: none;
}

.experience {
    margin: 0;
}

.grid_item__experience,
.grid_item__portfolio {
    max-width: 1140px;
    margin: 2vw auto 0;
    padding: 1em;
}

.experience_list {
    margin-top: 0;
    display: flex;
    flex-direction: column;
    gap: 1em;
    justify-content: center;
    list-style: none;
    padding: 0;
}

.experience_list__item {
    background-color: #f7f7ff;
    padding: 1em 2em;
    display: flex;
    flex-direction: row;
    gap: 1em;
    align-content: space-between;
    border-radius: 0.75em;
}

.experience_list__item--date {
    display: flex;
    flex-direction: column;
    gap: 0;
    justify-content: center;
    align-content: center;
    width: 50%;
}

.exp__button {
    padding: 0.3em 0.5em;
    width: 4.25em;
    border-radius: 0.3em;
    color: white;
}

.exp__button--orange {
    background-color: #ffa500;
}

.exp__button--grey {
    background-color: #555555;
}

.portfolio_grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    list-style: none;
    gap: 1em;
    padding: 0;
    /*margin: 0;*/
    justify-content: start;
}

.portfolio_grid__item {
    grid-column: span 2;
}

.portfolio__box {
    display: flex;
    flex-direction: column;
    align-content: flex-end;
    justify-content: flex-end;
    gap: 0;
}

.portfolio__item--heading {
    margin-bottom: 0;
}

.portfolio__box hgroup h4 {
    margin-bottom: 0;
}

.portfolio__box hgroup p {
    margin-top: 5px;
    font-size: 0.9em;
}

.portfolio__item--text {
    margin: 0;
}

.grid_item__contact {
    max-width: 1140px;
    margin: 2vw auto 0;
    padding: 1em;
}

.address__item {
    display: flex;
    flex-direction: row;
    gap: 1em;
    justify-content: flex-start;
    align-items: center;
    height: 30px;
}

.address__item img {
    height: 30px;
    width: 30px;
}

.contact_form {
    outline: none;
}

.contact_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2em;
}

.contact_grid__address,
.contact_grid__form {
    grid-column: span 1;
}

.contact_grid__address {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
    justify-content: center;
    align-content: flex-start;
}

.address__heading {
    margin-bottom: 0;
}

.address__item a {
    text-decoration: none;
    color: #0b0b15;
}

.contact_grid__map {
    grid-column: span 2;
    display: flex;
}

.contact_form {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1em;
}

.contact_form label {
    display: none;
}

.contact_form #name,
.contact_form #email {
    grid-column: span 1;
}

.contact_form #subject,
.contact_form #msg {
    grid-column: span 2;
}

.contact_form input {
    height: 40px;
    max-height: 40px;
}

.contact_form #msg {
    height: 100px;
}

.contact_form__button {
    display: flex;
    max-width: 5em;
    height: 2em;
    justify-content: center;
    align-items: center;
    background-color: #0b0b15;
    color: #f7f7ff;
    border-radius: 0.3em;
    border: none;
    outline: none;
    text-decoration: none;
}

input#msg {
    text-align: left;
    padding-bottom: 90px;
    padding-top: 0;
}

.grid_item__footer {
    margin: 0 auto;
    max-width: 1140px;
    max-height: 50px;
    padding: 1em;
}

.footer {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-content: center;
}

.links {
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-content: center;
    gap: 0.5em;
}

.links__item img {
    height: 30px;
    width: 30px;
}

@media only screen and (min-width: 1200px) {

}

@media only screen and (max-width: 1199px) and (min-width: 960px) {
    .squiggly-line {
        margin: 0 1em;
    }

    .list__menu {
        gap: 1em;
    }

    .right {
        max-width: 60%;
    }

    .header__text {
        max-width: 80%;
    }
}

@media only screen and (max-width: 959px) and (min-width: 560px) {
    .whatido__list {
        flex-direction: column;
    }

    .biography {
        flex-direction: column;
        gap: 1em;
    }

    .biography__photo {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .squiggly-line {
        margin: 0 1em;
    }

    .header__avatar {
        visibility: hidden;
    }

    .right {
        max-width: 100vw;
    }

    .navbar__item {
        flex-grow: 1;
        flex-shrink: 0;
    }

    br {
        display: block;
    }

    .portfolio_grid__item {
        grid-column: span 3;
    }

    .contact_grid div {
        grid-column: span 2;
    }
}

@media only screen and (max-width: 559px) {
    .whatido__list {
        flex-direction: column;
    }

    .awards__list {
        flex-direction: column;
    }

    .biography {
        flex-direction: column;
        gap: 1em;
    }

    .biography__photo {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .squiggly-line {
        margin: 0 1em;
    }

    .header__avatar {
        display: none;
    }

    .right {
        max-width: 100%;
    }

    .navbar__item {
        padding: 0.5em;
        display: flex;
        background-color: #ff9301;
        border-radius: 0.3em;
        justify-content: center;
        align-content: center;
    }

    .navbar__item--link {
        color: #0b0b15;
    }

    .list__menu {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: 1fr 1fr;
    }

    .navbar__item--row1 {
        grid-row: 1;
    }

    .navbar__item--row2 {
        grid-row: 2;
    }

    .navbar {
        margin-bottom: 6em;
    }

    .awards__item {
        flex-direction: row;
        justify-items: center;
        align-items: flex-start;
        padding-left: 1em;
        gap: 1em;
    }

    .awards__item--img {
        margin-top: 0.5em;
    }

    .experience_list__item {
        flex-direction: column;
        padding-top: 2em;
    }

    .experience_list__item--line {
        display: none;
    }

    .portfolio_grid__item {
        grid-column: span 6;
    }

    .contact_grid div {
        grid-column: span 2;
    }

    .contact_form #name,
    .contact_form #email {
        grid-column: span 2;
    }
}