/* Contenedor de las imágenes del mosaico */
.mosaico-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* Cuatro columnas */
  gap: 15px; /* Espaciado entre columnas y filas */
  margin-top: 20px;
}

/* Estilo de cada item (imagen y año) */
.mosaico-item {
  text-align: center;
  position: relative;
}

/* Estilo para las imágenes */
.mosaico-item img {
  width: 100%; /* Las imágenes se ajustan al tamaño de su contenedor */
  height: auto; /* Mantiene la proporción de la imagen */
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease-in-out; /* Animación al pasar el ratón */
  object-fit: cover; /* Hace que la imagen cubra el área sin distorsión */
}

/* Animación de la imagen al pasar el ratón */
.mosaico-item img:hover {
  transform: scale(1.05); /* Agranda la imagen ligeramente al pasar el ratón */
}

/* Estilo del texto de año debajo de la imagen */
.mosaico-year {
  margin-top: 8px;
  font-size: 14px;
  color: #555;
  font-weight: bold;
}

/* Filtro de año */
.mosaico-filtro {
  display: flex;
  justify-content: center;
  gap: 10px; /* Espaciado horizontal entre el texto y el select */
  margin-bottom: 20px;
}
.mosaico-filtro label {
  font-size: 14px; /* Ajusta el tamaño de la fuente del texto */
  flex: 1; /* El texto ocupará un espacio proporcional al contenedor */
}

.mosaico-filtro select {
  padding: 5px;
  font-size: 14px;
  border-radius: 5px;
  border: 1px solid #ccc;
  flex: 2; /* El select ocupará el doble de espacio que el texto */
}

/* Estilo para los items del mosaico cuando están ocultos por el filtro */
.mosaico-item.hidden {
  display: none;
}

/* Estilo para el enlace del PDF */
.mosaico-item .pdf-link {
  position: absolute;
  bottom: 10px;
  left: 10px;
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  padding: 5px 10px;
  border-radius: 5px;
  text-decoration: none;
  font-size: 14px;
}

.mosaico-item .pdf-link:hover {
  background-color: rgba(0, 0, 0, 0.8);
}

/* Responsividad */
@media screen and (max-width: 768px) {
  .mosaico-container {
    grid-template-columns: repeat(
      2,
      1fr
    ); /* Dos columnas por fila en pantallas medianas */
  }
}

@media screen and (max-width: 480px) {
  .mosaico-container {
    grid-template-columns: 1fr; /* Una columna por fila en pantallas pequeñas */
  }
}

/* Estilos para el modal */
.modal {
  display: none; /* Escondido por defecto */
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto; /* Permite desplazarse si el contenido es grande */
  background-color: rgba(0, 0, 0, 0.7); /* Fondo oscuro */
}

.modal-content {
  background-color: #fefefe;
  margin: 0 auto; /* Centra horizontalmente */
  padding: 20px;
  border: 1px solid #888;
  width: 100%;
  height: 100%;
  position: relative; /* Asegura que la posición sea relativa al contenedor */
  top: 20px; /* Ajusta la distancia desde la parte superior */
  transform: translateY(0); /* Elimina el centrado vertical */
}

.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  text-align: right;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

/* Asegura que las imágenes dentro del modal tengan un tamaño adecuado */
.modal iframe {
  width: 100%;
  height: 100%;
}

#yearFilter {
  border: 1px solid #000066;
  border-radius: 12px;
  opacity: 1;
  text-align: left;
  font: normal normal normal 14px/24px Open Sans;
  letter-spacing: 0px;
  color: #000066;
  opacity: 1;
}
#textFilter {
  text-align: left;
  font: normal normal 600 18px/29px Titillium Web;
  letter-spacing: 0px;
  color: #000066;
  opacity: 1;
}
