.oss-search { --c:#1f4d73; --bg:#e7eef4; }
.oss-bar{
  display:flex; align-items:center; gap:.75rem;
  background: var(--oss-white); border:4px solid var(--c); padding:.75rem 1rem;
  border-radius:9999px; /* „Pill“ */
}
.oss-icon::before{
  content:""; display:inline-block; width:28px; height:28px;
  border:4px solid var(--c); border-radius:50%; position:relative;
}
.oss-icon::after{
  content:""; position:relative; left:-6px; display:inline-block;
  width:14px; height:4px; background:var(--c); transform:rotate(45deg);
  border-radius:2px;
}
#oss-q{ flex:1; border:0; font-size:1.25rem; outline:none; }
.oss-cta{
  background:var(--c); color:var(--oss-white); border:0; padding:.6rem 1.1rem;
  border-radius:9999px; font-size:1.1rem; cursor:pointer;
}
.oss-filters{ display:flex; gap:1rem; margin:.8rem 0 0; flex-wrap:wrap; }
.oss-filter-toggle{
  background:var(--c); color:var(--oss-white); border:0; padding:.5rem 1rem; border-radius:9999px;
}
.oss-filter-panel{ display:none; background:var(--oss-white); border:2px solid var(--c);
  border-radius:14px; padding:.6rem .9rem; margin-top:.4rem; }
.oss-filter-panel label{ display:block; margin:.2rem 0; }

.oss-results{ margin-top:1rem; min-height:2.5rem; }
.oss-list{ list-style:none; padding:0; margin:.5rem 0; }
.oss-list li{ margin:.3rem 0; }
.oss-list a{ text-decoration:none; color:#123; }
.oss-list a:hover{ text-decoration:underline; }

/* Spinner Loading */
/* Spinner-Wrapper */
.oss-loading {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 0;
}

/* Kreis-Spinner */
.oss-spinner {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 3px solid rgba(0,0,0,0.1);
  border-top-color: var(--oss-blue, #1f4e77); /* oder deine Primärfarbe */
  animation: oss-spin 0.7s linear infinite;
}

@keyframes oss-spin {
  to { transform: rotate(360deg); }
}

/* Initiativ-Card optisch etwas hervorheben */
.oss-initiativ-card {
  border-left: 4px solid var(--oss-blue, #1f4e77);
}

/* Responsiv: Eingabe über volle Breite auf schmal */
@media (max-width: 640px){
  .oss-bar{ padding:.6rem .8rem; }
  .oss-cta{ font-size:1rem; }
}

.oss-loading {
  text-align: center;
  padding: 2em;
}
.oss-spinner {
  border: 4px solid #ddd;
  border-top: 4px solid #0073aa;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  margin: 0 auto 1em;
  animation: spin 0.8s linear infinite;
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* Aussehen wie Bootstrap ohne Bootstrap zu laden - Anfang */
/* .container { max-width: 1000px; margin: 0 auto; padding: 0 16px; } */
.input-group { display: flex; align-items: stretch; }
.input-group .input-group-text { display:flex; align-items:center; padding: 0 12px; border:1px solid #ccc; border-right:0; border-radius:8px 0 0 8px; background:#f7f7f7; }
.input-group .form-control { flex:1; padding:10px 12px; border:1px solid #ccc; border-left:0; border-radius:0 8px 8px 0; }
.btn { display:inline-block; padding:.6rem 1rem; border:1px solid transparent; border-radius:8px; cursor:pointer; }
.btn-primary { background:#0d6efd; border-color:#0d6efd; color:var(--oss-white); }
.btn-outline-secondary { background:var(--oss-white); border-color:#6c757d; color:#6c757d; }
.btn-link { background:none; border:none; color:#0d6efd; padding:.6rem .2rem; }
.card { border:3px solid var(--oss-blue-2) !important; border-radius:30px; }
.card-body { padding:35px; }
.card-title {
  font-family: 'open sans', Helvetica, Arial, sans-serif;
}
.card .btn {
  border: 2px solid var(--oss-blue-2);
}
/*.collapse { display:none; }
.collapse.show { display:block; }*/

/* Ergebnisse Liste */
.oss-job-list { list-style: none; padding-left: 0; display:none; } /* im Debug kann man oss-job-list einblenden lassen */
.oss-job-list li { padding:.4rem 0; }
.oss-job-list a { text-decoration: none; }
.oss-job-list a:hover { text-decoration: underline; }

/* Loader (passt zu deinem JS) */
.oss-loading { text-align:left; padding:2em; }

.oss-spinner {
  display: inline-block;
  width: 40px;
  height: 40px;
  position: relative;
}

.oss-spinner:after {
  content: "";
  display: block;
  width: 36px;
  height: 36px;
  border: 4px solid var(--oss-blue);
  border-color: var(--oss-blue) transparent var(--oss-blue) transparent;
  border-radius: 50%;
  animation: oss-dual-ring 0.9s linear infinite;
  position: absolute;
  top: 0;
  left: 0;
}
@keyframes oss-dual-ring {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
/* Aussehen wie Bootstrap ohne Bootstrap zu laden - Ende */

/* ====== Design-Variablen ====== */
:root{
  --oss-blue: #1f4e77;            /* Randfarbe dunkel */
  --oss-blue-2: #275f8f;          /* Fläche dunkel */
  --oss-blue-3: #2f6ea3;          /* Verlauf */
  --oss-bg: #dfe8ef;              /* Seitenhintergrund (hellblau) */
  --oss-bg-2: #eaf2fa;            /* Seitenhintergrund (hellblau) Variante */
  --oss-white: #fff;              /* Farbe weiß */
}

/* Container optional */
.oss-container { background:transparent; }

/* ====== Suchleiste (links Lupe als runder Kopf) ====== */
.oss-search-input-group{
  position: relative;
  height: 64px;
  border: 4px solid var(--oss-blue);
  border-radius: 9999px;
  background: var(--oss-white);
  overflow: visible;
  width: 400px;
  max-width: 400px;
}

/* linker runder Kopf mit Lupe */
.oss-search-input-group .input-group-text{
  height: 72px;                 /* etwas größer, damit Kreis übersteht */
  width: 72px;
  min-width: 72px;
  border-radius: 50%;
  border: 4px solid var(--oss-blue);
  background: var(--oss-blue-2);
  color: var(--oss-white);
  margin-left: -12px;           /* Kopf „überlappt“ den Rand */
  margin-right: 8px;
  display:flex;align-items:center;justify-content:center;
}

.oss-search-input-group .input-group-text .fontello-search-icon {
  display: inline-block;
  transform: scaleX(-1); /* Spiegelung */
}
.oss-search-input-group .input-group-text .fontello-search-icon:before {
  content: "\e803"; /* Charcode für die Lupe bei Enfold / Fontello */
  font-family: 'entypo-fontello';
  font-style: normal;
  font-weight: normal;
  font-size: 24px; /* je nach Bedarf anpassen */
  line-height: 1;
  vertical-align: middle;
  color: var(--oss-white);
}

/* Eingabe selbst */
.oss-search-input-group .form-control{
  height: 56px;
  padding: 0 20px;
  font-size: 1.4rem;
  border-radius: 9999px;
  border: 4px solid var(--oss-blue);
  background: linear-gradient(135deg,var(--oss-bg),var(--oss-white));
  color: var(--oss-blue);
  outline: none;
  box-shadow: none;
}
.oss-search-input-group .form-control::placeholder{
  color: #5b748a;
  opacity: .9;
}

/* Große Pillen-Suchbox direkt auf dem Input */
/* Container neutral halten (kein Rahmen vom alten Input-Group-Design) */
.oss-hero-input{
  border: 0;
  background: transparent;
  padding: 0;
}

/* Große Pille direkt auf dem Input – mit hoher Spezifität */
.oss-hero-input #oss-search-input.form-control{
  appearance:none; -webkit-appearance:none;
  background:var(--oss-white) !important;           /* Theme-Grau neutralisieren */
  color: var(--oss-blue);
  height: 64px;
  padding: 0 28px;
  margin: 0;
  width: 100%;
  border: 3px solid #6b6f72 !important; /* Theme-Border überschreiben */
  border-radius: 9999px !important;     /* Pille erzwingen */
  box-shadow: none !important;          /* Bootstrap-Glow aus */
  outline: none;
  font-size: clamp(1.2rem, 1.6vw, 1.6rem);
}
/* Mobilanpassung */
@media (max-width: 767px){
  .oss-hero-input #oss-search-input.form-control{
    font-size: clamp(1rem, 2.5vw, 1.4rem);
    height: 48px;
    padding: 0 20px;
  }
}

/* Platzhalter dezenter */
.oss-hero-input #oss-search-input.form-control::placeholder{
  color: #5b748a;
  opacity: .9;
}

/* Fokus-Ring (barrierefrei, ohne BS-Glow) */
.oss-hero-input #oss-search-input.form-control:focus{
  border-color: var(--oss-blue) !important;
  box-shadow: 0 0 0 4px rgba(31, 78, 119, .15) !important;
}



/* ====== „Job finden“-Button (große Pille) ====== */
#oss-search-button{
  height: 64px;
  padding: 0 28px;
  border-radius: 9999px;
  border: 4px solid var(--oss-blue);
  background: linear-gradient(135deg,var(--oss-blue-2),var(--oss-blue-3));
  color: var(--oss-white);
  font-size: 1.6rem;
  font-weight: 600;
}
#oss-search-button:hover{ filter: brightness(1.05); }

/* Filter-Trigger neutral */
button[data-oss-toggle="filters"]{
  height: 64px;
  border-radius: 9999px;
  border: 2px solid var(--oss-blue);
  color: var(--oss-blue);
  background: var(--oss-white);
}

/* ====== Standort-Chips (Checkboxen als Pills) ====== */
.oss-filter-standort .form-check{
  display:block;
  margin: .35rem 0;
}
/* Checkbox verstecken */
.oss-filter-standort .form-check-input{
  position: static !important;  /* nicht verstecken */
  opacity: 1 !important;
  pointer-events: auto !important;
  margin-right: .5rem;          /* Abstand vor dem Label */
}
/* Label als Chip */
.oss-filter-standort .form-check-label{
  /* Pill-Styling entfernen */
  display: inline !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  user-select: text;
  cursor: pointer;
  font-weight: 600;
}
/* kleiner Pfeil (Caret) links im Chip) */
.oss-filter-standort .form-check-label::before{
  content: none !important;
}
/* Hover */
.oss-filter-standort .form-check-label:hover{ filter: brightness(1.07); }
/* aktiv: Häkchen statt Pfeil, etwas dunkler */
.oss-filter-standort .form-check-input:checked + .form-check-label{
  filter: brightness(.98);
}
.oss-filter-standort .form-check-input:checked + .form-check-label::before{
  width:.9rem;height:.5rem;border-left:0;border-bottom:0;
  border-right:3px solid #e9f2f9;border-top:3px solid #e9f2f9;
  transform: rotate(135deg);     /* check */
}
/* Standort-Filter Städte untereinander anzeigen */
.oss-filter-standort > [class*="col-"]{
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

/* ====== Karrierelevel (Radiobuttons schlicht) ====== */
.oss-filter-level .form-check{ margin:.25rem 0; }
.oss-filter-level .form-check-input:checked{
  background-color: var(--oss-blue);
  border-color: var(--oss-blue);
}

/* ====== Ergebnisse und Loader ====== */
#oss-results {
  display: block !important;
  background-color:var(--oss-white);
}
.white {
  background-color: var(--oss-white);
}
#oss-results.visible{ opacity:1; transition:opacity .2s ease; }
.oss-loading{ text-align:center; padding:2rem 1rem; color:#335b7f; }
.oss-spinner{
  border:4px solid #d7e2ec; border-top:4px solid var(--oss-blue);
  border-radius:50%; width:40px; height:40px; margin:0 auto 1rem;
  animation: oss-spin .8s linear infinite;
}
@keyframes oss-spin { to { transform:rotate(360deg); } }

/* ====== Responsive ====== */
@media (max-width: 767px){
  .oss-search-input-group{ height:56px; }
  .oss-search-input-group .input-group-text{ height:64px; width:64px; }
  #oss-search-button{ height:56px; font-size:1.2rem; }
}

/* Grund-Hintergrund wie im Screenshot */
.oss-container {
  background: var(--oss-bg);
  padding-top: 24px;
  margin-top: 0;
  width: 100vw;          /* volle Viewport-Breite */
  margin-left: 50%;      /* von der Mitte aus repositionieren */
  transform: translateX(-50%); /* zentrieren */
  position: relative;
  padding-left: 0;
  padding-right: 0;
}
/* Damit der Inhalt innen nicht am Rand klebt */
.oss-container > .row {
    margin-left: 0;
    margin-right: 0;
}
/* und Abstand oben direkt wegnehmen, damit die Box ans Bild andockt */
.page-id-3815 .template-page {
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.page-id-3815 #after_section_1 {
  position:relative;
  z-index: 5000; /* über der Ergebniszeile */
  width: 100%;
  background-color: var(--oss-bg);
  max-height: 200px; /* damit es nicht zu hoch wird */
}
/* Damit die Kacheln unter der Filterleiste bleiben im Mobilzustand */
@media (max-width: 992px){
  .page-id-3815 #after_section_1 {
    max-height: unset; /* sonst ist es weiß noch in der Ergebniszeile */
  }
  /* Weiße Ergebniszeile entfärben im mobilen */
  .page-id-3815 #after_section_1 .row.white,
  .page-id-3815 #after_section_1 .row.white .col-1.white,
  .page-id-3815 #after_section_1 .row.white #oss-results {
    background-color: unset;
  }
  /* Hinweistext etwas Abstand nach oben */
  .page-id-3815 #after_section_1 .row.white #oss-results {
    padding-top: 25px;
  }
} 

.page-id-3815 #oss-tiles-grid {
  position:relative;
  z-index: 1000; /* unter der Filterleiste */
}

/* === Suchfeld als große "Pill" === */
.oss-hero-row {
  margin-top: .75rem;
  /* display: flex; macht Bootstrap jetzt */ /* vom BLOCK-Element zum Flex-Element machen für Anordnung der Kinder-Elemente */
  align-items: center; /* Optional: vertikale Zentrierung */
  margin-bottom: 0;
  /* gap: 1rem; */
}

.oss-hero-input {
  position: relative;
  /*border: 3px solid #6b6f72;*/        /* grauer Rand */
  /*border-radius: 9999px;*/
  /*background: var(--oss-white);*/
  /*height: 64px;  */                    /* Höhe wie Vorlage */
  display: flex;
  align-items: center;
  /*padding: 0 26px;*/
}
.oss-hero-input .form-control {
  border: 0;
  box-shadow: none;
  outline: none;
  font-size: clamp(1.2rem, 2vw, 2rem);
  padding: 0;
}

/* CTA rechts: dunkle Pille mit feiner Lichtkante */
.oss-hero-cta {
  min-width: 210px;
  height: 84px;
  border-radius: 9999px;
  border: 3px solid #6b6f72;
  background: #2e333a;              /* sehr dunkel */
  color: var(--oss-white);
  font-weight: 700;
  font-size: clamp(1rem, 1.2vw, 1.4rem);
  box-shadow: inset 0 4px 0 rgba(255,255,255,.08);
}
.oss-hero-cta:hover { filter: brightness(1.05); }

/* === Filterzeile === */
.oss-filterbar {
  margin-top: 0;
  min-height: 63px;
  height:63px;
  max-height:63px;
  /*padding-bottom: 1.3em;*/
}

/* Trichter-Icon (als CSS-Icon) */
.oss-funnel {
  width: 28px; height: 28px; display: inline-block;
  border: 3px solid var(--oss-blue-2); border-radius: 6px 6px 10px 10px / 8px 8px 14px 14px;
  position: relative;
}
.oss-funnel::after{
  content:""; position:absolute; left:50%; transform:translateX(-50%);
  bottom:-10px; width:10px; height:12px; border-left:3px solid var(--oss-blue-2); border-right:3px solid var(--oss-blue-2);
  border-bottom-left-radius:8px; border-bottom-right-radius:8px;
}

/* Trigger-Buttons wie Überschriften mit blauem Haken */
.oss-filter-trigger {
  appearance: none;
  background: transparent;
  border: 0;
  padding: 0;
  font-weight: 800;
  font-size: clamp(1rem, 1.3vw, 1.6rem);
  color: #262c33;
  display: inline-flex; align-items: center; gap: .5rem;
  cursor: pointer;
}
.oss-filter-trigger .oss-caret {
  width: 12px; height: 12px; display:inline-block;
  border-right: 3px solid var(--oss-blue-2); border-bottom:3px solid var(--oss-blue-2);
  transform: rotate(-45deg);             /* geschlossen: nach rechts */
  margin-top: -2px;
  transition: transform .2s ease;
}
.oss-filter-trigger[aria-expanded="true"] .oss-caret {
  transform: rotate(45deg);              /* offen: nach unten */
}

/* Panels unter den Triggern */
.oss-panel { padding-top: 8px; }
.oss-panel.collapsed { display: none; }

/* Standort-Checkboxen als simple Chips/Labels */
.oss-filter-standort .form-check-label,
.oss-filter-level .form-check-label {
  font-size: 1rem; font-weight: 600; color:#262c33;
}
.oss-filter-standort .form-check-input,
.oss-filter-level .form-check-input {
  margin-right: .4rem;
}

/* Reset-Button rechts */
#oss-reset-filters { border-width: 2px; display:block; }

#oss-filter-icon {
  float:left;
  padding:7px 35px 0 0 !important;
}

/* Responsive: Button unter das Feld stapeln */
@media (max-width: 992px){
  .oss-hero-cta { width: 100%; min-width: 0; }
}


/* === Filterbar: horizontale Anordnung === */
/* Die gesamte Filterleiste über die Kacheln heben */
.oss-filter-group {
  position: relative;
  z-index: 100000; /* hoch genug, aber noch moderat */
  isolation: isolate;      /* eigener Stacking-Kontext -> Kinder ordnen sich darin */
}

.oss-filter-group .oss-panel {
  position: absolute;
  z-index: 100001;           /* über der Leiste selbst */
  top: 100%;
  left: 0;
  z-index: 10;
  background: var(--oss-white);
  border: 2px solid var(--oss-blue);
  border-radius: 12px;
  padding: 1rem;
  margin-top: .5rem;
  min-width: 260px;
  box-shadow: 0 6px 12px rgba(0,0,0,0.1);
}
/* häufige Container beim Enfold die Eltern sein können overflow anpassen, damit das Stacking mit z-index oben klappt */
.oss-container,
.entry-content-wrapper,
.main_color,        /* ggf. vorhandene Enfold-Section */
.content{
  overflow: visible !important;   /* verhindert Abschneiden */
}

/* Panel bei .collapsed ausblenden */
.oss-filter-group .oss-panel.collapsed {
  display: none;
}

/* Responsive: Panels untereinander statt überlappend */
@media (max-width: 768px) {
  .oss-filter-group .oss-panel {
    position: static;
    box-shadow: none;
    border-width: 1px;
  }
}

/* === "Jobs finden" Button (Dark-to-Light Hover) Anfang === */
#oss-search-button {
  height: 64px;
  padding: 0 42px;
  border-radius: 9999px;
  border: 3px solid var(--oss-blue);
  background: var(--oss-blue);
  color: var(--oss-white);
  font-size: 1.6rem;
  font-weight: 700;
  transition: all 0.35s ease;
  box-shadow: inset 0 4px 0 rgba(255, 255, 255, 0.08);
}
/* Mobilanpassung */
@media (max-width: 900px) {
  #oss-search-button {
    height: 48px;
    padding: 0 24px;
    font-size: 1.4rem;
  }
}
@media (max-width: 768px) {
  #oss-search-button {
    height: 48px;
    padding: 0 24px;
    font-size: 1.2rem;
  }
  .row.white {
    margin-top:36px;
  }
}
@media (max-width: 430px) {
  #oss-search-button {
    height: 48px;
    padding: 0 12px;
    font-size: 0.9rem;
  }
  #top #wrap_all .av-special-heading.av-m6t948am-cedaed7c4cf95287eed486ab89453413 .av-special-heading-tag {
    font-size: 2.5em !important;
  }
}

