@import url(https://fonts.googleapis.com/css?family=Open+Sans:400|Raleway:300);

html *,
html *:before,
html *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
html i, html em,
html b, html strong,
html span {
  -webkit-transition: none;
  transition: none;
}

*:before,
*:after {
  z-index: -1;
}

h1,
h4 {
  font-family: 'Raleway', 'Open Sans', sans-serif;
  margin: 0;
  line-height: 1;
}

a {
  text-decoration: none;
  line-height: 55px;
  color: black;
}

.centerer {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  padding: 0 1rem;
}

@media (min-width: 600px) {
  .wrap {
    width: 50%;
    float: left;
  }
}
[class^="btn-"] {
    position: relative;
    display: block;
    margin: 0rem auto;
    width: 100%;
    height: 50px;
    max-width: 160px;
    text-transform: uppercase;
    overflow: hidden;
    border: 1px solid white;
    font-size: 15px;
    line-height: 50px;
}

.btn-0 {
  color: #2fc681;
}
.btn-0:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 80px;
  background: #067140;
}
.btn-0:hover {
  color: #c2eeda;
}
.btn-0:hover:before {
  width: 250px;
}
.btn-0:active {
  background: #0abc6b;
}

.btn-1 {
  color: #9f61be;
}
.btn-1:after {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: #55296b transparent transparent transparent;
  position: absolute;
  top: 0;
  left: 0;
}
.btn-1:hover {
  color: #e3d1ec;
}
.btn-1:hover:after {
  border-width: 330px 330px 0 0;
}
.btn-1:active {
  background: #8e45b3;
}

.btn-1-2 {
  color: #d08243;
}
.btn-1-2:before {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent transparent transparent #784114;
  position: absolute;
  bottom: 0;
  left: 0;
}
.btn-1-2:after {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent transparent #784114 transparent;
  position: absolute;
  right: 0;
  bottom: 0;
}
.btn-1-2:hover {
  color: #f1dac8;
}
.btn-1-2:hover:before {
  border-width: 206.25px 0 0 206.25px;
}
.btn-1-2:hover:after {
  border-width: 0 0 206.25px 206.25px;
}
.btn-1-2:active {
  background: #c86c22;
}

.btn-2 {
  color: #984489;
}
.btn-2:before {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent transparent transparent #501546;
  position: absolute;
  bottom: 0;
  left: 0;
}
.btn-2:after {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent #501546 transparent transparent;
  position: absolute;
  top: 0;
  right: 0;
}
.btn-2:hover {
  color: #e1c8dc;
}
.btn-2:hover:before {
  border-width: 165px 0 0 165px;
}
.btn-2:hover:after {
  border-width: 0 165px 165px 0;
}
.btn-2:active {
  background: #862374;
}

.btn-3 {
  color: #30899c;
}
.btn-3:before {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent transparent transparent #074653;
  position: absolute;
  bottom: 0;
  left: 0;
}
.btn-3:after {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent #074653 transparent transparent;
  position: absolute;
  top: 0;
  right: 0;
}
.btn-3 span:before {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent transparent #074653 transparent;
  position: absolute;
  right: 0;
  bottom: 0;
}
.btn-3 span:after {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: #074653 transparent transparent transparent;
  position: absolute;
  top: 0;
  left: 0;
}
.btn-3:hover {
  color: #c2dce2;
}
.btn-3:hover:before {
  border-width: 165px 0 0 165px;
}
.btn-3:hover:after {
  border-width: 0 165px 165px 0;
}
.btn-3:hover span:before {
  border-width: 0 0 165px 165px;
}
.btn-3:hover span:after {
  border-width: 165px 165px 0 0;
}
.btn-3:active {
  background: #0c748b;
}

.btn-4 {
  color: #c9704d;
}
.btn-4:after {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent #73341b transparent transparent;
  position: absolute;
  top: 0;
  right: 0;
}
.btn-4:before {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent transparent transparent #73341b;
  position: absolute;
  bottom: 0;
  left: 0;
}
.btn-4:before, .btn-4:after {
  border-color: #73341b;
}
.btn-4 span:after {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: #73341b transparent transparent transparent;
  position: absolute;
  top: 0;
  left: 0;
}
.btn-4 span:before {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent transparent #73341b transparent;
  position: absolute;
  right: 0;
  bottom: 0;
}
.btn-4 span:before, .btn-4 span:after {
  border-color: #73341b;
}
.btn-4:hover {
  color: #efd5cb;
}
.btn-4:hover:before {
  border-width: 20px 62.5px;
}
.btn-4:hover:after {
  border-width: 20px 62.5px;
}
.btn-4:hover span:before {
  border-width: 20px 62.5px;
}
.btn-4:hover span:after {
  border-width: 20px 62.5px;
}
.btn-4:active {
  background: #bf572d;
}

