/* v312G — UI/mobile/layer cleanup after recent visual updates. */
/* Keep decorative wave layers away from admin/internal pages even if a link is accidentally re-added later. */
body[class*="admin"] main .section::before,
body[class*="admin"] main .section::after,
body.admin-page main .section::before,
body.admin-page main .section::after{
  display:none !important;
}
/* Prevent decorative section waves from sitting above high-priority interactive surfaces. */
.vge-chatbot-panel,
.vge-chatbot-launcher,
.whatsapp-float,
.addon-booking-modal-v303G,
.vge-visa-popup-v298G,
.faq-search-panel,
.faq-page-switcher{
  position:relative;
  z-index:10010;
}
.addon-booking-modal-v303G,
.vge-visa-popup-v298G{
  z-index:10030 !important;
}
/* FAQ: avoid pager/search overlap with decorative backgrounds and keep mobile spacing stable. */
.faq-page .faq-search-panel,
.faq-page .faq-page-switcher{
  isolation:isolate;
}
@media(max-width:760px){
  .faq-page .faq-page-switcher{
    gap:8px !important;
  }
  .faq-page .faq-page-switcher button,
  .faq-page .faq-page-btn{
    min-height:42px !important;
    padding:9px 12px !important;
  }
}
/* Home: keep compact fee checker readable on small laptop and mobile widths after recent size reductions. */
@media(max-width:1180px){
  .home-page .home-fee-preview-card{
    max-width:100% !important;
  }
}
@media(max-width:760px){
  .home-page .compact-fee-fields{
    grid-template-columns:1fr !important;
  }
  .home-page .compact-fee-bottom{
    grid-template-columns:1fr !important;
  }
}
/* Add-on booking popup: keep form usable on mobile and above floating contact buttons. */
@media(max-width:760px){
  .addon-booking-dialog-v303G{
    width:calc(100vw - 20px) !important;
    max-height:calc(100vh - 20px) !important;
    border-radius:22px !important;
  }
  .addon-booking-form-grid-v303G,
  .addon-booking-option-grid-v303G{
    grid-template-columns:1fr !important;
  }
}
/* Avoid floating contact controls covering the final line of content on mobile pages. */
@media(max-width:760px){
  body:not([class*="admin"]){
    padding-bottom:74px;
  }
  body:not([class*="admin"]) .whatsapp-float{
    bottom:14px !important;
    right:14px !important;
  }
  body:not([class*="admin"]) .vge-chatbot-launcher{
    bottom:76px !important;
    right:14px !important;
  }
}
/* Keep service hero headline scale aligned and prevent older hotfixes from making one page look off. */
.service-polish-v256 .urgent-hero h1,
.service-polish-v256 .addon-hero h1{
  font-size:clamp(36px,3.5vw,56px) !important;
  line-height:1.04 !important;
}
@media(max-width:640px){
  .service-polish-v256 .urgent-hero h1,
  .service-polish-v256 .addon-hero h1{
    font-size:clamp(30px,8vw,42px) !important;
  }
}
