/* public mobile polish
   v533U — mobile phase 3 depth polish
   Scope: final mobile polish for public footer/legal, modals/popups, guide cards, FAQ/search,
   support floats and bottom safe-area. Desktop remains untouched. */
@media (max-width: 980px){
  html, body{max-width:100%;overflow-x:hidden;}
  body{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px));}
  img, svg, video, canvas{max-width:100%;height:auto;}
  iframe{max-width:100%;}
  .container{max-width:100%;}
  .footer{padding:34px 0 calc(122px + env(safe-area-inset-bottom,0px)) !important;}
  .footer .container, .footer-grid, .footer-grid-3{display:grid !important;grid-template-columns:1fr !important;gap:18px !important;}
  .footer p, .footer a, .footer .small{overflow-wrap:anywhere;word-break:normal;line-height:1.55;}
  .footer-logo img, .footer .footer-logo img{max-width:180px;height:auto;}
  .footer strong{display:block;margin-bottom:8px;}
  .footer-social-link{display:inline-block;max-width:100%;overflow-wrap:anywhere;}
  .page-hero, .guide-hero, .addon-hero, .contact-hero{overflow:hidden;}
  .page-hero .container, .guide-hero .container{min-width:0;}
  .guide-card-grid, .guide-grid, .guide-list, .guide-category-grid, .category-grid, .article-grid, .trust-grid, .feature-grid, .service-grid, .cards-grid, .addon-cards, .addon-grid, .support-grid, .faq-grid, .faq-layout{display:grid !important;grid-template-columns:1fr !important;gap:14px !important;}
  .guide-card, .article-card, .service-card, .addon-card, .trust-card, .feature-card, .faq-card, .faq-item, .help-card, .contact-card, .policy-content, .guide-source-policy-v529U{min-width:0;overflow-wrap:anywhere;}
  .guide-card a, .article-card a, .policy-content a, .guide-source-policy-v529U a, .footer a{overflow-wrap:anywhere;word-break:break-word;}
  .table-wrap, .exemption-table-wrap-v510G, .comparison-table-wrap, .fee-table-wrap, .responsive-table, table{max-width:100%;}
  .table-wrap, .exemption-table-wrap-v510G, .comparison-table-wrap, .fee-table-wrap, .responsive-table{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:16px;}
  table{min-width:620px;}
  .modal-backdrop, .popup-backdrop, .addon-modal-backdrop, .booking-popup-backdrop, [class*="modal-backdrop"], [class*="popup-backdrop"]{align-items:flex-end !important;padding:12px !important;}
  .modal, .popup, .edit-modal, .addon-modal, .booking-popup, .addon-booking-popup, [class*="modal-card"], [class*="popup-card"]{width:100% !important;max-width:100% !important;max-height:calc(100dvh - 24px - env(safe-area-inset-bottom,0px)) !important;overflow:auto !important;border-radius:22px 22px 18px 18px !important;}
  .modal header, .popup header, .addon-modal header, .booking-popup header{position:sticky;top:0;z-index:2;background:inherit;}
  .modal .actions, .popup .actions, .addon-modal .actions, .booking-popup .actions{position:sticky;bottom:0;background:inherit;padding-top:10px;}
  .sticky-cta, .bottom-cta, .floating-cta, .ready-cta, .mobile-sticky-cta, [class*="sticky-cta"], [class*="bottom-cta"]{position:static !important;left:auto !important;right:auto !important;bottom:auto !important;transform:none !important;width:auto !important;margin:18px 0 !important;z-index:auto !important;box-shadow:0 18px 45px rgba(15,38,76,.12) !important;}
  .hero-actions, .cta-row, .button-row, .support-actions, .guide-actions, .addon-actions{display:flex !important;flex-wrap:wrap !important;gap:10px !important;}
  .hero-actions .btn, .cta-row .btn, .button-row .btn, .support-actions .btn, .guide-actions .btn, .addon-actions .btn{min-height:48px;}
}

