/* ============================================================
   faq.css
   Additive styles for the FAQ page.
   Load AFTER styles.css and case-studies.css — reuses the same
   design tokens (--bg, --card, --border, --text, --text-dim,
   --accent, --accent-dim, --radius).
   ============================================================ */

.faq-hero{padding:150px 0 50px;text-align:center;}
.faq-hero .wrap{max-width:760px;}
.faq-hero h1{font-size:clamp(2rem,4.6vw,3rem);font-weight:700;letter-spacing:-0.02em;margin:16px 0 18px;}
.faq-hero p{color:var(--text-dim);font-size:1.02rem;margin-bottom:30px;}

.faq-search{max-width:480px;margin:0 auto 30px;display:flex;gap:10px;}
.faq-search input{flex:1;background:var(--card);border:1px solid var(--border);color:var(--text);
  padding:12px 18px;border-radius:999px;font-size:0.95rem;font-family:inherit;}
.faq-search input:focus{outline:none;border-color:var(--accent);}

.faq-cats{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;}
.faq-cat-btn{background:transparent;border:1px solid var(--border);color:var(--text-dim);
  padding:9px 18px;border-radius:999px;font-size:0.85rem;font-weight:600;cursor:pointer;
  transition:border-color .2s,color .2s,background .2s;font-family:inherit;}
.faq-cat-btn:hover{border-color:var(--accent);color:var(--accent);}
.faq-cat-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-dim);}

.faq-groups{max-width:820px;margin:0 auto;padding:0 24px;}
.faq-group{margin-bottom:52px;}
.faq-group:last-child{margin-bottom:0;}
.faq-group-title{font-size:1.2rem;font-weight:700;letter-spacing:-0.01em;margin-bottom:8px;
  display:flex;align-items:center;gap:10px;}
.faq-group-title .count{color:var(--text-dim);font-size:0.78rem;font-weight:600;background:var(--card);
  border:1px solid var(--border);padding:3px 10px;border-radius:999px;}

/* taller answers than the homepage's short FAQ pattern */
.faq-groups .faq-a{max-height:0;}
.faq-groups .faq-item.open .faq-a{max-height:320px;padding-bottom:22px;}

.faq-count-note{text-align:center;color:var(--text-dim);font-size:0.85rem;margin:-14px 0 40px;}
