﻿.button-wrap {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 0;
}
.button-wrap::before, .button-wrap::after {
  content: "";
  position: absolute;
  transition: all 150ms ease-in-out;
  /* z-index: 0; */
}
.button-wrap::after {
  height: 100%;
  right: 0;
  top: 0;
  width: calc(100% - 15px);
}
.button-wrap::before {
  aspect-ratio: 1/1;
  height: 15px;
  left: 0;
  top: 50%;
  transform: translatey(-50%);
  width: 15px;
  /* z-index: 1; */
}
.button-wrap:hover::after, .button-wrap:focus-within::after {
  width: calc(100% - 30px);
}
.button-wrap > .button {
  display: block;
  font-weight: bolder;
  outline: none;
  padding: 20px 30px;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 150ms ease-in-out;
  z-index: 1;
}
.button-wrap > .button::before, .button-wrap > .button::after {
  content: "";
  height: calc(100% / 2 - 14px / 2);
  left: 0;
  position: absolute;
  transition: all 150ms ease-in-out;
  width: 20px;
}
.button-wrap > .button::before {
  top: 0;
}
.button-wrap > .button::after {
  bottom: 0;
}
.button-wrap > .button:hover, .button-wrap > .button:focus-within {
  padding-left: 40px;
}
.button-wrap > .button:hover::before, .button-wrap > .button:hover::after, .button-wrap > .button:focus-within::before, .button-wrap > .button:focus-within::after {
  left: 15px;
}

.button-wrap.pink::before, .button-wrap.pink::after {
  background: #f5b6dc;
}
.button-wrap.pink > .button {
  color: #0e1647;
}
.button-wrap.pink > .button::before, .button-wrap.pink > .button::after {
  background: #f5b6dc;
}
.button-wrap.green::before, .button-wrap.green::after {
  background: #7ae3ca;
}
.button-wrap.green > .button {
  color: #0e1647;
}
.button-wrap.green > .button::before, .button-wrap.green > .button::after {
  background: #7ae3ca;
}
.button-wrap.orange::before, .button-wrap.orange::after {
  background: #f2c77a;
}
.button-wrap.orange > .button {
  color: #0e1647;
}
.button-wrap.orange > .button::before, .button-wrap.orange > .button::after {
  background: #f2c77a;
}
.button-wrap.purple::before, .button-wrap.purple::after {
  background: #a8a4ee;
}
.button-wrap.purple > .button {
  color: #0e1647;
}
.button-wrap.purple > .button::before, .button-wrap.purple > .button::after {
  background: #a8a4ee;
}
.button-wrap.char::before, .button-wrap.char::after {
  background: #d7f777;
}
.button-wrap.char > .button {
  color: #0e1647;
}
.button-wrap.char > .button::before, .button-wrap.char > .button::after {
  background: #d7f777;
}
.button-wrap.blue-d::before, .button-wrap.blue-d::after {
  background: var(--blue-d-100);
}
.button-wrap.blue-d > .button {
  color: white;
}
.button-wrap.blue-d > .button::before, .button-wrap.blue-d > .button::after {
  background: var(--blue-d-100);
}
.button-wrap.blue-m::before, .button-wrap.blue-m::after {
  background: #1d4cf2;
}
.button-wrap.blue-m > .button {
  color: white;
}
.button-wrap.blue-m > .button::before, .button-wrap.blue-m > .button::after {
  background: #1d4cf2;
}
.button-wrap.blue-l::before, .button-wrap.blue-l::after {
  background: #82daf4;
}
.button-wrap.blue-l > .button {
  color: #0e1647;
}
.button-wrap.blue-l > .button::before, .button-wrap.blue-l > .button::after {
  background: #82daf4;
}
.button-wrap.white::before, .button-wrap.white::after {
  background: white;
}
.button-wrap.white > .button {
  color: #0e1647;
}
.button-wrap.white > .button::before, .button-wrap.white > .button::after {
  background: white;
}