.faq-band { background: var(--wine-tint); text-align: center; padding: 48px 28px; }
.faq-band .eyebrow { font-size: 12px; letter-spacing: 1.5px; color: var(--wine-dark-text); text-transform: uppercase; }
.faq-band h1 { margin: 12px 0 10px; }
.faq-band .sub { max-width: 480px; margin: 0 auto 20px; font-size: 13.5px; color: var(--wine-dark-text); }

.faq-list { max-width: 620px; margin: 0 auto; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); text-align: left; overflow: hidden; }
.faq-list details { border-bottom: 1px solid var(--border); }
.faq-list details:last-child { border-bottom: none; }
.faq-list summary {
  padding: 16px 18px;
  font-size: 14px;
  color: var(--text-primary);
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after {
  content: '+';
  font-size: 18px;
  color: var(--text-muted);
  transition: transform 0.15s ease;
}
.faq-list details[open] summary::after { content: '−'; }
.faq-list .faq-answer { padding: 0 18px 16px; font-size: 13.5px; color: var(--text-secondary); line-height: 1.6; }
