html {
  font-size: 18px;
}

@media (max-width:  768px)  {
  html {
    font-size: 15px;
  }
}

body {
  font-size: inherit;
  font-weight: 300;
}

p {
  margin: 0;
}

img {
  max-width: 100%;
}

ul,ol {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
}

h1 { font-size: 1.8rem; line-height: 2rem; margin: 1.5rem 0; }
h2 { font-size: 1.4rem; line-height: 2rem; margin: 1.5rem 0; }
h3 { font-size: 1.2rem; line-height: 1.5rem; margin: 1.5rem 0; }
h4, h5, h6 { font-size: 1rem; line-height: 1.5rem; margin: 1.5rem 0; }

main {
  display: block;
}

/* Override */
.navbar {
  border-radius: 0;
}

.page-header {
  margin: 0;
  margin-bottom: 1rem;
  padding: 0;
  padding: 1rem 0;
}

.page-header h1 {
  margin: 0;
}

/* Layouts */
.l-header {
  font-size: .8rem;
}

.l-footer {
  font-size: .8rem;
  padding: 1.5rem 0;
  color: #999;
}

/* Parts:facts */
.p-facts {
  list-style: none;
  margin-bottom: .5rem;
}

.p-facts li {
  display: inline;
  font-size: .8rem;
  margin-right: .5rem;
}

.p-facts li i {
  margin-right: .5rem;
  color: #999;
}

/* Parts:facts */
.p-crumb {
  font-size: .8rem;
  margin-bottom: 1.5rem;
}

.p-crumb ol {
  margin-bottom: 0;
}

/* Parts:terms */
.p-terms {
  list-style: none;
}

.p-terms li {
  display: inline-block;
}

.p-terms li::after {
  content: ',';
}

.p-terms li:last-child::after {
  content: '';
}

/* Parts:section */
section {
  font-size: .8rem;
}

section>header {
  margin-bottom: .5rem;
  font-weight: 500;
}

section.bordered {
  border-top: 1px solid #eee;
  padding: 1rem 0;
}

/* Parts:article */
.p-articles {
  list-style: none;
}

.p-articles>li {
  margin-bottom: 2.5rem;
}

.p-articles.bordered>li {
  border-bottom: 1px solid #eee;
  margin-bottom: .5rem;
}

.p-articles.bordered>li:last-child {
  border-bottom: none;
}

article .title {
  margin: 0;
  margin-bottom: .5rem;
}

article .thumb {
  display: block;
  background-position: center;
  background-size: cover;
}

article>header {
  border-bottom: 1px solid #eee;
  margin-bottom: 1.5rem;
}

article .summary {
  margin-bottom: .5rem;
}

article.single .thumb {
  height: 18rem;
}

@media (max-width:  768px)  {
article.single .thumb {
  height: 12rem;
}
}

article.li .thumb {
  float: right;
  width: 12rem;
  height: 7.5rem;
  margin-left: 1rem;
  margin-bottom: 1rem;
}

article.li.sm>header {
  border-bottom: none;
  margin-bottom: 0;
}

.article-body h2 {
  padding: 0.2rem 0;
  border-bottom: 2px solid #eceff1;
}

.article-body h2:first-child { margin-top: 0; }

.article-body h3 {
  border-bottom: 1px solid #eceff1;
}

.article-body h4 {
  font-weight: bold;
}

.article-body p {
  margin: 1.5rem 0;
  line-height: 1.5rem;
}

.article-body a {
  text-decoration: underline;
}

.article-body ul,
.article-body ol {
  padding-left: 1.5rem;
}

.article-body code {
  display: inline-block;
  font-family: Menlo, consolas, monospace;
  font-size: .8rem;
  padding: 0 .5rem;
  line-height: 1.5rem;
}

.article-body pre {
  margin: 1.5rem 0;
  padding: 0;
  font-size: .8rem;
  border: none;
  border-radius: 0;
}

.article-body pre code {
  display: block;
  line-height: 1rem;
  padding: 1rem;
}

