/* ===== FAQ PAGE SPECIFIC STYLES ===== */

/* ----- HERO ----- */
.fqhero{position:relative;padding:calc(var(--h-head) + 48px) 0 46px;background:linear-gradient(160deg,#050b1e,#0a1b45 52%,#0d3aa0);overflow:hidden;text-align:center}
.fqhero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:52px 52px;mask-image:radial-gradient(ellipse at 50% 40%,#000 25%,transparent 72%)}
.fq-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.4}
.fq-orb.o1{width:440px;height:440px;background:#1868FB;top:-180px;right:-60px}
.fq-orb.o2{width:340px;height:340px;background:#0a3a96;bottom:-150px;left:-80px}
.fqh-in{position:relative;z-index:3;max-width:820px;margin:0 auto}
.fqh-in .eyebrow{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#9dc0ff;margin-bottom:16px}
.fqh-in h1{font-size:clamp(2rem,4.1vw,3rem);line-height:1.1;letter-spacing:-.02em;color:#fff;margin-bottom:14px}
.fqh-in h1 .grad{background:linear-gradient(90deg,#7fb0ff,#c9dcff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.fqh-in p{color:#a9c4f0;font-size:1.02rem;max-width:640px;margin:0 auto 24px}
.fq-search{position:relative;max-width:600px;margin:0 auto 16px}
.fq-search input{width:100%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.09);border-radius:999px;padding:15px 54px 15px 48px;color:#fff;font-size:.95rem;font-family:var(--font-body);outline:none;transition:.25s;backdrop-filter:blur(8px)}
.fq-search input::placeholder{color:#8fa9d6}
.fq-search input:focus{border-color:#7fb0ff;background:rgba(255,255,255,.14);box-shadow:0 0 0 4px rgba(24,104,251,.25)}
.fq-search .si{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:19px;height:19px;color:#8fa9d6;pointer-events:none}
.fq-chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.fq-chips button{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#cfe0ff;font-size:.76rem;font-weight:600;border-radius:999px;padding:7px 14px;cursor:pointer;transition:.22s;font-family:var(--font-body)}
.fq-chips button:hover{background:rgba(255,255,255,.14);border-color:#7fb0ff;color:#fff}
/* search results dropdown */
.fq-res{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px rgba(10,19,48,.28);max-height:400px;overflow-y:auto;text-align:left;z-index:30;display:none}
.fq-res.on{display:block}
.fq-res .r{padding:13px 18px;border-bottom:1px solid var(--line);cursor:pointer;transition:.18s}
.fq-res .r:last-child{border-bottom:none}
.fq-res .r:hover{background:var(--bg-tint)}
.fq-res .r b{display:block;font-size:.87rem;color:var(--ink);margin-bottom:3px}
.fq-res .r span{font-size:.74rem;color:var(--blue);font-weight:700}
.fq-res .none{padding:20px;text-align:center;color:var(--slate);font-size:.87rem}

/* ----- CLIENT STATS ----- */
.fq-cl{background:#0a1330;padding:30px 0}
.fq-clr{display:grid;grid-template-columns:repeat(4,1fr)}
.fq-c{text-align:center;padding:8px 16px;border-right:1px solid rgba(255,255,255,.1)}
.fq-c:last-child{border-right:none}
.fq-c .num{font-family:var(--font-head);font-weight:800;font-size:1.85rem;color:#fff;line-height:1}
.fq-c .lbl{font-size:.78rem;color:#8fa9d6;margin-top:6px}

/* ----- MAIN TAB NAVIGATOR ----- */
.fq-nav{position:sticky;top:var(--h-head);z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.fq-tabs{display:flex;justify-content:center;gap:6px;overflow-x:auto;padding:12px 0;-ms-overflow-style:none;scrollbar-width:none}
.fq-tabs::-webkit-scrollbar{display:none}
.fq-t{flex:0 0 auto;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;color:var(--slate);font-weight:700;font-size:.83rem;border-radius:999px;padding:9px 16px;cursor:pointer;transition:.22s;font-family:var(--font-body);white-space:nowrap}
.fq-t svg{width:16px;height:16px}
.fq-t:hover{border-color:var(--blue-25);color:var(--blue)}
.fq-t.on{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:var(--shadow-blue)}
.fq-t .ct{font-size:.68rem;font-weight:800;background:var(--blue-08);color:var(--blue);border-radius:999px;padding:2px 7px}
.fq-t.on .ct{background:rgba(255,255,255,.22);color:#fff}

/* ----- CATEGORY PANEL ----- */
.fq-pan{padding:40px 0 20px}
.fq-ph{max-width:760px;margin:0 auto 26px;text-align:center}
.fq-ph h2{font-size:clamp(1.5rem,3vw,2.15rem);margin-bottom:10px}
.fq-ph p{color:var(--slate);font-size:.98rem}
/* sub tabs */
.fq-subs{display:flex;gap:7px;overflow-x:auto;padding:4px 2px 20px;justify-content:center;-ms-overflow-style:none;scrollbar-width:none}
.fq-subs::-webkit-scrollbar{display:none}
.fq-s{flex:0 0 auto;border:1px solid var(--line);background:var(--bg-tint);color:var(--slate);font-weight:600;font-size:.79rem;border-radius:10px;padding:8px 14px;cursor:pointer;transition:.22s;font-family:var(--font-body);white-space:nowrap}
.fq-s:hover{background:#fff;border-color:var(--blue-25);color:var(--blue)}
.fq-s.on{background:#fff;border-color:var(--blue);color:var(--blue);box-shadow:var(--shadow-soft);font-weight:700}
/* accordion */
.fq-list{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:9px;animation:fqFade .4s ease}
@keyframes fqFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.fq-i{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.24s}
.fq-i.open{border-color:var(--blue);box-shadow:var(--shadow-blue)}
.fq-q{display:flex;align-items:center;gap:14px;width:100%;padding:17px 20px;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-body);transition:.2s}
.fq-q:hover{background:var(--bg-tint)}
.fq-q h3{flex:1;font-size:.96rem;font-weight:600;color:var(--ink);line-height:1.45;font-family:var(--font-head)}
.fq-q .pl{width:26px;height:26px;flex:0 0 auto;border-radius:50%;background:var(--bg-tint);color:var(--slate);display:grid;place-items:center;transition:.3s}
.fq-i.open .fq-q .pl{background:var(--blue);color:#fff;transform:rotate(45deg)}
.fq-q .pl svg{width:13px;height:13px}
.fq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.fq-i.open .fq-a{max-height:600px}
.fq-a p{padding:0 20px 19px 54px;font-size:.9rem;color:var(--slate);line-height:1.75}
.fq-more{text-align:center;margin-top:24px}

/* ----- HOW IT WORKS (visual layer) ----- */
.fq-hw{background:var(--bg-tint)}
.fq-flow{background:#fff;border:1px solid var(--blue-12);border-radius:22px;box-shadow:var(--shadow-blue);padding:32px;display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative}
.fq-fn{position:relative;text-align:center;padding:0 12px}
.fq-fn::after{content:"";position:absolute;right:-12px;top:32px;width:24px;height:2px;background:var(--blue-25)}
.fq-fn:last-child::after{display:none}
.fq-fn .dot{width:64px;height:64px;border-radius:18px;background:var(--blue-08);color:var(--blue);display:grid;place-items:center;margin:0 auto 14px;transition:.35s;border:1px solid var(--blue-12)}
.fq-fn.on .dot{background:var(--blue);color:#fff;box-shadow:var(--shadow-blue);transform:scale(1.06)}
.fq-fn .dot svg{width:28px;height:28px}
.fq-fn b{display:block;font-family:var(--font-head);font-size:.95rem;margin-bottom:6px}
.fq-fn p{font-size:.8rem;color:var(--slate);line-height:1.55}
.fq-fn .st{display:inline-block;margin-top:8px;font-size:.66rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 9px;background:#eef2f8;color:var(--slate-light);transition:.3s}
.fq-fn.on .st{background:var(--blue-08);color:var(--blue)}
.fq-fn.done .st{background:var(--ok-bg);color:var(--ok)}
.fq-fn.fail .st{background:var(--fail-bg);color:var(--fail)}
.fq-legend{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.fq-legend div{display:flex;gap:8px;align-items:center;font-size:.85rem;color:var(--slate)}
.fq-legend i{width:10px;height:10px;border-radius:3px;font-style:normal}
.fq-legend .b1{background:var(--blue)}.fq-legend .b2{background:var(--ok)}.fq-legend .b3{background:var(--fail)}

/* ----- ABOUT TEXTSPEED FAQ (layer 5) ----- */
.fq-ab{display:grid;grid-template-columns:250px 1fr;max-width:1140px;margin:0 auto;gap:40px;align-items:start}
.fq-abn{position:sticky;top:calc(var(--h-head) + 80px);display:flex;flex-direction:column;gap:5px}
.fq-abt{border:1px solid transparent;background:none;color:var(--slate);font-weight:600;font-size:.85rem;border-radius:10px;padding:11px 14px;cursor:pointer;text-align:left;transition:.22s;font-family:var(--font-body)}
.fq-abt:hover{background:var(--bg-tint);color:var(--blue)}
.fq-abt.on{background:var(--blue-08);border-color:var(--blue-18);color:var(--blue);font-weight:700}

/* ----- responsive ----- */
@media(max-width:1024px){
  .fq-clr{grid-template-columns:repeat(2,1fr);gap:16px}
  .fq-c{border-right:none;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:14px 16px}
  .fq-flow{grid-template-columns:1fr;gap:16px;padding:22px}
  .fq-fn{display:flex;align-items:flex-start;gap:16px;text-align:left;padding:16px;background:var(--bg-tint);border:1px solid var(--line);border-radius:14px}
  .fq-fn::after{display:none}
  .fq-fn .dot{margin:0;flex:0 0 auto;width:48px;height:48px;border-radius:12px}
  .fq-fn .dot svg{width:22px;height:22px}
  .fq-ab{grid-template-columns:1fr;gap:18px}
  .fq-abn{position:static;flex-direction:row;overflow-x:auto;padding-bottom:6px}
  .fq-abt{flex:0 0 auto;white-space:nowrap;border:1px solid var(--line)}
  .fq-subs{justify-content:flex-start}
}
@media(max-width:640px){
  .fq-clr{grid-template-columns:repeat(2,1fr);gap:12px}
  .fq-c{border-right:none;border-bottom:none;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:14px 10px;text-align:center}
  .fq-c:last-child{border-bottom:none}
  .fq-c .num{font-size:1.5rem}
  .fq-c .lbl{font-size:0.75rem;color:#a9c4f0;margin-top:4px}
  .fq-tabs{padding:10px 4px;gap:10px;-webkit-overflow-scrolling:touch}
  .fq-t{padding:10px 16px;font-size:0.85rem;gap:8px;border-radius:999px}
  .fq-subs{padding:4px 2px 14px;gap:8px;-webkit-overflow-scrolling:touch}
  .fq-s{padding:8px 14px;font-size:0.82rem;border-radius:12px}
  .fq-flow{padding:20px 16px;gap:14px;border-radius:18px}
  .fq-fn{padding:18px;gap:16px;border-radius:14px;align-items:flex-start}
  .fq-fn .dot{width:48px;height:48px;border-radius:12px;flex:0 0 auto}
  .fq-fn .dot svg{width:22px;height:22px}
  .fq-fn b{font-size:0.95rem;margin-bottom:6px}
  .fq-fn p{font-size:0.82rem;line-height:1.55}
  .fq-q{padding:16px 18px}
  .fq-q h3{font-size:.92rem}
  .fq-a p{padding:0 18px 18px 18px;font-size:0.88rem}
}