.vehicle-contact-form {
  display: grid;
  gap: 18px;
  padding: 28px;
  color: var(--ink, #18243b);
  font-family: Lato, Arial, sans-serif;
}

.vehicle-contact-form .contact-field {
  display: grid;
  gap: 8px;
}

.vehicle-contact-form label {
  color: var(--navy, #10234a);
  font-size: 0.95rem;
  font-weight: 800;
}

.vehicle-contact-form input,
.vehicle-contact-form textarea {
  width: 100%;
  min-height: 48px;
  border: 1px solid #c9c3b8;
  border-radius: 6px;
  padding: 12px 14px;
  background: #fff;
  color: #18243b;
  font: inherit;
  font-size: 1rem;
}

.vehicle-contact-form textarea {
  min-height: 126px;
  resize: vertical;
}

.vehicle-contact-form input:focus,
.vehicle-contact-form textarea:focus {
  border-color: #10234a;
  outline: 3px solid rgb(16 35 74 / 16%);
}

.vehicle-contact-form .contact-submit {
  min-height: 52px;
  border: 0;
  cursor: pointer;
  font: inherit;
  font-weight: 900;
}

.vehicle-contact-form .contact-submit:disabled {
  opacity: 0.7;
  cursor: wait;
}

.vehicle-contact-form .contact-status {
  margin: 0;
  color: #9b2424;
  line-height: 1.5;
}

.vehicle-contact-form .contact-status:empty {
  display: none;
}

.vehicle-contact-form .contact-privacy {
  margin: -4px 0 0;
  color: #5d6572;
  font-size: 0.85rem;
  line-height: 1.5;
}

.vehicle-contact-form .contact-trap {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.contact-error-page {
  min-height: 100vh;
  display: grid;
  align-items: center;
  padding: 48px 0;
  font-family: Lato, Arial, sans-serif;
}

.contact-error-page .container {
  max-width: 720px;
}

.contact-error-page h1 {
  color: #10234a;
}

.contact-error-page p {
  line-height: 1.6;
}

@media (max-width: 620px) {
  .vehicle-contact-form {
    gap: 16px;
    padding: 20px;
  }
}
