/**********************
DEFAULT
***********************/

body {
	padding-top: 165px;
	font-family: sans-serif;
	font-size: 15px;
	color: #333;
	line-height: 1.5em;
	font-weight:400;
}

ul, ol {
	padding: 0 0 0 20px;
	margin: 0 0 20px 20px;
}

.social-list li {
	display: inline-block;
}

.social-list a {
	padding: 20px;
	color: #fff;
	text-decoration: none;
}
p {
	margin-bottom: 20px;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, label, button, .btn {
	text-transform: uppercase;
	margin: 0 0 20px 0;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	display: block;
	line-height:1.3em;
}

h1, .h1 {
	font-size: 50px;
}

h2 {
	font-size: 25px;
}

h2.section-title {
	color: #231f20;
}

h2.section-title:after {
	display: block;
	content: '';
	width: 25%;
	margin: 15px 0 20px;
    border: 2px solid #79131f;
}

h5 {
	font-size: 15px;
	letter-spacing: 0.2em;
}
h3 {
	font-size: 20px;
	text-transform: none;
	font-weight: 700;
}

img { max-width:100%; border:none; outline:none; }

a { color:#79131f; text-decoration:none !important; }
a:hover { color:#ec008c; }

section {
	position: relative;
}

.bg-light-grey {
background-color: #f3f4f6 !important;
}

blockquote {
	padding: 0;
	margin: 0;
	border: 0;
}

form {
	text-align: left;
}

label {
	font-weight: normal;
}

button, .btn {
	font-size: 15px;
}

.form-group {
	margin: 0;
}

.form-control {
	background-color: transparent;
    color: #888888;
    border: 1px solid #ddd !important;
    border-radius: 3px;
    transition: all 0.3s ease-out;
    margin-bottom: 10px;
	outline:none !important;
	background:#fff;
}

.form-control:focus {
	border-color: #ffffff;
	box-shadow: none;
}

textarea.form-control { height:100px; }

blockquote { 
	font-style:italic;
}

blockquote footer { color:#666; font-size:13px; }

/**********************
NAVBAR
***********************/

.top { 
	background:#79131f;
	font-size:13px;
	padding:5px 0;
	color:#fff;
	text-align:right;
}
.top a { color:#fff;}
.navbar {
	min-height: 90px;
	font-family: 'Montserrat', sans-serif;
}

.navbar-default {
	background-color: #ffffff;
}

.navbar-default > .container { border-bottom:5px solid #79131f; }

.navbar-brand {
	height: auto;
	padding: 10px 0;
}

.navbar-brand img {
	max-height: 100px;
}

.navbar-default .navbar-nav>li>a {
	color: #707070;
	font-size:13px;
	padding: 13px 15px;
	font-weight:600;
	letter-spacing:1px;
	color:#333;
}

.navbar-default .navbar-nav>li>a:focus, 
.navbar-default .navbar-nav>li:hover a {
	color: #fff;
	background-color: #79131f;
}

.navbar-default .navbar-nav>.active>a, 
.navbar-default .navbar-nav>.active>a:focus, 
.navbar-default .navbar-nav>.active>a:hover {
	color: #79131f;
	background-color: transparent;
}

.navbar-default .navbar-toggle {
	margin-top: 20px;
	margin-bottom: 28px;
	border: 0;
	border-radius: 0;
}

.navbar-default .navbar-toggle .icon-bar {
	background: #707070;
}

.navbar-default .navbar-toggle:focus, 
.navbar-default .navbar-toggle:hover {
	background-color: transparent;
}

.navbar-default .navbar-toggle:focus .icon-bar, 
.navbar-default .navbar-toggle:hover .icon-bar {
	background: #79131f;
}
/************************************
Drop Down CSS
*************************************/
.nav .open > a, .nav .open > a:hover, .nav .open > a:focus,
.navbar-nav > li.active > a {
	color: #ffe600;
	background: transparent;
}

.navbar-nav > li > .dropdown-menu {
	margin-top: 0;
	border-top:1px solid #fff;
	border-top-right-radius: 4px;
	border-top-left-radius: 4px;
}
.navbar ul ul
{
	display:none;
	position:absolute;
	top:100%;
	left:3px !important;
	background:#fff;
	padding:0;
	margin:0;
	width:220px;
}
.navbar ul li:hover a { /* These create persistent hover states, meaning the top-most link stays 'hovered' even when your cursor has moved down the list. */
    color: #ff0000;
    text-decoration:none;
}
.navbar ul ul li
{
	float:none;
	display:block;
}

.navbar ul ul a
{
	padding:10px 15px;
	display:block;
	border-top:1px solid #fff;
	background:#444 !important;
}

.navbar ul ul a:hover {
	background:#79131f !important;
}


.navbar ul ul ul
{
	top:0;
	left:100%
}
.navbar ul li:hover > ul
{
	display:block
}

.dropdown-menu { border:0; }

.dropdown-menu li:hover a { background:#ea661e !important; }

.dropdown-menu>li>a { white-space:normal; }

/**********************
HOME SECTION
**********************/

.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.8);
}

.home-content {
	padding:80px 0;
}


.down-icon {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	padding: 45px 15px 15px;
}

.down-arrow {
	animation: scrollDown 2s infinite;
}

@keyframes scrollDown {
	0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
	40% {
    transform: translateY(-30px);
  }
	60% {
    transform: translateY(-15px);
  }
}

.phone { 
	text-align:right; 
	margin-top:25px; 
	margin-bottom:0;
	color:#637988;
	text-transform:uppercase;
}

.phone a { 
	color:#1b4a9e; 
	text-decoration:none; 
	font-weight:600; 
	font-size:30px; 
	margin-left:10px;
}

.phone span {
	padding:10px 0;
	width:43px;
	text-align:center;
	border:1px solid #ccc;
	border-radius:50%;	
	display:inline-block;
	margin-top:-15px;
}

/*********
Slider
*************/

#slider1_container {
	visibility: hidden;
	position: relative;
	margin: 0 auto;
	top: 0px;
	left: 0px;
	width: 1300px;
	height: 450px;
	overflow: hidden;
}
#slider1_container .jssorl-009-spin {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	text-align:center;
	background-color:rgba(0,0,0,0.7);
}
#slider1_container .jssorl-009-spin img {
	margin-top:-19px;
	position:relative;
	top:50%;
	width:38px;
	height:38px;
}
.slideimg {
	position: absolute;
	left: 0px; 
	top: 0px; 
	width: 1300px; 
	height: 500px; 
	overflow: hidden;
}
.jssorb031 {
	position:absolute;
	bottom:12px;
	right:12px;
}
.jssorb031 .i {
	width:16px;
	height:16px;
	position:absolute;
	cursor:pointer;
}
.jssorb031 .i .svgin {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.jssora051 {
	width:55px;
	height:55px;
	top:0px;
}
.jssora051 svg {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	color:#fff;
	font-size:50px;
}
.jssorb031 .i .b {fill:#000;fill-opacity:0.5;stroke:#fff;stroke-width:1200;stroke-miterlimit:10;stroke-opacity:0.3;}
.jssorb031 .i:hover .b {fill:#fff;fill-opacity:.7;stroke:#000;stroke-opacity:.5;}
.jssorb031 .iav .b {fill:#fff;stroke:#000;fill-opacity:1;}
.jssorb031 .i.idn {opacity:.3;}
.caption {
	position: absolute;
    top: 30%;
    left: 0;
    width: 70%;
    font-weight: 300;
    z-index: 2;
	color:#fff;
	border-radius:0 30px 0 30px;
    left: 50%;
    transform: translateX(-50%);
}
.caption p {
	font-family: sans-serif;
	margin-bottom: 20px;
	text-shadow:0 1px 2px rgba(0,0,0,.7);
	font-weight:400;
}
.caption h2 {
	font-weight:600;
	text-shadow:0 1px 2px rgba(0,0,0,.7);
	margin-bottom:10px;
	font-size:28px;
}
.btns, .btns-outline {
	margin: 0 10px 0 0; 
    text-align: center;
    padding: 10px 20px;
    color: #fff !important;
    background-color: #79131f;
    transition: all 0.3s;
    outline: none;
    box-shadow: none;
    border: 1px solid #79131f;
    display: inline-block;
	text-decoration:none !important;
	font-weight:500;
	border-radius:0;
}

.btns-outline { background:none; border:1px solid #fff; }

.btns:hover, .btns-outline:hover { background:#ea661e; border:1px solid #ea661e; }



/**********************
HISTORY SECTION
***********************/
#innerpage {
	  position:relative;
	  overflow:hidden;
}
#innerpage h2 {
	margin-bottom:15px;
	margin-top:15px;	
}
#innerpage .bg-light-grey {
	padding:5em;	
}
#innerpage1 {
	  position:relative;
	  overflow:hidden;
}
#innerpage1 h2 {
	margin-bottom:15px;
	margin-top:15px;	
}
#innerpage1 .bg-light-grey {
	padding:5em;	
}

div.img-wrapper{	
    min-height: 100%;
    background-position: center;
    background-size: cover;
    position: absolute;
    width: 50%;
    left: 0;
}

div.img-wrapper1{
    min-height: 100%;
    background-position: center;
    background-size: cover;
    position: absolute;
    width: 50%;
    right: 0;
}
.img1 { background-image: url("../images/bg01.jpg"); }
.img2 { background-image: url("../images/27.jpg"); }
.img34 { background-image: url("../images/painting.jpg"); }
.img3 { background-image: url("../images/commercial-painting.jpg"); }
.img4 { background-image: url("../images/industrial-painting.jpg"); }
.img5 { background-image: url("../images/batt-insulation.jpg"); }
.img6 { background-image: url("../images/asbestos-removal.jpg"); }
.img7 { background-image: url("../images/acoustic-ceilings2.jpg"); }
.img8 { background-image: url("../images/wall-panels.jpg"); }
.img9 { background-image: url("../images/steel-studs.jpg"); }
.img10 { background-image: url("../images/drywall.jpg"); }
.img11 { background-image: url("../images/acoustic-ceilings1.jpg"); }
.img15 { background-image: url("../images/demolition.jpg"); }
.img14 { background-image: url("../images/wood-framing-concrete.jpg"); }
.history-content {
	text-align: center;
}

.history-content p.spc {
	margin-top: 32px;
}

.imgleft { 
	border-radius:5px; 
	margin-right:20px; 
	float:left;
	max-width:300px;
}

#innerpage svg { color:#79131f; margin-right:10px; }

/**********************
PORTFOLIO SECTION
***********************/

.project {
	position: relative;
	width: 320px;
	/*height: 555px; */
	overflow: hidden;
	outline: none;
}

.project:hover .description {
	transform: translateY(-100%);
}

.project img {
	width: 100%;
}


.project .description {
	position: absolute;
	width: 100%;
	height: 370px;
	padding: 61px 33px 54px;
	background: #79131f;
	color: #ffffff;
	text-align: center;
	transition: all .3s ease-out;
}

.project .description p {
	margin-top: 65px;
}

.project .description .social-list {
	margin-top: 54px;
}
.bannerimage {
	width:100%;
}
/**********************
SERVICES SECTION
***********************/

#services {
	padding: 50px 0;
	/*text-align:center;*/
}
.text-s1 { text-align:center;}

#services .thumb img {margin-bottom: 20px;
    border-bottom: 7px solid #79131f;
}
#services .text-wrap p, #services .text-wrap h5{
	color:#333;
}
.service {
	background: #ffffff;
	padding: 40px;
	text-align: center;
	border-top:5px solid #79131f;
	margin-top: 40px;
}

