.pattern-contact-us .wpcf7-form input:not(input[type="submit"]),
.pattern-contact-us .wpcf7-form textarea {
  border: 2px solid var(--wp--preset--color--primary);
  padding: 0.875rem 1rem;
  color: var(--wp--preset--color--white);
  line-height: 1.6;
  letter-spacing: 0;
  border-radius: 0;
  background-color: transparent;
  width: 100%;
  font-size: 1rem;
}

.pattern-contact-us .wpcf7-form textarea {
  resize: none;
}

.pattern-contact-us .wpcf7-form label {
  margin: 0 0 1rem;
}

.pattern-contact-us .wpcf7-form label:last-of-type {
  margin: 0;
}

.pattern-contact-us .wpcf7-form input:not(input[type="submit"])::placeholder,
.pattern-contact-us .wpcf7-form textarea::placeholder {
  color: var(--wp--preset--color--white);
  opacity: 1;
}

.pattern-contact-us .wpcf7-form span {
  width: 100%;
  display: block;
}

.pattern-contact-us .wpcf7-form input[type="submit"] {
  width: 100%;
  text-align: center;
  cursor: pointer;
  position: relative;
  padding: 1rem 2rem;
  transition: all 0.33s;
  font-weight: 400;
  border-radius: 0;
  font-size: var(--wp--preset--font-size--medium);
  letter-spacing: 0.01em;
  line-height: 1;
  font-family: var(--wp--preset--font-family--hey-gotcha);
  color: var(--wp--preset--color--secondary);
  border: 2px solid var(--wp--preset--color--primary);
  animation: stripe-scroll 10s linear infinite;
  background:
    url("../../icons/button-decoration.svg") repeat-x 0 center / 900px 150%,
    var(--wp--preset--color--primary);
  transition:
    background-color 0.3s ease,
    border-color 0.3s ease,
    color 0.3s ease;
  margin-top: 1.5rem;
}

.pattern-contact-us .wpcf7-form input[type="submit"]:hover {
  background:
    url("../../icons/button-decoration.svg") repeat-x 0 center / 900px 150%,
    var(--wp--preset--color--secondary);
  color: var(--wp--preset--color--primary);
  border-color: var(--wp--preset--color--primary);
}

@keyframes stripe-scroll {
  from {
    background-position:
      0 center,
      0 0;
  }
  to {
    background-position:
      900px center,
      0 0;
  }
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  padding: 0.5rem 0.75rem;
  background: #fbdfdf;
  border: 1px solid #ae242d;
  color: #ae242d;
  margin-bottom: 0;
}

.wpcf7-form {
  position: relative;
}

.wpcf7 form.sent .wpcf7-response-output {
  padding: 0.5rem 0.75rem !important;
  color: #21722f;
  background-color: #b7f2c2;
  border: 1px solid #21722f;
  margin-bottom: 0;
}

.pattern-contact-us .wpcf7 .wpcf7-spinner {
  position: absolute;
  bottom: 0;
  right: 1.5rem;
  width: fit-content;
}
