/* ---------------------------------------------------- */
/* CSS ESPECÍFICO PARA RESPONSIVE Y MENÚ HAMBURGUESA */
/* ---------------------------------------------------- */

/* Botón Hamburguesa: Oculto por defecto en escritorio */
.menu-toggle {
    display: none; 
    padding: 0;
    background: none;
    border: none;
    font-size: 1.8rem;
    color: var(--color-texto-principal);
    cursor: pointer;
    z-index: 1000; /* Asegurar que esté encima de todo */
}

@media (max-width: 768px) {
    .logo{
        width: 70%;
    }
    /* 1. LAYOUT DEL ENCABEZADO EN MÓVIL */
    .header {
        /* Usamos Flexbox para alinear Logo y Botón en extremos */
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: var(--spacing-unit); /* Ajustamos el padding en móvil */
    }

    /* 2. MOSTRAR BOTÓN y OCULTAR NAVEGACIÓN */
    .menu-toggle {
        display: block; /* Mostrar el icono de hamburguesa */
    }

    .nav {
        /* Estado inicial: Menú oculto fuera de la pantalla */
        position: fixed;
        top: 0;
        right: -100%; /* Mover fuera del viewport a la derecha */
        width: 70%; /* Ocupa el 70% de la pantalla */
        height: 100vh;
        background-color: var(--color-fondo);
        box-shadow: -5px 0 15px rgba(0, 0, 0, 0.1);
        z-index: 900;
        transition: right 0.3s ease-in-out; /* Transición para la animación de deslizamiento */
        
        /* Contenido del Menú: Display como columna */
        display: flex;
        flex-direction: column;
        padding-top: 4rem;
        align-items: flex-start;
    }
    
    /* Enlaces dentro del menú móvil */
    .nav a {
        margin: 0.5rem 0; /* Más espacio vertical */
        padding: 10px 0.5rem;
        width: 100%;
        border-bottom: 1px solid var(--color-gris-claro);
    }
    
    /* 3. ESTADO ACTIVO DEL MENÚ (controlado por JS) */
    .nav.is-open {
        right: 0; /* Desliza el menú para que sea visible */
    }
    .menu-toggle.is-open {
        opacity: 0; /* Desliza el menú para que sea visible */
    }   
    /* 4. REAJUSTE DE OTROS ELEMENTOS DEL HEADER */
    .header .logo h1 {
        font-size: 1.1rem; /* El logo más pequeño en móvil */
    }
    
    /* Opcional: Ocultar el scroll del cuerpo cuando el menú está abierto */
    body.no-scroll {
        overflow: hidden;
    }
    .plan-estudios{
        width: 95%;
        font-size: 0.5rem !important;
        margin-left: 5%;
    }


}

/* Es importante asegurar que el NAV esté oculto en escritorio si el ancho es mayor a 768px */
@media (min-width: 769px) {
    .nav {
        /* Restablecer la visualización de escritorio */
        position: static;
        width: auto;
        height: auto;
        display: flex; /* o grid, según tu diseño original */
        flex-direction: row;
        box-shadow: none;
        padding-top: 0;
    }
}