.elementor-5998 .elementor-element.elementor-element-8cd0dab{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-5998 .elementor-element.elementor-element-a77597f > .elementor-widget-container{background-color:var( --e-global-color-2bf42a3 );padding:15px 15px 15px 15px;}.elementor-5998 .elementor-element.elementor-element-a77597f .elementor-heading-title{-webkit-text-stroke-color:#000;stroke:#000;color:var( --e-global-color-3c633f2 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-5998 .elementor-element.elementor-element-cc89488{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5998 .elementor-element.elementor-element-d20a9f5{--display:flex;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-5998 .elementor-element.elementor-element-8cd0dab{--content-width:90%;}.elementor-5998 .elementor-element.elementor-element-cc89488{--width:90%;}.elementor-5998 .elementor-element.elementor-element-d20a9f5{--width:90%;}}/* Start custom CSS for container, class: .elementor-element-cc89488 *//* =========================
   FKJP Filter – Layout
   ========================= */

.fkjp-filter{
  display:flex;
  flex-wrap:wrap;                 /* wichtig für mobile */
  gap:12px;
  align-items:end;                /* Labels + Inputs sauber */
  margin-bottom:20px;
}

/* jedes Feld (Label + Input) */
.fkjp-filter > div,
.fkjp-filter .fkjp-filter-field{
  display:flex;
  flex-direction:column;
  min-width:160px;                /* verhindert zu schmale Felder */
}

/* Textinput / Select */
.fkjp-filter input[type="text"],
.fkjp-filter select{
  height:44px;
  padding:0 12px;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#fff;
  font-size:14px;
}

/* Button */
.fkjp-filter button,
.fkjp-filter input[type="submit"]{
  height:44px;
  padding:0 18px;
  border-radius:12px;
  border:0;
  background:#111827;
  color:#fff;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}

/* Desktop: alles in einer Zeile */
@media (min-width:1024px){
  .fkjp-filter{
    flex-wrap:nowrap;
  }
}

/* Tablet: darf umbrechen */
@media (max-width:1023px){
  .fkjp-filter{
    flex-wrap:wrap;
  }
}

/* Mobile: volle Breite */
@media (max-width:640px){
  .fkjp-filter > div,
  .fkjp-filter .fkjp-filter-field,
  .fkjp-filter button,
  .fkjp-filter input[type="submit"]{
    width:100%;
  }
}/* End custom CSS */
/* Start custom CSS */.fkjp-wrap{max-width:1100px;margin:0 auto;padding:24px 16px;}
.fkjp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:1024px){.fkjp-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){.fkjp-grid{grid-template-columns:1fr;}}
.fkjp-card{
  background:#fff;border:1px solid #e5e7eb;border-radius:16px;
  padding:16px;box-shadow:0 6px 24px rgba(0,0,0,.06);
    margin-bottom: 10px;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.fkjp-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.10);border-color:#d1d5db}
.fkjp-top{display:flex;gap:12px;align-items:center;margin-bottom:10px}

.fkjp-logo,
.fkjp-detail-logo{
  height:44px;
  width:fit-content;         /* wichtig */
  max-width:140px;
  flex:0 0 auto;             /* wichtig */
  overflow:hidden;           /* ok, aber wir verhindern crop am img */
  display:inline-flex;       /* inline-flex -> shrink-to-fit */
  align-items:center;
  justify-content:center;
  padding:2px 6px;           /* etwas horizontalen "Atem" */
  background:#f9fafb;
  border:1px solid #e5e7eb;
  border-radius:10px;
}

.fkjp-logo img,
.fkjp-detail-logo img,
.fkjp-logo-img{
  height:44px !important;    /* erzwingt die Höhe */
  width:auto !important;     /* verhindert quadratisch */
  max-width:100% !important;
  max-height:44px !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block;
}


.fkjp-title{font-size:16px;font-weight:700;line-height:1.25;margin:0}
.fkjp-meta{font-size:12px;opacity:.75;margin-top:2px}
.fkjp-desc{font-size:13px;line-height:1.45;opacity:.9;margin:10px 0 12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fkjp-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}
.fkjp-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:10px 12px;border-radius:12px;text-decoration:none;
  background:#111827;color:#fff;font-weight:600;font-size:13px
}
.fkjp-chip{font-size:12px;padding:6px 10px;border-radius:999px;background:#f3f4f6;border:1px solid #e5e7eb}

/* Filter in einer Zeile */
.fkjp_jobs_filter { margin: 0 0 18px; }

.fkjp_jobs_filter__row{
  display:flex;
  gap:12px;
  align-items:flex-end;
  flex-wrap:wrap;
}

.fkjp_jobs_filter__field{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width: 180px;
}

.fkjp_jobs_filter__field span{
  font-size:12px;
  opacity:.75;
  font-weight:600;
}

.fkjp_jobs_filter__field input,
.fkjp_jobs_filter__field select{
  height:44px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:0 12px;
  background:#fff;
}

.fkjp_jobs_filter__field select[multiple]{
  height:44px; /* bleibt "1 Zeile" */
}

.fkjp_jobs_filter__actions{
  display:flex;
  gap:10px;
  align-items:center;
  height:44px;
}

.fkjp_jobs_filter__hint{
  margin-top:8px;
  font-size:12px;
  opacity:.65;
}

/* optional: ghost button falls du das noch nicht hast */
.fkjp-btn--ghost{
  background:transparent;
  border:1px solid #e5e7eb;
  color:#111827;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 14px;
  border-radius:14px;
  font-weight:800;
}
/* Filterleiste */
.fkjp_jobs_filter { margin: 0 0 18px; }
.fkjp_jobs_filter__row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:flex-end;
}
.fkjp_jobs_filter__field{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width: 170px;
}
.fkjp_jobs_filter__field--q{
  flex: 1 1 260px;
  min-width: 240px;
}
.fkjp_jobs_filter__field span{
  font-size:12px;
  opacity:.75;
}
.fkjp_jobs_filter__field input,
.fkjp_jobs_filter__field select{
  height:42px;
  padding:0 12px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#fff;
}
.fkjp_jobs_filter__actions{
  display:flex;
  gap:10px;
  align-items:center;
}
.fkjp_jobs_filter__btn{
  height:42px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid #e5e7eb;
  background:#fff;
  font-weight:700;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
}
.fkjp_jobs_filter__btn--primary{
  background:#111827;
  border-color:#111827;
  color:#fff;
}

/* Pagination (paginate_links type=list) */
.fkjp-pagination{
  margin: 22px 0 0;
  display:flex;
  justify-content:center;
}

.fkjp-pagination .page-numbers{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}

.fkjp-pagination .page-numbers li{
  margin:0;
  padding:0;
}

/* Links + current */
.fkjp-pagination .page-numbers a,
.fkjp-pagination .page-numbers span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  padding:0 14px;
  border-radius:14px;
  border:1px solid #e5e7eb;
  background:#fff;
  color:#111827;
  font-weight:700;
  text-decoration:none;
  line-height:1;
  transition: transform .08s ease, border-color .08s ease, box-shadow .08s ease;
}

