body[data-page="faq"] .faq-layout { grid-template-columns: minmax(0, 3fr) minmax(220px, 1fr); }
body[data-page="faq"] .filter-tabs { grid-template-columns: repeat(5, minmax(0, 1fr)); }
body[data-page="faq"] .faq-panel { padding: 20px; }
body[data-page="faq"] .faq-panel > h2 { margin: 0; color: var(--teal-dark); }
body[data-page="faq"] .faq-list { gap: 5px; }
body[data-page="faq"] .faq-item { border: 0; border-radius: 0; overflow: visible; background: transparent; }
body[data-page="faq"] .faq-question {
  min-height: 56px;
  padding: 12px 48px 12px 14px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: 6px;
  color: var(--ink);
  transition: background-color .18s ease, border-color .18s ease;
}
body[data-page="faq"] .faq-question:hover,
body[data-page="faq"] .faq-question:focus-visible,
body[data-page="faq"] .faq-question[aria-expanded="true"] { border-color: var(--accent-edge); background: var(--accent-soft); }
body[data-page="faq"] .filter-tab.active { box-shadow: inset 0 -4px 0 var(--accent); }
body[data-page="faq"] .faq-number { background: var(--navy); font-weight: 900; }
body[data-page="faq"] .faq-answer {
  position: relative;
  margin: 0 8px 4px;
  padding: 12px 20px 16px 52px;
  color: #364e6b;
  line-height: 1.7;
}
body[data-page="faq"] .faq-answer::before {
  content: "A";
  position: absolute;
  top: 11px;
  left: 12px;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  color: var(--navy);
  background: var(--accent);
  font-weight: 900;
}
@media (max-width: 760px) {
  body[data-page="faq"] .faq-layout,
  body[data-page="faq"] .filter-tabs { grid-template-columns: 1fr; }
  body[data-page="faq"] .faq-panel { padding: 14px; }
  body[data-page="faq"] .filter-tab.active { box-shadow: inset 4px 0 0 var(--accent); }
}
