@charset "utf-8";
html {
	height: 100%;
}

* {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	text-decoration: none;
	list-style: none;
	font-family: inherit;
}

body {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 0;
	margin: 0;
	font-size: 1rem;
	line-height: 1.5em;
	color: #444;
	font-family: 'Helvetica Neue', helvetica, sans-serif, arial, serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

footer{
	margin-top: auto;
}

:focus {
	outline: 0;
}

ol,
ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

table {
	border-collapse: separate;
	border-spacing: 0;
}

caption,
th,
td {
	text-align: left;
	font-weight: normal;
}

a {
	color: inherit;
	text-decoration: none;
	outline: none;
}

a:hover {
	color: inherit;
	text-decoration: none;
}

a:hover,
a:focus {
	outline: none;
	text-decoration: none;
	color: inherit;
}

button:focus {
	outline: none;
}

main {
	flex: 1;
}

.small-text {
	font-size: .8rem;
}

.bg-gray {
    background: #f6f6f6;
    border-top: 1px solid #ededed;
    border-bottom: 1px solid #ededed;
}

figure {
	position: relative;
}

figure img {
    width: 100%;
    border-radius: 5px;
    box-shadow: 0px 30px 50px -20px #0000006b;
}

figure a {
	position: absolute;
	top: 0%;
	left: 0%;
	right: 0%;
	bottom: 0%;
	display: flex;
	align-items: center top;
	background: transparent;
	z-index: 1;
	transition: all .1s ease-in-out .2s;
}

figcaption {
	padding: 1rem .5rem;
}

figcaption span {
	display: block;
	padding: 5px 0;
	text-align: left;
}

figure > div {
	box-shadow: 0px 60px 50px -40px rgba(0, 0, 0, 0.4);
	margin-bottom: 1rem;
}

figure.img2 figcaption,
figure.img3 a span {
	width: 100%;
	font-size: 24px;
	transform: translate(-30%);
	opacity: 0;
	transition: all .2s ease-in-out .1s;
}

figure.img2 figcaption i,
figure.img3 span i {
	padding-left: 20px;
	font-size: 28px;
	vertical-align: middle;
}

figcaption .item-title {
	font-size: 18px;
	font-weight: bold;
}

figure.img2 a:hover,
figure.img3 a:hover {
	background: rgba(255, 255, 255, 0.9);
}

figure.img2 a:hover figcaption,
figure.img3 a:hover span {
	transform: translateY(0%);
	opacity: 1;
}

abbr[data-original-title],
abbr[title] {
	border: none;
}

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

.text-right {
	text-align: right;
}

.link {
	color: #569fde;
}

.review {
	display: none;
}

.mp-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem;
}

.logo-box .mp-grid {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 1rem;
    padding: 1rem 0;
}

.masonry,
.masonry-3 {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 2rem;
}

.work {
    display: grid;
    grid-template-columns: 1fr;
    background: #f2f2f2;
    padding: 2rem;
    border-radius: 5px;
    text-align: center;
    border: 1px solid #ededed;
}

.ratio-1-1 {
	position: relative;
	border-radius: 5px
}

.ratio-1-1:before {
	content: "";
	display: block;
	padding-top: 75%;
}

.service {
	display: inline-block;
	padding: 1px 8px;
	margin: 5px 1px;
	background: #444;
	color: #eee;
	border-radius: 4px;
	border: 1px solid #444;
	box-shadow: 1px 1px 1px 1px #ccc;
	font-size: .8em;
}

.market {
	/* display: inline-block;
	padding: 1px 8px;
	margin: 5px 1px;
	background: #444;
	color: #eee;
	border-radius: 4px;
	border: 1px solid #444;
	box-shadow: 0px 0px 3px 3px #e5e5e5;
	font-size: .8em; */

	display: inline-block;
    padding: 1px 8px;
    border-radius: 4px;
    font-size: .9em;
}

.market:hover {
	color: #eee;
}

.service-area {
	display: inline-block;
	padding: 8px 20px;
	box-sizing: border-box;
	background: #eee;
	font-size: .9em;
}

.gallery-view .az-row {
	align-items: inherit;
}

.gallery .row {
	margin-bottom: 20px;
}