.fkjp-pagination .page-numbers a:hover{
  border-color:#cbd5e1;
  box-shadow: 0 6px 18px rgba(17,24,39,.08);
  transform: translateY(-1px);
}

.fkjp-pagination .page-numbers a:focus-visible{
  outline: none;
  box-shadow: 0 0 0 4px rgba(17,24,39,.18);
  border-color:#111827;
}

/* Active page */
.fkjp-pagination .page-numbers .current{
  background:#111827;
  border-color:#111827;
  color:#fff;
  box-shadow: 0 10px 26px rgba(17,24,39,.18);
}

/* Prev/Next a bit wider */
.fkjp-pagination .page-numbers .prev,
.fkjp-pagination .page-numbers .next{
  min-width:52px;
  padding:0 16px;
}

/* Dots */
.fkjp-pagination .page-numbers .dots{
  border-color: transparent;
  background: transparent;
  color:#6b7280;
  min-width:auto;
  padding:0 6px;
}

/* Mobile */
@media (max-width: 520px){
  .fkjp-pagination .page-numbers a,
  .fkjp-pagination .page-numbers span{
    min-width:38px;
    height:38px;
    border-radius:12px;
    padding:0 12px;
  }
}


/* optional: mobile */
@media (max-width: 780px){
  .fkjp_jobs_filter__row{ gap:10px; }
  .fkjp_jobs_filter__actions{ width:100%; }
}/* End custom CSS */