/* SZY Universal Mobile Fix v8 */
.fade-in-up { opacity: 1 !important; transform: none !important; -webkit-transform: none !important; visibility: visible !important; }
.page-index .fade-in-up, body .fade-in-up { opacity: 1 !important; transform: none !important; -webkit-transform: none !important; visibility: visible !important; }
.page-index .fade-in-up.visible, .fade-in-up.visible { opacity: 1 !important; transform: none !important; -webkit-transform: none !important; }
.page-index .section, .page-index section { visibility: visible !important; opacity: 1 !important; }
html, body { overflow-y: auto !important; overflow-x: hidden !important; height: auto !important; min-height: 100vh !important; }

@media (max-width: 1023px) {
.page-banner { padding: 90px 16px 40px !important; }
.page-index .hero, section.hero, body.page-index .hero { min-height: auto !important; max-height: none !important; height: auto !important; padding: 90px 16px 30px !important; }
.page-index .hero h1 { font-size: 1.4rem !important; line-height: 1.3 !important; }
.page-index .hero .slogan { font-size: 1rem !important; }
.page-index .hero .description { font-size: 0.9rem !important; margin-bottom: 16px !important; }
.page-index .hero .hero-buttons { flex-direction: column !important; align-items: center !important; gap: 10px !important; }
.page-index .hero .btn-lg { width: 100% !important; max-width: 260px !important; text-align: center !important; padding: 12px 20px !important; font-size: 0.9rem !important; }
.page-index .section { padding: 24px 0 !important; }

/* v8: Nuclear option - hide ALL hamburger/menu buttons */
.mobile-menu-toggle, #mobileMenuToggle,
.mobile-menu-toggle *, #mobileMenuToggle *,
button.mobile-menu-toggle,
.hamburger, .hamburger *, .hamburger-icon,
.menu-toggle, .nav-toggle, .nav-icon, .menu-icon,
[class*="hamburger"], [class*="menu-toggle"], [class*="nav-toggle"] {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important; height: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    overflow: hidden !important;
}

/* Tab bar navigation */
#mainNav, .main-nav, nav.main-nav, header nav {
    display: flex !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    gap: 0 !important;
    position: static !important;
    background: transparent !important;
    padding: 0 !important;
    flex: 1 !important;
    min-width: 0 !important;
    align-items: center !important;
}
#mainNav::-webkit-scrollbar, .main-nav::-webkit-scrollbar { display: none !important; }

#mainNav .nav-list, .main-nav .nav-list, nav ul.nav-list, header nav ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    position: static !important;
    background: none !important;
    box-shadow: none !important;
    list-style: none !important;
}

#mainNav .nav-item, .main-nav .nav-item, nav .nav-item, header nav li {
    display: flex !important;
    flex-shrink: 0 !important;
    width: auto !important;
    position: relative !important;
    list-style: none !important;
}

#mainNav .nav-item > a, .main-nav .nav-item > a, nav .nav-item > a, header nav li > a {
    display: flex !important;
    padding: 6px 12px !important;
    font-size: 13px !important;
    color: rgba(255,255,255,0.85) !important;
    white-space: nowrap !important;
    border-bottom: none !important;
    border-radius: 16px !important;
    align-items: center !important;
    text-decoration: none !important;
}

#mainNav .nav-item.active > a, .main-nav .nav-item.active > a {
    color: #fff !important;
    background: rgba(196,30,58,0.25) !important;
}

#mainNav .nav-item.has-submenu > a::after,
.main-nav .nav-item.has-submenu > a::after {
    content: ' \25BE';
    font-size: 9px !important;
    margin-left: 2px !important;
    opacity: 0.6 !important;
}

#mainNav .submenu, .main-nav .submenu, nav .submenu {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.15) !important;
    padding: 6px 0 !important;
    min-width: 140px !important;
    z-index: 10000 !important;
}
#mainNav .nav-item.submenu-open > .submenu,
.main-nav .nav-item.submenu-open > .submenu {
    display: block !important;
}
#mainNav .submenu a, .main-nav .submenu a, nav .submenu a {
    display: block !important;
    padding: 10px 16px !important;
    font-size: 13px !important;
    color: #333 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
}
#mainNav .submenu a:hover, .main-nav .submenu a:active {
    background: #f5f5f5 !important;
    color: #C41E3A !important;
}

.header-inner { flex-wrap: nowrap !important; }
@media (max-width: 480px) {
    #mainNav .nav-item > a, .main-nav .nav-item > a {
        padding: 6px 10px !important;
        font-size: 12px !important;
    }
}
}
.submenu-open > .submenu { display: block !important; }