.btn-5 {
  color: #b2a779;
}
.btn-5:after {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent #625b3a transparent transparent;
  position: absolute;
  top: 0;
  right: 0;
}
.btn-5:before {
  content: '';
  width: 0;
  height: 0;
  -webkit-transform: rotate(360deg);
  border-style: solid;
  border-width: 0 0 0 0;
  border-color: transparent transparent transparent #625b3a;
  position: absolute;
  bottom: 0;
  left: 0;
}
.btn-5:hover {
  color: #e8e5d8;
}
.btn-5:hover:before, .btn-5:hover:after {
  border-width: 80px 262.5px;
}
.btn-5:active {
  background: #a49761;
}

.btn-6 {
  color: #a5562a;
}
.btn-6 span {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: #592202;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: width 0.4s, height 0.4s;
  transition: width 0.4s, height 0.4s;
  z-index: -1;
}
.btn-6:hover {
  color: #e5cdc0;
}
.btn-6:hover span {
  width: 562.5px;
  height: 562.5px;
}
.btn-6:active {
  background: #953804;
}

.btn-7 {
  color: white;
}
.btn-7::before, .btn-7::after, .btn-7 span::before, .btn-7 span::after {
    content: '';
    position: absolute;
    top: 0;
    width: 40px;
    height: 0;
    background: #b7205b;
}
.btn-7:before {
  left: 0;
}
.btn-7:after {
  left: 80px;
}
.btn-7 span:before, .btn-7 span:after {
  top: auto;
  bottom: 0;
}
.btn-7 span:before {
  left: 40px;
}
.btn-7 span:after {
  left: 120px;
}
.btn-7:hover {
  color: white;
}
.btn-7:hover:before, .btn-7:hover:after,
.btn-7:hover span:before,
.btn-7:hover span:after {
  height: 80px;
}
.btn-7:active {
  background: #39a4bc;
}

.btn-8 {
  color: #c49d49;
}
.btn-8:before, .btn-8:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 250px;
  height: 0;
  background: #6f5419;
}
.btn-8:after {
  top: auto;
  bottom: 0;
}
.btn-8:hover {
  color: #eee2ca;
}
.btn-8:hover:before, .btn-8:hover:after {
  height: 40px;
}
.btn-8:active {
  background: #b98c29;
}

.btn-9 {
  color: #6dac64;
}
.btn-9:before, .btn-9:after,
.btn-9 span:before,
.btn-9 span:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 250px;
  height: 0;
  background: rgba(50, 94, 44, 0.25);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.btn-9:after,
.btn-9 span:before {
  top: auto;
  bottom: 0;
}
.btn-9 span:before,
.btn-9 span:after {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.btn-9:hover {
  color: #d4e7d2;
}
.btn-9:hover:before, .btn-9:hover:after,
.btn-9:hover span:before,
.btn-9:hover span:after {
  height: 80px;
}
.btn-9:active {
  background: #539d49;
}

.btn-10 {
  color: #bf3575;
}
.btn-10:before, .btn-10:after,
.btn-10 span:before,
.btn-10 span:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 80px;
  background: rgba(108, 10, 56, 0.25);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.btn-10:after,
.btn-10 span:before {
  left: auto;
  right: 0;
}
.btn-10 span:before,
.btn-10 span:after {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.btn-10:hover {
  color: #ecc4d7;
}
.btn-10:hover:before, .btn-10:hover:after,
.btn-10:hover span:before,
.btn-10:hover span:after {
  width: 250px;
}
.btn-10:active {
  background: #b4115d;
}

@-webkit-keyframes criss-cross-left {
  0% {
    left: -20px;
  }
  50% {
    left: 50%;
    width: 20px;
    height: 20px;
  }
  100% {
    left: 50%;
    width: 375px;
    height: 375px;
  }
}

@keyframes criss-cross-left {
  0% {
    left: -20px;
  }
  50% {
    left: 50%;
    width: 20px;
    height: 20px;
  }
  100% {
    left: 50%;
    width: 375px;
    height: 375px;
  }
}
@-webkit-keyframes criss-cross-right {
  0% {
    right: -20px;
  }
  50% {
    right: 50%;
    width: 20px;
    height: 20px;
  }
  100% {
    right: 50%;
    width: 375px;
    height: 375px;
  }
}
@keyframes criss-cross-right {
  0% {
    right: -20px;
  }
  50% {
    right: 50%;
    width: 20px;
    height: 20px;
  }
  100% {
    right: 50%;
    width: 375px;
    height: 375px;
  }
}
.btn-11 {
  position: relative;
  color: #964baf;
}
.btn-11:before, .btn-11:after {
  position: absolute;
  top: 50%;
  content: '';
  width: 20px;
  height: 20px;
  background: #842ba1;
  border-radius: 50%;
}
.btn-11:before {
  left: -20px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.btn-11:after {
  right: -20px;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
}
.btn-11:hover {
  color: #e0cae8;
}
.btn-11:hover:before {
  -webkit-animation: criss-cross-left 0.8s both;
          animation: criss-cross-left 0.8s both;
}
.btn-11:hover:after {
  -webkit-animation: criss-cross-right 0.8s both;
          animation: criss-cross-right 0.8s both;
}
