/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 
 
/* =Theme customization starts here
------------------------------------------------------- */


/*************** global **************/

/*** font ***/

p{
  font-weight: 400;
  font-size: 15px;
}

h1 {
  font-size: 75px;
  font-weight: 700;
}

h2{
  font-size: 30px !important;
  line-height: 45px;
  font-weight: 700;
}

h3{
  font-size: 20px;
  line-height: 30px;
  font-weight: 700;
}

h4{
  font-size: 22px;
  line-height: 30px;
  font-weight: 700;
}

@media(max-width: 500px){
h1{
  font-size: 45px !important;
  line-height: 55px  !important;
}
}


/** buttons **/
.main-btn{
-webkit-transition: all .5s;
  position: relative;
  color: #fff;
  font-weight: 600;
  background-color: #dcb04c;
  padding: 15px 75px 15px 30px;
}

.main-btn:after{
-webkit-transition: all .5s;
  color: #000;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
	content: "\f054";
  position: absolute;
  right: 0px;
  top: 0px;
  background-color:#fff;
  padding: 5px 14px;
  margin: 5px;
}

.main-btn:hover{
  -webkit-transition: all .5s;
  padding: 15px 100px 15px 30px;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}


 .vid-btn{
  -webkit-transition: all .5s;
  position: relative;
  color: #000;
  font-weight: 600;
  font-size: 15px;
  background-color: #fff;
  padding: 17px 75px 17px 30px;
  top: -120px;
  left: 40px;
}

.vid-btn:after{
  color: #fff;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  font-size: 35px;
	content: "\f138";
  position: absolute;
  right: -20px;
  top: -15px;
  background-color:#dcb04c;
  padding: 20px 17px;
  margin: 7px 0 0 0;
}

 .vid-btn:hover{
  -webkit-transition: all .5s;
  padding: 17px 100px 17px 30px;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19)
}

.sub-btn{
background-color: #670d1f;
color: #fff; 
padding: 20px 50px;
font-size: 15px;
font-weight: 600;
-webkit-transition: all .3s;
}

.sub-btn:hover{
-webkit-transition: all .3s;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
padding: 21px 51px;
}

.text-btn{
-webkit-transition: all .3s;
}

.text-btn:hover{
-webkit-transition: all .3s;
color: #000;
}

@media(max-width: 500px){
 .vid-btn{
  top: -90px;
  left: 10px;
}

}
/***** galleries *****/