.item-container figcaption {
	box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.09), 0px 65px 50px -45px #888888;
}

p {
	padding:1rem 0;
}

.az-row {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.padding-0 {
	padding: 0
}

.spacer-10,
.spacer-20,
.spacer-30,
.spacer-40,
.spacer-50{
	margin: 10px 0;
	border-color: transparent !important;
}

.spacer-10 {
	margin: 10px 0;
}

.spacer-20 {
	margin: 20px 0;
}

.spacer-30 {
	margin: 30px 0;
}

.spacer-40 {
	margin: 40px 0;
}

.spacer-50 {
	margin: 50px 0;
}


.yellow {
	color: #fb992a
}

section {
	padding: 15px 0;
}

section.clip {
	height: 450px;
	padding: 0;
	margin-bottom: 5px;
	box-shadow: 0 2px 5px #aaa;
}

section.clip>div {
	height: 450px;
	display: none;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	/*border-bottom: 1px solid #000;*/
}

section.content-even {
	background-color: #222;
	color: #aaa;
	font-size: 1.1rem;
	line-height: 1.8rem;
}

section.content-odd {
	background-color: #fff;
	border-bottom: 1px solid #e8e8e8;
}

section.gallery .item {
	display: block;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	max-width: 555px;
	height: 370px;
	box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.25);
	border-radius: 4px;
}

.featured-text {
	box-shadow: 0 0 8px #444;
	background: #444;
	opacity: .8;
	color: #eee;
}

.featured-text p {
	color: #eee
}

/* Menu */

.logo-box .fa-phone {
	padding: 1rem;
}

.logo-box .mp-grid > :last-child {
	text-align: right;
}

.license {
	font-size: 1.2rem;
	font-family: monospace;
}

/*
.address .wrap>* {
	flex: auto;
	flex-grow: 0;
	padding: 20px;
	text-align: right;
	border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.address .wrap.az-row {
	flex-wrap: wrap;
}

.address .wrap.az-row>:first-child {
	padding-left: 0;
	margin-right: auto;
	border: inherit;
}

.col.az-row {
	align-items: flex-start
}

.col i {
	padding-right: 10px;
}
 */


.logo {
	width: auto;
	height: 80px;
}

.menu {
	background: #262626;
}

/* .address.bg-menu-small {
	padding: 10px 0;
	font-size: 20px;
	color: #fff;
	background: #2f2e2d;
}

.menu .az-row > * {
	flex: auto;
	flex-grow: 0;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
	border-right: 1px solid #3a3a3a;
} */

.phone {
	font-size: 20px
}

.menu .az-row>:first-child {
	border-left: 1px solid #3a3a3a;
}
.menu .az-row>li {
	border-right: 1px solid #3a3a3a;
}

/*
.menu .az-row>:last-child {
	margin-left: auto;
	border: inherit;
}
*/

.menu a,
.menu span {
	display: block;
	color: #aaa;
}

.menu span {
	padding: 20px;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: bold;
}

.menu i {
	font-size: 28px;
	display: none;
}

.menu a:hover,
.menu a.active {
	background: #333;
}
.menu a:hover span,
.menu a.active span {
	color: #ddd;
}

.vertical.menu-small {
	top: 10px;
}

.vertical a {
	display: block;
	padding: 20px 0;
	text-align: center;
	font-size: 16px;
	color: #fff;
}

.vertical i {
	display: none;
}

.vertical a.current {
	color: #fff;
	border-bottom: none;
	border-left: 3px solid;
}

.btn-menu {
	padding: 5px 10px;
	cursor: pointer;
	border: 1px solid #eee;
	border-radius: 4px;
}

.md-close {
	display: none;
}

article {
	padding: 20px 0;
}

.title-header {
/* 	text-shadow: 2px 2px #dddddd; */
	font-weight: bold;
	padding-bottom: 1rem;
	font-size: 2rem;
}


.work .sub-heading {
	font-size: initial;
	color: #444;
}

.title-header2 {
	padding: 10px;
}

.bg-quote {
	padding: 6px 30px;
	font-size: 20px;
	background: -webkit-linear-gradient(rgba(255, 211, 124, 0.76), rgb(246, 144, 29));
	background: linear-gradient(rgba(255, 211, 124, 0.76), rgb(246, 144, 29));
	color: #444;
	border: 1px solid #fb7;
}

