.fp-home-quote {
  padding-top: 40px;
  padding-bottom: 20px;
}

.fp-home-quote__wrap {
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
}

.fp-home-quote__alert {
  border-radius: 14px;
  padding: 14px 16px;
  margin-bottom: 14px;
  font-weight: 600;
}
.fp-home-quote__alert--success {
  background: #ecfdf5;
  color: #065f46;
  border: 1px solid #a7f3d0;
}
.fp-home-quote__alert--error {
  background: #fef2f2;
  color: #991b1b;
  border: 1px solid #fecaca;
}

.fp-quote-form {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 18px;
  box-shadow: 0 18px 50px rgba(2, 6, 23, .06);
}

.fp-quote-form .fp-field label {
  display: block;
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-weight: 800;
  color: #111827;
  margin-bottom: 6px;
}

.fp-quote-form .fp-field input,
.fp-quote-form .fp-field textarea {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 10px 12px;
  background: #f9fafb;
  outline: none;
}

.fp-quote-form .fp-field textarea {
  min-height: 120px;
  resize: vertical;
}

.fp-quote-form__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

@media (min-width: 768px) {
  .fp-quote-form__grid {
    grid-template-columns: 1fr 1fr;
  }
  .fp-quote-form__grid .fp-field--full {
    grid-column: 1 / -1;
  }
}

.fp-quote-form__actions {
  display: flex;
  justify-content: center;
  margin-top: 14px;
}

.fp-quote-form__btn {
  background: #c81f26;
  color: #fff;
  border: none;
  border-radius: 14px;
  padding: 14px 24px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
  cursor: pointer;
}
.fp-quote-form__btn:hover { filter: brightness(.92); }

.fp-home-quote__spacer { height: 56px; }
