.site-faq { padding: clamp(32px, 5vw, 72px) 16px; color: #25344d; }
.site-faq--home { background: #f7f8fd; }
.site-faq--page { padding-top: clamp(100px, 10vw, 150px); }
.site-faq__container { max-width: 980px; margin-inline: auto; }
.site-faq header { margin-bottom: 28px; }
.site-faq h1, .site-faq header h2 { font-size: clamp(1.3rem, 2.6vw, 1.8rem); font-weight: 800; line-height: 1.9; }
.site-faq header p, .site-faq nav { color: #637087; line-height: 2; }
.site-faq__eyebrow { color: #6551d9; font-weight: 700; }
.site-faq__list { display: grid; gap: 14px; }
.site-faq__item { border: 1px solid #e3e8f1; border-radius: 16px; background: #fff; padding: 18px 22px; scroll-margin-top: 100px; overflow-wrap: anywhere; }
.site-faq__item summary { cursor: pointer; font-size: 1rem; font-weight: 700; line-height: 2; }
.site-faq__item summary:focus-visible, .faq-pagination a:focus-visible { outline: 3px solid #8d80ee; outline-offset: 4px; }
.site-faq__item h2 { font-size: 1.08rem; font-weight: 700; line-height: 2; margin: 0 0 12px; }
.site-faq__answer p { white-space: pre-line; line-height: 2.15; font-size: 1rem; margin: 12px 0 0; }
.site-faq__all { display: inline-block; color: #5c47cd; font-weight: 700; margin-top: 24px; }
.faq-pagination { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-block: 28px; }
.faq-pagination a { border: 1px solid #e0e5ef; border-radius: 10px; padding: 9px 15px; color: #5343b5; background: #fff; }
.faq-pagination a[aria-current="page"] { background: #6551d9; color: #fff; }
@media (max-width: 575px) { .site-faq { padding-inline: 12px; } .site-faq__item { padding: 16px; } }
