/*
Theme Name: Divi Child Template
Version: 1.0
Description: A customized version of Divi which adds a number of tiny features you need.
Template: Divi
*/

/* -----------------------------------------------------------------------
 * Base Style
 * ----------------------------------------------------------------------- */

body {
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: 300;
	line-height: 1.7;
	color: #333;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Raleway', sans-serif;
}

/*
 * H1 title tags sizing
 */
@media (min-width:981px) {
	h1.entry-title {
		font-size: 32px;
	}
}
@media (max-width:981px) {
	h1.entry-title {
		text-align: center;
		font-size: 26px;
	}
}

section.et_pb_module.et_pb_fullwidth_header.et_pb_fullwidth_header_0.et_pb_text_align_center.et_pb_bg_layout_dark.et_pb_fullscreen {
    max-height: 770px !important;
    min-height: 500px !important;
    height: calc(99vh - 172px) !important;
}

.et_pb_fullscreen .et_pb_fullwidth_header_container {
    max-height: 770px !important;
    min-height: 500px !important;
    height: calc(99vh - 172px) !important;
}

@media (max-width: 980px) {
section.et_pb_module.et_pb_fullwidth_header.et_pb_fullwidth_header_0.et_pb_text_align_center.et_pb_bg_layout_dark.et_pb_fullscreen {
    max-height: 400px !important;
    min-height: 350px !important;
    height: calc(99vh - 172px) !important;
}

.et_pb_fullscreen .et_pb_fullwidth_header_container {
    max-height: 400px !important;
    min-height: 350px !important;
    height: calc(99vh - 172px) !important;
}
    
}

.header-content {
    margin: 0 auto !important;
    padding: 0px !important;
    width: 100% !important;
}
.et_pb_slider .et_pb_slide_0.et_pb_slide .et_pb_slide_description h2.et_pb_slide_title {
	color: #333!important;
	font-family: 'Fira Sans', sans-serif;
	font-size: 60px!important;
	padding: 15px 0 0px;
}

.entry-title.main_title {
	color: #1a1a1a;
  	font-family: 'Raleway', sans-serif;
  	font-size: 35px;
}

blockquote {
  	border: 0;
  	padding-left: 0;
}

.wpcr3_item_name a {
	color: #F37800!important;
	font-weight: 400;
}

.button {
	display: inline-block;
	background-color: #F68F00;
	color: #fff;
	font-family: 'Fira Sans', sans-serif;
	font-size: 14px;
	text-transform: uppercase;
	border-radius: 0px;
	border: 3px solid #C05F00;
	margin-top: 10px;
	margin-bottom: 0px;
	padding: 12px 15px;
	width: 230px;
	transition: 0.3s ease-out;
}

.button:hover {
	background-color: #ff9f41;
}

.content .et_pb_column_4_4 {
	background: rgba(255,255,255,0.6);
	padding: 20px;
}

/* Service List */
#servcss {
	list-style-type: none;
	padding: 0;
	text-align: center;
}

#servcss li {
	position: relative;
	margin-bottom: 0.5em;
}

#servcss svg {
  	display: none;
}


/* -----------------------------------------------------------------------
 * Header Style
 * ----------------------------------------------------------------------- */
/* Top header */
#main-header .contact-info {
  	background-color: #EAEAEA;
  	padding: 5px 0;
}

.image-logo #main-header .contact-info {
		padding-left: 15px;
}
.image-logo .contact-info .container {
    width: 100%;
    padding-right: 10px;
}

#main-header, #main-header.et-fixed-header {
	box-shadow: 0px 1px 2px rgba(0,0,0,0.2)!important;
}

#main-header .contact-info a, #main-header .contact-info span {
	display: inline-block;	
	color: #838383;
  	transition: 0.4s ease-in-out;
}

#main-header .contact-info a {
	margin-left: 20px;	
}

#main-header .contact-info a:hover {
	color: #F37800;
}

#main-header .fa {
	position: relative;
	left: -7px;
	color: #F37800;
}

#main-header .fa-map-marker {
	font-size: 11px;
}

#main-header .fa-mobile {
	top: 1px;
	font-size: 14px;
}

#main-header .fa-envelope-o {
	top: -1px;	
	font-size: 10px;
}

/* Logo */
.logo_container, .et-fixed-header .logo_container {
    padding-top: 0px!important;
}

.text-logo {  
	position: relative;
	top: 10px;
	display: inline-block;
	color: #333;
	font-family: 'Fira Sans', sans-serif;
	font-size: 36px;
	font-weight: 700;
	text-transform: capitalize;
	transition: 0.3s;
}

.text-logo:hover {
	transform: skew(-10deg);
}

.comp-name {
	color: #F4881F;
	font-weight: bold;
	text-decoration: underline;
}

/* Navigation */
.et_header_style_left #et-top-navigation {
  	padding: 0!important;
}

#top-menu li {	
	padding-right: 0;
	margin-right: -3px;
}

#top-menu li a {
	text-transform:uppercase !important;
	position: relative;
	font-family: 'Raleway', sans-serif;
	padding: 25px 20px !important;
	transition: 0.3s ease-in-out;
}

#top-menu > li > a:before {
	position: absolute;
	content: "";
	bottom: 0;
	right: 0;
	width: 0;
	height: 3px;
	background-color: #F37800;
	transition: 0.3s ease-in-ou
}

#top-menu li a:hover, #top-menu .current-menu-item > a {
	color: #F37800!important;
	opacity: 1!important;
}

#top-menu > li > a:hover::before, #top-menu > .current-menu-item > a:before {
	width: 100%;
}

.image-logo #top-menu li a:before {
    bottom: calc(50% - 1em) !important;
}

