/* ============================================================
   Tanzania Tech Media - FAQ page (corporate redesign)
   Uses Bootstrap collapse (already loaded) + .ttm- primitives.
   ============================================================ */
.ttm-faqp{ --ttm-ink:#111013; --ttm-muted:#5b605b; --ttm-line:#e7e9e2; --ttm-soft:#f6f8ef; }
:root{ --ttm-accent: var(--tp-theme-primary, #13DB31); }

/* hero */
.ttm-faqp-hero{ position:relative; overflow:hidden; background:var(--ttm-soft); padding:175px 0 80px; text-align:center; border-bottom:1px solid var(--ttm-line); }
.ttm-faqp-hero .ttm-shape{ position:absolute; pointer-events:none; }
.ttm-faqp-hero .ttm-shape-1{ top:80px; left:-40px; color:var(--ttm-accent); opacity:.16; }
.ttm-faqp-hero .ttm-shape-2{ bottom:-40px; right:-30px; color:#111013; opacity:.05; }
.ttm-faqp-hero .ttm-eyebrow{ justify-content:center; }
.ttm-faqp-hero h1{ font-size:clamp(34px,5vw,56px); line-height:1.05; font-weight:700; color:var(--ttm-ink); margin:16px auto 18px; letter-spacing:-1px; max-width:820px; }
.ttm-faqp-hero p{ font-size:19px; line-height:1.6; color:var(--ttm-muted); max-width:660px; margin:0 auto; }

/* main */
.ttm-faqp-main{ background:#fff; padding:80px 0 100px; }
.ttm-faqp-grid{ display:grid; grid-template-columns:360px 1fr; gap:50px; align-items:start; }

/* aside */
.ttm-faqp-aside{ position:sticky; top:100px; }
.ttm-faqp-aside h2{ font-size:clamp(24px,3.2vw,32px); font-weight:700; color:var(--ttm-ink); margin:14px 0 14px; letter-spacing:-.5px; }
.ttm-faqp-aside .lead{ font-size:16px; line-height:1.7; color:var(--ttm-muted); margin:0 0 26px; }
.ttm-faqp-card{ position:relative; overflow:hidden; background:#111013; border-radius:20px; padding:32px 30px; }
.ttm-faqp-card .ttm-shape{ position:absolute; right:-20px; bottom:-20px; color:var(--ttm-accent); opacity:.16; }
.ttm-faqp-card h3{ font-size:20px; font-weight:700; color:#fff; margin:0 0 10px; position:relative; }
.ttm-faqp-card p{ font-size:14.5px; line-height:1.6; color:#c4c8be; margin:0 0 22px; position:relative; }
.ttm-faqp-card .ttm-btn{ width:100%; justify-content:center; position:relative; margin-bottom:14px; }
.ttm-faqp-card .call{ display:flex; align-items:center; justify-content:center; gap:10px; color:#fff; text-decoration:none; font-weight:600; font-size:15px; position:relative; }
.ttm-faqp-card .call svg{ width:18px; height:18px; color:var(--ttm-accent); }

/* accordion */
.ttm-acc{ display:flex; flex-direction:column; gap:14px; }
.ttm-acc-item{ border:1px solid var(--ttm-line); border-radius:14px; overflow:hidden; background:#fff; transition:.2s ease; }
.ttm-acc-item:has(.ttm-acc-q:not(.collapsed)){ border-color:var(--ttm-accent); box-shadow:0 20px 44px -30px rgba(17,16,19,.3); }
.ttm-acc-q{ width:100%; text-align:left; border:0; background:transparent; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:18px;
   padding:22px 24px; font-size:17px; font-weight:700; color:var(--ttm-ink); font-family:inherit; line-height:1.35; }
.ttm-acc-q .mark{ flex:0 0 auto; width:30px; height:30px; border-radius:50%; background:var(--ttm-soft); display:flex; align-items:center; justify-content:center; transition:.25s ease; }
.ttm-acc-q .mark svg{ width:15px; height:15px; color:var(--ttm-ink); transition:.25s ease; }
.ttm-acc-q:not(.collapsed) .mark{ background:var(--ttm-accent); }
.ttm-acc-q:not(.collapsed) .mark svg{ transform:rotate(180deg); color:#0a1f0d; }
.ttm-acc-a{ padding:0 24px 24px; font-size:15.5px; line-height:1.75; color:var(--ttm-muted); }

@media (max-width:991px){
  .ttm-faqp-grid{ grid-template-columns:1fr; gap:34px; }
  .ttm-faqp-aside{ position:static; }
}
