/* Anonymous adaptation of the Nerfies template; upstream styles are vendored. */
body,
.teaser,
.publication-title,
.publication-authors {
  font-family: Arial, Helvetica, sans-serif;
}

body { min-width: 320px; }
.publication-title { overflow-wrap: break-word; }
.submission-status { margin-top: 0.25rem; color: #595959; }
.video-frame {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 10px;
  background: #f5f5f5;
  border: 1px solid #dbdbdb;
}
.video-frame video,
.video-frame img { display: block; width: 100%; height: 100%; object-fit: contain; }
.video-coming-soon {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  color: #595959;
}
.video-coming-soon strong { font-size: clamp(1.5rem, 4vw, 2rem); color: #363636; }
.teaser-caption { margin-top: 1.5rem; line-height: 1.5; }
.name-origin { max-width: 44rem; margin: 0 auto; line-height: 1.75; color: #595959; }
.template-credit { font-size: 0.875rem; }
.footer a { text-decoration: underline; }
:focus-visible { outline: 3px solid #1769aa; outline-offset: 4px; }
.skip-link { position: fixed; top: -100px; left: 1rem; z-index: 10; padding: 0.75rem 1rem; background: #fff; }
.skip-link:focus { top: 1rem; }
@media screen and (max-width: 768px) {
  .publication-title.title.is-1 { font-size: 2rem; }
  .teaser .hero-body { padding-inline: 1.5rem; }
}
