.article-hero-heading {
  font-size: 48px;
  font-family: var(--serif);
  margin-bottom: 25px;
  font-weight: 700;
  line-height: 1.32;
}
.article-header {
  position: relative;
  z-index: 10;
  margin: 100px auto 100px;
  padding-left: 0;
  padding-right: 0;
  max-width: unset;
}
.article-hero-image {
  position: relative;
  max-width: 100%;
}
.aside-container {
  float:left;
}
h1, h2, h3, h4, h5, h6, .article-hero-subtitle {
  max-width:944px;
}
.text-center {
  text-align: center !important;
}
.text-left {
  text-align: left !important;
}
.text-right {
  text-align: right !important;
}
a {
  word-break: break-word;
}
p {
  margin: 0 auto 25px;
  max-width:880px;
}
ul, ol, div.code-toolbar {
  max-width:820px;
}
blockquote>p {
  max-width:944px !important;
}
p > code, li > code {
  display:inline-block;
  /*background:#292c34;*/
  /*color:#f8f8f2;*/
  background: #efefef;
  color: #242424;
  font-size:0.75em;
  padding:0.25em 0.5rem;
  border-radius: 2px;
}
center img, center picture source[type="image/webp"] {
  max-width:944px;
  margin: 10px auto 20px;
}
figure img, center picture source[type="image/webp"] {
  max-width:944px;
  margin: 1em auto 0;
  border:6px solid #292c34;
}
figure figcaption p {
  background: #292c34;
  font-size: 0.8em;
  padding:6px;
  max-width:944px;
  color:#fafaf8;
}
.pagination .page-item .page-link {
  text-align:center;
}
.author-avatar, .author-avatar * {
  height: inherit;
  width: 100%;
}
picture {
  height: 100%;
  max-height: 100%;
  width: 100%;
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
picture img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  max-width: 100%;
  min-height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
/*
picture source {
  -webkit-animation-name: image-load-in;
  animation-name: image-load-in;
  -webkit-animation-duration: .8s;
  animation-duration: .8s;
  vertical-align: middle;
}
*/
blockquote {
  margin: 50px auto 50px;
}
table {
  max-width:944px;
  margin: 35px auto;
}
table thead tr th {
  padding: 15px 30px;
}
.imgSetRow {
  justify-content: space-between;
  display: flex;
  max-width: 944px;
  margin: 0 auto;
  padding-top: 20px;
  padding-bottom: 40px;
}
.img-cols-3 {
  max-width: 23%;
}
.img-cols-4 {
  max-width: 31%;
}
.img-cols-6 {
  max-width: 48%;
}
li ul {
  padding: 25px 0 0 32px;
  display:inline-block;
}
.article-metadata {
  opacity: 1;
}
.centeredPictureHolder {
  text-align: center;
  width:100%;
  margin: 0 auto;
  max-width:944px;
}
.article-hero-image .centeredPictureHolder {
  max-width: inherit;
}
.author-hero-image .centeredPictureHolder {
  height:100%
}
.icon-wrapper {
  height:40px;
}
.moon-mask {
  height: 32px;
  width: 28px;
}
@media only screen and (max-width: 768px) {
  /* For mobile phones: */
  [class*="img-cols-"] {
    max-width: 100%;
  }
  blockquote {
    word-break: break-word;
  }
  [class*="img-cols-"] img, [class*="img-cols-"] picture source[type="image/webp"] {
    margin: 1em 0;
  }
  center img, center picture source, .centeredPictureHolder, .centeredPictureHolder img, .centeredPictureHolder picture source {
    max-width:100%;
  }
  table {
    max-width: 768px !important;
    width: 100% !important;
    overflow: scroll !important;
    display: inline-block !important;
  }
  table thead tr th {
    padding: 14px 20px;
  }
  .imgSetRow {
    display: inline-block;
  }
  .article-hero-image {
    max-width: 100vw;
    width: 100vw;
    margin-left: -4rem;
  }
  .layout-styled {
    margin-top: -2rem;
  }
  .post-content {
    padding: 35px 0;
  }
  blockquote {
    padding: 0 20px;
  }
}
.author-hero-image img, .author-hero-image picture source[type="image/webp"] {
  height: 100%;
}
.social-icon-container a {
  margin-right: 0;
  text-align: center;
  display: inline-block;
  width: 100%;
}
.post-content {
  padding: 80px 0 35px;
}
.article-hero-subtitle {
  border:none;
  padding: 0;
}
.maxWidthWrapper {
  max-width: 100%;
  overflow: auto;
}
div.code-toolbar pre, .code-toolbar pre {
  max-height: 693px;
  padding: 2.5em!important;
  border-radius: 0 !important;
}
div.code-toolbar pre.line-numbers, .code-toolbar pre.line-numbers {
  max-height: 693px;
  padding: 2.5em!important;
  padding-left: 5em!important;
  border-radius: 0 !important;
}
#articleComments {
  padding-bottom:20px;
}
#articleComments h3.footer-next-heading {
  margin-bottom:30px;
}
#articleTOC {
  padding-top:100px;
}
time {
  display: inline-block;
  margin: 0 0.25em 0 0;
}
h4 code, h5 code {
  background: #292c34!important;
  padding: 10px;
  color: #FAFAFA;
}

