/* Break out of the centered Mission copy to span the viewport. */
#mission-bg #m-news {
  --mission-news-max-height: 50vh;
  position: relative;
  width: 100vw;
  max-width: none;
  left: 50%;
  margin-left: -50vw;
}
@supports (height: 100dvh) {
  #mission-bg #m-news { --mission-news-max-height: 50dvh; }
}
#mission-bg #m-news-grid .mission-news-carousel__track {
  display: flex;
  gap: .75rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  align-items: flex-end;
  max-height: var(--mission-news-max-height);
}
#mission-bg #m-news-grid .mission-news-carousel__track::-webkit-scrollbar {
  display: none;
}
#mission-bg #m-news-grid .mission-news-carousel__slide {
  flex: 0 0 auto;
  width: auto;
  max-width: clamp(220px, 25vw, 360px);
  max-height: var(--mission-news-max-height);
  scroll-snap-align: start;
  transform: none;
}
#mission-bg #m-news-grid .mission-news-carousel__slide > img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: var(--mission-news-max-height);
  object-fit: contain;
}
#mission-bg #m-news-grid .mission-news-carousel__slide:focus-visible {
  outline: 2px solid #fff;
  outline-offset: -2px;
}
.mission-news-carousel__controls {
  position: absolute;
  z-index: 12;
  inset: 0;
  pointer-events: none;
}
.mission-news-carousel__controls button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: auto;
  background: transparent;
  color: #fff;
  border: 1px solid currentColor;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  font-size: 1.5rem;
  line-height: 1;
}
.mission-news-carousel__controls [data-news-direction="-1"] { left: .75rem; }
.mission-news-carousel__controls [data-news-direction="1"] { right: .75rem; }
.mission-news-carousel__controls button:disabled { opacity: .3; }
@media (max-width: 600px) {
  #mission-bg #m-news-grid .mission-news-carousel__slide { max-width: 75vw; }
}
