/* Custom styles */

body {
	font-family: 'Avenir_LT_35_Light';
	font-weight:400;
	font-size:16px;
	color:#333;
}

p:empty,
p:last-child {
	margin-bottom:0;
}

a,
a:hover,
.button,
.button:hover {
	-moz-transition:all 0.2s ease-in-out;
	-webkit-transition:all 0.2s ease-in-out;
	-ms-transition:all 0.2s ease-in-out;
	-o-transition:all 0.2s ease-in-out;
	transition:all 0.2s ease-in-out;
}

a {
	color: #333;
}

a:hover {
	color:#333;
	text-decoration:underline;
}

.btn-primary {
	color: #fff;
	background-color: #8a888b;
	border-color: #8a888b;
}

.btn-primary:hover {
	color: #8a888b;
	background-color: #fff;
	border-color: #8a888b;
}

.btn-primary.focus, 
.btn-primary:focus,
.btn-secondary.focus, 
.btn-secondary:focus {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.form-control:focus, .wpcf7 .wpcf7-validation-errors:focus, .wpcf7 input:focus[type="color"], .wpcf7 input:focus[type="date"], .wpcf7 input:focus[type="datetime-local"], .wpcf7 input:focus[type="datetime"], .wpcf7 input:focus[type="email"], .wpcf7 input:focus[type="file"], .wpcf7 input:focus[type="month"], .wpcf7 input:focus[type="number"], .wpcf7 input:focus[type="range"], .wpcf7 input:focus[type="search"], .wpcf7 input:focus[type="submit"], .wpcf7 input:focus[type="tel"], .wpcf7 input:focus[type="text"], .wpcf7 input:focus[type="time"], .wpcf7 input:focus[type="url"], .wpcf7 input:focus[type="week"], .wpcf7 select:focus, .wpcf7 textarea:focus {
	border-color: #ced4da;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.navbar {
	padding:0;
}

.header-menu .menu,
ul.slick-dots {
	padding:0;
	margin:0;
}

.header-menu .menu li,
ul.slick-dots li {
	list-style-type:none;
	display:inline-block;
	padding:0;
}

.header-menu .menu li {
	padding:0 10px;
}

.header-menu .menu li a {
	display:block;
	padding:0;
	font-size:12px;
	text-transform:uppercase;
	color:#555;
	text-decoration:none;
	position:relative;
}

.header-menu .menu li a:after {
	content:'';
	position:absolute;
	left:0;
	opacity:0;
	visibility:hidden;
	bottom:-5px;
	display:block;
	height:1px;
	background-color:#333;
	width:100%;
	-moz-transition:opacity 0.2s ease-in-out;
	-webkit-transition:opacity 0.2s ease-in-out;
	-ms-transition:opacity 0.2s ease-in-out;
	-o-transition:opacity 0.2s ease-in-out;
	transition:opacity 0.2s ease-in-out;
}

.header-menu .menu li.current-menu-item a:after,
.header-menu .menu li a:hover:after {
	opacity:1;
	visibility:visible;
	-moz-transition:opacity 0.2s ease-in-out;
	-webkit-transition:opacity 0.2s ease-in-out;
	-ms-transition:opacity 0.2s ease-in-out;
	-o-transition:opacity 0.2s ease-in-out;
	transition:opacity 0.2s ease-in-out;
}

.header-left .menu li:first-child a {
	padding-left:0;
}

.header-right .menu li:last-child a {
	padding-right:0;
}


.navbar-brand {
	padding:0;
	margin:0 auto;
	max-width:222px;
}

.wrapper {
	padding:0;
}

.site-footer {
	padding:50px 0 30px;
	font-size:14px;
}

.site-footer p span {
	display:inline-block;
	margin:0 10px;
}

.site-footer a[href^="tel"],
.site-footer span:last-child a {
	text-decoration:underline;
}

/* Front page */
.front-page .hero-slide {
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
}

.front-page .hero-slide img {
	visibility:hidden;
	opacity:0;
}

.front-page .section-1 {
	text-align:center;
	padding:65px 0 20px;
}

.front-page .section-1 .entry-content img {
	margin-bottom:35px;
}

.front-page .section-1 .entry-content h1 {
	font-size:20px;
	margin-bottom:25px;
}

.front-page .site-footer {
	padding:10px 0 20px;
}

/* Contact page */
.contact-page .gform_wrapper .top_label .gfield_label {
	display:none;
}

.contact-page .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.contact-page .gform_wrapper textarea.medium {
	font-size: 15px;
	padding: 15px;
	line-height:1.2;
}

.contact-page .gform_wrapper .top_label input.medium,
.contact-page .gform_wrapper textarea.medium {
	width:100%;
	max-width:360px;
	border:1px solid #cacaca;
	background-color:#eee;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	border-radius:5px;
}

.contact-page .gform_wrapper textarea.medium {
	max-width:100%;
}

.contact-page .gform_wrapper .top_label input.medium::-moz-placeholder,
.contact-page .gform_wrapper textarea.medium::-moz-placeholder {
	opacity:1;
}

.contact-page .gform_wrapper .top_label input.medium::-webkit-input-placeholder,
.contact-page .gform_wrapper textarea.medium::-webkit-input-placeholder {
	opacity:1;
}

.contact-page .gform_wrapper .gform_footer input.button {
	padding:15px;
	width:100%;
	max-width:120px;
	text-align:center;
	text-transform:uppercase;
	font-size:15px;
	color:#fff;
	background-color:#8a888b;
	border:1px solid #8a888b;
	line-height:1;
	margin:0;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	border-radius:5px;
}

.contact-page .gform_wrapper .gform_footer input.button:hover,
.contact-page .gform_wrapper .gform_footer input.button:focus {
	background-color:#fff;
	color:#8a888b;
}

.contact-page .gform_wrapper .gform_footer {
	padding: 0;
}

.contact-page .gform_wrapper ul.gform_fields li.gfield {
	padding-right:0;
}

.contact-page .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
	max-width: 100% !important;
}

