/* Force a narrower reading width for blog posts and pages */
.page__content,
.post__content {
  max-width: 750px !important;
  margin: 0 auto !important;
  padding: 2rem 1rem !important;
  font-size: 1.05em;
  line-height: 1.7;
}

/* Center headings and make them match the body width */
.page__content h1,
.page__content h2,
.page__content h3,
.post__content h1,
.post__content h2,
.post__content h3 {
  max-width: 750px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Center and scale images */
.page__content img,
.post__content img {
  display: block;
  margin: 2rem auto !important;
  max-width: 100% !important;
  height: auto !important;
  border-radius: 8px;
}

/* Keep tables and code blocks inside the text column */
.page__content table,
.post__content table,
.page__content pre,
.post__content pre {
  max-width: 100% !important;
  margin: 1.5rem auto !important;
}

body {
  background-color: #fafafa;
  color: #222;
}

a {
  color: #0056b3;
  text-decoration: none;
  transition: color 0.2s ease, border-bottom 0.2s ease;
}

a:hover {
  color: #0078ff;
  border-bottom: 1px none #005bc2;
}

/* Headings */
h1, h2, h3 {
  transition: color 0.3s ease;
}

h1 a:hover,
h2 a:hover,
h3 a:hover {
  border-bottom: 1px none #0078ff !important;
}

/* Subtle arrow animation */
h2:hover::after {
  content: " *";
  transition: all 0.1s ease;
  color: #0078ff;
}

/* Sidebar style */
.sidebar {
  background: #fff;
  border-radius: 12px;
  padding: 1em;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.sidebar__highlights a:hover {
  color: #0056b3;
  border-bottom: none;
  font-weight: 600;
}

/* Accent underline for section titles */
h2 {
  border-bottom: 2px solid #e6e6e6;
  padding-bottom: 0.2em;
  margin-bottom: 0.8em;
}
/* Fix white strip inside header */
.masthead__inner-wrap {
  background-color: #1c1c1c !important; /* same as header */
  color: #cccccc !important;
}

/* Ensure nav text stays visible */
.masthead__menu-item a,
.site-title {
  color: #cccccc !important;
}

.masthead__menu-item a:hover,
.site-title:hover {
  color: #ffffff !important;
}

/* full-width dark masthead */
.masthead {
  background: #fafafa !important;
  border-bottom: none !important;
}

/* kill the centered white box */
.masthead__inner-wrap {
  background: transparent !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0.5rem 1.5rem !important;
}

/* the actual nav bar that was still white */
.greedy-nav {
  background: transparent !important;
  box-shadow: none !important;
}

/* links */
.masthead__menu-item a,
.masthead__menu-item--lg > a,
.site-title {
  color: #000000 !important;
}

/* hover + active */
.masthead__menu-item a:hover,
.masthead__menu-item a:focus,
.masthead__menu-item a:active {
  color: #011e3a !important;
}

/* optional: keep the page content from touching the top */
.page, .page__inner-wrap {
  background: transparent;
}