@import url('https://fonts.googleapis.com/css2?family=Merriweather+Sans:ital,wght@0,300;0,400;0,600;1,300&display=swap');

:root {
  --r-main-font: 'Merriweather Sans', sans-serif;
  --r-heading-font: 'Merriweather Sans', sans-serif;
  --r-code-font: Consolas, Inconsolata, monospace;
  --r-heading-font-weight: 700;
  --r-heading-text-transform: normal;
  --r-heading-color: #333;
  --r-main-color: #444;
  --r-main-font-size: 36px;
  --r-link-color-dark: #a6090b;
  --r-link-color: #b6090b;
  --r-link-color-hover: #d6292b;
  --r-heading-letter-spacing: -1px;
}
body {
  letter-spacing: -1px;
}
h1 > span {
  display: block;
}
h2,
h3 {
  border-left: 7px var(--r-link-color) solid;
  padding: 0.5rem 0 0 0.75rem;
}
span.subtitle {
  display: block;
  line-height: 1;
  color: #999;
  font-size: 0.5em;
}
.red {
  color: var(--r-link-color);
}
.reveal .slides section .fragment.semi-fade-out.visible {
  opacity: .25;
}
.reveal img {
  max-width: 80%;
}
.reveal .slides {
  text-align: left;
  font-weight: 300;
}
.reveal pre {
  margin-left: 0;
}
.reveal blockquote {
  margin-left: 0;
  padding: 10px 15px;
  background: #fdfdfd;
  color: #666;
}
.reveal blockquote > cite {
  color: #aaa;
}
.h1 {
  font-family: var(--r-heading-font);
  font-weight: var(--r-heading-font-weight);
  font-size: var(--r-heading1-size);
}
h2.subtitle {
  color: #777;
  margin-bottom: 0;
}
h2.subtitle {
  font-size: calc(0.6 * var(--r-heading2-size));
}
.reveal h1, .reveal h2, .reveal h3, .reveal h4, .reveal h5, .reveal h6 {
  font-variant: small-caps;
}
.small {
  font-size: 0.8em;
}
.smaller {
  font-size: 0.7em;
}
.smallest {
  font-size: 0.5em;
}
code:not(.hljs) {
  font-size: 0.7em;
  background-color: #fafafa;
  color: var(--r-link-color);
  padding: 0.3em 0.4em;
  vertical-align: middle;
}

pre.shell-output {
  width: 90%;
  padding: 0.5em;
  font-size: 0.6em;
  color: #0A1045;
  background-color: #fbfbfb;
  box-shadow: none;
  box-sizing: border-box;
  white-space: pre-wrap;
  line-height: 1.3;
}
.margin > li {
  margin-bottom: 1rem;
}
.margin + div {
  margin-top: 1rem;
}
.d-flex {
  display: flex;
}
.d-flex.half-columns > div {
  flex-basis: 50%;
  margin-right: 0.05em;
}
.d-flex.half-columns > div + div {
  margin-right: 0;
  margin-left: 0.05em;
}
.mt-0 {
  margin-top: 0 !important;
}
.mb-0 {
  margin-bottom: 0 !important;
}
.ml-0 {
  margin-left: 0 !important;
}

#about > div.half-columns {
  margin-top: 3rem;
}
#about > div.half-columns > div {
  display: flex;
}
#about > div.half-columns > div:only-child {
  margin-left: auto;
  margin-right: auto;
}
#about > div.half-columns > div > img {
  max-width: 100px;
  border-radius: 50%;
  margin: 0;
}
#about > div.half-columns > div > div {
  margin-left: 0.4em;
  align-self: center;
}
#about > div.half-columns > div > div > h6 {
  margin-bottom: 0;
}
img#footer {
  position: fixed;
  bottom: 24px;
  left: 24px;
  max-width: 100px;
  margin: 0;
}
.fill {
  opacity: 0.9;
  fill: #600000;
  transition: fill 0.5s ease;
}
#thanks > a {
  display: block;
  margin-bottom: 2rem;
}
#thanks > a > svg {
  vertical-align: middle;
  margin-right: 0.25em;
}
#thanks > a:hover .fill,
#thanks > a:focus .fill {
  fill: var(--r-link-color-dark);
}
figure > img {
  margin-bottom: 0;
}
figure {
  margin-bottom: var(--r-block-margin);
}
