/* =============================================================================
   FAQs page body only. Does not restyle glass tokens or chrome.
   Cache ?v=20260819faqclean2
   ============================================================================= */

html body.faqs-page .faq-overlay-card,
html body.faqs-page .faq-overlay-split,
html body.faqs-page .faq-overlay-figure,
html body.faqs-page .faq-card-wash,
html body.faqs-page .proc-quiet-links{
  display:none !important;
}

/* ---------- Hero: same split as Team / Services ---------- */
html body.faqs-page #page-overview.it-split-hero .it-split-hero-copy{
  max-width:38rem !important;
  gap:.55rem !important;
}

html body.faqs-page #page-overview.it-split-hero h1.page-h1-stack{
  margin:0 0 12px !important;
  line-height:1.12 !important;
}

html body.faqs-page #page-overview.it-split-hero h1.page-h1-stack .hero-h1-line{
  padding:0 0 .08em !important;
  line-height:1.08 !important;
}

html body.faqs-page #page-overview.it-split-hero .it-split-hero-lede{
  margin:0 0 .35rem !important;
  max-width:38rem !important;
}

@media (min-width:901px){
  html body.faqs-page #page-overview.it-split-hero{
    align-items:center !important;
  }
  html body.faqs-page #page-overview.it-split-hero .it-split-hero-media{
    align-self:stretch !important;
    min-height:0 !important;
    height:auto !important;
    max-height:min(440px,52vh) !important;
    aspect-ratio:auto !important;
  }
  html body.faqs-page #page-overview.it-split-hero .it-split-hero-media > img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    object-position:var(--hero-photo-pos,center 28%) !important;
  }
}

html body.faqs-page #answers.answers-premium,
html body.faqs-page .answers-premium,
html body.faqs-page #faq.section.section-soft{
  background:transparent !important;
  background-image:none !important;
}

/* ---------- Section heads (Home / Team pattern, not giant boxes) ---------- */
html body.faqs-page #answers .section-head,
html body.faqs-page #faq .section-head{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:0 !important;
  width:100% !important;
  max-width:42rem !important;
  margin:0 0 clamp(1.1rem,2vw,1.5rem) !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

html body.faqs-page #answers .section-head .eyebrow,
html body.faqs-page #faq .section-head .eyebrow{
  display:flex !important;
  align-items:center !important;
  gap:.65rem !important;
  width:100% !important;
  margin:0 0 10px !important;
}

html body.faqs-page #answers .section-head .eyebrow::after,
html body.faqs-page #faq .section-head .eyebrow::after{
  content:"" !important;
  flex:1 1 auto !important;
  height:1px !important;
  min-width:24px !important;
  background:linear-gradient(90deg,rgba(237,0,0,.34),rgba(237,0,0,0)) !important;
}

html body.faqs-page #answers .section-head h2,
html body.faqs-page #faq .section-head h2{
  margin:0 0 1.15rem !important;
  max-width:18ch !important;
  width:100% !important;
  font-size:clamp(1.35rem,2.1vw,1.75rem) !important;
  line-height:1.2 !important;
  letter-spacing:-.03em !important;
  text-align:left !important;
}

html body.faqs-page #answers .section-head > p,
html body.faqs-page #faq .section-head > p{
  margin:0 !important;
  padding-top:.15rem !important;
  max-width:70ch !important;
  font-size:clamp(1.02rem,1.2vw,1.125rem) !important;
  line-height:1.65 !important;
  color:#344054 !important;
  text-align:left !important;
  hyphens:none !important;
}

/* ---------- Decision cards ---------- */
html body.faqs-page .answers.executive-answers{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:14px !important;
  width:100% !important;
  align-items:stretch !important;
}

@media (min-width:760px){
  html body.faqs-page .answers.executive-answers{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }
}

@media (min-width:1100px){
  html body.faqs-page .answers.executive-answers{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

html body.faqs-page .answer-card.executive-answer,
html body.faqs-page .answer-card.executive-answer:has(> .icon-badge),
html body.faqs-page #answers .answer-card.executive-answer{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:10px !important;
  grid-template-columns:none !important;
  height:100% !important;
  min-height:0 !important;
  padding:1.25rem 1.3rem 1.35rem !important;
  border-left-width:3px !important;
  border-left-style:solid !important;
  border-left-color:#ed0000 !important;
  border-radius:0 16px 16px 0 !important;
}

html body.faqs-page .answer-card.executive-answer > .icon-badge{
  display:none !important;
}

html body.faqs-page .answer-card.executive-answer .answer-tag{
  margin:0 !important;
  grid-column:auto !important;
}

html body.faqs-page .answer-card.executive-answer > h3{
  grid-column:auto !important;
  margin:0 !important;
  padding:0 !important;
  font-size:1.08rem !important;
  line-height:1.28 !important;
}

html body.faqs-page .answer-card.executive-answer > p{
  grid-column:auto !important;
  margin:0 !important;
  max-width:70ch !important;
  text-align:left !important;
  hyphens:none !important;
}

/* ---------- FAQ accordion cards ---------- */
html body.faqs-page #faq .faq-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
  width:100% !important;
  align-items:stretch !important;
}

@media (min-width:900px){
  html body.faqs-page #faq .faq-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
  }
}

html body.faqs-page #faq .faq-grid details,
html body.faqs-page #faq .faq-grid details.zatra-accordion-card{
  display:flex !important;
  flex-direction:column !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border-left-width:3px !important;
  border-left-style:solid !important;
  border-left-color:#ed0000 !important;
  border-radius:0 16px 16px 0 !important;
}

html body.faqs-page #faq .faq-grid summary{
  cursor:pointer !important;
  list-style:none !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
  min-height:4.5rem !important;
  padding:1.15rem 1.25rem !important;
  font-family:"Montserrat","Inter",Arial,sans-serif !important;
  font-size:1.02rem !important;
  font-weight:700 !important;
  letter-spacing:-.015em !important;
  line-height:1.35 !important;
  color:#101828 !important;
  text-align:left !important;
}

html body.faqs-page #faq .faq-grid summary::-webkit-details-marker{
  display:none;
}

html body.faqs-page #faq .faq-grid summary::after{
  content:"+" !important;
  flex:0 0 auto !important;
  color:#ed0000 !important;
  font-weight:800 !important;
  line-height:1 !important;
}

html body.faqs-page #faq .faq-grid details[open] summary::after{
  content:"–" !important;
}

html body.faqs-page #faq .faq-grid details > p,
html body.faqs-page #faq .faq-grid details > div > p{
  margin:0 !important;
  padding:0 1.25rem 1.2rem !important;
  max-width:70ch !important;
  color:#475467 !important;
  font-size:1.02rem !important;
  line-height:1.65 !important;
  text-align:left !important;
  hyphens:none !important;
}
