.search-input {
  position: absolute;
  right: 15px;
  width: 0;
  height: 38px;
  padding: 0;
  border: 1px solid #ddd;
  opacity: 0;
  transition: all 0.5s ease-in-out;
  cursor: text;
  z-index: 3;
}

article pre code[class*="language-"] {
  display: block;
}

.search-form:hover .search-input,
.search-input:focus {
  width: 100%;
  padding: 0 10px;
  opacity: 1;
}

.search-input:focus + .search-btn {
  display: none;
}

.blog-header {
  line-height: 1;
  border-bottom: 1px solid #e5e5e5;
}

.blog-header-logo {
 /* font-family: "Playfair Display", Georgia, "Times New Roman", serif;*/
  font-size: 2.25rem;
  text-decoration: none;
}

.container a, .search-icon, footer a, .subscribe_link {
  color: #8c2612;
  text-decoration: none;
}

.container a:hover, footer a:hover {
  color: #77372b;
}

.subscribe_link {
  cursor: grab;
}

.tags a {
  padding: .1rem;
}

.tags a:hover {
  box-shadow: 0 1px 5px #ccc;
}

.image-container {
  height: 400px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1rem;
}

.image-container img {
  max-height: 100%;
  max-width: 100%;
  object-fit: cover;
}

@media (max-width: 768px) {
  .image-container {
    height: 200px;
  }
}

code, pre {
  font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace;
}

article p {
  margin: 1rem 0;
}

.blog-post .page-link {
  border: none;
}
.blog-post .page-link:hover {
  border: none;
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc;
  background-color: unset;
}

.blog-post code {
  color: #9b1900;
}

.disclaimer {
  background-color: #eee;
  padding: 1rem;
  border: 1px solid #e4e4e4;
  border-radius: .1rem;
}

article h1, article h2, article h3, article h4, article h5, article h6 {
  /*font-family: "Playfair Display", Georgia, "Times New Roman", serif;*/
  margin: 1.5rem auto;
}

article blockquote {
  border-left: 5px solid #c4c4c4;
  padding-left: 1rem;
  font-size: 1.2rem;
  margin: 1.5rem;
}

article figure img {
  margin: auto;
  display: block;
}

.blog-header-logo:hover span:nth-of-type(1) {
  color: #77372b;
}

.blog-header-logo:hover span:nth-of-type(2) {
  color: #b9b9b9;
}

.display-4 {
  font-size: 2.5rem;
}
@media (min-width: 768px) {
  .display-4 {
    font-size: 3rem;
  }
}

.nav-scroller {
  position: relative;
  z-index: 2;
  height: 2.75rem;
  overflow-y: hidden;
}

.nav-scroller .nav {
  display: flex;
  flex-wrap: nowrap;
  padding-bottom: 1rem;
  margin-top: -1px;
  overflow-x: auto;
  text-align: center;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

.nav-scroller .nav-link {
  padding-top: .75rem;
  padding-bottom: .75rem;
  font-size: .875rem;
}

.card-img-right {
  height: 100%;
  border-radius: 0 3px 3px 0;
}

.flex-auto {
  flex: 0 0 auto;
}

.h-250 { height: 250px; }
@media (min-width: 768px) {
  .h-md-250 { height: 250px; }
}

/* Pagination */
.blog-pagination {
  margin-bottom: 4rem;
}
.blog-pagination > .btn {
  border-radius: 2rem;
}

/*
 * Blog posts
 */
.blog-post {
  margin-bottom: 2rem;
  overflow-wrap: break-word;
}
.blog-post-title {
  margin: 0 0 1.5rem 0;
  font-size: 2.5rem;
}
.blog-post-meta {
  margin-bottom: 1.25rem;
  color: #727272;
}
.blog-pre-post-meta {
  margin-bottom: .5rem;
  color: #727272;
}

/*
 * Footer
 */
.blog-footer {
  padding: 2.5rem 0;
  color: #727272;
  text-align: center;
  background-color: #f9f9f9;
  border-top: .05rem solid #e5e5e5;
}
.blog-footer p:last-child {
  margin-bottom: 0;
}

span.cursor:after {
  content: '';
  position: relative;
  top: 0.15rem;
  width: 5px;
  height: 15px;
  background: #505050;
  opacity: 1;
  z-index: 3;
  display: inline-block;
  animation: cursor 1s infinite step-end;
}

@keyframes cursor {
  50% { background: transparent; }
}