/* Reset básico mejorado para evitar inconsistencias entre navegadores */
* {
  margin: 0; /* Elimina los márgenes predeterminados de todos los elementos */
  padding: 0; /* Elimina el padding predeterminado de todos los elementos */
  box-sizing: border-box; /* Hace que el padding y el borde se incluyan dentro del tamaño del elemento */
}

/* Definición de variables globales con :root */
:root {
  --primary-color: #f3f1ef; /* Color de fondo principal */
  --secondary-color: #e7ddd4; /* Color de fondo secundario */
  --tertiary-color: #6C5C54; /* Color corporativo */
  --text-color: #333; /* Color del texto */
  --secondary-text-color: #fff;
  --background-color: #fff; /* Fondo blanco */
  --link-color: #3498db; /* Color de los enlaces */
  --font-family: Verdana, Geneva, sans-serif; /* Fuente base */
  --font-montserrat: 'Montserrat', sans-serif; /* Fuente secundaria */
  --font-roboto: 'Roboto', sans-serif; /* Fuente terciaria */
  --font-open-sans: 'Open Sans', sans-serif; /* Fuente Open Sans */
  --font-georgia: 'Georgia', serif;  /* Fuente Georgia */
  --font-size: 1rem; /* Tamaño base de la fuente (1 rem = 16px por defecto) */
  --line-height: 1.6; /* Espaciado entre líneas, aumentando la legibilidad */
  --default-margin: 0; /* Margen global para todos los elementos */
}

/* Estructura principal del body */
body {
  display: flex; /* Usa flexbox para la organización de los elementos dentro del body */
  flex-direction: column; /* Organiza los elementos verticalmente (en columna) */
  background-color: var(--primary-color); /* Fondo del sitio, utilizando la variable de color primario */
  color: var(--text-color); /* Color del texto base, utilizando la variable de color de texto */
  font-family: var(--font-family); /* Fuente global definida en las variables */
  font-size: var(--font-size); /* Tamaño base de la fuente definido en las variables */
  line-height: var(--line-height); /* Altura de línea, ajusta la legibilidad */
  margin: var(--default-margin); /* Aplica el margen predeterminado desde las variables */
}

html {
  background-color: var(--primary-color);
  scroll-behavior: smooth;
  font-family: var(--font-family);
  font-size: var(--font-size);
}

/* Estilos para el header */
header {
  background-color: var(--secondary-color);
  padding: 10px 20px;
}

/* Estilos generales para enlaces */
a {
  color: inherit; /* Hereda el color del texto del elemento padre */
  text-decoration: none; /* Elimina el subrayado predeterminado de los enlaces */
  transition: color 0.3s ease; /* Aplica una transición suave al color del enlace */
}

a:hover {
  text-decoration: underline; /* Subraya el enlace cuando el ratón pasa sobre él */
}

/* Estilos de títulos (h1-h6) */
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;/* Elimina la negrita predeterminada de los títulos */
  margin: 0;/* Elimina el margen predeterminado */
}

p {
  color: inherit;/* Hereda el color del texto del elemento padre */
  text-align: center;/* Centra el texto del párrafo horizontalmente */
  font-size: 0.75rem;/* Establece el tamaño de fuente a 12px */
}

#menu {
  display: flex;
  justify-content: space-between; /* Para alinear el menú y los iconos */
  align-items: center;
}

.menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}

.menu-list li {
  position: relative;
  margin-right: 20px;
}

.menu-list a {
  text-decoration: none; /* Elimina cualquier subrayado predeterminado */
  color: #fff; /* Color de texto predeterminado */
  padding: 10px 15px; /* Añadir un poco de padding para que sea más fácil hacer clic */
  transition: all 0.3s ease; /* Transición suave para el cambio de estilo */
}

.menu-list a:hover {
  text-decoration: underline; /* Agregar subrayado blanco */
  text-decoration-color: #fff; /* Color blanco para el subrayado */
}

/* Submenú de idiomas */
.language-dropdown .dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #333;
  border: 1px solid #444;
}

.language-dropdown:hover .dropdown {
  display: block;
}

.language-dropdown .dropdown li a {
  padding: 8px 15px;
}

.language-dropdown .dropdown li a:hover {
  background-color: #555;
}

/* Ícono de hamburguesa */
.hamburger {
  display: none;
  font-size: 30px;
  cursor: pointer;
  color: white;
}

/* Menú responsive (pantallas pequeñas) */
@media (max-width: 768px) {
  .menu-list {
    display: none;
    flex-direction: column;
    width: 100%;
    background-color: var(--tertiary-color); /* Fondo del menú desplegado */
  }

  .menu-list li {
    width: 100%;
    text-align: center;
  }

  .hamburger {
    display: block;
    position: absolute;
    top: 20px;
    right: 20px;
  }

  .menu-list.show {
    display: flex;
  }

  .menu-list li a {
    padding: 15px;
  }

  /* Ajustes para el submenú en móvil */
  .language-dropdown .dropdown {
    position: static;
  }
}

/* Estilos del footer */
footer {
  font-family: var(--font-roboto); /* Define la fuente 'Roboto' para el texto del footer */
  font-size: 0.625rem; /* Tamaño de fuente definido con rem (equivalente a 10px) */
  color: var(--text-color); /* Usa la variable para el color del texto */
  background-color: var(--background-color); /* Usa la variable para el color de fondo */
  text-align: center; /* Centra el contenido del footer horizontalmente */
  padding: 10px 10px; /* Espaciado horizontal de 10px en ambos lados */
  padding-top: none; /* Elimina el espaciado superior */
}

