/* v313G — final UI sweep: layer, mobile, and stale-change guardrails only. */
/* Keep all public interactive overlays above decorative backgrounds and floating controls. */
.addon-booking-modal-v303G,
.vge-visa-popup-v298G{
  z-index:10040 !important;
}
.addon-booking-dialog-v303G,
.vge-visa-popup-card-v298G{
  position:relative !important;
  z-index:10041 !important;
}
.vge-chatbot-panel{ z-index:10030 !important; }
.vge-chatbot-launcher{ z-index:10020 !important; }
.whatsapp-float{ z-index:10010 !important; }
/* Ensure decorative wave backgrounds never cover forms, cards, FAQ blocks, or landing-page boxes. */
body:not([class*="admin"]) main .section > .container,
body:not([class*="admin"]) main .lp-section > .container,
body:not([class*="admin"]) .lp-box,
body:not([class*="admin"]) .lp-card,
body:not([class*="admin"]) .lp-trust-item,
body:not([class*="admin"]) .card,
body:not([class*="admin"]) .step,
body:not([class*="admin"]) .info-block,
body:not([class*="admin"]) .trust-card,
body:not([class*="admin"]) .faq-item,
body:not([class*="admin"]) .fee-card,
body:not([class*="admin"]) .home-visa-checker-compact-card-v296G{
  position:relative;
  z-index:2;
}
/* Home: preserve the deliberate removal of the old How-to-apply strip if stale markup appears. */
.home-page .how-home,
.home-page .how-home-compact{
  display:none !important;
}
/* FAQ: keep search, page switcher, and results comfortably separated on desktop/mobile. */
.faq-page .faq-search-panel{ margin-bottom:18px !important; }
.faq-page .faq-page-switcher{ margin-top:18px !important; margin-bottom:20px !important; }
@media(max-width:760px){
  .faq-page .faq-page-switcher{ display:grid !important; grid-template-columns:1fr 1fr !important; }
  .faq-page .faq-page-switcher button,
  .faq-page .faq-page-btn{ width:100% !important; }
}
/* Add-on popup: avoid horizontal scroll and keep confirm/payment actions reachable on mobile. */
.addon-booking-dialog-v303G{ overflow-x:hidden !important; }
.addon-booking-body-v303G{ overflow-x:hidden !important; }
@media(max-width:760px){
  .addon-booking-modal-v303G{ padding:10px !important; }
  .addon-booking-dialog-v303G{ width:calc(100vw - 20px) !important; max-width:calc(100vw - 20px) !important; }
  .addon-booking-actions-v303G,
  .addon-booking-confirm-actions-v303G{ display:grid !important; grid-template-columns:1fr !important; gap:10px !important; }
  .addon-booking-actions-v303G .btn,
  .addon-booking-confirm-actions-v303G .btn{ width:100% !important; }
}
/* Landing pages: prevent sticky CTA and WhatsApp/chat controls from covering the final content on mobile. */
@media(max-width:760px){
  body.ads-landing{ padding-bottom:112px !important; }
  body.ads-landing .lp-sticky{ z-index:10005 !important; }
  body.ads-landing .whatsapp-float{ bottom:82px !important; right:12px !important; }
  body.ads-landing .vge-chatbot-launcher{ bottom:144px !important; right:12px !important; }
}
/* Public service hero size lock: keep Fees/Urgent/Add-on visually aligned after recent hotfixes. */
.service-polish-v256 .urgent-hero h1,
.service-polish-v256 .addon-hero h1{
  max-width:720px !important;
  font-size:clamp(36px,3.5vw,56px) !important;
  line-height:1.04 !important;
  letter-spacing:-.05em !important;
}
@media(max-width:640px){
  .service-polish-v256 .urgent-hero h1,
  .service-polish-v256 .addon-hero h1{ font-size:clamp(30px,8vw,42px) !important; }
}
