/***** General *****/

*, *:before, *:after {
    box-sizing: inherit;
}

html {
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    box-sizing: border-box;
}

a {
    text-decoration-thickness: 1px;
}

/***** Layout *****/
body {
    padding: 0;
    width: 960px;
    margin: 0 auto;
    margin-bottom: 50px;
}

.masthead {
    width: 360px;
    padding: 0px 32px;
    float: right;
    border-left: 1px solid black;
}

.leftbar {
    width: 600px;
    padding: 0px 50px 32px 100px;
    margin-right: 360px;
}

.full {
    width: 960px;
    padding: 20px 100px 0px 100px;
    margin-bottom: 0px;
}

/***** Menubar *****/
.menubar {
    margin: 0;
    padding: 0;
    margin-bottom: 50px;
    width: 100%;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}

.menubar li {
    display: inline;
    margin-top: 0px;
    font-size: 14pt;
}

.menubar a {
    text-decoration: none;
    border-bottom: 1px solid;
}

/***** Titlebar *****/
.titlebar {
    padding: 0;
    margin-bottom: 20px;
}

.titlebar h1 {
    margin-bottom: 10px;
    font-size: 35pt;
}

.titlebar .tagline {
    padding: 0;
    font-style: italic;
    text-align: center;
}

/***** Masthead *****/
.masthead .affiliation {
    margin-top: 20px;
    font-size: 11pt;
}

.masthead img {
    width: 80%;
    margin-bottom: 30px;
}


/***** Main *****/
.leftbar .title h1 {
    margin-top: 0;
    margin-bottom: 40px;
}

.leftbar .subtitle {
    font-style: italic;
    text-align: center;
}

.leftbar .contactinfo {
    margin-left: 20px;
}

.leftbar p {
    margin-bottom: 20px;
}

/***** News items *****/
h3.news {
    font-size: 14pt;
}

ul.news {
    font-size: 11pt;
    margin-left: 0px;
    padding-left: 0.75em;
    list-style-position: outside;
}

/***** Misc. *****/

.preslist {
  width: 100%;
}

.preslist li {
  margin: 10px;
}

.figures {
  text-align: center;
}

.figimg {
  /*margin: 20px 0 25px 50px;*/
  width: 50%;
  display: inline;
  vertical-align: middle;
}

.research {
  padding-left: 20px;
}

/***** Tables *****/
table {
    border-collapse: collapse;
    border-spacing: 0;
    margin: 40px 0px;
}

thead, tfoot {
    background-color: #f8f8f8;
}

th, td {
    border: 1px solid #ccc;
    padding: 14px 20px;
    text-align: left;
}

/***** Utilities *****/
.small {
    font-size: 16px;
}

.left {
    text-align: left;
}

.right {
    text-align: right;
}

.center {
    text-align: center;
}

.justify {
    text-align: justify;
}

.bold {
    font-weight: bold;
}

.italic {
    font-style: italic;
}

/***** Typography *****/

body {
    font-size: 17px;
    color: black;
    font-family: 'Times New Roman', serif;
    line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
    padding: 0;
    line-height: 1.00;
    text-align: center;
}

h1 {
    font-size: 32px;
    font-weight: normal;
}

h2 {
    font-size: 22px;
    font-weight: bold;
}

h3 {
    font-size: 19px;
    font-weight: bold;
    text-align: left;
}

h4 {
    font-size: 19px;
    font-weight: normal;
    text-align: left;
}

p {
    padding: 0;
    margin: 0;
    margin-bottom: 10px;
}

/***** Misc. *****/

li {
    margin: 4px 0;
    padding: 0;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid;
    margin: 25px auto;
    padding: 0;
    max-width: 300px;
}

img {
    border: 0;
    max-width: 100%;
    display: block;
}