.article-body blockquote {
  margin: 1.5rem 0;
  padding: .5rem 0;
  font-size: .8rem;
  border-top: 1px solid #eceff1;
  border-bottom: 1px solid #eceff1;
  color: #607d8b;
}

.article-body blockquote p {
  margin: .5rem 0;
  line-height: 1rem;
}


.article-body strong {
/*  box-shadow: 0 -.5rem 0 0 #de5bde inset; */
}


.article-body em {
  font-style: normal;
  font-weight: 700;
  color: #428bca;
}

.article-body figure { margin: 1.5rem 0; }
.article-body figure.left,
.article-body figure.right {
  width: 15rem;
  height: 12rem;
  margin-top: 0;
}
.article-body figure.left { float: left; margin-right: 1rem; }
.article-body figure.right { float: right; margin-left: 1rem; }

@media (max-width: 768px) {
  .article-body figure.left,
  .article-body figure.right {
    float: none;
    margin: 0;
    width: auto;
    height: auto;
  }
}

.article-body figcaption {
  padding: .5rem 0;
  font-size: .8rem;
  text-align: center;
}

.article-body figcaption a {
  color: #263238;
}


/* original */

table.timetable{
    width: 960px; 
    border: none;
    table-layout: fixed;
}
tr.timetable{
    border: none;
}
td.timetable{
    padding: 5px 5px;
font-weight: normal; 
text-align: left;
border: none;
v}

img.research-fig{
    float: right;
}

h2 { padding-bottom: 3px  ; border-bottom: solid 1px #ececec; clear: both}

h2.profile_myname{
    border-bottom: none;
}
h2.title { padding-bottom: 3px  ; border-bottom: none; clear: both}

li.prof{
    list-style: none; 
}

$gutter-default : 20px;
$color-accent : #ff6600;
$color-white : #ffffff;

.calendar-year {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;

  list-style-type: none;
  padding: 0px;
  margin: 0px;
  text-align: center;

  header {
    width: 100%;
  }

}

.calendar-month {
  display: flex;
  flex-grow: 1;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-start;

  list-style-type: none;
  padding: 0px;
  text-align: center;

  width: calc(100% / 4);
  margin: $gutter-default;

  header {
    width: 100%;
  }

}

.calendar-weekdays {
  display: flex;
  flex-grow: 1;
  flex-direction: row;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0px;
  margin: 0px;
  text-align: center;

  width: 100%;

  li {
    width: calc(100% / 7);
    font-weight: 500;
    text-transform: uppercase;
    line-height: $gutter-default * 2;
    font-size: $gutter-default / 2;
    opacity: 0.6;

    &.calendar-weekday-sat,
    &.calendar-weekday-sun {
      opacity: 1;
    }

  }

}

.calendar-days {
  display: flex;
  flex-grow: 1;
  flex-direction: row;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0px;
  margin: 0px;
  text-align: center;

  li {
    width: calc(100% / 7);
  }

}

.calendar-day {
  line-height: $gutter-default * 1.5;
  font-size: $gutter-default / 1.8;
  text-align: center;

  &.calendar-day-future {
    opacity: 0.4;
  }

  &.calendar-day-has-articles {
    &::before {
      content: '';
      width: $gutter-default * 1.1;
      height: $gutter-default * 1.1;
      position: absolute;
      top: 50%;
      left: 50%;
      background-color: $color-accent;
      transform: translate(-50%, -50%);
      z-index: -1;
      border-radius: 50%;
    }

    color: $color-white;
    position: relative;

    a {
      color: $color-white;

      em {
        display: none;
      }

    }

  }

  &.calendar-day-is-today {
    &::before {
      content: '';
      width: $gutter-default * 1;
      height: $gutter-default * 1;
      position: absolute;
      top: 50%;
      left: 50%;
      border: 2px solid $color-accent;
      transform: translate(-50%, -50%);
      z-index: -1;
      border-radius: 50%;
    }

    position: relative;
    font-weight: 800;
    color: $color-accent;

  }

}

