* {
    margin: 0;
    padding: 0;
    font-family: 'Nunito Sans', sans-serif;
}

body {
    padding: 2% 5%;
}

header {
    padding: 1em 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 2px solid black;
    font-size: 1.1em;
    background-color: white;
    position: -webkit-sticky; /* Safari */
    position: sticky;
    top: 0;
}

article.about-me {
    display: flex;
    padding: 3em 1% 3em 5%;
}

article.about-me img {
    height: 75vh;
}

article.about-me div {
    padding: 2em 0 0 1em;
    text-align: right;
    letter-spacing: 0.2em;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

article.about-me h1 {
    font-size: 5em;
    font-weight: 300;
    line-height: 0.8em;
}

article.about-me h3 {
    font-size: 3em;
    font-weight: 200;
}

article.about-me p {
    font-size: 1.8em;
}

div.professional {
    font-size: 1.2rem;
    display: flex;
    justify-content: space-between;
    border-top: 2px solid black;
    border-bottom: 2px solid black;
}

div.professional article {
    padding: 2em 1em;
}

div.professional div {
    padding-bottom: 2em;
}

div.professional h3 {
    font-size: 3rem;
    font-weight: 200;
    letter-spacing: 0.2em;
    margin-bottom: 0.4em;
}

div.professional strong {
    font-size: 1.1em;
}

div.professional li {
    margin: 0 1em;
}

article.knowledge {
    width: 100%;
    border-right: 1px solid black;
}

article.experience {
    width: 100%;
    border-left: 1px solid black;
}

article.experience > ul > li{
    margin-bottom: 2em;
}

article.experience span.interval {
    font-size: 0.9em;
}

article.experience strong.company {
    font-size: 1.3em;
}

footer {
    font-size: 1.2em;
    padding: 3em 0 1em;
    display: flex;
    justify-content: space-between;
}

footer div {
    text-align: center;
}

footer img.tg-icon {
    width: 1.5em;
    height: 1.5em;
}