/***************/
/*** GALLERY ***/
/***************/

#gallery-load {
	padding: 150px 0 450px 0;
}

#gallery-container {
	width: 1023px;
	background: #f1f1f1;
	padding: 22px 0 22px 22px;
}

.og-grid img {
	width: auto;
	height: auto;
}

.og-grid {
	width: 100%;
	list-style: none;	
	margin: 0 auto;
}

.og-grid li {
	width: auto;
	height: 347px;
	display: inline-block;
	margin: 0 18px 0 0;
	vertical-align: top;
}

.og-grid li > a,
.og-grid li > a img {
	border: none;
	outline: none;
	display: block;
	position: relative;
}

.og-grid li.og-expanded > a::after {
	top: auto;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-bottom-color: #333333;
	border-width: 15px;
	left: 50%;
	margin: -20px 0 0 -15px;
}

.og-expander {
	position: absolute;
	background: #333333;
	top: auto;
	left: 0;
	width: 1001px;
	margin-top: 10px;
	margin-left: 67px;
	text-align: left;
	height: 0;
}

.og-expander-inner {
	padding: 50px 16px;
	/*height: 100%;*/ /* Height taken out to fix box height */
}

.og-close {
	position: absolute;
	width: 28px;
	height: 28px;
	background: url("../ticons/x.png") no-repeat;
	top: 10px;
	right: 10px;
	cursor: pointer;
}

.og-close:hover {
	width: 28px;
	height: 28px;
	background: url("../ticons/x.png") no-repeat 0px -28px;
}

.og-fullimg,
.og-details {
	width: 965px;
	float: left;
	/*height: 100%;*/
	position: relative;
	z-index: 999;
}

.og-details {
	padding: 0 40px 0 20px;
}

.og-fullimg {
	text-align: center;
}

.og-fullimg img {
	display: inline-block;
	max-height: 100%;
	max-width: 100%;
}

.og-details h3 {
	color: #c8c8c8;
}

.og-details p {
	font-weight: 400;
	font-size: 21px;
	line-height: 22px;
	color: #fff;
	float: left;
	width: 800px;
	padding-right: 20px;
}

.og-details a {
	font-size: 17px;
	padding: 10px 20px;
	display: inline-block;
	margin: 0;
	outline: none;
}

.og-details a:hover {
	border-color: #999;
}

.og-loading {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -14px 0 0 -42px;
	padding: 10px;
	background: rgba(20, 20, 20, 0.9);

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;

	-webkit-box-shadow: inset 0 0 5px #000, 0 1px 1px rgba(255, 255, 255, 0.1);
	-moz-box-shadow: inset 0 0 5px #000, 0 1px 1px rgba(255, 255, 255, 0.1);
	-ms-box-shadow: inset 0 0 5px #000, 0 1px 1px rgba(255, 255, 255, 0.1);
	-o-box-shadow: inset 0 0 5px #000, 0 1px 1px rgba(255, 255, 255, 0.1);
	box-shadow: inset 0 0 5px #000, 0 1px 1px rgba(255, 255, 255, 0.1);
}

.loading-dot {
    float: left;
    width: 8px;
    height: 8px;
    margin: 0 4px;
    background: white;
  
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
  
    opacity: 0;
  
    -webkit-box-shadow: 0 0 2px black;
    -moz-box-shadow: 0 0 2px black;
    -ms-box-shadow: 0 0 2px black;
    -o-box-shadow: 0 0 2px black;
    box-shadow: 0 0 2px black;
  
    -webkit-animation: loadingFade 1s infinite;
    -moz-animation: loadingFade 1s infinite;
    animation: loadingFade 1s infinite;
}

.loading-dot:nth-child(1) {
    -webkit-animation-delay: 0s;
    -moz-animation-delay: 0s;
    animation-delay: 0s;
}

.loading-dot:nth-child(2) {
    -webkit-animation-delay: 0.1s;
    -moz-animation-delay: 0.1s;
    animation-delay: 0.1s;
}

.loading-dot:nth-child(3) {
    -webkit-animation-delay: 0.2s;
    -moz-animation-delay: 0.2s;
    animation-delay: 0.2s;
}

.loading-dot:nth-child(4) {
    -webkit-animation-delay: 0.3s;
    -moz-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

@-webkit-keyframes loadingFade {
    0% { opacity: 0; }
    50% { opacity: 0.8; }
    100% { opacity: 0; }
}

@-moz-keyframes loadingFade {
    0% { opacity: 0; }
    50% { opacity: 0.8; }
    100% { opacity: 0; }
}

@keyframes loadingFade {
    0% { opacity: 0; }
    50% { opacity: 0.8; }
    100% { opacity: 0; }
}

@media screen and (max-width: 1121px) {
	#gallery-container {
		width: 90%;
		background: none repeat scroll 0 0 #F1F1F1;
		margin: 20px auto 0;
		padding: 20px 2%;		
	}

	.og-grid li {
		width: auto;
		height: 215px;
		display: inline-block;
		margin: 0 0 16px 0;
		vertical-align: top;
	}

	.og-grid li > a img {
		width: auto;
		height: 205px;
		border: none;
		outline: none;
		display: block;
		position: relative;
	}

	.og-expander {
		position: absolute;
		background: #333333;
		top: auto;
		left: 5%;
		width: 90%;
		margin-top: 10px;
		margin-left: 0;
		text-align: left;
		height: 0;
	}
	
	.og-fullimg,
	.og-details {
		width: 90%;
		float: left;
		margin: 0 0 0 5%;
		position: relative;
		z-index: 999;
	}
	
	.og-details p {
		font-weight: 400;
		font-size: 21px;
		line-height: 22px;
		color: #fff;
		float: left;
		width: 70%;
	}
	
	.og-details {
		padding: 0;
	}
	
	.og-details .btn-midgrey {
		float: right;
		margin: 0;
	}

}

@media screen and (max-width: 830px) {

	.og-expander h3 { font-size: 32px; }
	.og-expander p { font-size: 13px; }

}

@media screen and (max-width: 768px) {

	.og-grid li {
		width: auto;
		height: 230px;
		display: inline-block;
		margin: 0 0 16px 0;
		vertical-align: top;
	}

	.og-grid li > a img {
		width: auto;
		height: 220px;
		border: none;
		outline: none;
		display: block;
		position: relative;
	}

}

@media screen and (max-width: 635px) {

	.og-grid li {
		width: auto;
		height: 188px;
		display: inline-block;
		margin: 0 0 16px 0;
		vertical-align: top;
	}

	.og-grid li > a img {
		width: auto;
		height: 178px;
		border: none;
		outline: none;
		display: block;
		position: relative;
	}

}

@media screen and (max-width: 500px) {
	
	.og-expander h3 { font-size: 22px; }
	.og-expander { height: 300px; }
	.og-fullimg { display: none; }
	.og-details { float: none; width: 100%; }
	.og-details .btn-midgrey { float: left; margin: 30px 0 0 0; }
	.og-details p { width: 96%; }
	.og-grid li { width: 100%; height: auto; clear: both; }
	.og-grid li > a img {
		 border: medium none;
		 display: block;
		 width: 100%;
		 height: initial;
		 outline: medium none;
		 position: relative;
		 clear: both;
	}

}