.tk-faq{padding:clamp(60px,8vw,104px) 0}
.tk-faq .container{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(26px,5vw,72px);align-items:start}
.tk-faq-head{position:sticky;top:120px}
.tk-faq-mark{display:block;font-size:clamp(90px,11vw,150px);line-height:1;font-weight:800;color:var(--accent);opacity:.18;margin-bottom:-6px}
.tk-faq-head h2{margin:0;font-size:clamp(27px,3.1vw,38px);line-height:1.8;font-weight:800;color:var(--primary)}
.tk-faq-head p{margin-top:14px;max-width:420px;font-size:15px;line-height:2.15;color:var(--soft)}
.tk-faq-head p a{color:var(--accent);font-weight:700;border-bottom:1.5px dashed currentColor}
.tk-faq .faq-list{border:0;display:grid;gap:12px;counter-reset:q}
.tk-faq .q{counter-increment:q;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:var(--p-shadow);overflow:hidden}
.tk-faq .q:last-child{border-bottom:1px solid var(--line)}
.tk-faq .q button{display:flex;align-items:center;justify-content:flex-start;gap:14px;padding:16px 18px;text-align:start;font-size:16px;font-weight:700;line-height:1.9;color:var(--primary)}
.tk-faq .q button::before{content:counter(q,persian);flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:14px;font-weight:800}
.tk-faq .q button::after{content:"+";margin-inline-start:auto;flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--line);color:var(--accent);font-size:20px;line-height:1}
.tk-faq .q.open{border-color:var(--accent);background:linear-gradient(180deg,var(--accent-soft),var(--paper) 75%)}
.tk-faq .q.open button::after{background:var(--accent);border-color:var(--accent);color:#fff}
.tk-faq .q .a p{padding:0 18px 20px;padding-inline-start:66px;font-size:15px;line-height:2.15;color:var(--soft)}
.tk-faq .q button:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}

:root[data-theme="dark"] .tk-faq{background:radial-gradient(70% 90% at 90% 0,rgba(116,86,224,.28),transparent 70%),var(--band-tint)}
:root[data-theme="dark"] .tk-faq-mark{color:#c9b5ff;opacity:.22}
:root[data-theme="dark"] .tk-faq-head h2{color:#fff}
:root[data-theme="dark"] .tk-faq-head p{color:#cfc6ec}
:root[data-theme="dark"] .tk-faq-head p a{color:#e6dcff}
:root[data-theme="dark"] .tk-faq .q{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);box-shadow:none}
:root[data-theme="dark"] .tk-faq .q button{color:#f3f0ff}
:root[data-theme="dark"] .tk-faq .q button::before{background:rgba(201,181,255,.18);color:#e6dcff}
:root[data-theme="dark"] .tk-faq .q button::after{border-color:rgba(255,255,255,.28);color:#e6dcff}
:root[data-theme="dark"] .tk-faq .q.open{background:linear-gradient(180deg,rgba(160,128,212,.26),rgba(255,255,255,.05));border-color:#c9b5ff}
:root[data-theme="dark"] .tk-faq .q.open button::after{background:#c9b5ff;border-color:#c9b5ff;color:#2a0b63}
:root[data-theme="dark"] .tk-faq .q .a p{color:#d6cdf3}
@media (max-width:1024px){.tk-faq .container{grid-template-columns:1fr}.tk-faq-head{position:static}.tk-faq-mark{display:none}}
@media (max-width:680px){.tk-faq .q .a p{padding-inline-start:18px}}
/* FAQ inside a blog post: same cards, no section band or side head */
.tk-faq-inline{padding:6px 0 0;background:none!important}
.tk-faq-inline .faq-list{margin-top:14px}
:root[data-theme="dark"] .tk-faq-inline{background:none!important}
