
#image-gallery .gallery-container {
  width: 90vw;
  margin: 2rem auto;
}

#image-gallery .gallery-container .gallery-title {
  text-align: center;
  margin: 4rem auto;
  position: relative;
}
#image-gallery .gallery-container .gallery-title::after {
  content: "";
  position: absolute;
  display: block;
  background-image: linear-gradient(120deg, #e5ea15, #00c4ff);
  width: 25vw;
  height: 1rem;
  /*bottom: -1rem;*/
  left: 50%;
  transform: translateX(-50%) skewX(-50deg);
}

#image-gallery .gallery-text {
  text-align: justify;
}

#gallery {
  display: block;
}
#gallery .gallery-container {
  width: 90vw;
  margin: 2rem auto;
  position: relative;
  display: block;
}

#gallery .gallery-container .gallery-row {
  /*position: relative;*/
  display: block;
  margin-right: -15px;
  margin-left: -15px;
}

#gallery .gallery-box {
  margin-bottom: 10px;
  /*border: 2px solid blue;*/
}

#gallery .img-box {
  position: relative;
  width: auto;
  height: 100%;

}
#gallery .img-box .img-front {
  display: block;
  /*width: 100%;*/
  height: auto;

}
#gallery .img-box .gallery-thumb {
    border: 2px solid green;
    display: block;
}

#gallery .img-box .overlay {
  position: absolute;
  display: block;
  margin: 0 1.5rem;
  bottom: 100%;
  left: 0;
  right: 0;
  background-color: #008cba;
  overflow: hidden;
  width: auto;
  height: 0;
  transition: 0.5s ease;
  /*border: 2px solid blue;*/
}
#gallery .img-box:hover .overlay {
  bottom: 0;
  width: auto;
  height: 100%;
  opacity: 0.6;
  /*z-index: 9999;*/
}
#gallery .overlay-title {
  color: red;
  font-size: 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}
#gallery .overlay-more {
  color: #fff;
  font-size: 1rem;
  position: absolute;
  top: 65%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}

.modal-title {
  display: inline-block;
}

/* Cut from bootstrap.css line 4923-5069 */
.close {
	float: right;
	font-size: 3rem;
	font-weight: 800;
	line-height: 1;
	color: #000;
	text-shadow: 0 1px 0 #fff;
	filter: alpha(opacity=20);
	opacity: .2;
}
.close:focus, .close:hover {
	color: #000;
	text-decoration: none;
	cursor: pointer;
	filter: alpha(opacity=50);
	opacity: .5;
}
button.close {
	-webkit-appearance: none;
	padding: 10px;
	cursor: pointer;
	background: 0 0;
	border: 0px solid grey;
}
.modal-open {
	overflow: hidden;
}
.modal {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1050;
	display: none;
	overflow: hidden;
	-webkit-overflow-scrolling: touch;
	outline: 0;
}
.modal.fade .modal-dialog {
	-webkit-transition: -webkit-transform .3s ease-out;
	-o-transition: -o-transform .3s ease-out;
	transition: transform .3s ease-out;
	-webkit-transform: translate(0, -25%);
	-ms-transform: translate(0, -25%);
	-o-transform: translate(0, -25%);
	transform: translate(0, -25%);
}
.modal.in .modal-dialog {
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	-o-transform: translate(0, 0);
	transform: translate(0, 0);
}
.modal-open .modal {
	overflow-x: hidden;
	overflow-y: auto;
}
.modal-dialog {
	position: relative;
	width: auto;
	margin: 10px;
}
.modal-content {
	position: relative;
	background-color: #fff;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	border: 1px solid #999;
	border: 1px solid rgba(0,0,0,.2);
	border-radius: 6px;
	outline: 0;
	-webkit-box-shadow: 0 3px 9px rgba(0,0,0,.5);
	box-shadow: 0 3px 9px rgba(0,0,0,.5);
}
.modal-backdrop {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1040;
	background-color: #000;
}
.modal-backdrop.fade {
	filter: alpha(opacity=0);
	opacity: 0;
}
.modal-backdrop.in {
	filter: alpha(opacity=50);
	opacity: .5;
}
.modal-header {
	padding: 15px;
	border-bottom: 5px solid #e5e5e5;
}
.modal-header .close {
	margin-top: -2px;
}
.modal-title {
	margin: 0;
	line-height: 1.42857143;
}
.modal-body {
	position: relative;
	padding: 15px;
}

.modal-footer {
	padding: 15px;
	text-align: right;
	border-top: 1px solid #e5e5e5;
}
.modal-footer .btn+.btn {
	margin-bottom: 0;
	margin-left: 5px;
}
.modal-footer .btn-group .btn+.btn {
	margin-left: -1px;
}
.modal-footer .btn-block+.btn-block {
	margin-left: 0;
}
.modal-scrollbar-measure {
	position: absolute;
	top: -9999px;
	width: 50px;
	height: 50px;
	overflow: scroll;
}
@media (min-width:768px) {
.modal-dialog {
	width: 600px;
	margin: 30px auto;
}
.modal-content {
	-webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5);
	box-shadow: 0 5px 15px rgba(0,0,0,.5);
}
.modal-sm {
	width: 300px;
}
}
@media (min-width:992px) {
.modal-lg {
	width: 900px;
}
}