.c-white {
	color: #fff;
}

.bg-white {
	background: #fff
}

.red {
	color: #d50002;
}

.bg-gray {
	background: #f2f2f2;
}

.quote {
	display: flex;
	flex-flow: row wrap;
	padding: 10px 0;
	border-radius: 10px;
	font-size: 24px;
}

.quote>* {
	flex: 1;
	width: 50%;
	text-align: center;
}


.quote .quote-title {
	flex: 1 auto;
	width: 100%;
}

.quote .btn {
	margin: 10px;
	background: #5f5f5f;
	color: #fff;
}

.rating {
	padding: 5px 10px;
	height: unset;
	line-height: 15px;
	font-size: 0.9em;
	color: #000;
	margin-left: auto;
	/* margin-right: auto; */
}

.bunner-quote {
	margin-bottom: 40px;
	cursor: pointer;
}

.bunner-quote ul {
	display: inline-block;
	min-width: 220px;
	padding: 20px;
	box-shadow: 0px 0px 100px rgba(0, 0, 0, 0.15), 0px 30px 40px -30px rgba(0, 0, 0, 0.4);
}

.bunner-quote span {
	font-size: 18px;
}

.bunner-quote i {
	font-size: 45px;
	padding-bottom: 10px;
}

/*
.work {
	text-align: center;
}

.work .last {
	border-left: 1px solid #c3c4c5;
}

.work a {
	display: block;
	min-height: 250px;
	padding: 20px 5px 10px;
}

.work a:hover {
	background: #fff;
}

.work>.row {
	box-shadow: 0 3px 8px #aaa;
	border-radius: 8px;
}

.slides>.row {
	box-shadow: 0 3px 8px #000;
	border-radius: 8px;
}

.work>.row>div,
.slides>.row>div {
	min-height: 250px;
	padding: 10px;
	background: #efefef;
}

.work>.row>div:first-child,
.slides>.row>div:first-child {
	border-radius: 8px 0 0 8px;
	border-right: 1px solid #777;
}

.work>.row>div:last-child,
.slides>.row>div:last-child {
	border-radius: 0 8px 8px 0;
}
 */

.icon {
	display: inline-block;
	max-width: 250px;
}

.service>.row {
	background: #f5f5f5;
}

.service a {
	display: block;
	padding-bottom: 40px;
}

.service .title-header {
	margin-bottom: 0;
	padding: 10px 0;
}

.service .sub-heading {
	padding: 10px;
}

.service .sub-heading span {
	display: block;
	text-align: left;
	padding: 20px 5px 10px;
}

.service .sub-heading span i {
	padding-left: 10px;
}

.service a:hover .title-header,
.service a:hover .sub-heading {
	background: #fff;
}

.service a:hover .sub-heading span {
	color: #C01A2C;
}

