.research-poster-frame {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(48, 40, 34, 0.22);
  border-radius: 14px;
  background: #25323a;
  box-shadow: 0 22px 48px rgba(39, 30, 24, 0.22);
}

.research-poster-frame > img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.research-project-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  padding: 14px;
  background: rgba(253, 246, 232, 0.96);
  border-top: 1px solid rgba(48, 40, 34, 0.16);
}

.research-project-actions a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid rgba(67, 59, 53, 0.24);
  border-radius: 999px;
  color: #493d35;
  background: #fff8e9;
  font-size: 0.78rem;
  font-weight: 900;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease;
}

.research-project-actions a:hover {
  background: #ffe6b7;
  transform: translateY(-2px);
}

.contact-profile {
  display: block;
  width: min(180px, 46vw);
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid rgba(59, 50, 43, 0.22);
  border-radius: 22px;
  background: #eadfce;
  box-shadow: 0 18px 36px rgba(54, 43, 34, 0.18);
}

.contact-profile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}

.contact-actions .is-secondary {
  color: #55483f;
  background: #fff8e9;
  border: 1px solid rgba(67, 59, 53, 0.24);
}

@media (max-width: 820px) {
  .research-project-actions {
    padding: 10px;
  }

  .research-project-actions a {
    min-height: 34px;
    padding: 7px 10px;
    font-size: 0.7rem;
  }

  .contact-profile {
    width: 132px;
    border-radius: 17px;
  }
}
