.button{
  background: var(--button-bg);
  color: var(--button-color);
  border-radius: var(--button-radius);
  padding: var(--button-padding);
  height: var(--button-height);
  margin: var(--button-margin);
  font-family: var(--button-font-family);
  text-transform: var(--button-text-transform);
  line-height: 1;
  text-decoration: none;
  border: 2px solid var(--button-bg);
  outline: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: var(--animate-medium);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: .04em;
}
.button:hover{
  transform: translate(0 , -.4rem);
  background: var(--button-bg-hover);
  border-color: var(--button-bg-hover);
  color: var(--button-color-hover);
  box-shadow: 0 4px 12px rgba(10, 18, 36, .07), 0 18px 40px rgba(10, 18, 36, .08);
}
.button.ghost-btn{
  background: none;
  border-color: var(--color-line-strong);
  color: var(--color-ink);
}
.button.ghost-btn:hover{
  background: var(--color-ink);
  border-color: var(--color-ink);
  color: var(--color-paper);
}
.dark .button.ghost-btn{
  background: none;
  border-color: rgba(255,255,255,.4);
  color: white;
}
.dark .button.ghost-btn:hover{
  background: white;
  border-color: white;
  color: var(--color-ink);
}
.light .button{
  background: var(--button-bg-light);
  color: var(--button-color-light);
}
.light .button:hover{
  background: var(--button-bg-hover-light);
  color: var(--button-color-hover-light);
}
.main .button{
  background: var(--button-bg-main);
  color: var(--button-color-main);
}
.main .button:hover{
  background: var(--button-bg-hover-main);
  color: var(--button-color-hover-main);
}
.dark .button{
  background: var(--button-bg-dark);
  color: var(--button-color-dark);
}
.dark .button:hover{
  background: var(--button-bg-hover-dark);
  color: var(--button-color-hover-dark);
}
.button:focus,
.button:focus-within,
.button:focus-visible,
.button:target{
  box-shadow: var(--shadow);
}