@media (max-width: 768px) {
    .nav-desktop {
        display: none;
    }
    .mobile-menu-toggle {
        display: block;
    }
    #mobileMenuPanel {
        background: white;
        box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15);
    }
    .mobile-menu-item {
        color: var(--text-primary);
    }
    .mobile-menu-item:hover {
        color: var(--brand-color);
        background-color: var(--bg-gray);
    }
    .mobile-menu-item.active {
        background: rgba(14, 165, 233, 0.1);
        color: var(--brand-color);
    }
}
@media (min-width: 769px) {
    .mobile-menu-toggle {
        display: none;
    }
    #mobileMenuOverlay {
        display: none !important;
    }
}
@media (max-width: 640px) {
    .grid-responsive {
        grid-template-columns: 1fr;
    }
}
@media (min-width: 641px) and (max-width: 1024px) {
    .grid-responsive {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width: 1025px) {
    .grid-responsive {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 768px) {
    .hero-title {
        font-size: 2.5rem;
    }
    .section-title {
        font-size: 1.75rem;
    }
    .stats-number {
        font-size: 2rem;
    }
    #faqList .flex-shrink-0.w-14.h-14 {
        width: 2.5rem !important;
        height: 2.5rem !important;
        font-size: 0.875rem !important;
    }
    #faqList .pl-\[4\.5rem\] {
        padding-left: 3rem !important;
    }
    #registerCode:not(:placeholder-shown),
    #registerCode,
    #forgotCode {
        width: 100% !important;
    }
    #registerCode:is(input),
    #forgotCode:is(input) {
        flex: 1 1 0% !important;
        min-width: 0 !important;
        max-width: none !important;
    }
    #sendCodeBtn {
        width: auto !important;
        min-width: 120px !important;
        max-width: 100% !important;
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
        font-size: 0.8125rem !important;
        white-space: nowrap !important;
    }
    #modalContent .flex.space-x-2 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}
@media (min-width: 769px) {
    .hero-title {
        font-size: 4rem;
    }
    .section-title {
        font-size: 2.5rem;
    }
}
