:root {
    --main-accent-green: #209d50;
    --main-background-dark: #1d2624
}

a {
    text-decoration: none;
    color: inherit;
}

body {
    font-family: Poppins;
}

#container {
    position: absolute;
    left: 0;
    right:0;
    top:0;
    display: flex;
    flex-direction: column;
    width:100%;
}

#topPart {
    display: flex;
    flex-direction: column;
    width:100%;
    height: auto;
    max-height:82vh;
    background-blend-mode: luminosity;
}

#logoMenuContainer {
    display: flex;
    flex-direction: row;
    width:100%;
    height:100px;
}

#logo {
    text-align: left;
    margin-left: 30px;
    margin-top: auto;
    margin-bottom: auto;
    margin-top:auto;
    width:60%
}

#menu {
    display: flex;
    justify-content: flex-end;
    margin-left: auto;
    flex-direction: row;
    margin-top: auto;
    margin-bottom: auto;
    width:100%;
    padding-right: 30px;
}

.menuItem {
    margin-left: 30px;
    font-family: Poppins;
    font-weight: 300;
}

#middlePart {
    display: flex;
    flex-direction: row;;
    width:100%;
    height:100%;
}

#middleLeft {
    display: flex;
    align-items: center;
    width:50%;
    padding-left:30px
}

#middleRight {
    width:50%;
}

.lego {
    padding-top:80px;
    padding-bottom:100px;
    display: flex;
    flex-direction: row;;
    flex-wrap: wrap;
    width:100%;
}

.descriptionBlock {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-left:20px;
    padding-right:20px;
    width: 25%;

}

#bottomPart {
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: rgba(29, 25, 28);
    height: 20vh;
    padding-top:50px;
    padding-bottom: 100px;
}

.buttonContainer {
    margin-top: 20px;
    margin-bottom: 20px;
}

.button {
    width: 10vw;
    height: 3.7vw;
    background-color: var(--main-accent-green);
    font-family: Poppins;
    font-weight: 500;
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1vw;

    
}

h1 {
    font-family: Poppins;
    font-size: 3.7vw;
    font-weight: 500;
    color: var(--main-accent-green);
}

h2 {
    font-family: Poppins;
    font-size: 1.8vw;
    font-weight: 500;
}

#centeredHeaderText {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    align-items: center;
    align-content: center;
    justify-content: center;
    height: 100%;
    font-size: 4em;
    font-size: 4em;
    font-weight: 450;
    color:#ffffff
}

#staffHeaderTitle {
    display: flex;
    width: 100%;
    margin-left: 30px;
    margin-right: auto;
    align-items: center;
    align-content: center;
    justify-content: left;
    height: 100%;
    font-size: 4em;
    font-size: 4em;
    font-weight: 450;
    color:#ffffff
}

.staffBlock {
    width:20vw;
    min-width: 300px;
    padding:10px;
    margin:10px;
}

.staffImage {
    background-size: cover;
    background-origin: content-box;
    background-position-x: center;
    background-position-y: top;
    height:550px;
}

.staffImage:hover {
    background-blend-mode: luminosity;
}

.staffName {
    padding-top:10px;
    color: var(--main-accent-green);
    font-weight: 500;
    font-size: 1.5em;
}

#profileContainer {
    width:80vw;
    display:flex;
    flex-direction: column;
    padding-left:auto;
    padding-right:auto;
}

#profile {
    display: flex;
    flex-direction: row;
}

#profileImage {
    height:600px;
    width:40vw;
    min-width:500px;
    background-size: cover;
    background-origin: content-box;
    background-position-x: center;
    background-position-y: top;
}

#profileTitle {
    margin-top:-30px;
    margin-bottom:30px;
}

#profileBio {
    font-size:1.5em;
    font-weight:200;
}

#profileContent {
    padding-left:30px;
    padding-right:30px;
}

.publicationDescription {
    margin-top:20px;

}

.publicationDescriptionTitle {
    font-size:1.4em;
    color: var(--main-accent-green);
}

.publicationDescriptionAuthorName {
    font-weight: bold;
}

.publicationDescriptionSummary {
    margin-top:15px;
}

.publicationImage {
    width: 400px;
    margin-left:40px;
    margin-bottom:40px;
}

#publicationContainer {
    width:80vw;
}

.bodyLink {
    color: var(--main-accent-green);
}

#publicationContent {
    margin-top:30px;
}

#otherPublications {
    display:flex;
    flex-direction: row;
}

#areasOfPracticeContainer {
    margin-top:20px;
    margin-bottom:20px;
    margin-left:auto;
    margin-right:auto;
    width:65vw;
    display:flex;
    flex-direction: column;
    color: var(--main-accent-green);
}

.areasOfPracticeItemContainer {
    display:flex;
    padding-bottom:50px;
    margin-bottom:50px;
    width:100%;
    flex-direction: row;
    border-bottom: 1px solid var(--main-accent-green);
}

.areasOfPracticeItemTitle {
    width: 35%;
    font-size:1.15em;
    font-weight: 500;
    padding-right: 15px;
}

.areasOfPracticeItemDescription {
    font-weight:200px;
    width: 65%;
}

.allPublicationsPubContainer {
    width:33vw;
    margin-right:40px;
}

#allPublications {
    width:76vw;
    display:flex;
    flex-direction:row;
    flex-wrap: wrap;
}

#trainingContentContainer {
    display:flex;
    flex-direction: row;
    flex-wrap:wrap;
    width:80vw;
    margin-left:auto;
    margin-right:auto;
}

.trainingDescriptionContainer {
    width:40vw;
}

.trainingDescriptionTitle {

}

.checkBoxItemContainer {
    display: flex;
    flex-direction: row;
}

.checkboxItemTitle {
    width:250px;
}

.formItemContainer {
    margin-bottom:15px;
}

.formItemTitle {
    font-size: 1.2em;
}

input {
    box-sizing:border-box;
    padding:10px;
    font-size: 1.5em;
    margin:4px;
}

textarea {
    box-sizing:border-box;
    padding:10px;
    font-size: 1.5em;
    margin:4px;
}

#contactUsContainer {
    width:60vw;
    display:flex;
    flex-direction:row;
}