.image-logo #top-menu > li > a {
    padding: 53px 12px !important;
}
.image-logo .et-fixed-header #top-menu > li > a {
    padding: 46px 12px !important;
}

/* Submenu */
#top-menu .menu-item-has-children > a:first-child::after, 
#et-secondary-nav .menu-item-has-children > a:first-child::after {
	top: 50%!important;
	transform: translateY(-50%);
}

#top-menu li li a {
    width: 200px;
    padding: 8px 15px !important;
}

.et-fixed-header #top-menu li li a {
    color: #333!important;
}

.et-fixed-header #top-menu li li a:hover {
    color: #F37800!important;
}

/* mobile */
.mobile_menu_bar::before {
	color: #000!important;
	top: 12px !important;
}

.et_mobile_menu li a {
  	color: #fff!important;
}

.et_mobile_menu {
  	padding: 2% 5%;
}

#mobile_menu {
	top: 56px!important;
	background-color: #303030!important;
	border-top: 2px solid #303030;
	text-align: center;
}

/* Scroll Down Button */
.scroll-down-btn {
    position: absolute;
    bottom: 35px;
    left: 0;
    right: 0;
    background-color: #f37800;
    text-align: center;
    border-radius: 40px;
    margin: 0 auto;
    padding: 13px 10px;
    z-index: 99999;
    -moz-animation: bounce 2s infinite;
    -webkit-animation: bounce 2s infinite;
    animation: bounce 2s infinite;
}

.scroll-down-btn:hover {
    opacity: 0.8;
}

/* -----------------------------------------------------------------------
 * Sidebar Style
 * ----------------------------------------------------------------------- */
.widgettitle {
	position: relative;
	color: #000!important;
    font-family: 'Raleway', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px solid #eee; 
}

.widgettitle:before {
	position: absolute;
	content: "";
	display: block;
	bottom: 0px;
	left: 0;
	width: 50px;
	height: 3px;
	background-color: #F37800; 
}

#sidebar .textwidget br:nth-child(4), #sidebar .textwidget br:nth-child(5) {
	display: none;
}

#sidebar strong {
	color: #000;
	font-weight: 400;
}

/* -----------------------------------------------------------------------
 * Services Section Style
 * ----------------------------------------------------------------------- */
#section-1 .et_pb_main_blurb_image .et-pb-icon {
    transition: 0.3s ease-in-out;
}

#section-1 .et_pb_main_blurb_image:hover .et-pb-icon {
    transform: translateY(-10px);
}

/* -----------------------------------------------------------------------
 * Testimonial
 * ----------------------------------------------------------------------- */
.home-testimonial .heading {
	color: #F37800;
	font-family: 'Fira Sans', sans-serif;
	font-size: 36px;
	line-height: 1.1;
	text-transform: uppercase;
}

.home-testimonial blockquote {
	position: relative;
	border: 0;
	padding-left: 0;
	padding-bottom:0px !important;
	margin-bottom: 0px;
}

.home-testimonial blockquote p {
  	font-size: 16px!important;
  	line-height: 30px !important;
}

.home-testimonial div.wpcr3_review div.wpcr3_review_title, 
.home-testimonial div.wpcr3_dotline,
.home-testimonial div.wpcr3_review div.wpcr3_review_ratingValue,
.home-testimonial div.wpcr3_review div.wpcr3_review_datePublished,
.home-testimonial div.wpcr3_review div.wpcr3_review_author {
  	display: none!important;
}

.home-testimonial .wpcr3_item_name a {
	color: #f9b45c!important;
}

.home-testimonial .learn-more a {
	background-color: #F68F00;
	color: #fff;
	font-family: 'Fira Sans', sans-serif;
	font-size: 14px;
	text-transform: uppercase;
	font-style:normal;
	border-radius: 0px;
	border-bottom: 2px solid #c05f00;
	padding: 17px 25px;
	transition: 0.3s ease-out;
}

.home-testimonial .learn-more a:hover {
	background-color: #ff9f41;
}
/***** TESTIMONIALS FORM *****/
.wpcr3_respond_2 input[type="text"] {
    margin: 3px 0;
}
.wpcr3_table_2 td {
    font-size: 1em !important;
}
.wpcr3_leave_text {
	font-size: 1.1em;
}
.wpcr3_leave_text {
    margin-bottom: 20px;
}
@media (min-width: 981px) {
.wpcr3_respond_2 input[type="text"],
.wpcr3_respond_2 textarea {
    min-width: 100%;
}
.wpcr3_table_2 td {
    text-align: left !important;
}
.wpcr3_review_form_rating_field label {
    margin: 6px 0 !important;
}
.wpcr3_button_1 {
    margin-top: 10px;
}
}
@media (max-width: 980px) {
.wpcr3_respond_3,
.wpcr3_aggregateRating,
.wpcr3_table_2 td {
   	text-align: center !important;
}
.wpcr3_div_2 {
    width: 100%;
}
.wpcr3_table_2 tr:last-of-type td {
    margin: 20px auto 0 !important;
}
.wpcr3_table_2 td {
    display: block;
	padding: 0 !important;
}
.wpcr3_table_2 td:first-child {
    margin-top: 10px !important;
}
.wpcr3_rating_style1_status {
    width: 85px !important;
}
.wpcr3_respond_2 input[type="text"],
.wpcr3_in_content textarea {
    width: 100% !important;
    min-width: unset !important;
}
.wpcr3_submit_btn, .wpcr3_cancel_btn {
    width: 40%;
}
}

/* -----------------------------------------------------------------------
 * Get a Free Estimate Style
 * ----------------------------------------------------------------------- */
#location strong {
	color: #F37800;
}

