/* ===== FAQ ===== */
:root{
  --ink:#0f172a; --muted:#4b5563; --rule:rgba(0,0,0,.08); --brand-teal:#00C2A8;
}
.faq-section{ padding:clamp(48px,6vw,10px) 20px; background:#fff; }
.partner-wrap{ max-width:1180px; margin:0 auto; }

.faq-section h2{ margin:0 0 18px; font-size:clamp(20px,3.4vw,25px); font-weight: 500; line-height:1.15; color:var(--ink); }

.faq-list{ margin:0; }
.faq-item{ padding:18px 0; border-top:1px solid var(--rule); }

.faq-item:first-of-type{ border-top:0; }

.faq-item > summary{
  list-style:none; cursor:pointer; outline:none;
  display:grid; grid-template-columns:1fr auto; gap:16px; align-items:center;
}
.faq-item > summary::-webkit-details-marker{ display:none; }

.faq-item .q{ font-weight:500; color:var(--ink); font-size:clamp(14px, 1.7vw, 18px); line-height:1.5; }

.faq-item > summary::after{
  content:""; width:22px; height:22px; opacity:.9; transition:transform .18s ease,opacity .18s ease;
  background:center/22px 22px no-repeat url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 10l4 4 4-4' stroke='%23949AA3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
}
.faq-item[open] > summary::after{ transform:rotate(180deg); opacity:1; }

.faq-answer{ padding:8px 0 4px; color:var(--muted); font-size:clamp(15px,1.6vw,16px); line-height:1.75; }
.faq-answer p{ margin:0 0 10px; }

.faq-cta{
  display:inline-block; margin-top:18px; background:var(--brand-teal); color:#ffffff;
  text-decoration:none; font-weight:700; padding:12px 18px; border-radius:10px;
  box-shadow:0 8px 20px rgba(0,194,168,.22); transition:transform .12s ease, box-shadow .12s ease;
}
.faq-cta:hover{ transform:translateY(-1px); box-shadow:0 12px 26px rgba(0,194,168,.28); }
.faq-item > summary:focus-visible{ box-shadow:0 0 0 3px rgba(0,194,168,.35); border-radius:8px; }
