      /* 7. FORMULÁRIO ------------------------------------------------------------ */
      .formulario { background: var(--branco); color: var(--texto); border-radius: var(--raio); padding: clamp(1.25rem, 3.5vw, 2.5rem); }
      .form__nota { font-size: 0.9375rem; color: var(--texto-suave); margin-bottom: 1.25rem; }
      .form__nota:last-child { margin: 1rem 0 0; }
      .form__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem 1.25rem; margin-bottom: 1.5rem; }
      .campo { display: flex; flex-direction: column; gap: 0.35rem; }
      .campo--larga { grid-column: 1 / -1; }
      .campo label { font-weight: 600; font-size: 0.9375rem; color: var(--marinho); }
      .campo__dica { font-size: 0.875rem; color: var(--texto-suave); }
      .campo input, .campo textarea, .campo select {
        width: 100%; min-height: 3rem; padding: 0.6rem 0.8rem; font: inherit; color: var(--texto);
        background: var(--branco); border: 1.5px solid #6c7f92; border-radius: var(--raio);
      }
      .campo textarea { resize: vertical; min-height: 7.5rem; }
      .campo input:focus-visible, .campo textarea:focus-visible, .campo select:focus-visible { outline: 3px solid var(--petroleo); outline-offset: 1px; border-color: var(--petroleo); }
      .campo--erro input, .campo--erro textarea { border-color: var(--erro); border-width: 2px; }
      .campo__erro { font-size: 0.875rem; font-weight: 600; color: var(--erro-texto); }
      .form__erros { margin-bottom: 1.5rem; padding: 1rem 1.25rem; background: #fbeaea; color: #5c1418; border-left: 5px solid var(--erro); border-radius: var(--raio); }
      .form__erros p { margin: 0 0 0.4rem; font-weight: 600; }
      .form__erros ul { margin: 0 0 0 1.1rem; }
      .formulario .form__erros a:not(.botao), .formulario .form__erros a:not(.botao):hover { color: #5c1418; }
      .form__erros:focus { outline: none; }
      .formulario .botao { width: 100%; }
