/* Mobile-First Responsive Design */
@media (max-width: 768px) {
    .hero-title {
        font-size: 32px;
    }
    
    .hero-subtitle {
        font-size: 16px;
    }
    
    .hero-cta {
        flex-direction: column;
        padding: 0 20px;
    }
    
    .hero-features {
        grid-template-columns: 1fr;
        padding: 0 20px;
    }
    
    .pricing-grid {
        grid-template-columns: 1fr;
    }
    
    .nav-menu {
        display: none;
        position: absolute;
        top: 70px;
        left: 0;
        right: 0;
        background: var(--bg-secondary);
        flex-direction: column;
        padding: 20px;
        border-bottom: 1px solid var(--border);
    }
    
    .nav-menu.active {
        display: flex;
    }
    
    .mobile-toggle {
        display: block;
    }
    
    .container {
        padding: 0 15px;
    }
    
    .btn-lg {
        padding: 14px 24px;
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .hero {
        padding: 40px 0;
    }
    
    .hero-title {
        font-size: 28px;
    }
    
    .pricing-card {
        padding: 30px 20px;
    }
    
    .price {
        font-size: 36px;
    }
}