
/* Improve header text contrast */
.site-title a,
.site-title a:visited {
	color: #222222;
}

/* Add space above featured images */
.archive .post-thumbnail,
.category .post-thumbnail {
  margin-bottom: 1em;
}

/* Make featured images stand out */
.home .post-thumbnail,
.blog .post-thumbnail {
  margin-bottom: 1em;
}
/* This doesn’t shorten the text, but visually de-emphasizes it */
.home .post .entry-content {
  max-height: 150px;
  overflow: hidden;
}
/* Header background */
.site-header {
    background-color: #f4f5f7;
    padding: 2rem 1rem;
    border-bottom: 1px solid #e5e5e5;
}
/* Post cards */
.post,
.hentry {
  background-color: #ffffff;
  padding: 1.75rem;
  margin-bottom: 2rem;
  border-radius: 6px;
  border: 1px solid #e6e6e6;
}
/* Force separators between featured posts (block-based layouts) */
.wp-block-group .wp-block-post,
.wp-block-group article,
.wp-block-group a {
  border-bottom: 1px solid #e6e6e6;
  padding-bottom: 1.25rem;
  margin-bottom: 1.25rem;
}

/* Prevent double lines on nested elements */
.wp-block-group a:last-child,
.wp-block-group article:last-child {
  border-bottom: none;
}

/* Consistent featured image size on homepage blocks */
.home .wp-block-post-featured-image img,
.blog .wp-block-post-featured-image img,
.home .post-thumbnail img,
.blog .post-thumbnail img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}
/* Tidy post titles on homepage & archives */
.home .entry-title,
.blog .entry-title,
.archive .entry-title {
  font-size: 1.25rem;
  line-height: 1.35;
  margin-bottom: 0.5rem;
}
@media (max-width: 600px) {
  .home .entry-title,
  .blog .entry-title,
  .archive .entry-title {
    font-size: 1.15rem;
  }
}
/* Improve in-post heading rhythm */
.entry-content h2 {
  line-height: 1.3;
  margin-top: 2.2rem;
  margin-bottom: 0.75rem;
}

.entry-content h3 {
  line-height: 1.35;
  margin-top: 1.8rem;
  margin-bottom: 0.5rem;
}
/* Query Loop column balance: image vs text */
.wp-block-query .wp-block-columns {
  gap: 1.25rem;
}

.wp-block-query .wp-block-column:first-child {
  flex: 0 0 160px;
}

.wp-block-query .wp-block-column:last-child {
  flex: 1;
}
@media (max-width: 600px) {
  .wp-block-query .wp-block-column:first-child {
    flex: 1 1 100%;
  }
}
/* Align query loop text to top of image */
.wp-block-query .wp-block-post-template li {
    align-items: flex-start;
}
.wp-block-post-title {
    margin-top: 0;
}
/* Pull query loop text up to align with image */
.wp-block-post-template .wp-block-post-title {
    margin-top: 0;
}

.wp-block-post-template .wp-block-post-excerpt {
    margin-top: 0.4em;
}
/* Contain featured slider on homepage */
.home .wp-block-group:has(.sliderberg) {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.home .featured-slider {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
/* Force Sliderberg to behave like a contained feature */
.home .sliderberg,
.home .sliderberg-wrapper {
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.home .sliderberg * {
  box-sizing: border-box;
}
/* Constrain Sliderberg to content width */
.wp-block-sliderberg {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

/* Prevent slides from overflowing viewport */
.wp-block-sliderberg * {
  max-width: 100%;
  box-sizing: border-box;
}
/* Force full-width Sliderberg blocks back into content width */
.alignfull .wp-block-sliderberg,
.wp-block-sliderberg.alignfull {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

/* Stop background from stretching full viewport */
.alignfull {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.wp-site-blocks .wp-block-sliderberg {
  max-width: 1100px !important;
  margin: 0 auto !important;
}