/** grid gallery **/
.grid-gal-sec.et_pb_gallery_grid{
  max-width: 500px !important;
  margin: auto;
}
.grid-gal-sec .et_post_gallery{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.grid-gal-sec.et_pb_gallery_grid img{
  width: 100%;
  height: 170px;
  object-fit: cover;
}

.grid-gal-sec.et_pb_gallery_grid .portrait {
  max-width: 170px;
  max-height: 170px;
}

.grid-gal-sec.et_pb_gallery_grid.et_pb_module .et_pb_bg_layout_light{
  padding: 0 0 0 0;
  margin: 5px;
  width: 27%;
  height: 170px;
}
/** popup **/

div.mfp-title, div.mfp-counter {
  display: none;
}


/** slick slider **/

.slick-slider
{
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-khtml-user-select: none;
ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}
 
.slick-slide
{
float: left;
}



button.slick-next.slick-arrow,
button.slick-prev.slick-arrow {
  background: none;
  border: none;
  font-size: 0;
}

button.slick-next:after {
  cursor: pointer;
  color: #dcb04c;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  font-size: 35px;
	content: "\f054";
  position: absolute;
  right: -20px;
  top: 35%;
  padding: 20px 17px;
  margin: 7px 0 0 0;
}

button.slick-prev:after {
  cursor: pointer;
  color: #dcb04c;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  font-size: 35px;
	content: "\f053";
  position: absolute;
  left: -20px;
  top: 35%;
  padding: 20px 17px;
  margin: 7px 0 0 0;
}

.reviews{
width: 85%;
max-width: 500px;
min-height: 300px;
overflow: hidden;
margin: 70px auto;
background-color: #fff;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}


.slick-slide{
   padding: 20px 40px;
}

.slick-slide p{
border-left: 4px solid #DCB04C;
text-align: left;
padding: 10px 20px;
margin: 0 0 15px 0;
font-size: 14px;
}

.slide-title-wrap{
  display: flex;
  align-items: center;
  max-width: 300px;
  margin: auto;
}

.slide-title-wrap img{
  max-width: 75px;
  margin: 15px;
}

.slide-title-wrap h5{
  font-size: 20px;
}


.slick-dots {
	display: flex;
	justify-content: center;
	list-style-type: none !important;
}

.slick-dots li {
			margin: 0 0.25rem;
		}
	
.slick-dots button {
			display: block;
			width: .7rem;
			height: .7rem;
			padding: 0;
			
			border: none;
			border-radius: 100%;
			background-color: #f7dd9e;
			text-indent: -9999px;
		}
	
.slick-dots li.slick-active button {
			background-color: #DCB04C;
		}
	
/*** nav ***/

.et_menu_container{
  width: 100%;
  max-width: 1300px;
  }
  
  #et-top-navigation{
  float: none;
  margin: 0 0 0 70px;
}


.sub-menu{
  display: flex;
  flex-direction: column;
  min-width: 300px;
}

.sub-menu li a{
  display: flex;
  flex-direction: column;
  min-width: 250px;
}

@media(min-width: 1150px){
.nav-phone{
  position: absolute !important;
  right: 170px !important;
}

.nav-phone i{
cursor:pointer;
  position: absolute;
  margin-top: -2px;
  left: -25px;
}



.nav-phone a {
  color: #fff !important;
}

.nav-facebook{
  position: absolute !important;
  right: 64px !important;
}

.nav-facebook a {
  color: #fff !important;
  font-size: 17px;
}


.nav-linkedin{
  position: absolute !important;
  right: 30px !important;
}

.nav-linkedin a {
  color: #fff !important;
  font-size: 19px;
}

.nav-houzz{
  position: absolute !important;
  right: 20px !important;
}

.nav-houzz a {
  color: #fff !important;
  font-size: 18px;
}
}

@media(max-width: 1150px){
#et_mobile_nav_menu {
 display: block;
 }
 
#top-menu {
 display: none;
 }
 
 div.container.clearfix.et_menu_container {
  width: 90% !important;
}

#main-header {
  background-color: #670D20 !important;
}

span.mobile_menu_bar.mobile_menu_bar_toggle::before {
  color: #fff !important;
}

ul.et_mobile_menu {
  background-color: #670D20 !important;
}

.nav-facebook,
.nav-linkedin,
.nav-houzz{
  float: left !important;
  margin: 0 40px !important;
}

 }
 
/** theme builder nav **/

.et_pb_row--with-menu{
  width: 95%;
}

.et_pb_sticky--top{
  background-color: #670D20 !important;
  width: 100% !important;
  margin: 0 0 0 0 !important;
  left: 0 !important;
}

.et_pb_sticky--top .et_pb_menu_inner_container{
  max-width: 1300px !important;
  margin: auto !important;
  padding: 0 100px !important;
}


@media(max-width: 1150px){
.et_pb_menu__menu{
  display: none !important;
}

.et_mobile_nav_menu{
justify-content: end;
  display: block;
  width: 100%;
}

span.mobile_menu_bar {
  text-align: right;
}

ul.et_mobile_menu li{
    list-style-type: none;
}
 }
 

/** footer **/

.quote-cta{
max-width: 900px;
margin: auto;
padding: 0 25px;
display: flex;
justify-content:space-between;
align-items: center;
text-align: center;
}

.fwidget.et_pb_widget.widget_block {
  min-width: 100%;
}

#main-footer p{
 font-size: 12px;
}

#main-footer .container{
  min-width: 100%;
}

.footer-wrap{
display: flex; 
justify-content: space-between;
width: 90%; 
max-width: 1300px;
margin: auto;
}

.footer-col{
margin: 0 40px;
}

.footer-col.newsletter{
max-width: 250px;
font-size: 12px;
}

.footer-comp{
max-width: 350px;
margin: 0 40px;
}


