

/* Estilos para el modal */
    /* Fondo oscuro cuando el modal está activo */
    .modal {
      display: none; /* Oculto por defecto */
      position: fixed;
      z-index: 1000;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: var(--color-semitransparente)
  }

  /* Contenedor del modal */
  .modal-content {
      background-color: var(--color-modal-activo);
      margin: 15% auto;
      padding: 1.25rem;
      width: 50%;
      border-radius: 0.625rem;
      box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.2);
      text-align: center;
      font-size: 1rem;
  }

  /* Botón de cierre (la "X") */
  .close {
      color: var(--color-secundario);
      float: right;
      font-size: 1.5rem;
      font-weight: bold;
      cursor: pointer;
  }

  .close:hover {
      color: var(--color-resaltado);
  }

  /* Estilo para el enlace de "Acerca de" */
  footer a {
        color: var(--color-footer-texto);
        text-decoration: none;
        font-weight: bold;
        transition: color 0.3s;
    }

    footer a:hover {
        color: var(--color-resaltado);
    }
  .text__modal{
    font-family: Montserrat, sans-serif;
    font-size: 1rem;
    padding: 0.25rem;
  }

/* Menú de navegación */
nav {
  position: relative;
  z-index: 2; /* El menú estará por encima de la imagen */
}

.menu {
  list-style: none;
  display: flex;
  gap: 1.5rem;
}

.menu li {
  display: inline;
}

.menu a {
  text-decoration: none;
  color: var(--color-header-texto);
  font-size: 1.2rem;
  transition: color 0.3s ease;
}

/* Cambio de color al pasar el cursor */
.menu a:hover {
  color: var(--color-resaltado);
}

/* Cambio de color al hacer clic */
.menu a.active {
  color: var(--color-resaltado);
}

/* Menú hamburguesa (oculto en pantallas grandes) */
.menu-hamburguesa {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
}

.menu-hamburguesa div {
    width: 30px;
    height: 4px;
    background-color: var(--color-header-texto);
    border-radius: 2px;
}

/* --- TÍTULOS --- */

.section-title {
  font-family: "Montserrat", serif;
  font-size: 1.75rem;
  color:var(--color-titulo-principal);
  margin: 1rem 0px;
  text-align: center;
}

/* Contenedor principal */
/* El main debe ocupar todo el espacio disponible */
.contenedor-principal {
  background-color: var(--color-secundario);
  flex: 1; /* Hace que ocupe el espacio restante */
  display: flex;
  justify-content: space-evenly;
  border-radius: 4rem 4rem 0 0;
  border: 1px solid var(--color-borde);
  width: 100%;
  padding: 0rem;
  gap: 0rem;
}

.contenedor-enlaces {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
}

.enlace-imagen {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: var(--color-texto);
    border: 1px solid var(--color-borde);
    border-radius: 0.5rem;
    padding: 1rem;
    transition: background-color 0.3s;
    max-height: 14rem;
    width: 14rem;
    margin: 0.5rem;
}

.enlace-imagen:hover {
    background-color: var(--color-resaltado);
}

.enlace-imagen img {
    width: 150px;
    height: 150px;
    object-fit: cover;
    border-radius: 0.5rem;
    margin-bottom: 0.5rem;
}

.enlace-imagen span {
    font-weight: bold;
    text-align: center;
}

/* Estilos responsivos */
@media (max-width: 768px) {
    header {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        height: auto;
        padding: 1rem;
        flex-wrap: nowrap;
    }

    .logo {
        height: 4rem;
    }

    h1 {
        font-size: 1.5rem;
    }

    .contenedor-enlaces {
        flex-direction: column;
        align-items: center;
    }
}