/* ========== INTRO SECTION RESPONSIVE ========== */
@media (max-width: 992px) {
    .intro-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .number {
        margin-left: 0;
        text-align: center;
        padding: 0 20px;
    }

    .grid-right {
        margin-left: 0;
        order: -1;
    }

    .intro-box {
        width: 100%;
        height: 300px;
        margin: 0;
    }
}

/* ========== PRODUCT GRID RESPONSIVE ========== */
.products {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

@media (max-width: 480px) {
    .product {
        grid-column: span 2;
    }
}

/* ========== FOOTER RESPONSIVE ========== */
@media (max-width: 768px) {
    .footer {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .social-media a {
        justify-content: center;
    }
}

/* ========== IMAGE & VIDEO RESPONSIVE ========== */
img {
    max-width: 100%;
    height: auto;
}

.video-wrapper {
    position: relative;
    padding-top: 56.25%;
    /* 16:9 aspect ratio */
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ========== TYPOGRAPHY RESPONSIVE ========== */
@media (max-width: 768px) {
    html {
        font-size: 12px;
    }

    h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.5rem;
    }
}

/* Styling untuk menu icon (hamburger menu) */
.menu-icon {
    display: none;
    cursor: pointer;
}

.menu-icon i {
    color: #ffffff;
    font-size: 30px;
}

/* ========== MOBILE MENU ========== */
@media (max-width: 600px) {
    #menuList {
        position: absolute;
        top: 57px;
        left: 0;
        right: 0;
        flex-direction: column;
        text-align: center;

        /* background: #00427400; */
        gap: 0;
        overflow: hidden;
        display: none !important;
        /* box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); */
        z-index: 100;
        opacity: 0;
        transition: all 0.3s ease;
        /* Efek background baru */
        backdrop-filter: blur(20px) !important;
        background-color: rgba(27, 27, 27, 0.8);
        -webkit-backdrop-filter: blur(20px) !important;
        background-image: repeating-linear-gradient(to right,
                transparent 0 500px,
                /* Diperkecil untuk mobile */
                #eee1 500px 501px) !important;

    }

    #menuList.mobile-visible {
        display: flex !important;
        opacity: 1;
    }

    .menu-icon {
        display: block !important;
        z-index: 1000;
    }

    nav ul li>.dropdown {
        position: static;
        margin-left: 0px;
        width: 100%;
        /* margin-top: 100; */
        max-height: 100;
        overflow: hidden;
        transition: max-height 0.3s ease;
        backdrop-filter: blur(20px) !important;
        /* background-color: rgba(27, 27, 27, 0.8); */
        -webkit-backdrop-filter: blur(20px) !important;
        background-image: repeating-linear-gradient(to right,
                transparent 0 500px,
                /* Diperkecil untuk mobile */
                #eee1 500px 501px) !important;
    }
}

/* Responsif untuk layar kecil */
@media (max-width: 992px) {
    .intro-grid {
        grid-template-columns: 1fr;
        /* Hanya satu kolom pada layar kecil */
        gap: 20px;
        /* Jarak antar elemen lebih kecil */
    }

    .number {
        font-size: 3em;
        /* Menurunkan ukuran font pada layar kecil */
        margin-left: 0;
    }

    .penjelasan {
        font-size: 12px;
        /* Mengurangi ukuran font penjelasan */
        line-height: 1.6;
        padding: 10px;
        /* Menambahkan padding agar lebih enak dibaca */
    }

    .intro-box {
        height: 100%;
        /* Mengurangi tinggi video box */
    }

    .video-wrapper iframe {
        width: 100%;
        /* Pastikan video mengambil lebar penuh */
        height: 100%;
        /* Pastikan video tetap mengikuti rasio */
    }
}

/* Responsif untuk layar kecil banget (mobile) */
@media (max-width: 600px) {
    .intro-grid {
        grid-template-columns: 1fr;
        /* Satu kolom saja */
        gap: 10px;
        /* Jarak antar elemen lebih kecil */
    }

    .number {
        font-size: 2.5em;
        /* Ukuran font lebih kecil */
    }

    .penjelasan {
        font-size: 10px;
        /* Ukuran font lebih kecil untuk mobile */
        line-height: 1.4;
    }

    .intro-box {
        height: 100%;
        /* Mengurangi ukuran video box */
    }

    .video-wrapper iframe {
        height: 100%;
        /* Pastikan video tidak terpotong */
    }
}