/* FAQs page */
.faqs-hero {
  position: relative; height: 220px; overflow: hidden; background: var(--color-dark);
}
.faqs-hero-bg {
  position: absolute; inset: 0; background-size: cover; background-position: center; opacity: .28;
}
.faqs-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(105deg, rgba(10,30,22,.96) 0%, rgba(10,30,22,.72) 60%, rgba(10,30,22,.3) 100%);
  display: flex; align-items: center;
}
.faqs-hero h1 {
  color: #fff; font-size: clamp(28px, 3vw, 46px); line-height: 1.1; margin: 0;
  letter-spacing: -.025em; text-shadow: 0 2px 18px rgba(0,0,0,.24);
}

.faq-intro { max-width: 760px; margin: 0 auto; text-align: center; }
.faq-intro h2 { font-size: 28px; line-height: 1.2; margin: 0 0 14px; letter-spacing: -.025em; }
.faq-intro p { font-size: 16px; line-height: 1.75; color: rgba(0,0,0,.6); margin: 0; }

.faq-accordion { max-width: 900px; margin: 0 auto; display: flex; flex-direction: column; gap: 16px; }
.faq-accordion .accordion-item {
  background: #fff; border: 1.5px solid #e8f0ee; border-radius: 14px; overflow: hidden;
  transition: box-shadow var(--duration-base) var(--ease-standard), border-color var(--duration-base) var(--ease-standard);
}
.faq-accordion .accordion-item:hover { box-shadow: 0 6px 22px rgba(0,0,0,.06); border-color: var(--color-mint); }
.faq-accordion .accordion-question { padding: 22px 26px; font-size: 16.5px; }
.faq-accordion .accordion-answer-inner { padding: 0 26px 24px; }

.faq-cta-icon { width: 38px; height: 38px; border-radius: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.faq-cta-card { padding: 26px 28px; }