.contact-page .section-2 #map {
	height:600px;
}

/* Portfolio page */
body:not(.front-page).portfolio-page .section-1,
body:not(.front-page).single-portfolio .section-1 {
	padding-bottom:0;
}

.single-portfolio .section-1 .container > .row > div:first-child {
	position:relative;
}

.single-portfolio .section-1 .container > .row > div:first-child:after {
	content:'';
	width:1px;
	height:100%;
	position:absolute;
	display:block;
	right:15px;
	top:0;
	background-color:#333;
}

.portfolio-page .portfolio-item {
	overflow:hidden;
	position:relative;
}

.portfolio-page .portfolio-item .overlay {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	background-color:rgba(0,0,0,0.50);
	color:#fff;
	font-size:18px;
	left:-999999px;
	visibility:hidden;
	opacity:0;
	-moz-transition: opacity 0.2s ease-in-out;
	-webkit-transition: opacity 0.2s ease-in-out;
	-ms-transition:opacity 0.2s ease-in-out;
	-o-transition: opacity 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out;
}

.portfolio-page .portfolio-item a:hover .overlay {
	opacity:1;
	visibility:visible;
	left:0;
	-moz-transition: opacity 0.2s ease-in-out;
	-webkit-transition: opacity 0.2s ease-in-out;
	-ms-transition:opacity 0.2s ease-in-out;
	-o-transition: opacity 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out;
}

.portfolio-page .portfolio-item .overlay .d-flex {
	height:100%;
}

.portfolio-page .portfolio-item .overlay span {
	text-transform:uppercase;
}

.portfolio-page .portfolio-item img {
	-moz-transition: -moz-transform 0.2s ease-in-out;
	-webkit-transition: -webkit-transform 0.2s ease-in-out;
	-ms-transition: -ms-transform 0.2s ease-in-out;
	-o-transition: -o-transform 0.2s ease-in-out;
	transition: transform 0.2s ease-in-out;
}

