.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}/* Start custom CSS for shortcode, class: .elementor-element-8caf28c *//* =========================================================
   Krause Holzbau – FluentForms Bewerbungsformular (ID 4)
   Für dunklen Hintergrund (#141310)
   ========================================================= */

.fluentform_wrapper_4 {
  --kh-black: #141310;
  --kh-gold: #A2882B;
  --kh-paper: #FAF9F5;
  --kh-paper-80: rgba(250, 249, 245, .8);
  --kh-paper-60: rgba(250, 249, 245, .6);
  --kh-paper-45: rgba(250, 249, 245, .45);
  --kh-field: rgba(250, 249, 245, .06);
  --kh-field-hover: rgba(250, 249, 245, .1);
  --kh-border: rgba(250, 249, 245, .22);
  --kh-text: #26251F;
  --kh-stone: #57534A;
  --kh-surface: #F0EEE7;
  --kh-line: #E3E0D6;
  --kh-error: #F2A28E;
  font-family: 'Figtree Eigene', 'Figtree', sans-serif !important;
  color: var(--kh-paper) !important;
}

/* ---------- Raster (Name, E-Mail/Telefon) ---------- */
.fluentform_wrapper_4 .ff-t-container {
  display: flex !important;
  gap: 24px !important;
}
.fluentform_wrapper_4 .ff-t-cell {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  padding: 0 !important;
}
.fluentform_wrapper_4 .ff-el-group {
  margin: 0 0 24px !important;
}

/* ---------- Labels ---------- */
.fluentform_wrapper_4 .ff-el-input--label {
  margin: 0 0 8px !important;
}
.fluentform_wrapper_4 .ff-el-input--label label {
  display: inline-block !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  color: var(--kh-paper) !important;
  margin: 0 !important;
}
.fluentform_wrapper_4 .ff-el-is-required.asterisk-right label::after {
  color: var(--kh-gold) !important;
  margin-left: 4px !important;
}

/* ---------- Eingabefelder ---------- */
.fluentform_wrapper_4 input.ff-el-form-control:not([type="file"]):not([type="checkbox"]),
.fluentform_wrapper_4 textarea.ff-el-form-control {
  width: 100% !important;
  min-height: 52px !important;
  padding: 14px 16px !important;
  background: var(--kh-field) !important;
  border: 1px solid var(--kh-border) !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  color: var(--kh-paper) !important;
  font-family: inherit !important;
  font-size: 17px !important;
  line-height: 1.5 !important;
  transition: border-color .2s ease, background-color .2s ease !important;
}
.fluentform_wrapper_4 textarea.ff-el-form-control {
  min-height: 140px !important;
  resize: vertical !important;
}
.fluentform_wrapper_4 .ff-el-form-control:hover {
  border-color: var(--kh-paper-60) !important;
}
.fluentform_wrapper_4 .ff-el-form-control:focus {
  background: var(--kh-field-hover) !important;
  border-color: var(--kh-gold) !important;
  outline: 2px solid var(--kh-gold) !important;
  outline-offset: 2px !important;
}
.fluentform_wrapper_4 .ff-el-form-control::placeholder {
  color: var(--kh-paper-45) !important;
  opacity: 1 !important;
}

/* Browser-Autofill auf dunklem Grund */
.fluentform_wrapper_4 .ff-el-form-control:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #2A2925 inset !important;
  -webkit-text-fill-color: var(--kh-paper) !important;
  caret-color: var(--kh-paper) !important;
}

/* ---------- Telefon (intl-tel-input) ---------- */
.fluentform_wrapper_4 .iti {
  display: block !important;
  width: 100% !important;
}
/* Höhere Spezifität als die allgemeine Input-Regel, sonst greift das padding-left nicht */
.fluentform_wrapper_4 .iti input.ff-el-form-control.iti__tel-input:not([type="file"]):not([type="checkbox"]) {
  padding-left: 72px !important;
}
.fluentform_wrapper_4 .iti__country-container {
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  padding: 0 !important;
}
.fluentform_wrapper_4 .iti__selected-country,
.fluentform_wrapper_4 .iti__selected-country-primary {
  height: 100% !important;
}
.fluentform_wrapper_4 .iti__selected-country {
  background: transparent !important;
  border: 0 !important;
  border-radius: 3px 0 0 3px !important;
  box-shadow: none !important;
  padding: 0 8px 0 16px !important;
  color: var(--kh-paper) !important;
}
.fluentform_wrapper_4 .iti__selected-country:hover,
.fluentform_wrapper_4 .iti__selected-country:focus {
  background: var(--kh-field-hover) !important;
}
.fluentform_wrapper_4 .iti__selected-country:focus-visible {
  outline: 2px solid var(--kh-gold) !important;
  outline-offset: 2px !important;
}
.fluentform_wrapper_4 .iti__arrow {
  border-top-color: var(--kh-paper) !important;
}
.fluentform_wrapper_4 .iti__arrow--up {
  border-top-color: transparent !important;
  border-bottom-color: var(--kh-paper) !important;
}

/* Länder-Dropdown: helles Panel */
.fluentform_wrapper_4 .iti__dropdown-content {
  margin-top: 4px !important;
  background: var(--kh-paper) !important;
  border: 1px solid var(--kh-line) !important;
  border-radius: 6px !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .35) !important;
  overflow: hidden !important;
  z-index: 50 !important;
}
.fluentform_wrapper_4 .iti__search-input {
  width: 100% !important;
  padding: 12px 16px !important;
  background: var(--kh-paper) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--kh-line) !important;
  border-radius: 0 !important;
  color: var(--kh-text) !important;
  font-family: inherit !important;
  font-size: 16px !important;
}
.fluentform_wrapper_4 .iti__search-input:focus {
  outline: 2px solid var(--kh-gold) !important;
  outline-offset: -2px !important;
}
.fluentform_wrapper_4 .iti__country-list {
  max-height: 260px !important;
  background: var(--kh-paper) !important;
}
.fluentform_wrapper_4 .iti__country {
  padding: 8px 16px !important;
  color: var(--kh-text) !important;
  font-size: 15px !important;
}
.fluentform_wrapper_4 .iti__country.iti__highlight {
  background: var(--kh-surface) !important;
}
.fluentform_wrapper_4 .iti__dial-code {
  color: var(--kh-stone) !important;
}

