/* ==========================================================================
   Responsive Styles - Mobile-first breakpoints
   ========================================================================== */

/* Tablet and larger */
@media (min-width: 768px) {
    .nav-toggle {
        display: none;
    }

    .main-nav {
        display: flex;
        align-items: center;
        gap: 1.5rem;
    }

    .main-nav ul {
        display: flex;
        flex-direction: row;
        gap: 0.5rem;
    }

    .main-nav.open {
        position: static;
        flex-direction: row;
        box-shadow: none;
        padding: 0;
    }

    .nav-cta {
        margin-top: 0;
    }

    .hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 3rem;
    }

    .hero-content h1 {
        font-size: 3rem;
    }

    .section-title {
        font-size: 2.25rem;
    }

    .card-grid.services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .industry-grid {
        grid-template-columns: repeat(4, 1fr);
    }

    .why-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .ai-widget {
        grid-template-columns: 1fr auto 1fr;
        align-items: start;
    }

    .ai-arrow {
        align-self: center;
    }

    .footer-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Desktop */
@media (min-width: 1024px) {
    .card-grid.services-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .industry-grid {
        grid-template-columns: repeat(6, 1fr);
    }

    .why-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .footer-grid {
        grid-template-columns: repeat(4, 1fr);
    }

    .hero-content h1 {
        font-size: 3.5rem;
    }
}