.portfolio-page .portfolio-item a:hover img {
	-moz-transform:scale(1.1,1.1);
	-webkit-transform:scale(1.1,1.1);
	-ms-transform:scale(1.1,1.1);
	-o-transform:scale(1.1,1.1);
	transform:scale(1.1,1.1);
	-moz-transition: -moz-transform 0.2s ease-in-out;
	-webkit-transition: -webkit-transform 0.2s ease-in-out;
	-ms-transition: -ms-transform 0.2s ease-in-out;
	-o-transition: -o-transform 0.2s ease-in-out;
	transition: transform 0.2s ease-in-out;
}

.portfolio-page .grid {
	margin-right:-15px;
}

.portfolio-page .grid-sizer,
.portfolio-page .grid-item {
	width:33.33%;
}

.portfolio-page .grid-item {
	width:100%;
	max-width:33.33%;
	padding-right:15px;
	margin-bottom:15px;
}

/* In-progress page */
.in-progress-page .entry-content {
	padding-bottom:60px;
	text-align:center;
}

.in-progress-page .grid-item {
	padding:0 15px;
	margin-bottom:30px;
}

.in-progress-page .portfolio-item .overlay {
	left:0;
	visibility:visible;
	opacity:1;
	background-color:transparent;
	text-align:center;
}

/* Single portfolio */
.single-portfolio .site-footer {
	padding-top:30px;
}

.single-portfolio .page-title {
	font-size:20px;
	font-weight:400;
	text-transform:uppercase;
	margin-bottom:30px;
}

.single-portfolio .badge {
	padding:0;
}

.single-portfolio .badge div:not(:last-child) {
	margin-bottom:30px;
}

.single-portfolio .pagination {
	padding:35px 0;
}

.single-portfolio .pagination a {
	display:inline-block;
	text-transform:uppercase;
	font-size:18px;
	color:#555;
	text-decoration:none;
}

.single-portfolio .gallery-wrap .row .row div[class^="col-"] {
	margin-bottom:30px;
}

.single-portfolio .gallery-wrap + .pagination {
	padding:0;
}

/* What we love */
.what-we-love-page .grid-sizer {
	width:25%;
}

.what-we-love-page .grid {
	overflow:hidden;
	margin-right:-15px;
}

.what-we-love-page .grid-item {
	float:left;
	width:100%;
	max-width:25%;
	padding-right:15px;
	margin-bottom:15px;
	-moz-transition: -moz-transform 0.2s ease-in-out;
	-webkit-transition: -webkit-transform 0.2s ease-in-out;
	-ms-transition: -ms-transform 0.2s ease-in-out;
	-o-transition: -o-transform 0.2s ease-in-out;
	transition: transform 0.2s ease-in-out;
}

.what-we-love-page .grid-item a {
	color:#fff;
	text-decoration:none;
	display:block;
	position:relative;
	cursor:auto;
}

.what-we-love-page .grid-item .image-caption {
	position:absolute;
	height:100%;
	width:100%;
	z-index:99;
	top:0;
	padding:0 15px;
	background-color:rgba(102,102,102,0.75);
	opacity:0;
	visibility:hidden;
	-moz-align-items:center;
	-webkit-align-items:center;
	align-items:center;
	-moz-justify-content:center;
	-webkit-justify-content:center;
	justify-content:center;
	-moz-transition:opacity 0.2s ease-in-out;
	-webkit-transition:opacity 0.2s ease-in-out;
	-ms-transition:opacity 0.2s ease-in-out;
	-o-transition:opacity 0.2s ease-in-out;
	transition:opacity 0.2s ease-in-out;
}

.what-we-love-page .grid-item a:hover .image-caption {
	opacity:1;
	visibility:visible;
	-moz-transition:opacity 0.2s ease-in-out;
	-webkit-transition:opacity 0.2s ease-in-out;
	-ms-transition:opacity 0.2s ease-in-out;
	-o-transition:opacity 0.2s ease-in-out;
	transition:opacity 0.2s ease-in-out;
}

.what-we-love-page .grid-item .image-caption span {
	display:block;
	text-align:center;
	-moz-align-self:center;
	-webkit-align-self:center;
	align-self:center;
}

