.TADAFY__ico-0410,
.TADAFY__ico-0410::before,
.TADAFY__ico-0410::after,
.TADAFY__ico-0410 *,
.TADAFY__ico-0410 *::before,
.TADAFY__ico-0410 *::after {
  box-sizing: border-box;
}

.ico-0410__line--T__EXPAND {
  height: 100%;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0%;
  background-color: white;
}

.ico-0410__ICO-W {
  position: absolute;
  top: -6px;
  right: -6px;
  z-index: 5;
  display: flex;
  width: 25px;
  height: 25px;
  justify-content: center;
  align-items: center;
  border: 2px solid white;
  border-radius: 50%;
}

.ico-0410__Line--R {
  position: absolute;
  right: 0%;
  bottom: 0%;
  display: flex;
  width: 2px;
  height: 100%;
  flex-direction: column;
  justify-content: flex-end;
}

.ico-0410__ICO {
  position: relative;
  top: 1px;
  width: 13px;
}

.ico-0410__line--R__SPACE {
  width: 100%;
  height: 24px;
  background-color: transparent;
}

.ico-0410__line--R__EXPAND {
  width: 100%;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0%;
  background-color: white;
}

.ico-0410__line--T__SPACE {
  width: 24px;
  height: 100%;
  background-color: transparent;
}

.ico-0410__Line--T {
  position: absolute;
  left: 0%;
  top: 0%;
  display: flex;
  width: 100%;
  height: 2px;
}

.TADAFY__ico-0410 {
  position: relative;
  display: inline-block;
  justify-content: center;
  align-items: center;
  align-self: center;
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: auto;
  border-bottom-style: solid;
  border-bottom-width: 2px;
  border-bottom-color: white;
  border-left-style: solid;
  border-left-width: 2px;
  border-left-color: white;
  font-family: Montserrat, sans-serif;
  color: white;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.5px;
  text-decoration: none;
  cursor: pointer;
}

.ico-0410__LABEL {
  position: relative;
  padding: 11px 22px;
}

/* IX2 initial state + mouse-out destination. */
.TADAFY__ico-0410 .ico-0410__line--T__SPACE {
  width: 0px;
  transition: width 350ms cubic-bezier(.85, 0, .15, 1);
}

.TADAFY__ico-0410 .ico-0410__line--R__SPACE {
  height: 0px;
  transition: height 350ms cubic-bezier(.85, 0, .15, 1);
}

.TADAFY__ico-0410 .ico-0410__ICO-W {
  opacity: 0;
  transform: scale(.8);
  transition:
    opacity 150ms cubic-bezier(0, .55, .45, 1),
    transform 150ms cubic-bezier(0, .55, .45, 1);
}

/* Hover group 2: open the line gaps and overshoot the badge. */
.TADAFY__ico-0410:hover .ico-0410__line--T__SPACE {
  width: 24px;
  transition: width 150ms cubic-bezier(0, .55, .45, 1);
}

.TADAFY__ico-0410:hover .ico-0410__line--R__SPACE {
  height: 24px;
  transition: height 150ms cubic-bezier(0, .55, .45, 1);
}

.TADAFY__ico-0410:hover .ico-0410__ICO-W {
  opacity: 1;
  transform: scale(1.25);
  transition:
    opacity 150ms ease-in 50ms,
    transform 200ms cubic-bezier(0, .55, .45, 1) 50ms;
  animation: ico-0410-badge-settle 200ms cubic-bezier(0, .55, .45, 1) 250ms forwards;
}

/* Hover group 3: settle the badge from the 1.25 overshoot to 1. */
@keyframes ico-0410-badge-settle {
  to {
    transform: scale(1);
  }
}
