/* Scroll-driven UI (replaces React useState on header + mobile CTA) */
[data-header].is-scrolled {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

[data-header].is-scrolled .header-inner {
  border-color: hsl(var(--border));
  background: hsl(var(--surface) / 0.8);
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  box-shadow: var(--shadow-soft);
  padding: 10px 1rem;
}

[data-sticky-cta] {
  transform: translateY(100%);
  opacity: 0;
  pointer-events: none;
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-sticky-cta].is-visible {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}

/* FAQ — native <details> styled like the former accordion */
.faq details {
  border-bottom: 1px solid hsl(var(--border));
}

.faq details:last-child {
  border-bottom: 0;
}

.faq summary {
  list-style: none;
  cursor: pointer;
}

.faq summary::-webkit-details-marker {
  display: none;
}

.faq summary::after {
  content: "+";
  float: right;
  font-size: 1.25rem;
  font-weight: 600;
  color: hsl(var(--klein));
  line-height: 1.4;
}

.faq details[open] summary::after {
  content: "−";
}
