
  .faq-band, .faq-band * { box-sizing:border-box; }  /* the references assume a global border-box reset the page does not have */
  .faq-band { border-top:1px solid #e7e4f0; background:#f7f7fb; padding:88px 48px; }
  .faq-list { border-top:1px solid #e7e4f0; }  /* full-bleed within the band: a 1144px cap left ~400px dead on the right at 1600 (QA A1, 2026-09-22) */
  .faq-item { border-bottom:1px solid #e7e4f0; }
  .faq-item h3 { margin:0; }
  .faq-q { width:100%; display:flex; align-items:center; justify-content:space-between; gap:24px; background:none; border:none;
    text-align:left; padding:26px 4px; cursor:pointer; font:600 19px/1.4 'Sora',sans-serif; letter-spacing:-.01em; color:#1d1b33; transition:color .2s ease; }
  .faq-q:hover { color:#a34ef0; }
  .faq-toggle { flex:none; width:26px; height:26px; border-radius:50%; border:1.5px solid #e7e4f0; display:flex; align-items:center; justify-content:center;
    position:relative; transition:border-color .25s ease, background-color .25s ease; }
  .faq-toggle::before, .faq-toggle::after { content:""; position:absolute; background:#8f8ba6; transition:transform .3s cubic-bezier(.65,0,.35,1), background-color .25s ease; }
  .faq-toggle::before { width:10px; height:1.6px; }
  .faq-toggle::after { width:1.6px; height:10px; }
  .faq-item.faq-open .faq-toggle { border-color:#a34ef0; background:#f5ecfd; }
  .faq-item.faq-open .faq-toggle::before, .faq-item.faq-open .faq-toggle::after { background:#a34ef0; }
  .faq-item.faq-open .faq-toggle::after { transform:rotate(90deg) scaleY(0); }
  .faq-a { display:grid; grid-template-rows:0fr; transition:grid-template-rows .38s cubic-bezier(.65,0,.35,1); }
  .faq-item.faq-open .faq-a { grid-template-rows:1fr; }
  .faq-inner { overflow:hidden; }
  .faq-inner p { font-size:14.5px; line-height:1.75; color:#686386; margin:0 0 26px; max-width:800px; }
  .faq-inner p a { color:#a34ef0; font-weight:600; }
  .faq-inner p a:hover { text-decoration:underline; }
  @media (max-width:640px) {
    .faq-q { padding:20px 2px; gap:16px; font-size:16px; }
  }