.what-we-love-page .grid-item .image-caption span.image-title {
	text-transform:uppercase;
	margin-bottom:10px;
}

/* Team page */
body:not(.front-page).team-page .section-1 {
	padding-bottom:0;
}

.team-page .parent-row {
	margin-bottom:15px;
	padding-bottom:15px;
	border-bottom:1px solid #e9e7e6;
}

.team-page .parent-row:last-child {
	margin-bottom:0;
}

.team-page .row img {
	width:100%;
}

.team-page .entry-content {
	padding-top:15px;
	padding-top:0;
}

.team-page .entry-content .member-name {
	text-transform:uppercase;
	font-size:20px;
	margin-bottom:5px;
	line-height:1;
}

.team-page .entry-content .member-title {
	font-size:18px;
	text-transform:none;
}

/* Media page */
.media-page .section-1 .entry-content {
	text-align:center;
}

.media-page .section-1 .entry-content .media-item {
	margin-bottom:35px;
}

.media-page .section-1 .entry-content .media-item span {
	display:block;
	text-transform:uppercase;
	margin-top:15px;
}

/* Thank you page */
body:not(.front-page).thank-you-page .section-1  {
	padding:175px 0;
	text-align:center;
}

.thank-you-page .section-1 .entry-content h1 {
	font-size:38px;
	font-weight:400;
	text-transform:uppercase;
	margin-bottom:25px;
}

.thank-you-page .section-1 .entry-content .btn {
	text-transform:uppercase;
}

.featured-accordion {
	color:#555;
}

.featured-accordion .accordion-item {
	padding:15px 0;
	border-top:1px solid #dbdbdb;
}

.featured-accordion .accordion-item:last-child {
	border-bottom:1px solid #dbdbdb;
}

.featured-accordion .accordion-item .accordion-title a {
	font-size:16px;
	display:block;
	margin-bottom:0;
	cursor:pointer;
	color:#555;
	text-decoration:none;
}

.featured-accordion .accordion-item .accordion-content {
	display:none;
	font-size:14px;
}

.featured-accordion .accordion-item.open .accordion-title {
	margin-bottom:10px;
}

body:not(.front-page).error404 .section-1 {
	padding:175px 0;
}

body:not(.front-page) .section-1 {
	padding:55px 0;
}

.side-slider {
	max-width:450px;
}


.hidden {
	display:none;
}

ul.slick-dots {
	text-align:center;
	position:absolute;
	bottom:20px;
	width:100%;
	z-index:99;
}

ul.slick-dots li {
	line-height:1;
	margin:0 5px;
}

ul.slick-dots li button {
	padding:0;
	width:10px;
	height:10px;
	text-indent:-99999px;
	overflow:hidden;
	border:none;
	background-color:#fff;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	border-radius:50%;
}

ul.slick-dots li.slick-active button {
	background-color:#666;
}

@media (max-width:1199px) {
	.single-portfolio .section-1 .container > .row > div:first-child:after {
		right:0;
	}
}

@media (max-width:991px) {
	.navbar-expand-md > .container {
		-moz-flex-wrap:wrap;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-moz-justify-content:center;
		-webkit-justify-content:center;
		justify-content:center;
	}
	
	.navbar-dark .navbar-brand {
		text-align:center;
		width:100%;
		max-width:100%;
		-moz-flex:0 0 100%;
		-webkit-flex:0 0 100%;
		flex:0 0 100%;
	}
	
	.navbar-dark .navbar-brand img {
		max-width:220px;
	}
	
	.header-menu {
		margin-bottom:15px;
		width:100%;
		max-width:50%;
		-moz-flex: 0 0 50%;
		-webkit-flex: 0 0 50%;
		flex: 0 0 50%;
	}
	
	.header-menu .menu li {
		padding-left:8px;
		padding-right:8px;
	}
}

