* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body,
html {
  display: gird;
  place-content: center;
  height: 100vh;
  background: #111;
}

.container {
  display: flex;
  justify-content: center;
  align-items: center;
}

.button {
  --color: #03e9f4;
  position: relative;
  font-size: 4rem;
  font-family: "Segoe UI";

  color: var(--color);
  border: 8px solid var(--color);
  border-radius: 1rem;
  padding: 1rem 1.5rem;
  display: inline-block;
  cursor: pointer;
  text-shadow: 0 0 1rem #ffffff33, 0 0 1.5rem currentColor;
  box-shadow: inset 0 0 1.25rem currentColor, 0 0 2rem currentColor,
    0 0 1rem currentColor;
  text-decoration: none;
  font-weight: bold;
}

.button::before {
  pointer-events: none;
  content: "";
  position: absolute;
  background: var(--color);
  top: 120%;
  left: 0;
  width: 100%;
  height: 100%;
  transform: perspective(25rem), rotateX(40deg) scale(1, 0.35);
  filter: blur(1em);
  opacity: 0.7;
}

.button:hover {
  background-color: var(--color);
  box-shadow: 0 0 15rem var(--color), 0 0 10rem var(--color),
    0 0 3rem var(--color), 0 0 1rem var(--color);
  color: #222;
  text-shadow: none;
}
