/* Tanzania Safari Trip - Fluent Forms brand styling */
.ff-tst-form,
.ff-tst-form.ff-tst-footer,
.fluentform.ff-tst-form,
.fluentform {
  --ff-tst-primary: #562F07;
  --ff-tst-accent: #F4BC00;
  --ff-tst-sand: #F7F1E8;
  --ff-tst-ink: #2b2118;
  --ff-tst-muted: #6b5a4a;
  --ff-tst-line: #e5d8c6;
}

.fluentform .ff-el-group {
  margin-bottom: 18px;
}

.fluentform .ff-el-input--label label {
  color: var(--ff-tst-ink);
  font-weight: 600;
  font-size: 14px;
  margin-bottom: 8px;
}

.fluentform .ff-el-form-control,
.fluentform input[type="text"],
.fluentform input[type="email"],
.fluentform input[type="tel"],
.fluentform input[type="number"],
.fluentform input[type="url"],
.fluentform select.ff-el-form-control,
.fluentform textarea.ff-el-form-control {
  width: 100%;
  border: 1px solid var(--ff-tst-line) !important;
  background: #fff !important;
  color: var(--ff-tst-ink) !important;
  border-radius: 8px !important;
  padding: 14px 16px !important;
  min-height: 52px;
  box-shadow: none !important;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.fluentform textarea.ff-el-form-control {
  min-height: 120px;
  resize: vertical;
}

.fluentform .ff-el-form-control:focus,
.fluentform input:focus,
.fluentform select:focus,
.fluentform textarea:focus {
  border-color: var(--ff-tst-primary) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(86, 47, 7, 0.12) !important;
}

.fluentform .ff-btn-submit,
.fluentform button.ff-btn-submit,
.fluentform .ff-custom-submit {
  background: var(--ff-tst-primary) !important;
  color: #fff !important;
  border: 1px solid var(--ff-tst-primary) !important;
  border-radius: 8px !important;
  padding: 14px 28px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
  text-transform: none !important;
  box-shadow: none !important;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.fluentform .ff-btn-submit:hover,
.fluentform button.ff-btn-submit:hover,
.fluentform .ff-custom-submit:hover {
  background: var(--ff-tst-accent) !important;
  border-color: var(--ff-tst-accent) !important;
  color: var(--ff-tst-primary) !important;
}

.fluentform .ff-el-is-error .ff-el-form-control {
  border-color: #b42318 !important;
}

.fluentform .error,
.fluentform .text-danger,
.fluentform .ff-el-is-error .error {
  color: #b42318 !important;
  font-size: 13px;
}

.fluentform .ff-message-success,
.ff-message-success {
  background: var(--ff-tst-sand) !important;
  border: 1px solid var(--ff-tst-line) !important;
  color: var(--ff-tst-ink) !important;
  border-radius: 10px !important;
  padding: 16px 18px !important;
}

/* Footer compact email capture */
.ff-tst-footer .ff-el-input--label,
.fluentform.ff-tst-footer .ff-el-input--label {
  display: none;
}

.ff-tst-footer .ff-t-container,
.fluentform .ff-tst-footer-form .ff-t-container {
  align-items: stretch;
}

.ff-tst-footer .ff-btn-submit,
.ff-tst-footer .ff-custom-submit,
.fluentform.ff-tst-footer .ff-custom-submit {
  width: 100%;
  min-height: 52px;
}

/* Keep forms readable on dark footer backgrounds */
.tg-footer .fluentform .ff-el-form-control,
.footer-area .fluentform .ff-el-form-control,
.tourex-footer .fluentform .ff-el-form-control {
  background: #fff !important;
}
