/* =========================================================
   Akkordeon – Nachbau Elementor „Nested Accordion“ (FAQ)
   Markup + Verhalten: siehe assets/js/accordion.js
   Standardwerte = Elementor-Standards; Seiten setzen die Variablen
   (z. B. assets/css/pages/bewerber.css → .b-accordion).
   ========================================================= */
.accordion {
  --acc-title-font: inherit;
  --acc-title-size: 1rem;
  --acc-title-weight: inherit;
  --acc-title-lh: inherit;
  --acc-title-color: #1f2124;
  --acc-title-hover: #1f2124;
  --acc-title-active: #1f2124;
  --acc-icon-size: 15px;
  --acc-icon-gap: 10px;
  --acc-padding: 10px;
  --acc-space-between: 0px;
  --acc-distance: 0px;           /* Abstand Titel → Inhalt */
  --acc-border: 1px solid #d5d8dc;
  --acc-content-padding: 10px;
  --acc-content-gap: 20px;
  --acc-item-shadow: none;
  width: 100%;
}

.acc-item {
  position: relative;
  display: flex;
  flex-direction: column;
  box-shadow: var(--acc-item-shadow);
}
.acc-item:not(:last-child) { margin-block-end: var(--acc-space-between); }

.acc-title {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: var(--acc-icon-gap);
  padding: var(--acc-padding);
  border: var(--acc-border);
  color: var(--acc-title-color);
  list-style: none;
  cursor: pointer;
}
.acc-title::-webkit-details-marker { display: none; }
.acc-title::marker { content: ""; }
.acc-title:hover { color: var(--acc-title-hover); }
.acc-item[open] > .acc-title { color: var(--acc-title-active); margin-block-end: var(--acc-distance); }

.acc-title-text {
  display: flex;
  flex-grow: 1;
  align-items: center;
  font-family: var(--acc-title-font);
  font-size: var(--acc-title-size);
  font-weight: var(--acc-title-weight);
  line-height: var(--acc-title-lh);
}

.acc-icon { position: relative; display: flex; flex-direction: row; align-items: center; width: fit-content; }
.acc-icon .icon { width: auto; height: var(--acc-icon-size); fill: currentColor; }
.acc-icon .acc-icon-open { display: none; }
.acc-item[open] > .acc-title .acc-icon-open { display: block; }
.acc-item[open] > .acc-title .acc-icon-closed { display: none; }

.acc-content {
  display: flex;
  flex-direction: column;
  gap: var(--acc-content-gap);
  padding: var(--acc-content-padding);
  border: var(--acc-border);
}
