/* ============================================================
   FAQ PAGE — extends site-base.css
   ============================================================ */

/* active nav state (shared chrome + bo-hero + responsive now in site-base.css) */

/* page-specific bo-hero override: balanced headline wrapping */
.bo-hero h1{text-wrap:balance}

/* ---- search box (in hero) ---- */
.faq-search{
  position:relative;display:flex;align-items:center;
  max-width:540px;margin:2rem auto 0;
}
.faq-search-ico{
  position:absolute;left:1.1rem;width:20px;height:20px;
  color:var(--teal);pointer-events:none;
}
.faq-search input{
  width:100%;font-family:var(--font-body);font-size:1.02rem;color:var(--ink);
  background:#fff;border:1px solid rgba(234,245,251,.25);border-radius:999px;
  padding:1rem 3rem 1rem 3.1rem;
  box-shadow:0 14px 38px -18px rgba(0,0,0,.6);
  transition:box-shadow .25s, border-color .25s;
}
.faq-search input::placeholder{color:var(--muted)}
.faq-search input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 4px rgba(229,185,78,.25),0 14px 38px -18px rgba(0,0,0,.6)}
.faq-search input::-webkit-search-decoration,.faq-search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.faq-search-clear{
  position:absolute;right:.9rem;width:30px;height:30px;border:0;border-radius:50%;
  display:grid;place-items:center;cursor:pointer;
  background:var(--ice);color:var(--navy);transition:background .2s,color .2s;
}
.faq-search-clear[hidden]{display:none}
.faq-search-clear:hover{background:var(--gold);color:var(--ink)}
.faq-search-clear svg{width:15px;height:15px}

/* ---- results count + empty state ---- */
.faq-count{max-width:860px;margin:0 auto 1.2rem;font-size:.9rem;font-weight:600;color:var(--muted);text-align:center}
.faq-count b{color:var(--ink)}
.faq-empty{max-width:860px;margin:1.4rem auto 0;text-align:center;color:var(--muted);font-size:1.02rem}
.faq-empty a{color:var(--teal-dark);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.faq-item[hidden]{display:none}
.faq-q mark{background:rgba(229,185,78,.42);color:inherit;border-radius:3px;padding:0 .08em}

/* ---- accordion (native details/summary, no JS needed) ---- */
.faq{padding:clamp(4rem,8vw,6.5rem) 0;background:var(--paper)}
.faq-list{max-width:860px;margin:0 auto;display:grid;gap:.9rem}
.faq-item{
  background:#fff;border:1px solid var(--line);border-radius:16px;
  transition:border-color .25s, box-shadow .25s;
}
.faq-item[open]{border-color:var(--line-gold);box-shadow:var(--shadow-sm)}
.faq-item summary{
  list-style:none;cursor:pointer;user-select:none;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.2rem 1.4rem;
  font-family:var(--font-display);font-weight:700;font-size:1.08rem;line-height:1.35;color:var(--ink);
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:var(--teal-dark)}
.faq-chev{
  flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:var(--ice);color:var(--navy);
  transition:transform .3s ease, background .3s, color .3s;
}
.faq-chev svg{width:16px;height:16px}
.faq-item[open] .faq-chev{transform:rotate(180deg);background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:var(--ink)}
.faq-a{padding:0 3.8rem 1.35rem 1.4rem;color:var(--muted);font-size:.98rem}
.faq-a a{color:var(--teal-dark);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.faq-item[open] .faq-a{animation:faqIn .35s ease both}
@keyframes faqIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.faq-item[open] .faq-a{animation:none}}
@media (max-width:620px){.faq-a{padding-right:1.4rem}}
/* pagination */
.faq-pager{display:flex;align-items:center;justify-content:center;gap:1.1rem;margin-top:2.2rem}
.faq-page-btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:background .2s,border-color .2s,opacity .2s}
.faq-page-btn svg{width:20px;height:20px}
.faq-page-btn:hover:not(:disabled){background:var(--paper);border-color:var(--line-gold)}
.faq-page-btn:disabled{opacity:.35;cursor:default}
.faq-page-status{font-family:var(--font-display);font-weight:700;font-size:.92rem;color:var(--ink);min-width:7.5rem;text-align:center}
