body {
    font-family: 'Helvetica Neue', 'Helvetica', sans-serif;
    line-height: 1.5;
}

p {
    margin-bottom: 15px;
}

h1 {
    font-size: 35px;
    font-weight: bolder;
    margin-bottom: 0px;
    margin-top: 0px;
}

h2 {
    font-size: 28px;
    font-weight: bolder;
    margin-bottom: 10px;
    margin-top: 0px;
}

b {
    font-weight: 800;
}

a:link, a:visited {
    color: #1e88e5;
    text-decoration: none;
    font-weight: 500;
}

a:hover {
    color: #0d47a1;
}

.publication {
    margin-bottom: 5px; /* Adjust the value as needed */
}

.project a:link {
    color: grey;
    text-decoration: underline;
    text-decoration-thickness: 1px;
}

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

.project a:visited {
    color: grey;
}

/* .project a:after {
    content: '';
    width: 1em;
    background: url('/img/external_link.svg') no-repeat right center;
    background-color: black;
    color: grey;
    display: inline-block;
    background-size: 100% 100%;
} */

.profile-photo {
    object-fit: cover;
    border-radius: 100px;
    width: 140px;
    height: 140px;
}

.top-row-container {
    display: flex;
}

.top-row-left-col {
    width: 75%
}

.top-row-right-col {
    width: 25%;
}

/* Style page content */
.main {
    /* margin-left: 400px;
    margin-right: 80px; */
    margin: 0 15% 0 15%;
    padding-top: 15vh;
    padding-bottom: 15vh;
}

.research {
    display: grid;
    grid-template-columns: 48% 48%;
    column-gap: 4%;
    row-gap: 10fr;
}

.project-title {
    font-size: 18px;
    font-weight: bolder;
}

.project-thumbnail {
    width: 100%;
}

.project {
    margin-bottom: 5%;
}

.author {
    font-weight: normal;
    font-style: italic;
    color: grey;
}

.project-discription {
    line-height: 1.5;
}

/*
Material design shadow and transition:
https://codepen.io/sdthornton/pen/wBZdXq
*/
.project-image {
    border-radius: 2.5%;
    width: 100%;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    transition: all 0.3s cubic-bezier(.25,.8,.25,1);
    margin-bottom: 10px;
}

.project-image:hover {
    box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
}

.icon {
    width: 25px;
    height: 25px;
    margin-right: 25px;
}

.navigation-bar {
    text-align: right;
    margin-right: 15%;
    margin-top: 10px;
}

.navigation-bar a:link {
    color: black;
    text-decoration: none;
}

.navigation-bar a:hover {
    text-decoration: none;
}

.navigation-bar a:visited {
    color: black;
}

.email {
    margin-top: 0px;
    margin-bottom: 15px;
}

.acknowledgement {
    margin-top: 50px;
    font-size: small;
    color: grey;
}

.date {
    display: inline-block;
    background-color: black;
    color: white;
    width: 80px;
    text-align: center;
    margin: 2px 5px 2px 0px;
}

.intro b {
    font-weight: 900;
}

@media only screen and (max-width: 675px) {
    .main {margin: 0 5% 0 5%;}
    .navigation-bar {margin-right: 5%;}
    .research {grid-template-columns: 100%;}
    .top-row-container {display: block; text-align: center;}
    .top-row-left-col {width: 100%;}
    .top-row-right-col {width: 100%;}
    
    .rightmost-icon {margin-right: 0px;}
    .profile-photo {margin-top: 10px;}
}

@media only screen and (min-width: 675px) and (max-width: 866px) {
    .main {margin: 0 10% 0 10%;}
    .navigation-bar {margin-right: 10%;}
}

@media only screen and (min-width: 1250px) {
    .main {margin: 0 20% 0 20%;}
    .navigation-bar {margin-right: 20%;}
}