.service .separator {
	width: 30px;
	height: 2px;
	background-color: #79131f;
	margin: 25px auto 0;
}

.service h5 {
	margin-top: 20px;
	color: #231f20;
}

.service p {
	margin-top: 20px;
}
.service a {
	color: #637988;
	text-decoration:none;
}
/**********************
COMMERCIAL SECTION
***********************/

#commercial {
	padding: 70px 0;
}

.commercial-content {
	text-align: center;
	color: #231f20;
}

.commercial-content img { border-radius:5px; margin-bottom:20px; }

.commercial-content h5 { margin-bottom:10px; }

.commercial-content h4 { font-size:16px; }

.Winnipeg-slide { padding:15px 0; }

/**********************
CONTACT SECTION
***********************/

#contact {
	padding: 50px 0;
	
	text-align:center;
}

.contact-subsection {
	
	box-sizing: border-box;
}

#renovation-service {
	padding: 40px 50px 30px;
	background:rgba(255,255,255,.6);
}

.contact-subsection h2:after {
	display: block;
	content: '';
	width: 30px;
	height: 2px;
	background-color: #79131f;
	margin: 20px auto 0;
}

#renovation-service p {
	margin-top: 20px;
	text-align:center;
}

#form-subsection {
	overflow: hidden;
	padding:20px 30px;
	border-radius:20px 0 20px 0;
	background:#eee;
}
#formsubsection {
	padding: 20px 0;
	overflow: hidden;
}

