@layer components {
  .home-faq-list { display: grid; gap: 12px; max-width: 960px; }
  .home-faq-item { border: 1px solid #dfe6ee; border-radius: 14px; background: #f8fafc; overflow: hidden; }
  .home-faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px; cursor: pointer; list-style: none; color: #0f1f3d; font-weight: 700; font-size: 16px; }
  .home-faq-item summary::-webkit-details-marker { display: none; }
  .home-faq-item summary svg { flex-shrink: 0; color: #059669; transition: transform .2s; }
  .home-faq-item[open] { background: white; border-color: #a7f3d0; }
  .home-faq-item[open] summary svg { transform: rotate(180deg); }
  .home-faq-item summary:focus-visible { outline: 2px solid #059669; outline-offset: -3px; }
  .home-faq-answer { padding: 0 20px 20px; color: #475569; line-height: 1.75; font-size: 14px; }
  @media (prefers-reduced-motion: reduce) { .home-faq-item summary svg { transition: none; } }
}