/* ---------- Datei-Upload ---------- */
.fluentform_wrapper_4 .ff_file_upload_holder {
  display: inline-block !important;
  width: auto !important;
  margin: 0 !important;
}
.fluentform_wrapper_4 .ff_upload_btn.ff-btn {
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  padding: 12px 24px !important;
  background: transparent !important;
  border: 1.5px solid var(--kh-paper) !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  color: var(--kh-paper) !important;
  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
  transition: background-color .2s ease, color .2s ease !important;
}
.fluentform_wrapper_4 .ff_upload_btn.ff-btn:hover {
  background: var(--kh-paper) !important;
  color: var(--kh-black) !important;
}
.fluentform_wrapper_4 .ff_upload_btn.ff-btn:focus-visible {
  outline: 2px solid var(--kh-gold) !important;
  outline-offset: 2px !important;
}
.fluentform_wrapper_4 .ff-uploaded-list {
  color: var(--kh-paper-80) !important;
  font-size: 14px !important;
}
.fluentform_wrapper_4 .ff-upload-preview {
  background: var(--kh-field) !important;
  border: 1px solid var(--kh-border) !important;
  border-radius: 3px !important;
  color: var(--kh-paper) !important;
}
.fluentform_wrapper_4 .ff-upload-filename,
.fluentform_wrapper_4 .ff-upload-filesize {
  color: var(--kh-paper-80) !important;
}
.fluentform_wrapper_4 .ff-el-progress-bar {
  background: var(--kh-gold) !important;
}

/* ---------- Datenschutz-Checkbox ---------- */
.fluentform_wrapper_4 .ff-el-tc .ff-el-form-check-label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--kh-paper-80) !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  cursor: pointer !important;
}
/* Wrapper exakt so hoch wie die erste Textzeile → Box sitzt mittig dazu */
.fluentform_wrapper_4 .ff-el-tc .ff_tc_checkbox {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  height: 1.5em !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}
.fluentform_wrapper_4 .ff-el-tc .ff_t_c {
  margin: 0 !important;
  padding: 0 !important;
}
.fluentform_wrapper_4 input.ff-el-form-check-input {
  -webkit-appearance: none !important;
  appearance: none !important;
  display: block !important;
  position: static !important;
  flex: 0 0 20px !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 1.5px solid var(--kh-paper-60) !important;
  border-radius: 3px !important;
  cursor: pointer !important;
  transition: background-color .2s ease, border-color .2s ease !important;
}
.fluentform_wrapper_4 input.ff-el-form-check-input:hover {
  border-color: var(--kh-paper) !important;
}
.fluentform_wrapper_4 input.ff-el-form-check-input:checked {
  background: var(--kh-gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23141310' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px no-repeat !important;
  border-color: var(--kh-gold) !important;
}
.fluentform_wrapper_4 input.ff-el-form-check-input::before,
.fluentform_wrapper_4 input.ff-el-form-check-input::after {
  display: none !important;
}
.fluentform_wrapper_4 input.ff-el-form-check-input:focus-visible {
  outline: 2px solid var(--kh-gold) !important;
  outline-offset: 2px !important;
}
.fluentform_wrapper_4 .ff_t_c a {
  color: var(--kh-gold) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

/* ---------- Absenden ---------- */
.fluentform_wrapper_4 .ff_submit_btn_wrapper {
  margin: 32px 0 0 !important;
}
.fluentform_wrapper_4 button.ff-btn-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px 34px !important;
  background: var(--kh-gold) !important;
  border: 0 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  color: var(--kh-white) !important;
  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
  transition: background-color .2s ease, color .2s ease !important;
}
.fluentform_wrapper_4 button.ff-btn-submit:hover,
.fluentform_wrapper_4 button.ff-btn-submit:focus {
  background: var(--kh-paper) !important;
  color: var(--kh-black) !important;
}
.fluentform_wrapper_4 button.ff-btn-submit:focus-visible {
  outline: 2px solid var(--kh-gold) !important;
  outline-offset: 2px !important;
}
.fluentform_wrapper_4 button.ff-btn-submit:disabled,
.fluentform_wrapper_4 .ff-working button.ff-btn-submit {
  opacity: .6 !important;
  cursor: wait !important;
}

/* ---------- Fehler & Erfolg ---------- */
.fluentform_wrapper_4 .ff-el-is-error .ff-el-form-control {
  border-color: var(--kh-error) !important;
}
.fluentform_wrapper_4 .error.text-danger,
.fluentform_wrapper_4 .ff-errors-in-stack {
  margin-top: 6px !important;
  color: var(--kh-error) !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}
.fluentform_wrapper_4 .ff-message-success {
  padding: 24px 32px !important;
  background: var(--kh-field) !important;
  border: 1px solid var(--kh-border) !important;
  border-left: 3px solid var(--kh-gold) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  color: var(--kh-paper) !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
  .fluentform_wrapper_4 .ff-t-container {
    flex-direction: column !important;
    gap: 0 !important;
  }
  .fluentform_wrapper_4 button.ff-btn-submit {
    width: 100% !important;
  }
}/* End custom CSS */