/* ============================
   Responsive - Media Queries
   ============================ */

/* --- Tablet (768px+) --- */
@media (min-width: 768px) {
    h1 { font-size: 2.5rem; }
    h2 { font-size: 2rem; }

    .container {
        padding: 0 var(--spacing-md);
    }

    .section {
        padding: var(--spacing-lg) 0 var(--spacing-xxl);
    }

    /* Hero */
    .hero {
        min-height: 80vh;
    }

    .hero__title {
        font-size: 2.5rem;
    }

    .hero__cta {
        flex-direction: row;
        justify-content: center;
    }

    /* Cards */
    .cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }

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

    /* Nosotros */
    .about-content {
        grid-template-columns: 1fr 1fr;
    }

    .about-content__image {
        min-height: auto;
    }

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

    /* Servicios */
    .servicio-principal {
        grid-template-columns: 1fr 1fr;
    }

    .servicio-principal .about-content__image {
        min-height: auto;
    }

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

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

    /* Contacto */
    .contacto-grid {
        grid-template-columns: 1fr 1fr;
    }

    /* Footer */
    .footer__inner {
        grid-template-columns: 2fr 1.5fr 0.8fr;
    }
}

/* --- Desktop (1024px+) --- */
@media (min-width: 1024px) {
    h1 { font-size: 3rem; }
    h2 { font-size: 2.25rem; }

    /* Header Desktop */
    .header__nav {
        position: static;
        width: auto;
        height: auto;
        background-color: transparent;
        box-shadow: none;
    }

    .header__menu {
        flex-direction: row;
        padding: 0;
        gap: var(--spacing-xs);
    }

    .header__link {
        padding: 0.5rem 1rem;
        border-bottom: none;
        border-radius: var(--border-radius);
        font-size: 1.05rem;
    }

    .header__link:hover {
        background-color: var(--azul-claro);
    }

    .header__link--active {
        background-color: var(--azul-claro);
        color: var(--azul-primario);
    }

    .header__hamburger {
        display: none;
    }

    /* Hero */
    .hero__title {
        font-size: 3rem;
    }

    .hero__subtitle {
        font-size: 1.2rem;
    }

    /* Cards */
    .cards-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    /* Proceso */
    .proceso-steps {
        grid-template-columns: repeat(4, 1fr);
    }

    /* Aplicaciones */
    .aplicaciones-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* --- Large Desktop (1200px+) --- */
@media (min-width: 1200px) {
    .container {
        padding: 0;
    }
}
