/*-------------------------- *\
  #FORM 
\*---------------------------*/

.form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.form__label {
  font-size: 1rem;
  font-weight: var(--fw-bold);
}
.error-message {
  opacity: 0;
}

.input {
  padding: 1.2em 1.4em;

  border: 1px solid var(--blue-800);
  border-radius: 8px;

  font-size: 1rem;
}

/* classes for javaScript */

.form.error-state .input {
  border: 1px solid var(--red);
  background-color: var(--soft-red);
  color: var(--red);
}

.form.error-state .error-message {
  opacity: 1;
  color: var(--red);
}

.hidden {
  display: none;
}

.button {
  padding: 1.2em 2em;

  border: none;
  border-radius: 8px;

  font-size: 1rem;

  background-color: var(--blue-800);
  color: var(--white);
  cursor: pointer;
  transition: background-image 0.2s ease;
}

@media (min-width: 48rem) {
  .button:hover,
  .button:focus-visible {
    background-image: linear-gradient(
      45deg,
      hsl(323, 94%, 50%),
      hsl(32, 96%, 52%)
    );
  }
}

@media (prefers-reduced-motion: reduce) {
  .button {
    transition-duration: 0.01ms;
  }
}
