/* =====================================================================
   Gorilla Marketing Experts — home page: "Who We Work With" + FAQ
   Sits between the dark Process band and the testimonial carousel, so the
   light "who" section and the dark FAQ keep the page alternating.
   Loaded AFTER style.css, home page only.
   ===================================================================== */

/* ---------- Who we work with ---------- */
.who{ background:var(--ivory); padding:84px 0 88px; }
.who .section-head{ margin-bottom:44px; }
.who-intro{
  max-width:860px; margin:22px auto 0;
  font-size:16px; line-height:1.75; color:#4a463d;
}
.who-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.who-card{
  background:#fff; border:1px solid #EFE6CC; border-radius:var(--r-card);
  padding:30px 28px 32px; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.who-card:hover{ transform:translateY(-4px); box-shadow:0 18px 44px rgba(0,0,0,.07); border-color:var(--bd-gold); }
.who-ico{
  display:grid; place-items:center; width:54px; height:54px; border-radius:14px;
  font-size:22px; color:var(--gold);
  background:linear-gradient(160deg,rgba(255,187,0,.18),rgba(255,187,0,.06));
  border:1px solid rgba(255,187,0,.28);
}
.who-card-title{
  font-family:var(--font-display); font-size:20px; font-weight:700; line-height:1.25;
  color:var(--ink); margin-top:18px;
}
.who-card-text{ font-size:14.5px; line-height:1.65; color:#5c574c; margin-top:10px; }
.who-note{
  max-width:860px; margin:38px auto 0; text-align:center;
  font-size:15.5px; line-height:1.7; color:#4a463d;
}
.who-note a{ color:#9a7400; font-weight:700; text-decoration:underline; text-underline-offset:2px; }
.who-note a:hover{ color:var(--ink); }
/* the honest disqualifier — deliberately quieter than everything above it */
.who-not{
  max-width:820px; margin:14px auto 0; text-align:center;
  font-size:13.5px; line-height:1.65; color:#8a8578;
}

/* ---------- FAQ (dark band) ---------- */
.faq-sec{ background:var(--ink); color:var(--ivory); padding:84px 0 92px; }
.faq-sec .section-title{ color:var(--ivory); }
.faq-sec .section-head{ margin-bottom:40px; }
.faq-wa{
  margin-top:26px; height:46px; border-radius:40px; font-size:14px;
  display:inline-flex; gap:10px;
}
.faq-wa i{ font-size:17px; color:var(--gold); }
.faq-wa:hover i{ color:var(--ink); }
.faq-wa:hover{ background:var(--gold); color:var(--ink); border-color:var(--gold); }

/* accordion — same numbered pattern as the blog, tuned for the dark band */
.faq-acc-dark{ max-width:980px; margin:0 auto; }
.faq-acc-dark .faq-item{
  border:1px solid rgba(255,255,255,.10); border-radius:16px;
  padding:2px 14px; margin-bottom:12px;
  transition:background .2s ease, border-color .2s ease;
}
.faq-acc-dark .faq-item[open]{ background:var(--card-dark); border-color:var(--bd-gold); padding:10px 18px 6px; }
.faq-acc-dark .faq-q{
  display:flex; align-items:center; gap:16px; cursor:pointer; list-style:none;
  padding:16px 2px; font-family:var(--font-display); font-size:19px; font-weight:500;
  line-height:1.35; color:var(--ivory);
}
.faq-acc-dark .faq-q::-webkit-details-marker{ display:none; }
.faq-acc-dark .faq-num{
  flex:none; display:grid; place-items:center; width:42px; height:42px; border-radius:12px;
  font-family:var(--font-body); font-size:14px; font-weight:700;
  color:var(--muted-2); background:none; transition:.2s ease;
}
.faq-acc-dark .faq-item[open] .faq-num{ background:var(--gold); color:var(--ink); }
.faq-acc-dark .faq-text{ flex:1; }
.faq-acc-dark .faq-ico{
  flex:none; position:relative; width:42px; height:42px; border-radius:12px;
  background:var(--gold); transition:transform .25s ease;
}
.faq-acc-dark .faq-ico::after{
  content:""; position:absolute; left:50%; top:46%; width:10px; height:10px;
  border-right:2.5px solid var(--ink); border-bottom:2.5px solid var(--ink);
  transform:translate(-50%,-50%) rotate(45deg);
}
.faq-acc-dark .faq-item[open] .faq-ico{ transform:rotate(180deg); }
.faq-acc-dark .faq-a{ padding:0 2px 16px 58px; }
.faq-acc-dark .faq-a p{ font-size:15.5px; line-height:1.8; color:var(--muted-dark); margin:0; }

/* ---------- Responsive ---------- */
@media (max-width:1200px){
  .who-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:900px){
  .who{ padding:56px 0 60px; }
  .faq-sec{ padding:56px 0 64px; }
}
@media (max-width:760px){
  .who{ padding:38px 0 42px; }
  .who .section-head{ margin-bottom:28px; }
  .who-intro{ font-size:15px; margin-top:16px; }
  .who-grid{ grid-template-columns:1fr; gap:16px; max-width:460px; margin-inline:auto; }
  .who-card{ padding:22px 20px 24px; }
  .who-note{ font-size:14.5px; margin-top:26px; }
  .who-not{ font-size:13px; }
  .faq-sec{ padding:38px 0 44px; }
  .faq-wa{ margin-top:20px; height:44px; font-size:13px; padding:0 18px; }
  .faq-acc-dark .faq-q{ gap:10px; font-size:16px; padding:12px 2px; }
  .faq-acc-dark .faq-num{ width:34px; height:34px; border-radius:10px; font-size:12.5px; }
  .faq-acc-dark .faq-ico{ width:34px; height:34px; border-radius:10px; }
  .faq-acc-dark .faq-ico::after{ width:9px; height:9px; }
  .faq-acc-dark .faq-a{ padding:0 2px 14px 44px; }
  .faq-acc-dark .faq-a p{ font-size:14.5px; line-height:1.72; }
}