#location *,
#services ul li {
    font-size: 25px;
    line-height: 36px;
    text-align: center;
}

#contact-section .et_pb_column:first-of-type {
	background: rgba(0,0,0,.5);
    padding: 20px 15px;
}

.free-estimate-heading .et_pb_text_inner {
	background-color: #fff;
	border-top: 3px solid #B1B1B1;
	padding: 25px;
}

.free-estimate-heading {
	position: relative;
	color: #333!important;
	font-family: 'Fira Sans', sans-serif;
	font-weight: bold;
	font-size: 22px;
	text-transform: uppercase;
	line-height: normal;
	padding-bottom: 15px;
	padding-left: 8px;
}

.free-estimate-heading .et_pb_text_inner > p {
	padding-left: 10px;	
}

textarea {
  	resize: none;
}

#contactForm input[type=text],
#contactForm input[type=password],
#contactForm input[type=tel],
#contactForm input[type=email],
#contactForm input.text,
#contactForm input.title,
#contactForm textarea,
#contactForm select {
	background-color: #E8E8E8;
	padding: 15px;
	font-family: 'Roboto', serif;
	font-size: 15px;
	line-height: 1.42857143;
	margin: 10px 0px !important;
	border-radius: 0px;
	transition: 0.3s linear;
	color: #333;
	border: 0;
	width: 100% !important;
}

#contactForm input[type=text]::placeholder,
#contactForm input[type=password]::placeholder,
#contactForm input[type=tel]::placeholder,
#contactForm input[type=email]::placeholder,
#contactForm input.text::placeholder,
#contactForm input.title::placeholder,
#contactForm textarea::placeholder,
#contactForm select::placeholder {
  	color: #858585 !important;
}

#contactForm input[type=text]:focus,
#contactForm input[type=password]:focus,
#contactForm input[type=tel]:focus,
#contactForm input[type=email]:focus,
#contactForm input.text:focus,
#contactForm input.title:focus,
#contactForm textarea:focus,
#contactForm select:focus {
	opacity: 1;
	border-color: #232323; 
}

#contactForm div:nth-child(5) img {float: left; margin-top: 5px;}
#contactForm div:nth-child(5) input {
	float: right;
	width: 50% !important;
	height: 50px;
	margin: 0 !important;
}

#contactForm input,
#contactForm textarea {
	width: 100%;
}

#submitter {
	font-size: 16px;
	padding: 20px 30px;
	font-family: 'Fira Sans', sans-serif;
	font-weight: 700 !important;
	color: #fff;
	cursor: pointer;
	height: auto !important;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	-o-border-radius: 0px;
	background-color: #f68f00;
	border: 0;
	border: 3px solid #c05f00;
	margin-top: 15px!important;
	overflow: hidden;
	transition: 0.3s;
	width: 100% !important;
}

#submitter:hover {
	background-color: #ff9f41;
}

/* -----------------------------------------------------------------------
 * Footer Style
 * ----------------------------------------------------------------------- */
#main-footer {
    background-color: #e8e8e8 !important;
    border-top: 2px solid #B1B1B1;
    padding-top: 15px;
}

#main-footer #footer-widgets {
    margin-bottom: 0px;    
    padding: 3% 0 0;
}

#main-footer .footer-widget {
	color: #000!important;
}

#main-footer .footer-widget strong {
	color: #000; 
	font-weight: 400;
}

#main-footer #footer-widgets .footer-widget:nth-child(2) > div {
    width: 100%;
}

#main-footer h4 {
    position: relative;
    color: #000!important;
    font-family: 'Raleway', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
	border-bottom: 1px solid #b3b3b3;
    margin-bottom: 20px;
    padding-bottom: 15px;
}

#main-footer h4:before {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	width: 50px;
	height: 3px;
	background-color: #f37800 ;
}

.hours th,
.openinghours td {
	color: #000!important;
	font-family: 'Roboto', sans-serif;	
	font-size: 14px!important;
	font-weight: 300!important;
	text-align: left !important;
	text-shadow: none !important;
}

.openinghours tr td:last-child {
    text-align: right!important;
}

#current-day {
    background-color: transparent;
}

#current-day td {
  	color: #f37800!important;
  	font-weight: 400!important;
}

#text-7 .textwidget br,
#text-7 .textwidget strong {
    display: none;
}

#footer-bottom {
	background-color: #333333!important;
	font-family: 'Raleway', sans-serif;
	font-size: 16px;
	font-weight: 300;
	padding: 12px 0;
	color: white;
}

.et_monarch .et_social_mobile {
	width: 100%!important;
}

/* -----------------------------------------------------------------------
 * Animation Style
 * ----------------------------------------------------------------------- */
/* Bounce */
@-moz-keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -moz-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -moz-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    60% {
        -moz-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

@-webkit-keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

@keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    60% {
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

/* -----------------------------------------------------------------------
 * Helper Style
 * ----------------------------------------------------------------------- */
.pull-right { float: right!important; }
.pull-left { float: left!important; }

/* -----------------------------------------------------------------------
 * Media Queries Style
 * ----------------------------------------------------------------------- */

@media (max-width: 1030px) {
	.image-logo #top-menu > li > a,
	.image-logo .et-fixed-header #top-menu > li > a {
    padding: 33px 12px !important;
}
}

@media (max-width: 980px) { 
	.et_header_style_centered #main-header {
		padding-bottom: 0!important;
	}

	.logo_container {
		float: none;
		margin-bottom: 15px;
	}
	.image-logo .logo_container {
    padding: 10px 0 !important;
}
	.image-logo #logo {
		max-width: 80%;
		max-height: 150px;
	}

	#et-top-navigation {
		padding-top: 0;
		padding-bottom: 0;
	}

	#mobile_menu {
		top: 33px;
	}

	#services {
		margin-bottom: 20px;
	}

}

