/* ── FAQs Module ── */
.fq-wrap{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;color:#1a1a1a;max-width:100%;overflow-x:hidden}

/* Hero — teal gradient matching site nav/tag color */
.fq-hero{background:linear-gradient(135deg,#0d7c66 0%,#13AFC6 50%,#0CC0DF 100%);color:#fff;padding:80px 5% 60px;text-align:center;position:relative;overflow:hidden}
.fq-hero::after{content:'';position:absolute;bottom:-40px;left:0;right:0;height:80px;background:#f6f6f6;border-radius:50% 50% 0 0}
.fq-hero-inner{max-width:800px;margin:0 auto;position:relative;z-index:1}
.fq-eyebrow{display:inline-block;font-size:.8rem;letter-spacing:2.5px;text-transform:uppercase;opacity:.85;margin-bottom:12px}
.fq-hero h2{font-size:3rem;font-weight:800;margin:0 0 16px;letter-spacing:-1px}
.fq-hero p{font-size:1.1rem;line-height:1.7;opacity:.92;max-width:640px;margin:0 auto}

/* Search */
.fq-search-bar{max-width:600px;margin:-24px auto 0;position:relative;z-index:2;padding:0 5%}
.fq-search-input{width:100%;padding:16px 52px 16px 20px;border:none;border-radius:14px;font-size:1rem;background:#fff;box-shadow:0 8px 32px rgba(0,0,0,.1);outline:none;transition:box-shadow .3s}
.fq-search-input:focus{box-shadow:0 8px 40px rgba(19,175,198,.25)}
.fq-search-icon{position:absolute;right:calc(5% + 18px);top:50%;transform:translateY(-50%);font-size:1.2rem;opacity:.5;pointer-events:none}

/* Category tabs — site teal */
.fq-cat-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:900px;margin:36px auto 0;padding:0 5%}
.fq-cat-btn{background:#fff;border:1.5px solid #d8e8ec;color:#555;padding:8px 18px;border-radius:40px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .25s;letter-spacing:.3px;text-transform:uppercase}
.fq-cat-btn:hover{border-color:#13AFC6;color:#13AFC6}
.fq-cat-btn.active{background:#13AFC6;color:#fff;border-color:#13AFC6}

/* FAQ section */
.fq-section{max-width:900px;margin:36px auto 60px;padding:0 5%}

/* FAQ items */
.fq-item{background:#fff;border-radius:14px;margin-bottom:12px;box-shadow:0 2px 12px rgba(0,0,0,.04);overflow:hidden;transition:all .3s;border:1.5px solid transparent}
.fq-item:hover{box-shadow:0 4px 20px rgba(0,0,0,.08)}
.fq-item.fq-open{border-color:rgba(19,175,198,.2);box-shadow:0 6px 28px rgba(19,175,198,.1)}

.fq-item-head{display:flex;align-items:center;padding:18px 22px;cursor:pointer;gap:14px;user-select:none}
.fq-item-head h4{flex:1;margin:0;font-size:.95rem;font-weight:700;color:#1A2E3A;letter-spacing:.2px;text-transform:uppercase;line-height:1.4}
.fq-item-arrow{font-size:.8rem;color:#13AFC6;transition:transform .3s;opacity:.6}
.fq-open .fq-item-arrow{transform:rotate(180deg);opacity:1}

.fq-item-body{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s ease}
.fq-open .fq-item-body{max-height:600px;padding:0 22px 20px 22px}
.fq-item-body p{margin:0;font-size:.92rem;line-height:1.75;color:#444}

/* Category tag — site cyan */
.fq-item-cat{display:inline-block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#13AFC6;background:rgba(12,192,223,.1);padding:3px 10px;border-radius:20px;margin-bottom:8px}

/* Admin controls */
.fq-item-admin{display:none;margin-left:auto;gap:6px}
.fq-item-admin button{background:none;border:none;cursor:pointer;font-size:.85rem;padding:4px 8px;border-radius:6px;transition:background .2s}
.fq-item-admin button:hover{background:rgba(0,0,0,.06)}
.fq-admin-add{text-align:center;padding:0 5% 40px;max-width:900px;margin:0 auto}
.fq-add-btn{background:#13AFC6;color:#fff;border:none;padding:12px 32px;border-radius:40px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s;letter-spacing:.5px}
.fq-add-btn:hover{background:#0d8fa3;transform:translateY(-2px);box-shadow:0 6px 20px rgba(19,175,198,.3)}

/* Empty state */
.fq-empty{text-align:center;padding:60px 20px;color:#888}
.fq-empty-icon{font-size:3rem;display:block;margin-bottom:12px;opacity:.4}
.fq-empty p{font-size:1rem}

/* Highlight */
.fq-highlight{background:rgba(12,192,223,.15);padding:1px 3px;border-radius:3px}

/* Responsive */
@media(max-width:600px){
  .fq-hero{padding:60px 5% 48px}
  .fq-hero h2{font-size:2.2rem}
  .fq-hero p{font-size:.95rem}
  .fq-search-input{padding:14px 48px 14px 16px;font-size:.9rem}
  .fq-cat-btn{padding:6px 14px;font-size:.75rem}
  .fq-item-head{padding:14px 16px;gap:10px}
  .fq-item-head h4{font-size:.85rem}
  .fq-open .fq-item-body{padding:0 16px 16px 16px}
}
