.faq-accordion {
  display: grid;
  gap: var(--site-spacing-sm);
}

.faq-accordion__item {
  background: var(--site-color-surface);
  border: 1px solid var(--site-color-border);
  border-radius: var(--site-radius-md);
  overflow: hidden;
  transition: border-color var(--site-transition-fast);
}

.faq-accordion__item[open] {
  border-color: color-mix(in srgb, var(--site-color-primary) 60%, transparent);
}

.faq-accordion__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--site-spacing-md);
  padding: var(--site-spacing-md) var(--site-spacing-lg);
  min-height: 56px;
  cursor: pointer;
  list-style: none;
  font-weight: 600;
  font-size: var(--site-text-md);
  color: var(--site-color-text);
  transition: background var(--site-transition-fast);
  user-select: none;
}

.faq-accordion__summary::-webkit-details-marker { display: none; }
.faq-accordion__summary:hover { background: color-mix(in srgb, var(--site-color-primary) 6%, transparent); }

.faq-accordion__question { flex: 1; }

.faq-accordion__chevron {
  display: inline-flex;
  color: var(--site-color-text-muted);
  transition: transform var(--site-transition-normal), color var(--site-transition-fast);
}
.faq-accordion__item[open] .faq-accordion__chevron {
  transform: rotate(180deg);
  color: var(--site-color-primary);
}

.faq-accordion__answer {
  padding: 0 var(--site-spacing-lg) var(--site-spacing-lg);
  color: var(--site-color-text-muted);
  line-height: var(--site-line-normal);
}

.faq-accordion__answer p { margin: 0; }
