.news-board {
  background:
    radial-gradient(ellipse at 82% 3%, rgba(90, 61, 145, 0.2), transparent 42%),
    #0d0d20;
  color: #f7f4ff;
  font-family: "Lufga-Regular", Helvetica, sans-serif;
  min-height: calc(100vh - 80px);
  padding: clamp(48px, 7vw, 96px) max(24px, calc((100vw - 1120px) / 2)) 88px;
}

.news-board__hero {
  margin: 0 auto 64px;
  max-width: 790px;
  text-align: center;
}

.news-board__eyebrow {
  color: #9c8dea;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  margin: 0 0 12px;
  text-transform: uppercase;
}

.news-board__hero h1 {
  color: #f8f6ff;
  font-size: clamp(40px, 6vw, 64px);
  font-weight: 700;
  letter-spacing: -0.045em;
  line-height: 1.08;
  margin: 0;
}

.news-board__intro {
  color: #b6b1c9;
  font-size: 18px;
  line-height: 1.65;
  margin: 20px auto 0;
  max-width: 670px;
}

.news-board__section {
  margin: 0 auto 54px;
  max-width: 1120px;
}

.news-board__section-heading {
  align-items: end;
  border-bottom: 1px solid rgba(208, 198, 255, 0.14);
  display: flex;
  justify-content: space-between;
  margin-bottom: 22px;
  padding-bottom: 18px;
}

.news-board__section h2,
.news-board__cta h2 {
  color: #f8f6ff;
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 650;
  letter-spacing: -0.035em;
  margin: 0;
}

.news-board__status,
.news-board__date {
  color: #c0bad1;
  font-size: 13px;
}

.news-board__status {
  border: 1px solid rgba(162, 145, 235, 0.3);
  border-radius: 999px;
  padding: 8px 13px;
  white-space: nowrap;
}

.news-board__event-grid {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.news-board__card {
  background: linear-gradient(145deg, rgba(38, 34, 65, 0.88), rgba(22, 22, 42, 0.94));
  border: 1px solid rgba(184, 171, 239, 0.19);
  border-radius: 22px;
  min-height: 238px;
  padding: 28px;
}

.news-board__tag {
  color: #a99af1;
  display: inline-block;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.04em;
  margin-bottom: 18px;
  text-transform: uppercase;
}

.news-board__tag--accent {
  color: #8edcf0;
}

.news-board__card h3 {
  color: #f7f4ff;
  font-size: 23px;
  font-weight: 650;
  letter-spacing: -0.025em;
  margin: 0 0 10px;
}

.news-board__card p,
.news-board__updates p,
.news-board__cta p {
  color: #b6b1c9;
  font-size: 15px;
  line-height: 1.65;
  margin: 0;
}

.news-board__date {
  display: block;
  margin-top: 20px;
}

.news-board__note {
  color: #938da8;
  font-size: 13px;
  margin: 16px 2px 0;
}

.news-board__updates,
.news-board__cta {
  align-items: center;
  display: flex;
  justify-content: space-between;
  max-width: 1120px;
}

.news-board__updates h2 {
  margin-bottom: 8px;
}

.news-board__text-link {
  color: #8edcf0;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
}

.news-board__text-link:hover,
.news-board__text-link:focus-visible {
  color: #c6f1fb;
  text-decoration: underline;
}

.news-board__cta {
  background: linear-gradient(110deg, rgba(80, 60, 131, 0.42), rgba(36, 66, 92, 0.26));
  border: 1px solid rgba(170, 160, 225, 0.2);
  border-radius: 22px;
  gap: 24px;
  margin: 0 auto;
  padding: 28px;
}

.news-board__cta p {
  margin-top: 8px;
}

.news-board__button {
  align-items: center;
  background: #eae7ff;
  border-radius: 999px;
  color: #17142a;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 14px;
  font-weight: 650;
  gap: 10px;
  padding: 13px 18px;
  text-decoration: none;
}

.news-board__button:hover,
.news-board__button:focus-visible {
  background: #fff;
  color: #17142a;
}

@media (max-width: 700px) {
  .news-board {
    padding-left: 20px;
    padding-right: 20px;
  }

  .news-board__section-heading,
  .news-board__updates,
  .news-board__cta {
    align-items: flex-start;
    flex-direction: column;
  }

  .news-board__event-grid {
    grid-template-columns: 1fr;
  }
}
