.faq-hero { padding-bottom: clamp(70px, 8vw, 105px); }
.faq-hero__grid { display: block; }
.faq-hero .page-hero__inner { max-width: 920px; }
.faq-accent { color: var(--green-bright); }

.faq-shortcuts { padding-top: 64px; }
.faq-shortcut-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.faq-shortcut { min-height: 260px; padding: 24px; display: flex; flex-direction: column; align-items: flex-start; }
.faq-shortcut > div { margin: 22px 0 auto; }
.faq-shortcut h3 { margin-bottom: 8px; }
.faq-shortcut p { margin-bottom: 22px; }

.faq-browser { overflow: hidden; }
.faq-tools { max-width: 980px; margin: 0 auto 54px; }
.faq-search { position: relative; display: flex; align-items: center; min-height: 62px; padding: 0 16px 0 52px; border: 1px solid rgba(184,229,41,.24); border-radius: 18px; background: rgba(5,8,18,.68); box-shadow: inset 0 1px rgba(255,255,255,.035), 0 20px 60px rgba(0,0,0,.16); }
.faq-search:focus-within { border-color: rgba(184,229,41,.52); box-shadow: 0 0 0 3px rgba(184,229,41,.08), 0 20px 60px rgba(0,0,0,.16); }
.faq-search__icon { position: absolute; left: 19px; display: grid; color: var(--green-bright); }
.faq-search__icon svg { width: 21px; height: 21px; }
.faq-search input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--text); font-size: .96rem; }
.faq-search input::placeholder { color: var(--text-muted); }
.faq-search__clear { flex: 0 0 auto; border: 0; background: transparent; color: var(--green-bright); font-size: .76rem; font-weight: 800; cursor: pointer; padding: 10px; }
.faq-filters { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 18px; }
.faq-filter { border: 1px solid var(--line); border-radius: 999px; background: rgba(255,255,255,.025); color: var(--text-soft); padding: 10px 14px; font-size: .76rem; font-weight: 750; cursor: pointer; transition: border-color var(--transition), color var(--transition), background var(--transition), transform var(--transition); }
.faq-filter:hover { color: var(--text); border-color: rgba(184,229,41,.3); transform: translateY(-1px); }
.faq-filter.is-active { color: #0a0e08; border-color: var(--green-bright); background: var(--green-bright); }
.faq-results { margin: 17px 0 0; text-align: center; color: var(--text-muted); font-size: .82rem; }

.faq-groups { max-width: 980px; margin-inline: auto; display: grid; gap: 58px; }
.faq-group[hidden], .faq-item[hidden] { display: none !important; }
.faq-group__heading { display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; margin-bottom: 18px; }
.faq-group__heading h3 { margin-bottom: 5px; font-size: 1.3rem; }
.faq-group__heading p { margin: 0; font-size: .9rem; }
.faq-group__count { min-width: 34px; height: 34px; display: grid; place-items: center; padding-inline: 8px; border-radius: 999px; background: rgba(184,229,41,.08); border: 1px solid rgba(184,229,41,.15); color: var(--green-bright); font-size: .74rem; font-weight: 800; }
.faq-list--page { max-width: none; }
.faq-list--page .faq-item { background: rgba(7,10,20,.45); }
.faq-list--page .faq-item button { padding: 21px 22px; font-size: .94rem; }
.faq-list--page .faq-answer p { padding: 0 22px 21px; max-width: 850px; }
.faq-empty { max-width: 680px; margin: 38px auto 0; padding: 32px; text-align: center; }
.faq-empty .icon-box { margin-inline: auto; }
.faq-empty h3 { margin: 18px 0 8px; }
.faq-empty p { max-width: 500px; margin: 0 auto 20px; }
.faq-item.is-targeted { border-color: rgba(184,229,41,.42); box-shadow: 0 0 0 3px rgba(184,229,41,.06); }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }

@media (max-width: 900px) {
    .faq-shortcut-grid { grid-template-columns: 1fr; }
    .faq-shortcut { min-height: 0; }
}

@media (max-width: 620px) {
    .faq-hero h1 { font-size: clamp(2.7rem, 15vw, 4.3rem); }
    .faq-search { padding-left: 47px; }
    .faq-group__heading { grid-template-columns: auto 1fr; }
    .faq-group__count { grid-column: 2; justify-self: start; }
    .faq-filters { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 5px; scrollbar-width: none; }
    .faq-filters::-webkit-scrollbar { display: none; }
    .faq-filter { flex: 0 0 auto; }
}
