 /* Basic Styles */


.gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 5px;
  padding: 7px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; /* Justify content */

}

/*
.gallery-item:hover {
  transform: scale(1.05);
} */

.image-info {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 5px;
  text-align: center;
  font-size: 14px;
  border-radius: 0 0 8px 8px;
  opacity: 0;
  transition: opacity 0.3s;
}

/* .gallery-item:hover .image-info {
  opacity: 1;
} */

/* Full-Screen Lightbox Styles */
.lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.9);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  flex-direction: column;
}

.lightbox img {
    width: 100%;
    max-height: 80%;
    object-fit: contain;
    border-radius: 5px;
    padding: 0px 10px  0px 10px ;
}

.lightbox .image-description {
  color: #fff;
  font-size: 14px;
  margin-top: 10px;
  /* text-align: center; */
  padding: 0px 100px 0px 100px;
}

.lightbox-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.7);
  color: #fff;
  border: none;
  padding: 10px;
  cursor: pointer;
  font-size: 20px;
  border-radius: 5px;
}

.prev-btn {
  left: 10px;
}

.next-btn {
  right: 10px;
}

.close-btn {
  position: absolute;
  top: 1px;
  right: 20px;
  background-color: #000000;
  border: none;
  padding: 0px 12px 0px 12px;
  cursor: pointer;
  opacity: 75%;
  color: #ffffff;
  font-size: 40px;
  border-radius: 5px;
}


/* Gallery container */
.gallery {
display: flex;
flex-wrap: wrap;
justify-content: space-between; /* Justifies the items evenly */
gap: 10px; /* Adds spacing between items */
margin: 15px auto;
max-width: 1200px; /* Limits gallery width for a neat layout */
}

/* Base styles for the gallery container */
.gallery-category {
display: flex;
flex-wrap: wrap;
gap: 10px; /* Space between items */
}

/* One image: full width */
.gallery-category .gallery-item:nth-child(1):only-child {
flex: 1 1 100%; /* Take full width */
}

/* Two images: two columns */
.gallery-category .gallery-item:nth-child(-n+2):only-of-type,
.gallery-category .gallery-item:nth-child(-n+2) {
flex: 1 1 calc(50% - 10px); /* Two columns */
}

/* Three images: 1 full + 2 half */
.gallery-category .gallery-item:nth-child(1):only-of-type,
.gallery-category .gallery-item:nth-child(1) {
flex: 1 1 100%; /* First image full width */
}

.gallery-category .gallery-item:nth-child(2),
.gallery-category .gallery-item:nth-child(3) {
flex: 1 1 calc(50% - 10px); /* Next two images half width */
}

/* Four images: four columns */
.gallery-category .gallery-item:nth-child(-n+4) {
flex: 1 1 calc(25% - 10px); /* Four columns */

}

/* Fixed height for images */
.gallery-category .gallery-item img {
  width: 100%;
  height: 275px; /* Adjust height as needed */
  object-fit: cover; /* Ensure the image scales properly */
  border-radius: 5px;
}

/* Optional: Center align image info text */
.image-info {
text-align: center;
font-size: 14px;
margin-top: 5px;
}




/* Image info styling */
.image-info {
margin-top: 8px;
font-size: 14px;
color: #333;
}
.long-text {
font-size: 14px;
color: #666;
}

.read-more {
  font-size: 12px;
  padding: 5px;
  color: #ffffff;
  margin-top: 1%;
  font-weight: 400;
  background-color: #2a457f;
  opacity: 80%;
  border-radius: 5px;
  line-height: 21px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2; /* number of lines to show */
          line-clamp: 2;
  -webkit-box-orient: vertical;
}



/* .image-description {
margin-top: 20px;
font-size: 16px;
color: #fff;
text-align: center;
} */
.gallery-flex {
display: flex;
flex-wrap: wrap;
/* //cursor: pointer; */
border-radius: 5px;
padding: 10px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2); /* Updated for a more modern shadow effect */
}
