/* FAQ (Figma 130:3338) — native <details>, one open at a time */
.faq__inner {
  display: flex; flex-direction: column; align-items: center;
  padding: var(--section-y) var(--gx);
}
.faq__head { display: flex; flex-direction: column; align-items: center; text-align: center; }
.faq__eyebrow { margin: 0; font: 500 14px/18px var(--font-ui); letter-spacing: .6px; color: var(--color-text); }
.faq__title {
  margin: 15px 0 0;
  font: 500 var(--fs-display)/var(--lh-display) var(--font-display); letter-spacing: var(--ls-display); color: var(--color-ink);
}
.faq__title em { font-style: italic; color: var(--color-primary); }
.faq__lede { margin: 26px 0 0; max-width: 460px; font: 400 16px/24px var(--font-ui); color: var(--color-text-sub); }

.faq__list { display: flex; flex-direction: column; gap: 6px; width: min(808px, 100%); margin-top: 52px; }
.faq__item {
  background: #fff; border: 1px solid rgba(0, 0, 0, .1); border-radius: var(--radius-card);
  transition: box-shadow .2s ease;
}
.faq__item summary {
  display: flex; align-items: center; gap: 48px;
  padding: 24px; list-style: none; cursor: pointer;
  border-radius: var(--radius-card);
}
.faq__item summary::-webkit-details-marker { display: none; }
.faq__item summary:focus-visible { outline: 2px solid var(--color-primary); outline-offset: 2px; }
.faq__num { flex: none; width: 24px; font: 500 18px/24px var(--font-ui); letter-spacing: -0.27px; color: #a3a3a3; transition: color .2s ease; }
.faq__q { flex: 1; min-width: 0; margin: 0; font: 500 18px/24px var(--font-ui); letter-spacing: -0.27px; color: #5c5c5c; transition: color .2s ease; }
.faq__icon { flex: none; width: 24px; height: 24px; }
.faq__icon-close, .faq__item[open] .faq__icon-add { display: none; }
.faq__item[open] .faq__icon-close { display: block; }
.faq__item:hover .faq__q { color: #171717; }

.faq__item[open] summary { align-items: flex-start; padding-bottom: 0; }
.faq__item[open] .faq__num { color: #5c5c5c; }
.faq__item[open] .faq__q { color: #171717; }
.faq__a {
  padding: 16px 24px 24px 96px;                 /* 24 + 24 number + 48 gap, aligned under the question */
  font: 400 16px/25px var(--font-ui); color: rgba(0, 12, 46, .78);
}
.faq__a p { margin: 0 0 25px; }
.faq__a p:last-child { margin-bottom: 0; }
.faq__a ul { margin: 0 0 25px; padding-left: 20px; }
.faq__a li { margin: 0; }
.faq__item[open] .faq__a { animation: faq-open .25s ease-out; }
@keyframes faq-open { from { opacity: 0; transform: translateY(-4px); } }


@media (max-width: 1023px) {

}
@media (max-width: 599px) {
  .faq__item summary { gap: 16px; padding: 18px; }
  .faq__a { padding: 14px 18px 18px; }
  .faq__q { font-size: 16px; }
  }
@media (prefers-reduced-motion: reduce) { .faq__item[open] .faq__a { animation: none; } }
