/* 
    Premium Mobile CSS
    Designed for AQUAHUB — Foreign Standard UI/UX
*/

@media (max-width: 768px) {
    :root {
        --mobile-container-padding: 1.25rem;
    }

    body {
        font-size: 16px;
        padding-bottom: 80px; /* Space for sticky bottom nav */
        -webkit-tap-highlight-color: transparent;
    }

    .container {
        padding-left: var(--mobile-container-padding);
        padding-right: var(--mobile-container-padding);
    }

    /* Header Refinement */
    .header {
        height: 60px;
        padding: 0;
        background: rgba(255, 255, 255, 0.9) !important;
        border-bottom: 1px solid rgba(0,0,0,0.05) !important;
    }

    .nav-container {
        padding: 0 1rem !important;
    }

    .logo img {
        height: 24px;
        border-radius: 4px;
    }

    .logo span {
        font-size: 0.9rem;
        letter-spacing: -0.01em;
    }

    /* Hide redundant elements on mobile header */
    .header .btn-primary {
        display: none !important; /* Managed by bottom nav */
    }

    /* Header dropdown visible on mobile */
    .header .dropdown {
        display: block !important;
    }

    /* Hero Section - Compact & Punchy */
    .hero {
        padding: 60px 0 40px;
        text-align: left !important;
    }

    .hero .badge {
        font-size: 0.65rem;
        padding: 0.25rem 0.75rem;
        background: var(--primary-light);
        color: var(--primary-dark);
        border: 1px solid rgba(6, 182, 212, 0.2);
    }

    .hero h1 {
        font-size: 2.25rem !important;
        line-height: 1.1 !important;
        margin-bottom: 1rem !important;
        max-width: 100% !important;
    }

    .hero p {
        font-size: 1rem !important;
        margin: 0 0 1.5rem !important;
        line-height: 1.5 !important;
        color: #475569;
    }

    .hero .d-flex {
        flex-direction: column;
        gap: 0.75rem !important;
    }

    .hero .btn {
        width: 100%;
        padding: 0.75rem !important;
        border-radius: 12px !important;
    }

    /* Card Grid - Single Column with Premium Feel */
    .row.g-4 {
        --bs-gutter-y: 1.5rem;
    }

    .card {
        border-radius: 16px !important;
        border: 1px solid rgba(0,0,0,0.06) !important;
        box-shadow: 0 4px 12px rgba(0,0,0,0.03);
    }

    .card-body {
        padding: 1.25rem !important;
    }

    .card-title {
        font-size: 1.05rem !important;
        margin-bottom: 0.5rem !important;
    }

    .card-excerpt {
        display: none !important; /* Hide excerpt on small mobile for clean list */
    }

    /* Category Grid - 2 Columns */
    .row.d-flex.justify-content-center > .col-md-6.col-lg-3 {
        width: 50%;
    }

    .transition-all {
        padding: 1.25rem !important;
        border-radius: 16px !important;
        height: 100%;
    }

    .transition-all div {
        width: 40px !important;
        height: 40px !important;
        font-size: 1.25rem !important;
        margin-bottom: 1rem !important;
    }

    .transition-all h3 {
        font-size: 0.85rem !important;
    }

    /* Newsletter Section */
    .fw-black.h1 {
        font-size: 1.75rem !important;
    }

    form.d-flex.flex-column.flex-sm-row {
        gap: 0.5rem !important;
    }

    form .form-control {
        border-radius: 12px !important;
        padding: 0.75rem 1rem !important;
        font-size: 0.9rem !important;
    }

    form .btn {
        border-radius: 12px !important;
        padding: 0.75rem !important;
        width: 100%;
    }

    /* Footer - Simplified */
    .footer {
        padding: 40px 0 20px;
        margin-top: 60px;
    }

    .footer-grid {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
        margin-bottom: 40px;
    }

    /* Sticky Bottom Navigation - Modern Standard */
    .mobile-bottom-nav {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 68px;
        background: rgba(255, 255, 255, 0.85);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        border-top: 1px solid rgba(0,0,0,0.05);
        display: flex;
        justify-content: space-around;
        align-items: center;
        z-index: 9999;
        padding: 0 1rem;
        box-shadow: 0 -5px 25px rgba(0,0,0,0.03);
    }

    .mobile-nav-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-decoration: none;
        color: #94a3b8;
        font-size: 0.65rem;
        font-weight: 600;
        gap: 6px;
        transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        width: 25%;
    }

    .mobile-nav-item:active {
        transform: scale(0.92);
        opacity: 0.7;
    }

    .mobile-nav-item.active {
        color: var(--primary);
    }

    .mobile-nav-item.dropdown-toggle::after {
        display: none !important;
    }

    .mobile-bottom-nav .dropdown-menu {
        width: 90vw !important;
        left: 5vw !important;
        right: 5vw !important;
        transform: translate3d(0, 0, 0) !important;
        bottom: 80px !important;
        top: auto !important;
        position: fixed !important;
        border-radius: 20px !important;
        padding: 1rem !important;
    }

    .mobile-bottom-nav .dropdown-item {
        padding: 0.8rem 1rem !important;
        border-radius: 12px !important;
        font-size: 0.95rem !important;
        font-weight: 500;
    }

    .mobile-nav-item svg {
        width: 22px;
        height: 22px;
        stroke-width: 2.2;
    }

    .mobile-nav-item.active svg {
        stroke: var(--primary);
    }

    /* Chat Bubble adjust for bottom nav */
    #chat-bubble {
        bottom: 85px !important;
        right: 20px !important;
        width: 50px !important;
        height: 50px !important;
    }

    #chat-window {
        bottom: 145px !important;
        right: 15px !important;
        left: 15px !important;
        width: auto !important;
        height: 70vh !important;
    }

    /* Blog Post Refinements */
    .py-5 .container {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }

    .py-5 .container h1 {
        font-size: 2rem !important;
        margin-top: 1rem !important;
        margin-bottom: 1.5rem !important;
    }

    .prose {
        font-size: 1.1rem !important;
        line-height: 1.7 !important;
    }

    .prose h2 {
        font-size: 1.75rem !important;
        margin-top: 2.5rem !important;
    }

    .prose h3 {
        font-size: 1.25rem !important;
    }

    #author-note, #toc {
        padding: 1rem !important;
        border-radius: 12px !important;
    }

    #toc-list li {
        flex: 0 0 100% !important;
    }

    .mt-5.p-5.text-center.rounded-4 {
        padding: 2.5rem 1.5rem !important;
        border-radius: 20px !important;
    }
}
