@import "https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&display=swap";

body {
    font-family: 'Work Sans', sans-serif;
    background-color: #FFF;
    margin: auto;
    width: 90%;
}

.body-header {
    text-align: center;
    /*position: fixed;
    top: 0px;
    right: 0px;
    left: 0px;
    background-color: #FFF;
    margin: auto;*/
    /* font-size: 2em; */
    /* border: 1px black solid; */
}

.body-header h1 {
    /* border: 1px black solid; */
    font-size: 3em;
    font-family: 'Dancing Script', cursive;
}

.body-main {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

body section {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 5em;
    /* border: 5px black solid; */
}

section .title {
    width: 100%;
    text-align: center;
    color: #009688;
    /* border: 3px red solid; */
}

section .title h1 {
    font-size: 5em;
    font-weight: 500;
    font-style: italic;
    /* border: 3px red solid; */
}

section .content {
    width: 100%;
    /* border: 3px red solid; */
}

.intro .content {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    /* border: 3px red solid; */
}

.intro .content .text {
    /*flex-basis: 60%;*/
    width: 60%;
}

.intro .content .text h1 {
    font-size: 3.5em;
    font-weight: 500;
}

.intro .content .text h3 {
    font-size: 2.5em;
    line-height: 125%;
    font-weight: 400;
}

.intro .content img {
    width: 30%;
    box-sizing: border-box;
    /*flex-basis: 30%;*/
    border-radius: 20%;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.10);
    border: 15px white solid;
}

.projects .content {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    box-sizing: border-box;
    /* border: 1px black solid; */
}

.project {
    width: 100%;
    box-sizing: border-box;
    margin-top: 5%;
    margin-bottom: 5%;
    flex-wrap: wrap;
    justify-content: space-around;
    display: flex;
    border-radius: 24px;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.10)
    /* border: 1px black solid; */
}

.project img {
    width: 68.5%;
    /*flex-basis: 68.5%;*/
    object-fit: contain;
    border-radius: 0 24px 24px 0;
}

.project header {
    box-sizing: border-box;
    margin: 2%;
    display: flex;
    /*flex-basis: 27.5%;*/
    width: 27.5%;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: space-between;
    /* border: 1px black solid; */
}

.project header .source {
    font-size: 3.8em;
    color: black;
    text-decoration: none;
    margin: 0;
    font-weight: 500;
    /* border: 1px black solid; */
}

.project header h5 {
    font-size: 1.8em;
    font-weight: 400;
    /* border: 1px black solid; */
}

.project header h3 {
    font-size: 1.5em;
    font-weight: 400;
    margin: 0;
}

.project header ul a {
    font-size: 1em;
    color: black;
    text-decoration: none;
    margin: 0;
    font-weight: 400;
    /* border: 1px black solid; */
}

.project header li {
    font-size: 1.2em;
    font-weight: 300;
    margin: 16px 0 16px;
}

.project header .button {
    width: 50%;
    margin-top: 2em;
    border-radius: 8px;
    text-decoration: none;
    /*box-shadow: 0 10px 20px rgba(0, 0, 0, 0.10), 0 6px 6px rgba(0, 0, 0, 0.10);*/
    font-family: 'Work Sans', sans-serif;
    font-weight: 400;
    border: 2px solid black;
    align-self: end;
    font-size: 1.5em;
    margin-bottom: 2em;
    padding: 16px;
    text-align: center;
    color: black;
}

.project header .button:hover {
    background-color: black;
    color: white;
    text-decoration: none;
    transition: 500ms cubic-bezier(0, 0, 0, 1);
}


.project header a:hover {
    text-decoration: underline;
}

.stack {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.stack .content {
    margin-top: 2em;
    margin-bottom: 2em;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    box-sizing: border-box;
}

.stack .content div {
    padding: 1em;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    box-sizing: border-box;
    flex-basis: 25%;
}

.stack .content img {
    margin-left: 4em;
}

.stack .content h4 {
    margin-left: auto;
    margin-right: auto;
    font-size: 3.0em;
    font-weight: 400;
}

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

.body-footer .title {
    width: 100%;
    text-align: center;
    color: #009688;
}

.body-footer h1 {
    font-size: 2em;
    font-weight: 500;
    font-style: italic;
}


.body-footer .content {
    display: flex;
    width: 100%;
    margin: 16px 0 16px 0;
    justify-content: center;
    flex-wrap: wrap;
    /* border: 1px black solid; */
}

.body-footer .content a {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    text-decoration: none;
    margin: 1em;
    color: black;
    box-sizing: border-box;
    /* border: 1px black solid; */
}


.body-footer .content a:hover {
    /*box-shadow: 0 10px 20px rgba(0, 0, 0, 0.10), 0 6px 6px rgba(0, 0, 0, 0.10);*/
    transform: scale(1.10);
    transition: 750ms cubic-bezier(0, 0, 0, 1);
}

.body-footer .content a:focus {
    box-shadow: none;
    transition: box-shadow 750ms;
    background-color: #FFF;
}

.body-footer h3 {
    font-family: 'Work Sans', sans-serif;
    font-weight: 400;
    margin-bottom: 2em;
    align-self: center;
}
