/* ════════════════════════════════════════════════
   FAQ PAGE — bespoke styles
   Ask Premura search + persona pivot + hot ranking
   ════════════════════════════════════════════════ */

#faq-hero{
  position:relative;padding:140px 40px 60px;
  background:radial-gradient(ellipse at 30% 20%,#1c1338 0%,#0b0a18 60%);
  overflow:hidden;
}
#faq-hero::before{
  content:'';position:absolute;top:-200px;right:-200px;width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(168,85,247,.16) 0%,transparent 70%);
  filter:blur(80px);
}
.fq-hero-inner{max-width:980px;margin:0 auto;position:relative;z-index:1;text-align:center;}
.fq-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.72rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:#c084fc;
  background:rgba(168,85,247,.1);
  border:1px solid rgba(168,85,247,.32);
  padding:6px 14px;border-radius:100px;margin-bottom:24px;
}
.fq-eyebrow::before{
  content:'';width:6px;height:6px;border-radius:50%;
  background:#c084fc;box-shadow:0 0 10px #c084fc;
  animation:fqPulse 1.6s ease infinite;
}
@keyframes fqPulse{0%,100%{opacity:1;}50%{opacity:.4;}}
.fq-h1{
  font-family:'Syne',sans-serif;font-weight:800;
  font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.05;letter-spacing:-.02em;
  color:#f4f0ff;margin-bottom:18px;
}
.fq-h1 em{
  font-style:normal;
  background:linear-gradient(135deg,#e9b6ff 0%,#c084fc 60%,#a855f7 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.fq-sub{font-size:1.05rem;color:#c9bfdc;max-width:620px;margin:0 auto 36px;}

/* search bar */
.fq-search{
  position:relative;max-width:680px;margin:0 auto;
  z-index:30;
  background:rgba(11,10,24,.6);
  border:1px solid rgba(168,85,247,.32);
  border-radius:16px;
  display:flex;align-items:center;gap:12px;padding:6px 6px 6px 18px;
  backdrop-filter:blur(16px);
  box-shadow:0 20px 50px rgba(11,10,24,.5);
  transition:border-color .2s,box-shadow .2s;
}
.fq-search:focus-within{
  border-color:rgba(192,132,252,.6);
  box-shadow:0 20px 50px rgba(168,85,247,.18),0 0 0 4px rgba(168,85,247,.08);
}
.fq-search-icon{flex-shrink:0;color:#c084fc;display:flex;}
.fq-search input{
  flex:1;background:none;border:none;outline:none;
  font-family:inherit;font-size:1rem;color:#f4f0ff;
  padding:14px 0;
}
.fq-search input::placeholder{color:#8b8bad;}
.fq-search-tag{
  font-family:'Syne',sans-serif;font-size:.66rem;font-weight:700;letter-spacing:.12em;
  color:#c084fc;background:rgba(168,85,247,.12);
  padding:6px 10px;border-radius:8px;flex-shrink:0;text-transform:uppercase;
}
.fq-search-clear{
  background:none;border:none;color:#a89cc4;cursor:pointer;font-size:1.2rem;
  padding:6px 10px;display:none;
}
.fq-search-clear.show{display:inline;}

.fq-suggest{
  position:absolute;top:calc(100% + 8px);left:0;right:0;
  background:rgba(11,10,24,.97);backdrop-filter:blur(20px);
  border:1px solid rgba(168,85,247,.3);
  border-radius:14px;padding:8px;
  box-shadow:0 24px 60px rgba(11,10,24,.6);
  display:none;z-index:50;text-align:left;
  box-shadow:0 20px 50px rgba(0,0,0,.6);
}
.fq-suggest.show{display:block;}
.fq-suggest-row{
  padding:10px 14px;border-radius:8px;cursor:pointer;
  font-size:.9rem;color:#d6c9ec;
  display:flex;justify-content:space-between;align-items:center;gap:10px;
  transition:background .15s;
}
.fq-suggest-row:hover{background:rgba(168,85,247,.12);color:#fff;}
.fq-suggest-row mark{
  background:rgba(192,132,252,.25);color:#e9b6ff;
  padding:1px 4px;border-radius:3px;
}
.fq-suggest-empty{padding:14px;color:#8b8bad;font-size:.86rem;text-align:center;}

/* persona chips */
.fq-personas{
  display:flex;justify-content:center;gap:8px;margin-top:28px;flex-wrap:wrap;
}
.fq-persona{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(168,85,247,.2);
  color:#c9bfdc;
  padding:9px 18px;border-radius:100px;cursor:pointer;
  font-family:inherit;font-size:.84rem;font-weight:600;
  transition:all .25s;
  display:inline-flex;align-items:center;gap:8px;
}
.fq-persona:hover{border-color:rgba(192,132,252,.5);color:#fff;}
.fq-persona.active{
  background:linear-gradient(135deg,#a855f7 0%,#7c3aed 100%);
  border-color:transparent;color:#fff;
  box-shadow:0 6px 20px rgba(168,85,247,.35);
}
.fq-persona-dot{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.8;}

/* persona context bar */
.fq-context{
  max-width:980px;margin:32px auto 0;padding:14px 20px;
  background:rgba(168,85,247,.06);
  border:1px solid rgba(168,85,247,.22);
  border-radius:12px;font-size:.88rem;color:#d6c9ec;line-height:1.5;
  text-align:center;
  opacity:0;transform:translateY(-6px);
  transition:opacity .3s,transform .3s;
  pointer-events:none;
}
.fq-context.show{opacity:1;transform:translateY(0);pointer-events:auto;}
.fq-context strong{color:#e9b6ff;}

/* ════ FAQ list ════ */
#faq-body{background:#fff;padding:80px 40px 100px;}
.fq-wrap{max-width:980px;margin:0 auto;}

.fq-stats-bar{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:28px;padding:14px 20px;
  background:rgba(168,85,247,.04);
  border:1px solid rgba(168,85,247,.14);
  border-radius:12px;
  font-size:.84rem;color:#5b5a7e;flex-wrap:wrap;gap:12px;
}
.fq-stats-bar strong{color:#7c3aed;font-family:'Syne',sans-serif;font-weight:800;}
.fq-stats-bar-right{
  display:flex;gap:14px;align-items:center;
  font-size:.78rem;
}
.fq-sort-toggle{
  background:none;border:1px solid rgba(168,85,247,.25);color:#7c3aed;
  cursor:pointer;font-family:inherit;font-size:.74rem;font-weight:700;
  padding:6px 12px;border-radius:8px;letter-spacing:.04em;
  transition:all .2s;
}
.fq-sort-toggle:hover{background:rgba(168,85,247,.08);}
.fq-sort-toggle.active{background:#7c3aed;color:#fff;border-color:#7c3aed;}

.fq-group{margin-bottom:34px;}
.fq-group-title{
  font-family:'Syne',sans-serif;font-weight:700;font-size:.78rem;
  color:#7c3aed;letter-spacing:.14em;text-transform:uppercase;
  margin-bottom:14px;display:flex;align-items:center;gap:10px;
}
.fq-group-title::after{
  content:'';flex:1;height:1px;
  background:linear-gradient(90deg,rgba(168,85,247,.3),rgba(168,85,247,0));
}

.fq-item{
  background:#fff;border:1px solid rgba(168,85,247,.14);
  border-radius:14px;margin-bottom:10px;overflow:hidden;
  transition:border-color .2s,box-shadow .2s,opacity .25s,transform .25s;
}
.fq-item.dimmed{opacity:.32;}
.fq-item.match{
  border-color:rgba(168,85,247,.5);
  box-shadow:0 6px 20px rgba(168,85,247,.12);
}
.fq-item.hidden{display:none;}
.fq-item:hover{border-color:rgba(168,85,247,.3);}
.fq-item.open{
  border-color:rgba(168,85,247,.45);
  box-shadow:0 10px 30px rgba(124,58,237,.1);
}

.fq-q{
  width:100%;background:none;border:none;cursor:pointer;
  display:flex;align-items:center;gap:14px;
  padding:18px 22px;text-align:left;
  font-family:inherit;font-size:1rem;font-weight:600;color:#12102a;
}
.fq-q-text{flex:1;line-height:1.4;}
.fq-q-text mark{
  background:rgba(192,132,252,.25);color:#7c3aed;
  padding:1px 3px;border-radius:3px;font-weight:700;
}
.fq-hot{
  display:inline-flex;align-items:center;gap:5px;
  font-size:.66rem;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;
  padding:3px 8px;border-radius:6px;flex-shrink:0;
  background:rgba(192,132,252,.14);color:#e9b6ff;
  border:1px solid rgba(192,132,252,.32);
}
.fq-hot.warm{background:rgba(168,85,247,.1);color:#c084fc;border-color:rgba(168,85,247,.24);}
.fq-hot.mild{background:rgba(124,58,237,.08);color:#a78bfa;border-color:rgba(124,58,237,.18);}
.fq-hot::before{content:'●';font-size:.5rem;}

.fq-icon{
  flex-shrink:0;width:28px;height:28px;border-radius:8px;
  background:rgba(168,85,247,.08);color:#7c3aed;
  display:flex;align-items:center;justify-content:center;font-size:1.2rem;
  transition:all .25s;
}
.fq-item.open .fq-icon{
  background:#7c3aed;color:#fff;transform:rotate(45deg);
}

.fq-ans{
  max-height:0;overflow:hidden;
  transition:max-height .35s cubic-bezier(.4,0,.2,1);
}
.fq-ans-inner{
  padding:0 22px 20px 64px;
  color:#3d3b5c;line-height:1.7;font-size:.95rem;
}
.fq-ans-inner em{
  font-style:normal;color:#7c3aed;font-weight:600;
}

.fq-no-results{
  text-align:center;padding:40px 20px;color:#8b8bad;
  display:none;
}
.fq-no-results.show{display:block;}
.fq-no-results h4{
  font-family:'Syne',sans-serif;font-weight:700;color:#12102a;
  margin-bottom:6px;font-size:1.1rem;
}

/* ════ Floating chat stub ════ */
.fq-chat{
  position:fixed;right:24px;bottom:24px;z-index:90;
  background:#fff;
  border:1px solid rgba(168,85,247,.25);
  border-radius:18px;padding:14px 18px;
  box-shadow:0 18px 50px rgba(124,58,237,.2);
  display:flex;align-items:center;gap:14px;
  max-width:340px;
  transform:translateY(120%);
  transition:transform .5s cubic-bezier(.16,1,.6,1.05);
}
.fq-chat.show{transform:translateY(0);}
.fq-chat-avatars{
  display:flex;flex-shrink:0;
}
.fq-chat-avatar{
  width:30px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,var(--c1) 0%,var(--c2) 100%);
  border:2px solid #fff;
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-family:'Syne',sans-serif;font-weight:800;font-size:.7rem;
}
.fq-chat-avatar:nth-child(2){margin-left:-10px;}
.fq-chat-avatar:nth-child(3){margin-left:-10px;}
.fq-chat-body{flex:1;min-width:0;}
.fq-chat-status{
  font-size:.7rem;color:#10d97a;font-weight:700;
  display:flex;align-items:center;gap:5px;letter-spacing:.04em;
}
.fq-chat-status::before{
  content:'';width:6px;height:6px;border-radius:50%;background:#10d97a;
  box-shadow:0 0 8px rgba(16,217,122,.7);
  animation:fqPulse 1.4s ease infinite;
}
.fq-chat-line{
  font-size:.86rem;color:#12102a;font-weight:600;margin-top:1px;
}
.fq-chat-typing{
  display:inline-flex;gap:3px;margin-left:4px;vertical-align:middle;
}
.fq-chat-typing span{
  width:4px;height:4px;border-radius:50%;background:#7c3aed;
  animation:fqType 1.2s infinite;
}
.fq-chat-typing span:nth-child(2){animation-delay:.15s;}
.fq-chat-typing span:nth-child(3){animation-delay:.3s;}
@keyframes fqType{0%,100%{opacity:.3;transform:translateY(0);}50%{opacity:1;transform:translateY(-2px);}}
.fq-chat-cta{
  flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#a855f7 0%,#7c3aed 100%);
  color:#fff;font-size:.78rem;font-weight:700;
  padding:8px 14px;border-radius:10px;text-decoration:none;
  white-space:nowrap;
  box-shadow:0 4px 14px rgba(124,58,237,.3);
}
.fq-chat-close{
  position:absolute;top:6px;right:6px;
  width:22px;height:22px;border-radius:50%;
  background:rgba(168,85,247,.08);color:#7c3aed;
  border:none;cursor:pointer;font-size:.9rem;line-height:1;
  display:flex;align-items:center;justify-content:center;
}

@media(max-width:768px){
  #faq-hero{padding:120px 20px 50px;}
  #faq-body{padding:50px 20px 80px;}
  .fq-q{padding:14px 16px;font-size:.94rem;}
  .fq-ans-inner{padding:0 16px 16px 52px;}
  .fq-chat{left:14px;right:14px;bottom:14px;max-width:none;}
  .fq-personas{gap:6px;}
  .fq-persona{font-size:.78rem;padding:8px 14px;}
  #floating-cta{display:none;}
}
