

.news-cards {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 3vw;
}

.news-card {
  position: relative;
  width: calc((100% - 6vw) / 3);
  background-color: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(100px);
  -webkit-backdrop-filter: blur(100px);
  border-radius: 25px;
  overflow: hidden;
}

.news-card-link::after { content: ""; position: absolute; inset: 0; }
.news-card:focus-within { outline: 2px solid currentColor; outline-offset: 3px; }

.news-card-img-wrapper {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
}

.news-card-img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0%;
  left: 0%;
}

.news-card-content {
  padding: 20px 30px 30px 30px;
  /*height: 300px;*/
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  gap: 0px;
}

.news-card-heading {
  font-size: clamp(22px, 1.35vw, 26px);
  font-weight: 400;
  line-height: 1.0769;
  /*overflow: hidden;*/
  /*text-overflow: ellipsis;*/
  /*display: -webkit-box;*/
  /*-webkit-line-clamp: 2;*/
  /*line-clamp: 2;*/
  /*-webkit-box-orient: vertical;*/
}

.news-card-date {
  font-size: 16px;
  line-height: 1.125;
  opacity: 0.65;
  margin-top: 7px;
}

.news-card {
  display: flex;
  flex-direction: column;
}


@media only screen and (max-width: 1024px) {
  .news-card {
      width: calc((100% - 3vw) / 2);
  }
}


@media only screen and (max-width: 1024px) {
  .news-cards > .news-card:nth-child(n + 5) {
    display: none;
  }
}

@media only screen and (max-width: 769px) {
    .news-card {
      width: calc((100% - 3vw) / 2);
    }
}

@media only screen and (max-width: 480px) {
  .news-cards {
    gap: 25px;
  }
}

@media only screen and (max-width: 480px) {

  .news-card {
     width: 100%;
  }
}

/* The truncated list itself opens the complete project list. */
.news-byline.is-truncated .news-byline-content {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}

.news-byline.is-truncated {
  display: inline-block;
  max-width: 100%;
  vertical-align: top;
}

.project-span {
  font-size: 18px;
  line-height: 1.1111;
  color: #BBA2CD;
  margin-bottom: 5px;
}

.news-button {
  padding: 23px;
  border: 1px solid white;
  border-radius: 45px;
  background-color: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(100px);
  -webkit-backdrop-filter: blur(100px);
  align-self: flex-end;
}


.news-byline[role="button"] { position: relative; z-index: 1; cursor: help; border-radius: 4px; }
.news-byline[role="button"]:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.news-project-popover {
  position: fixed;
  inset: auto;
  margin: 0;
  width: min(440px, calc(100vw - 24px));
  max-height: min(360px, calc(100svh - 24px));
  overflow: auto;
  box-sizing: border-box;
  padding: 18px 22px;
  border: 1px solid rgba(255, 255, 255, 0.85);
  border-radius: 20px;
  background: rgba(242, 234, 244, 0.96);
  color: #444;
  box-shadow: 0 12px 36px rgba(65, 43, 87, 0.15);
  backdrop-filter: blur(24px);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
