@font-face {
  font-family: Clarendon;
  src: url("../fonts/clar45w.ttf");
}
@font-face {
  font-family: OpenSans;
  src: url("../fonts/OpenSans-Regular.ttf");
}

/* Base styles, which will be overridden by everything below them */

/* Utility */
.responsive {
  width: 100%;
  height: auto;
}
.padding-primary{
	padding: 40px 15px 60px 15px;
}
.background-primary{
	background-color: #1C1C1C;
}
.background-secondary{
	background-color: #0670AC;
}

/* Buttons */
.button-primary{
	color: #e1dfe0;
	background-color: #055B8C;
	text-transform: uppercase;
	font-family: Typewriter, Helvetica, sans-serif;
	padding: 20px 20px;
	display: inline-block;
	transition: color 0.2s;
}
.button-primary:hover{
	color: #fff;
}

/* Navigation */
.nav-full{
}
.nav-full a{
}
.mobile-nav{
}
.mobile-nav a{
}
.nav-portfolio-wrapper{
	background-color: #000000;
    border-top: 3px solid #0670ac;
    border-bottom: 3px solid #0670ac;
}
.nav-portfolio{
    max-width: 1300px;
    margin: 0 auto;
	font-family: Typewriter, Helvetica, sans-serif;
	text-transform: uppercase;
	font-size: 16px;
}
.nav-portfolio a{
	color: #fff;
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
}
.nav-portfolio a:hover{
	background-color: #055B8C;
}
.nav-portfolio-mobile{
    margin: 0 auto;
    font-family: Typewriter, Helvetica, sans-serif;
    text-transform: uppercase;
    font-size: 18px;
	padding-left: 30px;
	padding-right: 30px;
    width: 100%;
    z-index: 1;
}
.nav-portfolio-mobile a{
	display: block;
	color: #fff;
	padding-top: 15px;
	padding-bottom: 15px;
}
.nav-portfolio-mobile .arrow{
	width: 0;
	height: 0;
	border-top: 9px solid transparent;
	border-bottom: 9px solid transparent;
	border-left: 15px solid #fff;
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px;
	margin-top: -4px;
	transform: rotate(0deg);
	transition: transform 0.5s;
}
.nav-portfolio-mobile  .arrow.change{
	transform: rotate(90deg);
}

/* Text content */
.heading {
  font-family: Clarendon, Helvetica, sans-serif;
  text-transform: uppercase;
  font-size: 22px;
  color: #497858;
}
.heading-sm{
	font-family: Clarendon, Helvetica, sans-serif;
	text-transform: uppercase;
	font-size: 16px;
	color: #497858;
}
.category-title{
	font-family: Typewriter, Helvetica, sans-serif;
    text-transform: uppercase;
    font-size: 21px;
	color: #0670AC;
}
.portfolio-location {
	font-family: OpenSans, Arial, Helvetica, sans-serif;
	color: #ffffff;
	font-size: 11px;
}
.maintext {
	font-family: OpenSans, Arial, Helvetica, sans-serif;
	color: #ffffff;
	font-size: 16px;
}
.maintext a:link {
	color: #ffffff;
	text-decoration: none;
}
.maintext a:visited {
	text-decoration: none;
	color: #ffffff;
}
.maintext a:hover {
	text-decoration: none;
	color: #11912c;
}
.maintext a:active {
	text-decoration: none;
	color: #ffffff;
}
.small-text {
	font-family: OpenSans, Arial, Helvetica, sans-serif;
	color: #d0d1d1;
	font-size: 17px;
}

/* Modals */
.modal-title{
	color: #056CAF;
}
.modal-content{
	background-color: rgba(255, 255, 255, 1);
	min-height: 600px;
	padding-top: 15px;
	padding-bottom: 15px;
}
.modal-content form label{
	/*color: #056CAF;*/
}