@media (max-width: 900px) { 
	.scroll-down-btn {
		bottom: 30px;
		width: 60px;
	}
}

@media (max-width: 650px) { 
	.et_monarch .et_social_mobile {
		width: 48%!important;
	}
}

@media (max-width: 600px) { 
	#main-header .contact-info .container {
		text-align: center;
	}
		#main-header .contact-info {
  		padding-left: 0;
}


	#main-header .contact-info a, #main-header .contact-info span {
		display: block;
	}

	#main-header .contact-info a {
    	padding-top: 0;
  	}

  	#main-header .contact-info .email-us {
  		padding: 0;
	    float: none !important;
  	}

	#main-header .phonenum {
    	margin-left: 0;
  	}
	
	.text-logo {
		font-size: 25px;	
		top: 5px;
	}

}

@media (max-width: 500px) { 
	#contactForm div:nth-child(5) img {
		float: none;
		display: block;
		margin: 0 0 10px;
		width: 100%;
		}

	#contactForm div:nth-child(5) input {
		float: none;
		width: 100% !important;
	}
}

@media screen and (max-width: 425px) {
	#top-header .pull-left, #top-header .pull-right {
		float: none !important;
		text-align: center;
	}

	#top-header .pulsing {
		margin-top: 7px!important;
	}

	.et_pb_slider .et_pb_slide_0.et_pb_slide .et_pb_slide_description h2.et_pb_slide_title {
		font-size: 46px!important;
		line-height: normal;
		padding-bottom: 0;
	}
}

@media screen and (max-width: 375px) {
	.home-testimonial .heading {
		font-size: 33px;
	}

	.et_pb_slider .et_pb_slide_0.et_pb_slide .et_pb_slide_description h2.et_pb_slide_title {
		font-size: 38px!important;
	}

	.free-estimate-heading .et_pb_text_inner > p {
		font-size: 30px;
	}
}
	
/***** BODY FONT-SIZE *****/
body,
.wpcr3_content p {
    font-size: 17px !important;
}
/***** CENTER SLIDE DESCRIPTION/BUTTON *****/
@media screen and (max-width:600px) {
.et_pb_slide_description{
  width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-top: 20px;
}
}
/***** SET MONARCH SHARE DROPDOWN WIDTH *****/
.et_monarch .et_social_mobile {
    width: 65% !important;
}
/***** FIX DROPDOWN ARROW POSITION *****/
.menu-item-has-children>a:after {
    top: unset !important;
}
/***** FIX DROPDOWN *****/
#top-menu .sub-menu {
    padding: 0 !important;
    width: unset !important;
    border-top: 3px solid #ddd !important;
}
#top-menu .sub-menu li {
	border-left: 0 !important;
	padding: 0 !important;
}
#top-menu .sub-menu li a {
    border-left: 0 !important;
}
.et_mobile_menu .sub-menu {
    border: none !important;
}
/***** FIX MENU SIZING *****/
@media (min-width: 981px) and (max-width:1300px) {
header .et_menu_container {
    margin: 0 !important;
    width: 100% !important;
max-width: 100% !important;
}
}
/***** FOOTER, widgets *****/
@media (max-width: 980px) {
	#main-footer h4 {
    text-align: center;
}
	.widgettitle:before,
	#main-footer h4:before {
    width: 100%;
}
	.et_pb_widget {
    text-align: center;
}
	footer .et_pb_widget {
		float: none;
	}
}
	#main-footer .container {
    width: 93%;
}
.payments strong, .payments br {
    display: none;
}
/***** ROW WIDTH/CENTER TEXT *****/
@media (max-width:980px) {
	.et_pb_text {
    text-align: center !important;
}
	img.scroll-down-btn {
    bottom: 5px;
}
	.home .et_pb_text_1 {
    /* padding-right: 0 !important; */
}
	.home #contact-section .et_pb_column {
    width: 100% !important;
}
	#servcss {
		display: inline-block;
	}
}
/***** MOVE MENU BELOW LOGO *****/
@media (min-width:981px) {
body:not(.image-logo) .logo_container {
	display: block !important;
    position: relative !important;
    height: 65px !important;
    margin: 0 auto !important;
    width: fit-content !important;
	}
	body:not(.image-logo) #et-top-navigation {
	width: 100% !important;
    float: none !important;
    position: relative !important;
	}
	body:not(.image-logo) #top-menu-nav,
	body:not(.image-logo) #top-menu {
		float:none !important;
		text-align: center !important;
	}
	body:not(.image-logo) #top-menu {
		border-top: 3px solid #323434 !important;
	}
	body:not(.image-logo) #main-header .contact-info .container {
    text-align: center;
}
	body:not(.image-logo) #main-header .contact-info:before,
	body:not(.image-logo) #main-header .contact-info:after {
		display: none;
	}
	body:not(.image-logo) a.email-us.pull-right {
    float: none !important;
	margin-left: 0px;
}
		body:not(.image-logo) .et-fixed-header #top-menu > li > a {
    padding: 20px !important;
}
	body:not(.image-logo) .et-fixed-header .logo_container {
    height: 54px !important;
}
	
	#logo {
    position: absolute;
    left: 0;
}
}
/***** FIX MOBILE MENU *****/
@media (max-width:980px) {
	header .et_menu_container {
    width: 100%;
}
	.logo_container {
    display: inline-block;
    position: relative !important;
    top: 0;
    text-align: center;
    padding-bottom: 25px;
    margin-bottom: 0;
    border-bottom: 1px solid;
}
	a.text-logo {
    width: 90%;
    padding-top: 10px;
	font-size:28px;
	line-height: 1em;
}
	.mobile_nav .select_page {
	display: inline-block !important;
	line-height: 56px;
	float: left;
	padding-left: 5px;
	position: absolute;
}
	.mobile_menu_bar_toggle {
    float: right;
}
	#et-top-navigation,
	#et_mobile_nav_menu {
    width: 100%;
}
	ul#mobile_menu {
    top: 100% !important;
}
}
/***** CONTACT INFO *****/
#main-header .contact-info a,
#main-header .contact-info span,
#main-header .fa {
    font-size: 15px !important;
}
body:not(.image-logo) #main-header .contact-info .container {
    text-align: center;
}
@media (max-width:600px) {
	#main-header .contact-info a,
	#main-header .contact-info span {
	margin: 0 !important;
}
}

