body {
  background: #fff;
}

.form-generique {
  max-width: 60rem;

  .page-title {
    color: var(--color-red);
    text-align: center;
    font: 700 2rem/1.5 var(--fs-alt);
  }

  label {
    justify-content: flex-start;
  }

  .wpcf7-form-control.wpcf7-radio {
    flex-direction: column;
  }

  .wpcf7-not-valid {
    --color-border: var(--color-red);
  }

  input[type="text"],
  input[type="email"],
  input[type="range"],
  input[type="url"],
  input[type="password"],
  input[type="search"],
  input[type="tel"],
  input[type="date"],
  textarea,
  select {
    accent-color: var(--color-red);
    border: 1px solid var(--color-border);
    background: var(--color-white);
    transition: border-color .15s ease-in-out;
  }

  fieldset {
    padding: 0;
    border: none;

    legend {
      margin-bottom: 1em;
    }
  }
}

.range-wrapper {
  display: grid;
  grid-template-rows: repeat(2, auto);

  .graduation {
    display: flex;
    justify-content: space-between;
    padding-left: 7px;

    span {
      display: flex;
      flex-direction: column;
      align-items: center;

      &::before {
        content: "";
        width: 1px;
        height: 6px;
        background-color: #ccc;
      }
    }
  }
}