/* =========================
   Quote form styling
   (no background color set)
========================= */
.quote-form {
  padding: 30px 0 60px;
}

.quote-form__intro {
  max-width: 680px;
  margin: 0 auto 18px;
  text-align: center;
  font-style: italic;
  font-size: 12px;
  color: #666;
}

.quote-form__intro a {
  color: #f5a623;
  text-decoration: none;
}

.quote-form__intro a:hover {
  text-decoration: underline;
}

/* Form width like screenshot (narrow, centered) */
.quote-form__box {
  max-width: 420px;
  margin: 0 auto;
}

/* Labels */
.quote-form .form-label {
  font-size: 11px;
  color: #6f6f6f;
  margin-bottom: 6px;
}

.quote-form .req {
  color: #f5a623;
  font-weight: 700;
}

/* Inputs: thin border + subtle "blue" focus glow like screenshot */
.quote-form .form-control,
.quote-form .form-select {
  border: 1px solid #8d8d8d;
  border-radius: 0;
  font-size: 12px;
  padding: 10px 12px;
  box-shadow: none;
}

.quote-form .form-control:focus,
.quote-form .form-select:focus {
  border-color: #6ea8fe;
  box-shadow: 3px 4px 0 rgba(110,168,254,0.35); /* small shadow bottom/right */
  outline: none;
}

/* Placeholder style */
.quote-form ::placeholder {
  color: #9a9a9a;
}

/* Submit button: beige block with slight shadow like screenshot */
.quote-form__submit {
  background: #f3e3d6;
  border: 0;
  border-radius: 0;
  padding: 10px 34px;
  font-size: 12px;
  font-weight: 600;
  color: #000;
  box-shadow: 6px 6px 0 rgba(110,168,254,0.35);
}

.quote-form__submit:hover {
  filter: brightness(0.97);
}

/* Small screens: keep same feel */
@media (max-width: 575.98px) {
  .quote-form__box {
    max-width: 100%;
    padding: 0 12px;
  }
}

.hp-field { position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }

.field-error {
  font-size: 11px;
  color: #b00020;
  margin-top: 6px;
  min-height: 14px;
}

.is-invalid {
  border-color: #b00020 !important;
}

.form-alert {
  max-width: 420px;
  margin: 0 auto 14px;
  font-size: 12px;
  padding: 10px 12px;
  border: 1px solid #8d8d8d;
}
.form-alert.success { border-color: #2e7d32; color: #2e7d32; }
.form-alert.error { border-color: #b00020; color: #b00020; }