/* Full-width clickable mobile menu */
#et_mobile_nav_menu {
		width: 100%;
}
.mobile_menu_bar_toggle {
	height: 56px;
	width: 100%;
	padding-bottom: 0 !important;
}
.mobile_menu_bar:before {
	right: 5px !important;
	left: unset !important;
	position: absolute !important;
}
ul#mobile_menu {
    top: 100%;
}


/*
SIDEBAR FULL-WIDTH WIDGETS ON MOBILE
SIDEBAR LIST ADD BULLET
SIDEBAR TITLE FONT-SIZE
*/

h4.widgettitle {
    font-size: 1.2em;
}
.et_pb_widget svg {
    display: none;
}
@media (min-width: 981px) {
	.et_pb_widget li {
    list-style: disc inside;
	}
}
@media (max-width: 980px) {
	.et_pb_column .et_pb_widget:nth-child(n) {
    	width: 100% !important;
    	max-width: 100% !important;
    	margin-right: 0 !important;
    	margin-left: 0 !important;
	}
}

/***************************
FORMAT LISTS IN CONTENT ONLY
***************************/
article div:not(.et_pb_widget_area) ul:not(#servcss) li,
article div:not(.et_pb_widget_area) ol li {
    margin-bottom: 1em;
}

#left-area ul,
.entry-content ul,
.comment-content ul,
body.et-pb-preview #main-content .container ul,
#left-area ol,
.entry-content ol,
.comment-content ol,
body.et-pb-preview #main-content .container ol {
    padding-bottom: 0;
}

/***********
FOOTER FIXES
***********/
.fwidget {
    width: 100%;
}
#social-icons {
    text-align: inherit;
}

@media (max-width:980px) {
.et_pb_widget {
    text-align: center;
}
.paymentType {
    display: inline-block;
    float: none;
}
}

#social-icons .social-icon {
    filter: drop-shadow(0 1px 1px rgba(0,0,0,.75));
}
#top-menu li a {
text-transform: uppercase !important;
}

#mobile_menu li a {
text-transform: capitalize !important;
}
.et_pb_post {
  text-align:justify;
}

@media screen and (max-width: 981px) and (min-width: 767px) {
.footer-widget:nth-child(n) {
width: 100% !important;
}
#footer-widgets .footer-widget:nth-child(n), #footer-widgets .footer-widget {
margin-bottom: 5% !important;
}
#footer-widgets .footer-widget .fwidget {
margin-bottom: 5%;
}
.openinghours {
margin: none;
}	
.hours, .openinghours {
width: 65%;
margin: 0 auto !important;
}
}

/* add buttons*/
.booking-button-switch {display:none !Important;}
    .slider-button {
        margin-bottom:40px;
  }
.button-quote-header {
    text-align: center;
    padding: 10px 0;
    background: #333333;
    display: none;
}
.top_button {
    position: relative;
    display: inline-block;
    background-color: #f68f00;
	border: 3px solid #C05F00;
    font-weight: bold !important;
    text-transform: uppercase;
	font-family: 'Fira Sans', sans-serif;
    text-shadow: none;
    color: #fff;
    padding: 12px 25px;
    transition: 0.3s ease-in-out;
    font-size: 15px;
    border-radius: 0px;
}
.top_button:hover {
    background-color: #ff9f41;
}
.top_button .fa {
    top:0px !important;
    left:0px !important;
    height:0px !important;
    color:#fff !important;
    padding: 5px 5px 5px 0px !important;
}
.floating-estimate-btn {
    text-align: center;
    padding: 10px 15px 10px 15px;
    background-color: #F68F00;
    color: #ffffff !important;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    border: 3px solid #C05F00;
    border-left: 0px;
    font-size: 15px;
    font-family: 'Fira Sans', sans-serif;
    z-index: 999999;
    font-weight: bold;
    position: fixed;
    bottom: 60px;
    text-transform: uppercase;
    width: 230px;
}

.floating-estimate-btn:hover {
	background-color: #ff9f41;
}

#main-footer .listing-rev-btn {
    display: flex;
    align-items: center;
    position: fixed;
    padding: 10px 15px 10px 15px;
    border: 3px solid #C05F00;
    border-left: 0px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    bottom:0px;
    background: #F68F00;
    color: #fff;
    font-family: 'Fira Sans', sans-serif;
    text-transform: uppercase;
    font-size: 15px;
    justify-content: center;
    width: 230px;
    z-index: 9999;
    font-weight:bold;
}

#main-footer .listing-rev-btn:hover {
	background-color: #ff9f41;
}

#main-footer .listing-rev-btn img {
  display:none;
}
#main-footer .listing-rev-btn .fa {
    display: block;
    margin-right: 5px;
    color: #fff;
    position: relative;
    bottom: 2px;
}
/* end add buttons */

