@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700;900&display=swap')

body {background: #fff; margin: 0; font:14px 'Roboto', sans-serif; color: #1B1B1B; line-height:24px; font-weight:400;}
body.account{background: #f5f5f5;}
body, html{min-height: 100%; height: 100%;}
hr{border-top-color:#dfdfdf; margin:1rem 0;}

.line{position:relative;}
.line:before{content:''; display: inline-block; width:60px; height:1px; background:#1B1B1B; margin-right: 10px;}
.text-white.line:before, .text-white .line:before{background: #FFFFFF;}
.text-danger.line:before, .text-danger .line:before{background: #c23242;}

a{text-decoration: none !important; color:#c23242}
a:hover{color:#d2958e; text-decoration:none;}
a, .header, img, :before, :after, .logo, i, span{-webkit-transition: all 0.2s linear; -moz-transition: all 0.2s linear; transition: all 0.2s linear;}

h1, h2, h3, h4, h5, .display-5{font-weight: 700;}

strong, b{font-weight: 700;}

.headerspace{height:130px;}
.home .headerspace{display: none;}
.home .header{background: transparent}
.header{width:100%; z-index:99; position:fixed; height:auto; padding:0; background: rgba(34,34,34,1) }
.header.full{background: #1b1b1b}
.logo img{max-width:180px;}
.header.full .logo img{max-width:130px;}

.topmenu ul {list-style: none; padding: 0; margin:0; width:100%;}
.topmenu li {display: inline-block; position:relative;}
.topmenu li a {color: #FFFFFF; padding:0 24px; border-bottom: 3px solid transparent; line-height: 50px; display:block; text-transform:uppercase;}
.topmenu li a:hover, .topmenu li a.active { border-color: #c23242}
#snav{display:none;}

.banner{position:relative;}
.banner:before{content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,.4)}
.banner img{height: 700px; object-fit: cover; object-position: 0 70%;}
.banner .caption{line-height:normal; position: absolute; bottom: 100px;}
.banner .caption h1{font-size:5.14em; color:#fff; font-weight:900;}

.about-sec:before{content: ''; position: absolute; background: #f4f4f4; height: 100%; width: 40%; left: 0; top: 0; z-index: -1;}

.btn{font-weight:600; text-transform:uppercase; position: relative; padding-left: 15px; padding-right: 15px; font-size: 14px; letter-spacing: 2px;    padding-top: 7px; padding-bottom: 7px;}
.btn-link {color: #d2958e; padding-left: 10px !important; padding-right: 10px !important;}
.btn-link i{font-size: 18px;}
.btn-link:hover{color: #c23242;}
.btn-lg.btn-link i{font-size: 30px;}
.btn-sm{font-size: 11px;}
.btn-lg{padding-left:40px; padding-right:40px; padding-top:15px; padding-bottom:15px; font-size: 16px;}
.btn-danger{background:#c23242; border-color: #c23242;}
.btn-outline-danger{border-color:#c23242; color: #c23242; }
.btn-outline-danger:hover{background:#c23242; border-color:#c23242;}
.btn-outline-dark { color: #1B1B1B; border-color: #1B1B1B;}
.btn-outline-dark:hover {background-color: #1B1B1B;border-color: #1B1B1B}
.btn-outline-light{border-color:#fff; color: #fff;}
.btn-outline-light:hover {background-color: #fff;border-color: #fff; color:#000;}
.btn-arrow{text-align: center;}
.btn-arrow:after{content: "\f061";
font-family: 'Line Awesome Free';
    font-weight: 900;
    font-style: normal;
    margin-left: 5px;
    margin-top: -3px;
    font-size: 18px;
    vertical-align: middle;
    display: inline-block;
}
.btn-arrow:hover:after{            
	margin-left: 15px;
	opacity: 0;
}
button:focus{outline: none;}
.rounded-5{border-radius:1rem;}
.text-danger{color: #c23242!important;}
.bg-danger{background: #c23242 !important;}
.bg-dark{background: #1b1b1b;}
.bg-light{background:#ebf1f6;}


.slick-list {margin-left: -10px!important; margin-right: -10px!important;}
.slick-slide{text-align: center; margin: 10px;}
.slick-slide .caption{font-size: 14px; color: #656565; text-align: left; padding:40px; background:#fff; text-align:center;
text-transform:uppercase;}
.slick-slide .caption h5{font-size:24px; font-weight:700; color:#000;}
.slick-slide div:nth-child(1){overflow: hidden;}
.slick-slide .caption a{letter-spacing:0;}
.slick-slide:hover div img{	-webkit-transform: scale(1.05); transform: scale(1.05);}
.slick-slide .caption span{display:block; color:#aaa; letter-spacing:2px;}
.slick-slide:hover .caption h5{color:#c23242 }
.slick-dots{padding: 0; margin-top: 20px; list-style: none;}
.slick-dots li{display: inline-block; margin: 0 5px;}
.slick-dots li button{border: 0; font-size: 0; border-radius: 100%; background: #656565; padding: 0; height: 8px; width: 8px;}
.slick-dots li.slick-active button{background: #cc918a;}

.list{padding:0; list-style:none;}
.list li{position: relative; padding-left: 25px; margin-bottom: 15px;}
.list li:before{
	content: "\f00c";
	font-family: 'Line Awesome Free';
	font-weight: 900;
	font-style: normal;
	position: absolute;
	font-size: 20px;
	left: 0;
    color: #d2958e;
}

.full-width .container{
	position: absolute;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
	padding-left: 15px;
    padding-right: 15px;
}

.img-fit{object-fit: cover; width: 100%; height: 100%; min-height:600px;}

.divider{color:#989898;}
.divider i{color:#c13141;}
.red-box > .divider:before{content: ''; position: absolute; width: 1px; height:100%; top: 0; background: #343439; margin-left: -15px;}
.red-box > .divider:first-child:before{content:none;}
.footer{letter-spacing:2px; line-height:34px;}
.footer a{color: #1b1b22;}
.f-menu a{color: #1b1b22; text-transform:uppercase; font-size:18px; margin:0 20px 0 0; font-weight:700;}
.footer a:hover{color:#c53445;}

.social a{display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1px solid #1b1b22; border-radius: 100%; margin: 0 5px; font-size: 20px;}
.social a:hover{border: 1px solid #1b1b22; background:#1b1b22;}




.form-control{border: 0; border-bottom:1px solid #e4e4e4; border-radius: 0; padding-left: 0; margin-bottom: 30px;}
.form-control:focus{outline: none; box-shadow:none; border-color: #d2958e;}
.form-floating>.form-control, .form-floating>.form-select { padding: 1rem 6px;}
.form-control:focus, .form-control:-webkit-autofill{border-color: #39B54A!important;}
.error{color:#c23242;}
textarea.form-control {min-height: 100px;}

.fit-img{object-fit: cover; height: 100%; width: 100%;}

.container {position:relative;}
.residental{position:relative; overflow:hidden;}
.residental div{position:relative;}
.residental h2{position:absolute; top:40px; left:48px; z-index:9;}
.residental span{position:absolute; background:rgba(184, 51, 62, 0.9); padding:50px; width:100%; top:-250px;}
.residental span a{margin-top:60px; border-radius:0; letter-spacing:0;}
.residental:hover span{top:0; display:block;}

.button {
    display: inline-block;
    padding: 10px 18px;
    margin-bottom: 30px;
    border: 0;
    border-bottom: 2px solid #fff;
    color: #222;
    font-size: 16px;
    cursor: pointer;
    outline: none;
    background: none;
}

.button:hover {
	border-bottom-color: #c23242;
}
.button:focus{outline:none}

.button-group:after {
	content: '';
	display: block;
	clear: both;
}
.button-group .is-checked {
    border-bottom-color: #c23242;
}


.grid-item img{padding:5%; margin-bottom:20px;}
.grid-item.kitchen img, .grid-item.additions img, .grid-item.maintenance img, .grid-item.specialty img{background:none; border:1px solid #e2e2e2;}
.grid-item.work-logo img{background: #f98882;}
.pro-nav{width:100%; padding:8px; background:#c02f3e; border:0; color:#fff;
	background-image:url(images/arrow.png);
	background-repeat: no-repeat, repeat;
	background-position: right 0.5em top 50%, 0 0;
	background-size: .65em auto, 100%;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;}

	
.middle-body{min-height:500px;}

@media (min-width: 1200px) {
	.container {max-width: 1230px;}
	.banner img {height:800px;}
	.grid-item { width: 18.68%;}
	.content-wrap { height: 100vh; min-height: 600px;}
}
@media (max-width:1199.98px){
	.topmenu li a{font-size: 12px;}
	.residental h2{font-size:20px;}
	.residental a{padding:10px 15px;}
	.grid-item { width: 18.3%;}
	.content-wrap { height: 100vh; min-height: 600px;}
}
@media (max-width:991.98px){
	.headerspace {height: 100px;}
	.logo img, .header.full .logo img{max-width:120px;}
	.snav{ border: none; padding: 10px; width: 40px; cursor: pointer; z-index: 998; background: none;}	
	.snav i{display:block; background:#fff; height:2px;}
	.snav i+i{margin-top:5px;}
	.snav:focus{outline: none;}
	.snav.openbtn i:nth-child(1){
	-moz-transform: rotate(45deg) translateX(5px) translateY(5px);
	-webkit-transform: rotate(45deg) translateX(5px) translateY(5px);
	-o-transform: rotate(45deg) translateX(5px) translateY(5px);
	-ms-transform: rotate(45deg) translateX(5px) translateY(5px);
	transform: rotate(45deg) translateX(5px) translateY(5px);}
	.snav.openbtn i:nth-child(2){opacity:0;}
	.snav.openbtn i:nth-child(3){
	-moz-transform: rotate(-45deg) translateX(5px) translateY(-5px);
	-webkit-transform: rotate(-45deg) translateX(5px) translateY(-5px);
	-o-transform: rotate(-45deg) translateX(5px) translateY(-5px);
	-ms-transform: rotate(-45deg) translateX(5px) translateY(-5px);
	transform: rotate(-45deg) translateX(5px) translateY(-5px);}
	
#nav {display:none; position:absolute; right:0; background:#333333; min-width:270px; top:97px; left: 0;}
.header.full #nav{top:97px;}
.topmenu li {display: block;line-height: normal;margin:0; border-top:1px solid #444;}
.topmenu li a {margin: 0; height: 60px; line-height: 60px; color:#fff; display:block; text-align: center; font-weight: 300; letter-spacing: 3px; border-bottom:0;}
.topmenu li a:hover{color:#d53343;}
.topmenu li ul{width:100%; position:relative; border-top:0;}
.topmenu li li{border-bottom:0;}
.topmenu li li a{height: 40px; line-height: 30px; color:#fff; border-top-color:#333;}

.body-bg-sec:before {
    opacity: .1;
}
.full-width .container {
    position: relative;
    top: inherit; 
    transform: translate(0);
    padding-left: 15px;
    padding-right: 15px;
}
.p-initial{position: inherit !important}
.footer{line-height:24px;}
.f-menu a{font-size:16px; margin:0 10px 0 0;}
.residental span{padding:30px;}
.residental h2{left:30px;}
.rc-btn h1{font-size:24px;}
.rc-btn i{font-size:24px;}
.rc-btn a{padding:15px;}

.grid-item { width: 22.8%;}
.content-wrap { height: 100vh; min-height: 600px;}
}
@media (max-width:767.98px){
	.caption{font-size:16px;}
	.banner .caption {font-size: 80%;}
	.banner .caption b span{display: none}
	.red-box > .divider:before{display: none;}
	.grid-item { width: 30.4%;}
	.content-wrap { min-height: 500px; margin-bottom: 20px}
}
@media (max-width: 575.98px) {
	h1{font-size:20px;}
	.banner img{height:350px;}
	.banner .caption {font-size: 60%; bottom:20px;}
	.banner	.caption h1{font-size:30px;}
	.btn {letter-spacing: inherit;}
	.headerspace { height: 121px;}
	.nav-pills .nav-link span{display: none;}
	.nav-pills .nav-link i{margin-right: 0}
	.rc-btn h1{font-size:16px;}
	.rc-btn i{font-size:24px;}
	.rc-btn a{padding:15px;}
	.content-wrap { min-height: 500px;}
	.grid-item { width:45.9%;}
	.footer{font-size:12px;}
	.f-menu a{font-size:11px;}
	h4, h5{font-size:16px;}
}