#portfolio { padding:70px 0; }

#portfolio  .project img {
    width: 100%;
    margin: 20px;
}

/*.contact-subsection textarea.form-control { height:70px; }*/

.service .fa{
    font-size: 70px;
    color: #000;
}

#testimonial {
	padding: 50px 0;
	background-image:url('../images/bg02.jpg');
	background-size:cover;
	text-align:center;
	z-index: 1;
	color:#fff;
}

#testimonial-box {
	margin-top: 20px;
	text-align:center;
	padding: 20px 20px 20px;
	background:rgba(255,255,255,1);
	color:#333 !important;
	margin-bottom:5px;
}
#testimonial h2 {
	text-shadow:0 1px 2px rgba(0,0,0,.7);
}


#testimonial-box {
	margin-bottom: 15px;
}
/**********************
FOOTER SECTION
***********************/

#footer {
	background: #333;
	color: #ffffff;
	padding: 55px 0 0;
}

#footer .copyright {
	font-family: 'Montserrat', sans-serif;
}

#footer .social-list {
	float: right;
}

footer a { color:#fff; }
footer a:hover { color:#fff; }
footer .footer-map { width:100%; height:200px; }

footer .up-footer h2 {
  color: #222222;
  font-size: 17px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  margin: 0 0 15px;
  font-size: 15px;
  margin-bottom: 30px;
  text-transform: uppercase;
  color: #ffffff;
}
footer .up-footer p {
  color: #ffffff;
}
footer .up-footer img {
  /*margin-top: 20px;*/
}
footer .up-footer ul.navigation {
  margin: 0;
  padding: 0;
}
footer .up-footer ul.navigation li {
  list-style: none;
  margin-bottom: 5px;
}
footer .up-footer ul.navigation li a {
  display: inline-block;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  font-family: 'Montserrat', sans-serif;
  color: rgba(255, 255, 255, 0.9);
}
footer .up-footer ul.navigation li a:hover {
  color: #ffba00;
}
footer .up-footer .info-widget p {
  margin-bottom: 5px;
  display:flex;
}
footer .up-footer .info-widget p i {
  color: #ce0a11;
  margin-right:5px;
}
footer .up-footer .info-widget p.first-par {
  margin-bottom: 20px;
}

footer svg { margin-right:5px; vertical-align:top; margin-top:3px; width: 15px !important; }

footer p.copyright {
  padding: 25px 15px;
  font-size: 13px;
  color: #ffffff;
  text-align: center;
  margin: 0;
  border-radius:20px 20px 0 0;
  background:rgba(0,0,0,0.3);
  margin-top:20px;
}

/**********************
HELPER CLASSES
***********************/

.is-visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.grabbable {
    cursor: move;
    cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
}

.grabbing { 
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing;
}


.fancybox {
    width: 22%;
    display: inline-block;
    margin: 8px 6px;
}

.fancybox img { border-radius:5px; width:100%; }

.icon-box:hover {
	opacity:0.7;
}
.icon-box{
	position:relative;
	display:inline-block;
	margin-bottom: 10px;
}
.icon-inside {
	z-index: 100;
	position: absolute;
	color: white;
	font-size: 24px;
	font-weight: bold;
	left: 40%;
	top: 40%;
	display:none;
}
.hvr-icon-pop {
	padding: 2px 5px;
	display:inline-block;
	background-color:#fff;
}
.icon-box:hover .icon-inside {
	display: inline-block;
}
.controls {
	margin-bottom:20px;
}

hr { 
	border-top:1px dashed #ccc;
	border-bottom:none;
	margin:30px 0;
}

.subservice {
	display:block;
	padding:10px;
	background:#eee;
	text-align:center;
	color:#000;	
	margin-bottom:10px;	
}
.subservice h4 {
	text-transform:capitalize;
	margin:10px 0 0;
	font-size:16px;
}


.inner-section ul {
            display: flex;
            flex-wrap: wrap;
            padding: 0;
            margin: 0 0 50px;
            list-style: none; /* Remove default bullets */
			text-align:justify;
}

        .inner-section ul li {
            background: #f8f9fa; /* Light background for the boxes */
            border: 2px solid #ddd;
            border-radius: 6px;
            padding: 10px 15px;
            margin: 5px; /* Adjusted margin for spacing */
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
            transition: transform 0.2s ease, box-shadow 0.2s ease;
            flex: 1 1 calc(30% - 10px); /* Three items per row */
        }

.inner-section ul li:hover {
       transform: translateY(-3px);
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.ext-color {
	color: #ff0000 !important;
	background: #333 !important;
	text-transform: uppercase !important;
	font-weight:700;
}
.sub-section-title {
	text-transform:capitalize;
}
.box{
    background: #f8f9fa;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 10px 15px;
    margin: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    flex: 1 1 calc(30% - 10px);
}
.box:hover {
            transform: translateY(-3px);
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
        }
.img-pg {
    width: auto;
    float: right;
    margin-left: 20px;
    margin-bottom: 20px;
    max-height: 360px;
}
#services .text-wrap h5 {margin-bottom:10px;
}
.text-wrap p {
margin-bottom:30px;
}
/**********************
RESPONSIVE
***********************/
@media (min-width:991px) {
	.navbar-right {
		margin-top:1px;
	}
	.navbar-default .navbar-nav>li>a {
		border-left:3px solid #fff;
		background:#eee;
	}
}

@media only screen and (max-width: 1199px) {
	.navbar-brand {
		height: 50px;
		padding: 0;
	}
	.navbar-default .navbar-nav>li>a {
		padding: 10px 13px;
		font-size:13px;
		letter-spacing:0;
	}
	
	#renovation-service, #form-subsection {
		padding: 95px 70px 70px;
		min-height: 560px;
	}
	.navbar-brand img {
		max-height:70px;
		margin-top:20px;	
	}
	.navbar-collapse{
		margin-bottom: 20px;
	}
}

@media only screen and (max-width: 991px) {
	body {
    padding-top: 96px; }
	.top { display:none; }
	

	.navbar-fixed-bottom .navbar-collapse, .navbar-fixed-top .navbar-collapse {
		border-top: none;
	}
    .service:not(first-of-type) {
        margin-top: 30px;
    }
	.caption {
		display:none;
	}
    /**********************
	CONTACT SECTION
	***********************/

	#renovation-service, #form-subsection {
		padding: 80px;
		min-height: auto;
	}

	#form-subsection {
		margin-top: 55px;
	}
	
	.phone { display:none; }
	
	.navbar-brand img { 
		max-height:80px; 
		margin:0 0 10px 10px;
	}
	
	.navbar-default .navbar-nav>li>a {
		padding: 10px;
		font-size:13px;
	}
	
	footer .up-footer .col-md-3 { margin-bottom:20px; }
	
	footer .up-footer h2 { margin-bottom:10px; }
	div.img-wrapper {
    min-height: 250px;
    position: relative;
    width: 100%;
	}
	div.img-wrapper1 {
    min-height: 0;
    position: relative;
    width: 100%;
	}
	#innerpage1 .bg-light-grey {
    padding: 0 1em 1em;
}
	#services .thumb img {max-width:330px; }
	.fancybox {
    width: 44%;
}
	.navbar-default .container {
		min-height: 90px;
	}
}

