.input-box {
  position: relative;
  padding-bottom: 21px;
}

.input-box textarea,
.input-box input {
  display: block;
  width: 100%;
  min-height: 31px;
  padding-left: 13px;
  padding-right: 13px;
  padding-bottom: 9px;

  border: none;
  border-bottom: 1px solid var(--blue);
  background-color: transparent;
  overflow: hidden;

  font-family: "Basis Grotesque Pro", sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: var(--blue);

  -webkit-transition: border-color 0.4s;
  transition: border-color 0.4s;
}

.input-box textarea::placeholder,
.input-box input::placeholder {
  color: inherit;
}

.input-box__invalid-text {
  position: absolute;
  bottom: 0;
  left: 13px;
  display: block;
  margin-top: 5px;

  pointer-events: none;
  opacity: 0;

  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}

.input-box.-invalid textarea,
.input-box.-invalid input {
  border-color: var(--pink);
}

.input-box.-invalid .input-box__invalid-text {
  opacity: 1;
}

@media screen and (max-width: 759px) {
  .input-box textarea,
  .input-box input {
    padding-bottom: 5px;
    padding-left: 0;
    padding-right: 0;
  }

  .input-box__invalid-text {
    left: 0;
  }
}
