.entry-content h2 {
  margin-top: 20px;
}
.entry-content > .members > .member {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  padding: 20px;
  width: 25%;
}
.entry-content > .members > .member .member-image {
  display: block;
  margin-bottom: 10px;
}
.entry-content > .members > .member .member-image img {
  height: 90px;
}
@media (min-width: 992px) {
  .entry-content > .members > .member .member-image img {
    height: 128px;
  }
}
.entry-content table.people {
  width: 100%;
}
.entry-content table.people > thead {
  font-weight: bold;
}
.entry-content table.people .person > .ou {
  width: 70px;
}
.entry-content table.people .person > .name {
  width: 400px;
}
.entry-content table.people .person > .extension {
  width: 100px;
}
.entry-content table.people .person > .room {
  width: 100px;
}
.entry-content table.people tr.secretary-to td:nth-child(2) {
  padding-left: 50px;
}
.entry-content .general-info td:first-child,
.entry-content .main-interests td:first-child,
.entry-content .contacts td:first-child {
  text-align: right;
  padding-right: 10px;
  min-width: 150px;
}
.entry-content .people-help {
  margin-top: 20px;
  padding-top: 5px;
  border-top: 1px solid #999;
}
.entry-content .slider {
  margin-top: 1em;
}
.entry-content #year span.ui-slider-handle span.tip {
  position: absolute;
  top: -35px;
  left: -100%;
  border-radius: 5px;
  padding: 5px;
  border: 1px solid #e6e6e6;
  background-color: white;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
  display: none;
  color: #222;
}
.entry-content #year span.ui-slider-handle:hover span.tip,
.entry-content #year span.ui-slider-handle.ui-state-active span.tip {
  display: block;
}
.entry-content #search {
  background-color: rgba(0, 0, 0, 0.08);
}
.entry-content #search h2 {
  margin-top: 10px;
  padding: 0.25em 0.5em;
  cursor: pointer;
  font-size: 20px !important;
}
.entry-content #search .ui-slider-wrapper {
  max-width: 800px;
}
.entry-content #search .ui-slider-wrapper.horizontal {
  height: 3em;
}
.entry-content #search ul.tagit {
  margin: 0px !important;
  max-width: 800px;
}
.entry-content #search > form {
  margin-left: 1em;
  padding-bottom: 1em;
}
.entry-content #search > form label {
  margin-top: 10px;
  margin-bottom: 4px;
}
.entry-content #search #search-query:focus {
  border-color: initial;
  box-shadow: none;
  outline: #5eb935 auto 5px;
}
.entry-content #search #search-button {
  padding: 0.25em 0.5em;
  background-color: #5eb935;
  outline: none;
  border: 1px solid #79ce53;
  font-size: 15px;
  font-weight: bold;
  color: #fff;
  margin-top: 8px;
  border-radius: 2px;
}
.entry-content #search #search-button:hover,
.entry-content #search #search-button:focus {
  background-color: #54a52f;
}
.entry-content #search #search-button:focus {
  outline: #5eb935 auto 5px;
}
.entry-content #search #search-button:active {
  background-color: #4a912a;
}
.entry-content #filter-buttons {
  max-width: 800px;
}
.entry-content #filter-buttons > div.filter,
.entry-content #filter-buttons .all,
.entry-content #filter-buttons .none {
  display: inline-block;
  padding: 2px 5px;
  font-size: 0.9em;
  border: 1px solid rgba(0, 0, 0, 0.2);
  margin-right: 4px;
  margin-top: 4px;
  cursor: pointer;
  min-width: 100px;
  user-select: none;
  text-align: center;
  background-color: #fff;
  transition: all 0.1s ease;
}
.entry-content #filter-buttons > div.filter i {
  margin-left: 2px;
}
.entry-content #filter-buttons > div.filter i:before {
  content: "\f00d";
}
.entry-content #filter-buttons > div.filter.active i:before {
  content: "\f00c";
}
.entry-content #filter-buttons .active {
  color: #fff;
}
.entry-content #filter-buttons .all {
  background-color: #000;
  color: #fff;
}
.entry-content #filter-buttons .none {
  border: 1px solid #000;
  background-color: #fff;
}
.entry-content #year-selection > div {
  display: inline-block;
  padding: 5px 10px;
  font-size: 20px;
  border: 1px solid #444;
  margin-right: 4px;
  cursor: pointer;
  min-width: 170px;
  user-select: none;
  text-align: center;
  background-color: #fff;
}
.entry-content #year-selection > div.active {
  background-color: #000;
  color: #fff;
}
.entry-content .supervisions > div {
  padding: 20px;
  border-bottom: 1px solid #ddd;
}
.entry-content .supervisions > div > .authors {
  font-size: 20px;
  margin-bottom: 20px;
}
.entry-content .supervisions > div > .authors > .names {
  font-weight: bold;
}
.entry-content .supervisions > div > .title {
  color: #5eb935;
}
.entry-content .supervisions > div > .title a {
  color: #5eb935;
  text-decoration: underline;
}
.entry-content .supervisions > div > .title a:hover {
  color: #79ce53;
  text-decoration: none;
}
.entry-content .supervisions > div .university {
  font-style: italic;
  font-weight: bold;
}
.publications > div,
.intelectual-property > div {
  margin-bottom: 1.5em;
}
.publications > div .title,
.intelectual-property > div .title {
  font-weight: bold;
}
.publications > div .info,
.intelectual-property > div .info {
  font-style: italic;
  text-decoration: underline;
}
.entry-content .projects > div {
  padding: 20px;
  border-bottom: 1px solid #ddd;
}
.postlist .projects > div {
  margin-bottom: 1.5em;
}
.projects .acronym {
  font-weight: bold;
}
.projects p.acronym {
  font-size: 1.5em;
}
.projects .title {
  font-weight: bold;
}
.projects .financedby {
  font-weight: bold;
}
.sidebar > .entity-header {
  text-align: center;
}
.sidebar > .entity-header .entity-image {
  display: block;
}
.sidebar > .entity-header .entity-image img {
  max-width: 250px;
  max-height: 250px;
}
.sidebar .inesc-side-menu {
  margin: 0px;
}
.sidebar .inesc-side-menu li a {
  display: block;
  width: 100%; /*DAVID 200px; old */
  background: #eee;
  padding: 8px 80px;
  margin: 1px auto;
  font-weight: bold;
}
.sidebar .inesc-side-menu li a:hover,
.sidebar .inesc-side-menu li a.active {
  background: #ddd;
}
.sidebar .entity-name,
.sidebar h1 {
  font-family: Lato;
  font-size: 20px;
  line-height: 22px;
  font-weight: bold;
  text-align: center;
  margin-top: 30px;
}
.sidebar .entity-name:first-child,
.sidebar h1:first-child {
  margin-top: 0px;
}
.sidebar h2 {
  font-family: Lato;
  font-size: 18px;
  line-height: 22px;
  font-weight: bold;
  text-align: left;
  width: 200px;
  margin: 0 auto;
  margin-top: 25px;
}
.sidebar h1 + h2 {
  margin-top: 0px;
}
.sidebar ul {
  padding: 0px;
}
.bar-graph {
  font-size: 10pt;
  line-height: 10pt;
  width: 200px;
  margin: 5px auto;
  padding: 10px;
}
.bar-graph .key {
  width: 20%;
  text-align: right;
  padding-right: 3px;
}
.bar-graph .value {
  padding-left: 3px;
}
.bar-graph .value div {
  display: inline-block;
  background-color: #5eb935;
  color: #eee;
  text-align: right;
  box-sizing: border-box;
  padding-right: 2px;
}
.bar-graph .value div.zero {
  color: #222;
  padding-right: 0px;
}
.count-list {
  font-size: 10pt;
  line-height: 10pt;
  width: 200px;
  margin: 5px auto;
}
.count-list .value {
  padding-right: 3px;
  font-weight: bold;
  text-align: right;
  vertical-align: top;
}
.count-list .key {
  width: 80%;
  text-align: left;
  padding-left: 3px;
}
.postlist .members .member {
  padding: 10px;
}
.postlist .members .member .photo,
.postlist .members .member .info {
  display: inline-block;
  vertical-align: top;
}
.postlist .members .member .photo img {
  max-height: 96px;
}
.postlist .members .member .info {
  padding: 10px;
}
.postlist .members .member .info .name {
  font-size: 140%;
}
.entry-content.project ul {
  list-style: none;
}
.entry-content.project ul li:before {
  content: "- ";
}
.alert {
  font-size: 20px;
  font-weight: bold;
  color: #ff4444;
  padding: 20px;
}
.open-position {
  border-bottom: 1px solid #aaa;
  padding-bottom: 10px;
  margin-bottom: 40px;
}
.open-position > h3 {
  text-align: center;
}
.open-position .description {
  position: relative;
}
.open-position pre {
  word-break: normal;
  overflow: hidden;
}
.open-position .show-more {
  position: absolute;
  left: 45%;
  bottom: -20px;
  background: #e4e4e4;
  border: 1px solid #ddd;
  padding: 4px;
  cursor: pointer;
}
.open-position .show-more:hover {
  background: #ccc;
  border: 1px solid #bbb;
}
.open-position .description > span,
.open-position > p > span {
  font-weight: bold;
  color: #5eb935;
}
.open-position > p.contact-info > span {
  color: #000;
}

.people-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  font-family: "Titillium Web", sans-serif;
}

.person-card {
  display: flex;
  width: 370px;
  height: 230px;
  border: 1px solid #ddd;
  padding: 20px;
  box-sizing: border-box;
  position: relative;
  background-color: #fff;
  box-shadow: 0 4px 5px rgba(0,0,0,.2);
  padding: 10px;
  flex-direction: column;
}

.person-card-top {
  margin-top: 10px;
  display: flex;
  height: 115px;
}

.person-card-img {
  width: 120px;
}

.person-card-img img {
  width: 100px;
  height: 100px;
  object-fit: cover;
  border: 1px solid #999;
  border-radius: 50%;
}

.person-details {
  flex: 1;
  font-size: .9em;
  line-height: 1.2em;
}

.person-card-footer {
  padding-bottom: 4px;
  width: 100%;
  align-self: flex-end;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  font-size: .8em;
  line-height: 1.1em;
}
