/* Hero Section Styles for Mobile */
@media (max-width: 768px) {
    .hero-achievements {
        position: static !important;
        transform: none !important;
        flex-direction: row !important;
        justify-content: center;
        flex-wrap: wrap;
        gap: 10px !important;
        padding: 20px 10px;
        margin-top: 20px;
    }

    .floating-card {
        width: calc(33.33% - 10px) !important;
        min-width: 100px !important;
        max-width: none !important;
        padding: 15px 10px !important;
        text-align: center;
    }

    .floating-card i {
        font-size: 24px !important;
    }

    .floating-card span {
        font-size: 12px !important;
    }

    .hero-stats {
        margin-top: 30px !important;
        padding: 0 10px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }

    .hero-stats .stat-item {
        flex: 1;
        min-width: 100px !important;
        max-width: calc(33.33% - 10px) !important;
        padding: 15px 10px !important;
        background: rgba(255, 255, 255, 0.15);
        backdrop-filter: blur(10px);
        border-radius: 15px;
        border: 1px solid rgba(255, 255, 255, 0.2);
    }

    .hero-stats .stat-item h3 {
        font-size: 1.8rem !important;
        margin: 0;
        color: #fff;
    }

    .hero-stats .stat-item p {
        font-size: 0.8rem !important;
        margin: 5px 0 0;
        color: rgba(255, 255, 255, 0.9);
    }
}

@media (max-width: 480px) {
    .hero-stats {
        flex-direction: row !important;
        flex-wrap: wrap !important;
    }

    .hero-stats .stat-item {
        min-width: calc(50% - 10px) !important;
        max-width: calc(50% - 10px) !important;
    }

    .floating-card {
        width: calc(50% - 10px) !important;
        min-width: 120px !important;
    }

    /* Additional hero tweaks to improve spacing, readability and touch targets */
    @media (max-width: 768px) {
        .hero-content h1 {
            font-size: 1.95rem !important;
            line-height: 1.15 !important;
        }

        .hero-description {
            font-size: 0.98rem !important;
            margin-bottom: 12px !important;
        }

        .hero-buttons {
            flex-direction: column !important;
            gap: 12px !important;
            align-items: stretch !important;
        }

        .hero-buttons .btn {
            width: 100% !important;
            padding: 14px 18px !important;
            font-size: 16px !important;
        }

        /* Make the floating achievements less intrusive on tablet-width devices */
        .hero-achievements {
            display: none !important;
        }

        /* Quick search adjustments for better touch UX */
        .search-card {
            margin-top: 16px !important;
            padding: 18px !important;
            border-radius: 12px !important;
        }

        .search-card .form-control {
            min-height: 48px !important;
            font-size: 16px !important;
            padding: 12px 14px !important;
        }

        .search-card .btn {
            min-height: 48px !important;
            font-size: 16px !important;
            padding: 12px 16px !important;
            width: 100% !important;
        }
    }

    @media (max-width: 480px) {
        .hero-content h1 {
            font-size: 1.6rem !important;
        }

        .hero-description {
            font-size: 0.95rem !important;
        }

        .search-card { padding: 14px !important; }

        .search-card .form-control,
        .search-card .btn {
            min-height: 52px !important;
            font-size: 16px !important;
            padding: 14px !important;
        }
    }
}