/* ============================================================
   FAQ PAGE — SCOPED STYLES (assets/css/faq.css)
   Design tokens (--ink, --ivory, --marigold, --gold, --maroon, etc.),
   .container, .section-pad, .btn, .eyebrow and header/ticker/footer
   rules already live in main.css and are enqueued site-wide.
   This file is loaded on top of that, only on the FAQ template,
   via wp_enqueue_style('adharva-faq', ...) — see functions.php.
   Everything below is unique to the FAQ template.
   ============================================================ */

/* ── Breadcrumb ── */
.breadcrumb-bar{padding:14px 0;margin-top:var(--offset-top);background:var(--ivory-deep);border-bottom:1px solid rgba(26,20,16,0.06);}
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:0.78rem;color:var(--ink-soft);flex-wrap:wrap;}
.breadcrumb a{color:var(--ink-soft);transition:color 0.25s var(--ease);}
.breadcrumb a:hover{color:var(--marigold-deep);}
.breadcrumb span[aria-current]{color:var(--marigold-deep);font-weight:600;}
.breadcrumb svg{width:12px;height:12px;flex-shrink:0;opacity:0.5;}

/* ── FAQ Hero ── */
.faq-hero{position:relative;padding:52px 0 40px;background:
    radial-gradient(ellipse 900px 460px at 50% -18%,rgba(232,116,12,0.11),transparent 62%),
    radial-gradient(ellipse 620px 360px at 8% 108%,rgba(107,31,31,0.07),transparent 60%),
    radial-gradient(ellipse 620px 360px at 92% 108%,rgba(201,160,78,0.10),transparent 60%),
    var(--ivory);
  overflow:hidden;border-bottom:1px solid rgba(26,20,16,0.06);text-align:center;}
.seal-watermark{position:absolute;top:50%;left:50%;width:400px;height:400px;transform:translate(-50%,-50%);opacity:0.05;pointer-events:none;z-index:0;}
@media(max-width:640px){.seal-watermark{width:280px;height:280px;}}
.faq-hero-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;}
.faq-hero-copy{max-width:660px;width:100%;display:flex;flex-direction:column;align-items:center;}
.faq-hero-copy .eyebrow{justify-content:center;flex-wrap:wrap;}
.faq-hero-badge{display:inline-flex;align-items:center;gap:7px;margin-bottom:12px;padding:6px 14px 6px 8px;border-radius:30px;background:var(--white);border:1px solid rgba(201,160,78,0.4);box-shadow:var(--shadow-card);max-width:100%;}
.faq-hero-badge .badge-seal{width:20px;height:20px;flex-shrink:0;}
.faq-hero-badge span{font-size:0.66rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:var(--maroon-deep);}
.faq-hero-copy h1{font-size:clamp(1.55rem,6vw,2.5rem);margin-top:10px;color:var(--ink);max-width:15ch;padding:0 4px;}
.faq-hero-copy h1 em{font-style:italic;color:var(--marigold-deep);}
.faq-hero-copy > p{margin-top:10px;font-size:0.92rem;line-height:1.65;color:var(--ink-soft);max-width:480px;margin-left:auto;margin-right:auto;padding:0 4px;}

.faq-search{margin:20px auto 0;max-width:500px;width:100%;position:relative;}
.faq-search input{width:100%;padding:13px 44px 13px 44px;border-radius:14px;border:1.5px solid rgba(26,20,16,0.12);background:var(--white);font-family:'Poppins',sans-serif;font-size:16px;color:var(--ink);box-shadow:var(--shadow-card);text-align:left;transition:border-color 0.25s var(--ease),box-shadow 0.25s var(--ease);}
.faq-search input::placeholder{color:#9a8f80;}
.faq-search input:focus{border-color:var(--marigold);outline:none;}
.faq-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--marigold-deep);pointer-events:none;}
.faq-search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;display:none;align-items:center;justify-content:center;color:var(--ink-soft);transition:background 0.2s;}
.faq-search-clear:hover{background:var(--mist);}
.faq-search-clear svg{position:static;transform:none;width:14px;height:14px;color:inherit;}
.faq-search.has-value .faq-search-clear{display:flex;}
.faq-search-count{margin-top:10px;font-size:0.78rem;color:var(--ink-soft);min-height:1.2em;text-align:center;}
.faq-search-count strong{color:var(--marigold-deep);}
@media(max-width:480px){
  .faq-hero{padding:40px 0 32px;}
  .faq-hero-badge span{font-size:0.6rem;}
  .faq-hero-copy > p{font-size:0.86rem;}
  .faq-search input{padding:12px 40px 12px 42px;font-size:16px;}
}

/* ── Layout: sticky rail + accordion content ── */
.faq-layout{display:grid;grid-template-columns:250px 1fr;gap:56px;align-items:flex-start;}
@media(max-width:900px){.faq-layout{grid-template-columns:1fr;}}