.footer-wrap i{
  color: #dcb04c;
  font-size: 19px;
  margin: 20px 20px 20px 0;
  padding: 10px;
background-color: #fff7e2;
}

#footer-bottom {
  max-width: 1300px;
  margin: auto;
  border-top: 1px solid #ccc;
}

#footer-info{
max-width: 350px;
width: 100%;
float: right;
}

.ft-newsletter{
  max-width: 300px !important;
  margin: 30px auto !important;
}

.ft-newsletter input.wpforms-field-large.wpforms-field-required {
  background-color: #f4f4f4 !important;
  height: 50px !important;
  font-size: 12px !important;
}

.ft-newsletter button.wpforms-submit {
  width: 100% !important;
  background-color: #DCB04C !important;
  color: #fff !important;
  font-weight: 600 !important;
  height: 50px !important;
  -webkit-transition: all .3s;
}

.ft-newsletter button.wpforms-submit:hover{
  -webkit-transition: all .3s;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);

}

.ft-newsletter .wpforms-field.wpforms-field-email {
  padding: 0 0 0 0 !important;
  margin: 0 0 0 0 !important;
}

.btm-footer{
  width: 100%;
  display: flex;
  justify-content: space-between;
padding: 0 20px;
font-weight: 100;
}

.btm-footer a{
  font-weight: 400 !important;
}


@media(max-width: 1250px){
.footer-comp{
max-width: 100%;
margin: 0 40px;
}

.footer-wrap{
flex-wrap: wrap;
justify-content: center;
margin: auto;
}

.footer-col{
margin:40px;
width: 22%;
}

.footer-col.newsletter{
max-width: 100%;
}
}


@media(max-width: 980px){

.quote-cta{
flex-direction: column;
}

.quote-cta{
flex-direction: column;
}

.sub-btn{
margin: 20px auto 0 auto;
}

.footer-wrap{
flex-direction: column;
text-align: center;
}

.footer-col{
margin: 40px auto;
width: 100%;
}


.footer-comp{
max-width: 450px;
margin:  auto;
}

.footer-wrap i{
 text-align: center;
}

#footer-info{
float: none;
margin: auto;
}
.btm-footer{
  justify-content: center;
text-align: center;
}

.btm-footer a{
  margin: 0 15px;
}
}
/******** home page ********/


/** hero **/

.home-hero{

/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#670d1f+0,670d1f+64,670d1f+64,670d1f+64,ffffff+64,670d1f+64,ffffff+64,ffffff+100 */
background: #670d1f; /* Old browsers */
background: -moz-linear-gradient(left,  #670d1f 0%, #670d1f 64%, #670d1f 64%, #670d1f 64%, #ffffff 64%, #670d1f 64%, #ffffff 64%, #ffffff 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  #670d1f 0%,#670d1f 64%,#670d1f 64%,#670d1f 64%,#ffffff 64%,#670d1f 64%,#ffffff 64%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  #670d1f 0%,#670d1f 64%,#670d1f 64%,#670d1f 64%,#ffffff 64%,#670d1f 64%,#ffffff 64%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#670d1f', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */

}


/** hero slider **/

.main-slider .et-pb-arrow-next, 
.main-slider .et-pb-arrow-prev{
    opacity: 100%;
  display: block;
  position: relative;
  right: 0px !important;
 font-size:50px;
  color: #fff !important;
  padding: 5px;
  width: 50px;
  margin: 0 0 0 0;
  color:#fff;
  border-radius: 50px;
}

.main-slider .et-pb-arrow-next{
  top: -54px !important;
  right: -70px !important;
}

.main-slider .et-pb-arrow-prev{
  top: 5px !important;
  left: 5px !important;
  }
  
.main-slider .et-pb-arrow-next:hover{
  right: -75px !important;
}


.main-slider a.et-pb-arrow-prev:hover {
  left: 0px !important;
}

.main-slider .et-pb-slider-arrows{
  position: relative;
   background-color: #dcb04c;
margin-top: -50px;
  width: 140px !important;
  height: 75px;
  float: right !important;
  z-index: 1000;
}


.main-slider .et-pb-controllers {
  display: none;
}

.home-best-pick{
  position: absolute;
  width: 170px;
right: -20px;
top: -40px;
z-index: 2;
}

@media(max-width: 500px){
.home-best-pick{
  position: absolute;
  width: 120px;
right: -1;
top: 75px;
z-index: 2;
}
}


/** service section **/

.home-service{
  -webkit-transition: all .5s;
}

.home-service:hover{
  -webkit-transition: all .5s;
  background-color: #f4f4f4;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.service-wrap{
  cursor: pointer;
position: relative;
padding: 30px 0 100px 0;
max-width: 500px;
  margin: auto;
  background-color: #fff;
}

.service-wrap p{
padding: 15px 30px 30px 30px !important;
font-size: 12px;
  line-height: 25px;
  min-height: 155px;
}

.service-title{
  -webkit-transition: all .3s;
  position: absolute;
  left: 0;
  bottom: -100px !important;
  background-color: #560718;
  color: #fff;
  width: 90%;
  padding: 20px;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  z-index: 3;
}

.service-more{
  -webkit-transition: all .3s;
position: absolute;
right: 0;
bottom: -100px !important;
z-index: 1;
background-color: #dcb04c;
color: #560718;
font-size: 11px;
letter-spacing: 2px;
width: 55%;
height: 100px;
text-align: center;
}


.service-wrap img{
  height: 75px;
  object-fit: contain;
}

.service-wrap:hover{
background-color: #f4f4f4;
  -webkit-transition: all .3s;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.29)
}

