@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300;400;700&display=swap');

* {
  font-family: 'Roboto Condensed', sans-serif;
}

body {
  background-color: #333;
}


.btn {
  background: transparent;
  font-size: 20px;
  color: #fff;
  border: 2px solid #d35400;
  margin: 20px;
  padding: 15px 30px;
  text-transform: uppercase;
  font-weight: 700;
  position: relative;
  overflow: hidden;
  border-radius: 3px;
  cursor: pointer;
}


.btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #d35400;
  z-index: -1;
  transition: all 0.5s ease-in-out;
}

.btn-1::before {
  height: 0;
}

.btn-1:hover::before {
  top: unset;
  bottom: 0;
  height: 100%;
}

.btn-2::before {
  height: 0;
  top: unset;
  bottom: 0;
}

.btn-2:hover::before {
  bottom: unset;
  top: 0;
  height: 100%;
}

.btn-3::before {
  left: unset;
  width: 0;
  right: 0;
}

.btn-3:hover::before {
  right: unset;
  left: 0;
  width: 100%;
}

.btn-4::before {
  right: unset;
  left: 0;
  width: 0;
}

.btn-4:hover::before {
  left: unset;
  width: 100%;
  right: 0;
}

.btn-5::before,
.btn-6::before,
.btn-7::before,
.btn-8::before {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.btn-5::before {
  height: 0;
}

.btn-5:hover::before {
  height: 100%;
}

.btn-6::before {
  width: 0;
}

.btn-6:hover::before {
  width: 100%;
}

.btn-7::before {
  height: 0;
  transform: translate(-50%, -50%) rotate(45deg);
}

.btn-7:hover::before {
  height: 380%;

}

.btn-8::before {
  height: 0;
  transform: translate(-50%, -50%) rotate(-45deg);
}

.btn-8:hover::before {
  height: 380%;
}