/* 1. Habilitar Desplazamiento Suave (Smooth Scroll) */
html {
    scroll-behavior: smooth; 
}

/* 2. Reseteo Básico */
body {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
    background-color: #f4f4f4;
}

/* 3. Estilo del Menú de Navegación (Contenedor principal) */
#navbar {
    /* PROPIEDADES PARA MANTENERLO FIJO Y CON ESTILO ORIGINAL */
    position: fixed; 
    top: 0;
    width: 100%;
    background-color: #2c3e50; /* Un azul oscuro elegante */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    z-index: 1000; /* Asegura que esté por encima del contenido */
    padding: 0; 
    
    /* FIX CRUCIAL: Permite que el submenú posicionado se vea fuera de #navbar */
    overflow: visible; 
}

/* 4. Estilos de la Lista Principal (<ul>) dentro del NAV */
#navbar ul {
    list-style: none;
    margin: 0;
    padding: 10px 0; /* Recuperamos el padding vertical original */
    display: flex; /* Muestra los elementos en línea (horizontalmente) */
    justify-content: center; /* Centra los elementos */
    
    /* FIX CRUCIAL: Debe ser visible para que el submenú se muestre */
    overflow: visible; 
    
    white-space: nowrap; /* Mantiene los enlaces en una sola línea */
    scrollbar-width: none; /* Firefox */
}

/* Ocultar la barra de desplazamiento para Chrome/Edge/Safari */
#navbar ul::-webkit-scrollbar {
    display: none;
}


/* 5. Estilos de los Elementos de Lista (<li>) */
#navbar li {
    position: relative; /* CRUCIAL para posicionar el submenú */
    display: inline-block; /* Asegura que se muestren en línea */
}

/* 6. Estilos de los Enlaces (<a>) - Aplica a menú principal y submenús */
#navbar li a {
    color: white;
    padding: 8px 15px; /* Padding original del enlace */
    text-decoration: none;
    display: block; /* Debe ser block para que ocupe todo el li */
    font-size: 0.9em;
    transition: background-color 0.3s;
}

#navbar li a:hover {
    background-color: #34495e; /* Color al pasar el mouse */
}


/* ------------------------------------------- */
/* 7. ESTILOS PARA LOS SUBMENÚS DESPLEGABLES */
/* ------------------------------------------- */

/* Ocultar y Posicionar el Submenú (Alta Especificidad para ocultar) */
#navbar ul.submenu {
    display: none; /* OCULTA el submenú por defecto */
    position: absolute; 
    top: 100%; 
    left: 0;
    z-index: 1000; 
    background-color: #34495e; 
    min-width: 180px; 
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.4);
}

/* Nueva clase que JavaScript activará al hacer clic (Máxima Especificidad para mostrar) */
#navbar li.dropdown ul.submenu.active {
    display: block; /* MUESTRA el submenú cuando JavaScript agrega la clase 'active' */
}

/* Estilos de los ítems del Submenú */
.submenu li {
    float: none; /* Asegura que los ítems se apilen verticalmente */
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); /* Separador sutil */
}

.submenu li:last-child {
    border-bottom: none;
}

.submenu li a {
    padding: 10px 15px;
    text-align: left;
    white-space: nowrap;
}


/* ------------------------------------------- */
/* 8. Estilo de las Secciones (Contenido) */
/* ------------------------------------------- */

section {
    min-height: 100vh; 
    display: flex; 
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 30px 20px 20px; 
    text-align: center;
    border-bottom: 1px solid #ddd;
}

/* Color de fondo alterno para mejor distinción de secciones */
section:nth-child(even) {
    background-color: #ecf0f1; 
}

/* 9. Estilo de las Imágenes */
section img {
    max-width: 100%; 
    max-height: 260vh; 
    width: auto;      
    height: auto;
    margin: 20px 0;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15); 
    border-radius: 5px; 
    
    /* === MEDIDAS DE PROTECCIÓN CSS === */
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    -moz-user-drag: none;
    -ms-user-drag: none;
    user-drag: none;
}

/* 10. Media Query para Pantallas Pequeñas (Móviles) */

@media (max-width: 768px) {
    
    /* Ajuste del menú en móvil */
    #navbar ul {
        overflow-x: auto; /* Permite scroll horizontal en móvil */
        justify-content: flex-start; 
    }

    #navbar li a {
        padding: 10px 10px; 
        font-size: 0.8em;
    }

    /* Reducir el padding superior de la sección en móvil */
    section {
        padding-top: 30px; 
    }

    /* Reducir la sombra de la imagen en móvil */
    section img {
        box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1); 
    }
}