.error-template .main {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 60vh;
  text-align: center;
  margin-left: 0 !important;
  float: none !important;
  width: 100%;
}

.site-footer {
  text-align: center;
  padding-left: 8.3334% !important;
}

/* Fix sidebar clipping: replace absolute-positioned sidebar with flexbox
   so .overflow-container grows to fit whichever is taller (sidebar or main). */
@media all and (min-width: 56.25em) {
  .overflow-container {
    overflow: visible;
  }
  .max-width {
    display: flex;
    align-items: flex-start;
  }
  .main-sidebar {
    position: sticky !important;
    top: 0;
    align-self: flex-start;
    flex-shrink: 0;
    min-height: unset !important;
  }
  .main {
    float: none !important;
    flex: 1;
    margin-left: 0 !important;
    min-width: 0;
    align-self: stretch;
  }
}

@media all and (min-width: 68.75em) {
  .post-header {
    margin-bottom: 0;
    color: grey;
  }
  .post-content {
    padding-bottom: 0;
    margin: 0;
  }

  .blog .post-content,
  .archive .post-content,
  .search .post-content,
  .blog .entry,
  .archive .entry,
  .search .entry {
    padding-bottom: 0;
    margin-top: 2em;
  }
}

.post-title,
.post-title a,
.post-title a:link,
.post-title a:visited {
  color: crimson;
}

small {
  font-size: 80%;
}

p {
  margin: 1em 0;
}

.duration {
  font-style: italic;
}

.location {
  font-style: italic;
}

.archive-header {
  color: dimgrey;
  margin-bottom: 0;
  font-size: 2em;
}

.archive-header h1 {
  font-weight: 600;
  margin-bottom: 1em;
}

.archive-header p {
  font-size: 0.5em;
  margin-top: 1em;
  margin-bottom: 1em;
}

a:link,
a:visited {
  color: darkcyan;
}

.post-content a:link:only-child,
.post-content a:active:only-child,
.post-content a:visited:only-child,
ul.horizontal-list li a:link,
ul.horizontal-list li a:active,
ul.horizontal-list li a:visited {
  border: none;
}

.post-content a::after {
  display: none;
}

.post-content a i {
  font-size: 1.5em;
}

a:hover,
a:active,
a:focus {
  color: #0f5858;
}

ul.horizontal-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

ul.horizontal-list.references,
.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5 {
  padding: 1em 0 0 0;
}

ul.horizontal-list li {
  float: left;
}

ul.horizontal-list li a {
  display: block;
  text-align: center;
  padding-right: 1em;
  text-decoration: none;
  border: none;
}

.post-categories span + span::before {
  content: ", ";
}

.cat-count,
.cat-item details > summary .cat-count {
  color: #333;
}

.cat-item details > summary {
  display: inline-block;
  cursor: pointer;
  color: darkcyan;
}

.cat-item details > summary .cat-title {
  border-bottom: solid 1px #a5d3ed;
}

.cat-item details > summary::-webkit-details-marker {
  display: none;
}

.cat-item details > summary::marker {
  display: none;
  content: "";
}

.cat-item details > summary:hover {
  color: #0f5858;
}

.menu-primary-container .widget,
.menu-primary-container .widget ul {
  margin-bottom: 0 !important;
}

.add-on-container {
  margin-top: 1em;
}

.social-media-icons .privacy-notice a,
.social-media-icons .privacy-notice a:link,
.social-media-icons .privacy-notice a:visited {
  width: auto;
  height: auto;
  line-height: inherit;
  border: none;
  border-radius: 0;
  display: inline;
  color: darkcyan;
}

.social-media-icons .privacy-notice a:hover,
.social-media-icons .privacy-notice a:active,
.social-media-icons .privacy-notice a:focus {
  color: #0f5858;
}
