<style>
    .menu {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 1.5rem;
    }

    .menu-card {
        flex: 1 1 calc(33.33% - 1rem);
        background: #ffffff;
        border-radius: 15px;
        padding: 1.5rem;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
        text-align: center;
        transition: all 0.3s ease;
        min-width: 250px;
        cursor: pointer;
        position: relative;
        overflow: hidden;
    }

    .menu-card::before {
        content: "";
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(120deg, #007bff33, transparent);
        transition: all 0.5s ease;
    }

    .menu-card:hover::before {
        left: 100%;
    }

    .menu-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 6px 18px rgba(0, 123, 255, 0.15);
    }

    .menu-card.active {
        border: 2px solid #007bff;
    }

    .menu-content h5 {
        font-weight: 600;
        color: #007bff;
        margin-bottom: 0.5rem;
    }

    .menu-content p {
        color: #555;
        font-size: 0.9rem;
        margin-bottom: 0;
    }

    /* RESPONSIVE: tetap sejajar 3 meskipun di HP */
    @media (max-width: 768px) {
        .menu-card {
            flex: 1 1 calc(33.33% - 0.8rem);
            padding: 1rem;
        }

        .menu-content h5 {
            font-size: 0.9rem;
        }

        .menu-content p {
            font-size: 0.8rem;
        }
    }

    @media (max-width: 576px) {
        .menu {
            gap: 0.6rem;
        }

        .menu-card {
            min-width: 100px;
            flex: 1 1 calc(33.33% - 0.5rem);
            padding: 0.8rem;
        }

        .menu-content h5 {
            font-size: 0.8rem;
        }

        .menu-content p {
            display: none;
        }
    }
</style>