.faq-group { margin: 32px 0; }
.faq-group-title {
  color: var(--bg-dark);
  font-size: clamp(1.15rem, 3vw, 1.4rem);
  margin-bottom: 18px;
}
.faq-item {
  margin-bottom: 12px;
  border: 1px solid #dce2e9;
  border-radius: 6px;
  background: #fff;
}
.faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 20px;
  color: var(--bg-dark);
  font-weight: 800;
  line-height: 1.6;
  cursor: pointer;
  list-style: none;
  border-radius: 5px;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after {
  content: '+';
  flex: 0 0 24px;
  text-align: center;
  font-size: 1.5rem;
  line-height: 1;
}
.faq-item[open] summary::after { content: '\2212'; }
.faq-item summary:hover { background: var(--bg-light-2); color: var(--bg-dark); }
.faq-item summary:focus-visible { outline: 3px solid var(--color-gold); outline-offset: 3px; }
.faq-answer { padding: 20px; }
.faq-answer p { margin: 0; color: var(--text-muted); line-height: 1.85; overflow-wrap: anywhere; }
.faq-answer a { color: var(--bg-dark); text-decoration: underline; text-underline-offset: 3px; }
.faq-answer a:hover { text-decoration-thickness: 2px; }
@media (max-width: 575.98px) {
  .faq-item summary, .faq-answer { padding: 16px; }
  .faq-item summary { gap: 10px; }
}
