.supported-event-preview {
  background: #f1f6f4;
  border-block: 1px solid #dce6e1;
}
.supported-event-preview__grid {
  display: grid;
  grid-template-columns: minmax(220px, 330px) minmax(0, 1fr);
  gap: 40px;
  align-items: center;
}
.supported-event-preview__poster {
  display: block;
  aspect-ratio: 1;
}
.supported-event-preview img,
.supported-event__poster img {
  display: block;
  width: 100%;
  height: auto;
}
.supported-event-preview h2 {
  font-size: 28px;
  line-height: 1.45;
  margin: 0 0 16px;
}
.supported-event__role {
  color: #056246;
  font-weight: 700;
}
.supported-event__schedule {
  font-size: 16px;
  line-height: 1.8;
}
.supported-event__header {
  max-width: 920px;
  margin-bottom: 40px;
}
.supported-event__header h1 {
  font-size: 38px;
  line-height: 1.4;
  margin: 0 0 20px;
}
.supported-event__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 330px);
  gap: 48px;
  align-items: start;
}
.supported-event__body,
.supported-event__aside {
  min-width: 0;
  overflow-wrap: anywhere;
}
.supported-event__body p {
  line-height: 1.9;
}
.supported-event__body h2 {
  font-size: 25px;
  margin-top: 32px;
}
.supported-event__body h3 {
  font-size: 20px;
  margin-top: 24px;
}
.supported-event__aside {
  border-left: 1px solid #dce6e1;
  padding-left: 28px;
}
.supported-event__aside h2 {
  font-size: 22px;
  margin-top: 0;
}
.supported-event__aside dl {
  margin-bottom: 24px;
}
.supported-event__aside dt {
  font-size: 14px;
  font-weight: 700;
  color: #52645a;
  margin-top: 16px;
}
.supported-event__aside dd {
  margin: 4px 0 0;
  line-height: 1.65;
}
.supported-event__poster {
  margin: 32px 0 16px;
}
.supported-event__poster figcaption,
.supported-event__note {
  font-size: 14px;
  color: #52645a;
  line-height: 1.7;
}
.supported-event__links {
  padding-left: 20px;
  line-height: 1.7;
}
.supported-event__links li {
  margin-bottom: 12px;
}
@media (max-width: 760px) {
  .supported-event-preview__grid,
  .supported-event__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  .supported-event-preview__poster {
    width: min(100%, 360px);
  }
  .supported-event-preview h2 {
    font-size: 24px;
  }
  .supported-event__header h1 {
    font-size: 28px;
  }
  .supported-event__aside {
    border-left: 0;
    border-top: 1px solid #dce6e1;
    padding: 24px 0 0;
  }
}
