.faq{ background:#1f1f1f; color:#fff; }
.entry-content > .faq{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
.faq-inner{
  max-width:none;
  padding:28px clamp(16px,3.5vw,48px) 36px; 
}
.faq-title{
  margin:0 0 16px 0;
  color:#fff;
  text-align:center;
  font-weight:900;
  line-height:1.05;
  letter-spacing:.2px;
  font-size:clamp(28px,5vw,56px);
}
.faq-list{
  max-width:min(980px,92vw);
  margin:0 auto;
  display:grid;
  gap:10px;
}
.faq-item{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  box-shadow:0 6px 18px rgba(0,0,0,.18);
  overflow:hidden;
}
.faq-item summary{
  list-style:none;
  cursor:pointer;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-q{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  font-weight:800;
  font-size:15px;
  color:#fff;
}
.faq-q::after{
  content:"+";
  margin-left:auto;
  font-weight:900;
  opacity:.9;
}
.faq-item[open] .faq-q::after{ content:"–"; }
.faq-a{
  padding:0 16px 14px 16px;
  color:#e9e9e9;
  font-size:15px;
  line-height:1.55;
  border-top:1px solid rgba(255,255,255,.06);
}
.faq a,
.faq a:visited,
.faq a:hover,
.faq a:active{
  color:#fff !important;
  text-decoration:none !important;
}
@media (max-width:620px){
  .faq-inner{ padding:24px 16px 30px; }
  .faq-q{ font-size:14px; }
  .faq-a{ font-size:14px; }
}