/* Lightbox */
.lightbox{
	-webkit-transition: top 300ms;
	-moz-transition: top 300ms;
	-o-transition: top 300ms;
	transition: top 300ms;
	
	align-content: center;
   align-items: center;
   height :100%;
   display: flex;
   flex-direction: column;
   position: fixed !important;
   top: 0 !important;
}
.lb-outerContainer {
    margin: auto;
}
#lightboxOverlay {
  height: 100% !important;
  left: 0;
  position: fixed !important;
  top: 0;
  width: 100% !important;
}

.lightbox .lb-image{
	border: 0;
}
.lb-dataContainer{
    position: absolute;
    margin: 0 auto;
    left: 50%;
    transform: translateX(-50%);
    top: 8px;
    padding-right: 10px;
    z-index: 11;
}

.lb-data .lb-close{
	opacity: 1;
}
 

.lb-nav a.lb-prev, .lb-nav a.lb-next {
  opacity: 1;
}
.lb-nav a.lb-prev{
	background: url(../../vendors/lightbox2/src/images/prev.png) left 97% no-repeat;
}
.lb-nav a.lb-next{
	background: url(../../vendors/lightbox2/src/images/next.png) right 97% no-repeat;
}
body.lb-disable-scrolling header, body.lb-disable-scrolling main, body.lb-disable-scrolling footer{
	filter: blur(3px);
}

.lb-image {
   margin: auto;
}

/* Pages */

/* About */
.mission .container-about{
	max-width: 1200px;
}

/* Services */
.mission .container-services{
	max-width: 1200px;
}

/* Experience */
.mission .container-experience{
	max-width: 1020px;
}

/* Portfolio */

.portfolio{
	padding: 30px 0 70px 0;
}
.portfolio img{
	width: 100%;
}
.portfolio-item{
	font-family: OpenSans, Arial, Helvetica, sans-serif;
    font-size: 17px;
    color: #fff;
    text-transform: uppercase;
}
.portfolio-item:not(:first-of-type) img{
	border-top: 3px solid #0670AC;
}
.portfolio-item h1{
	font-size: 17px;
	font-weight: bold;
	line-height: normal;
	margin-bottom: 5px;
}
.portfolio-item p{
	margin-bottom: 5px;
	line-height: 1.6;
}

/* Contact */
.contact form{
	
}

.mission .container-contact{
	max-width: 1200px;
}

.contact-item{
	font-family: OpenSans, Arial, Helvetica, sans-serif;
    font-size: 16px;
    color: #fff;
    text-transform: uppercase;
}

.contact-item h1{
	font-size: 17px;
	font-weight: bold;
	line-height: normal;
	margin-bottom: 5px;
}
.contact-item p{
	margin-bottom: 5px;
	line-height: normal;
}

/* Footer */
.footer-text{
}
.sticky-footer{
	background-color: #1C1C1C;
}

/* Responsive styles, which override the base styles at specific sizes */

/* Phones */
@media(min-width: 576px){
	.maintext {
		font-size: 18px;
	}
}

/* Tablets */
@media(min-width: 768px){
	.heading {
	  font-size: 24px;
	}
	.heading-sm {
	  font-size: 16px;
	}
	.maintext {
		font-size: 16px;
	}
}

/* Laptops */
@media(min-width: 992px){
	.heading {
	  font-size: 28px;
	}
	.heading-sm {
	  font-size: 16px;
	}
	.maintext {
		font-size: 18px;
	}
	.portfolio{
		padding: 30px 15px 70px 15px;
	}
	.padding-primary {
		padding: 40px 0 60px 0;
	}
	.portfolio-item{
		font-size: 16px;
	}
	.portfolio-item h1{
		font-size: 16px;
	}
	.portfolio img{
		max-width: 100%;
		width: initial;
	}
	.portfolio-item:not(:first-of-type) img{
		border-top: none;
	}
	.nav-portfolio-mobile{
		font-size: 21px;
	}
}

/* Desktops */
@media(min-width: 1200px){
	.portfolio{
		padding: 60px 100px 110px 100px;
	}
}

/* Extra large */
@media (min-width: 1600px) {
	.container.container-lg {
		max-width: 1500px;
	}
}