@media screen and (min-width:601px) {
    .slider-button {
    display:flex;
        justify-content:center;
  }
.slider-button .booking-button-switch {
  margin-right: 10px;
}
}

/* HTML BADGES STYLE */
div#home-badges-section {
	background-color: #00A6FB !important;
	background-size: auto;
	/* background-image: url(https://framingcontractorns.com/wp-content/uploads/2024/06/background.webp); */
	background-repeat: repeat;
}

.badges-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
}

.badge-holder {
	background: #fbfbfa;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 160px;
	padding: 15px 5px 22px 5px;
	margin-top: 10px;
	margin-bottom: 30px;
	position: relative;
	text-shadow: 0px 15px 15px rgb(0 0 0 / 4%);
	border: 2px solid #c05f00;
}

.badge-holder:hover {
	box-shadow: 0px 0px 8px 0px #fcfffc99;
}

p.badge-content {
	color: #333333;
	text-align: center;
	line-height: 1;
	text-transform: capitalize;
	font-size: 16px;
	min-height: 34px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	margin-bottom: 5px;
}

.badge-holder img {
	width: 50%;
	padding-bottom: 5px;
}

.badge-title {
	background: #f68f00;
	font-size: 15px;
	font-family: 'Fira Sans';
	width: 85%;
	text-align: center;
	line-height: 1.2;
	padding: 5px;
	position: absolute;
	bottom: -15px;
	color: #ffffff;
	font-weight: 700;
	border: 2px solid #c05f00;
}

.badge-title span {
	font-size: 16px;
	color: #ffffff;
}

.badge-holder .fa {
	font-size: 60px;
	color: #fbfbfa;
	background: #f68f00 !important;
	padding: 10px;
	margin-bottom: 8px;
	border-bottom: 2px solid #c05f00;
}

/***********
css for badges
***********/

.snip1331 {
    font-family: 'Raleway', Arial, sans-serif;
    position: relative;
    color: #bdbdbd;
    margin: 1px 1px;
    max-width: 17rem;
    width: 18rem;
    text-align: center;
    font-size: 14px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    left: -30px;
}


.snip1331 h4,
.snip1331 h5 {
  margin: 0;
  text-transform: uppercase;
}
.snip1331 h4 {
  font-family: 'Lora', Arial, sans-serif;
  font-weight: 700;
  font-size: 1.8em;
  line-height: 50px;
  position: relative;
	padding: 5px;
  background-color: #a00e17;
  color: #fff;
  text-align: center;
  margin: 0 30px 8px;
  border-top: 6px solid #212121;
  border-bottom: 6px solid #212121;
}
.snip1331 h4:before,
.snip1331 h4:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  top: 5px;
  border-width: 25px 10px;
  border-style: solid;
}
.snip1331 h4:before {
  left: -23px;
    border-color: #a00e17 #a00e17 #a00e17 transparent;
}
.snip1331 h4:after {
  right: -23px;
      border-color: #a00e17 transparent #a00e17 #a00e17;
}
.snip1331 h5 {
  font-weight: bold;
  font-size: 1.2em;
	color: #a00e17;
}
.snip1331 h6 {
	 font-weight: bold;
  margin: 0;
  display: inline-block;
  position: relative;
	color: #a00e17;
	 font-size: 16px;

}
.snip1331 h6:before,
.snip1331 h6:after {
  position: absolute;
  height: 1px;
  content: '';
 /* background: #bdbdbd; */
  width: 30px;
  top: 50%;
}
.snip1331 h6:before {
  left: -35px;
}
.snip1331 h6:after {
  right: -35px;
}
.snip1331:before {
  content: '';
  position: absolute;
  width: 180px;
  height: 180px;
  border: 8px solid #fff;
  left: 50%;
  top: 50%;
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: rotate(45deg) translate(-50%, -50%);
  transform: rotate(45deg) translate(-50%, -50%);
  border-radius: 50%;
}

@media (max-width:1280px) {
	.snip1331 {
 transform: scale(0.7);
		 margin: 20px auto !important;
		transform: scale(0.8);
		 left: -49px;
}
		
	
}

@media (max-width:981px) {
	.snip1331 {
		width: 100%;
		left: auto;
		transform: scale(0.9);
	}
}

#top-menu li a {
text-transform: uppercase!important;
}

#mobile_menu li a {
text-transform: capitalize!important;
}

@media screen and (max-width: 981px) and (min-width: 767px) {
  .footer-widget:nth-child(n) {
    width: 100% !important;
  }
  #footer-widgets .footer-widget:nth-child(n), #footer-widgets .footer-widget {
    margin-bottom: 5% !important;
  }
  #footer-widgets .footer-widget .fwidget {
    margin-bottom: 5%;
  }
  .openinghours {
  }
  .hours, .openinghours {
    width: 65% !important;
    margin: 0 auto !important;
  }
}

.et_pb_slider .et_pb_slide_0 {
	background-position:center!important;
}

.free-estimate-heading span {
	color: #fff!important;
}
@media screen and (max-width:980px) {
	   .wpcr3_review {
        text-align:center;
    }
}



/* SERVICE BOXES STYLES */



.srvBlockTitle p {
	font-size: 26px !important;
	line-height: 1.2;
	font-weight: bold;
	font-family: 'Fira Sans';
	color: #f68f00;
	text-transform: uppercase;
	border-bottom: 1px solid #c05f00;
	display: inline-block;
}

.srvElement:hover {
	transform: translateY(-10px);
}

.srvBlockTitle {
	text-align: center;
}