@media (max-width: 991px) and (min-width:768px) {
	
	
	.navbar-default .navbar-nav>li>a {
		letter-spacing:0;
		font-size:12px;	
		padding:10px;
	}
	
	
}

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

	h1, h2, h3, h4, h5, h6 {
		line-height: 1.5;
	}
	.navbar-brand img {
		max-height:80px;	
	}
	
	.navbar-default .navbar-nav {
		text-align: left;
		margin:0 15px;
	}

	.navbar-default .navbar-nav>li>a {
		padding: 7px 0;
	}
	.navbar ul ul {
		left:20% !important; /*change as per the width of menu */
		top:50%;
	}
	.navbar-collapse.in {
		overflow-y: scroll;
	}
	
	.navbar ul ul {
		display:block;
		position:relative;	
		width:100%;
		left:0 !important;
		top:0;
	}
	
	.navbar ul ul a {
		background:#eee !important;
		padding:8px 15px;
		font-size:14px;
		color:#000 !important;
		border:none;	
	}

	.navbar-default .container {
		min-height: 100px;
	}

	/**********************
	SERVICES SECTION
	***********************/
    .service {
        padding: 30px;
    }

	/**********************
	CLIENTS SECTION
	***********************/
	.single-client-container:not(first-of-type) {
		margin-top: 60px;
	}

	/**********************
	CONTACT SECTION
	***********************/
	.text-s1 { text-align:left;}
	#renovation-service, #form-subsection {
		padding: 60px 30px;
		min-height: auto;
	}


	/**********************
	FOOTER SECTION
	***********************/
	#footer {
		text-align: center;
	}
	
	footer .up-footer .info-widget p { display:block; }

	#footer .social-list {
		float: none;
		margin-top: 45px;
	}
	.inner-section .col-md-12 {
                flex: 0 0 100%;
            }

            .inner-section ul li {
                flex: 1 1 100%; /* Stack items on smaller screens */
            }
	#innerpage .bg-light-grey {
		padding: 1em;
	}
}

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

	/**********************
	HOME SECTION
	**********************

	.home-content .btn {
		display: block;
		margin: 0 auto;
	}

	.home-content .btn-primary {
		margin-top: 30px;
	}*/
	.img-pg {
		width: 100%;
	}
}