@-webkit-keyframes wiggle {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}
@-moz-keyframes wiggle {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}
@-o-keyframes wiggle {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes wiggle {
  0%   { transform: rotate(10deg) scale(1) translateX(0); }
  5% { transform: rotate(-10deg) scale(1.05) translateX(1px); }
  10% { transform: rotate(20deg) scale(1.1) translateX(0); }
  15% { transform: rotate(-5deg) scale(1.05) translateX(-1); }
  20% { transform: rotate(0deg) scale(1) translateX(0); }
  100% { transform: rotate(0deg) scale(1); }
}
#wiggler {
  -webkit-animation: wiggle 6s infinite; /* Safari 4+ */
  -moz-animation:    wiggle 6s infinite; /* Fx 5+ */
  -o-animation:      wiggle 6s infinite; /* Opera 12+ */
  animation:         wiggle 6s infinite; /* IE 10+, Fx 29+ */
}

.book-stack {
  position: relative;
}

.wiggle_overlay {
  position: absolute;
  top: 0;
  left: 100px;
  z-index: 1;
}

.wiggle_overlay_mobile {
  position: absolute;
  top: 0;
  left: 44px;
  z-index: 1;
}
