@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 400;
  src: local('Raleway-Regular'),
       url('/fonts/Raleway-Regular.ttf') format('truetype');
  font-display: swap
}

@font-face {
  font-family: 'Raleway';
  font-style: italic;
  font-weight: 400;
  src: local('Raleway Italic'),
       url('/fonts/Raleway-Italic.ttf') format('truetype');
  font-display: swap
}

@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 500;
  src: local('Raleway Medium'),
       url('/fonts/Raleway-Medium.ttf') format('truetype');
  font-display: swap
}


@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 600;
  src: local('Raleway SemiBold'),
       url('/fonts/Raleway-SemiBold.ttf') format('truetype');
  font-display: swap
}



:root {
  --main-color: #E22F22;
  --main-color-subdued: #DD3522;
  --main-gray: #8e8d8a;
  --fill-color-subdued: #eae7dc;
  --fill-color-strong: #d8c3a5;
  --link-color: #976620;
  --visited-link-color: #976620;
}

html {
  /* ensure that the vertical scroll-bar is always present;
   * otherwise there are jumps of the layout when switching from a
   * very short page to a longer one */
  overflow-y: scroll;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
  font-family: "Raleway", "Helvetica", sans-serif;
  font-size: 18px;
  line-height: 165%;
  background: var(--fill-color-subdued);
}

h1 {
  font-weight: 500;
  font-size: 120%;
  color: var(--main-color);
  letter-spacing: 0.02em;
  margin-top: 1em;
}

h2 {
  font-weight: 500;
  font-size: 100%;
  color: var(--main-color-subdued);
}

h3 {
  font-size: 100%;
  margin-bottom: 0pt;
  margin-top: 1em;
}

/* Page header */

header {
  margin-bottom: 1.5em;
}

header #name {
  font-size: 275%;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 110%;
  padding: 0.25em 0em 0.25em 0em;
  margin-left: 0em;
  margin-bottom: 0em;
  color: var(--main-color);
}

header #sub {
  letter-spacing: 0.05em;
}

header #institute {
  font-size: 100%;
}

/* For titles on e.g. course page */
div#header-course {
  font-size: 200%;
  font-weight: 500;
  line-height: 110%;
  padding: 0.3em 0em 0.2em 0em;
  margin-bottom: 1em;
  color: var(--main-color);
}

@media all and (max-width: 600px) {
  header #name {
    text-align: center;
  }
  
  header #institute {
    text-align: center;
  }
}

/* Navigation */

nav {
  border-bottom: 1px solid var(--fill-color-strong);
  overflow: hidden;
}

nav div {
  letter-spacing: 0.03em;
  font-weight: 500;
  float: left;
  padding: 0.15em 0.75em;
  margin-top: 0.25em;
  margin-right: 0.25em;
  margin-bottom: -1px;
  border: 1px solid var(--fill-color-strong);
}

nav div:hover {
  background: var(--fill-color-subdued);
}

nav div.active {
  background: var(--fill-color-strong);
}

nav a:link {
  color: rgba(0,0,0,0.85);
  text-decoration: none;
}

nav a:visited {
  color: rgba(0,0,0,0.85);
}

nav a:hover {
  color: rgba(0,0,0,0.85);
}

@media all and (max-width: 600px) {
  nav {
    border-bottom: none;
  }

  nav div {
    margin-bottom: 0px;
  }
}

/* Content */

div#content-container {
  max-width: 65em;
  margin: 0 auto;
  padding: 0;
  text-align: left;
}

div#content {
  width: 91%;
  padding: 1.5em 4.5%;
  margin: 0;
  background: #ffffff;
  box-shadow: 0em 0.125em 0.5em #888;
}

div#photo {
  float: right;
  margin: 1em 0.5em 0.5em 0.5em;
}

@media all and (max-width: 500px) {
  div#photo {
    float: none;
    text-align: center;
  }
}

footer {
  font-size: 84%;
  text-align: right;
  color: #666;
  margin-top: 2em;
}

.clearer {
  clear: both;
}

strong {
  font-weight: bold;
}

/* General lists */

ul, ol {
  margin-top: 5pt;
}

/* Links */
a:link {
  color: var(--link-color);
  text-decoration: none;
}

a:visited {
  color: var(--visited-link-color);
}

a:hover {
  color: var(--main-color);
}

header #institute a:link {
  text-decoration: none;
  color: #000;
}

header #institute a:visited {
  text-decoration: none;
  color: #000;
}

header #institute a:hover {
  color: red;
}

/* Research interests */