.service-wrap:hover  .service-title{
  -webkit-transition: all .3s;
  width: 100%;
}

.service-wrap:hover .service-more{
  -webkit-transition: all .3s;
  width: 70%;
}


@media(max-width: 1130px){
.service-title{
font-size: 17px;
}
}

/** logo section **/

.home-logo-sec{
display: flex;
justify-content: space-around;
align-items: center;
}

.home-logo-sec img {
max-height: 90px;
max-width: 170px;
margin: 20px 5px;
width: 100%;
object-fit: contain;
 -webkit-transition: all .5s;
  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}


.home-logo-sec img:hover {
 -webkit-transition: all .5s;
  -webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */
  filter: grayscale(0%);
}


/********** about page ************/

.abt-list li:before{
  position: absolute;
  color: #DCB04C;
  font-family: "Font Awesome 5 Free";
  content: "\f138";
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 0 -30px;
}

.abt-list li{
margin: 15px 0;
}

.abt-list ul{
  margin: 0 0 0 25px;
}

/************ contact page ****************/

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

.contact-map-wrap{
top: -75px;
z-index: 0;
}

.contact-info img{
  margin: 15px 20px 15px 0;
  width: 40px;
  max-height: 45px;
  object-fit: contain;
}

.contact-info a,
.contact-info div{
  color: #393737;
}

.contact-phone a{
margin: 0 30px 0 0
}

@media(max-width: 980px){
.contact-map-wrap{
top: 0px;
margin: 0 0 70px 0 !important;
}
}


/**map**/

.gm-style-iw-d{
  min-width: 250px;
}


.gm-style-iw-d p{
  padding: 0 20px 20px 20px !important;
  line-height: 10px;
}

.gm-style-iw-d h3{
  font-size: 22px;
  text-align: center;
  background-color: #f4f4f4;
  padding: 10px;
  margin: 0 0 20px 0;
}

/** form **/

.contact-form input,
.contact-form textarea{
  border: 1px solid #5a0818 !important;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder{
  font-size: 12px !important;
}


.contact-form .wpforms-submit {
  background-color: #5a0818 !important;
  color: #fff !important;
  width: 100% !important;
  padding: 15px !important;
  font-weight: 500 !important;
  font-size: 15px !important;
}

.contact-form .wpforms-submit:hover{
  background-color: #520816 !important;
  -webkit-transition: all .4s !important;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19) !important;
}

@media(max-width: 980px){
.contact-form{
margin: 0 0 70px 0 !important;
}
}

/************ portfolio page ***********/

.page-id-58 .et_pb_tab.et_pb_tab_0{
  background-color: #f4f4f4;
}

.page-id-58 .et_portfolio_image {
  left: 6%;
}

