form .form-field-hpot {
  position: absolute !important;
  z-index: -1 !important;
  pointer-events: none !important;
  opacity: 0 !important;
}

form .form-field-required label::after {
  content:"*";
}

form.checking-for-submit .form-field > * {
  pointer-events: none !important;
  -webkit-animation: fading 1200ms cubic-bezier(0.445, 0.050, 0.550, 0.950) infinite forwards;
          animation: fading 1200ms cubic-bezier(0.445, 0.050, 0.550, 0.950) infinite forwards;
}

form.checking-for-submit button[type="submit"] {
  pointer-events: none !important;
}

form #submit-loader {
  --size: 20px;
  width: var(--size);
  height: var(--size);
  margin-left: 7px;
  display: inline-block;
  border-radius: 50em;
  box-sizing: border-box;
  border: 3px solid gray;
  border-bottom-color: black;
  -webkit-animation: rotate-loader 550ms linear forwards infinite;
          animation: rotate-loader 550ms linear forwards infinite;
}

form .form-submit {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
}


@-webkit-keyframes rotate-loader {
  from {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  
  to {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}

@keyframes rotate-loader {
  from {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  
  to {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}

@-webkit-keyframes fading {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.2;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fading {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.2;
  }
  100% {
    opacity: 1;
  }
}
