@font-face {
  font-family: libre-serif-regular;
  src: url(./libre-serif-regular.ttf);
}

body {
  max-width: 900px;
  margin: 0 auto 50px;
  padding: 10px;
  font-family: libre-serif-regular;
  font-size: clamp(16px, 4vw, 20px);
}

nav {
  text-align: center;
}

nav div {
  display: flex;
  justify-content: center;
  gap: 15px;
  padding-top: 20px
}

h1 {
  font-size: clamp(26px, 5vw, 34px);
  text-align: center;
}

h2 {
  font-size: clamp(20px, 5vw, 28px);
}

h3 {
  margin: 20px 5px 0 5px
}

h2, h3 {
  margin-bottom: 5px;
}

ul {
  margin: 0px;
  padding-left: 20px;
  list-style-type: disc;
}

p {
  margin: 5px;
  padding-bottom: 5px;
}

a {
  text-decoration: none;
  color: darkgreen;
}

a:hover {
  color: green;
}

img {
  max-width: 100%
}

.logo {
  text-align: center;
  width: calc(100px + 3vw);
}

.date {
  margin-bottom: 25px;
}

#table-of-contents {
  background-color: #f5fafc;
  padding: 10px;
  margin-top: 25px;
}

#table-of-contents h2 {
  margin: 0;
}

.published {
  color: grey;
  text-align: center;
  padding-bottom: 10px;
  font-size: 80%;
}

/* Code Highlighting */

pre {
  margin: 0;
  font-family: "Inconsolata",monospace;
  width: calc(100% - 1rem);
  line-height: 110%;
  overflow-x: auto;
  padding: 0.5rem;
  background-color: #f5f5f5;
  color: #000000;
}

code {
  background-color: #e7e7e7;
}

.syntax-special, .syntax-element {
  color: #8ac6f2;
  font-weight: bold;
}

.syntax-string {
  color: brown;
}

.syntax-keyword, .syntax-attribute {
  color: #483d8b;
}

.syntax-comment {
  color: #999;
}

.syntax-open, .syntax-close {
  color: #999;
}


.org-keyword {
  color: #ba55d3;
}

.org-string {
  color: purple;
}

.org-builtin {
  color: #483d8b;
}

.org-comment, .org-comment-delimiter {
  color: #999;
}

