.home-page {
  background: #fbfcfd;
}

.home-page .site-header {
  background: transparent;
  border-top-color: transparent;
}

.home-page .brand {
  mix-blend-mode: multiply;
}

.home-page .identity {
  
  border-radius: 0 0 16px 16px;
  padding-inline: 18px;
  background: transparent;
}

.home-page .primary-nav {
  background: transparent;
  border-color: transparent;
  
}

.home-page .is-stuck .primary-nav {
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 4px 18px rgba(23, 60, 93, 0.08);
}

.home-page .nav-inner a:hover {
  background: rgba(255, 255, 255, 0.4);
}

.home-main {
  margin-top: calc(-1 * var(--header-height, 188px));
}

.home-cover {
  position: relative;
  min-height: max(760px, 100svh);
  display: grid;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  padding: calc(var(--header-height, 188px) + 60px) 0 80px;
  background: #e0ebe3;
}

.cover-art {
  position: absolute;
  inset: 0;
  z-index: -2;
  container-type: size;
}

.cover-art img {
  position: absolute;
  inset: 0;           
  width: 100%;        
  height: 100%;       
  max-width: none;
  object-fit: cover;  
  object-position: 0% 50%;
  filter: brightness(1.02) saturate(1.18) contrast(0.9);
}

.home-cover::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(246, 249, 247, 0.94), rgba(246, 249, 247, 0.72) 34%, rgba(246, 249, 247, 0.06) 75%);
  
}

.cover-copy {
  position: absolute;
  left: 5%;
  top: 37%;
  width: 46%;
  
}

.cover-copy h1 {
  font-size: clamp(52px, 6vw, 92px);
  line-height: 1.15;
  letter-spacing: -3px;
  text-align: center;
}

.cover-copy p {
  text-align: center;
}

.cover-subtitle {
  margin: 10px 0 24px;
  color: var(--blue-700);
  font-size: clamp(17px, 1.5vw, 23px);
  letter-spacing: 2px;
}

.cover-copy h2 {
  font-size: 40px;
  margin-bottom: 20px;
  text-align: center;
  color: var(--blue-800);
  font-weight: bolder;
}
.cover-copy h3 {
  font-size: 25px;
  margin-bottom: 14px;
  text-align: center;
  color: var(--blue-800);
  font-weight: normal;
}

.home-sections {
  padding-block: 70px 90px;
}

.home-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}

.home-section-heading h2 {
  display: inline-block;
  padding-bottom: 10px;
  border-bottom: 3px solid var(--blue-600);
  font-size: 30px;
}

.more-link {
  padding: 3px 16px;
  border: 1px solid var(--blue-400);
  border-radius: 999px;
  white-space: nowrap;
}

.more-link:hover {
  background: var(--blue-600);
  color: white;
}

.research-previews {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
}

.research-preview,
.publication-preview,
.news-preview {
  display: grid;
  min-width: 0;
  overflow: hidden;
  position: relative;
}

.research-preview > img {
  width: 100%;
  height: 210px;
  object-fit: cover;
}

.research-preview > div {
  padding: 22px 26px;
}

.home-sections h3 {
  font-size: 20px;
  margin-bottom: 10px;
}

.home-sections p {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.8;
}

.home-updates {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 36px;
  margin-top: 64px;
}

.publication-previews,
.news-previews {
  display: grid;
  gap: 24px;
}

.publication-preview,
.news-preview {
  grid-template-columns: 32% minmax(0, 1fr);
  align-items: center;
}

.publication-preview > img,
.news-preview > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 180px;
}

.publication-preview > div,
.news-preview > div:not(.news-date) {
  padding: 24px;
}

.news-date {
  position: absolute;
  top: 12px;
  left: 12px;
  display: flex;
  align-items: center;
  gap: 5px;
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 12px;
  color: var(--blue-900);
  background: rgba(255,255,255,0.94);
}

.news-date small {
  order: -1;
  font-size: inherit;
}

.preview-category,
.publication-preview .preview-meta {
  font-size: 12px;
  color: var(--blue-600);
}

.preview-category {
  display: block;
  margin-bottom: 6px;
}

@media (max-width: 1000px) {
  .home-updates {
    grid-template-columns: minmax(0, 1fr);
    gap: 48px;
  }

  .home-page .identity {
    padding-inline: 10px;
  }
}

@media (max-width: 760px) {
  .research-previews {
    grid-template-columns: minmax(0, 1fr);
  }

  .research-preview {
    grid-template-columns: 34% minmax(0, 1fr);
    align-items: center;
  }

  .research-preview > img {
    height: 100%;
  }

  .home-cover {
    min-height: 100svh;
    padding-top: calc(var(--header-height, 220px) + 48px);
    padding-bottom: 64px;
  }

  .home-cover::after {
    background: rgba(246,249,247,0.72);
  }

  .cover-subtitle {
    margin-bottom: 30px;
  }
}

@media (max-width: 480px) {
  .home-page .identity {
    padding-inline: 0;
  }

  .cover-copy h1 {
    font-size: 48px;
  }

  .home-sections {
    padding-block: 42px;
  }

  .research-preview,
  .publication-preview,
  .news-preview {
    grid-template-columns: minmax(0, 1fr);
  }

  .research-preview > img,
  .publication-preview > img,
  .news-preview > img {
    height: 190px;
    min-height: 0;
  }
}