/* Hover-Effekt: sanft zu weiß wechseln */
#oss-search-button:hover {
  background: var(--oss-white);
  color: var(--oss-blue);
  box-shadow: inset 0 4px 0 rgba(0, 0, 0, 0.05);
  transform: translateY(-1px);
}

/* Optional: leichter Klick-Effekt */
#oss-search-button:active {
  transform: translateY(0);
  filter: brightness(0.97);
}
/* === "Jobs finden" Button (Dark-to-Light Hover) Ende === */
/* Überschriften in den Kacheln kleiner */
.av-image-caption-overlay-center {
  font-size: 1em;
}

/* NUR auf der Stellen-Seite die Kachelung anpassen */
.page-id-3815 div.flex_column.av_one_fourth {
  margin: 30px 0 0 0;
  width: 17.5%;
}

/* Marie-Claire Schriftart unten anpassen */
.avia-tooltip .inner_tooltip p {
  font-size: 1.4em;
  line-height: 1.4em;
}

#top #wrap_all .flex_cell_inner .av-special-heading.av-96e5o7-898b85ca31b7efe781f47f344d4b0d0c .av-special-heading-tag,
#top #wrap_all .flex_cell_inner .av-special-heading.av-8uafqs-39450f22bff7300b533673c460eb2cb2 .av-special-heading-tag {
  font-size: 3vw !important;
  line-height: 1.6em !important;
}

