/* v787FM — light homepage Fees compression + more visual FAQ presentation. */
.home-page .home-fees-teaser-v787FM{
  padding:34px 0 !important;
  background:linear-gradient(180deg,#f8fbff 0%,#fff 100%);
}
.home-page .home-fees-teaser-v787FM .container.grid.two{
  align-items:center;
  gap:28px;
  min-height:0 !important;
}
.home-page .home-fees-teaser-v787FM h2{
  margin:6px 0 8px;
  font-size:clamp(1.8rem,3vw,2.45rem);
  line-height:1.08;
  letter-spacing:-.035em;
}
.home-page .home-fees-teaser-v787FM p.muted{
  max-width:640px;
  margin:0 0 14px;
  line-height:1.55;
}
.home-page .home-fees-teaser-v787FM .hero-actions{
  margin-top:8px;
}
.home-page .home-fees-teaser-v787FM .home-image-panel{
  max-height:210px;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 14px 38px rgba(15,23,42,.09);
}
.home-page .home-fees-teaser-v787FM .home-image-panel img{
  height:210px !important;
  object-fit:cover;
  object-position:center;
}

/* FAQ visual layer without changing FAQ content. */
.faq-expanded-page{
  --faq-blue:#1d4ed8;
  --faq-teal:#0f766e;
  --faq-line:#dbe6f1;
}
.faq-expanded-page .faq-category-nav{
  border:1px solid rgba(219,230,241,.95);
  background:rgba(255,255,255,.9);
  box-shadow:0 14px 36px rgba(15,23,42,.06);
  border-radius:22px;
  padding:12px;
}
.faq-expanded-page .faq-category-nav a{
  position:relative;
  min-height:40px;
  padding-left:40px;
  border-radius:999px;
  background:#f8fbff;
  border:1px solid rgba(219,230,241,.8);
}
.faq-expanded-page .faq-category-nav a::before{
  content:'?';
  position:absolute;
  left:11px;
  top:50%;
  transform:translateY(-50%);
  width:22px;
  height:22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.78rem;
  font-weight:900;
  color:#fff;
  background:linear-gradient(135deg,var(--faq-blue),var(--faq-teal));
}
.faq-expanded-page .faq-category{
  border:1px solid rgba(219,230,241,.9);
  border-radius:26px;
  padding:22px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}
.faq-expanded-page .faq-category > h2{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}
.faq-expanded-page .faq-category > h2::before{
  width:42px;
  height:42px;
  border-radius:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  background:linear-gradient(135deg,var(--faq-blue),var(--faq-teal));
  box-shadow:0 12px 26px rgba(29,78,216,.18);
  font-size:1.16rem;
  flex:0 0 42px;
}
#faq-before-you-apply > h2::before{content:'🧭'}
#faq-documents-and-applicant-details > h2::before{content:'📄'}
#faq-urgent-support > h2::before{content:'⚡'}
#faq-payment-order-status-and-refund > h2::before{content:'💳'}
#faq-airport-and-arrival-support > h2::before{content:'✈️'}
#faq-privacy-and-support > h2::before{content:'🔒'}
.faq-expanded-page .faq-category-grid{
  gap:16px;
}
.faq-expanded-page .faq-item{
  position:relative;
  border:1px solid rgba(219,230,241,.95) !important;
  border-radius:20px !important;
  background:#fff !important;
  padding:18px 18px 18px 52px !important;
  box-shadow:0 10px 28px rgba(15,23,42,.045) !important;
}
.faq-expanded-page .faq-item::before{
  content:'✓';
  position:absolute;
  left:17px;
  top:18px;
  width:24px;
  height:24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.82rem;
  font-weight:900;
  color:#0f766e;
  background:#e7faf4;
}
.faq-expanded-page .faq-item h3{
  margin-bottom:8px !important;
  font-size:1.04rem !important;
}
.faq-expanded-page .faq-item p{
  line-height:1.62 !important;
}
@media (max-width:760px){
  .home-page .home-fees-teaser-v787FM{padding:28px 0 !important}
  .home-page .home-fees-teaser-v787FM .home-image-panel{display:none}
  .faq-expanded-page .faq-category{padding:16px;border-radius:22px}
  .faq-expanded-page .faq-item{padding:16px 16px 16px 48px !important}
}
