/* ==========================================================================
   Ringtaxi FAQ – ohne Akkordeon, responsive, Gutenberg-safe
   Scope: .faq-wrap
   ========================================================================== */

.faq-wrap {
  /* Layout + Design Tokens */
  --faq-max-w: 900px;
  --faq-x: clamp(16px, 2vw, 24px);
  --faq-border: #e5e7eb;
  --faq-muted: #4b5563;
  --faq-link: inherit;
  --faq-link-hover: inherit;
  --faq-focus: #2563eb;
  --faq-radius: 8px;

  color-scheme: light dark;
  max-width: var(--faq-max-w);
  margin: 0 auto;
  padding: var(--faq-x);
}

/* Headings --------------------------------------------------------------- */

.faq-wrap h1 {
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.2;
  margin: 0 0 .6em;
}

.faq-wrap h2 {
  font-size: clamp(20px, 3vw, 28px);
  line-height: 1.3;
  margin: 1.25em 0 .5em;
}

.faq-wrap h3.faq-q {
  font-size: clamp(18px, 2.4vw, 22px);
  line-height: 1.3;
  font-weight: 700;
  margin: 0 0 .4rem;
  scroll-margin-top: 4rem; /* angenehmer Sprung bei Ankerlinks */
}

/* Items ------------------------------------------------------------------ */

.faq-wrap .faq-item {
  padding: .9rem 0;
  border-top: 1px solid var(--faq-border);
}

.faq-wrap .faq-item:first-of-type {
  border-top: 0;
}

.faq-wrap .faq-a {
  line-height: 1.65;
}

.faq-wrap .faq-a p {
  margin: .6em 0;
}

.faq-wrap .faq-a p + p,
.faq-wrap .faq-a ul,
.faq-wrap .faq-a ol {
  margin-top: .6em;
}

/* Listen & Kleinkram ----------------------------------------------------- */

.faq-wrap ul, .faq-wrap ol {
  padding-left: 1.25em;
}

.faq-wrap li + li {
  margin-top: .25em;
}

.faq-wrap strong { font-weight: 700; }
.faq-wrap em { font-style: italic; }

/* Links ------------------------------------------------------------------ */

.faq-wrap a {
  color: var(--faq-link);
  text-decoration: underline;
  text-underline-offset: .15em;
  text-decoration-thickness: from-font;
}

.faq-wrap a:hover,
.faq-wrap a:focus-visible {
  color: var(--faq-link-hover);
}

.faq-wrap a:focus-visible {
  outline: 2px solid var(--faq-focus);
  outline-offset: 2px;
  border-radius: 2px;
}

/* Kompatibilität mit Gutenberg-Spacing ---------------------------------- */

.faq-wrap > :first-child { margin-top: 0; }
.faq-wrap > :last-child { margin-bottom: 0; }

/* Dark Mode -------------------------------------------------------------- */

@media (prefers-color-scheme: dark) {
  .faq-wrap {
    --faq-border: #2b2f36;
    --faq-link: #9ecbff;
    --faq-link-hover: #cbe3ff;
    color: #e6e6e6;
  }
}

/* Reduzierte Bewegungen (falls später Micro-Interaktionen dazukommen) ---- */

@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; animation: none !important; }
}

/* Druckansicht ----------------------------------------------------------- */

@media print {
  .faq-wrap {
    max-width: 100%;
    padding: 0;
  }
  .faq-wrap .faq-item {
    break-inside: avoid;
  }
  .faq-wrap a {
    text-decoration: none;
  }
}