/* Bootstrap 5.3 Blog layout overrides */

.site-branding {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.site-logo {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
}

.site-tagline {
  display: block;
  line-height: 1.3;
  max-width: 14rem;
}

.blog-header-logo {
  font-size: 2.25rem;
  font-weight: 800;
}

.blog-header-logo:hover {
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6,
.display-5, .display-6,
.section-heading,
.sidebar-heading,
.blog-post h1,
.blog-post h2,
.blog-post h2 a,
.blog-post h3,
.card-title a,
.sidebar-post-link h6 {
  font-weight: 700;
}

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

.blog-post {
  margin-bottom: 3rem;
}

.blog-post-meta {
  margin-bottom: 1.25rem;
  color: #727272;
}

.featured-jumbotron {
  transition: box-shadow 0.2s ease;
}

.featured-jumbotron:hover {
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.08);
}

.sidebar-post-link:hover h6 {
  text-decoration: underline;
}

.nav-scroller {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  cursor: grab;
}

.nav-scroller:active {
  cursor: grabbing;
}

.nav-scroller .nav {
  flex-wrap: nowrap !important;
  width: max-content;
  min-width: 100%;
  margin: 0 auto;
  padding-bottom: 2px;
}

.nav-scroller .nav .nav-link {
  flex-shrink: 0;
  white-space: nowrap;
}

.nav-scroller::-webkit-scrollbar {
  display: none;
}

.article-content p {
  margin-bottom: 1.25rem;
  line-height: 1.8;
}

.article-content p:last-child {
  margin-bottom: 0;
}