.bg-residential {
	position: relative;
	padding: 100px 0;
	background: url(../img/residencial-bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
}

.bg-commercial {
	position: relative;
	padding: 100px 0;
	background: url(../img/commercial-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
}

.bg-commercial2 {
	position: relative;
	padding: 100px 0;
	background: url(../img/commercial-bg2.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 60%;
}

.about-section {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 1rem;
}

.about-section article {
	padding: 1rem;
}

.about-residential .title-header,
.about-exterior .title-header {
	font-size: 60px;
}

.bg-exterior {
	position: relative;
	padding: 100px 0;
	background: url(../img/exterior-bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 100%;
}

.promo-page .title-header {
	font-family: Roboto;
}

.promo-page ul {
	font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	background: #fff;
	padding: 20px 0 20px 20px;
	background: #fffce3;
	box-shadow: 0px 2px 10px 0 rgba(0, 0, 0, 0.4);
}

.promo-page ul li {
	border-bottom: 1px solid #eee;
}

.promo-page span.label+span {
	color: #444;
	font-weight: 300;
}

.promo-page span {
	font-size: 16px;
	padding: 4px 0;
	text-align: left;
	color: #555;
	display: inline-block;
}

.promo-page .label {
	width: 120px;
	letter-spacing: .5px;
}

.promo-page .offer {
	font-size: inherit;
	color: #aaa;
	margin-right: 10px;
}

.promo-page .price {
	font-weight: 700 !important;
}

.promo-page .limited-time {
	font-weight: 300 !important;
	margin-right: 5px;
	border: 1px solid #555;
	padding: 4px 8px;
	border-radius: 3px;
	background: #555;
	color: #eee;
}


.gallery-header .az-row {
	align-items: inherit;
}

.gallery-header .az-row>* {
	flex: 1;
	padding: 10px;
}

.gallery-header .az-row>.last {
	flex: 1.8;
}

.gallery-header .row {
	margin: 0;
}

.gallery-header .row>* {
	margin-bottom: 40px;
}

.gallery-description>div {
	display: flex;
	flex-flow: column;
	justify-content: center;
	height: 100%;
}

.breadcrumb-header .az-row>* {
	flex: 1;
}

.breadcrumb-header li {
	font-size: 18px;
	padding-right: 20px;
}

.breadcrumb-header li i {
	padding-left: 10px;
}

.breadcrumb-header .title-header {
	text-align: left;
}

.slider {
	overflow: hidden;
}

footer {
	padding: 2rem 0 1rem;
	color: #999;
	font-size: .8rem;
	background: #2f2e2d;
}

footer .mp-grid {
	display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 0 2rem;
}

/**************** Carousel Gallery  ************** */

.carousel-gallery {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}

.carousel-gallery> :first-child,
.carousel-gallery> :last-child {
	flex: 1 1 auto;
	max-width: 55px;
}

.carousel-gallery> :first-child {
	padding-right: 15px;
}

.carousel-gallery> :last-child {
	padding-left: 15px;
}

.carousel-gallery>.carousel-inner {
	flex: 1 1 80%;
}

.carousel-gallery .control {
	display: flex;
	height: 100%;
	align-items: center;
}

.carousel-gallery .control:hover {
	box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.05);
}

.carousel-gallery .control>i {
	flex: 1;
	text-align: center;
	font-size: 30px;
}


.contact-container {
	display: flex;
	align-items: center;
}

.contact-container>div {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.contact-container>div>div {
	font-size: 18px;
	width: 280px;
	text-align: left;
}

.contact-container>div>div>span {
	width: 65px;
	display: inline-block;
	flex: 1 1 auto;
	max-width: 80px;
}

.contact-container>div>* {
	text-align: center;
	padding-bottom: 20px;
	color: #333;
}


.contact-box {
	border: 1px solid #c3c4c5;
	background: #fff;
	padding: 0 30px 30px;
	border-radius: 8px;
	box-shadow: -20px 19px 20px 0px rgba(0, 0, 0, 0.5);
}

.contact-box h2 {
	border-bottom: 2px solid #888;
	padding-bottom: 10px;
}


/* ======== RESPONSIVE =========*/

@media screen and (max-width: 45em) {}

@media screen and (max-height: 35em) {}

@media screen and (max-width: 767px) {
	h1 {
		font-size: 28px !important;
	}

	h2 {
		font-size: 20px;
	}
/*
	header {
		display: flex;
		flex-direction: column-reverse;
	}
*/
	.logo-box {
		background: #fff;
		z-index: 10;
	}

	.logo-box .mp-grid {
		grid-template-columns: 1fr;
		padding: 1rem;
	}

	.logo-box .mp-grid >:first-child {
		display: grid;
		grid-template-columns: 1fr auto;
		align-items: center;
	}

	nav {
		transition: all .3s;
	}

	nav {
		height:0;
		transform: translateY(-100%);
		overflow: hidden;
	}

	header.open nav {
		height: auto;
		transform: translateY(0);
	}

	section {
		padding: 1rem;
	}

	.spacer-40 {
		margin: 10px 0 !important;
	}

	.logo {
		height: 60px;
	}

	.col.az-row {
		justify-content: center;
	}

	.bg-residential,
	.bg-exterior {
		padding: 0;
	}

	.about-residential .title-header,
	.about-exterior .title-header {
		text-align: left;
	}

	.quote {
		flex-direction: column;
	}

	.quote>* {
		width: auto;
	}

	.bg2 {
		padding: 10px 0;
	}

/* 	.work>.row>div:first-child,
	.slides>.row>div:first-child {
		border-radius: 0;
		border-right: none;
	}

	.work>.row>div,
	.slides>.row>div {
		min-height: 100%;
		padding: 10px;
		background: transparent;
	}

	.work>.row,
	.slides>.row {
		box-shadow: none;
		border-radius: 0;
	} */

	.slides img {
		border: 10px solid #fff;
		border-radius: 5px;
	}

	.work a {
		min-height: 300px;
		box-shadow: 0 3px 8px #888;
		border-radius: 8px;
	}

	.work {
		padding-bottom: 20px;
	}

	.work > :first-child {
		margin-bottom: 2rem;
	}

	.breadcrumb-header {
		padding: 20px 0;
	}

	.breadcrumb-header .az-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.breadcrumb-header .az-row>* {
		padding: 0 10px;
	}

	.breadcrumb-header li {
		display: block;
		padding-bottom: 10px;
	}

	.breadcrumb-header .title-header {
		margin-top: 0;
	}

	.slider-box,
	.slider-box .mp-container,
	.slider-box .slider {
		padding: 0;
	}

	.slider .master-slider {
		border: 0;
		border-radius: 0;
	}

	.gallery-header {
		padding-top: 20px;
	}

	.gallery-header .az-row,
	.gallery-view .az-row {
		flex-direction: column;
	}

	.gallery-header .gallery-description,
	.gallery-view .about-view {
		order: 2;
		padding: 20px;
	}

	.gallery-view .about-view {
		box-shadow: none;
	}

	.gallery-description .sub-heading {
		padding: 20px 0;
		text-align: left;
	}

	.gallery-view .az-row>*,
	.gallery-header .row>* {
		padding: 0px;
	}
}


@media (min-width: 768px) {
	nav {
		top: 0;
		right: 0;
		left: 0;
		border-bottom: 8px solid #fdad3a;
		z-index: 100;
	}

	nav ul {
		display: flex;
	}

	.review {
		display: block;
		padding: 1px 0;
		background: #f6f6f6;
		border-bottom: 1px solid #ededed;
	}

	.review > div {
		display: flex;
		align-items: center;
	}

	.rating .stars {
		color: orange;
	}

	.btn-menu {
		display: none;
	}

	section {
		padding: 20px 0;
	}


	.masonry {
		grid-template-columns: repeat(2, 1fr);
	}

	.masonry-3 {
		grid-template-columns: repeat(3, 1fr);
	}

	.work {
		grid-template-columns: 1fr 1fr;
	}

	.work > :first-child {
		border-right: 1px solid #cec9c9;
	}

	.about-section {
		grid-template-columns: 1fr 1.5fr;
	}

	.breadcrumb-header .az-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.breadcrumb-header .az-row>* {
		padding: 0 10px;
	}

	.breadcrumb-header li {
		display: block;
		padding-bottom: 10px;
	}

	.breadcrumb-header .title-header {
		margin-top: 0;
	}

	.gallery-header .gallery-description,
	.gallery-view .about-view {
		order: 2;
		padding: 20px;
	}

	.gallery-view .about-view {
		box-shadow: 0px 30px 70px -10px rgba(0, 0, 0, 0.18);
	}


}

@media (min-width: 992px) {
	section {
		padding: 3rem 0;
	}

	.gallery-view .az-row {
		flex-direction: row;
	}

	.gallery-view .about-view {
		order: inherit;
		padding: 0 20px;
		box-shadow: -30px 30px 70px -10px rgba(0, 0, 0, 0.18);
	}

	.breadcrumb-header .az-row {
		align-items: baseline;
		flex-direction: row;
	}

	.breadcrumb-header .az-row>* {
		padding: 0;
	}

	.breadcrumb-header li {
		display: inline-block;
		padding-bottom: 0;
	}

	.gallery-header .az-row,
	.gallery-view .az-row {
		flex-direction: row;
	}

	.gallery-header .gallery-description,
	.gallery-view .about-view {
		order: inherit;
		padding: 20px;
	}

	.gallery-description .sub-heading {
		padding: 20px 10%;
		text-align: justify;
	}

}

@media (min-width: 1200px) {
	.breadcrumb-header .az-row>.last {
		flex: 1.9;
	}


}