.srvElement {
	margin: 0 auto;
	margin-top: 50px;
	box-shadow: 0px 3px 15px 0px rgb(0 0 0 / 8%);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.srvElementHeader h2 {
	text-align: center;
	color: #ffffff;
	font-family: 'Fira Sans';
	text-transform: uppercase;
	font-size: 22px;
	padding: 10px 5px;
	line-height: 1.2;
	height: 74px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.srvElementImg {
	display: flex;
	justify-content: center;
	align-items: center;
}

.srvElementImg img {
	width: 100%;
	height: 50vw;
	object-fit: cover;
	object-position: center;
}

.srvElementContent {
	text-align: justify;
	color: #ffffff;
	padding: 10px;
	padding-top: 0;
	line-height: 1.2;
}

.srvElementBody {
	background: #f68f00;
}

.srvElementBody:hover {
	background: #333333;
	transition:0.3s;
}

.srvElement:hover img {
	filter: grayscale(1) drop-shadow(0px 0px 6px #fff);
}

.srvElement:hover h2 {
	color: #FFF;
	font-weight: bold;
}


@media screen and (min-width: 981px) { 

	
	/* SERVICES STYLE DESKTOP*/


	.srvElement {
		width: 32%;
		display: flex;
		flex-direction: column;
		margin: 0;
		margin-top: 30px;
	}

	.srvElementImg img {

		height: 200px;
	}

	.srvElementFullWidth .srvElementImg img {
		height: 100%;
	}

	.srvBlock {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		max-width: 1200px;
		margin: 0 auto;
	}

	.srvElementBody {
		height: 100%;
	}

	.srvElementContent {
		height: 100%;
	}

	.srvElementFullWidth .srvElementContent {
		height: auto;
	}

	.srvElement.srvElementFullWidth {
		width: 100%;
		max-width: 1080px;
		flex-direction: row;
	}

	.srvElementFullWidth .srvElementImg {
		width: 32%;
		margin: 0;
	}

	.srvElementFullWidth .srvElementBody {
		width: 68%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
}

/* END HTML BADGES STYLE */


#footer-widgets .footer-widget li a {
	color: #000!important;
}

#main-footer .et_pb_widget li {
	list-style-type: none!important;
}

.footer-widget li:before {
    border-color: #f37800!important;
}

h1.header-title {
    font-weight: 900;
    text-transform: uppercase;
    filter: drop-shadow(2px 4px 6px black);
    text-shadow: 1px -1px #000;
    font-family: 'Fira Sans';
    margin-top: 30px;
}

h2.entry-title {
    font-family: 'Fira Sans';
    text-transform: uppercase;
	color: #f68f00;
    filter: drop-shadow(2px 2px 9px #fff);
}

.title-testimonials {
    margin-bottom: 40px;
    border-bottom: 3px solid #f68f00;
    display: inline-block;
    text-align: center;
    color: #333 !important;
    font-family: 'Fira Sans', sans-serif;
    font-weight: bold;
    font-size: 28px;
    text-transform: uppercase;
    line-height: normal;
}

@media screen and (max-width: 981px) and (min-width: 425px) {
    .hours, .openinghours {
        width: 65%;
        margin: 0 auto !important;
    }
}

@media (max-width: 425px) {
	.openinghours {
    width: 100% !important;
	text-align: center !important;
}
}

@media (min-width: 981px) {
	.openinghours {
    width: 100% !important;
	text-align: center !important;
}
}


/*--------------------------------------------------
    * Testimonials Plugin CSS
--------------------------------------------------*/
#testimonials-section {
    background: #ffffff;
}

.testimonials-container {
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
    text-align:center;
}
 
.testimonials-title {
    text-align: center;
    font-weight: 800;
    font-size: 2.25rem;
    line-height: 2.5rem;
    margin-bottom: 0.5rem;
    letter-spacing: -0.025em;
    color: #ffffff;
}
 
.testimonials-info {
    margin-bottom: 1rem;
}
 
.testimonial-item {
    border: 1px solid #ffffff00;
    border-radius: 10px;
    padding: 1rem;
    background: #ffffff00;
    min-height: 100%;
    break-inside: avoid;
}

.testimonial-item:hover {
	background: #ffffff00;
    border: 1px solid #ffffff00;
}
 
.testimonials-grid .testimonial-item {
    margin-bottom: 1rem;
}
 
.testimonial-item a {
    height: 100%;
    display: grid;
    justify-items: center;
}
 
.testimonial-subject {
    font-size: 1rem;
    font-weight: 700;
    text-align: center;
    color: #1a202c;
}
 
.rating {
    display: flex;
    justify-content: center;
    margin: 0.5rem;
}
 
.star {
    width: 1rem;
    height: 1rem;
    color: #ffc956;
    margin:2px;
}
 
.testimonial-content {
    font-size: 1rem;
    line-height: 1rem;
    font-weight: 500;
    color: #1a202c;
    text-align: center;
    font-style: italic;
}
 
.testimonial-footer {
    margin-top: 1rem;
}
 
.reviewer-details {
    font-size: 0.75rem;
}
 
.review-from-logo {
    width: 80px;
    height: auto;
    background: #ffffff;
    padding: 3px;
    border-radius: 5px;
    min-height: 35px;
    filter: drop-shadow(0px 0px 3px #ffffff);
}
 
.reviewer-name {
    font-weight: 500;
    color: #1a202c;
    line-height: 1.5rem;
    margin-bottom: 5px;
    font-size: 14px;
}

.nav-arrows {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 1rem;
}
 
.nav-arrows button {
    padding: 0.5rem;
    border-width: 1px;
    border-color: #f68f00;
    border-radius: 0;
    cursor: pointer;
    background: #f68f00;
    border-style: solid;
    display: flex;
    color: #1a202c;
}
 
.nav-arrows button:hover {
    background: #c05f00;
    color: #ffffff;
    border-color: #c05f00;
}
 
.nav-arrows button svg {
    height: 1.25rem;
    width: 1.25rem;
    margin-right: 0;
}
 
.rotate-180 {
    rotate:180deg;
}

@media only screen and (min-width: 600px) {
    .testimonials-grid {
        column-fill: balance;
        columns: 2;
        gap: 1.5rem;
    }
}

@media only screen and (min-width: 992px) {
    .testimonials-grid {
        columns: 3;
    }
 
    .testimonial-subject {
        font-size: 1.25rem;
    }
 
    .testimonial-content {
        line-height: 1.5rem;
    }
 
    .testimonial-footer {
        display: flex;
        align-items: center;
        justify-content: center;
    }
 
    .reviewer-details {
        display: flex;
        align-items: center;
    }
 
    .reviewer-name {
        padding-right: 0.75rem;
        font-size: 0.75rem;
        border-right: 2px solid #1a202c;
    }
 
    .review-from-logo {
      padding-left: 1em;
    }
}

@media (max-width: 479px) {
    .et_pb_post h2 {
        font-size: 20px;
        padding-bottom: 10px;
    }
}

 /* ADDITTIONAL SERVICES STYLE */


#additionalServices {
    list-style: none;
    text-align: center;
    padding: 0;
    list-style-type: none;
    margin-top: 10px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

#additionalServices li {
    break-inside: avoid;
    padding: 5px 3px;
    font-size: 18px;
    color: #ffffff;
    position: relative;
    text-align: center;
    margin-bottom: 0 !important;
}
#additionalServices li a {
	color: #fff;
	text-decoration: underline;
}
#additionalServices li::before {
    content: "\f00c";
    font-family: 'FontAwesome';
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 5px;
}


