/* v290G — FAQ compact hero overlay
   Combines FAQ intro copy with the support image to reduce wasted vertical space. */
.faq-compact-hero-v290G{
  position:relative;
  background:linear-gradient(180deg,#f8fbff 0%,#f3f8fe 100%);
  border-bottom:1px solid #e1ebf5;
  padding:46px 0 34px;
}

.faq-hero-visual-card-v290G{
  position:relative;
  overflow:hidden;
  min-height:330px;
  border:1px solid #d8e4f1;
  border-radius:30px;
  background:#eef6ff;
  box-shadow:0 24px 60px rgba(15,23,42,.08);
  isolation:isolate;
}

.faq-hero-visual-card-v290G img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center right;
  display:block;
  z-index:0;
}

.faq-hero-visual-card-v290G::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(248,251,255,.99) 0%,rgba(248,251,255,.96) 31%,rgba(248,251,255,.72) 55%,rgba(248,251,255,.16) 100%),
    radial-gradient(circle at 18% 24%,rgba(219,234,254,.74) 0%,rgba(219,234,254,0) 44%);
  z-index:1;
  pointer-events:none;
}

.faq-hero-copy-v290G{
  position:relative;
  z-index:2;
  max-width:760px;
  padding:56px 52px;
}

.faq-compact-hero-v290G .eyebrow{
  color:#1d4ed8;
  font-weight:900;
  letter-spacing:.09em;
}

.faq-hero-copy-v290G h1{
  margin:10px 0 14px;
  max-width:11.5ch;
  color:#0f172a;
  font-size:clamp(44px,5.4vw,78px);
  line-height:.96;
  letter-spacing:-.055em;
}

.faq-hero-copy-v290G p{
  margin:0;
  max-width:690px;
  color:#475569;
  font-size:clamp(17px,1.65vw,23px);
  line-height:1.55;
}

.faq-expanded-page .faq-intro-card{
  display:none !important;
}

.faq-expanded-page{
  padding-top:0;
}

@media(max-width:900px){
  .faq-compact-hero-v290G{
    padding:28px 0 24px;
  }

  .faq-hero-visual-card-v290G{
    min-height:360px;
    border-radius:24px;
  }

  .faq-hero-visual-card-v290G::before{
    background:linear-gradient(180deg,rgba(248,251,255,.98) 0%,rgba(248,251,255,.88) 58%,rgba(248,251,255,.20) 100%);
  }

  .faq-hero-copy-v290G{
    padding:32px 24px;
    max-width:100%;
  }

  .faq-hero-copy-v290G h1{
    max-width:12ch;
    font-size:clamp(38px,10vw,58px);
  }

  .faq-hero-copy-v290G p{
    font-size:17px;
  }
}

@media(max-width:560px){
  .faq-hero-visual-card-v290G{
    min-height:390px;
  }

  .faq-hero-copy-v290G{
    padding:28px 20px;
  }
}


/* v291G — FAQ hero readability and layout fix
   - Reduce oversized FAQ hero typography.
   - Keep the support agent image clear by removing the wide hazy overlay.
   - Prevent the FAQ search panel from floating over later content. */
.faq-compact-hero-v290G{
  padding:28px 0 22px !important;
}

.faq-hero-visual-card-v290G{
  min-height:270px !important;
  border-radius:26px !important;
}

.faq-hero-visual-card-v290G img{
  opacity:1 !important;
  filter:none !important;
}

.faq-hero-visual-card-v290G::before{
  inset:0 auto 0 0 !important;
  width:58% !important;
  background:linear-gradient(90deg,
    rgba(248,251,255,.96) 0%,
    rgba(248,251,255,.90) 45%,
    rgba(248,251,255,.45) 74%,
    rgba(248,251,255,0) 100%) !important;
}

.faq-hero-copy-v290G{
  max-width:620px !important;
  padding:38px 42px !important;
}

.faq-hero-copy-v290G h1{
  max-width:12.8ch !important;
  font-size:clamp(36px,4.1vw,56px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
  margin:8px 0 12px !important;
}

.faq-hero-copy-v290G p{
  max-width:590px !important;
  font-size:clamp(15px,1.25vw,18px) !important;
  line-height:1.55 !important;
}

.faq-compact-hero-v290G .eyebrow{
  font-size:13px !important;
}

/* Override earlier sticky FAQ search styles that caused the search card to cover content while scrolling. */
.faq-expanded-page .faq-tools-card,
.faq-tools-card{
  position:static !important;
  top:auto !important;
  z-index:auto !important;
  margin-top:0 !important;
  margin-bottom:24px !important;
  max-width:none !important;
  transform:none !important;
}

.faq-page-panel{
  scroll-margin-top:24px !important;
}

.private-service-bottom-note{
  position:relative !important;
  z-index:1 !important;
}

@media(max-width:900px){
  .faq-hero-visual-card-v290G{
    min-height:320px !important;
  }
  .faq-hero-visual-card-v290G::before{
    width:100% !important;
    background:linear-gradient(180deg,
      rgba(248,251,255,.96) 0%,
      rgba(248,251,255,.82) 48%,
      rgba(248,251,255,.18) 100%) !important;
  }
  .faq-hero-copy-v290G{
    padding:28px 22px !important;
  }
  .faq-hero-copy-v290G h1{
    font-size:clamp(32px,8vw,46px) !important;
  }
  .faq-hero-copy-v290G p{
    font-size:16px !important;
  }
}

@media(max-width:560px){
  .faq-compact-hero-v290G{
    padding:20px 0 18px !important;
  }
  .faq-hero-visual-card-v290G{
    min-height:340px !important;
    border-radius:20px !important;
  }
}
