/* ── Faq Page Styles ────────────────────────────────── */

.reveal{opacity:0;transform:translateY(20px);transition:opacity 0.6s ease,transform 0.6s ease;}
.revealed{opacity:1;transform:translateY(0);}

/* Search */
.faq-search-wrap{position:relative;max-width:560px;margin-bottom:40px;}
.faq-search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--ink-light);font-size:15px;pointer-events:none;}
.faq-search{width:100%;padding:13px 18px 13px 44px;border:1.5px solid var(--border);border-radius:4px;font-family:inherit;font-size:15px;color:var(--ink);background:var(--white);outline:none;transition:border-color 0.15s;}
.faq-search:focus{border-color:var(--navy-dark);}

/* Category filter pills */
.faq-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:40px;}
.faq-pill{padding:8px 18px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:0.03em;cursor:pointer;border:1.5px solid var(--border);color:var(--ink-light);background:var(--white);transition:all 0.15s;}
.faq-pill:hover{border-color:var(--navy-dark);color:var(--navy-dark);}
.faq-pill.active{background:var(--navy-dark);color:var(--white);border-color:var(--navy-dark);}

/* Category group */
.faq-cat{margin-bottom:40px;}
.faq-cat.hidden{display:none;}
.faq-cat-label{font-size:10.5px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;padding-bottom:10px;border-bottom:1.5px solid var(--gold-light);}

/* FAQ items */
.faq-item{border:1px solid var(--border);border-radius:6px;margin-bottom:8px;overflow:hidden;transition:box-shadow 0.2s;}
.faq-item:hover{box-shadow:var(--shadow-sm);}
.faq-item.hidden-search{display:none;}
.faq-question{width:100%;padding:18px 20px;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;align-items:center;background:var(--white);border:none;text-align:left;font-family:inherit;gap:16px;transition:background 0.15s;}
.faq-question:hover{background:var(--stone);}
.faq-question[aria-expanded="true"]{background:var(--stone);color:var(--navy-dark);}
.faq-icon{font-size:20px;color:var(--ink-light);flex-shrink:0;transition:transform 0.25s;line-height:1;}
.faq-question[aria-expanded="true"] .faq-icon{transform:rotate(45deg);color:var(--navy-dark);}
.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s ease;}
.faq-answer:not([hidden]){max-height:400px;}
.faq-answer-inner{padding:4px 20px 20px;font-size:13.5px;color:var(--ink-light);line-height:1.8;border-top:1px solid var(--border);padding-top:16px;}

/* No results */
.faq-no-results{display:none;text-align:center;padding:56px 0;}
.faq-no-results.visible{display:block;}
.faq-no-results p{color:var(--ink-light);margin-top:8px;}