@media (max-width: 760px){
  .footer{font-size:14px;}
  .footer-grid > div{padding:0 !important;}
  .footer p{margin:8px 0 0;}
  .guide-breadcrumb-v514G .container, .breadcrumb .container, .breadcrumbs{display:flex;gap:7px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:8px;}
  .guide-breadcrumb-v514G a, .guide-breadcrumb-v514G span, .breadcrumb a, .breadcrumb span{flex:0 0 auto;}
  .guide-hero-grid, .guide-article, .guide-article-content, .guide-article-visual, .guide-split, .exemption-split-v510G{display:grid !important;grid-template-columns:1fr !important;gap:14px !important;}
  .guide-visual-card, .guide-article-visual{border-radius:20px;overflow:hidden;}
  .guide-visual-card img, .guide-article-visual img{width:100%;height:auto;max-height:260px;object-fit:cover;}
  .guide-visual-caption{font-size:12px;line-height:1.35;padding:9px 11px;}
  .guide-source-policy-v529U{padding:14px !important;border-radius:18px !important;margin:18px 0 !important;}
  .guide-source-policy-v529U h2, .guide-source-policy-v529U h3{font-size:18px !important;line-height:1.25;margin-bottom:8px !important;}
  .guide-source-policy-v529U p, .guide-source-policy-v529U li{font-size:13.5px !important;line-height:1.55;}
  .guide-source-policy-v529U ul, .guide-source-policy-v529U ol{padding-left:18px;}
  .faq-search, .faq-search-row, .faq-controls, .faq-filter-row, .search-row{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;}
  .faq-search input, .faq-controls input, .faq-filter-row input, .search-row input{width:100%;min-height:48px;font-size:16px;}
  .faq-pager, .pagination, .pager, .guide-pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
  .faq-pager button, .pagination button, .pager button, .guide-pagination button, .guide-pagination a{min-width:42px;min-height:42px;border-radius:999px;}
  .modal, .popup, .edit-modal, .addon-modal, .booking-popup, .addon-booking-popup{padding:16px !important;}
  .modal h2, .popup h2, .addon-modal h2, .booking-popup h2{font-size:20px !important;line-height:1.25;}
  .modal input, .modal select, .modal textarea, .popup input, .popup select, .popup textarea, .addon-modal input, .addon-modal select, .addon-modal textarea, .booking-popup input, .booking-popup select, .booking-popup textarea{font-size:16px;min-height:46px;width:100%;}
  .modal .actions .btn, .popup .actions .btn, .addon-modal .actions .btn, .booking-popup .actions .btn{width:100%;justify-content:center;}
}

@media (max-width: 640px){
  .whatsapp-float, .messenger-float, .telegram-float{right:10px !important;max-width:42px !important;min-width:42px !important;width:42px !important;height:42px !important;padding:0 !important;border-radius:999px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;box-shadow:0 12px 28px rgba(8,30,62,.18) !important;}
  .whatsapp-float span:not(.whatsapp-icon), .messenger-float span:not(.messenger-icon), .telegram-float span:not(.telegram-icon){display:none !important;}
  .whatsapp-float{bottom:calc(16px + env(safe-area-inset-bottom,0px)) !important;}
  .messenger-float{bottom:calc(64px + env(safe-area-inset-bottom,0px)) !important;}
  .telegram-float{bottom:calc(112px + env(safe-area-inset-bottom,0px)) !important;}
  .vge-chatbot-root:not(.is-open){right:10px !important;bottom:calc(160px + env(safe-area-inset-bottom,0px)) !important;}
  .vge-chatbot-root:not(.is-open) .vge-chatbot-launcher{width:44px !important;height:44px !important;min-width:44px !important;border-radius:999px !important;box-shadow:0 14px 30px rgba(8,30,62,.2) !important;}
  .vge-chatbot-root.is-open ~ .whatsapp-float, .vge-chatbot-root.is-open ~ .messenger-float, .vge-chatbot-root.is-open ~ .telegram-float{display:none !important;}
  .footer{padding-bottom:calc(150px + env(safe-area-inset-bottom,0px)) !important;}
  .guide-card, .article-card, .service-card, .addon-card, .trust-card, .feature-card, .faq-card, .faq-item, .help-card{padding:16px !important;border-radius:18px !important;}
  .guide-card h2, .guide-card h3, .article-card h2, .article-card h3, .service-card h2, .service-card h3, .addon-card h2, .addon-card h3{font-size:20px !important;line-height:1.25;}
  .guide-card p, .article-card p, .service-card p, .addon-card p, .faq-item p{font-size:14px;line-height:1.55;}
  .guide-card img, .article-card img, .service-card img, .addon-card img{border-radius:14px;}
}

@media (max-width: 420px){
  body{padding-bottom:calc(118px + env(safe-area-inset-bottom,0px));}
  .container{padding-left:15px !important;padding-right:15px !important;}
  .footer{padding-top:28px !important;}
  .footer-logo img, .footer .footer-logo img{max-width:160px;}
  .guide-breadcrumb-v514G .container, .breadcrumb .container, .breadcrumbs{font-size:12.5px;}
  .guide-visual-card img, .guide-article-visual img{max-height:220px;}
  .guide-source-policy-v529U{padding:13px !important;border-radius:16px !important;}
  .modal-backdrop, .popup-backdrop, .addon-modal-backdrop, .booking-popup-backdrop, [class*="modal-backdrop"], [class*="popup-backdrop"]{padding:8px !important;}
  .modal, .popup, .edit-modal, .addon-modal, .booking-popup, .addon-booking-popup, [class*="modal-card"], [class*="popup-card"]{border-radius:20px 20px 16px 16px !important;max-height:calc(100dvh - 16px - env(safe-area-inset-bottom,0px)) !important;}
  .whatsapp-float, .messenger-float, .telegram-float{width:40px !important;height:40px !important;min-width:40px !important;}
  .messenger-float{bottom:calc(60px + env(safe-area-inset-bottom,0px)) !important;}
  .telegram-float{bottom:calc(104px + env(safe-area-inset-bottom,0px)) !important;}
  .vge-chatbot-root:not(.is-open){bottom:calc(148px + env(safe-area-inset-bottom,0px)) !important;}
  table{min-width:560px;}
}
