/* ... (Todo lo demás del CSS se queda igual) ... */

/* SISTEMA DE COLUMNAS CORREGIDO (Por defecto es 1 sola columna para celular) */
.dos-columnas { 
    display: grid; 
    grid-template-columns: 1fr; 
    gap: 25px; 
}

/* GRIDS DE SERVICIOS Y PROYECTOS TAMBIÉN PROTEGIDOS */
.grid-servicios, .grid-proyectos { 
    display: grid; 
    grid-template-columns: 1fr; 
    gap: 25px; 
}

/* ... (Conserva las tarjetas e imágenes igual) ... */

/* SECCIÓN HIGHLIGHT (AJUSTE DE TEXTO PARA MÓVIL) */
.highlight-box { 
    background: var(--dark-blue); 
    color: var(--white); 
    padding: 30px 15px; 
    border-radius: 10px; 
    margin-top: 30px; 
    text-align: center; 
}
.highlight-box p {
    font-size: 0.95rem;
    line-height: 1.5;
}

/* ===================================================
   RESPONSIVE DESIGN COMPLETO (TABLETS Y COMPUTADORAS)
   =================================================== */

/* Para Tablets (Pantallas medianas en adelante) */
@media(min-width: 768px) {
    .padding-section { padding: 4rem 0; }
    .dos-columnas { grid-template-columns: 1fr 1fr; gap: 40px; }
    .grid-servicios, .grid-proyectos { grid-template-columns: repeat(2, 1fr); }
    .highlight-box { padding: 40px; }
    .highlight-box p { font-size: 1.1rem; }
}

/* Para Computadoras (Pantallas grandes) */
@media(min-width: 1024px) {
    header { flex-wrap: nowrap; padding: 15px 5%; }
    nav ul { flex-direction: row; gap: 20px; }
    nav ul li a { border-bottom: 2px solid transparent; }
    .grid-servicios, .grid-proyectos { grid-template-columns: repeat(3, 1fr); }
}

/* Ajuste estricto para el menú en celulares */
@media(max-width: 767px) {
    header { flex-direction: column; gap: 15px; text-align: center; }
    nav { width: 100%; }
    nav ul { flex-direction: column; width: 100%; gap: 5px; }
    nav ul li { width: 100%; }
    nav ul li a { display: block; padding: 10px; background: var(--light-bg); border-radius: 5px; }
    nav ul li a.btn-nav { margin-top: 5px; }
    .mision-vision .box { margin-bottom: 10px; }
}