/* ── FAQ v2 ─────────────────────────────────────────── */
.ac-faq2{max-width:860px;margin:0 auto}
.ac-faq2__item{
  position:relative;
  border-radius:20px;
  background:#fff;
  margin-bottom:12px;
  box-shadow:0 2px 12px rgba(0,0,0,.05);
  overflow:hidden;
  transition:box-shadow .3s;
}
.ac-faq2__item.open{
  box-shadow:0 8px 32px rgba(45,150,235,.12);
}
.ac-faq2__item::before{
  content:'';
  position:absolute;
  left:0;top:0;bottom:0;
  width:4px;
  background:var(--theme-main,#2d96eb);
  transform:scaleY(0);
  transform-origin:top;
  transition:transform .35s ease;
  border-radius:4px 0 0 4px;
}
.ac-faq2__item.open::before{transform:scaleY(1)}

.ac-faq2__q{
  display:flex;
  align-items:center;
  gap:20px;
  padding:24px 28px;
  cursor:pointer;
  background:none;
  border:none;
  width:100%;
  text-align:left;
  transition:background .2s;
}
.ac-faq2__q:hover{background:rgba(45,150,235,.03)}

.ac-faq2__num{
  flex-shrink:0;
  font-family: inherit;
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
  color:var(--theme-main,#2d96eb);
  opacity:.5;
  width:28px;
  transition:opacity .2s;
}
.ac-faq2__item.open .ac-faq2__num{opacity:1}

.ac-faq2__label{
  flex:1;
  font-family: inherit;
  font-size:17px;
  font-weight:700;
  color:var(--theme-dark,#1a1a2e);
  line-height:1.4;
  transition:color .2s;
}
.ac-faq2__q:hover .ac-faq2__label,
.ac-faq2__item.open .ac-faq2__label{color:var(--theme-main,#2d96eb)}

.ac-faq2__toggle{
  flex-shrink:0;
  width:36px;height:36px;
  border-radius:50%;
  background:var(--theme-white,#f1f0ef);
  display:flex;align-items:center;justify-content:center;
  transition:background .3s, transform .35s ease;
}
.ac-faq2__item.open .ac-faq2__toggle{
  background:var(--theme-main,#2d96eb);
  transform:rotate(45deg);
}
.ac-faq2__toggle svg{
  width:14px;height:14px;
  stroke:#888;
  stroke-width:2.5;
  transition:stroke .3s;
}
.ac-faq2__item.open .ac-faq2__toggle svg{stroke:#fff}

.ac-faq2__a{
  max-height:0;
  overflow:hidden;
  transition:max-height .4s ease, padding .3s ease;
}
.ac-faq2__item.open .ac-faq2__a{
  max-height:300px;
  padding-bottom:28px;
}
.ac-faq2__a-inner{
  padding:0 28px 0 76px;
  font-family: inherit;
  font-size:15px;
  line-height:1.75;
  color:#666;
}

@media(max-width:600px){
  .ac-faq2__a-inner{padding:0 20px 0 20px}
  .ac-faq2__num{display:none}
  .ac-faq2__q{gap:14px;padding:20px 20px}
}
