/* ===========================
   RESPONSIVE DESIGN - HERO SECTION
   =========================== */

@media (max-width: 1024px) {
    .hero-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }

    .hero-visual {
        height: 400px;
        order: -1;
    }

    .hero-content {
        text-align: center;
    }

    .hero-title {
        font-size: 3.5rem;
    }

    .hero-subtitle-static {
        font-size: 1.25rem;
    }

    .typing-text {
        font-size: 1.75rem;
    }

    .hero-description {
        font-size: 1.125rem;
    }

    .hero-cta {
        justify-content: center;
    }

    .floating-cards {
        transform: scale(0.8);
    }
}

@media (max-width: 768px) {
    .hero {
        padding: 8rem 0 4rem;
        min-height: auto;
    }

    .hero-title {
        font-size: 2.5rem;
    }

    .hero-subtitle-static {
        font-size: 1.125rem;
    }

    .typing-text {
        font-size: 1.5rem;
    }

    .typing-cursor {
        font-size: 1.5rem;
    }

    .hero-subtitle-animated {
        justify-content: center;
    }

    .hero-description {
        font-size: 1rem;
    }

    .hero-cta {
        flex-direction: column;
        gap: var(--spacing-md);
    }

    .btn-hero-primary,
    .btn-hero-secondary {
        width: 100%;
        justify-content: center;
        padding: 1.125rem 2rem;
        font-size: 1rem;
    }

    .hero-stats {
        flex-wrap: wrap;
        gap: var(--spacing-md);
        padding: var(--spacing-lg);
    }

    .stat-item {
        flex: 1 1 45%;
        min-width: 120px;
    }

    .stat-divider {
        display: none;
    }

    .stat-number {
        font-size: 2rem;
    }

    .stat-label {
        font-size: 0.875rem;
    }

    .hero-visual {
        height: 300px;
        display: none;
        /* Hide floating cards on mobile */
    }

    .scroll-indicator {
        display: none;
        /* Hide scroll indicator on mobile to prevent overlap */
    }

    .scroll-text {
        font-size: 0.75rem;
    }

    /* Adjust particles for mobile */
    .particle {
        width: 3px;
        height: 3px;
    }
}

@media (max-width: 480px) {
    .hero {
        padding: 7rem 0 3rem;
    }

    .hero-badge {
        padding: 0.75rem 1.25rem;
        font-size: 0.875rem;
    }

    .hero-title {
        font-size: 2rem;
        line-height: 1.2;
    }

    .hero-subtitle-static {
        font-size: 1rem;
    }

    .typing-text {
        font-size: 1.25rem;
    }

    .typing-cursor {
        font-size: 1.25rem;
    }

    .hero-description {
        font-size: 0.9375rem;
        line-height: 1.6;
    }

    .btn-hero-primary,
    .btn-hero-secondary {
        padding: 1rem 1.75rem;
        font-size: 0.9375rem;
    }

    .hero-stats {
        padding: var(--spacing-md);
    }

    .stat-item {
        flex: 1 1 100%;
    }

    .stat-number {
        font-size: 1.75rem;
    }

    .stat-icon {
        font-size: 1.5rem;
    }

    /* Reduce orb sizes on mobile */
    .orb-1,
    .orb-2,
    .orb-3,
    .orb-4 {
        width: 300px !important;
        height: 300px !important;
    }
}