.page-id-58 .et_pb_tab_content img{
  object-fit: cover;
  width: 100%;
}

.page-id-58 .et_pb_gallery_image{
  margin: 5px;
  width: calc(94% / 3);
}

.page-id-58 .et_pb_tab_content ul{
  max-width: 1500px;
  margin: auto;
}

.page-id-58 .et_pb_tab_active a{
  color: #fff !important;
}

.page-id-58 ul.et_pb_tabs_controls:after{
  border: none;
}

.before-after-wrap .et_gallery_item.et_pb_gallery_image{
   width: 30%;
}

.before-after-wrap tbody tr{
  display: flex;
}


@media(max-width: 767px){
.before-after-wrap .et_gallery_item.et_pb_gallery_image{
   width: 42%;
}
}


@media(max-width: 600px){
.page-id-58 .et_pb_gallery_image{
  margin: 5px;
  width: calc(100% / 1);
}

.page-id-58 .et_portfolio_image {
  left: 0%;
}

}

/************* service single page ************/

.service-slider img{
  height: 540px;
  object-fit: cover;
}

.service-slider a.et-pb-active-control{
  background: #fff !important;
}

.service-slider .et-pb-controllers a{
  background: #fff;
}

.service-slider a.et-pb-arrow-prev,
.service-slider a.et-pb-arrow-next {
  background: #fff;
}


.service-best-pick{
  position: absolute;
  width: 150px;
right: -70px;
top: -100px;
z-index: 5;
}

@media(max-width: 700px){
.service-slider img{
  height: 340px;
  object-fit: cover;
}

}



/** grid gallery **/
.service-grid.et_pb_gallery_grid{
  max-width: 500px !important;
  margin: auto;
}
.service-grid .et_post_gallery{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.service-grid.et_pb_gallery_grid img{
  width: 100%;
  height: 150px;
  object-fit: cover;
}

.service-grid.et_pb_gallery_grid .portrait {
  max-width: 150px;
  max-height: 150px;
}

.service-grid.et_pb_gallery_grid.et_pb_module .et_pb_bg_layout_light{
  padding: 0 0 0 0;
  margin: 5px;
  width: 27%;
  height: 150px;
}

@media(max-width: 800px){
.service-best-pick{
  width: 120px;
right: 0;
left: 0;
margin: auto;
top: -90px;
}
}

/************* blog archive **************/

/** nav **/
.et_pb_menu__logo-wrap img.wp-image-18{
  padding: 15px;  
}

.blog .nav-houzz {right: 0px !important;}




.blog article {
  display: flex;
  max-width: 1300px;
  border-bottom: 1px solid #ccc;
  padding: 0 0 20px 0;
  margin: 60px auto o auto;
}

.blog article img{
  height: 300px;
  object-fit: cover;
}

.blog article .wrapped{
  margin: 0 50px;
}


.blog article h2{
  font-size: 20px;
  line-height: 37px;
}

.blog p.post-meta {
  color: #820A23;
}

.blog a.more-link {
  color: #820A23;
  margin: 30px 0 0 0;
}

.blog a.more-link:after {
  content: ">";
  color: #820A23;
  margin: 0 0 0 10px; 
}

.blog .et_pb_section.et_pb_section_0_tb_body.et_section_regular {
  background-color: #f4f4f4;
}


@media(max-width: 900px){
.blog article {
  flex-direction: column;
  padding: 0px;
  margin: 20px;
}

.blog article .wrapped{
  margin: 0 20px;
}
}


/*********** blog single page **********/

.single-post #main-content h1.entry-title,
.single-post #main-content p.post-meta {
  display: none;
}

.single-post .#main-content et_post_meta_wrapper{
  max-width: 900px;
  margin: auto;
text-align: center;
}

.single-post #main-content .et_post_meta_wrapper img{
  object-fit: cover;
  max-height: 500px;
}

.single-post .nav-houzz {right: 0px !important;}

/************* mobile ******************/

/** hero **/

@media(max-width: 1150px){
.home-hero{
background: #670D20;
}
}

@media(max-width: 980px){


/** logo section **/

.home-logo-sec{
flex-wrap: wrap;
}

}