@media (max-width:767px) {
	
	.navbar-expand-md > .container {
		padding-left:15px;
		padding-right:15px;
		-moz-justify-content:space-between;
		-webkit-justify-content:space-between;
		justify-content:space-between;
	}
	
	.navbar-dark .navbar-brand {
		margin:0;
		-moz-flex: 0 0 222px;
		-webkit-flex: 0 0 222px;
		flex: 0 0 222px;
	}
	
	.header-menu {
		display:none;
	}
	
	.navbar-dark .navbar-toggler {
		border:none;
		
	}
	
	.navbar-dark .navbar-toggler-icon {
		background:none;
	}
	
	.navbar-toggler-icon {
		position:relative;
		border-bottom:5px solid #555;
	}

	.navbar-toggler-icon:before,
	.navbar-toggler-icon:after {
		content:'';
		height:5px;
		width:100%;
		display:block;
		position:absolute;
		top:0;
		background-color:#555;
		-moz-transition:-moz-transform 0.2s ease-in-out;
		-webkit-transition:-webkit-transform 0.2s ease-in-out;
		-ms-transition:-ms-transform 0.2s ease-in-out;
		-o-transition:-o-transform 0.2s ease-in-out;
		transition:transform 0.2s ease-in-out;
	}

	.navbar-toggler-icon:after {
		top:13px;
	}
	
	.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
		border-bottom-color:transparent;
	}
	
	.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before {
		top:13px;
		-moz-transform:rotate(45deg);
		-webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
		-o-transform:rotate(45deg);
		transform:rotate(45deg);
		-moz-transition:-moz-transform 0.2s ease-in-out;
		-webkit-transition:-webkit-transform 0.2s ease-in-out;
		-ms-transition:-ms-transform 0.2s ease-in-out;
		-o-transition:-o-transform 0.2s ease-in-out;
		transition:transform 0.2s ease-in-out;
	}
	
	.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after {
		-moz-transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
		-o-transform:rotate(-45deg);
		transform:rotate(-45deg);
		-moz-transition:-moz-transform 0.2s ease-in-out;
		-webkit-transition:-webkit-transform 0.2s ease-in-out;
		-ms-transition:-ms-transform 0.2s ease-in-out;
		-o-transition:-o-transform 0.2s ease-in-out;
		transition:transform 0.2s ease-in-out;
	}
	
	.navbar-nav .nav-link {
		padding:15px;
		line-height:1;
		color:#555;
		text-transform:uppercase;
	}
	
	.about-page .section-1 .entry-content {
		margin-bottom:30px;
	}
	
	.team-page .parent-row .row .row div[class^="col-sm"] {
		margin-bottom:15px;
	}
	
	.in-progress-page .portfolio-item .overlay {
		padding:0 15px;
	}
	
	.single-portfolio .section-1 .container > .row > div:first-child {
		margin-bottom:30px;
	}
	
	.single-portfolio .section-1 .container > .row > div:first-child:after {
		right:auto;
		top:auto;
		bottom:0;
		height:1px;
		left:15px;
		width:-moz-calc( 100% - 30px );
		width:-webkit-calc( 100% - 30px );
		width:calc( 100% - 30px );
	}
}

@media (max-width:568px) {
	.team-page .parent-row {
		padding-bottom: 0;
	}
	
	.team-page .parent-row .row .row div[class^="col-md"]:last-child {
		margin-bottom:15px;
	}
	
	.team-page .parent-row .row .row div[class^="col-sm"]:first-child {
		margin-bottom:0;
	}
}

@media (max-width:567px) {
	
	body {
		overflow-x:hidden;
	}
	
	.site-footer {
		text-align: center;
	}
	
	.single-portfolio .pagination > div {
		-moz-flex:0 0 100%;
		-webkit-flex:0 0 100%;
		flex:0 0 100%;
	}
	
	.single-portfolio .pagination > div:last-child {
		text-align:right;
		margin-top:30px;
	}
	
	.what-we-love-page .grid-sizer,
	.portfolio-page .grid-sizer {
		width:50%;
	}
	
	.what-we-love-page .grid-item,
	.portfolio-page .grid-item {
		max-width:50%;
	}
	
	.team-page .entry-content {
		padding-top:15px;
	}
}

