/* =============================================
   RESPONSIVE.CSS — Media queries untuk semua breakpoint
   Mengatur tampilan responsif di berbagai ukuran layar.
   ============================================= */

/* --- Tablet / Laptop Kecil (max-width: 1024px) --- */
@media (max-width: 1024px) {

    /* About: grid 2 kolom */
    .features-cloud-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Services: 1 kolom, visual di atas */
    .service-cloud-showcase {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .service-cloud-visual {
        order: -1;
    }

    .service-tags {
        justify-content: center;
    }

    /* Benefits: 1 kolom */
    .benefits-cloud-grid {
        grid-template-columns: 1fr;
    }

    /* Pricing: 1 kolom */
    .pricing-grid {
        grid-template-columns: 1fr;
        max-width: 420px;
        margin-left: auto;
        margin-right: auto;
    }

    .pricing-card.popular {
        transform: scale(1);
    }

    .pricing-card.popular:hover {
        transform: translateY(-10px);
    }

    /* Testimonials: 1 kolom */
    .testimonial-grid {
        grid-template-columns: 1fr;
        max-width: 500px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* --- Tablet Kecil (max-width: 900px) --- */
@media (max-width: 900px) {
    .contact-cloud-grid {
        grid-template-columns: 1fr;
    }

    .about-stats-cloud {
        gap: 20px;
    }

    .stat-cloud {
        padding: 30px 40px;
    }
}

/* --- Mobile (max-width: 768px) --- */
@media (max-width: 768px) {
    :root {
        --section-padding: 100px;
    }

    /* Matikan custom cursor di mobile */
    body {
        cursor: auto;
    }

    .cursor,
    .cursor-follower {
        display: none;
    }

    /* --- Mobile Menu (fullscreen overlay) --- */
    .nav-menu {
        position: fixed;
        top: 0;
        right: -100%;
        width: 100%;
        height: 100vh;
        background: linear-gradient(180deg, var(--sky-500) 0%, var(--sky-600) 100%);
        flex-direction: column;
        justify-content: center;
        gap: 24px;
        transition: var(--transition-normal);
        backdrop-filter: blur(20px);
    }

    .nav-menu.active {
        right: 0;
    }

    .nav-menu .nav-link {
        font-size: 24px;
        opacity: 0;
        transform: translateY(20px);
        transition: opacity 0.4s ease, transform 0.4s ease;
    }

    .nav-menu.active .nav-link {
        opacity: 1;
        transform: translateY(0);
    }

    /* Animasi stagger per link */
    .nav-menu.active .nav-link:nth-child(1) {
        transition-delay: 0.1s;
    }

    .nav-menu.active .nav-link:nth-child(2) {
        transition-delay: 0.15s;
    }

    .nav-menu.active .nav-link:nth-child(3) {
        transition-delay: 0.2s;
    }

    .nav-menu.active .nav-link:nth-child(4) {
        transition-delay: 0.25s;
    }

    .nav-menu.active .nav-link:nth-child(5) {
        transition-delay: 0.3s;
    }

    .nav-menu.active .nav-link:nth-child(6) {
        transition-delay: 0.35s;
    }

    /* Social mobile muncul */
    .nav-social-mobile {
        display: flex;
        opacity: 0;
        transform: translateY(20px);
        transition: opacity 0.4s ease 0.4s, transform 0.4s ease 0.4s;
    }

    .nav-menu.active .nav-social-mobile {
        opacity: 1;
        transform: translateY(0);
    }

    /* Hamburger toggle */
    .nav-toggle {
        display: flex;
    }

    .nav-toggle.active span:nth-child(1) {
        transform: rotate(45deg) translate(6px, 6px);
    }

    .nav-toggle.active span:nth-child(2) {
        opacity: 0;
    }

    .nav-toggle.active span:nth-child(3) {
        transform: rotate(-45deg) translate(6px, -6px);
    }

    /* Hero logo lebih kecil */
    /* Hero logo lebih kecil */
    .hero-logo img {
        max-height: 180px;
        max-width: 80vw;
    }

    /* Features 1 kolom */
    .features-cloud-grid {
        grid-template-columns: 1fr;
    }

    /* Footer 1 kolom */
    .footer-content {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .footer-brand {
        max-width: none;
    }

    .footer-logo {
        margin: 0 auto 20px;
    }

    /* Form lebih compact */
    .contact-form-cloud {
        padding: 30px;
    }

    .form-row {
        grid-template-columns: 1fr;
    }

    /* Catalog: sembunyikan tombol scroll, tab scroll horizontal */
    .catalog-scroll-btn {
        display: none;
    }

    .catalog-tabs {
        justify-content: flex-start;
        flex-wrap: nowrap;
    }

    .catalog-tab {
        font-size: 12px;
        padding: 8px 14px;
    }

    .catalog-card {
        width: 280px;
    }

    /* Floating buttons lebih kecil */
    .back-to-top {
        bottom: 90px;
        right: 20px;
        width: 44px;
        height: 44px;
    }

    .whatsapp-float {
        bottom: 20px;
        right: 20px;
        width: 52px;
        height: 52px;
    }

    .wa-tooltip {
        display: none;
    }
}

/* --- Mobile Kecil (max-width: 480px) --- */
@media (max-width: 480px) {
    .hero-cta {
        flex-direction: column;
        width: 100%;
    }

    .hero-cta .btn {
        width: 100%;
    }

    .hero-logo img {
        max-height: 150px;
        max-width: 90vw;
    }

    .social-cloud-links {
        justify-content: center;
    }

    .stat-value {
        font-size: 36px;
    }

    .cloud-card-main {
        width: 240px;
        height: 220px;
    }

    .about-stats-cloud {
        flex-direction: column;
    }

    .pricing-card {
        padding: 36px 24px 32px;
    }

    .testimonial-card {
        padding: 28px;
    }
}