/* Transform mixins */
/* End transform mixins */
@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  40% {
    -moz-transform: translateY(-30px);
    -o-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px); }
  60% {
    -moz-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px); } }

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  40% {
    -moz-transform: translateY(-30px);
    -o-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px); }
  60% {
    -moz-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px); } }

@keyframes shake {
  0% {
    transform: translate(0.5px, 0.5px) rotate(0deg); }
  10% {
    transform: translate(-0.5px, -1px) rotate(-0.5deg); }
  20% {
    transform: translate(-1.5px, 0px) rotate(0.5deg); }
  30% {
    transform: translate(1.5px, 1px) rotate(0deg); }
  40% {
    transform: translate(0.5px, -0.5px) rotate(0.5deg); }
  50% {
    transform: translate(-0.5px, 1px) rotate(-0.5deg); }
  60% {
    transform: translate(-1.5px, 0.5px) rotate(0deg); }
  70% {
    transform: translate(1.5px, 0.5px) rotate(-0.5deg); }
  80% {
    transform: translate(-0.5px, -0.5px) rotate(0.5deg); }
  90% {
    transform: translate(0.5px, 1px) rotate(0deg); }
  100% {
    transform: translate(0.5px, -1px) rotate(-0.5deg); } }

article {
  max-width: 1000px;
  background-color: #fff;
  margin: 6rem auto;
  padding: 3rem;
  -webkit-box-shadow: 0 2px 4px 0 rgba(43, 30, 51, 0.12);
  -moz-box-shadow: 0 2px 4px 0 rgba(43, 30, 51, 0.12);
  box-shadow: 0 2px 4px 0 rgba(43, 30, 51, 0.12);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px; }
  article > footer p {
    display: flex;
    justify-content: center; }
  article > footer small {
    display: block;
    position: relative;
    padding: 0 1rem;
    font-style: italic; }
    article > footer small:before {
      content: "-";
      display: block;
      position: absolute;
      right: 100%; }
    article > footer small:after {
      content: "-";
      display: block;
      position: absolute;
      left: 100%;
      top: 0; }

h1 {
  display: inline;
  font-size: 2.5rem; }

h2 {
  font-size: 2.25rem; }

h3 {
  font-size: 2rem; }

h4 {
  font-size: 1.75rem; }

table {
  margin: 3rem 0 5rem 0; }

.glad_table th, .glad_table td {
  font-size: 1rem; }

td {
  vertical-align: top; }

#glad-to-home {
  position: absolute;
  top: 10px;
  left: 10px;
  border: 3px solid #47484c;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease; }
  #glad-to-home:after {
    height: 25px;
    line-height: 25px;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease; }
  #glad-to-home:hover {
    background-color: #47484c; }
    #glad-to-home:hover:after {
      color: #fff; }

@media screen and (min-width: 800px) {
  .glad_table th, .glad_table td {
    font-size: 1.6rem; } }

@media screen and (min-width: 1120px) {
  article {
    margin-top: 5rem; }
  #glad-to-home {
    top: 20px; } }
