/* KMT FAQ (Shortcode) — minimal, Bootstrap-free styles */
.kmt-faq *{ box-sizing:border-box }
.kmt-faq{
  color:#212529;
  line-height:1.55;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}
.kmt-faq .section{ padding:56px 0 }
.kmt-faq .container{ width:100%; max-width:1140px; margin:0 auto; padding:0 20px }
.kmt-faq .narrow{ max-width:980px; margin:0 auto }

/* Cards */
.kmt-faq .card{ background:#fff; border:1px solid #dee2e6; border-radius:.5rem; box-shadow:0 2px 8px rgba(0,0,0,.04) }
.kmt-faq .card-body{ padding:16px }

/* Header */
.kmt-faq header.text-center{ text-align:center }
.kmt-faq .border-bottom{ border-bottom:1px solid #dee2e6 }
.kmt-faq .py-3{ padding:12px 0 }
.kmt-faq .mb-1{ margin-bottom:4px }
.kmt-faq .mb-2{ margin-bottom:8px }
.kmt-faq .mb-3{ margin-bottom:12px }
.kmt-faq .mb-4{ margin-bottom:16px }

/* Filter chips (btn-outline-secondary) */
.kmt-faq .btn{ display:inline-block; padding:6px 10px; font-size:12px; border-radius:999px; text-decoration:none; border:1px solid #cbd5e1; color:#334155; background:#fff }
.kmt-faq .btn:hover{ background:#f8fafc }
.kmt-faq .btn-sm{ font-size:12px; padding:6px 10px }
.kmt-faq .btn-outline-secondary{}

/* Grid helpers */
.kmt-faq .row{ display:grid; gap:16px }
.kmt-faq .g-4{ gap:22px }
.kmt-faq .col-12{ width:100% }

/* Accordion */
.kmt-faq .accordion-item{ border:1px solid #e5e7eb; border-radius:.5rem; overflow:hidden; background:#fff }
.kmt-faq .accordion-header{ margin:0; }
.kmt-faq .accordion-button{ width:100%; text-align:left; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; background:#f8fafc; border:0; cursor:pointer; font-weight:600; color:#343A40 }
.kmt-faq .accordion-button:hover{ background:#f1f5f9; color:#DEE2E6 }
.kmt-faq .accordion-button.collapsed{ background:#fff }
.kmt-faq .accordion-collapse{ transition: height .2s ease; }
.kmt-faq .accordion-collapse.collapse{ display:none }
.kmt-faq .accordion-collapse.show{ display:block }
.kmt-faq .accordion-body{ padding:14px 16px; border-top:1px solid #e5e7eb; background:#fff }

.kmt-faq .accordion-button:not(.collapsed),
.kmt-faq .accordion-button[aria-expanded="true"] {
  color:#212529 !important;
  background:#f8fafc;
}

.kmt-faq .accordion-button:not(.collapsed):hover,
.kmt-faq .accordion-button[aria-expanded="true"]:hover {
  color:#343A40 !important;
  background:#f1f5f9;
}

.kmt-faq .accordion-button.collapsed { 
  color:#212529 !important; 
  background:#fff; 
}
.kmt-faq .accordion-button.collapsed:hover { 
  color:#343A40 !important; 
  background:#f1f5f9; 
}
.kmt-faq .accordion-button:focus { box-shadow:none; }

/* Links */
.kmt-faq a{ color:#0B3A5B; text-decoration:none }
.kmt-faq a:hover{ text-decoration:underline }

/* Responsive */
@media (max-width: 640px){
  .kmt-faq .narrow{ max-width:100% }
}
