/* Prevent FOUC - hide mobile overlay until opened */
@media (max-width: 781px) {
  .wp-block-navigation__responsive-container.is-menu-overlay:not(.is-menu-open) {
    visibility: hidden !important;
  }
}

.mh-featured {
  margin-bottom: 3rem;
}
.mh-featured .wp-block-columns {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 2rem;
}
.mh-featured .wp-block-column {
  flex: 1 1 0;
  min-width: 0;
}

.mh-featured .wp-block-post-featured-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
  border-radius: 2px;
}

/* Stack columns vertically on tablet/mobile */
@media (max-width: 1200px) {
  .mh-featured .wp-block-columns {
    flex-direction: column;
    gap: 1.5rem;
  }
  .mh-featured .wp-block-column,
  .mh-featured .wp-block-column:first-child {
    margin: 0 auto;
    max-width: 100%;
    flex: 1 1 100%;
  }
}

/* Prevent excerpt and button from overflowing */
.mh-featured .wp-block-post-excerpt {
  overflow-wrap: break-word;
  word-break: break-word;
}

/* Make sure the image fills its column but doesn't overflow */
.mh-featured .wp-block-post-featured-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

/* On screens <= 900px, stack the columns vertically */
@media (max-width: 900px) {
  .mh-featured .wp-block-columns {
    flex-direction: column !important;
    gap: 1.5rem;
  }
  .mh-featured .wp-block-column {
    max-width: 100%;
    flex-basis: 100% !important;
  }
}

/* Cap the image column on large screens */
.mh-featured .wp-block-column:first-child {
  max-width: 600px;
  flex-basis: 600px;
}

/* Make sure the image fills its column but doesn't overflow */
.mh-featured .wp-block-post-featured-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

/* On screens <= 900px, stack the columns vertically */
@media (max-width: 900px) {
  .mh-featured {
    grid-template-columns: 1fr;
  }
  .mh-featured .wp-block-column {
    max-width: 100%;
    flex-basis: 100%;
  }
}
/* Media Highlights Page Styles */

/* Ensure site title styling when CSS variables aren't loaded */

main {
  max-width: 1200px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.mh-featured,
.mh-headlines-grid {
  margin-bottom: 3rem;
}

.page-template-page-media-highlights .wp-block-site-title a {
  font-family: var(--wp--preset--font-family--vollkorn, 'Vollkorn', serif);
  font-size: var(--wp--preset--font-size--x-large, 2.25rem);
  font-weight: 700;
  letter-spacing: -0.5px;
  text-decoration: none;
}

.is-content-justification-center {
  justify-content: center;
}

.is-content-justification-right {
  justify-content: right;
}

.align-top {
  align-items: flex-start;
}

ul.wp-block-post-template {
  box-sizing: border-box;
  list-style: none;
  margin-top: 0;
  max-width: 100%;
  padding: 0;
}

@media (min-width: 782px) {
  .wp-block-columns {
    flex-wrap: nowrap !important;
  }
}

@media screen and (max-width: 781px) {
  .wp-block-columns .wp-block-column {
    flex-basis: 100% !important;
  }
}

/* Responsive grid for the list (4 -> 2 -> 1 columns) */

/* Desktop: 4 full-width, then 2 side by side, repeat */
.page-template-page-media-highlights .wp-block-post-template.columns-4,
.page-template-page-media-highlights .media-highlights-grid {
  display: grid;
  gap: var(--wp--style--block-gap, 1em);
  grid-template-columns: 1fr 1fr;
}

@media (min-width: 1025px) {
  .page-template-page-media-highlights .wp-block-post-template.columns-4,
  .page-template-page-media-highlights .media-highlights-grid {
    grid-template-columns: repeat(4, 1fr);
  }
  /* 4 full width, then 2 side by side */
  .page-template-page-media-highlights .wp-block-post-template.columns-4 > li,
  .page-template-page-media-highlights .media-highlights-grid > li {
    grid-column: auto;
  }
  .page-template-page-media-highlights .wp-block-post-template.columns-4 > li:nth-child(6n + 5),
  .page-template-page-media-highlights .wp-block-post-template.columns-4 > li:nth-child(6n + 6),
  .page-template-page-media-highlights .media-highlights-grid > li:nth-child(6n + 5),
  .page-template-page-media-highlights .media-highlights-grid > li:nth-child(6n + 6) {
    grid-column: span 2;
  }
}

/* Mobile: 1-then-2 pattern (1 full width, then 2 side by side, repeat) */
@media (max-width: 599px) {
  .page-template-page-media-highlights .wp-block-post-template.columns-4,
  .page-template-page-media-highlights .media-highlights-grid {
    grid-template-columns: 1fr 1fr;
  }
  .page-template-page-media-highlights .wp-block-post-template.columns-4 > li,
  .page-template-page-media-highlights .media-highlights-grid > li {
    grid-column: auto;
  }
  .page-template-page-media-highlights .wp-block-post-template.columns-4 > li:nth-child(3n + 1),
  .page-template-page-media-highlights .media-highlights-grid > li:nth-child(3n + 1) {
    grid-column: 1 / -1;
  }
}
h2 {
  font-size: clamp(23.043px, 1.44rem + ((1vw - 3.2px) * 1.7), 32px);
  letter-spacing: -0.96px;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

.wp-block-post-date {
  font-size: small;
}

.wp-block-post-featured-image {
  margin-bottom: 0.2rem;
}

.wp-block-post-title {
  margin-top: 0;
  margin-bottom: 0.5rem;
}