/* === Share-Overlay Anfang === */

#oss-share-overlay,
.oss-share-overlay {
  position: absolute;
  display: none; /* wird per JS auf block gesetzt */
  z-index: 99999;
}

#oss-share-overlay.is-open,
.oss-share-overlay.is-open {
  display: block;
}

/* Backdrop im Popover brauchen wir nicht mehr */
#oss-share-overlay .oss-share-backdrop {
  display: none;
}

#oss-share-overlay .oss-share-modal,
.oss-share-overlay .oss-share-modal {
  position: fixed;
  max-width: 360px;
  background: #fff;
  border-radius: 8px;
  padding: 1rem 1.5rem 1.25rem;
  box-shadow: 0 10px 30px rgba(0,0,0,0.18);
  right: 10px;
  bottom: 40%;
}
/* Optional: Eltern-Spalte als Positionierungs-Referenz */
.flex_column {
  position: relative;
}

.oss-share-close {
  position: absolute;
  top: 0.5rem;
  right: 0.75rem;
  border: none;
  background: transparent;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

.oss-share-jobtitle {
  margin-bottom: 1rem;
  font-weight: 600;
}

.oss-share-icons {
  display: flex;
  gap: 1rem;
  justify-content: center;
  align-items: center;
}

.oss-share-icons a {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #ddd;
  text-decoration: none;
  font-size: 1.3rem;
}

.oss-share-icons a:hover {
  background: #f5f5f5;
}

/* Grundstil für den "Job teilen"-Link */
.teilen_textblock {
  text-align:center;
}
/* Icon vorstellen mit Teilen-Icon aus Font-Awesome */
.avia_textblock.teilen_textblock .oss-share-trigger {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  text-decoration: none;
  cursor: pointer;
  color: var(--oss-blue);              /* Grundfarbe */
  transition: color 0.2s ease; /* weicher Übergang */
}

/* Icon davor */
.avia_textblock.teilen_textblock .oss-share-trigger i {
  font-size: 0.95em;
}

/* Hover: Text + Icon gleichermaßen einfärben (Icon erbt die Farbe) */
.avia_textblock.teilen_textblock .oss-share-trigger:hover {
  color: var(--oss-blue-3); /* Hover-Farbe, nach Wunsch anpassen */
}

/* === Share-Overlay Ende === */



/* === Responsive Anpassungen === */
@media only screen and (max-width: 767px) {
    .responsive #top #wrap_all .container {
        width: 98%;
        max-width: 98%;
        /* margin: 0; */
        padding-left: 0;
        padding-right: 0;
        float: none;
    }
    .responsive #top #wrap_all .container.oss-container {
        margin: 0 0 0 48%;
    }
}

/* Panels hängen direkt unter dem Trigger */
.oss-filterbar .oss-filter-group {
  position: relative;
}

.oss-filterbar .oss-panel {
  min-width: 260px;
}

/* bis 768px: wirklich immer oben ausrichten */
@media (max-width: 767.98px) {
  .oss-filterbar {
    align-items: flex-start !important;
  }
}

/* sehr schmal: Filter untereinander, Reset-Button volle Breite */
@media (max-width: 575.98px) {
  .oss-filterbar > .col-auto,
  .oss-filterbar > .col-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .oss-filterbar #oss-reset-filters {
    width: 100%;
    text-align: center;
    margin-top: 0.5rem;
  }
}