/* ==========================================================================
   Sektion: Häufige Fragen (hellgrau) – Kopf links, nummeriertes Akkordeon rechts
   ========================================================================== */
.faq-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 8fr); gap: clamp(32px, 5vw, 96px); align-items: start; }
@media (min-width: 992px) { .faq-kopf { position: sticky; top: 110px; } }
.contentblock.akkordion h3.headline-jost { color: var(--muted); }
.akkordion .faq-kopf h2 { margin-bottom: .45em; font-size: clamp(2rem, 3.8vw, 3.2rem); font-weight: 800; letter-spacing: -1px; line-height: 1.1; }
.faq-lead { max-width: 22em; margin: 0; color: var(--body); font-size: 1.25em; line-height: 1.6; }
.faq-cta { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--line); }
.faq-cta p { color: var(--ink); }

.fragen { border-top: 1px solid var(--line); }
.contentblock .frage { margin: 0; font-size: 1.1em; line-height: 1.4; }
.frage-btn {
  position: relative;
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) 24px;
  align-items: baseline;
  gap: 12px;
  width: 100%;
  padding: 26px 0;
  border: 0;
  background: none;
  color: var(--ink);
  font: inherit;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
  transition: color .2s;
}
.frage-btn:hover, .frage.is-active .frage-btn { color: var(--green); }
.frage-nr { color: var(--green); font-weight: 500; }
.frage-icon {
  align-self: center;
  justify-self: end;
  width: 11px;
  height: 11px;
  margin-top: -5px;
  border-right: 2px solid var(--green);
  border-bottom: 2px solid var(--green);
  transform: rotate(45deg);
  transition: transform .3s ease, margin .3s ease;
}
.frage.is-active .frage-icon { margin-top: 5px; transform: rotate(-135deg); }
.antwort {
  overflow: hidden;
  padding: 0 40px 28px 68px;
  color: var(--body);
  font-size: 1.02em;
  line-height: 1.75;
  transition: height .35s ease;
}
.antwort p:last-child { margin-bottom: 0; }
.frage + .antwort, .antwort { border-bottom: 1px solid var(--line); }
.frage:not(.is-active) { border-bottom: 1px solid var(--line); }
.frage.is-active { border-bottom: 0; }

@media (max-width: 991px) {
  .faq-grid { grid-template-columns: 1fr; }
}
@media (max-width: 575px) {
  .frage-btn { grid-template-columns: 34px minmax(0, 1fr) 18px; gap: 8px; padding: 20px 0; }
  .antwort { padding: 0 0 22px 42px; }
  .faq-cta .lp-btn-solid { width: 100%; justify-content: center; }
}
