.formblock {
  form {
    background: var(--primary-light);
    padding: 20px 40px;
    border-radius: var(--br);

    @media (max-width: 800px) {
      padding: 10px 20px;
    }
  }

  > div:only-child {
    > p {
      border-radius: var(--br);
      background: var(--primary-light);
      padding: 20px;
      text-align: center;
    }
  }

  label {
    display: block;
    margin-block-end: 0.2em;
    cursor: pointer;
  }

  input,
  textarea {
    width: 100%;
    padding: 1.5rem 2.4rem;

    &[aria-invalid] {
      border-color: var(--highlight);
    }
  }

  [data-error] {
    font-style: italic;
    display: block;
    margin-block-end: 0.4em;
  }

  input[type="checkbox"] {
    width: auto;
  }

  textarea {
    min-height: 200px;
  }

  div:has(> label):has(input),
  div:has(> button) {
    display: block;
    margin-block: 20px;
  }

  div:has(> label):has(> input[type="checkbox"]) {
    display: flex;
    margin-block: auto;
  }
}
