.container { max-width:960px; }
.faq-intro { display:grid; grid-template-columns:1.35fr 1fr; gap:16px; margin-bottom:24px; }
.faq-intro-card { padding:26px 28px; border-radius:28px; background:var(--card); border:1px solid var(--border); box-shadow:var(--shadow-sm); }
.faq-intro-card h2,.faq-intro-card h3 { margin:0 0 10px; color:var(--primary); line-height:1.08; }
.faq-intro-card h2 { font-size:1.9rem; }
.faq-intro-card h3 { font-size:1.34rem; }
.faq-intro-card p { margin:0; font-size:1.05rem; line-height:1.74; color:var(--foreground-soft); }
.faq-intro-card-muted {
  background:
    radial-gradient(circle at top right, rgba(78,195,183,.12), transparent 28%),
    linear-gradient(180deg, rgba(28,42,58,.96), rgba(21,32,45,.98));
  border-color: color-mix(in srgb, var(--accent) 12%, var(--border));
}
.accordion { display:grid; gap:14px; margin-bottom:30px; }
.accordion-item,.cta-section { background:var(--card); border:1px solid var(--border); border-radius:28px; box-shadow:var(--shadow-sm); overflow:hidden; }
.accordion-button { width:100%; padding:22px 24px; background:transparent; border:0; display:flex; align-items:flex-start; justify-content:space-between; gap:18px; text-align:left; cursor:pointer; color:var(--primary); }
.accordion-button:hover { background:rgba(255,255,255,.28); }
.accordion-button-text { font-family:var(--font-display); font-size:1.28rem; line-height:1.28; font-weight:700; }
.accordion-icon { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:999px; background:var(--accent-soft); color:var(--accent); font-size:1.3rem; font-weight:500; transition:transform .2s ease; }
.accordion-button.active .accordion-icon,.accordion-item.active .accordion-icon { transform:rotate(45deg); }
.accordion-content { max-height:0; overflow:hidden; transition:max-height .24s ease; }
.accordion-item.active .accordion-content { max-height:1200px; }
.accordion-body { padding:0 24px 24px; color:var(--foreground-soft); }
.accordion-body p,.accordion-body li { font-size:1.08rem; line-height:1.78; }
.accordion-body strong { color:var(--primary); }
.accordion-body a { color:var(--accent); }
.cta-section {
  position:relative;
  padding:34px;
  text-align:center;
  background:
    radial-gradient(circle at top right, rgba(78,195,183,.14), transparent 26%),
    linear-gradient(180deg, rgba(28,42,58,.96), rgba(21,32,45,.98));
  border-color: color-mix(in srgb, var(--accent) 12%, var(--border));
}
.cta-section h2 { margin:0 0 12px; font-size:clamp(1.9rem,3vw,2.8rem); line-height:1.08; color:var(--primary); }
.cta-section p { max-width:720px; margin:0 auto 24px; font-size:1.12rem; line-height:1.74; color:var(--foreground-soft); }
@media (prefers-color-scheme: dark) { .accordion-button:hover { background:rgba(255,255,255,.03); } }
@media (max-width: 768px) { .faq-intro { grid-template-columns:1fr; } .accordion-button,.accordion-body,.cta-section,.faq-intro-card { padding-left:20px; padding-right:20px; } .accordion-button { padding-top:20px; padding-bottom:20px; } .accordion-button-text { font-size:1.12rem; } .accordion-body { padding-bottom:20px; } .accordion-body p,.accordion-body li,.cta-section p { font-size:1rem; } }
