@keyframes heart {

  0%,
  40%,
  80%,
  100% {
    transform: scale(1);
  }

  20%,
  60% {
    transform: scale(1.15);
  }
}

@keyframes vibrate {
  0%, 2%, 4%, 6%, 8%, 10%, 12%, 14%, 16%, 18% {
    -webkit-transform: translate3d(-2px, 0, 0);
            transform: translate3d(-2px, 0, 0);
  }
  1%, 3%, 5%, 7%, 9%, 11%, 13%, 15%, 17%, 19% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0);
  }
  20%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

.heart {
  color: #e91e63;
}

.pulse {
  animation: heart 1000ms infinite;
}

.vibrate {
  animation: vibrate 2000ms infinite;
}

.new-feature svg {
  fill: var(--md-accent-fg-color) !important;
}

a.insiders {
  color: #e91e63;
}

.sponsorship-list {
  width: 100%;
}

.sponsorship-item {
  border-radius: 100%;
  display: inline-block;
  height: 1.6rem;
  margin: 0.1rem;
  overflow: hidden;
  width: 1.6rem;
}

.sponsorship-item:focus, .sponsorship-item:hover {
  transform: scale(1.1);
}

.sponsorship-item img {
  filter: grayscale(100%) opacity(75%);
  height: auto;
  width: 100%;
}

.sponsorship-item:focus img, .sponsorship-item:hover img {
  filter: grayscale(0);
}

.sponsorship-item.private {
  background: var(--md-default-fg-color--lightest);
  color: var(--md-default-fg-color);
  font-size: .6rem;
  font-weight: 700;
  line-height: 1.6rem;
  text-align: center;
}

.mastodon {
  color: #897ff8;
  border-radius: 100%;
  box-shadow: inset 0 0 0 .05rem currentcolor;
  display: inline-block;
  height: 1.2rem !important;
  padding: .25rem;
  transition: all .25s;
  vertical-align: bottom !important;
  width: 1.2rem;
}

.premium-sponsors {
  text-align: center;
}

#silver-sponsors img {
  height: 140px;
}

#bronze-sponsors img {
  height: 140px;
}

#bronze-sponsors p {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#bronze-sponsors a {
  display: block;
  flex-shrink: 0;
}

.sponsors-total {
  font-weight: bold;
}