/*** Styles for picture gallaries  ***/

.flex {
  display: flex;
  justify-content: space-around;
}

/*  for photo albums  */
.flex figure  img {
  margin: auto;
  padding: 5px 5px 80px;
  border: 1px solid #bbb;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.25);
  text-align: center;
  background: #eee;
}

.flex figcaption {
  font-size: 1.25em;
  font-weight: bold;
  text-align: center;
  position: relative;
  top: -50px;
}

.album {
  position: relative;
  height: 350px;
  z-index: 9;
}

.album,
.album::before,
.album::after {
  box-shadow: 1px 1px 1px rgba(0,0,0,0.25);
  border: 1px solid #bbb;
  background: #eee;
}

.album::before,
.album::after {
  content: '';
  position: absolute;
  height: 95%;
  width: 99%;
  background: #eee;
}

.album::before {
  right: 10px;
  top: 0;
  transform: rotate(-2deg);
  z-index: -1;
}

.album::after {
  top: 10px;
  right: -5px;
  transform: rotate(2deg);
  z-index: -2;
}

/* flexible grid for images */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 5px;
  grid-auto-flow: dense;
  align-content: space-between;
  justify-content: space-between;
  justify-items: center;
  align-items: center;
}

.gallery-grid img {
  width: 250px;
  height: 250px;
  align-self: center;
}

.gallery-grid .horz {
  width: 500px;
  grid-column: span 2;
  justify-self: center;
}

.gallery-grid .vert {
  height: 500px;
  grid-row: span 2;
  align-self: center;
}


@media screen and (max-width: 1000px) { 
  .flex{
    flex-direction: column;
    width: 260px;
    height: 750px;
    margin: auto;
  }
  #featureArticle {
    columns:  auto;
  }
  .gallery-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  }
}


/* old photo gallery - keep for future reference 
.gallery {
/* set 'mounting board' for gallery thumbnails
	position: relative;
	background: #FFFFFF;
	padding: 1em;
  border: 5px solid transparent;
}

.gallery:hover {
    border: 5px solid #777;
}  

.gallery img {
    width: 100%;
}

.gallery figcaption {
	text-align: center;
	padding: 5px;
	height: 3em;
}*/