@media (min-width: 600px) {
 

#additionalServices li {
    break-inside: avoid;
    padding: 10px 5px;
    text-align: left;
}

    
}

@media (min-width: 981px) {
#additionalServices {
    columns: 3;
    column-gap: 10px;
}
}

.nav-arrows > button.slider-previous > svg > path{
	transition:0.1s;
}

.nav-arrows > button.slider-next > svg > path{
	transition:0.1s;
}
#mobile_menu li a {
    line-height: 1.2em;
}

.floating-estimate-btn{
z-index: 9999;
}

#main-footer .listing-rev-btn{
display: flex;
    align-items: baseline;
    position: fixed;
    z-index: 9999;
}

/* Blog Post, Services and Blog Page Style */
.page-template-default div#content-area div#left-area h1, .page-template-default div#content-area div#left-area h2, p.post-meta, .single-post h2 {
    text-align: left !important;
}

.page-template-default:not(.single-post) div#content-area div#left-area h2:last-of-type {
	text-align: center !important;
}

.page-template-default div#content-area div#left-area p, .blog-page-class p, .single-post p {
    /*text-align: justify !important;*/
}

@media (max-width: 980px) {
	
	.page-template-default div#content-area div#left-area h1 {
	    font-size: 26px !important;
	    text-align: center !important;
	}

	.page-template-default div#content-area div#left-area h2 {
	    font-size: 24px !important;
	}

	.blog-page-class h2, p.post-meta{
		/* text-align: center !important; */
	}
}

/* Page Padding Fix */
.single-post div#main-content .container {
    padding: 77px 0 !important;
}
#main-content .container {
	padding: 77px 0 !important;
}

#main-content .container h2{
    padding-bottom: 10px;
    font-size: 22px;
    line-height: 1.3em;
}

.blog-page-class .et_pb_post:last-of-type {
	margin-bottom: 0 !important;
}

@media (min-width: 981px) {
	#main-content .container .type-post:last-of-type {
		margin-bottom: 0 !important;
		padding-bottom: 0;
	}
}

.single-post h2 {
  text-align: left;
}
.single-post p {
text-align: justify;
}

.first-list-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

img.first-list-image {
    width: 100%;
    max-width: 600px;
}

ul.first-list-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0;
    list-style: inside disc;
    width: 100%;
    max-width: 600px;
    margin-top: 30px;
}

.first-list-content li {
    padding: 5px 10px;
    margin-bottom: 10px !important;
    background: #f68f00;
    color: #000;
    text-align: left;
    width: 100%;
}

.second-list-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

ol.second-list-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 600px;
    margin-bottom: 30px;
}

.second-list-content li {
    color: #000;
    width: 100%;
    padding: 5px 10px;
    margin-bottom: 10px;
    text-align: left;
    background: #f68f00;
}

img.second-list-image {
    width: 100%;
    max-width: 600px;
}
.first-list-content li:hover, .second-list-content li:hover {
    background: #333;
    color: #fff;
}
div#second-list-section {
    background: #070E09;
}



@media (min-width: 981px) {
.first-list-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.first-list-image-container {
    width: 50%;
}

ul.first-list-content {
    width: 45%;
    margin: 0;
}

.second-list-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

ol.second-list-content {
    width: 45%;
    margin:  0;
}

.second-list-image-container {
    width: 50%;
}
}



.single-post .entry-content h2,
.page #left-area .entry-content h2 {
	text-align: left;
}
.post-content-inner, .post-content-inner p,
.single-post .entry-content *,
.page #left-area .entry-content * {
	text-align: justify;
}
body:not(.et_pb_pagebuilder_layout) .entry-content p:has(img) {
	text-align: center!important;
}
body:not(.et_pb_pagebuilder_layout) .entry-content p img {
	width: 100%;
	max-width: 600px;
}

.srvElementContent a {
	color: #000!important;
}

.srvElementBody:hover .srvElementContent a {
	color: #f68f00!important;
}