.command-line span.token.output {
	user-select: none;
}

ul.pagination {
  max-width: 640px !important;
  margin: 90px auto 0 !important;
}
li.page-item.active {
  font-weight: bold;
}
.pagination .page-item {
  flex: 1;
}
.pagination .page-item .page-link {
  min-width: fit-content;
}

.slideshow-holder {
  justify-content: center;
  display: flex;
  margin: 0 auto 30px;
}

/* https://www.w3schools.com/howto/howto_js_slideshow.asp */
/* Slideshow container */
.slideshow-container {
  max-width: 944px;
  max-height: 420px;
  position: relative;
  margin: auto;
  display: inline-block;
}

/* Hide the images by default */
.slideshow-container .mySlides {
  display: none;
  max-height: 420px;
}
.slideshow-container img {
  max-height: 420px;
}

/* Next & previous buttons */
.slideshow-container .prev, .slideshow-container .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
  opacity: 0.25;
}

/* Position the "next button" to the right */
.slideshow-container .next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.slideshow-container .prev:hover, .slideshow-container .next:hover {
  background-color: rgba(0,0,0,0.8);
  opacity: 1;
}

/* Caption text */
.slideshow-container .text {
  color: #f2f2f2;
  font-size: 15px;
  padding: 8px 12px;
  position: absolute;
  bottom: 8px;
  width: 100%;
  text-align: center;
  display: none;
  background-color: rgba(0,0,0,0.6);
}

.row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 888px;
  margin: 0 auto;
}
.row.wide {
  max-width: 944px;
}
.row .column {
  margin: 0 10px;
  padding: 0;
  /*
  flex: 1;
  max-width: 100%;
  */
}

/* each col is 8.3333333333% */
.col-1 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 8.33%;
  flex: 0 0 8.33%;
  max-width: calc(8.33% - 20px);
}

.col-2 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 16.66%;
  flex: 0 0 16.66%;
  max-width: calc(16.66% - 20px);
}

.col-3 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: calc(25% - 20px);
}

.col-4 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.33%;
  flex: 0 0 33.33%;
  max-width: calc(33.33% - 20px);
}

.col-5 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 41.66%;
  flex: 0 0 41.66%;
  max-width: calc(41.66% - 20px);
}

.col-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: calc(50% - 20px);
}

.col-7 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 58.33%;
  flex: 0 0 58.33%;
  max-width: calc(58.33% - 20px);
}

.col-8 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 66.66%;
  flex: 0 0 66.66%;
  max-width: calc(66.66% - 20px);
}

.col-9 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  max-width: calc(75% - 20px);
}

.col-10 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 83.33%;
  flex: 0 0 83.33%;
  max-width: calc(83.33% - 20px);
}

.col-11 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 91.66%;
  flex: 0 0 91.66%;
  max-width: calc(91.66% - 20px);
}

.col-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}


.slideshow-container .mySlides:hover .text {
  display: block;
}

/* Number text (1/3 etc) */
.slideshow-container .numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.slideshow-container-dot {
  cursor: pointer;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.slideshow-container-dot .active, .slideshow-container-dot:hover {
  background-color: #717171;
}

/* Fading animation */
.slideshow-container .fade {
  animation-name: fade;
  animation-duration: 1.5s;
}

@keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}