.faq-rail{position:sticky;top:calc(var(--offset-top) + 24px);display:flex;flex-direction:column;gap:4px;}
.faq-rail-link{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:12px;font-size:0.86rem;font-weight:500;color:var(--ink-soft);transition:background 0.25s var(--ease),color 0.25s var(--ease);}
.faq-rail-link .rail-icon{width:20px;height:20px;flex-shrink:0;color:var(--marigold-deep);opacity:0.75;}
.faq-rail-link:hover{background:var(--ivory-deep);color:var(--ink);}
.faq-rail-link.active{background:linear-gradient(135deg,rgba(232,116,12,0.12),rgba(201,160,78,0.10));color:var(--ink);font-weight:600;}
.faq-rail-link.active .rail-icon{opacity:1;}
.faq-rail-note{margin-top:18px;padding:18px;border-radius:16px;background:var(--maroon-deep);color:var(--ivory);}
.faq-rail-note p{font-size:0.8rem;line-height:1.6;color:#e7d8c4;margin-bottom:12px;}
.faq-rail-note a{display:inline-flex;align-items:center;gap:7px;font-size:0.8rem;font-weight:600;color:var(--gold-soft);}
.faq-rail-note a svg{width:15px;height:15px;}

.faq-pillbar{display:none;}
@media(max-width:900px){
  .faq-pillbar{display:flex;gap:8px;overflow-x:auto;padding:4px 4px 14px;margin-bottom:28px;scrollbar-width:none;position:sticky;top:var(--offset-top);background:var(--ivory);z-index:40;}
  .faq-pillbar::-webkit-scrollbar{display:none;}
  .faq-pill{flex-shrink:0;padding:9px 16px;border-radius:30px;font-size:0.78rem;font-weight:600;background:var(--white);border:1.3px solid rgba(26,20,16,0.1);color:var(--ink-soft);white-space:nowrap;}
  .faq-pill.active{background:var(--ink);border-color:var(--ink);color:var(--ivory);}
  .faq-rail{display:none;}
}

/* ── Category sections + accordion ── */
.faq-category{scroll-margin-top:calc(var(--offset-top) + 20px);margin-bottom:52px;}
.faq-category:last-child{margin-bottom:0;}
.faq-cat-head{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.faq-cat-icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--marigold),var(--marigold-deep));display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 8px 18px -6px rgba(232,116,12,0.4);}
.faq-cat-icon svg{width:22px;height:22px;color:var(--white);}
.faq-cat-head h2{font-size:1.5rem;color:var(--ink);}
.faq-cat-head .faq-cat-count{font-size:0.74rem;color:var(--ink-soft);font-weight:500;background:var(--ivory-deep);padding:4px 10px;border-radius:20px;margin-left:auto;flex-shrink:0;}

.faq-list{display:flex;flex-direction:column;gap:12px;}
.faq-item{background:var(--white);border:1px solid rgba(26,20,16,0.08);border-radius:16px;overflow:hidden;transition:border-color 0.25s var(--ease),box-shadow 0.25s var(--ease);}
.faq-item.open{border-color:rgba(232,116,12,0.35);box-shadow:var(--shadow-card);}
.faq-q{width:100%;display:flex;align-items:center;gap:16px;padding:19px 22px;text-align:left;font-size:0.95rem;font-weight:600;color:var(--ink);}
.faq-q .q-mark{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--ivory-deep);color:var(--marigold-deep);font-family:'Cormorant Garamond',serif;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center;}
.faq-q .q-text{flex:1;}
.faq-q .chevron{flex-shrink:0;width:18px;height:18px;color:var(--ink-soft);transition:transform 0.35s var(--ease);}
.faq-item.open .chevron{transform:rotate(180deg);color:var(--marigold-deep);}
.faq-a{max-height:0;overflow:hidden;transition:max-height 0.4s var(--ease);}
.faq-a-inner{padding:0 22px 22px 64px;font-size:0.9rem;line-height:1.75;color:var(--ink-soft);}
.faq-a-inner p + p{margin-top:10px;}
.faq-a-inner a{color:var(--marigold-deep);font-weight:600;border-bottom:1px solid rgba(232,116,12,0.35);}
.faq-a-inner strong{color:var(--ink);}

.faq-empty{display:none;text-align:center;padding:60px 20px;color:var(--ink-soft);}
.faq-empty.show{display:block;}
.faq-empty svg{width:44px;height:44px;color:var(--gold);margin:0 auto 14px;}
.faq-empty h3{font-size:1.3rem;color:var(--ink);margin-bottom:6px;}
.faq-empty a{color:var(--marigold-deep);font-weight:600;}

mark{background:rgba(232,116,12,0.22);color:inherit;border-radius:3px;padding:0 2px;}

/* ── CTA banner ── */
.faq-cta{margin:80px 0 24px;background:linear-gradient(120deg,var(--maroon-deep),var(--maroon) 75%);border-radius:28px;padding:52px 44px;position:relative;overflow:hidden;}
.faq-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(228,200,135,0.18),transparent 55%);}
.faq-cta-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;}
.faq-cta h3{font-size:1.7rem;color:var(--ivory);max-width:460px;}
.faq-cta p{margin-top:8px;font-size:0.9rem;color:#e7d8c4;max-width:460px;line-height:1.6;}
.faq-cta-btns{display:flex;gap:12px;flex-wrap:wrap;}
@media(max-width:768px){.faq-cta{margin:56px 0 20px;padding:40px 30px;}.faq-cta h3{font-size:1.42rem;}}
@media(max-width:480px){
  .faq-cta{margin:44px 0 16px;padding:34px 24px;border-radius:22px;}
  .faq-cta-inner{flex-direction:column;align-items:flex-start;gap:22px;}
  .faq-cta h3{font-size:1.3rem;max-width:100%;}
  .faq-cta p{max-width:100%;}
  .faq-cta-btns{width:100%;flex-direction:column;gap:10px;}
  .faq-cta-btns .btn{width:100%;}
}
