/* General *********************/
.section-end {
  margin-bottom: 20px;
}

.section-end p:last-child {
  display: inline-block;
}

/* WET4 and Bootstrap changes *********************/
.wb-tabs [role="tabpanel"] {
  overflow: hidden;
}

.wb-tabs details > * {
  margin-left: 0;
  margin-top: 12px;
}

details section:first-of-type h2 {
  margin-top: 20px;
}

.pagination {
  margin: 0;
}

.pagination > li > a {
  text-align: center;
  min-width: 50px;
}

/* Photo grids *********************/
.photo-block {
  margin: 20px 0;
}

.photo-single {
  margin-bottom: 20px;
}

.photo-single,
.photo-grid-2x2,
.photo-grid-3x3 {
  text-align: center;
}

.photo-single img,
.photo-grid-2x2 img,
.photo-grid-3x3 img {
  max-width: 100%;
  max-height: 300px;
}

.photo-small img {
  max-height: 250px;
}

.white-bg img {
  border: 1px solid #e3e3e3;
}

.photo-caption {
  display: block;
  margin-top: 10px;
  margin-bottom: 0;
}

.no-link a {
  color: #333;
  text-decoration: none;
}

/* Life cycle *********************/
.life-cycle {
  width: 470px;
}

.life-cycle th {
  text-align: center;
}

/* Custom media queries *********************/
@media (max-width: 480px) {
  /* Photo grids */
  .photo-grid-2x2 li,
  .photo-grid-3x3 li {
    width: 100%;
  }
}

@media (min-width: 480px) {
  /* General */
  .pull-right-xs {
    float: right;
    max-width: 300px;
  }

  /* Photo grids */
  .pull-right-xs .photo-single {
    margin-left: 15px;
  }

  .photo-grid-2x2 li:nth-child(2n + 1),
  .photo-grid-3x3 li:nth-child(2n + 1) {
    clear: left;
  }

  /* Diagrams */
  .diagrams a {
    display: inline-block;
    margin-bottom: 0;
  }
}

@media (min-width: 640px) {
  /* Photo grids */
  .photo-grid-3x3 li {
    width: 33.3333%;
  }

  .photo-grid-3x3 li:nth-child(2n + 1) {
    clear: none;
  }

  .photo-grid-3x3 li:nth-child(3n + 1) {
    clear: left;
  }
}

.no-js .index-toggle {
  display: none;
}

.index-group.on {
  display: initial;
}

.index-group.off {
  display: none;
}

.index-card__photo {
  max-height: 220px;
  object-fit: cover;
}

.photo-gallery__caption > :first-child {
  margin-top: 23px;
}

.featured-photo__container {
  margin-right: -15px;
  margin-left: -15px;
}

@media (min-width: 768px) {
  .featured-photo__container {
    margin-right: initial;
    margin-left: initial;
  }
}

@media (min-width: 768px) {
  .pull-right-sm {
    float: right;
  }
}

.index-description {
  font-size: 17px;
  line-height: 1.5em;
}

.lst-spcd-2 .index-description ul {
  margin-top: 0;
}

.index-tags.list-unstyled {
  margin-top: 0;
}