div#research-interests {
  float: right;
  background-color: var(--fill-color-subdued);
  padding: 0.3em 0.5em;
  border: 1px solid var(--fill-color-strong);
  margin-left: 2em;
  margin-right: 0.5em;
  margin-top: 1em;
  margin-bottom: 0.5em;
}


@media all and (max-width: 600px) {
  div#research-interests {
    padding-left: 0.4em;
    padding-right: 0;
    margin-left: 0.1em;
    margin-right: 0.1em;
    margin-top: 1em;
    clear: left;
    float: none;
  }
}


/* Contact data */

div#contact {
  float: left;
}

@media all and (max-width: 600px) {
  div#contact {
    float: none;
  }
}

div#contact dl {
  margin-top: 0.5em;
}

div#contact dl dt {
  min-width: 5em;
  margin-bottom: 0.25em;
  font-weight: bold;
  float: left;
  clear: left;
}

div#contact dd {
  float: left;
  margin: 0 0 0 0.4em;
}



/* Publications */
div.subheader {
  padding-top: 1em;
  padding-left: 0.25em;
}

div.subheader a {
  margin-left: 0.75em;
}

div.subheader a::before {
  content: "↓ ";
}

ol.pub {
  color: var(--fill-color-strong);
}

.pub li {
  margin-top: 0.75em;
  margin-bottom: 0.75em;
  padding-left: 0.25em;
}

.pub .entry {
  color: #000000;
}

.pub .links {
  font-size: 84%;
  padding-left: 1em;
  width: 11.5em;
  color: #555;
  float: right;
}

.pub .links .res,
.pub .links .res:hover {
  background: var(--fill-color-subdued);
  padding: 0.1em 0.25em 0.1em 0.25em;
}

.pub .links .res:hover {
  background: var(--main-color-subdued);
}

.pub .links .res a {
  color: #555;
}

 .pub .small {
  font-size: 84%;
}

/* Conferences */
.conf li {
  margin-top: 0.25em;
  margin-bottom: 0.25em;
}

.conf {
  color: #888;
}

.conf .entry {
  color: #000;
}

.conf .title {
  font-style: italic;
}

.conf .session {
  font-style: italic;
}

/* Teaching */
.teaching li {
  margin-top: 0.25em;
  margin-bottom: 0.25em;
}

.teaching {
  color: #888;
}

.teaching .entry {
  color: #000;
}

.future {
  color: #888;
}

.future .entry {
  color: #888;
}

a.ugocourse {
  background-image: url('images/ugo_icon.png');
  background-repeat: no-repeat;
  background-position: 0px 4px, top;
  padding-left: 20px;
}

a.uniljcourse {
  background-image: url('images/unilj_icon.png');
  background-repeat: no-repeat;
  background-position: 0px 4px, top;
  padding-left: 20px;
}


a.tugcourse {
  background-image: url('images/tugonline.gif');
  background-repeat: no-repeat;
  background-position: 0px 4px, top;
  padding-left: 86px;
}

@media all and (max-width: 500px) {
  ol, ul {
    padding-left: 0.8em;
    padding-right: 0;
  }
}

/* Course description */
dl.course-desc dt {
  min-width: 9em;
  margin-bottom: 0.25em;
  float: left;
  clear: left;
}

dl.course-desc dd {
  float: left;
  margin: 0 0 0 0.4em;
}

/* Group list for a course */

table.groups {
  max-width:50em;
  margin: 1em auto;
}

table.groups td, table.groups th {
  padding: 0em 0.5em;
}

/* Literature list for a course (different formatting from publications page) */
.lvliteratur li {
  margin-top: 0.25em;
  margin-bottom: 0.25em;
  padding-left: 0.25em;
}

.lvliteratur .title {
  font-style: italic;
}

.lvliteratur .bib {
  font-size: 84%;
}

/* Footnote */
div.footnotes {
  margin-top: 3em;
}

.footnote {
  font-size: 84%;
}

/* Course content list */
dl.course-content dt {
  padding-top: 0.25em;
  width: 5.75em;
  margin-bottom: 0em;
  float: left;
  clear: left;
}

dl.course-content dd {
  padding-top: 0.25em;
  margin: 0 0 0 5.75em;
}

@media all and (max-width: 500px) {
  dl.course-content dd {
    margin-left: 0.75em;
  }
}

/* Grants */
.grants li {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

.grants {
  color: #888;
}

.grants .entry {
  color: #000;
}

.grants .title {
  font-weight: 500;
}

.grants .title:after {
  content:"\a";
  white-space: pre;
}

.grants .note:before {
  content:"\a";
  white-space: pre;
}

.grants .note {
  font-style: italic;
}
